diff -urNP -x '*.pyc' -x '*.pyo' python2.5/distutils/command/install.py /System/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/distutils/command/install.py --- python2.5/distutils/command/install.py 2009-01-07 11:11:59.000000000 +0000 +++ /System/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/distutils/command/install.py 2009-01-07 12:17:18.000000000 +0000 @@ -12,7 +12,7 @@ from types import * from distutils.core import Command from distutils.debug import DEBUG -from distutils.sysconfig import get_config_vars +from distutils.sysconfig import get_config_vars, get_config_var from distutils.errors import DistutilsPlatformError from distutils.file_util import write_file from distutils.util import convert_path, subst_vars, change_root @@ -301,6 +301,16 @@ self.dump_dirs("post-expand_dirs()") + if sys.platform == "darwin": + sitepkg = os.path.join(sys.prefix, 'lib', 'python' + sys.version[:3], 'site-packages') + libpy = os.path.join('/Library/Python', sys.version[:3], 'site-packages') + if self.install_platlib == sitepkg: + self.install_platlib = libpy + if self.install_purelib == sitepkg: + self.install_purelib = libpy + if self.install_scripts == os.path.join(sys.prefix, 'bin'): + self.install_scripts = get_config_var('BINDIR') + # Pick the actual directory to install all modules to: either # install_purelib or install_platlib, depending on whether this # module distribution is pure or not. Of course, if the user diff -urNP -x '*.pyc' -x '*.pyo' python2.5/distutils/sysconfig.py /System/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/distutils/sysconfig.py --- python2.5/distutils/sysconfig.py 2009-01-07 11:11:59.000000000 +0000 +++ /System/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/distutils/sysconfig.py 2009-01-07 12:17:18.000000000 +0000 @@ -104,7 +104,10 @@ if standard_lib: return libpython else: - return os.path.join(libpython, "site-packages") + if sys.platform == "darwin": + return os.path.join("/Library/Python", get_python_version(), "site-packages") + else: + return os.path.join(libpython, "site-packages") elif os.name == "nt": if standard_lib: diff -urNP -x '*.pyc' -x '*.pyo' python2.5/plat-mac/bundlebuilder.py /System/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/plat-mac/bundlebuilder.py --- python2.5/plat-mac/bundlebuilder.py 2009-01-07 11:11:59.000000000 +0000 +++ /System/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/plat-mac/bundlebuilder.py 2009-01-07 12:17:20.000000000 +0000 @@ -342,7 +342,7 @@ LIB = os.path.join(sys.prefix, "lib", "python" + sys.version[:3]) -SITE_PACKAGES = os.path.join(LIB, "site-packages") +SITE_PACKAGES = os.path.join("/Library/Python", sys.version[:3], "site-packages") class AppBuilder(BundleBuilder): @@ -648,7 +648,7 @@ path = mod.__file__ if path and self.semi_standalone: # skip the standard library - if path.startswith(LIB) and not path.startswith(SITE_PACKAGES): + if path.startswith(LIB): continue if path and mod.__code__ is None: # C extension diff -urNP -x '*.pyc' -x '*.pyo' python2.5/site.py /System/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/site.py --- python2.5/site.py 2009-01-07 11:11:53.000000000 +0000 +++ /System/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5/site.py 2009-01-07 12:17:27.000000000 +0000 @@ -180,6 +180,8 @@ if prefix: if sys.platform in ('os2emx', 'riscos'): sitedirs = [os.path.join(prefix, "Lib", "site-packages")] + elif sys.platform == 'darwin' and prefix == sys.prefix: + sitedirs = [os.path.join("/Library/Python", sys.version[:3], "site-packages"), os.path.join(sys.prefix, "Extras", "lib", "python")] elif os.sep == '/': sitedirs = [os.path.join(prefix, "lib",