diff options
author | Barry Warsaw <barry@python.org> | 2013-11-21 23:57:14 (GMT) |
---|---|---|
committer | Barry Warsaw <barry@python.org> | 2013-11-21 23:57:14 (GMT) |
commit | 197a7702310e6a6cf67b658c66dd3b43ee12439b (patch) | |
tree | 750625effd3962e3eb49b27a4cb94d28b719a759 /Lib | |
parent | 18fc7be80d77f68a0e7ab54e6c222a4b7a3bc774 (diff) | |
download | cpython-197a7702310e6a6cf67b658c66dd3b43ee12439b.zip cpython-197a7702310e6a6cf67b658c66dd3b43ee12439b.tar.gz cpython-197a7702310e6a6cf67b658c66dd3b43ee12439b.tar.bz2 |
- Issue #19555: Restore sysconfig.get_config_var('SO'), with a
DeprecationWarning pointing people at $EXT_SUFFIX.
Diffstat (limited to 'Lib')
-rw-r--r-- | Lib/sysconfig.py | 7 | ||||
-rw-r--r-- | Lib/test/test_sysconfig.py | 19 |
2 files changed, 26 insertions, 0 deletions
diff --git a/Lib/sysconfig.py b/Lib/sysconfig.py index 776b2f6..c4f7cab 100644 --- a/Lib/sysconfig.py +++ b/Lib/sysconfig.py @@ -409,6 +409,10 @@ def _init_posix(vars): # _sysconfigdata is generated at build time, see _generate_posix_vars() from _sysconfigdata import build_time_vars vars.update(build_time_vars) + # For backward compatibility, see issue19555 + SO = build_time_vars.get('EXT_SUFFIX') + if SO is not None: + vars['SO'] = SO def _init_non_posix(vars): """Initialize the module as appropriate for NT""" @@ -579,6 +583,9 @@ def get_config_var(name): Equivalent to get_config_vars().get(name) """ + if name == 'SO': + import warnings + warnings.warn('SO is deprecated, use EXT_SUFFIX', DeprecationWarning) return get_config_vars().get(name) diff --git a/Lib/test/test_sysconfig.py b/Lib/test/test_sysconfig.py index 2968604..5bc3f32 100644 --- a/Lib/test/test_sysconfig.py +++ b/Lib/test/test_sysconfig.py @@ -369,6 +369,25 @@ class TestSysConfig(unittest.TestCase): os.chdir(cwd) self.assertEqual(srcdir, srcdir2) + @unittest.skipIf(sysconfig.get_config_var('EXT_SUFFIX') is None, + 'EXT_SUFFIX required for this test') + def test_SO_deprecation(self): + self.assertWarns(DeprecationWarning, + sysconfig.get_config_var, 'SO') + + @unittest.skipIf(sysconfig.get_config_var('EXT_SUFFIX') is None, + 'EXT_SUFFIX required for this test') + def test_SO_value(self): + self.assertEqual(sysconfig.get_config_var('SO'), + sysconfig.get_config_var('EXT_SUFFIX')) + + @unittest.skipIf(sysconfig.get_config_var('EXT_SUFFIX') is None, + 'EXT_SUFFIX required for this test') + def test_SO_in_vars(self): + vars = sysconfig.get_config_vars() + self.assertIsNotNone(vars['SO']) + self.assertEqual(vars['SO'], vars['EXT_SUFFIX']) + class MakefileTests(unittest.TestCase): |