mirror of
https://github.com/python/cpython.git
synced 2025-08-04 17:08:35 +00:00
Issue #21811: Anticipated fixes to 3.x and 2.7 for OS X 10.10 Yosemite.
This commit is contained in:
commit
ce38f24af8
6 changed files with 40 additions and 18 deletions
|
@ -450,8 +450,16 @@ def get_platform_osx(_config_vars, osname, release, machine):
|
|||
# case and disallow installs.
|
||||
cflags = _config_vars.get(_INITPRE+'CFLAGS',
|
||||
_config_vars.get('CFLAGS', ''))
|
||||
if ((macrelease + '.') >= '10.4.' and
|
||||
'-arch' in cflags.strip()):
|
||||
if macrelease:
|
||||
try:
|
||||
macrelease = tuple(int(i) for i in macrelease.split('.')[0:2])
|
||||
except ValueError:
|
||||
macrelease = (10, 0)
|
||||
else:
|
||||
# assume no universal support
|
||||
macrelease = (10, 0)
|
||||
|
||||
if (macrelease >= (10, 4)) and '-arch' in cflags.strip():
|
||||
# The universal build will build fat binaries, but not on
|
||||
# systems before 10.4
|
||||
|
||||
|
|
|
@ -444,8 +444,16 @@ class BuildExtTestCase(TempdirManager,
|
|||
|
||||
# get the deployment target that the interpreter was built with
|
||||
target = sysconfig.get_config_var('MACOSX_DEPLOYMENT_TARGET')
|
||||
target = tuple(map(int, target.split('.')))
|
||||
target = '%02d%01d0' % target
|
||||
target = tuple(map(int, target.split('.')[0:2]))
|
||||
# format the target value as defined in the Apple
|
||||
# Availability Macros. We can't use the macro names since
|
||||
# at least one value we test with will not exist yet.
|
||||
if target[1] < 10:
|
||||
# for 10.1 through 10.9.x -> "10n0"
|
||||
target = '%02d%01d0' % target
|
||||
else:
|
||||
# for 10.10 and beyond -> "10nn00"
|
||||
target = '%02d%02d00' % target
|
||||
deptarget_ext = Extension(
|
||||
'deptarget',
|
||||
[deptarget_c],
|
||||
|
|
|
@ -109,7 +109,9 @@ class Test_OSXSupport(unittest.TestCase):
|
|||
|
||||
def test__supports_universal_builds(self):
|
||||
import platform
|
||||
self.assertEqual(platform.mac_ver()[0].split('.') >= ['10', '4'],
|
||||
mac_ver_tuple = tuple(int(i) for i in
|
||||
platform.mac_ver()[0].split('.')[0:2])
|
||||
self.assertEqual(mac_ver_tuple >= (10, 4),
|
||||
_osx_support._supports_universal_builds())
|
||||
|
||||
def test__find_appropriate_compiler(self):
|
||||
|
|
|
@ -768,7 +768,7 @@ class PosixTester(unittest.TestCase):
|
|||
if sys.platform == 'darwin':
|
||||
import sysconfig
|
||||
dt = sysconfig.get_config_var('MACOSX_DEPLOYMENT_TARGET') or '10.0'
|
||||
if float(dt) < 10.6:
|
||||
if tuple(int(n) for n in dt.split('.')[0:2]) < (10, 6):
|
||||
raise unittest.SkipTest("getgroups(2) is broken prior to 10.6")
|
||||
|
||||
# 'id -G' and 'os.getgroups()' should return the same
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue