From: Emil Medve Date: Mon, 12 Nov 2007 21:01:22 GMT Subject: [PATCH] Fix a strchrnul() related build error Message-ID: <1194901282-2468-1-git-send-email-Emilian.Medve@Freescale.com> Systems/environments without glibc (such as CygWin), and as a consequence whithout the __GLIBC_PREREQ() macro, fail to build with the following error message: CC git.o In file included from builtin.h:4, from git.c:1: git-compat-util.h:187:48: missing binary operator before token "(" Signed-off-by: Emil Medve --- Here is a relevant comment from my Linux box features.h: /* Convenience macros to test the versions of glibc and gcc. Use them like this: #if __GNUC_PREREQ (2,8) ... code requiring gcc 2.8 or later ... #endif Note - they won't work for gcc1 or glibc1, since the _MINOR macros were not defined then. */ My CygWin gcc version is: $ gcc -dumpversion 3.4.4 This applies to next git-compat-util.h | 8 +++++++- 1 files changed, 7 insertions(+), 1 deletions(-) diff --git a/git-compat-util.h b/git-compat-util.h index 3d147b6..c4ed308 100644 --- a/git-compat-util.h +++ b/git-compat-util.h @@ -184,7 +184,13 @@ void *gitmemmem(const void *haystack, size_t haystacklen, const void *needle, size_t needlelen); #endif -#if !defined(__GLIBC_PREREQ) && !__GLIBC_PREREQ(2, 1) +#ifndef __GLIBC_PREREQ +#define NO_STRCHRNUL +#elif !__GLIBC_PREREQ(2, 1) +#define NO_STRCHRNUL +#endif + +#ifdef NO_STRCHRNUL #define strchrnul gitstrchrnul static inline char *gitstrchrnul(const char *s, int c) { -- 1.5.3.5.1466.gfa36