[Python-Dev] 2.3b1 release

Tim Rice tim@multitalents.net
Tue, 22 Apr 2003 15:35:52 -0700 (PDT)


On Tue, 22 Apr 2003, Tim Rice wrote:

> 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 */
>  
> ------------------------

Well after patching pyport.h for the sys/select problem, I had
errors because of missing u_int and u_long data types.
Patch configure.in, pyconfig.h.in, pyport.h.
Now u_char, and u_short.
Patch configure.in, pyconfig.h.in, pyport.h. some more.
Now missing defines of NI_MAXHOST, NI_NUMERICHOST, & NI_MAXSERV.
At that point I said to myself "This is nuts, 2.2.2 worked fine".

So I backed out all my other patches and added this one.
--------------------------
--- configure.in.old	2003-04-17 13:16:42.000000000 -0700
+++ configure.in	2003-04-22 15:26:13.450080095 -0700
@@ -124,6 +124,8 @@
   # of union __?sigval. Reported by Stuart Bishop.
   SunOS/5.6)
     define_xopen_source=no;;
+  OpenUNIX/8.* | UnixWare/7.*)
+    define_xopen_source=no;;
 esac
 
 if test $define_xopen_source = yes
--------------------------

Builds fine now.

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