diff options
Diffstat (limited to 'doc/generated/variables.gen')
| -rw-r--r-- | doc/generated/variables.gen | 1143 | 
1 files changed, 695 insertions, 448 deletions
diff --git a/doc/generated/variables.gen b/doc/generated/variables.gen index 8a8dc99..28dfc59 100644 --- a/doc/generated/variables.gen +++ b/doc/generated/variables.gen @@ -31,6 +31,94 @@ if <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHLIBVERSION"><enva  </para>  </listitem>    </varlistentry> +  <varlistentry id="cv-_APPLELINK_COMPATIBILITY_VERSION"> +    <term>_APPLELINK_COMPATIBILITY_VERSION</term> +    <listitem> +            <para xmlns="http://www.scons.org/dbxsd/v1.0"> +                A macro (by default a generator function) used to create the linker flags to specify +                apple's linker's -compatibility_version flag. +                The default generator uses <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-APPLELINK_COMPATIBILITY_VERSION"><envar>$APPLELINK_COMPATIBILITY_VERSION</envar></link> +                and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-APPLELINK_NO_COMPATIBILITY_VERSION"><envar>$APPLELINK_NO_COMPATIBILITY_VERSION</envar></link> and  <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHLIBVERSION"><envar>$SHLIBVERSION</envar></link> +                to determine the correct flag. +            </para> +        </listitem> +  </varlistentry> +  <varlistentry id="cv-APPLELINK_COMPATIBILITY_VERSION"> +    <term>APPLELINK_COMPATIBILITY_VERSION</term> +    <listitem> +            <para xmlns="http://www.scons.org/dbxsd/v1.0"> +                On Mac OS X this is used to set the linker flag: + +                -compatibility_version +            </para> +            <para xmlns="http://www.scons.org/dbxsd/v1.0"> +                The value is specified as X[.Y[.Z]] where X is between 1 and 65535, Y can be omitted or between 1 and +                255, Z can be omitted or between 1 and 255. This value will be derived from <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHLIBVERSION"><envar>$SHLIBVERSION</envar></link> if +                not +                specified. The lowest digit will be dropped and replaced by a 0. +            </para> +            <para xmlns="http://www.scons.org/dbxsd/v1.0"> +                If the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-APPLELINK_NO_COMPATIBILITY_VERSION"><envar>$APPLELINK_NO_COMPATIBILITY_VERSION</envar></link> is set then no -compatibility_version will be +                output. +            </para> +            <para xmlns="http://www.scons.org/dbxsd/v1.0">See MacOS's ld manpage for more details</para> +        </listitem> +  </varlistentry> +  <varlistentry id="cv-_APPLELINK_CURRENT_VERSION"> +    <term>_APPLELINK_CURRENT_VERSION</term> +    <listitem> +            <para xmlns="http://www.scons.org/dbxsd/v1.0"> +                A macro (by default a generator function) used to create the linker flags to specify apple's linker's +                -current_version flag.  The default generator uses <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-APPLELINK_CURRENT_VERSION"><envar>$APPLELINK_CURRENT_VERSION</envar></link> and +                <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-APPLELINK_NO_CURRENT_VERSION"><envar>$APPLELINK_NO_CURRENT_VERSION</envar></link> and  <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHLIBVERSION"><envar>$SHLIBVERSION</envar></link> to determine the correct flag. +            </para> +        </listitem> +  </varlistentry> +  <varlistentry id="cv-APPLELINK_CURRENT_VERSION"> +    <term>APPLELINK_CURRENT_VERSION</term> +    <listitem> +            <para xmlns="http://www.scons.org/dbxsd/v1.0"> +                On Mac OS X this is used to set the linker flag: + +                -current_version +            </para> +            <para xmlns="http://www.scons.org/dbxsd/v1.0"> +                The value is specified as X[.Y[.Z]] where X is between 1 and 65535, Y can be omitted or between 1 and +                255, Z can be omitted or between 1 and 255. This value will be set to <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHLIBVERSION"><envar>$SHLIBVERSION</envar></link> if not +                specified. +            </para> +            <para xmlns="http://www.scons.org/dbxsd/v1.0"> +                If the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-APPLELINK_NO_CURRENT_VERSION"><envar>$APPLELINK_NO_CURRENT_VERSION</envar></link> is set then no -current_version will be +                output. +            </para> +            <para xmlns="http://www.scons.org/dbxsd/v1.0">See MacOS's ld manpage for more details</para> + +        </listitem> +  </varlistentry> +  <varlistentry id="cv-APPLELINK_NO_COMPATIBILITY_VERSION"> +    <term>APPLELINK_NO_COMPATIBILITY_VERSION</term> +    <listitem> +            <para xmlns="http://www.scons.org/dbxsd/v1.0"> +                Set this to any True (1|True|non-empty string) value to disable adding -compatibility_version flag when +                generating versioned shared libraries. +            </para> +            <para xmlns="http://www.scons.org/dbxsd/v1.0"> +                This overrides <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-APPLELINK_COMPATIBILITY_VERSION"><envar>$APPLELINK_COMPATIBILITY_VERSION</envar></link>. +            </para> +        </listitem> +  </varlistentry> +  <varlistentry id="cv-APPLELINK_NO_CURRENT_VERSION"> +    <term>APPLELINK_NO_CURRENT_VERSION</term> +    <listitem> +            <para xmlns="http://www.scons.org/dbxsd/v1.0"> +                Set this to any True (1|True|non-empty string) value to disable adding -current_version flag when +                generating versioned shared libraries. +            </para> +            <para xmlns="http://www.scons.org/dbxsd/v1.0"> +                This overrides <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-APPLELINK_CURRENT_VERSION"><envar>$APPLELINK_CURRENT_VERSION</envar></link>. +            </para> +        </listitem> +  </varlistentry>    <varlistentry id="cv-AR">      <term>AR</term>      <listitem> @@ -51,7 +139,9 @@ This is used to fill in the  <literal>Architecture:</literal>  field in an Ipkg  <filename>control</filename> file, -and as part of the name of a generated RPM file. +and the <literal>BuildArch:</literal> field +in the RPM <filename>.spec</filename> file, +as well as forming part of the name of a generated RPM package file.  </para>  </listitem>    </varlistentry> @@ -240,7 +330,7 @@ or this:  <example_commands xmlns="http://www.scons.org/dbxsd/v1.0">  env = Environment() -env['BUILDERS]['NewBuilder'] = foo +env['BUILDERS']['NewBuilder'] = foo  </example_commands>  </listitem>    </varlistentry> @@ -389,7 +479,6 @@ the <filename>control</filename> for Ipkg,  the <filename>.wxs</filename> for MSI).  If set, the function will be called  after the SCons template for the file has been written. -XXX  </para>  </listitem>    </varlistentry> @@ -480,7 +569,8 @@ An automatically-generated construction variable  containing the C preprocessor command-line options  to define values.  The value of <envar xmlns="http://www.scons.org/dbxsd/v1.0">$_CPPDEFFLAGS</envar> is created -by appending <envar xmlns="http://www.scons.org/dbxsd/v1.0">$CPPDEFPREFIX</envar> and <envar xmlns="http://www.scons.org/dbxsd/v1.0">$CPPDEFSUFFIX</envar> +by respectively prepending and appending +<envar xmlns="http://www.scons.org/dbxsd/v1.0">$CPPDEFPREFIX</envar> and <envar xmlns="http://www.scons.org/dbxsd/v1.0">$CPPDEFSUFFIX</envar>  to the beginning and end  of each definition in <envar xmlns="http://www.scons.org/dbxsd/v1.0">$CPPDEFINES</envar>.  </para> @@ -503,7 +593,8 @@ If <envar xmlns="http://www.scons.org/dbxsd/v1.0">$CPPDEFINES</envar> is a strin  the values of the  <envar xmlns="http://www.scons.org/dbxsd/v1.0">$CPPDEFPREFIX</envar> and <envar xmlns="http://www.scons.org/dbxsd/v1.0">$CPPDEFSUFFIX</envar>  construction variables -will be added to the beginning and end. +will be respectively prepended and appended to the beginning and end +of each definition in <envar xmlns="http://www.scons.org/dbxsd/v1.0">$CPPDEFINES</envar>.  </para>  <example_commands xmlns="http://www.scons.org/dbxsd/v1.0"> @@ -517,7 +608,7 @@ If <envar xmlns="http://www.scons.org/dbxsd/v1.0">$CPPDEFINES</envar> is a list,  the values of the  <envar xmlns="http://www.scons.org/dbxsd/v1.0">$CPPDEFPREFIX</envar> and <envar xmlns="http://www.scons.org/dbxsd/v1.0">$CPPDEFSUFFIX</envar>  construction variables -will be appended to the beginning and end +will be respectively prepended and appended to the beginning and end  of each element in the list.  If any element is a list or tuple,  then the first item is the name being @@ -535,7 +626,7 @@ If <envar xmlns="http://www.scons.org/dbxsd/v1.0">$CPPDEFINES</envar> is a dicti  the values of the  <envar xmlns="http://www.scons.org/dbxsd/v1.0">$CPPDEFPREFIX</envar> and <envar xmlns="http://www.scons.org/dbxsd/v1.0">$CPPDEFSUFFIX</envar>  construction variables -will be appended to the beginning and end +will be respectively prepended and appended to the beginning and end  of each item from the dictionary.  The key of each dictionary item  is a name being defined @@ -563,7 +654,7 @@ env = Environment(CPPDEFINES={'B':2, 'A':None})  <para xmlns="http://www.scons.org/dbxsd/v1.0">  The prefix used to specify preprocessor definitions  on the C compiler command line. -This will be appended to the beginning of each definition +This will be prepended to the beginning of each definition  in the <envar xmlns="http://www.scons.org/dbxsd/v1.0">$CPPDEFINES</envar> construction variable  when the <envar xmlns="http://www.scons.org/dbxsd/v1.0">$_CPPDEFFLAGS</envar> variable is automatically generated.  </para> @@ -619,7 +710,7 @@ An automatically-generated construction variable  containing the C preprocessor command-line options  for specifying directories to be searched for include files.  The value of <envar xmlns="http://www.scons.org/dbxsd/v1.0">$_CPPINCFLAGS</envar> is created -by appending <envar xmlns="http://www.scons.org/dbxsd/v1.0">$INCPREFIX</envar> and <envar xmlns="http://www.scons.org/dbxsd/v1.0">$INCSUFFIX</envar> +by respectively prepending and appending <envar xmlns="http://www.scons.org/dbxsd/v1.0">$INCPREFIX</envar> and <envar xmlns="http://www.scons.org/dbxsd/v1.0">$INCSUFFIX</envar>  to the beginning and end  of each directory in <envar xmlns="http://www.scons.org/dbxsd/v1.0">$CPPPATH</envar>.  </para> @@ -661,7 +752,7 @@ through the automatically-generated  <envar xmlns="http://www.scons.org/dbxsd/v1.0">$_CPPINCFLAGS</envar>  construction variable,  which is constructed by -appending the values of the +respectively prepending and appending the value of the  <envar xmlns="http://www.scons.org/dbxsd/v1.0">$INCPREFIX</envar> and <envar xmlns="http://www.scons.org/dbxsd/v1.0">$INCSUFFIX</envar>  construction variables  to the beginning and end @@ -2602,7 +2693,8 @@ containing the Fortran compiler command-line options  for specifying directories to be searched for include  files and module files.  The value of <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-_FORTRANINCFLAGS"><envar>$_FORTRANINCFLAGS</envar></link> is created -by prepending/appending <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-INCPREFIX"><envar>$INCPREFIX</envar></link> and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-INCSUFFIX"><envar>$INCSUFFIX</envar></link> +by respectively prepending and appending +<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-INCPREFIX"><envar>$INCPREFIX</envar></link> and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-INCSUFFIX"><envar>$INCSUFFIX</envar></link>  to the beginning and end  of each directory in <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FORTRANPATH"><envar>$FORTRANPATH</envar></link>.  </para> @@ -2625,7 +2717,7 @@ for module files, as well.  <para xmlns="http://www.scons.org/dbxsd/v1.0">  The prefix used to specify a module directory on the Fortran compiler command  line. -This will be appended to the beginning of the directory +This will be prepended to the beginning of the directory  in the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FORTRANMODDIR"><envar>$FORTRANMODDIR</envar></link> construction variables  when the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-_FORTRANMODFLAG"><envar>$_FORTRANMODFLAG</envar></link> variables is automatically generated.  </para> @@ -2637,7 +2729,7 @@ when the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-_FORTRANMODFL  <para xmlns="http://www.scons.org/dbxsd/v1.0">  The suffix used to specify a module directory on the Fortran compiler command  line. -This will be appended to the beginning of the directory +This will be appended to the end of the directory  in the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FORTRANMODDIR"><envar>$FORTRANMODDIR</envar></link> construction variables  when the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-_FORTRANMODFLAG"><envar>$_FORTRANMODFLAG</envar></link> variables is automatically generated.  </para> @@ -2653,8 +2745,8 @@ for specifying the directory location where the Fortran  compiler should place any module files that happen to get  generated during compilation.  The value of <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-_FORTRANMODFLAG"><envar>$_FORTRANMODFLAG</envar></link> is created -by prepending/appending <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FORTRANMODDIRPREFIX"><envar>$FORTRANMODDIRPREFIX</envar></link> and -<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FORTRANMODDIRSUFFIX"><envar>$FORTRANMODDIRSUFFIX</envar></link> +by respectively prepending and appending +<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FORTRANMODDIRPREFIX"><envar>$FORTRANMODDIRPREFIX</envar></link> and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FORTRANMODDIRSUFFIX"><envar>$FORTRANMODDIRSUFFIX</envar></link>  to the beginning and end of the directory in <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FORTRANMODDIR"><envar>$FORTRANMODDIR</envar></link>.  </para>  </listitem> @@ -2727,7 +2819,7 @@ through the automatically-generated  <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-_FORTRANINCFLAGS"><envar>$_FORTRANINCFLAGS</envar></link>  construction variable,  which is constructed by -appending the values of the +respectively prepending and appending the values of the  <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-INCPREFIX"><envar>$INCPREFIX</envar></link> and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-INCSUFFIX"><envar>$INCSUFFIX</envar></link>  construction variables  to the beginning and end @@ -2797,107 +2889,107 @@ The default list is:    <varlistentry id="cv-FRAMEWORKPATH">      <term>FRAMEWORKPATH</term>      <listitem> -<para xmlns="http://www.scons.org/dbxsd/v1.0"> -On Mac OS X with gcc, -a list containing the paths to search for frameworks. -Used by the compiler to find framework-style includes like -#include <Fmwk/Header.h>. -Used by the linker to find user-specified frameworks when linking (see -<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FRAMEWORKS"><envar>$FRAMEWORKS</envar></link>). -For example: -</para> +            <para xmlns="http://www.scons.org/dbxsd/v1.0"> +                On Mac OS X with gcc, +                a list containing the paths to search for frameworks. +                Used by the compiler to find framework-style includes like +                #include <Fmwk/Header.h>. +                Used by the linker to find user-specified frameworks when linking (see +                <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FRAMEWORKS"><envar>$FRAMEWORKS</envar></link>). +                For example: +            </para> -<example_commands xmlns="http://www.scons.org/dbxsd/v1.0"> - env.AppendUnique(FRAMEWORKPATH='#myframeworkdir') -</example_commands> +            <example_commands xmlns="http://www.scons.org/dbxsd/v1.0"> +                env.AppendUnique(FRAMEWORKPATH='#myframeworkdir') +            </example_commands> -<para xmlns="http://www.scons.org/dbxsd/v1.0"> -will add -</para> +            <para xmlns="http://www.scons.org/dbxsd/v1.0"> +                will add +            </para> -<example_commands xmlns="http://www.scons.org/dbxsd/v1.0"> -  ... -Fmyframeworkdir -</example_commands> +            <example_commands xmlns="http://www.scons.org/dbxsd/v1.0"> +                ... -Fmyframeworkdir +            </example_commands> -<para xmlns="http://www.scons.org/dbxsd/v1.0"> -to the compiler and linker command lines. -</para> -</listitem> +            <para xmlns="http://www.scons.org/dbxsd/v1.0"> +                to the compiler and linker command lines. +            </para> +        </listitem>    </varlistentry>    <varlistentry id="cv-_FRAMEWORKPATH">      <term>_FRAMEWORKPATH</term>      <listitem> -<para xmlns="http://www.scons.org/dbxsd/v1.0"> -On Mac OS X with gcc, an automatically-generated construction variable -containing the linker command-line options corresponding to -<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FRAMEWORKPATH"><envar>$FRAMEWORKPATH</envar></link>. -</para> -</listitem> +            <para xmlns="http://www.scons.org/dbxsd/v1.0"> +                On Mac OS X with gcc, an automatically-generated construction variable +                containing the linker command-line options corresponding to +                <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FRAMEWORKPATH"><envar>$FRAMEWORKPATH</envar></link>. +            </para> +        </listitem>    </varlistentry>    <varlistentry id="cv-FRAMEWORKPATHPREFIX">      <term>FRAMEWORKPATHPREFIX</term>      <listitem> -<para xmlns="http://www.scons.org/dbxsd/v1.0"> -On Mac OS X with gcc, the prefix to be used for the FRAMEWORKPATH entries. -(see <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FRAMEWORKPATH"><envar>$FRAMEWORKPATH</envar></link>). -The default value is -<option>-F</option>. -</para> -</listitem> +            <para xmlns="http://www.scons.org/dbxsd/v1.0"> +                On Mac OS X with gcc, the prefix to be used for the FRAMEWORKPATH entries. +                (see <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FRAMEWORKPATH"><envar>$FRAMEWORKPATH</envar></link>). +                The default value is +                <option>-F</option>. +            </para> +        </listitem>    </varlistentry>    <varlistentry id="cv-FRAMEWORKPREFIX">      <term>FRAMEWORKPREFIX</term>      <listitem> -<para xmlns="http://www.scons.org/dbxsd/v1.0"> -On Mac OS X with gcc, -the prefix to be used for linking in frameworks -(see <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FRAMEWORKS"><envar>$FRAMEWORKS</envar></link>). -The default value is -<option>-framework</option>. -</para> -</listitem> +            <para xmlns="http://www.scons.org/dbxsd/v1.0"> +                On Mac OS X with gcc, +                the prefix to be used for linking in frameworks +                (see <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FRAMEWORKS"><envar>$FRAMEWORKS</envar></link>). +                The default value is +                <option>-framework</option>. +            </para> +        </listitem>    </varlistentry>    <varlistentry id="cv-_FRAMEWORKS">      <term>_FRAMEWORKS</term>      <listitem> -<para xmlns="http://www.scons.org/dbxsd/v1.0"> -On Mac OS X with gcc, -an automatically-generated construction variable -containing the linker command-line options -for linking with FRAMEWORKS. -</para> -</listitem> +            <para xmlns="http://www.scons.org/dbxsd/v1.0"> +                On Mac OS X with gcc, +                an automatically-generated construction variable +                containing the linker command-line options +                for linking with FRAMEWORKS. +            </para> +        </listitem>    </varlistentry>    <varlistentry id="cv-FRAMEWORKS">      <term>FRAMEWORKS</term>      <listitem> -<para xmlns="http://www.scons.org/dbxsd/v1.0"> -On Mac OS X with gcc, a list of the framework names to be linked into a -program or shared library or bundle. -The default value is the empty list. -For example: -</para> +            <para xmlns="http://www.scons.org/dbxsd/v1.0"> +                On Mac OS X with gcc, a list of the framework names to be linked into a +                program or shared library or bundle. +                The default value is the empty list. +                For example: +            </para> -<example_commands xmlns="http://www.scons.org/dbxsd/v1.0"> - env.AppendUnique(FRAMEWORKS=Split('System Cocoa SystemConfiguration')) -</example_commands> +            <example_commands xmlns="http://www.scons.org/dbxsd/v1.0"> +                env.AppendUnique(FRAMEWORKS=Split('System Cocoa SystemConfiguration')) +            </example_commands> -</listitem> +        </listitem>    </varlistentry>    <varlistentry id="cv-FRAMEWORKSFLAGS">      <term>FRAMEWORKSFLAGS</term>      <listitem> -<para xmlns="http://www.scons.org/dbxsd/v1.0"> -On Mac OS X with gcc, -general user-supplied frameworks options to be added at -the end of a command -line building a loadable module. -(This has been largely superseded by -the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FRAMEWORKPATH"><envar>$FRAMEWORKPATH</envar></link>, <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FRAMEWORKPATHPREFIX"><envar>$FRAMEWORKPATHPREFIX</envar></link>, -<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FRAMEWORKPREFIX"><envar>$FRAMEWORKPREFIX</envar></link> and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FRAMEWORKS"><envar>$FRAMEWORKS</envar></link> variables -described above.) -</para> -</listitem> +            <para xmlns="http://www.scons.org/dbxsd/v1.0"> +                On Mac OS X with gcc, +                general user-supplied frameworks options to be added at +                the end of a command +                line building a loadable module. +                (This has been largely superseded by +                the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FRAMEWORKPATH"><envar>$FRAMEWORKPATH</envar></link>, <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FRAMEWORKPATHPREFIX"><envar>$FRAMEWORKPATHPREFIX</envar></link>, +                <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FRAMEWORKPREFIX"><envar>$FRAMEWORKPREFIX</envar></link> and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FRAMEWORKS"><envar>$FRAMEWORKS</envar></link> variables +                described above.) +            </para> +        </listitem>    </varlistentry>    <varlistentry id="cv-GS">      <term>GS</term> @@ -2940,6 +3032,15 @@ is <quote><literal>-dNOPAUSE -dBATCH -sDEVICE=pdfwrite</literal></quote>      <term>HOST_ARCH</term>      <listitem>  <para xmlns="http://www.scons.org/dbxsd/v1.0"> +        The name of the host hardware architecture used to create the Environment. +        If a platform is specified when creating the Environment, then +        that Platform's logic will handle setting this value. +        This value is immutable, and should not be changed by the user after +        the Environment is initialized. +        Currently only set for Win32. +</para> +     +<para xmlns="http://www.scons.org/dbxsd/v1.0">  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. @@ -2955,16 +3056,7 @@ Valid values are the same as for <envar xmlns="http://www.scons.org/dbxsd/v1.0">  This is currently only used on Windows, but in the future it will be  used on other OSes as well.  </para> - -<para xmlns="http://www.scons.org/dbxsd/v1.0"> -        The name of the host hardware architecture used to create the Environment. -        If a platform is specified when creating the Environment, then -        that Platform's logic will handle setting this value. -        This value is immutable, and should not be changed by the user after -        the Environment is initialized. -        Currently only set for Win32. -</para> -    </listitem> +</listitem>    </varlistentry>    <varlistentry id="cv-HOST_OS">      <term>HOST_OS</term> @@ -3087,7 +3179,7 @@ env = Environment(IMPLICIT_COMMAND_DEPENDENCIES = 0)  <para xmlns="http://www.scons.org/dbxsd/v1.0">  The prefix used to specify an include directory on the C compiler command  line. -This will be appended to the beginning of each directory +This will be prepended to the beginning of each directory  in the <envar xmlns="http://www.scons.org/dbxsd/v1.0">$CPPPATH</envar> and <envar xmlns="http://www.scons.org/dbxsd/v1.0">$FORTRANPATH</envar> construction variables  when the <envar xmlns="http://www.scons.org/dbxsd/v1.0">$_CPPINCFLAGS</envar> and <envar xmlns="http://www.scons.org/dbxsd/v1.0">$_FORTRANINCFLAGS</envar>  variables are automatically generated. @@ -3206,7 +3298,7 @@ The command line used to call the Java archive tool.  <para xmlns="http://www.scons.org/dbxsd/v1.0">  The string displayed when the Java archive tool  is called -If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-JARCOM"><envar>$JARCOM</envar></link> (the command line) is displayed. +If this is not set, then <envar xmlns="http://www.scons.org/dbxsd/v1.0">$JARCOM</envar> (the command line) is displayed.  </para>  <example_commands xmlns="http://www.scons.org/dbxsd/v1.0"> @@ -3216,7 +3308,7 @@ env = Environment(JARCOMSTR = "JARchiving $SOURCES into $TARGET")  <para xmlns="http://www.scons.org/dbxsd/v1.0">  The string displayed when the Java archive tool  is called -If this is not set, then <envar xmlns="http://www.scons.org/dbxsd/v1.0">$JARCOM</envar> (the command line) is displayed. +If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-JARCOM"><envar>$JARCOM</envar></link> (the command line) is displayed.  </para>  <example_commands xmlns="http://www.scons.org/dbxsd/v1.0"> @@ -3265,107 +3357,111 @@ by default.    <varlistentry id="cv-JAVABOOTCLASSPATH">      <term>JAVABOOTCLASSPATH</term>      <listitem> -<para xmlns="http://www.scons.org/dbxsd/v1.0"> -Specifies the list of directories that -will be added to the -<application xmlns="http://www.scons.org/dbxsd/v1.0">javac</application> command line -via the <option>-bootclasspath</option> option. -The individual directory names will be -separated by the operating system's path separate character -(<filename>:</filename> on UNIX/Linux/POSIX, -<filename>;</filename> on Windows). -</para> -</listitem> +            <para xmlns="http://www.scons.org/dbxsd/v1.0"> +                Specifies the list of directories that +                will be added to the +                <application xmlns="http://www.scons.org/dbxsd/v1.0">javac</application> command line +                via the <option>-bootclasspath</option> option. +                The individual directory names will be +                separated by the operating system's path separate character +                (<filename>:</filename> on UNIX/Linux/POSIX, +                <filename>;</filename> +                on Windows). +            </para> +        </listitem>    </varlistentry>    <varlistentry id="cv-JAVAC">      <term>JAVAC</term>      <listitem> -<para xmlns="http://www.scons.org/dbxsd/v1.0"> -The Java compiler. -</para> -</listitem> +            <para xmlns="http://www.scons.org/dbxsd/v1.0"> +                The Java compiler. +            </para> +        </listitem>    </varlistentry>    <varlistentry id="cv-JAVACCOM">      <term>JAVACCOM</term>      <listitem> -<para xmlns="http://www.scons.org/dbxsd/v1.0"> -The command line used to compile a directory tree containing -Java source files to -corresponding Java class files. -Any options specified in the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-JAVACFLAGS"><envar>$JAVACFLAGS</envar></link> construction variable -are included on this command line. -</para> -</listitem> +            <para xmlns="http://www.scons.org/dbxsd/v1.0"> +                The command line used to compile a directory tree containing +                Java source files to +                corresponding Java class files. +                Any options specified in the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-JAVACFLAGS"><envar>$JAVACFLAGS</envar></link> construction variable +                are included on this command line. +            </para> +        </listitem>    </varlistentry>    <varlistentry id="cv-JAVACCOMSTR">      <term>JAVACCOMSTR</term>      <listitem> -<para xmlns="http://www.scons.org/dbxsd/v1.0"> -The string displayed when compiling -a directory tree of Java source files to -corresponding Java class files. -If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-JAVACCOM"><envar>$JAVACCOM</envar></link> (the command line) is displayed. -</para> +            <para xmlns="http://www.scons.org/dbxsd/v1.0"> +                The string displayed when compiling +                a directory tree of Java source files to +                corresponding Java class files. +                If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-JAVACCOM"><envar>$JAVACCOM</envar></link> (the command line) is displayed. +            </para> -<example_commands xmlns="http://www.scons.org/dbxsd/v1.0"> -env = Environment(JAVACCOMSTR = "Compiling class files $TARGETS from $SOURCES") -</example_commands> -</listitem> +            <example_commands xmlns="http://www.scons.org/dbxsd/v1.0"> +                env = Environment(JAVACCOMSTR = "Compiling class files $TARGETS from $SOURCES") +            </example_commands> +        </listitem>    </varlistentry>    <varlistentry id="cv-JAVACFLAGS">      <term>JAVACFLAGS</term>      <listitem> -<para xmlns="http://www.scons.org/dbxsd/v1.0"> -General options that are passed to the Java compiler. -</para> -</listitem> +            <para xmlns="http://www.scons.org/dbxsd/v1.0"> +                General options that are passed to the Java compiler. +            </para> +        </listitem>    </varlistentry>    <varlistentry id="cv-JAVACLASSDIR">      <term>JAVACLASSDIR</term>      <listitem> -<para xmlns="http://www.scons.org/dbxsd/v1.0"> -The directory in which Java class files may be found. -This is stripped from the beginning of any Java .class -file names supplied to the -<literal>JavaH</literal> -builder. -</para> -</listitem> +            <para xmlns="http://www.scons.org/dbxsd/v1.0"> +                The directory in which Java class files may be found. +                This is stripped from the beginning of any Java .class +                file names supplied to the +                <literal>JavaH</literal> +                builder. +            </para> +        </listitem>    </varlistentry>    <varlistentry id="cv-JAVACLASSPATH">      <term>JAVACLASSPATH</term>      <listitem> -<para xmlns="http://www.scons.org/dbxsd/v1.0"> -Specifies the list of directories that -will be searched for Java -<filename>.class</filename> file. -The directories in this list will be added to the -<application xmlns="http://www.scons.org/dbxsd/v1.0">javac</application> and <application xmlns="http://www.scons.org/dbxsd/v1.0">javah</application> command lines -via the <option>-classpath</option> option. -The individual directory names will be -separated by the operating system's path separate character -(<filename>:</filename> on UNIX/Linux/POSIX, -<filename>;</filename> on Windows). -</para> +            <para xmlns="http://www.scons.org/dbxsd/v1.0"> +                Specifies the list of directories that +                will be searched for Java +                <filename>.class</filename> +                file. +                The directories in this list will be added to the +                <application xmlns="http://www.scons.org/dbxsd/v1.0">javac</application> and <application xmlns="http://www.scons.org/dbxsd/v1.0">javah</application> command lines +                via the <option>-classpath</option> option. +                The individual directory names will be +                separated by the operating system's path separate character +                (<filename>:</filename> on UNIX/Linux/POSIX, +                <filename>;</filename> +                on Windows). +            </para> -<para xmlns="http://www.scons.org/dbxsd/v1.0"> -Note that this currently just adds the specified -directory via the <option>-classpath</option> option. -<application xmlns="http://www.scons.org/dbxsd/v1.0">SCons</application> does not currently search the -<envar xmlns="http://www.scons.org/dbxsd/v1.0">$JAVACLASSPATH</envar> directories for dependency -<filename>.class</filename> files. -</para> -</listitem> +            <para xmlns="http://www.scons.org/dbxsd/v1.0"> +                Note that this currently just adds the specified +                directory via the <option>-classpath</option> option. +                <application xmlns="http://www.scons.org/dbxsd/v1.0">SCons</application> does not currently search the +                <envar xmlns="http://www.scons.org/dbxsd/v1.0">$JAVACLASSPATH</envar> directories for dependency +                <filename>.class</filename> +                files. +            </para> +        </listitem>    </varlistentry>    <varlistentry id="cv-JAVACLASSSUFFIX">      <term>JAVACLASSSUFFIX</term>      <listitem> -<para xmlns="http://www.scons.org/dbxsd/v1.0"> -The suffix for Java class files; -<filename>.class</filename> -by default. -</para> -</listitem> +            <para xmlns="http://www.scons.org/dbxsd/v1.0"> +                The suffix for Java class files; +                <filename>.class</filename> +                by default. +            </para> +        </listitem>    </varlistentry>    <varlistentry id="cv-JAVAH">      <term>JAVAH</term> @@ -3409,65 +3505,77 @@ for Java classes.  </para>  </listitem>    </varlistentry> +  <varlistentry id="cv-JAVAINCLUDES"> +    <term>JAVAINCLUDES</term> +    <listitem> +            <para xmlns="http://www.scons.org/dbxsd/v1.0"> +                Include path for Java header files (such as jni.h) +            </para> +        </listitem> +  </varlistentry>    <varlistentry id="cv-JAVASOURCEPATH">      <term>JAVASOURCEPATH</term>      <listitem> -<para xmlns="http://www.scons.org/dbxsd/v1.0"> -Specifies the list of directories that -will be searched for input -<filename>.java</filename> file. -The directories in this list will be added to the -<application xmlns="http://www.scons.org/dbxsd/v1.0">javac</application> command line -via the <option>-sourcepath</option> option. -The individual directory names will be -separated by the operating system's path separate character -(<filename>:</filename> on UNIX/Linux/POSIX, -<filename>;</filename> on Windows). -</para> +            <para xmlns="http://www.scons.org/dbxsd/v1.0"> +                Specifies the list of directories that +                will be searched for input +                <filename>.java</filename> +                file. +                The directories in this list will be added to the +                <application xmlns="http://www.scons.org/dbxsd/v1.0">javac</application> command line +                via the <option>-sourcepath</option> option. +                The individual directory names will be +                separated by the operating system's path separate character +                (<filename>:</filename> on UNIX/Linux/POSIX, +                <filename>;</filename> +                on Windows). +            </para> -<para xmlns="http://www.scons.org/dbxsd/v1.0"> -Note that this currently just adds the specified -directory via the <option>-sourcepath</option> option. -<application xmlns="http://www.scons.org/dbxsd/v1.0">SCons</application> does not currently search the -<envar xmlns="http://www.scons.org/dbxsd/v1.0">$JAVASOURCEPATH</envar> directories for dependency -<filename>.java</filename> files. -</para> -</listitem> +            <para xmlns="http://www.scons.org/dbxsd/v1.0"> +                Note that this currently just adds the specified +                directory via the <option>-sourcepath</option> option. +                <application xmlns="http://www.scons.org/dbxsd/v1.0">SCons</application> does not currently search the +                <envar xmlns="http://www.scons.org/dbxsd/v1.0">$JAVASOURCEPATH</envar> directories for dependency +                <filename>.java</filename> +                files. +            </para> +        </listitem>    </varlistentry>    <varlistentry id="cv-JAVASUFFIX">      <term>JAVASUFFIX</term>      <listitem> -<para xmlns="http://www.scons.org/dbxsd/v1.0"> -The suffix for Java files; -<filename>.java</filename> -by default. -</para> -</listitem> +            <para xmlns="http://www.scons.org/dbxsd/v1.0"> +                The suffix for Java files; +                <filename>.java</filename> +                by default. +            </para> +        </listitem>    </varlistentry>    <varlistentry id="cv-JAVAVERSION">      <term>JAVAVERSION</term>      <listitem> -<para xmlns="http://www.scons.org/dbxsd/v1.0"> -Specifies the Java version being used by the <function xmlns="http://www.scons.org/dbxsd/v1.0">Java</function> builder. -This is <emphasis>not</emphasis> currently used to select one -version of the Java compiler vs. another. -Instead, you should set this to specify the version of Java -supported by your <application xmlns="http://www.scons.org/dbxsd/v1.0">javac</application> compiler. -The default is <literal>1.4</literal>. -</para> +            <para xmlns="http://www.scons.org/dbxsd/v1.0"> +                Specifies the Java version being used by the <function xmlns="http://www.scons.org/dbxsd/v1.0">Java</function> builder. +                This is <emphasis>not</emphasis> currently used to select one +                version of the Java compiler vs. another. +                Instead, you should set this to specify the version of Java +                supported by your <application xmlns="http://www.scons.org/dbxsd/v1.0">javac</application> compiler. +                The default is <literal>1.4</literal>. +            </para> -<para xmlns="http://www.scons.org/dbxsd/v1.0"> -This is sometimes necessary because -Java 1.5 changed the file names that are created -for nested anonymous inner classes, -which can cause a mismatch with the files -that <application xmlns="http://www.scons.org/dbxsd/v1.0">SCons</application> expects will be generated by the <application xmlns="http://www.scons.org/dbxsd/v1.0">javac</application> compiler. -Setting <envar xmlns="http://www.scons.org/dbxsd/v1.0">$JAVAVERSION</envar> to <literal>1.5</literal> -(or <literal>1.6</literal>, as appropriate) -can make <application xmlns="http://www.scons.org/dbxsd/v1.0">SCons</application> realize that a Java 1.5 or 1.6 -build is actually up to date. -</para> -</listitem> +            <para xmlns="http://www.scons.org/dbxsd/v1.0"> +                This is sometimes necessary because +                Java 1.5 changed the file names that are created +                for nested anonymous inner classes, +                which can cause a mismatch with the files +                that <application xmlns="http://www.scons.org/dbxsd/v1.0">SCons</application> expects will be generated by the <application xmlns="http://www.scons.org/dbxsd/v1.0">javac</application> compiler. +                Setting <envar xmlns="http://www.scons.org/dbxsd/v1.0">$JAVAVERSION</envar> to +                <literal>1.5</literal> +                (or <literal>1.6</literal>, as appropriate) +                can make <application xmlns="http://www.scons.org/dbxsd/v1.0">SCons</application> realize that a Java 1.5 or 1.6 +                build is actually up to date. +            </para> +        </listitem>    </varlistentry>    <varlistentry id="cv-LATEX">      <term>LATEX</term> @@ -3690,6 +3798,14 @@ General options passed to the lexical analyzer generator.  </para>  </listitem>    </varlistentry> +  <varlistentry id="cv-LEXUNISTD"> +    <term>LEXUNISTD</term> +    <listitem> +<para xmlns="http://www.scons.org/dbxsd/v1.0"> +Used only on windows environments to set a lex flag to prevent 'unistd.h' from being included. The default value is '--nounistd'. +</para> +</listitem> +  </varlistentry>    <varlistentry id="cv-_LIBDIRFLAGS">      <term>_LIBDIRFLAGS</term>      <listitem> @@ -3698,7 +3814,7 @@ An automatically-generated construction variable  containing the linker command-line options  for specifying directories to be searched for library.  The value of <envar xmlns="http://www.scons.org/dbxsd/v1.0">$_LIBDIRFLAGS</envar> is created -by appending <envar xmlns="http://www.scons.org/dbxsd/v1.0">$LIBDIRPREFIX</envar> and <envar xmlns="http://www.scons.org/dbxsd/v1.0">$LIBDIRSUFFIX</envar> +by respectively prepending and appending <envar xmlns="http://www.scons.org/dbxsd/v1.0">$LIBDIRPREFIX</envar> and <envar xmlns="http://www.scons.org/dbxsd/v1.0">$LIBDIRSUFFIX</envar>  to the beginning and end  of each directory in <envar xmlns="http://www.scons.org/dbxsd/v1.0">$LIBPATH</envar>.  </para> @@ -3709,7 +3825,7 @@ of each directory in <envar xmlns="http://www.scons.org/dbxsd/v1.0">$LIBPATH</en      <listitem>  <para xmlns="http://www.scons.org/dbxsd/v1.0">  The prefix used to specify a library directory on the linker command line. -This will be appended to the beginning of each directory +This will be prepended to the beginning of each directory  in the <envar xmlns="http://www.scons.org/dbxsd/v1.0">$LIBPATH</envar> construction variable  when the <envar xmlns="http://www.scons.org/dbxsd/v1.0">$_LIBDIRFLAGS</envar> variable is automatically generated.  </para> @@ -3742,7 +3858,7 @@ An automatically-generated construction variable  containing the linker command-line options  for specifying libraries to be linked with the resulting target.  The value of <envar xmlns="http://www.scons.org/dbxsd/v1.0">$_LIBFLAGS</envar> is created -by appending <envar xmlns="http://www.scons.org/dbxsd/v1.0">$LIBLINKPREFIX</envar> and <envar xmlns="http://www.scons.org/dbxsd/v1.0">$LIBLINKSUFFIX</envar> +by respectively prepending and appending <envar xmlns="http://www.scons.org/dbxsd/v1.0">$LIBLINKPREFIX</envar> and <envar xmlns="http://www.scons.org/dbxsd/v1.0">$LIBLINKSUFFIX</envar>  to the beginning and end  of each filename in <envar xmlns="http://www.scons.org/dbxsd/v1.0">$LIBS</envar>.  </para> @@ -3753,7 +3869,7 @@ of each filename in <envar xmlns="http://www.scons.org/dbxsd/v1.0">$LIBS</envar>      <listitem>  <para xmlns="http://www.scons.org/dbxsd/v1.0">  The prefix used to specify a library to link on the linker command line. -This will be appended to the beginning of each library +This will be prepended to the beginning of each library  in the <envar xmlns="http://www.scons.org/dbxsd/v1.0">$LIBS</envar> construction variable  when the <envar xmlns="http://www.scons.org/dbxsd/v1.0">$_LIBFLAGS</envar> variable is automatically generated.  </para> @@ -3807,7 +3923,7 @@ through the automatically-generated  <envar xmlns="http://www.scons.org/dbxsd/v1.0">$_LIBDIRFLAGS</envar>  construction variable,  which is constructed by -appending the values of the +respectively prepending and appending the values of the  <envar xmlns="http://www.scons.org/dbxsd/v1.0">$LIBDIRPREFIX</envar> and <envar xmlns="http://www.scons.org/dbxsd/v1.0">$LIBDIRSUFFIX</envar>  construction variables  to the beginning and end @@ -3863,7 +3979,7 @@ through the automatically-generated  <envar xmlns="http://www.scons.org/dbxsd/v1.0">$_LIBFLAGS</envar>  construction variable,  which is constructed by -appending the values of the +respectively prepending and appending the values of the  <envar xmlns="http://www.scons.org/dbxsd/v1.0">$LIBLINKPREFIX</envar> and <envar xmlns="http://www.scons.org/dbxsd/v1.0">$LIBLINKSUFFIX</envar>  construction variables  to the beginning and end @@ -3930,10 +4046,10 @@ and these suffixes.      <term>LICENSE</term>      <listitem>  <para xmlns="http://www.scons.org/dbxsd/v1.0"> -The abbreviated name of the license under which -this project is released (gpl, lpgl, bsd etc.). +The abbreviated name, preferably the SPDX code, of the license under which +this project is released (GPL-3.0, LGPL-2.1, BSD-2-Clause etc.).  See http://www.opensource.org/licenses/alphabetical -for a list of license names. +for a list of license names and SPDX codes.  </para>  </listitem>    </varlistentry> @@ -4379,6 +4495,8 @@ constructor; setting it later has no effect.  <para xmlns="http://www.scons.org/dbxsd/v1.0">  Valid values for Windows are +<literal>14.2</literal>, +<literal>14.1</literal>,  <literal>14.0</literal>,  <literal>14.0Exp</literal>,  <literal>12.0</literal>, @@ -4402,254 +4520,311 @@ Versions ending in <literal>Exp</literal> refer to "Express" or    </varlistentry>    <varlistentry id="cv-MSVS">      <term>MSVS</term> -    <listitem> <para xmlns="http://www.scons.org/dbxsd/v1.0"> -When the Microsoft Visual Studio tools are initialized, they set up this -dictionary with the following keys: </para><variablelist xmlns="http://www.scons.org/dbxsd/v1.0"> -    <varlistentry> -      <term>VERSION</term> - -      <listitem> -        <para>the version of MSVS being used (can be set via -        <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-MSVS_VERSION"><envar>$MSVS_VERSION</envar></link>)</para> -      </listitem> -    </varlistentry> - -    <varlistentry> -      <term>VERSIONS</term> - -      <listitem> -        <para>the available versions of MSVS installed</para> -      </listitem> -    </varlistentry> - -    <varlistentry> -      <term>VCINSTALLDIR</term> - -      <listitem> -        <para>installed directory of Visual C++</para> -      </listitem> -    </varlistentry> - -    <varlistentry> -      <term>VSINSTALLDIR</term> - -      <listitem> -        <para>installed directory of Visual Studio</para> -      </listitem> -    </varlistentry> - -    <varlistentry> -      <term>FRAMEWORKDIR</term> - -      <listitem> -        <para>installed directory of the .NET framework</para> -      </listitem> -    </varlistentry> - -    <varlistentry> -      <term>FRAMEWORKVERSIONS</term> - -      <listitem> -        <para>list of installed versions of the .NET framework, sorted -        latest to oldest.</para> -      </listitem> -    </varlistentry> - -    <varlistentry> -      <term>FRAMEWORKVERSION</term> - -      <listitem> -        <para>latest installed version of the .NET -        framework</para> -      </listitem> -    </varlistentry> - -    <varlistentry> -      <term>FRAMEWORKSDKDIR</term> - -      <listitem> -        <para>installed location of the .NET SDK.</para> -      </listitem> -    </varlistentry> - -    <varlistentry> -      <term>PLATFORMSDKDIR</term> - -      <listitem> -        <para>installed location of the Platform SDK.</para> -      </listitem> -    </varlistentry> - -    <varlistentry> -      <term>PLATFORMSDK_MODULES</term> - -      <listitem> -        <para>dictionary of installed Platform SDK modules, where the -        dictionary keys are keywords for the various modules, and the values -        are 2-tuples where the first is the release date, and the second is -        the version number.</para> -      </listitem> -    </varlistentry> -  </variablelist><para xmlns="http://www.scons.org/dbxsd/v1.0">If a value isn't set, it wasn't available in the -registry.</para></listitem> +    <listitem> +      <para xmlns="http://www.scons.org/dbxsd/v1.0"> +        When the Microsoft Visual Studio tools are initialized, +        they set up this dictionary with the following keys: +      </para> +      <variablelist xmlns="http://www.scons.org/dbxsd/v1.0"> +        <varlistentry> +          <term>VERSION</term> <listitem> +            <para>the version of MSVS being used (can be set via +            <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-MSVS_VERSION"><envar>$MSVS_VERSION</envar></link>)</para> +          </listitem> +        </varlistentry> <varlistentry> +          <term>VERSIONS</term> <listitem> +            <para>the available versions of MSVS installed</para> +          </listitem> +        </varlistentry> <varlistentry> +          <term>VCINSTALLDIR</term> <listitem> +            <para>installed directory of Visual C++</para> +          </listitem> +        </varlistentry> <varlistentry> +          <term>VSINSTALLDIR</term> <listitem> +            <para>installed directory of Visual Studio</para> +          </listitem> +        </varlistentry> <varlistentry> +          <term>FRAMEWORKDIR</term> <listitem> +            <para>installed directory of the .NET framework</para> +          </listitem> +        </varlistentry> <varlistentry> +          <term>FRAMEWORKVERSIONS</term> <listitem> +            <para> +              list of installed versions of the .NET framework, +              sorted latest to oldest. +            </para> +          </listitem> +        </varlistentry> +        <varlistentry> +          <term>FRAMEWORKVERSION</term> +          <listitem> +            <para>latest installed version of the .NET framework</para> +          </listitem> +        </varlistentry> +        <varlistentry> +          <term>FRAMEWORKSDKDIR</term> +          <listitem> +            <para>installed location of the .NET SDK.</para> +          </listitem> +        </varlistentry> +        <varlistentry> +          <term>PLATFORMSDKDIR</term> +          <listitem> +            <para>installed location of the Platform SDK.</para> +          </listitem> +        </varlistentry> +        <varlistentry> +          <term>PLATFORMSDK_MODULES</term> +          <listitem> +            <para> +              dictionary of installed Platform SDK modules, where the +              dictionary keys are keywords for the various modules, +              and the values are 2-tuples where the first is the +              release date, and the second is the version number. +            </para> +          </listitem> +        </varlistentry> +      </variablelist> +      <para xmlns="http://www.scons.org/dbxsd/v1.0">If a value is not set, it was not available in the registry.</para> +    </listitem>    </varlistentry>    <varlistentry id="cv-MSVS_ARCH">      <term>MSVS_ARCH</term> -    <listitem> <para xmlns="http://www.scons.org/dbxsd/v1.0">Sets -the architecture for which the generated project(s) should build. </para> -<para xmlns="http://www.scons.org/dbxsd/v1.0">The default value is <literal>x86</literal>. <literal>amd64</literal> is -also supported by <application xmlns="http://www.scons.org/dbxsd/v1.0">SCons</application> for some Visual Studio versions. Trying to set -<envar xmlns="http://www.scons.org/dbxsd/v1.0">$MSVS_ARCH</envar> to an architecture that's not supported for a given Visual -Studio version will generate an error. </para> </listitem> +    <listitem> +      <para xmlns="http://www.scons.org/dbxsd/v1.0">Sets the architecture for which the generated project(s) should build.</para> +      <para xmlns="http://www.scons.org/dbxsd/v1.0"> +        The default value is <literal>x86</literal>. +        <literal>amd64</literal> is also supported by <application xmlns="http://www.scons.org/dbxsd/v1.0">SCons</application> for +        most Visual Studio versions. Since Visual Studio 2015 +        <literal>arm</literal> is supported, and since Visual Studio +        2017 <literal>arm64</literal> is supported. +        Trying to set <envar xmlns="http://www.scons.org/dbxsd/v1.0">$MSVS_ARCH</envar> +        to an architecture that's not supported for a given Visual +        Studio version will generate an error. +      </para> +    </listitem>    </varlistentry>    <varlistentry id="cv-MSVS_PROJECT_GUID">      <term>MSVS_PROJECT_GUID</term> -    <listitem> <para xmlns="http://www.scons.org/dbxsd/v1.0">The string placed in a generated +    <listitem> +      <para xmlns="http://www.scons.org/dbxsd/v1.0"> +        The string placed in a generated  Microsoft Visual Studio project file as the value of the -<literal>ProjectGUID</literal> attribute. There is no default value. If not -defined, a new GUID is generated. </para> </listitem> +        <literal>ProjectGUID</literal> attribute. There is no default +        value. If not +defined, a new GUID is generated. + +      </para> +    </listitem>    </varlistentry>    <varlistentry id="cv-MSVS_SCC_AUX_PATH">      <term>MSVS_SCC_AUX_PATH</term> -    <listitem> <para xmlns="http://www.scons.org/dbxsd/v1.0">The path name placed in a generated +    <listitem> +      <para xmlns="http://www.scons.org/dbxsd/v1.0"> +        The path name placed in a generated  Microsoft Visual Studio project file as the value of the -<literal>SccAuxPath</literal> attribute if the -<envar>MSVS_SCC_PROVIDER</envar> construction variable is also set. There is -no default value. </para> </listitem> +        <literal>SccAuxPath</literal> attribute if the +        <envar>MSVS_SCC_PROVIDER</envar> construction variable is +        also set. There is +no default value. + +      </para> +    </listitem>    </varlistentry>    <varlistentry id="cv-MSVS_SCC_CONNECTION_ROOT">      <term>MSVS_SCC_CONNECTION_ROOT</term> -    <listitem> <para xmlns="http://www.scons.org/dbxsd/v1.0">The root path of projects in -your SCC workspace, i.e the path under which all project and solution files -will be generated. It is used as a reference path from which the relative -paths of the generated Microsoft Visual Studio project and solution files are -computed. The relative project file path is placed as the value of the -<literal>SccLocalPath</literal> attribute of the project file and as the -values of the -<literal>SccProjectFilePathRelativizedFromConnection[i]</literal> (where [i] -ranges from 0 to the number of projects in the solution) attributes of the -<literal>GlobalSection(SourceCodeControl)</literal> section of the Microsoft -Visual Studio solution file. Similarly the relative solution file path is -placed as the values of the <literal>SccLocalPath[i]</literal> (where [i] -ranges from 0 to the number of projects in the solution) attributes of the -<literal>GlobalSection(SourceCodeControl)</literal> section of the Microsoft -Visual Studio solution file. This is used only if the -<envar>MSVS_SCC_PROVIDER</envar> construction variable is also set. The -default value is the current working directory. </para> </listitem> +    <listitem> +      <para xmlns="http://www.scons.org/dbxsd/v1.0"> +        The root path of projects in your SCC workspace, i.e the +        path under which all project and solution files will be +        generated. It is used as a reference path from which the +        relative paths of the generated Microsoft Visual Studio project +        and solution files are computed. The relative project file path +        is placed as the value of the <literal>SccLocalPath</literal> +        attribute of the project file and as the values of the +        <literal>SccProjectFilePathRelativizedFromConnection[i]</literal> +        (where [i] ranges from 0 to the number of projects in the solution) +        attributes of the <literal>GlobalSection(SourceCodeControl)</literal> +        section of the Microsoft Visual Studio solution file. Similarly +        the relative solution file path is placed as the values of the +        <literal>SccLocalPath[i]</literal> (where [i] ranges from 0 +        to the number of projects in the solution) attributes of the +        <literal>GlobalSection(SourceCodeControl)</literal> section of +        the Microsoft Visual Studio solution file. This is used only if +        the <envar>MSVS_SCC_PROVIDER</envar> construction variable is +        also set. The default value is the current working directory. +      </para> +    </listitem>    </varlistentry>    <varlistentry id="cv-MSVS_SCC_PROJECT_NAME">      <term>MSVS_SCC_PROJECT_NAME</term> -    <listitem> <para xmlns="http://www.scons.org/dbxsd/v1.0">The project name placed in -a generated Microsoft Visual Studio project file as the value of the -<literal>SccProjectName</literal> attribute if the -<envar>MSVS_SCC_PROVIDER</envar> construction variable is also set. In this -case the string is also placed in the <literal>SccProjectName0</literal> -attribute of the <literal>GlobalSection(SourceCodeControl)</literal> section -of the Microsoft Visual Studio solution file. There is no default value. -</para> </listitem> +    <listitem> +      <para xmlns="http://www.scons.org/dbxsd/v1.0"> +        The project name placed in a generated Microsoft +        Visual Studio project file as the value of the +        <literal>SccProjectName</literal> attribute if the +        <envar>MSVS_SCC_PROVIDER</envar> construction variable +        is also set. In this case the string is also placed in +        the <literal>SccProjectName0</literal> attribute of the +        <literal>GlobalSection(SourceCodeControl)</literal> section +        of the Microsoft Visual Studio solution file. There is no +        default value. +      </para> +    </listitem>    </varlistentry>    <varlistentry id="cv-MSVS_SCC_PROVIDER">      <term>MSVS_SCC_PROVIDER</term> -    <listitem> <para xmlns="http://www.scons.org/dbxsd/v1.0">The -string placed in a generated Microsoft Visual Studio project file as the value -of the <literal>SccProvider</literal> attribute. The string is also placed in -the <literal>SccProvider0</literal> attribute of the -<literal>GlobalSection(SourceCodeControl)</literal> section of the Microsoft -Visual Studio solution file. There is no default value. </para> </listitem> +    <listitem> +      <para xmlns="http://www.scons.org/dbxsd/v1.0"> +        The string placed in a generated Microsoft +        Visual Studio project file as the value of the +        <literal>SccProvider</literal> attribute. The string is +        also placed in the <literal>SccProvider0</literal> attribute +        of the <literal>GlobalSection(SourceCodeControl)</literal> +        section of the Microsoft Visual Studio solution file. There +        is no default value. +      </para> +    </listitem>    </varlistentry>    <varlistentry id="cv-MSVS_VERSION">      <term>MSVS_VERSION</term> -    <listitem> <para xmlns="http://www.scons.org/dbxsd/v1.0">Sets the preferred version -of Microsoft Visual Studio to use. </para> <para xmlns="http://www.scons.org/dbxsd/v1.0">If <envar xmlns="http://www.scons.org/dbxsd/v1.0">$MSVS_VERSION</envar> is not -set, <application xmlns="http://www.scons.org/dbxsd/v1.0">SCons</application> will (by default) select the latest version of Visual Studio -installed on your system. So, if you have version 6 and version 7 (MSVS .NET) -installed, it will prefer version 7. You can override this by specifying the -<envar>MSVS_VERSION</envar> variable in the Environment initialization, -setting it to the appropriate version ('6.0' or '7.0', for example). If the -specified version isn't installed, tool initialization will fail. </para> -<para xmlns="http://www.scons.org/dbxsd/v1.0">This is obsolete: use <envar xmlns="http://www.scons.org/dbxsd/v1.0">$MSVC_VERSION</envar> instead. If <envar xmlns="http://www.scons.org/dbxsd/v1.0">$MSVS_VERSION</envar> is -set and <envar xmlns="http://www.scons.org/dbxsd/v1.0">$MSVC_VERSION</envar> is not, <envar xmlns="http://www.scons.org/dbxsd/v1.0">$MSVC_VERSION</envar> will be set automatically -to <envar xmlns="http://www.scons.org/dbxsd/v1.0">$MSVS_VERSION</envar>. If both are set to different values, scons will raise an -error. </para> </listitem> +    <listitem> +      <para xmlns="http://www.scons.org/dbxsd/v1.0">Sets the preferred version of Microsoft Visual Studio to use.</para> +      <para xmlns="http://www.scons.org/dbxsd/v1.0"> +        If <envar xmlns="http://www.scons.org/dbxsd/v1.0">$MSVS_VERSION</envar> is not set, <application xmlns="http://www.scons.org/dbxsd/v1.0">SCons</application> will (by default) +        select the latest version of Visual Studio installed on your +        system. So, if you have version 6 and version 7 (MSVS .NET) +        installed, it will prefer version 7. You can override this by +        specifying the <envar>MSVS_VERSION</envar> variable in the +        Environment initialization, setting it to the appropriate +        version ('6.0' or '7.0', for example). If the specified +        version isn't installed, tool initialization will fail. +      </para> +      <para xmlns="http://www.scons.org/dbxsd/v1.0"> +        This is obsolete: use <envar xmlns="http://www.scons.org/dbxsd/v1.0">$MSVC_VERSION</envar> instead. If +        <envar xmlns="http://www.scons.org/dbxsd/v1.0">$MSVS_VERSION</envar> is set and <envar xmlns="http://www.scons.org/dbxsd/v1.0">$MSVC_VERSION</envar> is +        not, <envar xmlns="http://www.scons.org/dbxsd/v1.0">$MSVC_VERSION</envar> will be set automatically to +        <envar xmlns="http://www.scons.org/dbxsd/v1.0">$MSVS_VERSION</envar>. If both are set to different values, +        scons will raise an error. +      </para> +    </listitem>    </varlistentry>    <varlistentry id="cv-MSVSBUILDCOM">      <term>MSVSBUILDCOM</term>      <listitem> -<para xmlns="http://www.scons.org/dbxsd/v1.0">The build command line placed in a generated Microsoft Visual Studio -project file. The default is to have Visual Studio invoke SCons with any -specified build targets. </para> </listitem> +      <para xmlns="http://www.scons.org/dbxsd/v1.0"> +        The build command line placed in a generated Microsoft Visual +        Studio project file. The default is to have Visual Studio +        invoke SCons with any specified build targets. +      </para> +    </listitem>    </varlistentry>    <varlistentry id="cv-MSVSCLEANCOM">      <term>MSVSCLEANCOM</term> -    <listitem> <para xmlns="http://www.scons.org/dbxsd/v1.0">The clean command line placed in a generated Microsoft Visual -Studio project file. The default is to have Visual Studio invoke SCons with -the -c option to remove any specified targets. </para> </listitem> +    <listitem> +      <para xmlns="http://www.scons.org/dbxsd/v1.0"> +        The clean command line placed in a generated Microsoft Visual +        Studio project file. The default is to have Visual Studio +        invoke SCons with the -c option to remove any specified +        targets. +      </para> +    </listitem>    </varlistentry>    <varlistentry id="cv-MSVSENCODING">      <term>MSVSENCODING</term> -    <listitem> <para xmlns="http://www.scons.org/dbxsd/v1.0">The encoding string placed in a -generated Microsoft Visual Studio project file. The default is encoding -<literal>Windows-1252</literal>. </para> </listitem> +    <listitem> +      <para xmlns="http://www.scons.org/dbxsd/v1.0"> +        The encoding string placed in a generated Microsoft +        Visual Studio project file. The default is encoding +        <literal>Windows-1252</literal>. +      </para> +    </listitem>    </varlistentry>    <varlistentry id="cv-MSVSPROJECTCOM">      <term>MSVSPROJECTCOM</term> -    <listitem> <para xmlns="http://www.scons.org/dbxsd/v1.0">The action used to generate Microsoft -Visual Studio project files. </para> </listitem> +    <listitem> +      <para xmlns="http://www.scons.org/dbxsd/v1.0">The action used to generate Microsoft Visual Studio project files.</para> +    </listitem>    </varlistentry>    <varlistentry id="cv-MSVSPROJECTSUFFIX">      <term>MSVSPROJECTSUFFIX</term> -    <listitem> <para xmlns="http://www.scons.org/dbxsd/v1.0">The suffix used for Microsoft Visual -Studio project (DSP) files. The default value is <filename>.vcproj</filename> -when using Visual Studio version 7.x (.NET) or later version, and -<filename>.dsp</filename> when using earlier versions of Visual Studio. -</para> </listitem> +    <listitem> +      <para xmlns="http://www.scons.org/dbxsd/v1.0"> +        The suffix used for Microsoft Visual Studio project (DSP) +        files. The default value is <filename>.vcproj</filename> +        when using Visual Studio version 7.x (.NET) or later version, +        and <filename>.dsp</filename> when using earlier versions of +        Visual Studio. +      </para> +    </listitem>    </varlistentry>    <varlistentry id="cv-MSVSREBUILDCOM">      <term>MSVSREBUILDCOM</term> -    <listitem> <para xmlns="http://www.scons.org/dbxsd/v1.0">The -rebuild command line placed in a generated Microsoft Visual Studio project -file. The default is to have Visual Studio invoke SCons with any specified -rebuild targets. </para> </listitem> +    <listitem> +      <para xmlns="http://www.scons.org/dbxsd/v1.0"> +        The rebuild command line placed in a generated Microsoft +        Visual Studio project file. The default is to have Visual +        Studio invoke SCons with any specified rebuild targets. + +      </para> +    </listitem>    </varlistentry>    <varlistentry id="cv-MSVSSCONS">      <term>MSVSSCONS</term>      <listitem> -<para xmlns="http://www.scons.org/dbxsd/v1.0">The SCons used in generated Microsoft Visual Studio project files. The -default is the version of SCons being used to generate the project file. -</para> </listitem> +      <para xmlns="http://www.scons.org/dbxsd/v1.0"> +        The SCons used in generated Microsoft Visual Studio project +        files. The default is the version of SCons being used to +        generate the project file. +      </para> +    </listitem>    </varlistentry>    <varlistentry id="cv-MSVSSCONSCOM">      <term>MSVSSCONSCOM</term> -    <listitem> <para xmlns="http://www.scons.org/dbxsd/v1.0">The default -SCons command used in generated Microsoft Visual Studio project files. </para> -</listitem> +    <listitem> +      <para xmlns="http://www.scons.org/dbxsd/v1.0"> +        The default SCons command used in generated Microsoft Visual +        Studio project files. +      </para> +    </listitem>    </varlistentry>    <varlistentry id="cv-MSVSSCONSCRIPT">      <term>MSVSSCONSCRIPT</term> -    <listitem> <para xmlns="http://www.scons.org/dbxsd/v1.0">The sconscript -file (that is, <filename xmlns="http://www.scons.org/dbxsd/v1.0">SConstruct</filename> or <filename xmlns="http://www.scons.org/dbxsd/v1.0">SConscript</filename> file) that will be invoked by -Visual Studio project files (through the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-MSVSSCONSCOM"><envar>$MSVSSCONSCOM</envar></link> variable). The -default is the same sconscript file that contains the call to <function xmlns="http://www.scons.org/dbxsd/v1.0">MSVSProject</function> -to build the project file. </para> </listitem> +    <listitem> +      <para xmlns="http://www.scons.org/dbxsd/v1.0"> +        The sconscript file (that is, <filename xmlns="http://www.scons.org/dbxsd/v1.0">SConstruct</filename> or <filename xmlns="http://www.scons.org/dbxsd/v1.0">SConscript</filename> +        file) that will be invoked by Visual Studio project files +        (through the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-MSVSSCONSCOM"><envar>$MSVSSCONSCOM</envar></link> variable). The default +        is the same sconscript file that contains the call to +        <function xmlns="http://www.scons.org/dbxsd/v1.0">MSVSProject</function> to build the project file. +      </para> +    </listitem>    </varlistentry>    <varlistentry id="cv-MSVSSCONSFLAGS">      <term>MSVSSCONSFLAGS</term> -    <listitem> <para xmlns="http://www.scons.org/dbxsd/v1.0">The -SCons flags used in generated Microsoft Visual Studio project files. </para> -</listitem> +    <listitem> +      <para xmlns="http://www.scons.org/dbxsd/v1.0"> +        The SCons flags used in generated Microsoft Visual Studio project files. +      </para> +    </listitem>    </varlistentry>    <varlistentry id="cv-MSVSSOLUTIONCOM">      <term>MSVSSOLUTIONCOM</term> -    <listitem> <para xmlns="http://www.scons.org/dbxsd/v1.0">The action used to generate Microsoft -Visual Studio solution files. </para> </listitem> +    <listitem> +      <para xmlns="http://www.scons.org/dbxsd/v1.0">The action used to generate Microsoft Visual Studio solution files.</para> +    </listitem>    </varlistentry>    <varlistentry id="cv-MSVSSOLUTIONSUFFIX">      <term>MSVSSOLUTIONSUFFIX</term> -    <listitem> <para xmlns="http://www.scons.org/dbxsd/v1.0">The suffix used for Microsoft -Visual Studio solution (DSW) files. The default value is -<filename>.sln</filename> when using Visual Studio version 7.x (.NET), and -<filename>.dsw</filename> when using earlier versions of Visual Studio. -</para> </listitem> +    <listitem> +      <para xmlns="http://www.scons.org/dbxsd/v1.0"> +        The suffix used for Microsoft Visual Studio solution (DSW) +        files. The default value is <filename>.sln</filename> +        when using Visual Studio version 7.x (.NET), and +        <filename>.dsw</filename> when using earlier versions of +        Visual Studio. +      </para> +    </listitem>    </varlistentry>    <varlistentry id="cv-MT">      <term>MT</term> @@ -5601,7 +5776,8 @@ containing the command-line options  for specifying directories to be searched  by the resource compiler.  The value of <envar xmlns="http://www.scons.org/dbxsd/v1.0">$RCINCFLAGS</envar> is created -by appending <envar xmlns="http://www.scons.org/dbxsd/v1.0">$RCINCPREFIX</envar> and <envar xmlns="http://www.scons.org/dbxsd/v1.0">$RCINCSUFFIX</envar> +by respectively prepending and appending +<envar xmlns="http://www.scons.org/dbxsd/v1.0">$RCINCPREFIX</envar> and <envar xmlns="http://www.scons.org/dbxsd/v1.0">$RCINCSUFFIX</envar>  to the beginning and end  of each directory in <envar xmlns="http://www.scons.org/dbxsd/v1.0">$CPPPATH</envar>.  </para> @@ -5613,7 +5789,7 @@ of each directory in <envar xmlns="http://www.scons.org/dbxsd/v1.0">$CPPPATH</en  <para xmlns="http://www.scons.org/dbxsd/v1.0">  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 +This will be prepended to the beginning of each directory  in the <envar xmlns="http://www.scons.org/dbxsd/v1.0">$CPPPATH</envar> construction variable  when the <envar xmlns="http://www.scons.org/dbxsd/v1.0">$RCINCFLAGS</envar> variable is expanded.  </para> @@ -5735,7 +5911,7 @@ An automatically-generated construction variable  containing the rpath flags to be used when linking  a program with shared libraries.  The value of <envar xmlns="http://www.scons.org/dbxsd/v1.0">$_RPATH</envar> is created -by appending <envar xmlns="http://www.scons.org/dbxsd/v1.0">$RPATHPREFIX</envar> and <envar xmlns="http://www.scons.org/dbxsd/v1.0">$RPATHSUFFIX</envar> +by respectively prepending <envar xmlns="http://www.scons.org/dbxsd/v1.0">$RPATHPREFIX</envar> and appending <envar xmlns="http://www.scons.org/dbxsd/v1.0">$RPATHSUFFIX</envar>  to the beginning and end  of each directory in <envar xmlns="http://www.scons.org/dbxsd/v1.0">$RPATH</envar>.  </para> @@ -5763,7 +5939,7 @@ path, you must make it absolute yourself.  <para xmlns="http://www.scons.org/dbxsd/v1.0">  The prefix used to specify a directory to be searched for  shared libraries when running programs. -This will be appended to the beginning of each directory +This will be prepended to the beginning of each directory  in the <envar xmlns="http://www.scons.org/dbxsd/v1.0">$RPATH</envar> construction variable  when the <envar xmlns="http://www.scons.org/dbxsd/v1.0">$_RPATH</envar> variable is automatically generated.  </para> @@ -5863,11 +6039,15 @@ below, for more information.    </varlistentry>    <varlistentry id="cv-SCONS_HOME">      <term>SCONS_HOME</term> -    <listitem> <para xmlns="http://www.scons.org/dbxsd/v1.0">The -(optional) path to the SCons library directory, initialized from the external -environment. If set, this is used to construct a shorter and more efficient -search path in the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-MSVSSCONS"><envar>$MSVSSCONS</envar></link> command line executed from Microsoft -Visual Studio project files. </para> </listitem> +    <listitem> +      <para xmlns="http://www.scons.org/dbxsd/v1.0"> +        The (optional) path to the SCons library directory, +        initialized from the external environment. If set, this is +        used to construct a shorter and more efficient search path in +        the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-MSVSSCONS"><envar>$MSVSSCONS</envar></link> command line executed from Microsoft +        Visual Studio project files. +      </para> +    </listitem>    </varlistentry>    <varlistentry id="cv-SHCC">      <term>SHCC</term> @@ -6610,16 +6790,6 @@ Example <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHLIBVERSION">  </para>  </listitem>    </varlistentry> -  <varlistentry id="cv-SHLIBVERSIONFLAGS"> -    <term>SHLIBVERSIONFLAGS</term> -    <listitem> -<para xmlns="http://www.scons.org/dbxsd/v1.0"> -Extra flags added to <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHLINKCOM"><envar>$SHLINKCOM</envar></link> when building versioned -<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-SharedLibrary"><function>SharedLibrary</function></link>. These flags are only used when <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHLIBVERSION"><envar>$SHLIBVERSION</envar></link> is -set. -</para> -</listitem> -  </varlistentry>    <varlistentry id="cv-_SHLIBVERSIONFLAGS">      <term>_SHLIBVERSIONFLAGS</term>      <listitem> @@ -6633,6 +6803,16 @@ and some extra dynamically generated options (such as  </para>  </listitem>    </varlistentry> +  <varlistentry id="cv-SHLIBVERSIONFLAGS"> +    <term>SHLIBVERSIONFLAGS</term> +    <listitem> +<para xmlns="http://www.scons.org/dbxsd/v1.0"> +Extra flags added to <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHLINKCOM"><envar>$SHLINKCOM</envar></link> when building versioned +<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-SharedLibrary"><function>SharedLibrary</function></link>. These flags are only used when <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHLIBVERSION"><envar>$SHLIBVERSION</envar></link> is +set. +</para> +</listitem> +  </varlistentry>    <varlistentry id="cv-SHLINK">      <term>SHLINK</term>      <listitem> @@ -6935,7 +7115,8 @@ An automatically-generated construction variable  containing the SWIG command-line options  for specifying directories to be searched for included files.  The value of <envar xmlns="http://www.scons.org/dbxsd/v1.0">$_SWIGINCFLAGS</envar> is created -by appending <envar xmlns="http://www.scons.org/dbxsd/v1.0">$SWIGINCPREFIX</envar> and <envar xmlns="http://www.scons.org/dbxsd/v1.0">$SWIGINCSUFFIX</envar> +by respectively prepending and appending +<envar xmlns="http://www.scons.org/dbxsd/v1.0">$SWIGINCPREFIX</envar> and <envar xmlns="http://www.scons.org/dbxsd/v1.0">$SWIGINCSUFFIX</envar>  to the beginning and end  of each directory in <envar xmlns="http://www.scons.org/dbxsd/v1.0">$SWIGPATH</envar>.  </para> @@ -6946,7 +7127,7 @@ of each directory in <envar xmlns="http://www.scons.org/dbxsd/v1.0">$SWIGPATH</e      <listitem>  <para xmlns="http://www.scons.org/dbxsd/v1.0">  The prefix used to specify an include directory on the SWIG command line. -This will be appended to the beginning of each directory +This will be prepended to the beginning of each directory  in the <envar xmlns="http://www.scons.org/dbxsd/v1.0">$SWIGPATH</envar> construction variable  when the <envar xmlns="http://www.scons.org/dbxsd/v1.0">$_SWIGINCFLAGS</envar> variable is automatically generated.  </para> @@ -7020,7 +7201,7 @@ through the automatically-generated  <envar xmlns="http://www.scons.org/dbxsd/v1.0">$_SWIGINCFLAGS</envar>  construction variable,  which is constructed by -appending the values of the +respectively prepending and appending the values of the  <envar xmlns="http://www.scons.org/dbxsd/v1.0">$SWIGINCPREFIX</envar> and <envar xmlns="http://www.scons.org/dbxsd/v1.0">$SWIGINCSUFFIX</envar>  construction variables  to the beginning and end @@ -7095,6 +7276,13 @@ that may not be set or used in a construction environment.      <term>TARGET_ARCH</term>      <listitem>  <para xmlns="http://www.scons.org/dbxsd/v1.0"> +        The name of the target hardware architecture for the compiled objects +        created by this Environment. +        This defaults to the value of HOST_ARCH, and the user can override it. +        Currently only set for Win32. +</para> +     +<para xmlns="http://www.scons.org/dbxsd/v1.0">  Sets the target architecture for Visual Studio compiler (i.e. the arch  of the binaries generated by the compiler). If not set, default to  <envar xmlns="http://www.scons.org/dbxsd/v1.0">$HOST_ARCH</envar>, or, if that is unset, to the architecture of the @@ -7104,29 +7292,28 @@ 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. +If this is set and MSVC_VERSION is not set, this will search for  +all installed MSVC's that support the TARGET_ARCH, selecting the  +latest version for use.  </para>  <para xmlns="http://www.scons.org/dbxsd/v1.0">  Valid values for Windows are  <literal>x86</literal>, +<literal>arm</literal>,  <literal>i386</literal>  (for 32 bits);   <literal>amd64</literal>, +<literal>arm64</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> - -<para xmlns="http://www.scons.org/dbxsd/v1.0"> -        The name of the target hardware architecture for the compiled objects -        created by this Environment. -        This defaults to the value of HOST_ARCH, and the user can override it. -        Currently only set for Win32. -</para> -    </listitem> +</listitem>    </varlistentry>    <varlistentry id="cv-TARGET_OS">      <term>TARGET_OS</term> @@ -7157,19 +7344,45 @@ The suffix used for tar file names.  </para>  </listitem>    </varlistentry> +  <varlistentry id="cv-TEMPFILEARGJOIN"> +    <term>TEMPFILEARGJOIN</term> +    <listitem> +<para xmlns="http://www.scons.org/dbxsd/v1.0"> +The string (or character) to be used to join the arguments passed to TEMPFILE when command line exceeds the limit set by <envar xmlns="http://www.scons.org/dbxsd/v1.0">$MAXLINELENGTH</envar>. +The default value is a space. However for MSVC, MSLINK the default is a line seperator characters as defined by os.linesep. +Note this value is used literally and not expanded by the subst logic. +</para> +</listitem> +  </varlistentry>    <varlistentry id="cv-TEMPFILEPREFIX">      <term>TEMPFILEPREFIX</term>      <listitem>  <para xmlns="http://www.scons.org/dbxsd/v1.0">  The prefix for a temporary file used -to execute lines longer than $MAXLINELENGTH. -The default is '@'. -This may be set for toolchains that use other values, -such as '-@' for the diab compiler +to store lines lines longer than $MAXLINELENGTH +as operations which call out to a shell will fail +if the line is too long, which particularly +impacts linking. +The default is '@', which works for the Microsoft +and GNU toolchains on Windows. +Set this appropriately for other toolchains, +for example '-@' for the diab compiler  or '-via' for ARM toolchain.  </para>  </listitem>    </varlistentry> +  <varlistentry id="cv-TEMPFILESUFFIX"> +    <term>TEMPFILESUFFIX</term> +    <listitem> +<para xmlns="http://www.scons.org/dbxsd/v1.0"> +The suffix used for the temporary file name +used for long command lines. The name should +include the dot ('.') if one is wanted as +it will not be added automatically. +The default is '.lnk'. +</para> +</listitem> +  </varlistentry>    <varlistentry id="cv-TEX">      <term>TEX</term>      <listitem> @@ -7542,6 +7755,7 @@ This is used to fill in the  <literal>BuildRequires:</literal>  field in the RPM  <filename>.spec</filename> file. +Note this should only be used on a host managed by rpm as the dependencies will not be resolvable at build time otherwise.  </para>  </listitem>    </varlistentry> @@ -7600,7 +7814,8 @@ field in the RPM  <para xmlns="http://www.scons.org/dbxsd/v1.0">  This is used to fill in the  <literal>Epoch:</literal> -field in the controlling information for RPM packages. +field in the RPM +<filename>.spec</filename> file.  </para>  </listitem>    </varlistentry> @@ -7626,6 +7841,38 @@ field in the RPM  </para>  </listitem>    </varlistentry> +  <varlistentry id="cv-X_RPM_EXTRADEFS"> +    <term>X_RPM_EXTRADEFS</term> +    <listitem> +<para xmlns="http://www.scons.org/dbxsd/v1.0"> +A list used to supply extra defintions or flags +to be added to the RPM <filename>.spec</filename> file. +Each item is added as-is with a carriage return appended. +This is useful if some specific RPM feature not otherwise +anticipated by SCons needs to be turned on or off. +Note if this variable is omitted, SCons will by +default supply the value +<literal>'%global debug_package %{nil}'</literal> +to disable debug package generation. +To enable debug package generation, include this +variable set either to None, or to a custom +list that does not include the default line. +Added in version 3.1. +</para> + +<example_commands xmlns="http://www.scons.org/dbxsd/v1.0"> +env.Package( +    NAME             = 'foo', +... +    X_RPM_EXTRADEFS = [ +        '%define _unpackaged_files_terminate_build 0' +        '%define _missing_doc_files_terminate_build 0' +    ], +... ) +</example_commands> + +</listitem> +  </varlistentry>    <varlistentry id="cv-X_RPM_GROUP">      <term>X_RPM_GROUP</term>      <listitem>  | 
