[Patches] [ python-Patches-615069 ] build fixes for SCO

noreply@sourceforge.net noreply@sourceforge.net
Mon, 30 Sep 2002 03:25:33 -0700


Patches item #615069, was opened at 2002-09-26 19:19
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=305470&aid=615069&group_id=5470

Category: Build
Group: Python 2.2.x
Status: Open
Resolution: None
Priority: 5
Submitted By: Tim Rice (tim1470)
Assigned to: Nobody/Anonymous (nobody)
Summary: build fixes for SCO

Initial Comment:
Here is a patch that fixes some build issues on SCO
Open Server 5,
UnixWare 7,  and OpenUnix 8.
The patch is based on the release22-maint branch
(pulled 25 Sep)

The configure.in, Lib/test/regrtest.py,
Modules/_cursesmodule.c,  and
Modules/_hotshot.c patches should go iin HEAD too.

Hunk #5 of configure.in will fail on HEAD. It'l have to
me manuall added
at about line 1611.

There will be more work to get the HEAD branch working. 

----------------------------------------------------------------------

>Comment By: Martin v. Löwis (loewis)
Date: 2002-09-30 12:25

Message:
Logged In: YES 
user_id=21627

In the CVS head, we currently have

	OpenUNIX*|UnixWare*)
	    OPT="-O -K pentium,host,inline,loop_unroll,alloca ";;

I understand that your patch is also for systems identifying
themselves as UnixWare. Won't the change

+	case $ac_sys_system in
+	    SCO_SV*) OPT="$OPT -m486 -DSCO5";;
+	esac

interfere with that? Could you kindly produce a table that
maps product names to ac_sys_system values?

Also, in the head version, we have

#if defined(__USLC__) && defined(__SCO_VERSION__)
#define STRICT_SYSV_CURSES /* Don't use ncurses extensions */
#endif

in configure.in. Can you please determine whether this is
still needed, or  can be achieved by some other way? 

As for -Kpic: The UnixWare 7 man page on

http://docsrv.caldera.com/cgi-bin/man/man/html.1/cc.1.html

says there is a -KPIC option, but no -Kpic option.

----------------------------------------------------------------------

Comment By: Tim Rice (tim1470)
Date: 2002-09-27 19:29

Message:
Logged In: YES 
user_id=618097

Here is a better patch for the configre.in bits.
iIt should be applied to the release22-maint branch
and HEAD instead of ethier of the 2 previous patches
The bits from Lib/test/regrtest.py, 
Modules/_cursesmodule.c,
and Modules/_hotshot.c  are the same as the previous patch.

----------------------------------------------------------------------

Comment By: Tim Rice (tim1470)
Date: 2002-09-27 06:24

Message:
Logged In: YES 
user_id=618097

Maybe I should have done a seperate one for HEAD
I don't know.

----------------------------------------------------------------------

Comment By: Tim Rice (tim1470)
Date: 2002-09-27 06:21

Message:
Logged In: YES 
user_id=618097

Here is a patch for HEAD that will get things
closer to working on SCO 

----------------------------------------------------------------------

Comment By: Tim Rice (tim1470)
Date: 2002-09-27 05:29

Message:
Logged In: YES 
user_id=618097

Here is a new patch that does a more correct job of
working around SCO's wierdness. I've also added
support for gcc on Open Server 5

If you have questions,  fee free to email
tim@multitalents.net


----------------------------------------------------------------------

Comment By: Tim Rice (tim1470)
Date: 2002-09-26 22:11

Message:
Logged In: YES 
user_id=618097

Correction on the dlopen answer. 
The problem is that Open Server's cc builds COFF 
binaries by default. dlopen only works in an ELF
environment. 

I think I can do better on the dlopen stuff in configure.in
I'm removing the patch for now.


----------------------------------------------------------------------

Comment By: Tim Rice (tim1470)
Date: 2002-09-26 21:06

Message:
Logged In: YES 
user_id=618097

Actually it was HAVE_GETADDRINFO and HAVE_DLOPEN. 
To keep autoheader from complaing.  You could leave that
part out, 
but if you added another function to AC_CHECK_FUNCTS
and ran autoreconf,  pyconfig.h would not be updated.

Why does dlopen fail?  SCO is strange.  I noticed if the
test
program was compiled without -belf it worked. That's the
part
of the patch I like least but iit makes python run on SCO

Why -Kpic? That's what the man page says.

why do the modules pwd,grp,...
For some bizare reason it can't find some functions that are
in libc.so

Please don't modify Setup.local: this is a hand-edited file.
configure creates this file if it does not exist.
I chose to populate it on SCO with the entries to get
a working python on SCO.  If Setup.local exists, it will not
be modified as was the case before the patch.

Why do you remove 'unixware5' from regrtest.py?
The configue.in changes make it unixware7 (which matches
Lib/plat-unixware7)





----------------------------------------------------------------------

Comment By: Martin v. Löwis (loewis)
Date: 2002-09-26 20:26

Message:
Logged In: YES 
user_id=21627

A number of questions and comments:

- why do you add HAVE_GETADDRINFO and HAVE_GETNAMEINFO to
acconfig.h?

- Why does the dlopen test fail? Can you test whether it
still fails in the HEAD branch?

- Why do you use -Kpic?

- why do the modules pwd,grp,... fail as shared modules?
Please don't modify Setup.local: this is a hand-edited file.

- Why do you remove 'unixware5' from regrtest.py?


----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=305470&aid=615069&group_id=5470