Re: [PATCH] HP-UX does not have select.h
- From
H.Merijn Brand <h.m.brand@xs4all.nl>
- Date
- Dec 17, 2007, 22:22 UTC
- Message-ID
- <20071217232259.0b41a3bf@pc09.procura.nl>
- In-Reply-To
- <7v8x3t6nq1.fsf@gitster.siamese.dyndns.org>
On Mon, 17 Dec 2007 13:00:22 -0800, Junio C Hamano <gitster@pobox.com> wrote:
Show 7 quoted lines
> "H.Merijn Brand" <h.m.brand@xs4all.nl> writes: > > > HP-UX does not have select.h, but it offers all select () functionality. > > The defines are in <sys/types.h> and <X11/fd.h> > > Will apply the patch as-is for now, only because I do not want major > surgery during rc period, but I think is can be improved.
Probably. but there is so much to be improved :)
> POSIX.1-2001 expects <sys/select.h> declares select(2). With earlier > standards, including <sys/time.h>, <sys/types.h> and <unistd.h> would > have given it.
Those three are there. I have 10.20 through 11.23 on PA-RISC and 11.23 on Itanium 2.
10.20, 11.00, and 11.11 (11i v1) do not have sys/select.h. 11.23 and on do have it. The problem for now is that git on HP-UX does not build with HP's C-ANSI-C compiler. I need to use gcc. Up to and including 11.11, I cannot use 4.x, as that has serious problems when used in 64bit mode, so I'm stuck with gcc-3.4.6
> HP-UX cannot be the only pre-POSIX system; "#ifndef _HPUX_SOURCE" feels > very wrong.
HP-UX 11.23/IPC, which is rather recent, does include sys/select.h I didn't sent my HP-UX patch yet for the Makefile, as that is still very premature. It is OK for 11.00, but as I need 64bit on 11.23, because I only have 64bit OpenSSL and other util libraries, the 32bit addition would not work.
> Besides, isn't _HPUX_SOURCE a feature-test macro? Feature test macros
That is defined in GNU gcc. I did not pass it with -D...
> are for the application to define, and for the implementation (iow, the > header files) to find out what set of names the application wants to > see. You are making the application examine the symbol to see what > implementation it is on, which feels backwards to me.
--
H.Merijn Brand Amsterdam Perl Mongers (http://amsterdam.pm.org/)
using & porting perl 5.6.2, 5.8.x, 5.10.x on HP-UX 10.20, 11.00, 11.11,
& 11.23, SuSE 10.1 & 10.2, AIX 5.2, and Cygwin. http://qa.perl.org
http://mirrors.develooper.com/hpux/ http://www.test-smoke.org
http://www.goldmark.org/jeff/stupid-disclaimers/