diff --git a/Mac/BuildScript/build-installer.py b/Mac/BuildScript/build-installer.py
index 37974e994a3..1fd2439be5a 100755
--- a/Mac/BuildScript/build-installer.py
+++ b/Mac/BuildScript/build-installer.py
@@ -199,7 +199,7 @@ PKG_RECIPES = [
dict(
name="PythonApplications",
long_name="GUI Applications",
- source="/Applications/MacPython %(VER)s",
+ source="/Applications/Python %(VER)s",
readme="""\
This package installs IDLE (an interactive Python IDE),
Python Launcher and Build Applet (create application bundles
diff --git a/Mac/BuildScript/resources/ReadMe.txt b/Mac/BuildScript/resources/ReadMe.txt
index 1a6e63764ff..cb00c937cc9 100644
--- a/Mac/BuildScript/resources/ReadMe.txt
+++ b/Mac/BuildScript/resources/ReadMe.txt
@@ -19,7 +19,7 @@ environment, an applet builder), plus a set of pre-built
extension modules that open up specific Macintosh technologies
to Python programs (Carbon, AppleScript, Quicktime, more).
-The installer puts the applications in "MacPython $VERSION"
+The installer puts the applications in "Python $VERSION"
in your Applications folder, command-line tools in
/usr/local/bin and the underlying machinery in
$PYTHONFRAMEWORKINSTALLDIR.
diff --git a/Mac/IDLE/Makefile.in b/Mac/IDLE/Makefile.in
index 2f63892a071..600f1fc8db2 100644
--- a/Mac/IDLE/Makefile.in
+++ b/Mac/IDLE/Makefile.in
@@ -9,6 +9,7 @@ srcdir= @srcdir@
VERSION= @VERSION@
UNIVERSALSDK=@UNIVERSALSDK@
builddir= ../..
+PYTHONFRAMEWORK=@PYTHONFRAMEWORK@
RUNSHARED= @RUNSHARED@
BUILDEXE= @BUILDEXEEXT@
@@ -21,7 +22,7 @@ MACOSX_DEPLOYMENT_TARGET=@CONFIGURE_MACOSX_DEPLOYMENT_TARGET@
BUNDLEBULDER=$(srcdir)/../../Lib/plat-mac/bundlebuilder.py
-PYTHONAPPSDIR=/Applications/MacPython $(VERSION)
+PYTHONAPPSDIR=/Applications/$(PYTHONFRAMEWORK) $(VERSION)
all: IDLE.app
diff --git a/Mac/Makefile.in b/Mac/Makefile.in
index 8b2e1dbabf8..34734d04130 100644
--- a/Mac/Makefile.in
+++ b/Mac/Makefile.in
@@ -13,14 +13,16 @@ BUILDPYTHON=$(builddir)/python$(BUILDEXE)
DESTDIR=
LDFLAGS=@LDFLAGS@
FRAMEWORKUNIXTOOLSPREFIX=@FRAMEWORKUNIXTOOLSPREFIX@
+PYTHONFRAMEWORK=@PYTHONFRAMEWORK@
+
# These are normally glimpsed from the previous set
bindir=$(prefix)/bin
-PYTHONAPPSDIR=/Applications/MacPython $(VERSION)
+PYTHONAPPSDIR=/Applications/$(PYTHONFRAMEWORK) $(VERSION)
APPINSTALLDIR=$(prefix)/Resources/Python.app
# Variables for installing the "normal" unix binaries
-INSTALLED_PYTHONAPP=$(APPINSTALLDIR)/Contents/MacOS/Python
+INSTALLED_PYTHONAPP=$(APPINSTALLDIR)/Contents/MacOS/$(PYTHONFRAMEWORK)
# Items more-or-less copied from the main Makefile
DIRMODE=755
@@ -103,7 +105,7 @@ install_versionedtools:
pythonw: $(srcdir)/Tools/pythonw.c Makefile
$(CC) $(LDFLAGS) -o $@ $(srcdir)/Tools/pythonw.c \
- -DPYTHONWEXECUTABLE='"$(APPINSTALLDIR)/Contents/MacOS/Python"'
+ -DPYTHONWEXECUTABLE='"$(APPINSTALLDIR)/Contents/MacOS/$(PYTHONFRAMEWORK)"'
install_PythonLauncher:
@@ -155,7 +157,7 @@ install_Python:
esac; \
done; \
done
- $(INSTALL_PROGRAM) $(STRIPFLAG) $(BUILDPYTHON) "$(DESTDIR)$(APPINSTALLDIR)/Contents/MacOS/Python"
+ $(INSTALL_PROGRAM) $(STRIPFLAG) $(BUILDPYTHON) "$(DESTDIR)$(APPINSTALLDIR)/Contents/MacOS/$(PYTHONFRAMEWORK)"
install_IDLE:
cd IDLE && make install
diff --git a/Mac/Resources/app/Info.plist b/Mac/Resources/app/Info.plist.in
similarity index 86%
rename from Mac/Resources/app/Info.plist
rename to Mac/Resources/app/Info.plist.in
index 387bbed2de3..123371526b1 100644
--- a/Mac/Resources/app/Info.plist
+++ b/Mac/Resources/app/Info.plist.in
@@ -20,7 +20,7 @@
CFBundleExecutable
Python
CFBundleGetInfoString
- 2.5alpha0, (c) 2004 Python Software Foundation.
+ @VERSION@, (c) 2004 Python Software Foundation.
CFBundleHelpBookFolder
Documentation
@@ -33,21 +33,21 @@
CFBundleIconFile
PythonInterpreter.icns
CFBundleIdentifier
- org.python.python
+ @PYTHONFRAMEWORKIDENTIFIER@.app
CFBundleInfoDictionaryVersion
6.0
CFBundleLongVersionString
- 2.5alpha0, (c) 2004 Python Software Foundation.
+ @VERSION@, (c) 2004-2008 Python Software Foundation.
CFBundleName
Python
CFBundlePackageType
APPL
CFBundleShortVersionString
- 2.5alpha0
+ @VERSION@
CFBundleSignature
PytX
CFBundleVersion
- 2.5alpha0
+ @VERSION@
CSResourcesFileMapped
LSRequiresCarbon
diff --git a/Mac/Resources/app/Resources/English.lproj/InfoPlist.strings b/Mac/Resources/app/Resources/English.lproj/InfoPlist.strings
deleted file mode 100644
index f8a8bc18fe2..00000000000
Binary files a/Mac/Resources/app/Resources/English.lproj/InfoPlist.strings and /dev/null differ
diff --git a/Mac/Resources/framework/English.lproj/InfoPlist.strings b/Mac/Resources/framework/English.lproj/InfoPlist.strings
deleted file mode 100644
index cc24bfcf3ef..00000000000
Binary files a/Mac/Resources/framework/English.lproj/InfoPlist.strings and /dev/null differ
diff --git a/Mac/Resources/framework/Info.plist b/Mac/Resources/framework/Info.plist.in
similarity index 72%
rename from Mac/Resources/framework/Info.plist
rename to Mac/Resources/framework/Info.plist.in
index 302ff480060..a753e88d79e 100644
--- a/Mac/Resources/framework/Info.plist
+++ b/Mac/Resources/framework/Info.plist.in
@@ -9,7 +9,7 @@
CFBundleGetInfoString
Python Runtime and Library
CFBundleIdentifier
- org.python.python
+ @PYTHONFRAMEWORKIDENTIFIER@
CFBundleInfoDictionaryVersion
6.0
CFBundleName
@@ -17,10 +17,12 @@
CFBundlePackageType
FMWK
CFBundleShortVersionString
- 2.5
+ %VERSION%, (c) 2004-2008 Python Software Foundation.
+ CFBundleLongVersionString
+ %VERSION%, (c) 2004-2008 Python Software Foundation.
CFBundleSignature
????
CFBundleVersion
- 2.5
+ %VERSION%
diff --git a/Mac/Resources/framework/version.plist b/Mac/Resources/framework/version.plist
deleted file mode 100644
index 7527442ab20..00000000000
--- a/Mac/Resources/framework/version.plist
+++ /dev/null
@@ -1,18 +0,0 @@
-
-
-
-
- BuildVersion
- 1
- CFBundleShortVersionString
- 2.5alpha0
- CFBundleVersion
- 2.5alpha0
- ProjectName
- Python
- ReleaseStatus
- alfa
- SourceVersion
- 2.4a0
-
-
diff --git a/Makefile.pre.in b/Makefile.pre.in
index 8ee12c0dea3..b3f1cf06c22 100644
--- a/Makefile.pre.in
+++ b/Makefile.pre.in
@@ -418,18 +418,16 @@ libpython$(VERSION).sl: $(LIBRARY_OBJS)
# This rule is here for OPENSTEP/Rhapsody/MacOSX. It builds a temporary
# minimal framework (not including the Lib directory and such) in the current
# directory.
-RESSRCDIR=$(srcdir)/Mac/Resources/framework
+RESSRCDIR=Mac/Resources/framework
$(PYTHONFRAMEWORKDIR)/Versions/$(VERSION)/$(PYTHONFRAMEWORK): \
$(LIBRARY) \
- $(RESSRCDIR)/Info.plist \
- $(RESSRCDIR)/version.plist \
- $(RESSRCDIR)/English.lproj/InfoPlist.strings
+ $(RESSRCDIR)/Info.plist
$(INSTALL) -d -m $(DIRMODE) $(PYTHONFRAMEWORKDIR)/Versions/$(VERSION)
if test "${UNIVERSALSDK}"; then \
$(CC) -o $(LDLIBRARY) -arch i386 -arch ppc -dynamiclib \
-isysroot "${UNIVERSALSDK}" \
-all_load $(LIBRARY) -Wl,-single_module \
- -install_name $(DESTDIR)$(PYTHONFRAMEWORKINSTALLDIR)/Versions/$(VERSION)/Python \
+ -install_name $(DESTDIR)$(PYTHONFRAMEWORKINSTALLDIR)/Versions/$(VERSION)/$(PYTHONFRAMEWORK) \
-compatibility_version $(VERSION) \
-current_version $(VERSION); \
else \
@@ -440,10 +438,6 @@ $(PYTHONFRAMEWORKDIR)/Versions/$(VERSION)/$(PYTHONFRAMEWORK): \
$(PYTHONFRAMEWORKDIR)/Versions/$(VERSION)/Resources/English.lproj
$(INSTALL_DATA) $(RESSRCDIR)/Info.plist \
$(PYTHONFRAMEWORKDIR)/Versions/$(VERSION)/Resources/Info.plist
- $(INSTALL_DATA) $(RESSRCDIR)/version.plist \
- $(PYTHONFRAMEWORKDIR)/Versions/$(VERSION)/Resources/version.plist
- $(INSTALL_DATA) $(RESSRCDIR)/English.lproj/InfoPlist.strings \
- $(PYTHONFRAMEWORKDIR)/Versions/$(VERSION)/Resources/English.lproj/InfoPlist.strings
$(LN) -fsn $(VERSION) $(PYTHONFRAMEWORKDIR)/Versions/Current
$(LN) -fsn Versions/Current/$(PYTHONFRAMEWORK) $(PYTHONFRAMEWORKDIR)/$(PYTHONFRAMEWORK)
$(LN) -fsn Versions/Current/Headers $(PYTHONFRAMEWORKDIR)/Headers
@@ -1030,12 +1024,9 @@ frameworkinstallstructure: $(LDLIBRARY)
fi; \
done
$(LN) -fsn include/python$(VERSION) $(DESTDIR)$(prefix)/Headers
- $(INSTALL_DATA) $(RESSRCDIR)/Info.plist $(DESTDIR)$(prefix)/Resources/Info.plist
- $(INSTALL_DATA) $(RESSRCDIR)/version.plist $(DESTDIR)$(prefix)/Resources/version.plist
- $(INSTALL_DATA) $(RESSRCDIR)/English.lproj/InfoPlist.strings \
- $(DESTDIR)$(prefix)/Resources/English.lproj/InfoPlist.strings
+ sed 's/%VERSION%/'"`$(RUNSHARED) ./$(BUILDPYTHON) -c 'import platform; print platform.python_version()'`"'/g' < $(RESSRCDIR)/Info.plist > $(DESTDIR)$(prefix)/Resources/Info.plist
$(LN) -fsn $(VERSION) $(DESTDIR)$(PYTHONFRAMEWORKINSTALLDIR)/Versions/Current
- $(LN) -fsn Versions/Current/Python $(DESTDIR)$(PYTHONFRAMEWORKINSTALLDIR)/Python
+ $(LN) -fsn Versions/Current/$(PYTHONFRAMEWORK) $(DESTDIR)$(PYTHONFRAMEWORKINSTALLDIR)/$(PYTHONFRAMEWORK)
$(LN) -fsn Versions/Current/Headers $(DESTDIR)$(PYTHONFRAMEWORKINSTALLDIR)/Headers
$(LN) -fsn Versions/Current/Resources $(DESTDIR)$(PYTHONFRAMEWORKINSTALLDIR)/Resources
$(INSTALL_SHARED) $(LDLIBRARY) $(DESTDIR)$(PYTHONFRAMEWORKPREFIX)/$(LDLIBRARY)
@@ -1044,7 +1035,7 @@ frameworkinstallstructure: $(LDLIBRARY)
# Install a number of symlinks to keep software that expects a normal unix
# install (which includes python-config) happy.
frameworkinstallmaclib:
- ln -fs "../../../Python" "$(DESTDIR)$(prefix)/lib/python$(VERSION)/config/libpython$(VERSION).a"
+ ln -fs "../../../$(PYTHONFRAMEWORK)" "$(DESTDIR)$(prefix)/lib/python$(VERSION)/config/libpython$(VERSION).a"
cd Mac && $(MAKE) installmacsubtree DESTDIR="$(DESTDIR)"
# This installs the IDE, the Launcher and other apps into /Applications
diff --git a/Misc/NEWS b/Misc/NEWS
index 19b80e25f32..85152387970 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -141,6 +141,9 @@ Build
- Issue #2544: On HP-UX systems, use 'gcc -shared' for linking when
gcc is used as compiler.
+- Issue #2573: On MacOS X it is now possible to install the framework
+ with a different name using --with-framework-name=NAME.
+
C API
-----
diff --git a/configure b/configure
index 6009d888490..6c19b2c458c 100755
--- a/configure
+++ b/configure
@@ -1,5 +1,5 @@
#! /bin/sh
-# From configure.in Revision: 62451 .
+# From configure.in Revision: 62499 .
# Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.61 for python 2.6.
#
@@ -658,6 +658,7 @@ SOVERSION
CONFIG_ARGS
UNIVERSALSDK
PYTHONFRAMEWORK
+PYTHONFRAMEWORKIDENTIFIER
PYTHONFRAMEWORKDIR
PYTHONFRAMEWORKPREFIX
PYTHONFRAMEWORKINSTALLDIR
@@ -1327,6 +1328,9 @@ Optional Features:
Optional Packages:
--with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
--without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
+ --with-framework-name=FRAMEWORK
+ specify an alternate name of the framework built
+ with --enable-framework
--without-gcc never use gcc
--with-cxx-main=
compile main() and link python executable with C++
@@ -1879,6 +1883,22 @@ fi
+
+# Check whether --with-framework-name was given.
+if test "${with_framework_name+set}" = set; then
+ withval=$with_framework_name;
+ PYTHONFRAMEWORK=${withval}
+ PYTHONFRAMEWORKDIR=${withval}.framework
+ PYTHONFRAMEWORKIDENTIFIER=org.python.`echo $withval | tr 'A-Z' 'a-z'`
+
+else
+
+ PYTHONFRAMEWORK=Python
+ PYTHONFRAMEWORKDIR=Python.framework
+ PYTHONFRAMEWORKIDENTIFIER=org.python.python
+
+fi
+
# Check whether --enable-framework was given.
if test "${enable_framework+set}" = set; then
enableval=$enable_framework;
@@ -1904,8 +1924,6 @@ if test "${enable_framework+set}" = set; then
enable_framework=
;;
*)
- PYTHONFRAMEWORK=Python
- PYTHONFRAMEWORKDIR=Python.framework
PYTHONFRAMEWORKPREFIX=$enableval
PYTHONFRAMEWORKINSTALLDIR=$PYTHONFRAMEWORKPREFIX/$PYTHONFRAMEWORKDIR
FRAMEWORKINSTALLFIRST="frameworkinstallstructure"
@@ -1919,7 +1937,7 @@ if test "${enable_framework+set}" = set; then
fi
prefix=$PYTHONFRAMEWORKINSTALLDIR/Versions/$VERSION
- # Add makefiles for Mac specific code to the list of output
+ # Add files for Mac specific code to the list of output
# files:
ac_config_files="$ac_config_files Mac/Makefile"
@@ -1927,6 +1945,10 @@ if test "${enable_framework+set}" = set; then
ac_config_files="$ac_config_files Mac/IDLE/Makefile"
+ ac_config_files="$ac_config_files Mac/Resources/framework/Info.plist"
+
+ ac_config_files="$ac_config_files Mac/Resources/app/Info.plist"
+
esac
else
@@ -1958,6 +1980,7 @@ fi
+
##AC_ARG_WITH(dyld,
## AC_HELP_STRING(--with-dyld,
## Use (OpenStep|Rhapsody) dynamic linker))
@@ -24579,6 +24602,8 @@ do
"Mac/Makefile") CONFIG_FILES="$CONFIG_FILES Mac/Makefile" ;;
"Mac/PythonLauncher/Makefile") CONFIG_FILES="$CONFIG_FILES Mac/PythonLauncher/Makefile" ;;
"Mac/IDLE/Makefile") CONFIG_FILES="$CONFIG_FILES Mac/IDLE/Makefile" ;;
+ "Mac/Resources/framework/Info.plist") CONFIG_FILES="$CONFIG_FILES Mac/Resources/framework/Info.plist" ;;
+ "Mac/Resources/app/Info.plist") CONFIG_FILES="$CONFIG_FILES Mac/Resources/app/Info.plist" ;;
"Makefile.pre") CONFIG_FILES="$CONFIG_FILES Makefile.pre" ;;
"Modules/Setup.config") CONFIG_FILES="$CONFIG_FILES Modules/Setup.config" ;;
@@ -24684,6 +24709,7 @@ SOVERSION!$SOVERSION$ac_delim
CONFIG_ARGS!$CONFIG_ARGS$ac_delim
UNIVERSALSDK!$UNIVERSALSDK$ac_delim
PYTHONFRAMEWORK!$PYTHONFRAMEWORK$ac_delim
+PYTHONFRAMEWORKIDENTIFIER!$PYTHONFRAMEWORKIDENTIFIER$ac_delim
PYTHONFRAMEWORKDIR!$PYTHONFRAMEWORKDIR$ac_delim
PYTHONFRAMEWORKPREFIX!$PYTHONFRAMEWORKPREFIX$ac_delim
PYTHONFRAMEWORKINSTALLDIR!$PYTHONFRAMEWORKINSTALLDIR$ac_delim
@@ -24738,7 +24764,6 @@ LINKFORSHARED!$LINKFORSHARED$ac_delim
CFLAGSFORSHARED!$CFLAGSFORSHARED$ac_delim
SHLIBS!$SHLIBS$ac_delim
USE_SIGNAL_MODULE!$USE_SIGNAL_MODULE$ac_delim
-SIGNAL_OBJS!$SIGNAL_OBJS$ac_delim
_ACEOF
if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 97; then
@@ -24780,6 +24805,7 @@ _ACEOF
ac_delim='%!_!# '
for ac_last_try in false false false false false :; do
cat >conf$$subs.sed <<_ACEOF
+SIGNAL_OBJS!$SIGNAL_OBJS$ac_delim
USE_THREAD_MODULE!$USE_THREAD_MODULE$ac_delim
LDLAST!$LDLAST$ac_delim
THREADOBJ!$THREADOBJ$ac_delim
@@ -24801,7 +24827,7 @@ SRCDIRS!$SRCDIRS$ac_delim
LTLIBOBJS!$LTLIBOBJS$ac_delim
_ACEOF
- if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 19; then
+ if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 20; then
break
elif $ac_last_try; then
{ { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5
diff --git a/configure.in b/configure.in
index a4793aa999e..bc9a02e9611 100644
--- a/configure.in
+++ b/configure.in
@@ -83,6 +83,18 @@ AC_ARG_ENABLE(universalsdk,
])
AC_SUBST(UNIVERSALSDK)
+AC_ARG_WITH(framework-name,
+ AC_HELP_STRING(--with-framework-name=FRAMEWORK,
+ specify an alternate name of the framework built with --enable-framework),
+[
+ PYTHONFRAMEWORK=${withval}
+ PYTHONFRAMEWORKDIR=${withval}.framework
+ PYTHONFRAMEWORKIDENTIFIER=org.python.`echo $withval | tr '[A-Z]' '[a-z]'`
+ ],[
+ PYTHONFRAMEWORK=Python
+ PYTHONFRAMEWORKDIR=Python.framework
+ PYTHONFRAMEWORKIDENTIFIER=org.python.python
+])
dnl quadrigraphs "@<:@" and "@:>@" produce "[" and "]" in the output
AC_ARG_ENABLE(framework,
AC_HELP_STRING(--enable-framework@<:@=INSTALLDIR@:>@, Build (MacOSX|Darwin) framework),
@@ -109,8 +121,6 @@ AC_ARG_ENABLE(framework,
enable_framework=
;;
*)
- PYTHONFRAMEWORK=Python
- PYTHONFRAMEWORKDIR=Python.framework
PYTHONFRAMEWORKPREFIX=$enableval
PYTHONFRAMEWORKINSTALLDIR=$PYTHONFRAMEWORKPREFIX/$PYTHONFRAMEWORKDIR
FRAMEWORKINSTALLFIRST="frameworkinstallstructure"
@@ -124,11 +134,13 @@ AC_ARG_ENABLE(framework,
fi
prefix=$PYTHONFRAMEWORKINSTALLDIR/Versions/$VERSION
- # Add makefiles for Mac specific code to the list of output
+ # Add files for Mac specific code to the list of output
# files:
AC_CONFIG_FILES(Mac/Makefile)
AC_CONFIG_FILES(Mac/PythonLauncher/Makefile)
AC_CONFIG_FILES(Mac/IDLE/Makefile)
+ AC_CONFIG_FILES(Mac/Resources/framework/Info.plist)
+ AC_CONFIG_FILES(Mac/Resources/app/Info.plist)
esac
],[
PYTHONFRAMEWORK=
@@ -147,6 +159,7 @@ AC_ARG_ENABLE(framework,
enable_framework=
])
AC_SUBST(PYTHONFRAMEWORK)
+AC_SUBST(PYTHONFRAMEWORKIDENTIFIER)
AC_SUBST(PYTHONFRAMEWORKDIR)
AC_SUBST(PYTHONFRAMEWORKPREFIX)
AC_SUBST(PYTHONFRAMEWORKINSTALLDIR)