]> granicus.if.org Git - python/commitdiff
bpo-30342: Fix sysconfig.is_python_build() on VS9.0 (#1544)
authorVictor Stinner <victor.stinner@gmail.com>
Fri, 12 May 2017 09:31:08 +0000 (11:31 +0200)
committerGitHub <noreply@github.com>
Fri, 12 May 2017 09:31:08 +0000 (11:31 +0200)
Fix sysconfig.is_python_build() if Python is built with Visual Studio
2008 (VS 9.0).

Lib/sysconfig.py
Lib/test/test_regrtest.py
Misc/NEWS

index 2a1da5a03b19d148a8040a989cc1677ab9468c3f..9c8350d953db34436197e03e4187750f9ab521c6 100644 (file)
@@ -112,6 +112,11 @@ if os.name == "nt" and "pcbuild" in _PROJECT_BASE[-8:].lower():
 # PC/VS7.1
 if os.name == "nt" and "\\pc\\v" in _PROJECT_BASE[-10:].lower():
     _PROJECT_BASE = _safe_realpath(os.path.join(_PROJECT_BASE, pardir, pardir))
+# PC/VS9.0/amd64
+if (os.name == "nt"
+   and os.path.basename(os.path.dirname(os.path.dirname(_PROJECT_BASE))).lower() == "pc"
+   and os.path.basename(os.path.dirname(_PROJECT_BASE)).lower() == "vs9.0"):
+    _PROJECT_BASE = _safe_realpath(os.path.join(_PROJECT_BASE, pardir, pardir, pardir))
 # PC/AMD64
 if os.name == "nt" and "\\pcbuild\\amd64" in _PROJECT_BASE[-14:].lower():
     _PROJECT_BASE = _safe_realpath(os.path.join(_PROJECT_BASE, pardir, pardir))
index fa23220ade788537c77aaf904f12c2d23f0692fd..2001c8ef7f58431a27008a56ee95d4794216dc68 100644 (file)
@@ -267,6 +267,8 @@ class ProgramsTestCase(BaseTestCase):
             self.skipTest("Tools/buildbot/test.bat requires PCbuild build, "
                           "found %s" % build_dir)
 
+    @unittest.skipUnless(sysconfig.is_python_build(),
+                         'test.bat script is not installed')
     @unittest.skipUnless(sys.platform == 'win32', 'Windows only')
     def test_tools_buildbot_test(self):
         self.need_pcbuild()
index b52ffc793f5ace182cb678f963b731961bf4b8cd..4c9f2d375e8911dc10c797257be4a48b623f5bd4 100644 (file)
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -42,6 +42,9 @@ Extension Modules
 Library
 -------
 
+- bpo-30342: Fix sysconfig.is_python_build() if Python is built with Visual
+  Studio 2008 (VS 9.0).
+
 - bpo-29990: Fix range checking in GB18030 decoder.  Original patch by Ma Lin.
 
 - bpo-30243: Removed the __init__ methods of _json's scanner and encoder.