summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoseph Brill <48932340+jcbrill@users.noreply.github.com>2022-06-23 22:59:01 (GMT)
committerJoseph Brill <48932340+jcbrill@users.noreply.github.com>2022-06-23 22:59:01 (GMT)
commitf99f7cab7bc3af5ef18e3189f531572df4558fe4 (patch)
tree6abe46398a4ff1c92023d6912595deb7633a496b
parent1de714ae3085d9fd07cb8837f523037885271aa8 (diff)
downloadSCons-f99f7cab7bc3af5ef18e3189f531572df4558fe4.zip
SCons-f99f7cab7bc3af5ef18e3189f531572df4558fe4.tar.gz
SCons-f99f7cab7bc3af5ef18e3189f531572df4558fe4.tar.bz2
Construction variable documentation additions and modifications.
-rw-r--r--doc/generated/variables.gen558
-rw-r--r--doc/generated/variables.mod8
2 files changed, 555 insertions, 11 deletions
diff --git a/doc/generated/variables.gen b/doc/generated/variables.gen
index 996e35a..f1b3fff 100644
--- a/doc/generated/variables.gen
+++ b/doc/generated/variables.gen
@@ -4686,7 +4686,7 @@ will be compiled separately.
<envar>MSVC_NOTFOUND_POLICY</envar>
</term>
<listitem><para>
-Specify the scons behavior when the Microsoft Visual C/C++ compiler is not detected.
+Specify the &scons; behavior when the Microsoft Visual C/C++ compiler is not detected.
</para>
<para>
@@ -4694,7 +4694,7 @@ Specify the scons behavior when the Microsoft Visual C/C++ compiler is not detec
when the requested msvc version is not detected.
</para>
-<para>
+<para>
The valid values for <envar>MSVC_NOTFOUND_POLICY</envar> and the corresponding &scons; behavior are:
</para>
@@ -4768,10 +4768,487 @@ A non-default tool list is specified that does not contain any of the msvc tools
</para>
<para>
+Important usage details:
+<itemizedlist>
+
+<listitem><para>
+<envar>MSVC_NOTFOUND_POLICY</envar> must be passed as an argument to the Environment() constructor;
+setting it later has no effect.
+</para></listitem>
+
+</itemizedlist>
+</para>
+
+<para>
When <envar>MSVC_NOTFOUND_POLICY</envar> is not specified, the default &scons; behavior is to issue a warning and continue
subject to the conditions listed above. The default &scons; behavior may change in the future.
</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-MSVC_SCRIPT_ARGS">
+ <term>
+ <envar>MSVC_SCRIPT_ARGS</envar>
+ </term>
+ <listitem><para>
+Pass user-defined arguments to the Visual C++ batch file determined via autodetection.
+</para>
+
+<para>
+<envar>MSVC_SCRIPT_ARGS</envar> is available for msvc batch file arguments that do not have first-class support
+via construction variables or when there is an issue with the appropriate construction variable validation.
+When available, it is recommended to use the appropriate construction variables (e.g., &cv-link-MSVC_TOOLSET_VERSION;)
+rather than <envar>MSVC_SCRIPT_ARGS</envar> arguments.
+</para>
+
+<para>
+The valid values for <envar>MSVC_SCRIPT_ARGS</envar> are: <literal>None</literal>, a string,
+or a list of strings.
+</para>
+
+<para>
+The <envar>MSVC_SCRIPT_ARGS</envar> value is converted to a scalar string (i.e., "flattened").
+The resulting scalar string, if not empty, is passed as an argument to the msvc batch file determined
+via autodetection subject to the validation conditions listed below.
+</para>
+
+<para>
+<envar>MSVC_SCRIPT_ARGS</envar> is ignored when the value is <literal>None</literal> and when the
+result from argument conversion is an empty string. The validation conditions below do not apply.
+</para>
+
+<para>
+An exception is raised when any of the following conditions are satisfied:
+<itemizedlist>
+
+<listitem><para>
+<envar>MSVC_SCRIPT_ARGS</envar> is specified for Visual Studio 2013 and earlier.
+</para></listitem>
+
+<listitem><para>
+Multiple SDK version arguments (e.g., <literal>'10.0.20348.0'</literal>) are specified
+in <envar>MSVC_SCRIPT_ARGS</envar>.
+</para></listitem>
+
+<listitem><para>
+&cv-link-MSVC_SDK_VERSION; is specified and an SDK version argument
+(e.g., <literal>'10.0.20348.0'</literal>) is specified in <envar>MSVC_SCRIPT_ARGS</envar>.
+Multiple SDK version declarations via &cv-link-MSVC_SDK_VERSION; and <envar>MSVC_SCRIPT_ARGS</envar>
+are not allowed.
+</para></listitem>
+
+<listitem><para>
+Multiple toolset version arguments (e.g., <literal>'-vcvars_ver=14.29'</literal>)
+are specified in <envar>MSVC_SCRIPT_ARGS</envar>.
+</para></listitem>
+
+<listitem><para>
+&cv-link-MSVC_TOOLSET_VERSION; is specified and a toolset version argument
+(e.g., <literal>'-vcvars_ver=14.29'</literal>) is specified in <envar>MSVC_SCRIPT_ARGS</envar>.
+Multiple toolset version declarations via &cv-link-MSVC_TOOLSET_VERSION; and
+<envar>MSVC_SCRIPT_ARGS</envar> are not allowed.
+</para></listitem>
+
+<listitem><para>
+Multiple spectre library arguments (e.g., <literal>'-vcvars_spectre_libs=spectre'</literal>)
+are specified in <envar>MSVC_SCRIPT_ARGS</envar>.
+</para></listitem>
+
+<listitem><para>
+&cv-link-MSVC_SPECTRE_LIBS; is enabled and a spectre library argument
+(e.g., <literal>'-vcvars_spectre_libs=spectre'</literal>) is specified in
+<envar>MSVC_SCRIPT_ARGS</envar>. Multiple spectre library declarations via &cv-link-MSVC_SPECTRE_LIBS;
+and <envar>MSVC_SCRIPT_ARGS</envar> are not allowed.
+</para></listitem>
+
+<listitem><para>
+Multiple UWP arguments (e.g., <literal>uwp</literal> or <literal>store</literal>) are specified
+in <envar>MSVC_SCRIPT_ARGS</envar>.
+</para></listitem>
+
+<listitem><para>
+&cv-link-MSVC_UWP_APP; is enabled and a UWP argument (e.g., <literal>uwp</literal> or
+<literal>store</literal>) is specified in <envar>MSVC_SCRIPT_ARGS</envar>. Multiple UWP declarations
+via &cv-link-MSVC_UWP_APP; and <envar>MSVC_SCRIPT_ARGS</envar> are not allowed.
+</para></listitem>
+
+</itemizedlist>
+</para>
+
+<para>
+Example 1 - A Visual Studio 2022 build with an SDK version and a toolset version
+specified with a string argument:
+<example_commands>
+env = Environment(MSVC_VERSION='14.3', MSVC_SCRIPT_ARGS='10.0.20348.0 -vcvars_ver=14.29.30133')
+</example_commands>
+</para>
+
+<para>
+Example 2 - A Visual Studio 2022 build with an SDK version and a toolset version
+specified with a list argument:
+<example_commands>
+env = Environment(MSVC_VERSION='14.3', MSVC_SCRIPT_ARGS=['10.0.20348.0', '-vcvars_ver=14.29.30133'])
+</example_commands>
+</para>
+
+<para>
+Important usage details:
+<itemizedlist>
+
+<listitem><para>
+<envar>MSVC_SCRIPT_ARGS</envar> must be passed as an argument to the Environment() constructor;
+setting it later has no effect.
+</para></listitem>
+
+<listitem><para>
+Other than checking for multiple declarations as described above, <envar>MSVC_SCRIPT_ARGS</envar> arguments
+are not validated.
+</para></listitem>
+
+<listitem><para>
+<emphasis>
+Erroneous, inconsistent, and/or version incompatible <envar>MSVC_SCRIPT_ARGS</envar> arguments are likely
+to result in build failures for reasons that are not readily apparent and may be difficult to diagnose.
+</emphasis>
+The burden is on the user to ensure that the arguments provided to the msvc batch file are valid, consistent
+and compatible with the version of msvc selected.
+</para></listitem>
+
+</itemizedlist>
+</para>
+
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-MSVC_SDK_VERSION">
+ <term>
+ <envar>MSVC_SDK_VERSION</envar>
+ </term>
+ <listitem><para>
+Build with a specific version of the Microsoft Software Development Kit (SDK).
+</para>
+
+<para>
+The valid values for <envar>MSVC_SDK_VERSION</envar> are: <literal>None</literal>
+or a string containing the requested SDK version (e.g., '10.0.20348.0').
+</para>
+
+<para>
+<envar>MSVC_SDK_VERSION</envar> is ignored when the value is <literal>None</literal> and when
+the value is an empty string. The validation conditions below do not apply.
+</para>
+
+<para>
+An exception is raised when any of the following conditions are satisfied:
+<itemizedlist>
+
+<listitem><para>
+<envar>MSVC_SDK_VERSION</envar> is specified for Visual Studio 2013 and earlier.
+</para></listitem>
+
+<listitem><para>
+<envar>MSVC_SDK_VERSION</envar> is specified and an SDK version argument is specified in
+&cv-link-MSVC_SCRIPT_ARGS;. Multiple SDK version declarations via <envar>MSVC_SDK_VERSION</envar>
+and &cv-link-MSVC_SCRIPT_ARGS; are not allowed.
+</para></listitem>
+
+<listitem><para>
+The <envar>MSVC_SDK_VERSION</envar> specified does not match any of the supported formats:
+<itemizedlist>
+<listitem><para>
+<literal>'10.0.XXXXX.Y'</literal> [SDK 10.0]
+</para></listitem>
+<listitem><para>
+<literal>'8.1'</literal> [SDK 8.1]
+</para></listitem>
+</itemizedlist>
+</para></listitem>
+
+<listitem><para>
+The system folder for the corresponding <envar>MSVC_SDK_VERSION</envar> version is not found.
+The requested SDK version does not appear to be installed.
+</para></listitem>
+
+<listitem><para>
+The <envar>MSVC_SDK_VERSION</envar> version does not appear to support the requested platform
+type (i.e., <literal>UWP</literal> or <literal>Desktop</literal>). The requested SDK version
+platform type components do not appear to be installed.
+</para></listitem>
+
+</itemizedlist>
+</para>
+
+<para>
+Example 1 - A Visual Studio 2022 build with a specific Windows SDK version:
+<example_commands>
+env = Environment(MSVC_VERSION='14.3', MSVC_SDK_VERSION='10.0.20348.0')
+</example_commands>
+</para>
+
+<para>
+Example 2 - A Visual Studio 2022 build with a specific SDK version for the Universal Windows Platform:
+<example_commands>
+env = Environment(MSVC_VERSION='14.3', MSVC_SDK_VERSION='10.0.20348.0', MSVC_UWP_APP=True)
+</example_commands>
+</para>
+
+<para>
+Important usage details:
+<itemizedlist>
+
+<listitem><para>
+<envar>MSVC_SDK_VERSION</envar> must be passed as an argument to the Environment() constructor;
+setting it later has no effect.
+</para></listitem>
+
+<listitem>
+<para><emphasis>
+Should a SDK 10.0 version be installed that does not follow the naming scheme above, the
+SDK version will need to be specified via &cv-link-MSVC_SCRIPT_ARGS; until the version number
+validation format can be extended.
+</emphasis></para>
+</listitem>
+
+<listitem><para>
+Should an exception be raised indicating that the SDK version is not found, verify that
+the requested SDK version is installed with the necessary platform type components.
+</para></listitem>
+
+<listitem><para>
+There is a known issue with the Microsoft libraries for SDK version <literal>'10.0.22000.0'</literal>
+when using the <literal>v141</literal> build tools and the target architecture is <literal>ARM64</literal>.
+Should build failures arise with this combination of settings, <envar>MSVC_SDK_VERSION</envar> may be
+employed to specify a different SDK version for the build.
+</para></listitem>
+
+</itemizedlist>
+</para>
+
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-MSVC_SPECTRE_LIBS">
+ <term>
+ <envar>MSVC_SPECTRE_LIBS</envar>
+ </term>
+ <listitem><para>
+Build with the spectre-mitigated Visual C++ libraries.
+</para>
+
+<para>
+The valid values for <envar>MSVC_SPECTRE_LIBS</envar> are: <literal>True</literal>,
+<literal>False</literal>, or <literal>None</literal>.
+</para>
+
+<para>
+When <envar>MSVC_SPECTRE_LIBS</envar> is enabled (i.e., <literal>True</literal>),
+the Visual C++ environment will include the paths to the spectre-mitigated implementations
+of the Microsoft Visual C++ libraries.
+</para>
+
+<para>
+An exception is raised when any of the following conditions are satisfied:
+<itemizedlist>
+
+<listitem><para>
+<envar>MSVC_SPECTRE_LIBS</envar> is enabled for Visual Studio 2015 and earlier.
+</para></listitem>
+
+<listitem><para>
+<envar>MSVC_SPECTRE_LIBS</envar> is enabled and a spectre library argument is specified in
+&cv-link-MSVC_SCRIPT_ARGS;. Multiple spectre library declarations via <envar>MSVC_SPECTRE_LIBS</envar>
+and &cv-link-MSVC_SCRIPT_ARGS; are not allowed.
+</para></listitem>
+
+</itemizedlist>
+</para>
+
+<para>
+Example - A Visual Studio 2022 build with spectre mitigated Visual C++ libraries:
+<example_commands>
+env = Environment(MSVC_VERSION='14.3', MSVC_SPECTRE_LIBS=True)
+</example_commands>
+</para>
+
+<para>
+Important usage details:
+<itemizedlist>
+
+<listitem><para>
+<envar>MSVC_SPECTRE_LIBS</envar> must be passed as an argument to the Environment() constructor;
+setting it later has no effect.
+</para></listitem>
+
+<listitem><para>
+Additional compiler switches (e.g., <literal>/Qspectre</literal>) are necessary for including
+spectre mitigations when building user artifacts. Refer to the Visual Studio documentation for
+details.
+</para></listitem>
+
+<listitem><para>
+<emphasis>
+The existence of the spectre mitigations libraries is not verified when <envar>MSVC_SPECTRE_LIBS</envar>
+is enabled which could result in build failures.
+</emphasis>
+The burden is on the user to ensure the requisite libraries with spectre mitigations are installed.
+</para></listitem>
+
+</itemizedlist>
+</para>
+
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-MSVC_TOOLSET_VERSION">
+ <term>
+ <envar>MSVC_TOOLSET_VERSION</envar>
+ </term>
+ <listitem><para>
+Build with a specific Visual C++ toolset version.
+</para>
+
+<para><emphasis>
+Specifying <envar>MSVC_TOOLSET_VERSION</envar> does not affect the autodetection and selection
+of msvc instances. The <envar>MSVC_TOOLSET_VERSION</envar> is applied <emphasis>after</emphasis>
+an msvc instance is selected. This could be the default version of msvc if &cv-link-MSVC_VERSION;
+is not specified.
+</emphasis></para>
+
+<para>
+The valid values for <envar>MSVC_TOOLSET_VERSION</envar> are: <literal>None</literal>
+or a string containing the requested toolset version (e.g., '14.29').
+</para>
+
+<para>
+<envar>MSVC_TOOLSET_VERSION</envar> is ignored when the value is <literal>None</literal> and when
+the value is an empty string. The validation conditions below do not apply.
+</para>
+
+<para>
+An exception is raised when any of the following conditions are satisfied:
+<itemizedlist>
+
+<listitem><para>
+<envar>MSVC_TOOLSET_VERSION</envar> is specified for Visual Studio 2015 and earlier.
+</para></listitem>
+
+<listitem><para>
+<envar>MSVC_TOOLSET_VERSION</envar> is specified and a toolset version argument is specified in
+&cv-link-MSVC_SCRIPT_ARGS;. Multiple toolset version declarations via <envar>MSVC_TOOLSET_VERSION</envar>
+and &cv-link-MSVC_SCRIPT_ARGS; are not allowed.
+</para></listitem>
+
+<listitem>
+<para>
+The <envar>MSVC_TOOLSET_VERSION</envar> specified does not match any of the supported formats:
+</para>
+
+<itemizedlist>
+
+<listitem><para>
+<literal>'XX.Y'</literal>
+</para></listitem>
+
+<listitem><para>
+<literal>'XX.YY'</literal>
+</para></listitem>
+
+<listitem><para>
+<literal>'XX.YY.ZZZZZ'</literal>
+</para></listitem>
+
+<listitem><para>
+<literal>'XX.YY.Z'</literal> to <literal>'XX.YY.ZZZZ'</literal>
+<emphasis>
+[&scons; extension not directly supported by the msvc batch files and may be removed in the future]
+</emphasis>
+</para></listitem>
+
+<listitem><para>
+<literal>'XX.YY.ZZ.N'</literal> [SxS format]
+</para></listitem>
+
+<listitem><para>
+<literal>'XX.YY.ZZ.NN'</literal> [SxS format]
+</para></listitem>
+
+</itemizedlist>
+
+</listitem>
+
+<listitem><para>
+The major msvc version prefix (i.e., <literal>'XX.Y'</literal>) of the <envar>MSVC_TOOLSET_VERSION</envar> specified
+is for Visual Studio 2013 and earlier (e.g., '12.0').
+</para></listitem>
+
+<listitem><para>
+The major msvc version prefix (i.e., <literal>'XX.Y'</literal>) of the <envar>MSVC_TOOLSET_VERSION</envar> specified
+is greater than the msvc version selected (e.g., '99.0').
+</para></listitem>
+
+<listitem><para>
+A system folder for the corresponding <envar>MSVC_TOOLSET_VERSION</envar> version is not found.
+The requested toolset version does not appear to be installed.
+</para></listitem>
+
+</itemizedlist>
+</para>
+
+<para>
+Toolset selection details:
+<itemizedlist>
+
+<listitem><para>
+SxS version numbers are not always in three dot format (e.g., <literal>'XX.YY.ZZ.NN'</literal>) as shown above.
+</para><para>
+In Visual Studio 2022 for example, <literal>14.16</literal> is an SxS toolset version that is directly
+mapped to toolset version <literal>14.16.27023</literal>.
+</para></listitem>
+
+<listitem><para>
+When <envar>MSVC_TOOLSET_VERSION</envar> is not an SxS version number or a full toolset version number:
+the first toolset version, ranked in descending order, that matches the <envar>MSVC_TOOLSET_VERSION</envar>
+prefix is selected.
+</para></listitem>
+
+<listitem><para>
+When <envar>MSVC_TOOLSET_VERSION</envar> is specified using the major msvc version prefix
+(i.e., <literal>'XX.Y'</literal>) and the major msvc version is that of the latest release of
+Visual Studio, the selected toolset version may not be the same as the default Visual C++ toolset version.
+</para><para>
+In the latest release of Visual Studio, the default Visual C++ toolset version is not necessarily the
+toolset with the largest version number.
+</para></listitem>
+
+</itemizedlist>
+</para>
+
+<para>
+Example environment constructor invocations with toolset version specifications:
+<programlisting>
+Environment(MSVC_TOOLSET_VERSION='14.2')
+Environment(MSVC_TOOLSET_VERSION='14.29')
+Environment(MSVC_VERSION='14.3', MSVC_TOOLSET_VERSION='14.29.30133')
+Environment(MSVC_VERSION='14.3', MSVC_TOOLSET_VERSION='14.29.16.11')
+</programlisting>
+</para>
+
+<para>
+Important usage details:
+<itemizedlist>
+
+<listitem><para>
+<envar>MSVC_TOOLSET_VERSION</envar> must be passed as an argument to the Environment() constructor;
+setting it later has no effect.
+</para></listitem>
+
+<listitem><para>
+<emphasis>
+The existence of the toolset host architecture and target architecture folders are not verified
+when <envar>MSVC_TOOLSET_VERSION</envar> is specified which could result in build failures.
+</emphasis>
+The burden is on the user to ensure the requisite toolset target architecture build tools are installed.
+</para></listitem>
+
+</itemizedlist>
+</para>
</listitem>
</varlistentry>
@@ -4879,9 +5356,24 @@ env = Environment(MSVC_VERSION='8.0', MSVC_USE_SETTINGS=msvc_use_settings)
</para>
<para>
-Note: the dictionary content requirements are based on the internal msvc implementation and
-therefore may change at any time. The burden is on the user to ensure the dictionary contents
-are minimally sufficient to ensure successful builds.
+Important usage details:
+<itemizedlist>
+
+<listitem><para>
+<envar>MSVC_USE_SETTINGS</envar> must be passed as an argument to the Environment() constructor;
+setting it later has no effect.
+</para></listitem>
+
+<listitem><para>
+<emphasis>
+The dictionary content requirements are based on the internal msvc implementation and
+therefore may change at any time.
+</emphasis>
+The burden is on the user to ensure the dictionary contents are minimally sufficient to
+ensure successful builds.
+</para></listitem>
+
+</itemizedlist>
</para>
</listitem>
@@ -4891,21 +5383,65 @@ are minimally sufficient to ensure successful builds.
<envar>MSVC_UWP_APP</envar>
</term>
<listitem><para>
-Build libraries for a Universal Windows Platform (UWP) Application.
+Build with the Universal Windows Platform (UWP) application Visual C++ libraries.
+</para>
+
+<para>
+The valid values for <envar>MSVC_UWP_APP</envar> are <literal>True</literal>,
+<literal>'1'</literal>, <literal>False</literal>, <literal>'0'</literal>,
+or <literal>None</literal>.
</para>
<para>
-If &cv-MSVC_UWP_APP; is set, the Visual C++ environment will be set up to point
+When <envar>MSVC_UWP_APP</envar> is enabled (i.e., <literal>True</literal> or
+<literal>'1'</literal>), the Visual C++ environment will be set up to point
to the Windows Store compatible libraries and Visual C++ 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 or later.
-This variable must be passed as an argument to the Environment()
-constructor; setting it later has no effect.
+<!-- This flag will only have an effect with Visual Studio 2015 or later. -->
+<!-- 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'
+An exception is raised when any of the following conditions are satisfied:
+<itemizedlist>
+<listitem><para>
+<envar>MSVC_UWP_APP</envar> is enabled for Visual Studio 2013 and earlier.
+</para></listitem>
+<listitem><para>
+<envar>MSVC_UWP_APP</envar> is enabled and a UWP argument is specified in
+&cv-link-MSVC_SCRIPT_ARGS;. Multiple UWP declarations via <envar>MSVC_UWP_APP</envar>
+and &cv-link-MSVC_SCRIPT_ARGS; are not allowed.
+</para></listitem>
+</itemizedlist>
+</para>
+
+<para>
+Example - A Visual Studio 2022 build for the Universal Windows Platform:
+<example_commands>
+env = Environment(MSVC_VERSION='14.3', MSVC_UWP_APP=True)
+</example_commands>
+</para>
+
+<para>
+Important usage details:
+<itemizedlist>
+
+<listitem><para>
+<envar>MSVC_UWP_APP</envar> must be passed as an argument to the Environment() constructor;
+setting it later has no effect.
+</para></listitem>
+
+<listitem><para>
+<emphasis>
+The existence of the UWP libraries is not verified when <envar>MSVC_UWP_APP</envar> is enabled
+which could result in build failures.
+</emphasis>
+The burden is on the user to ensure the requisite UWP libraries are installed.
+</para></listitem>
+
+</itemizedlist>
</para>
</listitem>
diff --git a/doc/generated/variables.mod b/doc/generated/variables.mod
index c5cd0cd..d3d29f2 100644
--- a/doc/generated/variables.mod
+++ b/doc/generated/variables.mod
@@ -321,6 +321,10 @@ THIS IS AN AUTOMATICALLY-GENERATED FILE. DO NOT EDIT.
<!ENTITY cv-MSSDK_VERSION "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MSSDK_VERSION</envar>">
<!ENTITY cv-MSVC_BATCH "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MSVC_BATCH</envar>">
<!ENTITY cv-MSVC_NOTFOUND_POLICY "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MSVC_NOTFOUND_POLICY</envar>">
+<!ENTITY cv-MSVC_SCRIPT_ARGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MSVC_SCRIPT_ARGS</envar>">
+<!ENTITY cv-MSVC_SDK_VERSION "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MSVC_SDK_VERSION</envar>">
+<!ENTITY cv-MSVC_SPECTRE_LIBS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MSVC_SPECTRE_LIBS</envar>">
+<!ENTITY cv-MSVC_TOOLSET_VERSION "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MSVC_TOOLSET_VERSION</envar>">
<!ENTITY cv-MSVC_USE_SCRIPT "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MSVC_USE_SCRIPT</envar>">
<!ENTITY cv-MSVC_USE_SCRIPT_ARGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MSVC_USE_SCRIPT_ARGS</envar>">
<!ENTITY cv-MSVC_USE_SETTINGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MSVC_USE_SETTINGS</envar>">
@@ -985,6 +989,10 @@ THIS IS AN AUTOMATICALLY-GENERATED FILE. DO NOT EDIT.
<!ENTITY cv-link-MSSDK_VERSION "<link linkend='cv-MSSDK_VERSION' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MSSDK_VERSION</envar></link>">
<!ENTITY cv-link-MSVC_BATCH "<link linkend='cv-MSVC_BATCH' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MSVC_BATCH</envar></link>">
<!ENTITY cv-link-MSVC_NOTFOUND_POLICY "<link linkend='cv-MSVC_NOTFOUND_POLICY' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MSVC_NOTFOUND_POLICY</envar></link>">
+<!ENTITY cv-link-MSVC_SCRIPT_ARGS "<link linkend='cv-MSVC_SCRIPT_ARGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MSVC_SCRIPT_ARGS</envar></link>">
+<!ENTITY cv-link-MSVC_SDK_VERSION "<link linkend='cv-MSVC_SDK_VERSION' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MSVC_SDK_VERSION</envar></link>">
+<!ENTITY cv-link-MSVC_SPECTRE_LIBS "<link linkend='cv-MSVC_SPECTRE_LIBS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MSVC_SPECTRE_LIBS</envar></link>">
+<!ENTITY cv-link-MSVC_TOOLSET_VERSION "<link linkend='cv-MSVC_TOOLSET_VERSION' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MSVC_TOOLSET_VERSION</envar></link>">
<!ENTITY cv-link-MSVC_USE_SCRIPT "<link linkend='cv-MSVC_USE_SCRIPT' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MSVC_USE_SCRIPT</envar></link>">
<!ENTITY cv-link-MSVC_USE_SCRIPT_ARGS "<link linkend='cv-MSVC_USE_SCRIPT_ARGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MSVC_USE_SCRIPT_ARGS</envar></link>">
<!ENTITY cv-link-MSVC_USE_SETTINGS "<link linkend='cv-MSVC_USE_SETTINGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MSVC_USE_SETTINGS</envar></link>">