summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to '3rdParty/SCons/scons-3.0.1/engine/SCons/Tool/msvc.xml')
-rw-r--r--3rdParty/SCons/scons-3.0.1/engine/SCons/Tool/msvc.xml468
1 files changed, 468 insertions, 0 deletions
diff --git a/3rdParty/SCons/scons-3.0.1/engine/SCons/Tool/msvc.xml b/3rdParty/SCons/scons-3.0.1/engine/SCons/Tool/msvc.xml
new file mode 100644
index 0000000..1823a89
--- /dev/null
+++ b/3rdParty/SCons/scons-3.0.1/engine/SCons/Tool/msvc.xml
@@ -0,0 +1,468 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+__COPYRIGHT__
+
+This file is processed by the bin/SConsDoc.py module.
+See its __doc__ string for a discussion of the format.
+-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 http://www.scons.org/dbxsd/v1.0/scons.xsd">
+
+<tool name="msvc">
+<summary>
+<para>
+Sets construction variables for the Microsoft Visual C/C++ compiler.
+</para>
+</summary>
+<sets>
+<item>CCPDBFLAGS</item>
+<item>CCPCHFLAGS</item>
+<item><!--CCCOMFLAGS--></item>
+<item>CC</item>
+<item>CCFLAGS</item>
+<item>CFLAGS</item>
+<item>CCCOM</item>
+<item>SHCC</item>
+<item>SHCCFLAGS</item>
+<item>SHCFLAGS</item>
+<item>SHCCCOM</item>
+<item>CXX</item>
+<item>CXXFLAGS</item>
+<item>CXXCOM</item>
+<item>SHCXX</item>
+<item>SHCXXFLAGS</item>
+<item>SHCXXCOM</item>
+<item>CPPDEFPREFIX</item>
+<item>CPPDEFSUFFIX</item>
+<item>INCPREFIX</item>
+<item>INCSUFFIX</item>
+<item><!--STATIC_AND_SHARED_OBJECTS_ARE_THE_SAME--></item>
+<item>RC</item>
+<item>RCFLAGS</item>
+<item>RCCOM</item>
+<item>BUILDERS</item>
+<item>OBJPREFIX</item>
+<item>OBJSUFFIX</item>
+<item>SHOBJPREFIX</item>
+<item>SHOBJSUFFIX</item>
+<item>CFILESUFFIX</item>
+<item>CXXFILESUFFIX</item>
+<item>PCHPDBFLAGS</item>
+<item>PCHCOM</item>
+</sets>
+<uses>
+<item>CCCOMSTR</item>
+<item>SHCCCOMSTR</item>
+<item>CXXCOMSTR</item>
+<item>SHCXXCOMSTR</item>
+<item>PCH</item>
+<item>PCHSTOP</item>
+<item>PDB</item>
+</uses>
+</tool>
+
+<builder name="PCH">
+<summary>
+<para>
+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
+file as the second element. Normally the object file is ignored.
+This builder method is only
+provided when Microsoft Visual C++ is being used as the compiler.
+The PCH builder method is generally used in
+conjunction with the PCH construction variable to force object files to use
+the precompiled header:
+</para>
+
+<example_commands>
+env['PCH'] = env.PCH('StdAfx.cpp')[0]
+</example_commands>
+</summary>
+</builder>
+
+<builder name="RES">
+<summary>
+<para>
+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
+<filename>.res</filename>
+(or
+<filename>.o</filename>
+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:
+</para>
+
+<example_commands>
+env.RES('resource.rc')
+</example_commands>
+</summary>
+</builder>
+
+<cvar name="CCPCHFLAGS">
+<summary>
+<para>
+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.
+</para>
+</summary>
+</cvar>
+
+<cvar name="CCPDBFLAGS">
+<summary>
+<para>
+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.
+</para>
+
+<para>
+The Visual C++ compiler option that SCons uses by default
+to generate PDB information is <option>/Z7</option>.
+This works correctly with parallel (<option>-j</option>) builds
+because it embeds the debug information in the intermediate object files,
+as opposed to sharing a single PDB file between multiple object files.
+This is also the only way to get debug information
+embedded into a static library.
+Using the <option>/Zi</option> instead may yield improved
+link-time performance,
+although parallel builds will no longer work.
+</para>
+
+<para>
+You can generate PDB files with the <option>/Zi</option>
+switch by overriding the default &cv-link-CCPDBFLAGS; variable as follows:
+</para>
+
+<example_commands>
+env['CCPDBFLAGS'] = ['${(PDB and "/Zi /Fd%s" % File(PDB)) or ""}']
+</example_commands>
+
+<para>
+An alternative would be to use the <option>/Zi</option>
+to put the debugging information in a separate <filename>.pdb</filename>
+file for each object file by overriding
+the &cv-link-CCPDBFLAGS; variable as follows:
+</para>
+
+<example_commands>
+env['CCPDBFLAGS'] = '/Zi /Fd${TARGET}.pdb'
+</example_commands>
+</summary>
+</cvar>
+
+<cvar name="MSVC_BATCH">
+<summary>
+<para>
+When set to any true value,
+specifies that SCons should batch
+compilation of object files
+when calling the Microsoft Visual C/C++ compiler.
+All compilations of source files from the same source directory
+that generate target files in a same output directory
+and were configured in SCons using the same construction environment
+will be built in a single call to the compiler.
+Only source files that have changed since their
+object files were built will be passed to each compiler invocation
+(via the &cv-link-CHANGED_SOURCES; construction variable).
+Any compilations where the object (target) file base name
+(minus the <filename>.obj</filename>)
+does not match the source file base name
+will be compiled separately.
+</para>
+</summary>
+</cvar>
+
+<cvar name="PCH">
+<summary>
+<para>
+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
+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:
+</para>
+
+<example_commands>
+env['PCH'] = 'StdAfx.pch'
+</example_commands>
+</summary>
+</cvar>
+
+<cvar name="PCHCOM">
+<summary>
+<para>
+The command line used by the
+&b-PCH;
+builder to generated a precompiled header.
+</para>
+</summary>
+</cvar>
+
+<cvar name="PCHCOMSTR">
+<summary>
+<para>
+The string displayed when generating a precompiled header.
+If this is not set, then &cv-link-PCHCOM; (the command line) is displayed.
+</para>
+</summary>
+</cvar>
+
+<cvar name="PCHPDBFLAGS">
+<summary>
+<para>
+A construction variable that, when expanded,
+adds the <literal>/yD</literal> flag to the command line
+only if the &cv-PDB; construction variable is set.
+</para>
+</summary>
+</cvar>
+
+<cvar name="PCHSTOP">
+<summary>
+<para>
+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:
+</para>
+
+<example_commands>
+env['PCHSTOP'] = 'StdAfx.h'
+</example_commands>
+</summary>
+</cvar>
+
+<cvar name="RC">
+<summary>
+<para>
+The resource compiler used to build
+a Microsoft Visual C++ resource file.
+</para>
+</summary>
+</cvar>
+
+<cvar name="RCCOM">
+<summary>
+<para>
+The command line used to build
+a Microsoft Visual C++ resource file.
+</para>
+</summary>
+</cvar>
+
+<cvar name="RCCOMSTR">
+<summary>
+<para>
+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.
+</para>
+</summary>
+</cvar>
+
+<cvar name="RCFLAGS">
+<summary>
+<para>
+The flags passed to the resource compiler by the RES builder.
+</para>
+</summary>
+</cvar>
+
+<cvar name="RCINCFLAGS">
+<summary>
+<para>
+An automatically-generated construction variable
+containing the command-line options
+for specifying directories to be searched
+by the resource compiler.
+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;.
+</para>
+</summary>
+</cvar>
+
+<cvar name="RCINCPREFIX">
+<summary>
+<para>
+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.
+</para>
+</summary>
+</cvar>
+
+<cvar name="RCINCSUFFIX">
+<summary>
+<para>
+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.
+</para>
+</summary>
+</cvar>
+
+<cvar name="MSVC_VERSION">
+<summary>
+<para>
+Sets the preferred version of Microsoft Visual C/C++ to use.
+</para>
+
+<para>
+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.
+</para>
+
+<para>
+Valid values for Windows are
+<literal>14.0</literal>,
+<literal>14.0Exp</literal>,
+<literal>12.0</literal>,
+<literal>12.0Exp</literal>,
+<literal>11.0</literal>,
+<literal>11.0Exp</literal>,
+<literal>10.0</literal>,
+<literal>10.0Exp</literal>,
+<literal>9.0</literal>,
+<literal>9.0Exp</literal>,
+<literal>8.0</literal>,
+<literal>8.0Exp</literal>,
+<literal>7.1</literal>,
+<literal>7.0</literal>,
+and <literal>6.0</literal>.
+Versions ending in <literal>Exp</literal> refer to "Express" or
+"Express for Desktop" editions.
+</para>
+
+</summary>
+</cvar>
+
+<cvar name="MSVC_USE_SCRIPT">
+<summary>
+<para>
+Use a batch script to set up Microsoft Visual Studio compiler
+</para>
+
+<para>
+&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
+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.
+</para>
+</summary>
+</cvar>
+
+<cvar name="HOST_ARCH">
+<summary>
+<para>
+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.
+</para>
+
+<para>
+Valid values are the same as for &cv-TARGET_ARCH;.
+</para>
+
+<para>
+This is currently only used on Windows, but in the future it will be
+used on other OSes as well.
+</para>
+</summary>
+</cvar>
+<cvar name="TARGET_ARCH">
+<summary>
+<para>
+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
+running machine's OS (note that the python build or architecture has no
+effect).
+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.
+</para>
+
+<para>
+Valid values for Windows are
+<literal>x86</literal>,
+<literal>i386</literal>
+(for 32 bits);
+<literal>amd64</literal>,
+<literal>emt64</literal>,
+<literal>x86_64</literal>
+(for 64 bits);
+and <literal>ia64</literal> (Itanium).
+For example, if you want to compile 64-bit binaries, you would set
+<literal>TARGET_ARCH='x86_64'</literal> in your SCons environment.
+</para>
+</summary>
+</cvar>
+
+<cvar name="MSVC_UWP_APP">
+<summary>
+<para>
+Build libraries for a Universal Windows Platform (UWP) Application.
+</para>
+
+<para>
+If &cv-MSVC_UWP_APP; is set, the Visual Studio environment will be set up to point
+to the Windows Store compatible libraries and Visual Studio runtimes. In doing so,
+any libraries that are built will be able to be used in a UWP App and published
+to the Windows Store.
+This flag will only have an effect with Visual Studio 2015+.
+This variable must be passed as an argument to the Environment()
+constructor; setting it later has no effect.
+</para>
+
+<para>
+Valid values are '1' or '0'
+</para>
+
+</summary>
+</cvar>
+
+</sconsdoc>