summaryrefslogtreecommitdiffstats
path: root/Lib/distutils/util.py
diff options
context:
space:
mode:
authorRonald Oussoren <ronaldoussoren@mac.com>2009-12-24 13:16:53 (GMT)
committerRonald Oussoren <ronaldoussoren@mac.com>2009-12-24 13:16:53 (GMT)
commit38ce3de0f466e3537efe316ebe31a7769187bbc3 (patch)
tree8f488938f4b056a3f8e484853397ad89fa808102 /Lib/distutils/util.py
parentbbea7dc404e61643a9592626cb8345ddc03665fc (diff)
downloadcpython-38ce3de0f466e3537efe316ebe31a7769187bbc3.zip
cpython-38ce3de0f466e3537efe316ebe31a7769187bbc3.tar.gz
cpython-38ce3de0f466e3537efe316ebe31a7769187bbc3.tar.bz2
Merged revisions 77028 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k ................ r77028 | ronald.oussoren | 2009-12-24 14:14:21 +0100 (Thu, 24 Dec 2009) | 15 lines Merged revisions 77026 via svnmerge from svn+ssh://pythondev@svn.python.org/python/trunk ........ r77026 | ronald.oussoren | 2009-12-24 14:06:39 +0100 (Thu, 24 Dec 2009) | 8 lines On OSX the output of "uname -m" always reflects the 32-bit architecture for the machine ("i386" or "ppc"), even if the executable is 64-bit. This patchs ensures that the distutils platform architecture represents the architecture for the executable when running a 64-bit only executable on OSX. ........ ................
Diffstat (limited to 'Lib/distutils/util.py')
-rw-r--r--Lib/distutils/util.py10
1 files changed, 10 insertions, 0 deletions
diff --git a/Lib/distutils/util.py b/Lib/distutils/util.py
index 50ad8fe..9a77561 100644
--- a/Lib/distutils/util.py
+++ b/Lib/distutils/util.py
@@ -162,11 +162,21 @@ def get_platform ():
raise ValueError(
"Don't know machine value for archs=%r"%(archs,))
+ elif machine == 'i386':
+ # On OSX the machine type returned by uname is always the
+ # 32-bit variant, even if the executable architecture is
+ # the 64-bit variant
+ if sys.maxsize >= 2**32:
+ machine = 'x86_64'
elif machine in ('PowerPC', 'Power_Macintosh'):
# Pick a sane name for the PPC architecture.
machine = 'ppc'
+ # See 'i386' case
+ if sys.maxsize >= 2**32:
+ machine = 'ppc64'
+
return "%s-%s-%s" % (osname, release, machine)
# get_platform ()