From 140d836e9cd54fb67b969fd82ef7ed19ba574d40 Mon Sep 17 00:00:00 2001 From: Luca Falavigna Date: Sat, 26 Apr 2014 15:11:58 +0200 Subject: Imported Upstream version 2.3.1 --- src/engine/SCons/Tool/msvc.xml | 189 +++++++++++++++++++++++++++++------------ 1 file changed, 135 insertions(+), 54 deletions(-) (limited to 'src/engine/SCons/Tool/msvc.xml') diff --git a/src/engine/SCons/Tool/msvc.xml b/src/engine/SCons/Tool/msvc.xml index f03ce9d..d614fd0 100644 --- a/src/engine/SCons/Tool/msvc.xml +++ b/src/engine/SCons/Tool/msvc.xml @@ -1,62 +1,84 @@ + + + +%scons; + +%builders-mod; + +%functions-mod; + +%tools-mod; + +%variables-mod; +]> + + + + Sets construction variables for the Microsoft Visual C/C++ compiler. + -CCPDBFLAGS -CCPCHFLAGS - -CC -CCFLAGS -CFLAGS -CCCOM -SHCC -SHCCFLAGS -SHCFLAGS -SHCCCOM -CXX -CXXFLAGS -CXXCOM -SHCXX -SHCXXFLAGS -SHCXXCOM -CPPDEFPREFIX -CPPDEFSUFFIX -INCPREFIX -INCSUFFIX - -RC -RCFLAGS -RCCOM -BUILDERS -OBJPREFIX -OBJSUFFIX -SHOBJPREFIX -SHOBJSUFFIX -CFILESUFFIX -CXXFILESUFFIX -PCHPDBFLAGS -PCHCOM +CCPDBFLAGS +CCPCHFLAGS + +CC +CCFLAGS +CFLAGS +CCCOM +SHCC +SHCCFLAGS +SHCFLAGS +SHCCCOM +CXX +CXXFLAGS +CXXCOM +SHCXX +SHCXXFLAGS +SHCXXCOM +CPPDEFPREFIX +CPPDEFSUFFIX +INCPREFIX +INCSUFFIX + +RC +RCFLAGS +RCCOM +BUILDERS +OBJPREFIX +OBJSUFFIX +SHOBJPREFIX +SHOBJSUFFIX +CFILESUFFIX +CXXFILESUFFIX +PCHPDBFLAGS +PCHCOM -CCCOMSTR -SHCCCOMSTR -CXXCOMSTR -SHCXXCOMSTR -PCH -PCHSTOP -PDB +CCCOMSTR +SHCCCOMSTR +CXXCOMSTR +SHCXXCOMSTR +PCH +PCHSTOP +PDB + Builds a Microsoft Visual C++ precompiled header. Calling this builder method returns a list of two targets: the PCH as the first element, and the object @@ -66,15 +88,17 @@ provided when Microsoft Visual C++ is being used as the compiler. The PCH builder method is generally used in conjuction with the PCH construction variable to force object files to use the precompiled header: + - + env['PCH'] = env.PCH('StdAfx.cpp')[0] - + + Builds a Microsoft Visual C++ resource file. This builder method is only provided when Microsoft Visual C++ or MinGW is being used as the compiler. The @@ -85,32 +109,38 @@ for MinGW) suffix is added to the target name if no other suffix is given. The source file is scanned for implicit dependencies as though it were a C file. Example: + - + env.RES('resource.rc') - + + Options added to the compiler command line to support building with precompiled headers. The default value expands expands to the appropriate Microsoft Visual C++ command-line options when the &cv-link-PCH; construction variable is set. + + Options added to the compiler command line to support storing debugging information in a Microsoft Visual C++ PDB file. The default value expands expands to appropriate Microsoft Visual C++ command-line options when the &cv-link-PDB; construction variable is set. + + The Visual C++ compiler option that SCons uses by default to generate PDB information is . This works correctly with parallel () builds @@ -121,27 +151,33 @@ embedded into a static library. Using the instead may yield improved link-time performance, although parallel builds will no longer work. + + You can generate PDB files with the switch by overriding the default &cv-link-CCPDBFLAGS; variable as follows: + - + env['CCPDBFLAGS'] = ['${(PDB and "/Zi /Fd%s" % File(PDB)) or ""}'] - + + An alternative would be to use the to put the debugging information in a separate .pdb file for each object file by overriding the &cv-link-CCPDBFLAGS; variable as follows: + - + env['CCPDBFLAGS'] = '/Zi /Fd${TARGET}.pdb' - + + When set to any true value, specifies that SCons should batch compilation of object files @@ -157,11 +193,13 @@ Any compilations where the object (target) file base name (minus the .obj) does not match the source file base name will be compiled separately. + + The Microsoft Visual C++ precompiled header that will be used when compiling object files. This variable is ignored by tools other than Microsoft Visual C++. When this variable is @@ -169,81 +207,99 @@ defined SCons will add options to the compiler command line to cause it to use the precompiled header, and will also set up the dependencies for the PCH file. Example: + - + env['PCH'] = 'StdAfx.pch' - + + The command line used by the &b-PCH; builder to generated a precompiled header. + + The string displayed when generating a precompiled header. If this is not set, then &cv-link-PCHCOM; (the command line) is displayed. + + A construction variable that, when expanded, adds the /yD flag to the command line only if the &cv-PDB; construction variable is set. + + This variable specifies how much of a source file is precompiled. This variable is ignored by tools other than Microsoft Visual C++, or when the PCH variable is not being used. When this variable is define it must be a string that is the name of the header that is included at the end of the precompiled portion of the source files, or the empty string if the "#pragma hrdstop" construct is being used: + - + env['PCHSTOP'] = 'StdAfx.h' - + + The resource compiler used to build a Microsoft Visual C++ resource file. + + The command line used to build a Microsoft Visual C++ resource file. + + The string displayed when invoking the resource compiler to build a Microsoft Visual C++ resource file. If this is not set, then &cv-link-RCCOM; (the command line) is displayed. + + The flags passed to the resource compiler by the RES builder. + + An automatically-generated construction variable containing the command-line options for specifying directories to be searched @@ -252,46 +308,58 @@ The value of &cv-RCINCFLAGS; is created by appending &cv-RCINCPREFIX; and &cv-RCINCSUFFIX; to the beginning and end of each directory in &cv-CPPPATH;. + + The prefix (flag) used to specify an include directory on the resource compiler command line. This will be appended to the beginning of each directory in the &cv-CPPPATH; construction variable when the &cv-RCINCFLAGS; variable is expanded. + + The suffix used to specify an include directory on the resource compiler command line. This will be appended to the end of each directory in the &cv-CPPPATH; construction variable when the &cv-RCINCFLAGS; variable is expanded. + + Sets the preferred version of Microsoft Visual C/C++ to use. + + If &cv-MSVC_VERSION; is not set, SCons will (by default) select the latest version of Visual C/C++ installed on your system. If the specified version isn't installed, tool initialization will fail. This variable must be passed as an argument to the Environment() constructor; setting it later has no effect. Set it to an unexpected value (e.g. "XXX") to see the valid values on your system. + + Use a batch script to set up Microsoft Visual Studio compiler + + &cv-MSVC_USE_SCRIPT; overrides &cv-MSVC_VERSION; and &cv-TARGET_ARCH;. If set to the name of a Visual Studio .bat file (e.g. vcvars.bat), SCons will run that bat file and extract the relevant variables from @@ -299,25 +367,33 @@ the result (typically %INCLUDE%, %LIB%, and %PATH%). Setting MSVC_USE_SCRIPT to None bypasses the Visual Studio autodetection entirely; use this if you are running SCons in a Visual Studio cmd window and importing the shell's environment variables. + + Sets the host architecture for Visual Studio compiler. If not set, default to the detected host architecture: note that this may depend on the python you are using. This variable must be passed as an argument to the Environment() constructor; setting it later has no effect. + + Valid values are the same as for &cv-TARGET_ARCH;. + + This is currently only used on Windows, but in the future it will be used on other OSes as well. + + Sets the target architecture for Visual Studio compiler (i.e. the arch of the binaries generated by the compiler). If not set, default to &cv-HOST_ARCH;, or, if that is unset, to the architecture of the @@ -327,7 +403,9 @@ This variable must be passed as an argument to the Environment() constructor; setting it later has no effect. This is currently only used on Windows, but in the future it will be used on other OSes as well. + + Valid values for Windows are x86, i386 @@ -339,5 +417,8 @@ Valid values for Windows are and ia64 (Itanium). For example, if you want to compile 64-bit binaries, you would set TARGET_ARCH='x86_64' in your SCons environment. + + + \ No newline at end of file -- cgit v1.2.3