[Python-Dev] Snake farm

Marc Recht marc@informatik.uni-bremen.de
10 Nov 2002 23:31:35 +0100


--=-j2lb3JvQTinZU3q9S/38
Content-Type: text/plain
Content-Transfer-Encoding: quoted-printable

> Can you elaborate? We also define _XOPEN_SOURCE. So we are entitled to
> get all functions defined for UNIX.
Hmm.. I'm not that standards guy and didn't read that out of that
document. It enable the extensions. (Though I'm not that sure which that
are..)

> I consider it a bug that FreeBSD does not provide a mode for
> "Conforming XSI Application Using Extensions", according to
FreeBSD does support that. _XOPEN_SOURCE =3D 500 means:
#define  __XSI_VISIBLE     500
#undef _POSIX_C_SOURCE
#define  _POSIX_C_SOURCE      199506

> http://www.opengroup.org/onlinepubs/007904975/basedefs/xbd_chap02.html

> > Setting __BSD_VISIBLE is rather a hack and shouldn't be done..
>=20
> If it is a hack to work around a bug in FreeBSD, then I think it is
> acceptable.
I still not think that's a bug in FreeBSD. But I send you sys/cdefs.h
and unistd.h, so you can have a look for yourself. Maybe I'm getting
something wrong here. IMO it's just a strict interpretation of the
standard.
=20
> It is way too large to be acceptable, and takes a "I care only about	=09
Why? There are only two actual changes the case for FreeBSD and the
addition of _THREAD_SAFE to the CFLAGS if Python is compiled with
threads. The rest just moves the MACHDEP stuff to the top of
configure.in.

> one system" position. Try writing your code in a way so that it
I don't think so.. Sometimes systems need special treatment...
> simultaneously works with many systems, instead of special-casing each
> system individually.
I didn't saw an other way to do it. The defines were always set and that
just doesn't work for FreeBSD.

> For example, why is it necessary to move the enable-framework
> processing?
To define MACHDEP before the XOPEN/POSIX stuff, because of the FreeBSD
case.
=20
Regards
Marc
--=20
"Premature optimization is the root of all evil." -- Donald E. Knuth

--=-j2lb3JvQTinZU3q9S/38
Content-Type: application/pgp-signature; name=signature.asc
Content-Description: This is a digitally signed message part

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.1 (FreeBSD)

iD8DBQA9zt5H7YQCetAaG3MRAnVxAJ9ldKLv3Z0X0GVbgdS8ZPMe7l8LJgCfcuMI
qWu/ENcza+jCRmff4MU5+vs=
=uhdo
-----END PGP SIGNATURE-----

--=-j2lb3JvQTinZU3q9S/38--