Revamped framework search path handling for MacOSX. This should allow

two framework builds (in /Library and /System/Library) to coexist
with distutils linking against the right one.

Should be backported to 2.3, but getting Apple-supplied Python to pick
up these fixes is going to be non-trivial.
This commit is contained in:
Jack Jansen 2003-12-08 01:10:12 +00:00
parent 48e02e4c39
commit c8607b76f0
2 changed files with 11 additions and 9 deletions

11
configure vendored
View File

@ -1,5 +1,5 @@
#! /bin/sh #! /bin/sh
# From configure.in Revision: 1.440 . # From configure.in Revision: 1.441 .
# Guess values for system-dependent variables and create Makefiles. # Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.57 for python 2.4. # Generated by GNU Autoconf 2.57 for python 2.4.
# #
@ -9991,7 +9991,6 @@ then
BASECFLAGS="$BASECFLAGS -fno-common -dynamic" BASECFLAGS="$BASECFLAGS -fno-common -dynamic"
# -F. is needed to allow linking to the framework while # -F. is needed to allow linking to the framework while
# in the build location. # in the build location.
LDFLAGS="$LDFLAGS -Wl,-F."
cat >>confdefs.h <<\_ACEOF cat >>confdefs.h <<\_ACEOF
#define WITH_NEXT_FRAMEWORK 1 #define WITH_NEXT_FRAMEWORK 1
@ -10085,7 +10084,8 @@ then
LDSHARED='$(CC) $(LDFLAGS) -bundle' LDSHARED='$(CC) $(LDFLAGS) -bundle'
if test "$enable_framework" ; then if test "$enable_framework" ; then
# Link against the framework. All externals should be defined. # Link against the framework. All externals should be defined.
LDSHARED="$LDSHARED "'-framework $(PYTHONFRAMEWORK)' BLDSHARED="$LDSHARED "'-Wl,-F. -framework $(PYTHONFRAMEWORK)'
LDSHARED="$LDSHARED "'-Wl,-F$(PYTHONFRAMEWORKPREFIX) -framework $(PYTHONFRAMEWORK)'
else else
# No framework. Ignore undefined symbols, assuming they come from Python # No framework. Ignore undefined symbols, assuming they come from Python
LDSHARED="$LDSHARED -undefined suppress" LDSHARED="$LDSHARED -undefined suppress"
@ -10094,7 +10094,8 @@ then
LDSHARED='$(CC) $(LDFLAGS) -bundle' LDSHARED='$(CC) $(LDFLAGS) -bundle'
if test "$enable_framework" ; then if test "$enable_framework" ; then
# Link against the framework. All externals should be defined. # Link against the framework. All externals should be defined.
LDSHARED="$LDSHARED "'-framework $(PYTHONFRAMEWORK)' BLDSHARED="$LDSHARED "'-Wl,-F. -framework $(PYTHONFRAMEWORK)'
LDSHARED="$LDSHARED "'-Wl,-F$(PYTHONFRAMEWORKPREFIX) -framework $(PYTHONFRAMEWORK)'
else else
# No framework, use the Python app as bundle-loader # No framework, use the Python app as bundle-loader
BLDSHARED="$LDSHARED "'-bundle_loader $(BUILDPYTHON)' BLDSHARED="$LDSHARED "'-bundle_loader $(BUILDPYTHON)'
@ -10191,7 +10192,7 @@ then
LINKFORSHARED="$extra_undefs -framework System" LINKFORSHARED="$extra_undefs -framework System"
if test "$enable_framework" if test "$enable_framework"
then then
LINKFORSHARED="$LINKFORSHARED -framework Python" LINKFORSHARED="$LINKFORSHARED -Wl,-F. -framework Python"
fi fi
LINKFORSHARED="$LINKFORSHARED $extra_frameworks";; LINKFORSHARED="$LINKFORSHARED $extra_frameworks";;
OpenUNIX*|UnixWare*) LINKFORSHARED="-Wl,-Bexport";; OpenUNIX*|UnixWare*) LINKFORSHARED="-Wl,-Bexport";;

View File

@ -1185,7 +1185,6 @@ then
BASECFLAGS="$BASECFLAGS -fno-common -dynamic" BASECFLAGS="$BASECFLAGS -fno-common -dynamic"
# -F. is needed to allow linking to the framework while # -F. is needed to allow linking to the framework while
# in the build location. # in the build location.
LDFLAGS="$LDFLAGS -Wl,-F."
AC_DEFINE(WITH_NEXT_FRAMEWORK, 1, AC_DEFINE(WITH_NEXT_FRAMEWORK, 1,
[Define if you want to produce an OpenStep/Rhapsody framework [Define if you want to produce an OpenStep/Rhapsody framework
(shared library plus accessory files).]) (shared library plus accessory files).])
@ -1268,7 +1267,8 @@ then
LDSHARED='$(CC) $(LDFLAGS) -bundle' LDSHARED='$(CC) $(LDFLAGS) -bundle'
if test "$enable_framework" ; then if test "$enable_framework" ; then
# Link against the framework. All externals should be defined. # Link against the framework. All externals should be defined.
LDSHARED="$LDSHARED "'-framework $(PYTHONFRAMEWORK)' BLDSHARED="$LDSHARED "'-Wl,-F. -framework $(PYTHONFRAMEWORK)'
LDSHARED="$LDSHARED "'-Wl,-F$(PYTHONFRAMEWORKPREFIX) -framework $(PYTHONFRAMEWORK)'
else else
# No framework. Ignore undefined symbols, assuming they come from Python # No framework. Ignore undefined symbols, assuming they come from Python
LDSHARED="$LDSHARED -undefined suppress" LDSHARED="$LDSHARED -undefined suppress"
@ -1277,7 +1277,8 @@ then
LDSHARED='$(CC) $(LDFLAGS) -bundle' LDSHARED='$(CC) $(LDFLAGS) -bundle'
if test "$enable_framework" ; then if test "$enable_framework" ; then
# Link against the framework. All externals should be defined. # Link against the framework. All externals should be defined.
LDSHARED="$LDSHARED "'-framework $(PYTHONFRAMEWORK)' BLDSHARED="$LDSHARED "'-Wl,-F. -framework $(PYTHONFRAMEWORK)'
LDSHARED="$LDSHARED "'-Wl,-F$(PYTHONFRAMEWORKPREFIX) -framework $(PYTHONFRAMEWORK)'
else else
# No framework, use the Python app as bundle-loader # No framework, use the Python app as bundle-loader
BLDSHARED="$LDSHARED "'-bundle_loader $(BUILDPYTHON)' BLDSHARED="$LDSHARED "'-bundle_loader $(BUILDPYTHON)'
@ -1370,7 +1371,7 @@ then
LINKFORSHARED="$extra_undefs -framework System" LINKFORSHARED="$extra_undefs -framework System"
if test "$enable_framework" if test "$enable_framework"
then then
LINKFORSHARED="$LINKFORSHARED -framework Python" LINKFORSHARED="$LINKFORSHARED -Wl,-F. -framework Python"
fi fi
LINKFORSHARED="$LINKFORSHARED $extra_frameworks";; LINKFORSHARED="$LINKFORSHARED $extra_frameworks";;
OpenUNIX*|UnixWare*) LINKFORSHARED="-Wl,-Bexport";; OpenUNIX*|UnixWare*) LINKFORSHARED="-Wl,-Bexport";;