From: "H.Merijn Brand" <h.m.brand@xs4all.nl>
To: Junio C Hamano <gitster@pobox.com>
Cc: Andreas Ericsson <ae@op5.se>, git@vger.kernel.org
Subject: Re: [PATCH] HP-UX does not have select.h
Date: Thu, 20 Dec 2007 08:18:06 +0100 [thread overview]
Message-ID: <20071220081806.0ccdf636@pc09.procura.nl> (raw)
In-Reply-To: <7vzlw6tlpt.fsf@gitster.siamese.dyndns.org>
On Wed, 19 Dec 2007 13:31:58 -0800, Junio C Hamano <gitster@pobox.com> wrote:
> "H.Merijn Brand" <h.m.brand@xs4all.nl> writes:
>
> > On Wed, 19 Dec 2007 11:57:21 -0800, Junio C Hamano <gitster@pobox.com> wrote:
> >
> >> "H.Merijn Brand" <h.m.brand@xs4all.nl> writes:
> >>
> >> > On Tue, 18 Dec 2007 01:47:53 -0800, Junio C Hamano <gitster@pobox.com> 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.
> >
> > What I tried to demonstrate is that I have no clue about the actual value
> > of this define, and if values like 88, 90, and 93 (7, 102, and 103) do
> > have any relation with the higher value of 200112L that you use.
> >
> > Also because these are the *only* _POSIX_VERSION defines in the entire
> > include tree, and 11.23 does have a select.h, which makes the patch below
> > to be not OK on 11.23. I'm not stating that HP follows the rules in any
> > correct way, but if this is to be sure that select.h gets included if the
> > OS supports it, it will fail.
> >
> >> 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).
>
> But your grep did not catch their definition of _POSIX1_VERSION_$YEAR
> which are used to define the actual value of _POSIX_VERSION.
If it is used to *define* _POSIX_VERSION, it should have come up too,
wouldn't it?
The only define that comes close to something like YYYYMM is:
X11/Xosdefs.h:#define X_POSIX_C_SOURCE 199300L
usr/include 111 > grep -r POSIX.*YEAR .
Exit 1
/usr/include 112 > grep -P -r 'POSIX.*\b(19\d\d|200\d)' .
./sys/buf.h:#if (_POSIX_C_SOURCE >= 199309)
./sys/buf.h:#endif /* (_POSIX_C_SOURCE >= 199309) */
./sys/stdsyms.h:/* XPG3 semantics gets POSIX.1-1988 semantics by default */
./sys/stdsyms.h: * This usage is obsolescent, "-D_POSIX_C_SOURCE=199506" is preferred */
./sys/stdsyms.h:# if (_POSIX_C_SOURCE >= 199506) && !defined(_INCLUDE_POSIX1C_SOURCE)
./sys/stdsyms.h:# endif /* _POSIX_C_SOURCE >= 199506 && !_INCLUDE_POSIX1C_SOURCE */
./sys/stdsyms.h:# if (_POSIX_C_SOURCE >= 199506) && !defined(_REENTRANT)
./sys/stdsyms.h:# endif /* _POSIX_C_SOURCE >= 199506 && !_REENTRANT */
./sys/stdsyms.h:# if (_POSIX_C_SOURCE >= 199309) && !defined(_INCLUDE_POSIX4_SOURCE)
./sys/stdsyms.h:# endif /* _POSIX_C_SOURCE >= 199309 && !_INCLUDE_POSIX4_SOURCE */
./sys/unistd.h:# define _POSIX1_VERSION_88 198808L /* We support POSIX.1-1988 */
./sys/unistd.h:# define _POSIX1_VERSION_90 199009L /* We support POSIX.1-1990 */
./sys/unistd.h:# define _POSIX1_VERSION_93 199309L /* We support POSIX.1b-1993 */
./sys/unistd.h:# if !defined(_POSIX_C_SOURCE) || (_POSIX_C_SOURCE < 199309L)
./sys/unistd.h:# else /* _POSIX_C_SOURCE && _POSIX_C_SOURCE >= 199309L */
./sys/unistd.h:# endif /* _POSIX_C_SOURCE && _POSIX_C_SOURCE >= 199309L */
./sys/unistd.h:/* Symbolic constants for sysconf() variables defined by POSIX.1-1988: 0-7 */
./sys/unistd.h:# define _SC_1_VERSION_88 7 /* _POSIX_VERSION: Date of POSIX.1-1988 */
./sys/unistd.h:/* Symbolic constants for sysconf() variables added by POSIX.1-1990: 100-199 */
./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:# define _POSIX2_VERSION 199209L /* IEEE POSIX.2-1992 base standard */
./sys/unistd.h:# define _POSIX2_C_VERSION 199209L /* IEEE POSIX.2-1992 C language binding */
./limits.h:# define _POSIX_CLOCKRES_MIN 20000000 /* The CLOCK_REALTIME clock
./X11/Xosdefs.h:#define X_POSIX_C_SOURCE 199300L
./dce/cdsclerk.h:#if _POSIX_C_SOURCE >= 199506L
./dce/rpcexc.h:#if _POSIX_C_SOURCE >= 199506L
./dce/stubbase.h:#if _POSIX_C_SOURCE >= 199506L
--
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/
next prev parent reply other threads:[~2007-12-20 7:18 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-12-17 18:23 [PATCH] HP-UX does not have select.h H.Merijn Brand
2007-12-17 21:00 ` Junio C Hamano
2007-12-17 22:22 ` H.Merijn Brand
2007-12-18 5:29 ` Junio C Hamano
2007-12-18 7:11 ` H.Merijn Brand
2007-12-18 8:16 ` Johannes Sixt
2007-12-18 12:38 ` Johannes Schindelin
2007-12-18 12:45 ` Johannes Sixt
2007-12-18 13:53 ` Johannes Schindelin
2007-12-18 14:22 ` Johannes Sixt
2007-12-18 9:30 ` Andreas Ericsson
2007-12-18 9:47 ` Junio C Hamano
2007-12-18 10:49 ` H.Merijn Brand
2007-12-19 19:57 ` Junio C Hamano
2007-12-19 20:12 ` H.Merijn Brand
2007-12-19 21:31 ` Junio C Hamano
2007-12-20 7:18 ` H.Merijn Brand [this message]
2007-12-20 7:52 ` Junio C Hamano
2007-12-23 8:37 ` Jan Hudec
2007-12-23 8:59 ` H.Merijn Brand
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20071220081806.0ccdf636@pc09.procura.nl \
--to=h.m.brand@xs4all.nl \
--cc=ae@op5.se \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).