[Python-Dev] 2.3b1 release

Tim Rice tim@multitalents.net
Tue, 22 Apr 2003 08:54:40 -0700 (PDT)


On Tue, 22 Apr 2003, Guido van Rossum wrote:

> > The UnixWare build is way dead right now. (today's CVS)
> > 
> > cc -c -K pentium,host,inline,loop_unroll,alloca  -DNDEBUG -O -I. -I/opt/src/utils/python/python/dist/src/Include  -DPy_BUILD_CORE -o Modules/python.o /opt/src/utils/python/python/dist/src/Modules/python.c
> > UX:acomp: ERROR: "/usr/include/sys/select.h", line 45: identifier redeclared: fd_set
> > UX:acomp: ERROR: "/usr/include/sys/select.h", line 72: identifier redeclared: select
> > gmake: *** [Modules/python.o] Error 1
> 
> That doesn't look like a *new* problem to me; if sys/select.h is being
> included twice, that probably was so for a long time.  You may be the
> only person with access to this platform.  Can you find the problem?
> 
> Was this present in 2.3a2?
> 
> --Guido van Rossum (home page: http://www.python.org/~guido/)

I think it was in 2.3a1 and probably before.

It looks like the problem is having both sys/time.h and sys/select.h
included when both _XOPEN_SOURCE and _XOPEN_SOURCE_EXTENDED are
defined.

SYS_SELECT_WITH_SYS_TIME is not defined in pyconfig.h so configure
is detecting the problem. It's just that SYS_SELECT_WITH_SYS_TIME is
not user anywhere in the code.

Something like this will get things a lot farther.
------------------------
--- pyport.h.old	2003-04-17 13:17:24.000000000 -0700
+++ pyport.h	2003-04-22 08:51:43.230240009 -0700
@@ -115,7 +115,9 @@
 
 #ifdef HAVE_SYS_SELECT_H
 
+#ifdef SYS_SELECT_WITH_SYS_TIME
 #include <sys/select.h>
+#endif
 
 #endif /* !HAVE_SYS_SELECT_H */
 
------------------------

-- 
Tim Rice				Multitalents	(707) 887-1469
tim@multitalents.net