]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
Merged revisions 82130 via svnmerge from
authorBenjamin Peterson <benjamin@python.org>
Mon, 21 Jun 2010 15:39:28 +0000 (15:39 +0000)
committerBenjamin Peterson <benjamin@python.org>
Mon, 21 Jun 2010 15:39:28 +0000 (15:39 +0000)
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r82130 | benjamin.peterson | 2010-06-21 10:27:46 -0500 (Mon, 21 Jun 2010) | 1 line

  fix finding visual studio 2008 on 64 bit #8854
........

Lib/distutils/msvc9compiler.py
Misc/NEWS

index 9bf54c102d34870f25d4a50b14fa156b61a8c316..9fe8c744cb99c15778ddf019392eecad7cc66a7d 100644 (file)
@@ -37,9 +37,18 @@ HKEYS = (_winreg.HKEY_USERS,
          _winreg.HKEY_LOCAL_MACHINE,
          _winreg.HKEY_CLASSES_ROOT)
 
-VS_BASE = r"Software\Microsoft\VisualStudio\%0.1f"
-WINSDK_BASE = r"Software\Microsoft\Microsoft SDKs\Windows"
-NET_BASE = r"Software\Microsoft\.NETFramework"
+NATIVE_WIN64 = (sys.platform == 'win32' and sys.maxsize > 2**32)
+if NATIVE_WIN64:
+    # Visual C++ is a 32-bit application, so we need to look in
+    # the corresponding registry branch, if we're running a
+    # 64-bit Python on Win64
+    VS_BASE = r"Software\Wow6432Node\Microsoft\VisualStudio\%0.1f"
+    WINSDK_BASE = r"Software\Wow6432Node\Microsoft\Microsoft SDKs\Windows"
+    NET_BASE = r"Software\Wow6432Node\Microsoft\.NETFramework"
+else:
+    VS_BASE = r"Software\Microsoft\VisualStudio\%0.1f"
+    WINSDK_BASE = r"Software\Microsoft\Microsoft SDKs\Windows"
+    NET_BASE = r"Software\Microsoft\.NETFramework"
 
 # A map keyed by get_platform() return values to values accepted by
 # 'vcvarsall.bat'.  Note a cross-compile may combine these (eg, 'x86_amd64' is
index d0e8d4b733d011dc3c1cd6d95a2457a06762539b..e8eab869ce0ae56f18020f80fff98d511110f4d3 100644 (file)
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -270,6 +270,8 @@ Extension Modules
 Build
 -----
 
+- Issue #8854: Fix finding Visual Studio 2008 on Windows x64.
+
 - Issue #3928: os.mknod() now available in Solaris, also.
 
 - Issue #8175: --with-universal-archs=all works correctly on OSX 10.5