[Python-Dev] problems with SUSv2 compatibility defines
Fri, 07 Jul 2000 16:17:34 +0200
Sjoerd Mullender wrote:
> On Fri, Jul 7 2000 "M.-A. Lemburg" wrote:
> > Perhaps you could figure out which defines are needed to
> > reenable the missing APIs on IRIX when _XOPEN_SOURCE is
> > defined... it would be helpful to help pin-point the
> > weak spots w/r to SUSv2 compatibility.
> It looks like there is no way of doing this. The relevant bits of
> code are:
> In time.h (as an example):
> #if _SGIAPI && _NO_ANSIMODE
> extern time_t altzone;
> #endif /* _SGIAPI */
> So _SGIAPI and _NO_ANSIMODE should both be defined and != 0.
> The definition of _SGIAPI is
> #define _SGIAPI ((defined(_SGI_SOURCE) && \
> _NO_POSIX && _NO_XOPEN4 && _NO_XOPEN5) || \
> (_ANSIMODE && _NO_POSIX && _NO_XOPEN4 && _NO_XOPEN5))
> So, if _NO_XOPEN5 is 0, _SGIAPI is 0. The definition of _NO_XOPEN5 is
> #define _NO_XOPEN5 (!defined(_XOPEN_SOURCE) || \
> (defined(_XOPEN_SOURCE) && \
> (_XOPEN_SOURCE+0 < 500)))
> So _NO_XOPEN5 is 0 since _XOPEN_SOURCE is defined and >= 500.
Hmm, would that mean that altzone is not part of SUSv2
(in that case we'd have to change Python) ?
Or are the SGI header files wrong here (which means we'd
have to work around those bugs) ?
> All of this on IRIX 6.5.2. I can't check other versions of IRIX.
Python Pages: http://www.lemburg.com/python/