summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJacob Kaplan-Moss <jacob@jacobian.org>2008-07-21 16:30:32 +0000
committerJacob Kaplan-Moss <jacob@jacobian.org>2008-07-21 16:30:32 +0000
commitf28474547be843055474f0ecd05850eaed3c6d3a (patch)
treecc41cd27e183382af556412bb8cdac8c2c4fab73
parent4f1cbaa93e2684f900fb350267a6092ea8c2bd95 (diff)
Fixed #7414: fixed setup.py on OSX 10.5. Thanks, ajs.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@8019 bcc190cf-cafb-0310-a4f2-bffc1f526a37
-rw-r--r--AUTHORS1
-rw-r--r--setup.py20
2 files changed, 21 insertions, 0 deletions
diff --git a/AUTHORS b/AUTHORS
index d7945d4a1a..d085663500 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -41,6 +41,7 @@ And here is an inevitably incomplete list of MUCH-APPRECIATED CONTRIBUTORS --
people who have submitted patches, reported bugs, added translations, helped
answer newbie questions, and generally made Django that much better:
+ ajs <adi@sieker.info>
alang@bright-green.com
Marty Alchin <gulopine@gamemusic.org>
atlithorn <atlithorn@gmail.com>
diff --git a/setup.py b/setup.py
index 081cdb4c4b..7ba036b56e 100644
--- a/setup.py
+++ b/setup.py
@@ -1,8 +1,27 @@
from distutils.core import setup
+from distutils.command.install_data import install_data
from distutils.command.install import INSTALL_SCHEMES
import os
import sys
+class osx_install_data(install_data):
+ # On MacOS the plattform specific lib dir is /System/Library/Framework/Python/.../
+ # which is wrong. Python 2.5 supplied with MacOS 10.5 has an Aplle specific fix
+ # for this in distutils.command.install_data#306 It fixes install_lib but not
+ # install_data, which is why we roll our own install_data class.
+
+ def finalize_options (self):
+ # By the time finalize_options is called install.install_lib is set to the
+ # fixed directory. so we set the installdir for to install_lib, the
+ # install_data class uses ('install_data', 'install_dir') instead.
+ self.set_undefined_options('install', ('install_lib', 'install_dir'))
+ install_data.finalize_options(self)
+
+if sys.platform == "darwin":
+ cmdclasses = {'install_data': osx_install_data }
+else:
+ cmdclasses = {'install_data': install_data }
+
def fullsplit(path, result=None):
"""
Split a pathname into components (the opposite of os.path.join) in a
@@ -55,6 +74,7 @@ setup(
author_email = 'foundation@djangoproject.com',
description = 'A high-level Python Web framework that encourages rapid development and clean, pragmatic design.',
packages = packages,
+ cmdclass = cmdclasses,
data_files = data_files,
scripts = ['django/bin/django-admin.py'],
)