diff options
author | Martin v. Löwis <martin@v.loewis.de> | 2006-07-10 07:23:48 (GMT) |
---|---|---|
committer | Martin v. Löwis <martin@v.loewis.de> | 2006-07-10 07:23:48 (GMT) |
commit | 8d65681e947e7c95173e0944ec6ea0277e66d591 (patch) | |
tree | e9ada477249a5f7ede9f701719937c45d22f43e7 | |
parent | 56640df6c3dfd7e7a0a36789e17fc2cf88602ad4 (diff) | |
download | cpython-8d65681e947e7c95173e0944ec6ea0277e66d591.zip cpython-8d65681e947e7c95173e0944ec6ea0277e66d591.tar.gz cpython-8d65681e947e7c95173e0944ec6ea0277e66d591.tar.bz2 |
Introduce DISTUTILS_USE_SDK as a flag to determine whether the
SDK environment should be used. Fixes #1508010.
-rw-r--r-- | Doc/dist/dist.tex | 17 | ||||
-rw-r--r-- | Lib/distutils/msvccompiler.py | 2 | ||||
-rw-r--r-- | Misc/NEWS | 4 |
3 files changed, 19 insertions, 4 deletions
diff --git a/Doc/dist/dist.tex b/Doc/dist/dist.tex index e95c0d3..6f1d8bc 100644 --- a/Doc/dist/dist.tex +++ b/Doc/dist/dist.tex @@ -2873,9 +2873,20 @@ C compiler: \modulesynopsis{Microsoft Compiler} This module provides \class{MSVCCompiler}, an implementation of the abstract -\class{CCompiler} class for Microsoft Visual Studio. It should also work using -the freely available compiler provided as part of the .Net SDK download. XXX -download link. +\class{CCompiler} class for Microsoft Visual Studio. Typically, extension +modules need to be compiled with the same compiler that was used to compile +Python. For Python 2.3 and earlier, the compiler was Visual Studio 6. For +Python 2.4 and 2.5, the compiler is Visual Studio .NET 2003. The AMD64 +and Itanium binaries are created using the Platform SDK. + +\class{MSVCCompiler} will normally choose the right compiler, linker etc. +on its own. To override this choice, the environment variables +\var{DISTUTILS\_USE\_SDK} and \var{MSSdk} must be both set. \var{MSSdk} +indicates that the current environment has been setup by the SDK's +\code{SetEnv.Cmd} script, or that the environment variables had been +registered when the SDK was installed; \var{DISTUTILS\_USE\_SDK} indicates +that the distutils user has made an explicit choice to override the +compiler selection by \class{MSVCCompiler}. \section{\module{distutils.bcppcompiler} --- Borland Compiler} \declaremodule{standard}{distutils.bcppcompiler} diff --git a/Lib/distutils/msvccompiler.py b/Lib/distutils/msvccompiler.py index d24d0ac..d725905 100644 --- a/Lib/distutils/msvccompiler.py +++ b/Lib/distutils/msvccompiler.py @@ -237,7 +237,7 @@ class MSVCCompiler (CCompiler) : def initialize(self): self.__paths = [] - if os.environ.has_key("MSSdk") and self.find_exe("cl.exe"): + if os.environ.has_key("DISTUTILS_USE_SDK") and os.environ.has_key("MSSdk") and self.find_exe("cl.exe"): # Assume that the SDK set up everything alright; don't try to be # smarter self.cc = "cl.exe" @@ -39,6 +39,10 @@ Core and builtins Library ------- +- Bug #1508010: msvccompiler now requires the DISTUTILS_USE_SDK + environment variable to be set in order to the SDK environment + for finding the compiler, include files, etc. + - Bug #1515998: Properly generate logical ids for files in bdist_msi. - warnings.py now ignores ImportWarning by default |