From: YONETANI Tomokazu Date: Fri, 2 Apr 2010 07:52:09 +0000 (+0900) Subject: Fix _XOPEN_SOURCE problem on DragonFly X-Git-Tag: v1.7.1-rc0~28 X-Git-Url: https://git.tokkee.org/?a=commitdiff_plain;h=6555b196f00128f13ab8f719ee1e156238f16bb3;p=git.git Fix _XOPEN_SOURCE problem on DragonFly As on FreeBSD, defining _XOPEN_SOURCE to 600 on DragonFly BSD 2.4-RELEASE or later hides symbols from programs, which leads to implicit declaration of functions, making the return value to be assumed an int. On architectures where sizeof(int) < sizeof(void *), this can cause unexpected behaviors or crashes. This change won't affect other OSes unless they define __DragonFly__ macro, or older versions of DragonFly BSD as the current git code doesn't rely on the features only available with _XOPEN_SOURCE set to 600 on DragonFly. Signed-off-by: YONETANI Tomokazu Signed-off-by: Junio C Hamano --- diff --git a/git-compat-util.h b/git-compat-util.h index a3c453736..e292926fe 100644 --- a/git-compat-util.h +++ b/git-compat-util.h @@ -55,7 +55,8 @@ # else # define _XOPEN_SOURCE 500 # endif -#elif !defined(__APPLE__) && !defined(__FreeBSD__) && !defined(__USLC__) && !defined(_M_UNIX) && !defined(sgi) +#elif !defined(__APPLE__) && !defined(__FreeBSD__) && !defined(__USLC__) && \ + !defined(_M_UNIX) && !defined(sgi) && !defined(__DragonFly__) #define _XOPEN_SOURCE 600 /* glibc2 and AIX 5.3L need 500, OpenBSD needs 600 for S_ISLNK() */ #define _XOPEN_SOURCE_EXTENDED 1 /* AIX 5.3L needs this */ #endif