From: Junio C Hamano Date: Wed, 19 Dec 2007 19:57:21 GMT Subject: Re: [PATCH] HP-UX does not have select.h Message-ID: <7vr6hiv4ny.fsf@gitster.siamese.dyndns.org> In-Reply-To: <20071218114949.711ba447@pc09.procura.nl> "H.Merijn Brand" writes: > On Tue, 18 Dec 2007 01:47:53 -0800, Junio C Hamano wrote: > ... >> Merijn, discarding the earlier patch I did to configure it out for >> HP-UX, does the following patch based on Andreas's idea work for you? > > Probably not: > > HP-UX 10.20, 11.00, 11.11, 11.23/PA, and 11.23/IPF all have: > > /usr/include 103 > grep -r POSIX_VERSION * > sys/unistd.h:# define _POSIX_VERSION _POSIX1_VERSION_88 > sys/unistd.h:# define _POSIX_VERSION _POSIX1_VERSION_90 > sys/unistd.h:# define _POSIX_VERSION _POSIX1_VERSION_93 > sys/unistd.h:# define _SC_1_VERSION_88 7 /* _POSIX_VERSION: Date of POSIX.1-1988 */ > sys/unistd.h:# define _SC_1_VERSION_90 102 /* _POSIX_VERSION: Date of POSIX.1-1990 */ > sys/unistd.h:# define _SC_1_VERSION_93 103 /* _POSIX_VERSION: Date of POSIX.1b-1993 */ > sys/unistd.h:# if (_POSIX_VERSION == _POSIX1_VERSION_88) > sys/unistd.h:# if (_POSIX_VERSION == _POSIX1_VERSION_90) > > and the two 11.23 do have select.h Does that prove anything? unistd.h seem to define _POSIX_VERSION to various values but we do not see surrounding "#ifdef WE_DO_NOT_KNOW" from the grep output above unfortunately. If the folllowing actually works I think that is the cleanest fix for this issue (note that I added defined(_POSIX_VERSION) there just to be safe if it is not defined at all). git-compat-util.h | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/git-compat-util.h b/git-compat-util.h index 79eb10e..68a580f 100644 --- a/git-compat-util.h +++ b/git-compat-util.h @@ -68,7 +68,9 @@ #include #include #include +#if defined(_POSIX_VERSION) && _POSIX_VERSION >= 200112L #include +#endif #include #include #include