Fixed two bugs in MacOSX framework handling spotted by Edward Moy:
- In the top level Makefile, the argument to -install_name should be
prepended with /System/Library/Frameworks/, so it is an absolute path.
- In the top level Makefile, because of 2), RUNSHARED needs to be set to
DYLD_FRAMEWORK_PATH=<path to local framework> and $(RUNSHARED) prepended
to the $(MAKE) lines in the frameworkinstallmaclib and
frameworkinstallapps targets.
diff --git a/Makefile.pre.in b/Makefile.pre.in
index 27e8090..d7de18e 100644
--- a/Makefile.pre.in
+++ b/Makefile.pre.in
@@ -858,14 +858,14 @@
# This installs Mac/Lib into the framework
frameworkinstallmaclib:
$(MAKE) -f $(srcdir)/Mac/OSX/Makefile installmacsubtree \
- BUILDPYTHON=./$(BUILDPYTHON) DIRMODE=$(DIRMODE) FILEMODE=$(FILEMODE) \
+ $(RUNSHARED) BUILDPYTHON=./$(BUILDPYTHON) DIRMODE=$(DIRMODE) FILEMODE=$(FILEMODE) \
srcdir=$(srcdir) builddir=. prefix=$(prefix) LIBDEST=$(LIBDEST) \
DESTDIR=$(DESTDIR)
# This installs the IDE, the Launcher and other apps into /Applications
frameworkinstallapps:
$(MAKE) -f $(srcdir)/Mac/OSX/Makefile installapps \
- BUILDPYTHON=./$(BUILDPYTHON) DIRMODE=$(DIRMODE) FILEMODE=$(FILEMODE) \
+ $(RUNSHARED) BUILDPYTHON=./$(BUILDPYTHON) DIRMODE=$(DIRMODE) FILEMODE=$(FILEMODE) \
srcdir=$(srcdir) builddir=. DESTDIR=$(DESTDIR)
# This install the unix python and pythonw tools in /usr/local/bin
@@ -878,7 +878,7 @@
# It is not part of a normal frameworkinstall
frameworkinstallextras:
$(MAKE) -f $(srcdir)/Mac/OSX/Makefile installextras \
- BUILDPYTHON=./$(BUILDPYTHON) DIRMODE=$(DIRMODE) FILEMODE=$(FILEMODE) \
+ $(RUNSHARED) BUILDPYTHON=./$(BUILDPYTHON) DIRMODE=$(DIRMODE) FILEMODE=$(FILEMODE) \
srcdir=$(srcdir) builddir=. DESTDIR=$(DESTDIR)
# This installs a few of the useful scripts in Tools/scripts
diff --git a/configure b/configure
index 257e547..f5bbc77 100755
--- a/configure
+++ b/configure
@@ -1,5 +1,5 @@
#! /bin/sh
-# From configure.in Revision: 1.419 .
+# From configure.in Revision: 1.420 .
# Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.53 for python 2.3.
#
@@ -3255,7 +3255,7 @@
if test "$enable_framework"
then
LDLIBRARY='$(PYTHONFRAMEWORKDIR)/Versions/$(VERSION)/$(PYTHONFRAMEWORK)'
- LDLIBRARYDIR='$(PYTHONFRAMEWORKDIR)'
+ RUNSHARED=DYLD_FRAMEWORK_PATH="`pwd`:$DYLD_FRAMEWORK_PATH"
BLDLIBRARY=''
else
BLDLIBRARY='$(LDLIBRARY)'
@@ -9466,12 +9466,12 @@
Darwin/1.3*)
LIBTOOL_CRUFT="-lcc_dynamic -arch_only ppc"
LIBTOOL_CRUFT="$LIBTOOL_CRUFT $extra_frameworks"
- LIBTOOL_CRUFT=$LIBTOOL_CRUFT' -install_name $(PYTHONFRAMEWORKDIR)/Versions/$(VERSION)/Python'
+ LIBTOOL_CRUFT=$LIBTOOL_CRUFT' -install_name $(PYTHONFRAMEWORKINSTALLDIR)/Versions/$(VERSION)/Python'
LIBTOOL_CRUFT=$LIBTOOL_CRUFT' -compatibility_version $(VERSION) -current_version $(VERSION)';;
Darwin/*)
LIBTOOL_CRUFT="-lcc_dynamic -arch_only ppc"
LIBTOOL_CRUFT="$LIBTOOL_CRUFT $extra_frameworks"
- LIBTOOL_CRUFT=$LIBTOOL_CRUFT' -install_name $(PYTHONFRAMEWORKDIR)/Versions/$(VERSION)/Python'
+ LIBTOOL_CRUFT=$LIBTOOL_CRUFT' -install_name $(PYTHONFRAMEWORKINSTALLDIR)/Versions/$(VERSION)/Python'
LIBTOOL_CRUFT=$LIBTOOL_CRUFT' -compatibility_version $(VERSION) -current_version $(VERSION)';;
esac
diff --git a/configure.in b/configure.in
index b80086c..b82ca6e 100644
--- a/configure.in
+++ b/configure.in
@@ -487,7 +487,7 @@
if test "$enable_framework"
then
LDLIBRARY='$(PYTHONFRAMEWORKDIR)/Versions/$(VERSION)/$(PYTHONFRAMEWORK)'
- LDLIBRARYDIR='$(PYTHONFRAMEWORKDIR)'
+ RUNSHARED=DYLD_FRAMEWORK_PATH="`pwd`:$DYLD_FRAMEWORK_PATH"
BLDLIBRARY=''
else
BLDLIBRARY='$(LDLIBRARY)'
@@ -1132,12 +1132,12 @@
Darwin/1.3*)
LIBTOOL_CRUFT="-lcc_dynamic -arch_only ppc"
LIBTOOL_CRUFT="$LIBTOOL_CRUFT $extra_frameworks"
- LIBTOOL_CRUFT=$LIBTOOL_CRUFT' -install_name $(PYTHONFRAMEWORKDIR)/Versions/$(VERSION)/Python'
+ LIBTOOL_CRUFT=$LIBTOOL_CRUFT' -install_name $(PYTHONFRAMEWORKINSTALLDIR)/Versions/$(VERSION)/Python'
LIBTOOL_CRUFT=$LIBTOOL_CRUFT' -compatibility_version $(VERSION) -current_version $(VERSION)';;
Darwin/*)
LIBTOOL_CRUFT="-lcc_dynamic -arch_only ppc"
LIBTOOL_CRUFT="$LIBTOOL_CRUFT $extra_frameworks"
- LIBTOOL_CRUFT=$LIBTOOL_CRUFT' -install_name $(PYTHONFRAMEWORKDIR)/Versions/$(VERSION)/Python'
+ LIBTOOL_CRUFT=$LIBTOOL_CRUFT' -install_name $(PYTHONFRAMEWORKINSTALLDIR)/Versions/$(VERSION)/Python'
LIBTOOL_CRUFT=$LIBTOOL_CRUFT' -compatibility_version $(VERSION) -current_version $(VERSION)';;
esac