[Patches] "David J. MacKenzie": Python 1.5.2 BSD/OS support for dynamic modules

Guido van Rossum guido@python.org
Sun, 18 Jun 2000 00:00:57 -0500


------- Forwarded Message

Date:    Sun, 11 Jun 2000 03:54:31 -0400
From:    "David J. MacKenzie" <djm@eng.us.uu.net>
To:      support@BSDI.COM, guido@python.org
cc:      djm@eng.us.uu.net, engprodstaff@eng.us.uu.net
Subject: Python 1.5.2 BSD/OS support for dynamic modules

This patch adds support for dynamically loaded modules
(via the *shared* magic token in Modules/Setup.in) on BSDI BSD/OS 4.0.1
to Python 1.5.2.  I think the dynamic library support in BSD/OS 4.1 is
the same, so this patch should work there too.  Run autoconf after
applying, of course.

Index: configure.in
- --- configure.in	2000/02/17 14:48:49	1.1
+++ configure.in	2000/06/11 07:42:52	1.2
@@ -467,7 +467,7 @@
 		fi ;;
 	Linux*) LDSHARED="gcc -shared";;
 	dgux*) LDSHARED="ld -G";;
- -	FreeBSD*/3*) LDSHARED="gcc -shared";;
+	FreeBSD*/3*|BSD/OS/4*) LDSHARED="gcc -shared";;
 	FreeBSD*|OpenBSD*) LDSHARED="ld -Bshareable";;
 	NetBSD*)
 		if [[ "`$CC -dM -E - </dev/null | grep __ELF__`" != "" ]]
@@ -493,7 +493,7 @@
 		 fi;;
 	Linux*) CCSHARED="-fpic";;
 	FreeBSD*|OpenBSD*) CCSHARED="-fpic";;
- -	NetBSD*) CCSHARED="-fPIC";;
+	NetBSD*|BSD/OS/4*) CCSHARED="-fPIC";;
 	SCO_SV*) CCSHARED="-KPIC -dy -Bdynamic";;
 	IRIX*/6*)  case $CC in
 		   *gcc*) CCSHARED="-shared";;
@@ -512,6 +512,7 @@
 	hp*|HP*)
 	    LINKFORSHARED="-Wl,-E -Wl,+s -Wl,+b\$(BINLIBDEST)/lib-dynload";;
 	FreeBSD/3*) LINKFORSHARED="-Xlinker -export-dynamic";;
+	BSD/OS/4*) LINKFORSHARED="-rdynamic";;
 	Linux*) LINKFORSHARED="-Xlinker -export-dynamic";;
 	# -u libsys_s pulls in all symbols in libsys
 	next/2*|next/3*) LINKFORSHARED="-u libsys_s";;

------- End of Forwarded Message