Introduce DISTUTILS_USE_SDK as a flag to determine whether the

SDK environment should be used. Fixes #1508010.
This commit is contained in:
Martin v. Löwis 2006-07-10 07:23:48 +00:00
parent 56640df6c3
commit 8d65681e94
3 changed files with 19 additions and 4 deletions

17
Doc/dist/dist.tex vendored
View File

@ -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}

View File

@ -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"

View File

@ -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