]> granicus.if.org Git - python/commitdiff
Revamped framework search path handling for MacOSX. This should allow
authorJack Jansen <jack.jansen@cwi.nl>
Mon, 8 Dec 2003 01:10:12 +0000 (01:10 +0000)
committerJack Jansen <jack.jansen@cwi.nl>
Mon, 8 Dec 2003 01:10:12 +0000 (01:10 +0000)
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.

configure
configure.in

index 7b1282ca852b75e7c4691b0385ea36d6861d49c2..43abaf07eed8be90b7db97d2f0358476633b8f4f 100755 (executable)
--- a/configure
+++ b/configure
@@ -1,5 +1,5 @@
 #! /bin/sh
-# From configure.in Revision: 1.440 .
+# From configure.in Revision: 1.441 .
 # Guess values for system-dependent variables and create Makefiles.
 # Generated by GNU Autoconf 2.57 for python 2.4.
 #
@@ -9991,7 +9991,6 @@ then
        BASECFLAGS="$BASECFLAGS -fno-common -dynamic"
        # -F. is needed to allow linking to the framework while
        # in the build location.
-       LDFLAGS="$LDFLAGS -Wl,-F."
 
 cat >>confdefs.h <<\_ACEOF
 #define WITH_NEXT_FRAMEWORK 1
@@ -10085,7 +10084,8 @@ then
                LDSHARED='$(CC) $(LDFLAGS) -bundle'
                if test "$enable_framework" ; then
                        # 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
                        # No framework. Ignore undefined symbols, assuming they come from Python
                        LDSHARED="$LDSHARED -undefined suppress"
@@ -10094,7 +10094,8 @@ then
                LDSHARED='$(CC) $(LDFLAGS) -bundle'
                if test "$enable_framework" ; then
                        # 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
                        # No framework, use the Python app as bundle-loader
                        BLDSHARED="$LDSHARED "'-bundle_loader $(BUILDPYTHON)'
@@ -10191,7 +10192,7 @@ then
                LINKFORSHARED="$extra_undefs -framework System"
                if test "$enable_framework"
                then
-                       LINKFORSHARED="$LINKFORSHARED -framework Python"
+                       LINKFORSHARED="$LINKFORSHARED -Wl,-F. -framework Python"
                fi
                LINKFORSHARED="$LINKFORSHARED $extra_frameworks";;
        OpenUNIX*|UnixWare*) LINKFORSHARED="-Wl,-Bexport";;
index e0dd64de3d7f9e8a33b5fd6194708442fa393fe7..9a4183ca6cdba0d44b99f0e1f94dd1da1e331827 100644 (file)
@@ -1185,7 +1185,6 @@ then
        BASECFLAGS="$BASECFLAGS -fno-common -dynamic"
        # -F. is needed to allow linking to the framework while 
        # in the build location.
-       LDFLAGS="$LDFLAGS -Wl,-F."
        AC_DEFINE(WITH_NEXT_FRAMEWORK, 1, 
          [Define if you want to produce an OpenStep/Rhapsody framework
          (shared library plus accessory files).])
@@ -1268,7 +1267,8 @@ then
                LDSHARED='$(CC) $(LDFLAGS) -bundle'
                if test "$enable_framework" ; then
                        # 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
                        # No framework. Ignore undefined symbols, assuming they come from Python
                        LDSHARED="$LDSHARED -undefined suppress"
@@ -1277,7 +1277,8 @@ then
                LDSHARED='$(CC) $(LDFLAGS) -bundle'
                if test "$enable_framework" ; then
                        # 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
                        # No framework, use the Python app as bundle-loader
                        BLDSHARED="$LDSHARED "'-bundle_loader $(BUILDPYTHON)'
@@ -1370,7 +1371,7 @@ then
                LINKFORSHARED="$extra_undefs -framework System"
                if test "$enable_framework"
                then
-                       LINKFORSHARED="$LINKFORSHARED -framework Python"
+                       LINKFORSHARED="$LINKFORSHARED -Wl,-F. -framework Python"
                fi
                LINKFORSHARED="$LINKFORSHARED $extra_frameworks";;
        OpenUNIX*|UnixWare*) LINKFORSHARED="-Wl,-Bexport";;