This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

classification
Title: build fixes for SCO
Type: Stage:
Components: Build Versions: Python 2.2
process
Status: closed Resolution: accepted
Dependencies: Superseder:
Assigned To: Nosy List: loewis, tim1470
Priority: normal Keywords: patch

Created on 2002-09-26 17:19 by tim1470, last changed 2022-04-10 16:05 by admin. This issue is now closed.

Files
File name Uploaded Description Edit
sco.patch tim1470, 2002-09-26 17:19 SCO build fixes for release22-maint branch
sco.patch2 tim1470, 2002-09-27 03:29 replaces sco.patch (better fixes to configure.in)
sco-head.patch tim1470, 2002-09-27 04:21 build fixes for HEAD for SCO
configure.in.patch tim1470, 2002-09-27 17:29 replaces sco.patch, sco.patch2 and sco-head.patch
Messages (11)
msg41265 - (view) Author: Tim Rice (tim1470) Date: 2002-09-26 17:19
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. 
msg41266 - (view) Author: Martin v. Löwis (loewis) * (Python committer) Date: 2002-09-26 18:26
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?
msg41267 - (view) Author: Tim Rice (tim1470) Date: 2002-09-26 19:06
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)



msg41268 - (view) Author: Tim Rice (tim1470) Date: 2002-09-26 20:11
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.
msg41269 - (view) Author: Tim Rice (tim1470) Date: 2002-09-27 03:29
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
msg41270 - (view) Author: Tim Rice (tim1470) Date: 2002-09-27 04:21
Logged In: YES 
user_id=618097

Here is a patch for HEAD that will get things
closer to working on SCO 
msg41271 - (view) Author: Tim Rice (tim1470) Date: 2002-09-27 04:24
Logged In: YES 
user_id=618097

Maybe I should have done a seperate one for HEAD
I don't know.
msg41272 - (view) Author: Tim Rice (tim1470) Date: 2002-09-27 17:29
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.
msg41273 - (view) Author: Martin v. Löwis (loewis) * (Python committer) Date: 2002-09-30 10:25
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.
msg41274 - (view) Author: Tim Rice (tim1470) Date: 2002-09-30 15:58
Logged In: YES 
user_id=618097

SCO (formarly Caldera) has 3 OS product lines.
UnixWare (which includes OpenUNIX)
Open Server 5
and OpenLinux.
The patch primarly address the Open Server 5 product.
Here is a table of $ac_sys_system (uname -s) values.
UnixWare 2.03   UNIX_SV
UnixWare 2.1.3  UNIX_SV
UnixWare 7.1.1  UnixWare
OpenUnix 8.0.0  OpenUNIX
Open Server 5   SCO_SV

So no, 
+       case $ac_sys_system in
+           SCO_SV*) OPT="$OPT -m486 -DSCO5";;
+       esac
will not interfere with UnixWare.

The -KPIC for UnixWare is correct but for 
Open Server, the option is -Kpic

In HEAD, 
#if defined(__USLC__) && defined(__SCO_VERSION__
#define STRICT_SYSV_CURSES /* Don't use ncurses extensions
*/
#endif
should really be replaced with a configure 
time test.  HEAD still needs a lot of work
for UnixWare and Open Server. Perhaps i'll
have time in november.
msg41275 - (view) Author: Martin v. Löwis (loewis) * (Python committer) Date: 2002-09-30 16:24
Logged In: YES 
user_id=21627

Thanks for these clarifications.Applied in 2.2 as

configure.in 1.288.6.12;
regrtest.py 1.70.4.2;
_cursesmodule.c 2.61.6.3;
_hotshot.c 1.11.6.4;
_cursesmodule.c 2.61.6.3;
configure 1.279.6.12;

I have also applied the patch to HEAD, hoping that you'll
supply the missing bits as a separate patch later:

configure 1.338;
configure.in 1.349;
regrtest.py 1.98
 _cursesmodule.c 2.67;
_hotshot.c 1.30;
ACKS 1.206;

If you do provide more patches later, please split them
individually by system.
History
Date User Action Args
2022-04-10 16:05:42adminsetgithub: 37225
2002-09-26 17:19:00tim1470create