summaryrefslogtreecommitdiff
path: root/doc/generated
diff options
context:
space:
mode:
authorDirk Baechle <dl9obn@darc.de>2013-05-04 00:37:44 +0200
committerDirk Baechle <dl9obn@darc.de>2013-05-04 00:37:44 +0200
commitc808170795c4ace6c9760c36b3e54e5f1159b358 (patch)
tree309936c46b601cb441897c288b087f95d297aa8c /doc/generated
parent847eb608b6c41132c050ce9780f6159db2ce3639 (diff)
downloadscons-c808170795c4ace6c9760c36b3e54e5f1159b358.tar.gz
- added default files in doc/generated/
Diffstat (limited to 'doc/generated')
-rw-r--r--doc/generated/builders.gen2351
-rw-r--r--doc/generated/builders.mod199
-rw-r--r--doc/generated/examples/EnumVariable_map_1.xml4
-rw-r--r--doc/generated/examples/addmethod_ex1_1.xml7
-rw-r--r--doc/generated/examples/addmethod_ex2_1.xml5
-rw-r--r--doc/generated/examples/addmethod_ex2_2.xml7
-rw-r--r--doc/generated/examples/alias_ex1_1.xml6
-rw-r--r--doc/generated/examples/alias_ex2_1.xml26
-rw-r--r--doc/generated/examples/buildersbuiltin_ex1_1.xml5
-rw-r--r--doc/generated/examples/buildersbuiltin_ex2_1.xml4
-rw-r--r--doc/generated/examples/buildersbuiltin_ex3_1.xml4
-rw-r--r--doc/generated/examples/buildersbuiltin_ex4_1.xml4
-rw-r--r--doc/generated/examples/buildersbuiltin_libs_1.xml6
-rw-r--r--doc/generated/examples/buildersbuiltin_libs_2.xml7
-rw-r--r--doc/generated/examples/builderscommands_ex1_1.xml4
-rw-r--r--doc/generated/examples/builderscommands_ex2_1.xml4
-rw-r--r--doc/generated/examples/builderswriting_MY_EMITTER_1.xml5
-rw-r--r--doc/generated/examples/builderswriting_ex1_1.xml4
-rw-r--r--doc/generated/examples/builderswriting_ex2_1.xml6
-rw-r--r--doc/generated/examples/builderswriting_ex3_1.xml6
-rw-r--r--doc/generated/examples/builderswriting_ex4_1.xml5
-rw-r--r--doc/generated/examples/builderswriting_ex5_1.xml4
-rw-r--r--doc/generated/examples/builderswriting_ex6_1.xml4
-rw-r--r--doc/generated/examples/builderswriting_ex7_1.xml4
-rw-r--r--doc/generated/examples/caching_ex-random_1.xml9
-rw-r--r--doc/generated/examples/caching_ex1_1.xml11
-rw-r--r--doc/generated/examples/caching_ex1_2.xml11
-rw-r--r--doc/generated/examples/caching_ex1_4.xml17
-rw-r--r--doc/generated/examples/caching_ex1_5.xml15
-rw-r--r--doc/generated/examples/commandline_ARGLIST_1.xml6
-rw-r--r--doc/generated/examples/commandline_ARGUMENTS_1.xml12
-rw-r--r--doc/generated/examples/commandline_AddOption_1.xml4
-rw-r--r--doc/generated/examples/commandline_AddOption_2.xml4
-rw-r--r--doc/generated/examples/commandline_BUILD_TARGETS_1_1.xml16
-rw-r--r--doc/generated/examples/commandline_BoolVariable_1.xml4
-rw-r--r--doc/generated/examples/commandline_BoolVariable_2.xml4
-rw-r--r--doc/generated/examples/commandline_BoolVariable_3.xml4
-rw-r--r--doc/generated/examples/commandline_BoolVariable_4.xml4
-rw-r--r--doc/generated/examples/commandline_BoolVariable_5.xml7
-rw-r--r--doc/generated/examples/commandline_COMMAND_LINE_TARGETS_1.xml9
-rw-r--r--doc/generated/examples/commandline_DEFAULT_TARGETS_1_1.xml10
-rw-r--r--doc/generated/examples/commandline_DEFAULT_TARGETS_2_1.xml13
-rw-r--r--doc/generated/examples/commandline_Default1_1.xml10
-rw-r--r--doc/generated/examples/commandline_Default1_2.xml7
-rw-r--r--doc/generated/examples/commandline_Default2_1.xml10
-rw-r--r--doc/generated/examples/commandline_Default3_1.xml12
-rw-r--r--doc/generated/examples/commandline_Default4_1.xml9
-rw-r--r--doc/generated/examples/commandline_EnumVariable_1.xml8
-rw-r--r--doc/generated/examples/commandline_EnumVariable_2.xml6
-rw-r--r--doc/generated/examples/commandline_EnumVariable_3.xml14
-rw-r--r--doc/generated/examples/commandline_EnumVariable_ic1_1.xml10
-rw-r--r--doc/generated/examples/commandline_EnumVariable_ic2_1.xml8
-rw-r--r--doc/generated/examples/commandline_ListVariable_1.xml6
-rw-r--r--doc/generated/examples/commandline_ListVariable_2.xml6
-rw-r--r--doc/generated/examples/commandline_ListVariable_3.xml7
-rw-r--r--doc/generated/examples/commandline_PackageVariable_1.xml10
-rw-r--r--doc/generated/examples/commandline_PathVariable_1.xml6
-rw-r--r--doc/generated/examples/commandline_PathVariable_2.xml6
-rw-r--r--doc/generated/examples/commandline_SCONSFLAGS_1.xml11
-rw-r--r--doc/generated/examples/commandline_SetOption_1.xml5
-rw-r--r--doc/generated/examples/commandline_SetOption_2.xml6
-rw-r--r--doc/generated/examples/commandline_SetOption_3.xml9
-rw-r--r--doc/generated/examples/commandline_UnknownVariables_1.xml4
-rw-r--r--doc/generated/examples/commandline_Variables1_1.xml6
-rw-r--r--doc/generated/examples/commandline_Variables_Help_1.xml9
-rw-r--r--doc/generated/examples/commandline_Variables_custom_py_1_1.xml6
-rw-r--r--doc/generated/examples/commandline_Variables_custom_py_1_custom.py3
-rw-r--r--doc/generated/examples/commandline_Variables_custom_py_2_1.xml6
-rw-r--r--doc/generated/examples/depends_AlwaysBuild_1.xml7
-rw-r--r--doc/generated/examples/depends_AlwaysBuild_2.xml7
-rw-r--r--doc/generated/examples/depends_Requires_1.xml20
-rw-r--r--doc/generated/examples/depends_ex1_1.xml7
-rw-r--r--doc/generated/examples/depends_ex1_2.xml7
-rw-r--r--doc/generated/examples/depends_ex1_3.xml8
-rw-r--r--doc/generated/examples/depends_ex1_4.xml9
-rw-r--r--doc/generated/examples/depends_ex1_5.xml9
-rw-r--r--doc/generated/examples/depends_ex1_6.xml7
-rw-r--r--doc/generated/examples/depends_ex1_7.xml7
-rw-r--r--doc/generated/examples/depends_ex1_8.xml7
-rw-r--r--doc/generated/examples/depends_ex5_1.xml5
-rw-r--r--doc/generated/examples/depends_ex5_2.xml6
-rw-r--r--doc/generated/examples/depends_ignore_explicit_1.xml9
-rw-r--r--doc/generated/examples/depends_include_1.xml11
-rw-r--r--doc/generated/examples/depends_include_SConstruct3
-rw-r--r--doc/generated/examples/depends_include_hello.h3
-rw-r--r--doc/generated/examples/depends_macroinc_1.xml8
-rw-r--r--doc/generated/examples/depends_match_1.xml7
-rw-r--r--doc/generated/examples/depends_mixing_1.xml11
-rw-r--r--doc/generated/examples/depends_newer_1.xml7
-rw-r--r--doc/generated/examples/depends_no-Requires_1.xml14
-rw-r--r--doc/generated/examples/depends_parsedep_1.xml8
-rw-r--r--doc/generated/examples/environments_Append-nonexistent_1.xml5
-rw-r--r--doc/generated/examples/environments_Prepend-nonexistent_1.xml5
-rw-r--r--doc/generated/examples/environments_Replace-nonexistent_1.xml5
-rw-r--r--doc/generated/examples/environments_Replace1_1.xml5
-rw-r--r--doc/generated/examples/environments_Replace2_1.xml13
-rw-r--r--doc/generated/examples/environments_ex1_1.xml5
-rw-r--r--doc/generated/examples/environments_ex2_1.xml7
-rw-r--r--doc/generated/examples/environments_ex3_1.xml6
-rw-r--r--doc/generated/examples/environments_ex4_1.xml7
-rw-r--r--doc/generated/examples/environments_ex5_1.xml9
-rw-r--r--doc/generated/examples/environments_ex6_1.xml5
-rw-r--r--doc/generated/examples/environments_ex6b_1.xml7
-rw-r--r--doc/generated/examples/environments_ex6b_2.xml7
-rw-r--r--doc/generated/examples/environments_ex8_1.xml5
-rw-r--r--doc/generated/examples/environments_ex9_1.xml5
-rw-r--r--doc/generated/examples/environments_missing1_1.xml5
-rw-r--r--doc/generated/examples/environments_missing2_1.xml6
-rw-r--r--doc/generated/examples/environments_missing3_1.xml5
-rw-r--r--doc/generated/examples/factories_Chmod_1.xml5
-rw-r--r--doc/generated/examples/factories_Copy1_1.xml4
-rw-r--r--doc/generated/examples/factories_Copy2_1.xml4
-rw-r--r--doc/generated/examples/factories_Copy3_1.xml6
-rw-r--r--doc/generated/examples/factories_Delete1_1.xml7
-rw-r--r--doc/generated/examples/factories_Delete2_1.xml5
-rw-r--r--doc/generated/examples/factories_Execute_1.xml9
-rw-r--r--doc/generated/examples/factories_Mkdir_1.xml9
-rw-r--r--doc/generated/examples/factories_Move_1.xml6
-rw-r--r--doc/generated/examples/factories_Touch_1.xml5
-rw-r--r--doc/generated/examples/fileremoval_clean-ex1_1.xml7
-rw-r--r--doc/generated/examples/fileremoval_noclean-ex1_1.xml15
-rw-r--r--doc/generated/examples/fileremoval_precious-ex1_1.xml7
-rw-r--r--doc/generated/examples/hierarchy_Return_1.xml7
-rw-r--r--doc/generated/examples/hierarchy_Return_foo_SConscript5
-rw-r--r--doc/generated/examples/hierarchy_ex1_1.xml11
-rw-r--r--doc/generated/examples/hierarchy_ex1_prog1_SConscript4
-rw-r--r--doc/generated/examples/hierarchy_ex1_prog2_SConscript4
-rw-r--r--doc/generated/examples/hierarchy_ex2_1.xml7
-rw-r--r--doc/generated/examples/hierarchy_ex3_1.xml7
-rw-r--r--doc/generated/examples/install_ex1_1.xml7
-rw-r--r--doc/generated/examples/install_ex2_1.xml7
-rw-r--r--doc/generated/examples/install_ex3_1.xml9
-rw-r--r--doc/generated/examples/install_ex4_1.xml6
-rw-r--r--doc/generated/examples/install_ex5_1.xml9
-rw-r--r--doc/generated/examples/java_JAVACLASSDIR_1.xml5
-rw-r--r--doc/generated/examples/java_RMIC_1.xml5
-rw-r--r--doc/generated/examples/java_jar1_1.xml5
-rw-r--r--doc/generated/examples/java_jar2_1.xml7
-rw-r--r--doc/generated/examples/java_java-classes_1.xml6
-rw-r--r--doc/generated/examples/java_java-classes_2.xml11
-rw-r--r--doc/generated/examples/java_java_1.xml4
-rw-r--r--doc/generated/examples/java_javah_1.xml5
-rw-r--r--doc/generated/examples/java_javah_file_1.xml5
-rw-r--r--doc/generated/examples/lesssimple_ex2_1.xml7
-rw-r--r--doc/generated/examples/lesssimple_ex3_1.xml7
-rw-r--r--doc/generated/examples/lesssimple_ex3_2.xml8
-rw-r--r--doc/generated/examples/lesssimple_ex4_1.xml8
-rw-r--r--doc/generated/examples/lesssimple_ex5_1.xml10
-rw-r--r--doc/generated/examples/lesssimple_target_1.xml5
-rw-r--r--doc/generated/examples/lesssimple_target_2.xml6
-rw-r--r--doc/generated/examples/libraries_SharedLibrary_1.xml7
-rw-r--r--doc/generated/examples/libraries_SharedLibrary_2.xml9
-rw-r--r--doc/generated/examples/libraries_ex1_1.xml8
-rw-r--r--doc/generated/examples/libraries_ex1_2.xml7
-rw-r--r--doc/generated/examples/libraries_ex2_1.xml10
-rw-r--r--doc/generated/examples/libraries_ex2_2.xml10
-rw-r--r--doc/generated/examples/libraries_ex3_1.xml5
-rw-r--r--doc/generated/examples/libraries_ex3_2.xml6
-rw-r--r--doc/generated/examples/libraries_objects_1.xml7
-rw-r--r--doc/generated/examples/mergeflags_MergeFlags1_1.xml5
-rw-r--r--doc/generated/examples/mergeflags_MergeFlags2_1.xml5
-rw-r--r--doc/generated/examples/mergeflags_MergeFlags3_1.xml6
-rw-r--r--doc/generated/examples/misc_Exit_1.xml7
-rw-r--r--doc/generated/examples/misc_FindFile1a_1.xml6
-rw-r--r--doc/generated/examples/misc_FindFile1b_1.xml8
-rw-r--r--doc/generated/examples/misc_FindFile1d_1.xml7
-rw-r--r--doc/generated/examples/misc_FindFile2_1.xml6
-rw-r--r--doc/generated/examples/misc_FindFile2_2.xml6
-rw-r--r--doc/generated/examples/misc_FindFile3_1.xml5
-rw-r--r--doc/generated/examples/misc_Flatten1_1.xml6
-rw-r--r--doc/generated/examples/misc_Flatten2_1.xml6
-rw-r--r--doc/generated/examples/nodes_GetBuildPath_1.xml5
-rw-r--r--doc/generated/examples/nodes_ex1_1.xml6
-rw-r--r--doc/generated/examples/nodes_ex1_2.xml7
-rw-r--r--doc/generated/examples/nodes_exists_1.xml6
-rw-r--r--doc/generated/examples/nodes_print_1.xml7
-rw-r--r--doc/generated/examples/nodes_print_2.xml8
-rw-r--r--doc/generated/examples/output_Progress-TARGET_1.xml15
-rw-r--r--doc/generated/examples/output_ex1_1.xml10
-rw-r--r--doc/generated/examples/output_ex2_1.xml11
-rw-r--r--doc/generated/examples/output_ex2_2.xml9
-rw-r--r--doc/generated/examples/output_gbf2_1.xml9
-rw-r--r--doc/generated/examples/parseflags_ex1_1.xml8
-rw-r--r--doc/generated/examples/parseflags_ex1_2.xml9
-rw-r--r--doc/generated/examples/parseflags_ex2_1.xml6
-rw-r--r--doc/generated/examples/parseflags_ex3_1.xml8
-rw-r--r--doc/generated/examples/parseflags_ex4_1.xml8
-rw-r--r--doc/generated/examples/repositories_CPPPATH3_1.xml5
-rw-r--r--doc/generated/examples/repositories_CPPPATH_1.xml5
-rw-r--r--doc/generated/examples/repositories_ex1_1.xml5
-rw-r--r--doc/generated/examples/repositories_ex2_1.xml5
-rw-r--r--doc/generated/examples/repositories_ex3_1.xml5
-rw-r--r--doc/generated/examples/repositories_ex4_1.xml8
-rw-r--r--doc/generated/examples/repositories_quote1_1.xml5
-rw-r--r--doc/generated/examples/separate_builddir_1.xml9
-rw-r--r--doc/generated/examples/separate_builddir_sconscript_1.xml9
-rw-r--r--doc/generated/examples/separate_builddir_sconscript_SConstruct4
-rw-r--r--doc/generated/examples/separate_duplicate0_1.xml9
-rw-r--r--doc/generated/examples/separate_ex1_1.xml9
-rw-r--r--doc/generated/examples/separate_glob_builddir_sconscript_1.xml10
-rw-r--r--doc/generated/examples/sideeffect_parallel_1.xml5
-rw-r--r--doc/generated/examples/sideeffect_shared_1.xml5
-rw-r--r--doc/generated/examples/sideeffect_simple_1.xml10
-rw-r--r--doc/generated/examples/simple_Object_1.xml8
-rw-r--r--doc/generated/examples/simple_Object_2.xml8
-rw-r--r--doc/generated/examples/simple_clean_1.xml16
-rw-r--r--doc/generated/examples/simple_clean_2.xml17
-rw-r--r--doc/generated/examples/simple_declarative_1.xml14
-rw-r--r--doc/generated/examples/simple_ex1_1.xml9
-rw-r--r--doc/generated/examples/simple_ex1_2.xml10
-rw-r--r--doc/generated/examples/simple_ex1_3.xml10
-rw-r--r--doc/generated/examples/simple_ex1_4.xml6
-rw-r--r--doc/generated/examples/simple_java_1.xml8
-rw-r--r--doc/generated/examples/sourcecode_bitkeeper_1.xml6
-rw-r--r--doc/generated/examples/sourcecode_cvs_1.xml6
-rw-r--r--doc/generated/examples/sourcecode_rcs_1.xml6
-rw-r--r--doc/generated/examples/sourcecode_sccs_1.xml6
-rw-r--r--doc/generated/examples/tasks_ex1_1.xml7
-rw-r--r--doc/generated/examples/tasks_ex1_main.cpp3
-rw-r--r--doc/generated/examples/troubleshoot_Dump_1.xml74
-rw-r--r--doc/generated/examples/troubleshoot_Dump_2.xml107
-rw-r--r--doc/generated/examples/troubleshoot_Dump_ENV_1.xml9
-rw-r--r--doc/generated/examples/troubleshoot_Dump_ENV_2.xml11
-rw-r--r--doc/generated/examples/troubleshoot_explain1_1.xml8
-rw-r--r--doc/generated/examples/troubleshoot_explain1_2.xml5
-rw-r--r--doc/generated/examples/troubleshoot_explain2_1.xml13
-rw-r--r--doc/generated/examples/troubleshoot_explain3_1.xml17
-rw-r--r--doc/generated/examples/troubleshoot_findlibs_1.xml14
-rw-r--r--doc/generated/examples/troubleshoot_stacktrace_1.xml4
-rw-r--r--doc/generated/examples/troubleshoot_stacktrace_2.xml13
-rw-r--r--doc/generated/examples/troubleshoot_taskmastertrace_1.xml63
-rw-r--r--doc/generated/examples/troubleshoot_tree1_1.xml32
-rw-r--r--doc/generated/examples/troubleshoot_tree1_2.xml7
-rw-r--r--doc/generated/examples/troubleshoot_tree1_3.xml11
-rw-r--r--doc/generated/examples/troubleshoot_tree1_4.xml43
-rw-r--r--doc/generated/examples/troubleshoot_tree1_5.xml15
-rw-r--r--doc/generated/examples/troubleshoot_tree1_6.xml26
-rw-r--r--doc/generated/examples/troubleshoot_tree2_1.xml73
-rw-r--r--doc/generated/examples/troubleshoot_tree2_2.xml45
-rw-r--r--doc/generated/examples/variants_ex_1.xml11
-rw-r--r--doc/generated/examples/variants_ex_2.xml11
-rw-r--r--doc/generated/functions.gen4978
-rw-r--r--doc/generated/functions.mod371
-rw-r--r--doc/generated/tools.gen870
-rw-r--r--doc/generated/tools.mod215
-rw-r--r--doc/generated/variables.gen7175
-rw-r--r--doc/generated/variables.mod1123
247 files changed, 19482 insertions, 0 deletions
diff --git a/doc/generated/builders.gen b/doc/generated/builders.gen
new file mode 100644
index 00000000..2b033e4b
--- /dev/null
+++ b/doc/generated/builders.gen
@@ -0,0 +1,2351 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE sconsdoc [
+ <!ENTITY % scons SYSTEM "../scons.mod">
+ %scons;
+ <!ENTITY % builders-mod SYSTEM "builders.mod">
+ %builders-mod;
+ <!ENTITY % functions-mod SYSTEM "functions.mod">
+ %functions-mod;
+ <!ENTITY % tools-mod SYSTEM "tools.mod">
+ %tools-mod;
+ <!ENTITY % variables-mod SYSTEM "variables.mod">
+ %variables-mod;
+]>
+
+<variablelist xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">
+ <varlistentry id="b-CFile">
+ <term>
+ <synopsis>
+ <function>CFile()</function>
+ </synopsis>
+ <synopsis>
+ <function>env.CFile()</function>
+ </synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Builds a C source file given a lex (<filename>.l</filename>)
+or yacc (<filename>.y</filename>) input file.
+The suffix specified by the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-CFILESUFFIX"><envar>$CFILESUFFIX</envar></link> construction variable
+(<filename>.c</filename> by default)
+is automatically added to the target
+if it is not already present.
+Example:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+# builds foo.c
+env.CFile(target = 'foo.c', source = 'foo.l')
+# builds bar.c
+env.CFile(target = 'bar', source = 'bar.y')
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="b-Command">
+ <term>
+ <synopsis>
+ <function>Command()</function>
+ </synopsis>
+ <synopsis>
+ <function>env.Command()</function>
+ </synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The <function xmlns="http://www.scons.org/dbxsd/v1.0">Command</function> "Builder" is actually implemented
+as a function that looks like a Builder,
+but actually takes an additional argument of the action
+from which the Builder should be made.
+See the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="f-Command"><function>Command</function></link> function description
+for the calling syntax and details.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="b-CXXFile">
+ <term>
+ <synopsis>
+ <function>CXXFile()</function>
+ </synopsis>
+ <synopsis>
+ <function>env.CXXFile()</function>
+ </synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Builds a C++ source file given a lex (<filename>.ll</filename>)
+or yacc (<filename>.yy</filename>)
+input file.
+The suffix specified by the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-CXXFILESUFFIX"><envar>$CXXFILESUFFIX</envar></link> construction variable
+(<filename>.cc</filename> by default)
+is automatically added to the target
+if it is not already present.
+Example:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+# builds foo.cc
+env.CXXFile(target = 'foo.cc', source = 'foo.ll')
+# builds bar.cc
+env.CXXFile(target = 'bar', source = 'bar.yy')
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="b-DVI">
+ <term>
+ <synopsis>
+ <function>DVI()</function>
+ </synopsis>
+ <synopsis>
+ <function>env.DVI()</function>
+ </synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Builds a <filename>.dvi</filename> file
+from a <filename>.tex</filename>,
+<filename>.ltx</filename> or <filename>.latex</filename> input file.
+If the source file suffix is <filename>.tex</filename>,
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+will examine the contents of the file;
+if the string
+<literal>\documentclass</literal>
+or
+<literal>\documentstyle</literal>
+is found, the file is assumed to be a LaTeX file and
+the target is built by invoking the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-LATEXCOM"><envar>$LATEXCOM</envar></link> command line;
+otherwise, the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-TEXCOM"><envar>$TEXCOM</envar></link> command line is used.
+If the file is a LaTeX file,
+the
+<function xmlns="http://www.scons.org/dbxsd/v1.0">DVI</function>
+builder method will also examine the contents
+of the
+<filename>.aux</filename>
+file and invoke the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-BIBTEX"><envar>$BIBTEX</envar></link> command line
+if the string
+<literal>bibdata</literal>
+is found,
+start <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-MAKEINDEX"><envar>$MAKEINDEX</envar></link> to generate an index if a
+<filename>.ind</filename>
+file is found
+and will examine the contents
+<filename>.log</filename>
+file and re-run the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-LATEXCOM"><envar>$LATEXCOM</envar></link> command
+if the log file says it is necessary.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The suffix <filename>.dvi</filename>
+(hard-coded within TeX itself)
+is automatically added to the target
+if it is not already present.
+Examples:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+# builds from aaa.tex
+env.DVI(target = 'aaa.dvi', source = 'aaa.tex')
+# builds bbb.dvi
+env.DVI(target = 'bbb', source = 'bbb.ltx')
+# builds from ccc.latex
+env.DVI(target = 'ccc.dvi', source = 'ccc.latex')
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="b-Install">
+ <term>
+ <synopsis>
+ <function>Install()</function>
+ </synopsis>
+ <synopsis>
+ <function>env.Install()</function>
+ </synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Installs one or more source files or directories
+in the specified target,
+which must be a directory.
+The names of the specified source files or directories
+remain the same within the destination directory. The
+sources may be given as a string or as a node returned by
+a builder.
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env.Install('/usr/local/bin', source = ['foo', 'bar'])
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="b-InstallAs">
+ <term>
+ <synopsis>
+ <function>InstallAs()</function>
+ </synopsis>
+ <synopsis>
+ <function>env.InstallAs()</function>
+ </synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Installs one or more source files or directories
+to specific names,
+allowing changing a file or directory name
+as part of the installation.
+It is an error if the
+target
+and
+source
+arguments list different numbers of files or directories.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="b-InstallVersionedLib">
+ <term>
+ <synopsis>
+ <function>InstallVersionedLib()</function>
+ </synopsis>
+ <synopsis>
+ <function>env.InstallVersionedLib()</function>
+ </synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Installs a versioned shared library. The <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHLIBVERSION"><envar>$SHLIBVERSION</envar></link>
+construction variable should be defined in the environment
+to confirm the version number in the library name.
+The symlinks appropriate to the architecture will be generated.
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env.InstallAs(target = '/usr/local/bin/foo',
+ source = 'foo_debug')
+env.InstallAs(target = ['../lib/libfoo.a', '../lib/libbar.a'],
+ source = ['libFOO.a', 'libBAR.a'])
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="b-Jar">
+ <term>
+ <synopsis>
+ <function>Jar()</function>
+ </synopsis>
+ <synopsis>
+ <function>env.Jar()</function>
+ </synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Builds a Java archive (<filename>.jar</filename>) file
+from the specified list of sources.
+Any directories in the source list
+will be searched for <filename>.class</filename> files).
+Any <filename>.java</filename> files in the source list
+will be compiled to <filename>.class</filename> files
+by calling the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-Java"><function>Java</function></link> Builder.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+If the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-JARCHDIR"><envar>$JARCHDIR</envar></link> value is set, the
+<application xmlns="http://www.scons.org/dbxsd/v1.0">jar</application>
+command will change to the specified directory using the
+<option>-C</option>
+option.
+If <envar xmlns="http://www.scons.org/dbxsd/v1.0">$JARCHDIR</envar> is not set explicitly,
+<application xmlns="http://www.scons.org/dbxsd/v1.0">SCons</application> will use the top of any subdirectory tree
+in which Java <filename>.class</filename>
+were built by the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-Java"><function>Java</function></link> Builder.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+If the contents any of the source files begin with the string
+<literal>Manifest-Version</literal>,
+the file is assumed to be a manifest
+and is passed to the
+<application xmlns="http://www.scons.org/dbxsd/v1.0">jar</application>
+command with the
+<option>m</option>
+option set.
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env.Jar(target = 'foo.jar', source = 'classes')
+
+env.Jar(target = 'bar.jar',
+ source = ['bar1.java', 'bar2.java'])
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="b-Java">
+ <term>
+ <synopsis>
+ <function>Java()</function>
+ </synopsis>
+ <synopsis>
+ <function>env.Java()</function>
+ </synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Builds one or more Java class files.
+The sources may be any combination of explicit
+<filename>.java</filename> files,
+or directory trees which will be scanned
+for <filename>.java</filename> files.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+SCons will parse each source <filename>.java</filename> file
+to find the classes
+(including inner classes)
+defined within that file,
+and from that figure out the
+target <filename>.class</filename> files that will be created.
+The class files will be placed underneath
+the specified target directory.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+SCons will also search each Java file
+for the Java package name,
+which it assumes can be found on a line
+beginning with the string
+<literal>package</literal>
+in the first column;
+the resulting <filename>.class</filename> files
+will be placed in a directory reflecting
+the specified package name.
+For example,
+the file
+<filename>Foo.java</filename>
+defining a single public
+<classname>Foo</classname>
+class and
+containing a package name of
+<classname>sub.dir</classname>
+will generate a corresponding
+<filename>sub/dir/Foo.class</filename>
+class file.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Examples:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env.Java(target = 'classes', source = 'src')
+env.Java(target = 'classes', source = ['src1', 'src2'])
+env.Java(target = 'classes', source = ['File1.java', 'File2.java'])
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Java source files can use the native encoding for the underlying OS.
+Since SCons compiles in simple ASCII mode by default,
+the compiler will generate warnings about unmappable characters,
+which may lead to errors as the file is processed further.
+In this case, the user must specify the <literal>LANG</literal>
+environment variable to tell the compiler what encoding is used.
+For portibility, it's best if the encoding is hard-coded
+so that the compile will work if it is done on a system
+with a different encoding.
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment()
+env['ENV']['LANG'] = 'en_GB.UTF-8'
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="b-JavaH">
+ <term>
+ <synopsis>
+ <function>JavaH()</function>
+ </synopsis>
+ <synopsis>
+ <function>env.JavaH()</function>
+ </synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Builds C header and source files for
+implementing Java native methods.
+The target can be either a directory
+in which the header files will be written,
+or a header file name which
+will contain all of the definitions.
+The source can be the names of <filename>.class</filename> files,
+the names of <filename>.java</filename> files
+to be compiled into <filename>.class</filename> files
+by calling the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-Java"><function>Java</function></link> builder method,
+or the objects returned from the
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Java</function>
+builder method.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+If the construction variable
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-JAVACLASSDIR"><envar>$JAVACLASSDIR</envar></link>
+is set, either in the environment
+or in the call to the
+<function xmlns="http://www.scons.org/dbxsd/v1.0">JavaH</function>
+builder method itself,
+then the value of the variable
+will be stripped from the
+beginning of any <filename>.class</filename> file names.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Examples:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+# builds java_native.h
+classes = env.Java(target = 'classdir', source = 'src')
+env.JavaH(target = 'java_native.h', source = classes)
+
+# builds include/package_foo.h and include/package_bar.h
+env.JavaH(target = 'include',
+ source = ['package/foo.class', 'package/bar.class'])
+
+# builds export/foo.h and export/bar.h
+env.JavaH(target = 'export',
+ source = ['classes/foo.class', 'classes/bar.class'],
+ JAVACLASSDIR = 'classes')
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="b-Library">
+ <term>
+ <synopsis>
+ <function>Library()</function>
+ </synopsis>
+ <synopsis>
+ <function>env.Library()</function>
+ </synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A synonym for the
+<function xmlns="http://www.scons.org/dbxsd/v1.0">StaticLibrary</function>
+builder method.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="b-LoadableModule">
+ <term>
+ <synopsis>
+ <function>LoadableModule()</function>
+ </synopsis>
+ <synopsis>
+ <function>env.LoadableModule()</function>
+ </synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+On most systems,
+this is the same as
+<function xmlns="http://www.scons.org/dbxsd/v1.0">SharedLibrary</function>.
+On Mac OS X (Darwin) platforms,
+this creates a loadable module bundle.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="b-M4">
+ <term>
+ <synopsis>
+ <function>M4()</function>
+ </synopsis>
+ <synopsis>
+ <function>env.M4()</function>
+ </synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Builds an output file from an M4 input file.
+This uses a default <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-M4FLAGS"><envar>$M4FLAGS</envar></link> value of
+<option>-E</option>,
+which considers all warnings to be fatal
+and stops on the first warning
+when using the GNU version of m4.
+Example:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env.M4(target = 'foo.c', source = 'foo.c.m4')
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="b-Moc">
+ <term>
+ <synopsis>
+ <function>Moc()</function>
+ </synopsis>
+ <synopsis>
+ <function>env.Moc()</function>
+ </synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Builds an output file from a moc input file. Moc input files are either
+header files or cxx files. This builder is only available after using the
+tool 'qt'. See the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-QTDIR"><envar>$QTDIR</envar></link> variable for more information.
+Example:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env.Moc('foo.h') # generates moc_foo.cc
+env.Moc('foo.cpp') # generates foo.moc
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="b-MOFiles">
+ <term>
+ <synopsis>
+ <function>MOFiles()</function>
+ </synopsis>
+ <synopsis>
+ <function>env.MOFiles()</function>
+ </synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This builder belongs to <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="t-msgfmt"><literal>msgfmt</literal></link> tool. The builder compiles
+<literal>PO</literal> files to <literal>MO</literal> files.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<emphasis>Example 1</emphasis>.
+Create <filename>pl.mo</filename> and <filename>en.mo</filename> by compiling
+<filename>pl.po</filename> and <filename>en.po</filename>:
+</para>
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+ # ...
+ env.MOFiles(['pl', 'en'])
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<emphasis>Example 2</emphasis>.
+Compile files for languages defined in <filename>LINGUAS</filename> file:
+</para>
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+ # ...
+ env.MOFiles(LINGUAS_FILE = 1)
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<emphasis>Example 3</emphasis>.
+Create <filename>pl.mo</filename> and <filename>en.mo</filename> by compiling
+<filename>pl.po</filename> and <filename>en.po</filename> plus files for
+languages defined in <filename>LINGUAS</filename> file:
+</para>
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+ # ...
+ env.MOFiles(['pl', 'en'], LINGUAS_FILE = 1)
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<emphasis>Example 4</emphasis>.
+Compile files for languages defined in <filename>LINGUAS</filename> file
+(another version):
+</para>
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+ # ...
+ env['LINGUAS_FILE'] = 1
+ env.MOFiles()
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="b-MSVSProject">
+ <term>
+ <synopsis>
+ <function>MSVSProject()</function>
+ </synopsis>
+ <synopsis>
+ <function>env.MSVSProject()</function>
+ </synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Builds a Microsoft Visual Studio project file,
+and by default builds a solution file as well.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This builds a Visual Studio project file, based on the version of
+Visual Studio that is configured (either the latest installed version,
+or the version specified by
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-MSVS_VERSION"><envar>$MSVS_VERSION</envar></link>
+in the Environment constructor).
+For Visual Studio 6, it will generate a
+<filename>.dsp</filename>
+file.
+For Visual Studio 7 (.NET) and later versions, it will generate a
+<filename>.vcproj</filename>
+file.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+By default,
+this also generates a solution file
+for the specified project,
+a
+<filename>.dsw</filename>
+file for Visual Studio 6
+or a
+<filename>.sln</filename>
+file for Visual Studio 7 (.NET).
+This behavior may be disabled by specifying
+<literal>auto_build_solution=0</literal>
+when you call
+<function xmlns="http://www.scons.org/dbxsd/v1.0">MSVSProject</function>,
+in which case you presumably want to
+build the solution file(s)
+by calling the
+<function xmlns="http://www.scons.org/dbxsd/v1.0">MSVSSolution</function>
+Builder (see below).
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The <function xmlns="http://www.scons.org/dbxsd/v1.0">MSVSProject</function> builder
+takes several lists of filenames
+to be placed into the project file.
+These are currently limited to
+<literal>srcs</literal>,
+<literal>incs</literal>,
+<literal>localincs</literal>,
+<literal>resources</literal>,
+and
+<literal>misc</literal>.
+These are pretty self-explanatory, but it should be noted that these
+lists are added to the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SOURCES"><envar>$SOURCES</envar></link> construction variable as strings,
+NOT as SCons File Nodes. This is because they represent file
+names to be added to the project file, not the source files used to
+build the project file.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The above filename lists are all optional,
+although at least one must be specified
+for the resulting project file to be non-empty.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+In addition to the above lists of values,
+the following values may be specified:
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<literal>target</literal>:
+The name of the target
+<filename>.dsp</filename>
+or
+<filename>.vcproj</filename>
+file.
+The correct
+suffix for the version of Visual Studio must be used,
+but the
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-MSVSPROJECTSUFFIX"><envar>$MSVSPROJECTSUFFIX</envar></link>
+construction variable
+will be defined to the correct value (see example below).
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<literal>variant</literal>:
+The name of this particular variant.
+For Visual Studio 7 projects,
+this can also be a list of variant names.
+These are typically things like "Debug" or "Release", but really
+can be anything you want.
+For Visual Studio 7 projects,
+they may also specify a target platform
+separated from the variant name by a
+<literal>|</literal>
+(vertical pipe)
+character:
+<literal>Debug|Xbox</literal>.
+The default target platform is Win32.
+Multiple calls to
+<function xmlns="http://www.scons.org/dbxsd/v1.0">MSVSProject</function>
+with different variants are allowed;
+all variants will be added to the project file with their appropriate
+build targets and sources.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<literal>buildtarget</literal>:
+An optional string, node, or list of strings or nodes
+(one per build variant), to tell the Visual Studio debugger
+what output target to use in what build variant.
+The number of
+<literal>buildtarget</literal>
+entries must match the number of
+<literal>variant</literal>
+entries.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<literal>runfile</literal>:
+The name of the file that Visual Studio 7 and later
+will run and debug.
+This appears as the value of the
+<literal>Output</literal>
+field in the resutling Visual Studio project file.
+If this is not specified,
+the default is the same as the specified
+<literal>buildtarget</literal>
+value.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Note that because <application xmlns="http://www.scons.org/dbxsd/v1.0">SCons</application> always executes its build commands
+from the directory in which the <filename xmlns="http://www.scons.org/dbxsd/v1.0">SConstruct</filename> file is located,
+if you generate a project file in a different directory
+than the <filename xmlns="http://www.scons.org/dbxsd/v1.0">SConstruct</filename> directory,
+users will not be able to double-click
+on the file name in compilation error messages
+displayed in the Visual Studio console output window.
+This can be remedied by adding the
+Visual C/C++
+<literal>/FC</literal>
+compiler option to the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-CCFLAGS"><envar>$CCFLAGS</envar></link> variable
+so that the compiler will print
+the full path name of any
+files that cause compilation errors.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Example usage:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+barsrcs = ['bar.cpp'],
+barincs = ['bar.h'],
+barlocalincs = ['StdAfx.h']
+barresources = ['bar.rc','resource.h']
+barmisc = ['bar_readme.txt']
+
+dll = env.SharedLibrary(target = 'bar.dll',
+ source = barsrcs)
+
+env.MSVSProject(target = 'Bar' + env['MSVSPROJECTSUFFIX'],
+ srcs = barsrcs,
+ incs = barincs,
+ localincs = barlocalincs,
+ resources = barresources,
+ misc = barmisc,
+ buildtarget = dll,
+ variant = 'Release')
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="b-MSVSSolution">
+ <term>
+ <synopsis>
+ <function>MSVSSolution()</function>
+ </synopsis>
+ <synopsis>
+ <function>env.MSVSSolution()</function>
+ </synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Builds a Microsoft Visual Studio solution file.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This builds a Visual Studio solution file,
+based on the version of Visual Studio that is configured
+(either the latest installed version,
+or the version specified by
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-MSVS_VERSION"><envar>$MSVS_VERSION</envar></link>
+in the construction environment).
+For Visual Studio 6, it will generate a
+<filename>.dsw</filename>
+file.
+For Visual Studio 7 (.NET), it will
+generate a
+<filename>.sln</filename>
+file.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The following values must be specified:
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<literal>target</literal>:
+The name of the target .dsw or .sln file. The correct
+suffix for the version of Visual Studio must be used, but the value
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-MSVSSOLUTIONSUFFIX"><envar>$MSVSSOLUTIONSUFFIX</envar></link>
+will be defined to the correct value (see example below).
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<literal>variant</literal>:
+The name of this particular variant, or a list of variant
+names (the latter is only supported for MSVS 7 solutions). These are
+typically things like "Debug" or "Release", but really can be anything
+you want. For MSVS 7 they may also specify target platform, like this
+"Debug|Xbox". Default platform is Win32.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<literal>projects</literal>:
+A list of project file names, or Project nodes returned by calls to the
+<function xmlns="http://www.scons.org/dbxsd/v1.0">MSVSProject</function>
+Builder,
+to be placed into the solution file.
+It should be noted that these file names are NOT added to the $SOURCES
+environment variable in form of files, but rather as strings. This
+is because they represent file names to be added to the solution file,
+not the source files used to build the solution file.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Example Usage:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env.MSVSSolution(target = 'Bar' + env['MSVSSOLUTIONSUFFIX'],
+ projects = ['bar' + env['MSVSPROJECTSUFFIX']],
+ variant = 'Release')
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="b-Object">
+ <term>
+ <synopsis>
+ <function>Object()</function>
+ </synopsis>
+ <synopsis>
+ <function>env.Object()</function>
+ </synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A synonym for the
+<function xmlns="http://www.scons.org/dbxsd/v1.0">StaticObject</function>
+builder method.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="b-Package">
+ <term>
+ <synopsis>
+ <function>Package()</function>
+ </synopsis>
+ <synopsis>
+ <function>env.Package()</function>
+ </synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Builds a Binary Package of the given source files.
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env.Package(source = FindInstalledFiles())
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Builds software distribution packages.
+Packages consist of files to install and packaging information.
+The former may be specified with the <varname xmlns="http://www.scons.org/dbxsd/v1.0">source</varname> parameter and may be left out,
+in which case the <function xmlns="http://www.scons.org/dbxsd/v1.0">FindInstalledFiles</function> function will collect
+all files that have an <function xmlns="http://www.scons.org/dbxsd/v1.0">Install</function> or <function xmlns="http://www.scons.org/dbxsd/v1.0">InstallAs</function> Builder attached.
+If the <varname xmlns="http://www.scons.org/dbxsd/v1.0">target</varname> is not specified
+it will be deduced from additional information given to this Builder.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The packaging information is specified
+with the help of construction variables documented below.
+This information is called a tag to stress that
+some of them can also be attached to files with the <function xmlns="http://www.scons.org/dbxsd/v1.0">Tag</function> function.
+The mandatory ones will complain if they were not specified.
+They vary depending on chosen target packager.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The target packager may be selected with the "PACKAGETYPE" command line
+option or with the <envar xmlns="http://www.scons.org/dbxsd/v1.0">$PACKAGETYPE</envar> construction variable. Currently
+the following packagers available:
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+ * msi - Microsoft Installer
+ * rpm - Redhat Package Manger
+ * ipkg - Itsy Package Management System
+ * tarbz2 - compressed tar
+ * targz - compressed tar
+ * zip - zip file
+ * src_tarbz2 - compressed tar source
+ * src_targz - compressed tar source
+ * src_zip - zip file source
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+An updated list is always available under the "package_type" option when
+running "scons --help" on a project that has packaging activated.
+</para>
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment(tools=['default', 'packaging'])
+env.Install('/bin/', 'my_program')
+env.Package( NAME = 'foo',
+ VERSION = '1.2.3',
+ PACKAGEVERSION = 0,
+ PACKAGETYPE = 'rpm',
+ LICENSE = 'gpl',
+ SUMMARY = 'balalalalal',
+ DESCRIPTION = 'this should be really really long',
+ X_RPM_GROUP = 'Application/fu',
+ SOURCE_URL = 'http://foo.org/foo-1.2.3.tar.gz'
+ )
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="b-PCH">
+ <term>
+ <synopsis>
+ <function>PCH()</function>
+ </synopsis>
+ <synopsis>
+ <function>env.PCH()</function>
+ </synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Builds a Microsoft Visual C++ precompiled header.
+Calling this builder method
+returns a list of two targets: the PCH as the first element, and the object
+file as the second element. Normally the object file is ignored.
+This builder method is only
+provided when Microsoft Visual C++ is being used as the compiler.
+The PCH builder method is generally used in
+conjuction with the PCH construction variable to force object files to use
+the precompiled header:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env['PCH'] = env.PCH('StdAfx.cpp')[0]
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="b-PDF">
+ <term>
+ <synopsis>
+ <function>PDF()</function>
+ </synopsis>
+ <synopsis>
+ <function>env.PDF()</function>
+ </synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Builds a <filename>.pdf</filename> file
+from a <filename>.dvi</filename> input file
+(or, by extension, a <filename>.tex</filename>,
+<filename>.ltx</filename>,
+or
+<filename>.latex</filename> input file).
+The suffix specified by the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-PDFSUFFIX"><envar>$PDFSUFFIX</envar></link> construction variable
+(<filename>.pdf</filename> by default)
+is added automatically to the target
+if it is not already present. Example:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+# builds from aaa.tex
+env.PDF(target = 'aaa.pdf', source = 'aaa.tex')
+# builds bbb.pdf from bbb.dvi
+env.PDF(target = 'bbb', source = 'bbb.dvi')
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="b-POInit">
+ <term>
+ <synopsis>
+ <function>POInit()</function>
+ </synopsis>
+ <synopsis>
+ <function>env.POInit()</function>
+ </synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This builder belongs to <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="t-msginit"><literal>msginit</literal></link> tool. The builder initializes missing
+<literal>PO</literal> file(s) if <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-POAUTOINIT"><envar>$POAUTOINIT</envar></link> is set. If
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-POAUTOINIT"><envar>$POAUTOINIT</envar></link> is not set (default), <function xmlns="http://www.scons.org/dbxsd/v1.0">POInit</function> prints instruction for
+user (that is supposed to be a translator), telling how the
+<literal>PO</literal> file should be initialized. In normal projects
+<emphasis>you should not use <function xmlns="http://www.scons.org/dbxsd/v1.0">POInit</function> and use <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-POUpdate"><function>POUpdate</function></link>
+instead</emphasis>. <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-POUpdate"><function>POUpdate</function></link> chooses intelligently between
+<command>msgmerge(1)</command> and <command>msginit(1)</command>. <function xmlns="http://www.scons.org/dbxsd/v1.0">POInit</function>
+always uses <command>msginit(1)</command> and should be regarded as builder for
+special purposes or for temporary use (e.g. for quick, one time initialization
+of a bunch of <literal>PO</literal> files) or for tests.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Target nodes defined through <function xmlns="http://www.scons.org/dbxsd/v1.0">POInit</function> are not built by default (they're
+<literal>Ignore</literal>d from <literal>'.'</literal> node) but are added to
+special <literal>Alias</literal> (<literal>'po-create'</literal> by default).
+The alias name may be changed through the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-POCREATE_ALIAS"><envar>$POCREATE_ALIAS</envar></link>
+construction variable. All <literal>PO</literal> files defined through
+<function xmlns="http://www.scons.org/dbxsd/v1.0">POInit</function> may be easily initialized by <command>scons po-create</command>.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<emphasis>Example 1</emphasis>.
+Initialize <filename>en.po</filename> and <filename>pl.po</filename> from
+<filename>messages.pot</filename>:
+</para>
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+ # ...
+ env.POInit(['en', 'pl']) # messages.pot --&gt; [en.po, pl.po]
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<emphasis>Example 2</emphasis>.
+Initialize <filename>en.po</filename> and <filename>pl.po</filename> from
+<filename>foo.pot</filename>:
+</para>
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+ # ...
+ env.POInit(['en', 'pl'], ['foo']) # foo.pot --&gt; [en.po, pl.po]
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<emphasis>Example 3</emphasis>.
+Initialize <filename>en.po</filename> and <filename>pl.po</filename> from
+<filename>foo.pot</filename> but using <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-POTDOMAIN"><envar>$POTDOMAIN</envar></link> construction
+variable:
+</para>
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+ # ...
+ env.POInit(['en', 'pl'], POTDOMAIN='foo') # foo.pot --&gt; [en.po, pl.po]
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<emphasis>Example 4</emphasis>.
+Initialize <literal>PO</literal> files for languages defined in
+<filename>LINGUAS</filename> file. The files will be initialized from template
+<filename>messages.pot</filename>:
+</para>
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+ # ...
+ env.POInit(LINGUAS_FILE = 1) # needs 'LINGUAS' file
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<emphasis>Example 5</emphasis>.
+Initialize <filename>en.po</filename> and <filename>pl.pl</filename>
+<literal>PO</literal> files plus files for languages defined in
+<filename>LINGUAS</filename> file. The files will be initialized from template
+<filename>messages.pot</filename>:
+</para>
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+ # ...
+ env.POInit(['en', 'pl'], LINGUAS_FILE = 1)
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<emphasis>Example 6</emphasis>.
+You may preconfigure your environment first, and then initialize
+<literal>PO</literal> files:
+</para>
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+ # ...
+ env['POAUTOINIT'] = 1
+ env['LINGUAS_FILE'] = 1
+ env['POTDOMAIN'] = 'foo'
+ env.POInit()
+</example_commands>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+which has same efect as:
+</para>
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+ # ...
+ env.POInit(POAUTOINIT = 1, LINGUAS_FILE = 1, POTDOMAIN = 'foo')
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="b-PostScript">
+ <term>
+ <synopsis>
+ <function>PostScript()</function>
+ </synopsis>
+ <synopsis>
+ <function>env.PostScript()</function>
+ </synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Builds a <filename>.ps</filename> file
+from a <filename>.dvi</filename> input file
+(or, by extension, a <filename>.tex</filename>,
+<filename>.ltx</filename>,
+or
+<filename>.latex</filename> input file).
+The suffix specified by the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-PSSUFFIX"><envar>$PSSUFFIX</envar></link> construction variable
+(<filename>.ps</filename> by default)
+is added automatically to the target
+if it is not already present. Example:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+# builds from aaa.tex
+env.PostScript(target = 'aaa.ps', source = 'aaa.tex')
+# builds bbb.ps from bbb.dvi
+env.PostScript(target = 'bbb', source = 'bbb.dvi')
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="b-POTUpdate">
+ <term>
+ <synopsis>
+ <function>POTUpdate()</function>
+ </synopsis>
+ <synopsis>
+ <function>env.POTUpdate()</function>
+ </synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The builder belongs to <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="t-xgettext"><literal>xgettext</literal></link> tool. The builder updates target
+<literal>POT</literal> file if exists or creates one if it doesn't. The node is
+not built by default (i.e. it is <literal>Ignore</literal>d from
+<literal>'.'</literal>), but only on demand (i.e. when given
+<literal>POT</literal> file is required or when special alias is invoked). This
+builder adds its targe node (<filename>messages.pot</filename>, say) to a
+special alias (<literal>pot-update</literal> by default, see
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-POTUPDATE_ALIAS"><envar>$POTUPDATE_ALIAS</envar></link>) so you can update/create them easily with
+<command>scons pot-update</command>. The file is not written until there is no
+real change in internationalized messages (or in comments that enter
+<literal>POT</literal> file).
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<note> <para>You may see <command>xgettext(1)</command> being invoked by the
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="t-xgettext"><literal>xgettext</literal></link> tool even if there is no real change in internationalized
+messages (so the <literal>POT</literal> file is not being updated). This
+happens every time a source file has changed. In such case we invoke
+<command>xgettext(1)</command> and compare its output with the content of
+<literal>POT</literal> file to decide whether the file should be updated or
+not.</para></note>
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<emphasis>Example 1.</emphasis>
+Let's create <filename>po/</filename> directory and place following
+<filename>SConstruct</filename> script there:
+</para>
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+ # SConstruct in 'po/' subdir
+ env = Environment( tools = ['default', 'xgettext'] )
+ env.POTUpdate(['foo'], ['../a.cpp', '../b.cpp'])
+ env.POTUpdate(['bar'], ['../c.cpp', '../d.cpp'])
+</example_commands>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Then invoke scons few times:
+</para>
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+ user@host:$ scons # Does not create foo.pot nor bar.pot
+ user@host:$ scons foo.pot # Updates or creates foo.pot
+ user@host:$ scons pot-update # Updates or creates foo.pot and bar.pot
+ user@host:$ scons -c # Does not clean foo.pot nor bar.pot.
+</example_commands>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+the results shall be as the comments above say.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<emphasis>Example 2.</emphasis>
+The <function xmlns="http://www.scons.org/dbxsd/v1.0">POTUpdate</function> builder may be used with no target specified, in which
+case default target <filename>messages.pot</filename> will be used. The
+default target may also be overriden by setting <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-POTDOMAIN"><envar>$POTDOMAIN</envar></link> construction
+variable or providing it as an override to <function xmlns="http://www.scons.org/dbxsd/v1.0">POTUpdate</function> builder:
+</para>
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+ # SConstruct script
+ env = Environment( tools = ['default', 'xgettext'] )
+ env['POTDOMAIN'] = "foo"
+ env.POTUpdate(source = ["a.cpp", "b.cpp"]) # Creates foo.pot ...
+ env.POTUpdate(POTDOMAIN = "bar", source = ["c.cpp", "d.cpp"]) # and bar.pot
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<emphasis>Example 3.</emphasis>
+The sources may be specified within separate file, for example
+<filename>POTFILES.in</filename>:
+</para>
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+ # POTFILES.in in 'po/' subdirectory
+ ../a.cpp
+ ../b.cpp
+ # end of file
+</example_commands>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The name of the file (<filename>POTFILES.in</filename>) containing the list of
+sources is provided via <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-XGETTEXTFROM"><envar>$XGETTEXTFROM</envar></link>:
+</para>
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+ # SConstruct file in 'po/' subdirectory
+ env = Environment( tools = ['default', 'xgettext'] )
+ env.POTUpdate(XGETTEXTFROM = 'POTFILES.in')
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<emphasis>Example 4.</emphasis>
+You may use <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-XGETTEXTPATH"><envar>$XGETTEXTPATH</envar></link> to define source search path. Assume, for
+example, that you have files <filename>a.cpp</filename>,
+<filename>b.cpp</filename>, <filename>po/SConstruct</filename>,
+<filename>po/POTFILES.in</filename>. Then your <literal>POT</literal>-related
+files could look as below:
+</para>
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+ # POTFILES.in in 'po/' subdirectory
+ a.cpp
+ b.cpp
+ # end of file
+</example_commands>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+ # SConstruct file in 'po/' subdirectory
+ env = Environment( tools = ['default', 'xgettext'] )
+ env.POTUpdate(XGETTEXTFROM = 'POTFILES.in', XGETTEXTPATH='../')
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<emphasis>Example 5.</emphasis>
+Multiple search directories may be defined within a list, i.e.
+<literal>XGETTEXTPATH = ['dir1', 'dir2', ...]</literal>. The order in the list
+determines the search order of source files. The path to the first file found
+is used.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Let's create <filename>0/1/po/SConstruct</filename> script:
+</para>
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+ # SConstruct file in '0/1/po/' subdirectory
+ env = Environment( tools = ['default', 'xgettext'] )
+ env.POTUpdate(XGETTEXTFROM = 'POTFILES.in', XGETTEXTPATH=['../', '../../'])
+</example_commands>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+and <filename>0/1/po/POTFILES.in</filename>:
+</para>
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+ # POTFILES.in in '0/1/po/' subdirectory
+ a.cpp
+ # end of file
+</example_commands>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Write two <filename>*.cpp</filename> files, the first one is
+<filename>0/a.cpp</filename>:
+</para>
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+ /* 0/a.cpp */
+ gettext("Hello from ../../a.cpp")
+</example_commands>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+and the second is <filename>0/1/a.cpp</filename>:
+</para>
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+ /* 0/1/a.cpp */
+ gettext("Hello from ../a.cpp")
+</example_commands>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+then run scons. You'll obtain <literal>0/1/po/messages.pot</literal> with the
+message <literal>"Hello from ../a.cpp"</literal>. When you reverse order in
+<varname>$XGETTEXTFOM</varname>, i.e. when you write SConscript as
+</para>
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+ # SConstruct file in '0/1/po/' subdirectory
+ env = Environment( tools = ['default', 'xgettext'] )
+ env.POTUpdate(XGETTEXTFROM = 'POTFILES.in', XGETTEXTPATH=['../../', '../'])
+</example_commands>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+then the <filename>messages.pot</filename> will contain
+<literal>msgid "Hello from ../../a.cpp"</literal> line and not
+<literal>msgid "Hello from ../a.cpp"</literal>.
+</para>
+
+</listitem>
+ </varlistentry>
+ <varlistentry id="b-POUpdate">
+ <term>
+ <synopsis>
+ <function>POUpdate()</function>
+ </synopsis>
+ <synopsis>
+ <function>env.POUpdate()</function>
+ </synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The builder belongs to <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="t-msgmerge"><literal>msgmerge</literal></link> tool. The builder updates
+<literal>PO</literal> files with <command>msgmerge(1)</command>, or initializes
+missing <literal>PO</literal> files as described in documentation of
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="t-msginit"><literal>msginit</literal></link> tool and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-POInit"><function>POInit</function></link> builder (see also
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-POAUTOINIT"><envar>$POAUTOINIT</envar></link>). Note, that <function xmlns="http://www.scons.org/dbxsd/v1.0">POUpdate</function> <emphasis>does not add its
+targets to <literal>po-create</literal> alias</emphasis> as <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-POInit"><function>POInit</function></link>
+does.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Target nodes defined through <function xmlns="http://www.scons.org/dbxsd/v1.0">POUpdate</function> are not built by default
+(they're <literal>Ignore</literal>d from <literal>'.'</literal> node). Instead,
+they are added automatically to special <literal>Alias</literal>
+(<literal>'po-update'</literal> by default). The alias name may be changed
+through the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-POUPDATE_ALIAS"><envar>$POUPDATE_ALIAS</envar></link> construction variable. You can easilly
+update <literal>PO</literal> files in your project by <command>scons
+po-update</command>.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<emphasis>Example 1.</emphasis>
+Update <filename>en.po</filename> and <filename>pl.po</filename> from
+<filename>messages.pot</filename> template (see also <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-POTDOMAIN"><envar>$POTDOMAIN</envar></link>),
+assuming that the later one exists or there is rule to build it (see
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-POTUpdate"><function>POTUpdate</function></link>):
+</para>
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+ # ...
+ env.POUpdate(['en','pl']) # messages.pot --&gt; [en.po, pl.po]
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<emphasis>Example 2.</emphasis>
+Update <filename>en.po</filename> and <filename>pl.po</filename> from
+<filename>foo.pot</filename> template:
+</para>
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+ # ...
+ env.POUpdate(['en', 'pl'], ['foo']) # foo.pot --&gt; [en.po, pl.pl]
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<emphasis>Example 3.</emphasis>
+Update <filename>en.po</filename> and <filename>pl.po</filename> from
+<filename>foo.pot</filename> (another version):
+</para>
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+ # ...
+ env.POUpdate(['en', 'pl'], POTDOMAIN='foo') # foo.pot -- &gt; [en.po, pl.pl]
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<emphasis>Example 4.</emphasis>
+Update files for languages defined in <filename>LINGUAS</filename> file. The
+files are updated from <filename>messages.pot</filename> template:
+</para>
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+ # ...
+ env.POUpdate(LINGUAS_FILE = 1) # needs 'LINGUAS' file
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<emphasis>Example 5.</emphasis>
+Same as above, but update from <filename>foo.pot</filename> template:
+</para>
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+ # ...
+ env.POUpdate(LINGUAS_FILE = 1, source = ['foo'])
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<emphasis>Example 6.</emphasis>
+Update <filename>en.po</filename> and <filename>pl.po</filename> plus files for
+languages defined in <filename>LINGUAS</filename> file. The files are updated
+from <filename>messages.pot</filename> template:
+</para>
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+ # produce 'en.po', 'pl.po' + files defined in 'LINGUAS':
+ env.POUpdate(['en', 'pl' ], LINGUAS_FILE = 1)
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<emphasis>Example 7.</emphasis>
+Use <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-POAUTOINIT"><envar>$POAUTOINIT</envar></link> to automatically initialize <literal>PO</literal> file
+if it doesn't exist:
+</para>
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+ # ...
+ env.POUpdate(LINGUAS_FILE = 1, POAUTOINIT = 1)
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<emphasis>Example 8.</emphasis>
+Update <literal>PO</literal> files for languages defined in
+<filename>LINGUAS</filename> file. The files are updated from
+<filename>foo.pot</filename> template. All necessary settings are
+pre-configured via environment.
+</para>
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+ # ...
+ env['POAUTOINIT'] = 1
+ env['LINGUAS_FILE'] = 1
+ env['POTDOMAIN'] = 'foo'
+ env.POUpdate()
+</example_commands>
+
+</listitem>
+ </varlistentry>
+ <varlistentry id="b-Program">
+ <term>
+ <synopsis>
+ <function>Program()</function>
+ </synopsis>
+ <synopsis>
+ <function>env.Program()</function>
+ </synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Builds an executable given one or more object files
+or C, C++, D, or Fortran source files.
+If any C, C++, D or Fortran source files are specified,
+then they will be automatically
+compiled to object files using the
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Object</function>
+builder method;
+see that builder method's description for
+a list of legal source file suffixes
+and how they are interpreted.
+The target executable file prefix
+(specified by the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-PROGPREFIX"><envar>$PROGPREFIX</envar></link> construction variable; nothing by default)
+and suffix
+(specified by the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-PROGSUFFIX"><envar>$PROGSUFFIX</envar></link> construction variable;
+by default, <filename>.exe</filename> on Windows systems,
+nothing on POSIX systems)
+are automatically added to the target if not already present.
+Example:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env.Program(target = 'foo', source = ['foo.o', 'bar.c', 'baz.f'])
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="b-RES">
+ <term>
+ <synopsis>
+ <function>RES()</function>
+ </synopsis>
+ <synopsis>
+ <function>env.RES()</function>
+ </synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Builds a Microsoft Visual C++ resource file.
+This builder method is only provided
+when Microsoft Visual C++ or MinGW is being used as the compiler. The
+<filename>.res</filename>
+(or
+<filename>.o</filename>
+for MinGW) suffix is added to the target name if no other suffix is given.
+The source
+file is scanned for implicit dependencies as though it were a C file.
+Example:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env.RES('resource.rc')
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="b-RMIC">
+ <term>
+ <synopsis>
+ <function>RMIC()</function>
+ </synopsis>
+ <synopsis>
+ <function>env.RMIC()</function>
+ </synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Builds stub and skeleton class files
+for remote objects
+from Java <filename>.class</filename> files.
+The target is a directory
+relative to which the stub
+and skeleton class files will be written.
+The source can be the names of <filename>.class</filename> files,
+or the objects return from the
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Java</function>
+builder method.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+If the construction variable
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-JAVACLASSDIR"><envar>$JAVACLASSDIR</envar></link>
+is set, either in the environment
+or in the call to the
+<function xmlns="http://www.scons.org/dbxsd/v1.0">RMIC</function>
+builder method itself,
+then the value of the variable
+will be stripped from the
+beginning of any <filename>.class </filename>
+file names.
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+classes = env.Java(target = 'classdir', source = 'src')
+env.RMIC(target = 'outdir1', source = classes)
+
+env.RMIC(target = 'outdir2',
+ source = ['package/foo.class', 'package/bar.class'])
+
+env.RMIC(target = 'outdir3',
+ source = ['classes/foo.class', 'classes/bar.class'],
+ JAVACLASSDIR = 'classes')
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="b-RPCGenClient">
+ <term>
+ <synopsis>
+ <function>RPCGenClient()</function>
+ </synopsis>
+ <synopsis>
+ <function>env.RPCGenClient()</function>
+ </synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Generates an RPC client stub (<filename>_clnt.c</filename>) file
+from a specified RPC (<filename>.x</filename>) source file.
+Because rpcgen only builds output files
+in the local directory,
+the command will be executed
+in the source file's directory by default.
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+# Builds src/rpcif_clnt.c
+env.RPCGenClient('src/rpcif.x')
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="b-RPCGenHeader">
+ <term>
+ <synopsis>
+ <function>RPCGenHeader()</function>
+ </synopsis>
+ <synopsis>
+ <function>env.RPCGenHeader()</function>
+ </synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Generates an RPC header (<filename>.h</filename>) file
+from a specified RPC (<filename>.x</filename>) source file.
+Because rpcgen only builds output files
+in the local directory,
+the command will be executed
+in the source file's directory by default.
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+# Builds src/rpcif.h
+env.RPCGenHeader('src/rpcif.x')
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="b-RPCGenService">
+ <term>
+ <synopsis>
+ <function>RPCGenService()</function>
+ </synopsis>
+ <synopsis>
+ <function>env.RPCGenService()</function>
+ </synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Generates an RPC server-skeleton (<filename>_svc.c</filename>) file
+from a specified RPC (<filename>.x</filename>) source file.
+Because rpcgen only builds output files
+in the local directory,
+the command will be executed
+in the source file's directory by default.
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+# Builds src/rpcif_svc.c
+env.RPCGenClient('src/rpcif.x')
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="b-RPCGenXDR">
+ <term>
+ <synopsis>
+ <function>RPCGenXDR()</function>
+ </synopsis>
+ <synopsis>
+ <function>env.RPCGenXDR()</function>
+ </synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Generates an RPC XDR routine (<filename>_xdr.c</filename>) file
+from a specified RPC (<filename>.x</filename>) source file.
+Because rpcgen only builds output files
+in the local directory,
+the command will be executed
+in the source file's directory by default.
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+# Builds src/rpcif_xdr.c
+env.RPCGenClient('src/rpcif.x')
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="b-SharedLibrary">
+ <term>
+ <synopsis>
+ <function>SharedLibrary()</function>
+ </synopsis>
+ <synopsis>
+ <function>env.SharedLibrary()</function>
+ </synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Builds a shared library
+(<filename>.so</filename> on a POSIX system,
+<filename>.dll</filename> on Windows)
+given one or more object files
+or C, C++, D or Fortran source files.
+If any source files are given,
+then they will be automatically
+compiled to object files.
+The static library prefix and suffix (if any)
+are automatically added to the target.
+The target library file prefix
+(specified by the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHLIBPREFIX"><envar>$SHLIBPREFIX</envar></link> construction variable;
+by default, <filename>lib</filename> on POSIX systems,
+nothing on Windows systems)
+and suffix
+(specified by the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHLIBSUFFIX"><envar>$SHLIBSUFFIX</envar></link> construction variable;
+by default, <filename>.dll</filename> on Windows systems,
+<filename>.so</filename> on POSIX systems)
+are automatically added to the target if not already present.
+Example:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env.SharedLibrary(target = 'bar', source = ['bar.c', 'foo.o'])
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+On Windows systems, the
+<function xmlns="http://www.scons.org/dbxsd/v1.0">SharedLibrary</function>
+builder method will always build an import
+(<filename>.lib</filename>) library
+in addition to the shared (<filename>.dll</filename>) library,
+adding a <filename>.lib</filename> library with the same basename
+if there is not already a <filename>.lib</filename> file explicitly
+listed in the targets.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Any object files listed in the
+<literal>source</literal>
+must have been built for a shared library
+(that is, using the
+<function xmlns="http://www.scons.org/dbxsd/v1.0">SharedObject</function>
+builder method).
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+will raise an error if there is any mismatch.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+On some platforms, there is a distinction between a shared library
+(loaded automatically by the system to resolve external references)
+and a loadable module (explicitly loaded by user action).
+For maximum portability, use the <function xmlns="http://www.scons.org/dbxsd/v1.0">LoadableModule</function> builder for the latter.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+When the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHLIBVERSION"><envar>$SHLIBVERSION</envar></link> construction variable is defined a versioned
+shared library is created. This modifies the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHLINKFLAGS"><envar>$SHLINKFLAGS</envar></link> as required,
+adds the version number to the library name, and creates the symlinks that
+are needed. <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHLIBVERSION"><envar>$SHLIBVERSION</envar></link> needs to be of the form X.Y.Z, where X
+and Y are numbers, and Z is a number but can also contain letters to designate
+alpha, beta, or release candidate patch levels.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This builder may create multiple links to the library. On a POSIX system,
+for the shared library libbar.so.2.3.1, the links created would be
+libbar.so, libbar.so.2, and libbar.so.2.3; on a Darwin (OSX) system
+the library would be libbar.2.3.1.dylib and the link would be
+libbar.dylib.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+On Windows systems, specifying
+<literal>register=1</literal>
+will cause the <filename>.dll</filename> to be
+registered after it is built using REGSVR32.
+The command that is run
+("regsvr32" by default) is determined by <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-REGSVR"><envar>$REGSVR</envar></link> construction
+variable, and the flags passed are determined by <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-REGSVRFLAGS"><envar>$REGSVRFLAGS</envar></link>. By
+default, <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-REGSVRFLAGS"><envar>$REGSVRFLAGS</envar></link> includes the <option>/s</option> option,
+to prevent dialogs from popping
+up and requiring user attention when it is run. If you change
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-REGSVRFLAGS"><envar>$REGSVRFLAGS</envar></link>, be sure to include the <option>/s</option> option.
+For example,
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env.SharedLibrary(target = 'bar',
+ source = ['bar.cxx', 'foo.obj'],
+ register=1)
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+will register <filename>bar.dll</filename> as a COM object
+when it is done linking it.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="b-SharedObject">
+ <term>
+ <synopsis>
+ <function>SharedObject()</function>
+ </synopsis>
+ <synopsis>
+ <function>env.SharedObject()</function>
+ </synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Builds an object file for
+inclusion in a shared library.
+Source files must have one of the same set of extensions
+specified above for the
+<function xmlns="http://www.scons.org/dbxsd/v1.0">StaticObject</function>
+builder method.
+On some platforms building a shared object requires additional
+compiler option
+(e.g. <option>-fPIC</option> for gcc)
+in addition to those needed to build a
+normal (static) object, but on some platforms there is no difference between a
+shared object and a normal (static) one. When there is a difference, SCons
+will only allow shared objects to be linked into a shared library, and will
+use a different suffix for shared objects. On platforms where there is no
+difference, SCons will allow both normal (static)
+and shared objects to be linked into a
+shared library, and will use the same suffix for shared and normal
+(static) objects.
+The target object file prefix
+(specified by the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHOBJPREFIX"><envar>$SHOBJPREFIX</envar></link> construction variable;
+by default, the same as <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-OBJPREFIX"><envar>$OBJPREFIX</envar></link>)
+and suffix
+(specified by the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHOBJSUFFIX"><envar>$SHOBJSUFFIX</envar></link> construction variable)
+are automatically added to the target if not already present.
+Examples:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env.SharedObject(target = 'ddd', source = 'ddd.c')
+env.SharedObject(target = 'eee.o', source = 'eee.cpp')
+env.SharedObject(target = 'fff.obj', source = 'fff.for')
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Note that the source files will be scanned
+according to the suffix mappings in the
+<literal>SourceFileScanner</literal>
+object.
+See the section "Scanner Objects,"
+below, for more information.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="b-StaticLibrary">
+ <term>
+ <synopsis>
+ <function>StaticLibrary()</function>
+ </synopsis>
+ <synopsis>
+ <function>env.StaticLibrary()</function>
+ </synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Builds a static library given one or more object files
+or C, C++, D or Fortran source files.
+If any source files are given,
+then they will be automatically
+compiled to object files.
+The static library prefix and suffix (if any)
+are automatically added to the target.
+The target library file prefix
+(specified by the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-LIBPREFIX"><envar>$LIBPREFIX</envar></link> construction variable;
+by default, <filename>lib</filename> on POSIX systems,
+nothing on Windows systems)
+and suffix
+(specified by the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-LIBSUFFIX"><envar>$LIBSUFFIX</envar></link> construction variable;
+by default, <filename>.lib</filename> on Windows systems,
+<filename>.a</filename> on POSIX systems)
+are automatically added to the target if not already present.
+Example:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env.StaticLibrary(target = 'bar', source = ['bar.c', 'foo.o'])
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Any object files listed in the
+<literal>source</literal>
+must have been built for a static library
+(that is, using the
+<function xmlns="http://www.scons.org/dbxsd/v1.0">StaticObject</function>
+builder method).
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+will raise an error if there is any mismatch.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="b-StaticObject">
+ <term>
+ <synopsis>
+ <function>StaticObject()</function>
+ </synopsis>
+ <synopsis>
+ <function>env.StaticObject()</function>
+ </synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Builds a static object file
+from one or more C, C++, D, or Fortran source files.
+Source files must have one of the following extensions:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+ .asm assembly language file
+ .ASM assembly language file
+ .c C file
+ .C Windows: C file
+ POSIX: C++ file
+ .cc C++ file
+ .cpp C++ file
+ .cxx C++ file
+ .cxx C++ file
+ .c++ C++ file
+ .C++ C++ file
+ .d D file
+ .f Fortran file
+ .F Windows: Fortran file
+ POSIX: Fortran file + C pre-processor
+ .for Fortran file
+ .FOR Fortran file
+ .fpp Fortran file + C pre-processor
+ .FPP Fortran file + C pre-processor
+ .m Object C file
+ .mm Object C++ file
+ .s assembly language file
+ .S Windows: assembly language file
+ ARM: CodeSourcery Sourcery Lite
+ .sx assembly language file + C pre-processor
+ POSIX: assembly language file + C pre-processor
+ .spp assembly language file + C pre-processor
+ .SPP assembly language file + C pre-processor
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The target object file prefix
+(specified by the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-OBJPREFIX"><envar>$OBJPREFIX</envar></link> construction variable; nothing by default)
+and suffix
+(specified by the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-OBJSUFFIX"><envar>$OBJSUFFIX</envar></link> construction variable;
+<filename>.obj</filename> on Windows systems,
+<filename>.o</filename> on POSIX systems)
+are automatically added to the target if not already present.
+Examples:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env.StaticObject(target = 'aaa', source = 'aaa.c')
+env.StaticObject(target = 'bbb.o', source = 'bbb.c++')
+env.StaticObject(target = 'ccc.obj', source = 'ccc.f')
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Note that the source files will be scanned
+according to the suffix mappings in
+<literal>SourceFileScanner</literal>
+object.
+See the section "Scanner Objects,"
+below, for more information.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="b-Substfile">
+ <term>
+ <synopsis>
+ <function>Substfile()</function>
+ </synopsis>
+ <synopsis>
+ <function>env.Substfile()</function>
+ </synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The <function xmlns="http://www.scons.org/dbxsd/v1.0">Substfile</function> builder generates a single text file
+by concatenating the source files.
+Nested lists of sources are flattened.
+<envar xmlns="http://www.scons.org/dbxsd/v1.0">$LINESEPARATOR</envar> is used to separate the source files;
+see the description of <function xmlns="http://www.scons.org/dbxsd/v1.0">Textfile</function> for details.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+If a single source file is present with an <filename>.in</filename> suffix,
+the suffix is stripped and the remainder is used as the default target name.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The prefix and suffix specified by the <envar xmlns="http://www.scons.org/dbxsd/v1.0">$SUBSTFILEPREFIX</envar>
+and <envar xmlns="http://www.scons.org/dbxsd/v1.0">$SUBSTFILESUFFIX</envar> construction variables
+(the null string by default in both cases)
+are automatically added to the target if they are not already present.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+If a construction variable named <envar xmlns="http://www.scons.org/dbxsd/v1.0">$SUBST_DICT</envar> is present,
+it may be either a Python dictionary or a sequence of (key,value) tuples.
+If the former,
+the dictionary is converted into a list of tuples in an arbitrary order,
+so if one key is a prefix of another key
+or if one substitution could be further expanded by another subsitition,
+it is unpredictible whether the expansion will occur.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Any occurences in the source of a key
+are replaced by the corresponding value,
+which may be a Python callable function or a string.
+If a value is a function,
+it is first called (with no arguments) to produce a string.
+The string is <emphasis>subst</emphasis>-expanded
+and the result replaces the key.
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment(tools = ['default', 'textfile'])
+
+env['prefix'] = '/usr/bin'
+script_dict = {'@prefix@': '/bin', @exec_prefix@: '$prefix'}
+env.Substfile('script.in', SUBST_DICT = script_dict)
+
+conf_dict = {'%VERSION%': '1.2.3', '%BASE%': 'MyProg'}
+env.Substfile('config.h.in', conf_dict, SUBST_DICT = conf_dict)
+
+# UNPREDICTABLE - one key is a prefix of another
+bad_foo = {'$foo': '$foo', '$foobar': '$foobar'}
+env.Substfile('foo.in', SUBST_DICT = bad_foo)
+
+# PREDICTABLE - keys are applied longest first
+good_foo = [('$foobar', '$foobar'), ('$foo', '$foo')]
+env.Substfile('foo.in', SUBST_DICT = good_foo)
+
+# UNPREDICTABLE - one substitution could be futher expanded
+bad_bar = {'@bar@': '@soap@', '@soap@': 'lye'}
+env.Substfile('bar.in', SUBST_DICT = bad_bar)
+
+# PREDICTABLE - substitutions are expanded in order
+good_bar = (('@bar@', '@soap@'), ('@soap@', 'lye'))
+env.Substfile('bar.in', SUBST_DICT = good_bar)
+
+# the SUBST_DICT may be in common (and not an override)
+substutions = {}
+subst = Environment(tools = ['textfile'], SUBST_DICT = substitutions)
+substitutions['@foo@'] = 'foo'
+subst['SUBST_DICT']['@bar@'] = 'bar'
+subst.Substfile('pgm1.c', [Value('#include "@foo@.h"'),
+ Value('#include "@bar@.h"'),
+ "common.in",
+ "pgm1.in"
+ ])
+subst.Substfile('pgm2.c', [Value('#include "@foo@.h"'),
+ Value('#include "@bar@.h"'),
+ "common.in",
+ "pgm2.in"
+ ])
+
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="b-Tar">
+ <term>
+ <synopsis>
+ <function>Tar()</function>
+ </synopsis>
+ <synopsis>
+ <function>env.Tar()</function>
+ </synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Builds a tar archive of the specified files
+and/or directories.
+Unlike most builder methods,
+the
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Tar</function>
+builder method may be called multiple times
+for a given target;
+each additional call
+adds to the list of entries
+that will be built into the archive.
+Any source directories will
+be scanned for changes to
+any on-disk files,
+regardless of whether or not
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+knows about them from other Builder or function calls.
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env.Tar('src.tar', 'src')
+
+# Create the stuff.tar file.
+env.Tar('stuff', ['subdir1', 'subdir2'])
+# Also add "another" to the stuff.tar file.
+env.Tar('stuff', 'another')
+
+# Set TARFLAGS to create a gzip-filtered archive.
+env = Environment(TARFLAGS = '-c -z')
+env.Tar('foo.tar.gz', 'foo')
+
+# Also set the suffix to .tgz.
+env = Environment(TARFLAGS = '-c -z',
+ TARSUFFIX = '.tgz')
+env.Tar('foo')
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="b-Textfile">
+ <term>
+ <synopsis>
+ <function>Textfile()</function>
+ </synopsis>
+ <synopsis>
+ <function>env.Textfile()</function>
+ </synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The <function xmlns="http://www.scons.org/dbxsd/v1.0">Textfile</function> builder generates a single text file.
+The source strings constitute the lines;
+nested lists of sources are flattened.
+<envar xmlns="http://www.scons.org/dbxsd/v1.0">$LINESEPARATOR</envar> is used to separate the strings.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+If present, the <envar xmlns="http://www.scons.org/dbxsd/v1.0">$SUBST_DICT</envar> construction variable
+is used to modify the strings before they are written;
+see the <function xmlns="http://www.scons.org/dbxsd/v1.0">Substfile</function> description for details.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The prefix and suffix specified by the <envar xmlns="http://www.scons.org/dbxsd/v1.0">$TEXTFILEPREFIX</envar>
+and <envar xmlns="http://www.scons.org/dbxsd/v1.0">$TEXTFILESUFFIX</envar> construction variables
+(the null string and <filename>.txt</filename> by default, respectively)
+are automatically added to the target if they are not already present.
+Examples:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+# builds/writes foo.txt
+env.Textfile(target = 'foo.txt', source = ['Goethe', 42, 'Schiller'])
+
+# builds/writes bar.txt
+env.Textfile(target = 'bar',
+ source = ['lalala', 'tanteratei'],
+ LINESEPARATOR='|*')
+
+# nested lists are flattened automatically
+env.Textfile(target = 'blob',
+ source = ['lalala', ['Goethe', 42 'Schiller'], 'tanteratei'])
+
+# files may be used as input by wraping them in File()
+env.Textfile(target = 'concat', # concatenate files with a marker between
+ source = [File('concat1'), File('concat2')],
+ LINESEPARATOR = '====================\n')
+
+Results are:
+foo.txt
+ ....8&lt;----
+ Goethe
+ 42
+ Schiller
+ ....8&lt;---- (no linefeed at the end)
+
+bar.txt:
+ ....8&lt;----
+ lalala|*tanteratei
+ ....8&lt;---- (no linefeed at the end)
+
+blob.txt
+ ....8&lt;----
+ lalala
+ Goethe
+ 42
+ Schiller
+ tanteratei
+ ....8&lt;---- (no linefeed at the end)
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="b-Translate">
+ <term>
+ <synopsis>
+ <function>Translate()</function>
+ </synopsis>
+ <synopsis>
+ <function>env.Translate()</function>
+ </synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This pseudo-builder belongs to <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="t-gettext"><literal>gettext</literal></link> toolset. The builder extracts
+internationalized messages from source files, updates <literal>POT</literal>
+template (if necessary) and then updates <literal>PO</literal> translations (if
+necessary). If <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-POAUTOINIT"><envar>$POAUTOINIT</envar></link> is set, missing <literal>PO</literal> files
+will be automatically created (i.e. without translator person intervention).
+The variables <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-LINGUAS_FILE"><envar>$LINGUAS_FILE</envar></link> and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-POTDOMAIN"><envar>$POTDOMAIN</envar></link> are taken into
+acount too. All other construction variables used by <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-POTUpdate"><function>POTUpdate</function></link>, and
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-POUpdate"><function>POUpdate</function></link> work here too.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<emphasis>Example 1</emphasis>.
+The simplest way is to specify input files and output languages inline in
+a SCons script when invoking <function xmlns="http://www.scons.org/dbxsd/v1.0">Translate</function>
+</para>
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+# SConscript in 'po/' directory
+env = Environment( tools = ["default", "gettext"] )
+env['POAUTOINIT'] = 1
+env.Translate(['en','pl'], ['../a.cpp','../b.cpp'])
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<emphasis>Example 2</emphasis>.
+If you wish, you may also stick to conventional style known from
+<productname>autotools</productname>, i.e. using
+<filename>POTFILES.in</filename> and <filename>LINGUAS</filename> files
+</para>
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+# LINGUAS
+en pl
+#end
+</example_commands>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+# POTFILES.in
+a.cpp
+b.cpp
+# end
+</example_commands>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+# SConscript
+env = Environment( tools = ["default", "gettext"] )
+env['POAUTOINIT'] = 1
+env['XGETTEXTPATH'] = ['../']
+env.Translate(LINGUAS_FILE = 1, XGETTEXTFROM = 'POTFILES.in')
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The last approach is perhaps the recommended one. It allows easily split
+internationalization/localization onto separate SCons scripts, where a script
+in source tree is responsible for translations (from sources to
+<literal>PO</literal> files) and script(s) under variant directories are
+responsible for compilation of <literal>PO</literal> to <literal>MO</literal>
+files to and for installation of <literal>MO</literal> files. The "gluing
+factor" synchronizing these two scripts is then the content of
+<filename>LINGUAS</filename> file. Note, that the updated
+<literal>POT</literal> and <literal>PO</literal> files are usually going to be
+committed back to the repository, so they must be updated within the source
+directory (and not in variant directories). Additionaly, the file listing of
+<filename>po/</filename> directory contains <filename>LINGUAS</filename> file,
+so the source tree looks familiar to translators, and they may work with the
+project in their usual way.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<emphasis>Example 3</emphasis>.
+Let's prepare a development tree as below
+</para>
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+ project/
+ + SConstruct
+ + build/
+ + src/
+ + po/
+ + SConscript
+ + SConscript.i18n
+ + POTFILES.in
+ + LINGUAS
+</example_commands>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+with <filename>build</filename> being variant directory. Write the top-level
+<filename>SConstruct</filename> script as follows
+</para>
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+ # SConstruct
+ env = Environment( tools = ["default", "gettext"] )
+ VariantDir('build', 'src', duplicate = 0)
+ env['POAUTOINIT'] = 1
+ SConscript('src/po/SConscript.i18n', exports = 'env')
+ SConscript('build/po/SConscript', exports = 'env')
+</example_commands>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+the <filename>src/po/SConscript.i18n</filename> as
+</para>
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+ # src/po/SConscript.i18n
+ Import('env')
+ env.Translate(LINGUAS_FILE=1, XGETTEXTFROM='POTFILES.in', XGETTEXTPATH=['../'])
+</example_commands>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+and the <filename>src/po/SConscript</filename>
+</para>
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+ # src/po/SConscript
+ Import('env')
+ env.MOFiles(LINGUAS_FILE = 1)
+</example_commands>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Such setup produces <literal>POT</literal> and <literal>PO</literal> files
+under source tree in <filename>src/po/</filename> and binary
+<literal>MO</literal> files under variant tree in
+<filename>build/po/</filename>. This way the <literal>POT</literal> and
+<literal>PO</literal> files are separated from other output files, which must
+not be committed back to source repositories (e.g. <literal>MO</literal>
+files).
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<note><para>In above example, the <literal>PO</literal> files are not updated,
+nor created automatically when you issue <command>scons '.'</command> command.
+The files must be updated (created) by hand via <command>scons
+po-update</command> and then <literal>MO</literal> files can be compiled by
+running <command>scons '.'</command>.</para></note>
+</para>
+
+</listitem>
+ </varlistentry>
+ <varlistentry id="b-TypeLibrary">
+ <term>
+ <synopsis>
+ <function>TypeLibrary()</function>
+ </synopsis>
+ <synopsis>
+ <function>env.TypeLibrary()</function>
+ </synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Builds a Windows type library (<filename>.tlb</filename>)
+file from an input IDL file (<filename>.idl</filename>).
+In addition, it will build the associated inteface stub and
+proxy source files,
+naming them according to the base name of the <filename>.idl</filename> file.
+For example,
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env.TypeLibrary(source="foo.idl")
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Will create <filename>foo.tlb</filename>,
+<filename>foo.h</filename>,
+<filename>foo_i.c</filename>,
+<filename>foo_p.c</filename>
+and
+<filename>foo_data.c</filename>
+files.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="b-Uic">
+ <term>
+ <synopsis>
+ <function>Uic()</function>
+ </synopsis>
+ <synopsis>
+ <function>env.Uic()</function>
+ </synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Builds a header file, an implementation file and a moc file from an ui file.
+and returns the corresponding nodes in the above order.
+This builder is only available after using the tool 'qt'. Note: you can
+specify <filename>.ui</filename> files directly as source
+files to the <function xmlns="http://www.scons.org/dbxsd/v1.0">Program</function>,
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Library</function> and <function xmlns="http://www.scons.org/dbxsd/v1.0">SharedLibrary</function> builders
+without using this builder. Using this builder lets you override the standard
+naming conventions (be careful: prefixes are always prepended to names of
+built files; if you don't want prefixes, you may set them to ``).
+See the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-QTDIR"><envar>$QTDIR</envar></link> variable for more information.
+Example:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env.Uic('foo.ui') # -&gt; ['foo.h', 'uic_foo.cc', 'moc_foo.cc']
+env.Uic(target = Split('include/foo.h gen/uicfoo.cc gen/mocfoo.cc'),
+ source = 'foo.ui') # -&gt; ['include/foo.h', 'gen/uicfoo.cc', 'gen/mocfoo.cc']
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="b-Zip">
+ <term>
+ <synopsis>
+ <function>Zip()</function>
+ </synopsis>
+ <synopsis>
+ <function>env.Zip()</function>
+ </synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Builds a zip archive of the specified files
+and/or directories.
+Unlike most builder methods,
+the
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Zip</function>
+builder method may be called multiple times
+for a given target;
+each additional call
+adds to the list of entries
+that will be built into the archive.
+Any source directories will
+be scanned for changes to
+any on-disk files,
+regardless of whether or not
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+knows about them from other Builder or function calls.
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env.Zip('src.zip', 'src')
+
+# Create the stuff.zip file.
+env.Zip('stuff', ['subdir1', 'subdir2'])
+# Also add "another" to the stuff.tar file.
+env.Zip('stuff', 'another')
+</example_commands>
+</listitem>
+ </varlistentry>
+</variablelist>
diff --git a/doc/generated/builders.mod b/doc/generated/builders.mod
new file mode 100644
index 00000000..13472db3
--- /dev/null
+++ b/doc/generated/builders.mod
@@ -0,0 +1,199 @@
+<!--
+THIS IS AN AUTOMATICALLY-GENERATED FILE. DO NOT EDIT.
+-->
+
+<!--
+
+ Regular builder entities.
+
+-->
+
+<!ENTITY b-CFile "<function xmlns='http://www.scons.org/dbxsd/v1.0'>CFile</function>">
+<!ENTITY b-Command "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Command</function>">
+<!ENTITY b-CXXFile "<function xmlns='http://www.scons.org/dbxsd/v1.0'>CXXFile</function>">
+<!ENTITY b-DVI "<function xmlns='http://www.scons.org/dbxsd/v1.0'>DVI</function>">
+<!ENTITY b-Install "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Install</function>">
+<!ENTITY b-InstallAs "<function xmlns='http://www.scons.org/dbxsd/v1.0'>InstallAs</function>">
+<!ENTITY b-InstallVersionedLib "<function xmlns='http://www.scons.org/dbxsd/v1.0'>InstallVersionedLib</function>">
+<!ENTITY b-Jar "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Jar</function>">
+<!ENTITY b-Java "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Java</function>">
+<!ENTITY b-JavaH "<function xmlns='http://www.scons.org/dbxsd/v1.0'>JavaH</function>">
+<!ENTITY b-Library "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Library</function>">
+<!ENTITY b-LoadableModule "<function xmlns='http://www.scons.org/dbxsd/v1.0'>LoadableModule</function>">
+<!ENTITY b-M4 "<function xmlns='http://www.scons.org/dbxsd/v1.0'>M4</function>">
+<!ENTITY b-Moc "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Moc</function>">
+<!ENTITY b-MOFiles "<function xmlns='http://www.scons.org/dbxsd/v1.0'>MOFiles</function>">
+<!ENTITY b-MSVSProject "<function xmlns='http://www.scons.org/dbxsd/v1.0'>MSVSProject</function>">
+<!ENTITY b-MSVSSolution "<function xmlns='http://www.scons.org/dbxsd/v1.0'>MSVSSolution</function>">
+<!ENTITY b-Object "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Object</function>">
+<!ENTITY b-Package "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Package</function>">
+<!ENTITY b-PCH "<function xmlns='http://www.scons.org/dbxsd/v1.0'>PCH</function>">
+<!ENTITY b-PDF "<function xmlns='http://www.scons.org/dbxsd/v1.0'>PDF</function>">
+<!ENTITY b-POInit "<function xmlns='http://www.scons.org/dbxsd/v1.0'>POInit</function>">
+<!ENTITY b-PostScript "<function xmlns='http://www.scons.org/dbxsd/v1.0'>PostScript</function>">
+<!ENTITY b-POTUpdate "<function xmlns='http://www.scons.org/dbxsd/v1.0'>POTUpdate</function>">
+<!ENTITY b-POUpdate "<function xmlns='http://www.scons.org/dbxsd/v1.0'>POUpdate</function>">
+<!ENTITY b-Program "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Program</function>">
+<!ENTITY b-RES "<function xmlns='http://www.scons.org/dbxsd/v1.0'>RES</function>">
+<!ENTITY b-RMIC "<function xmlns='http://www.scons.org/dbxsd/v1.0'>RMIC</function>">
+<!ENTITY b-RPCGenClient "<function xmlns='http://www.scons.org/dbxsd/v1.0'>RPCGenClient</function>">
+<!ENTITY b-RPCGenHeader "<function xmlns='http://www.scons.org/dbxsd/v1.0'>RPCGenHeader</function>">
+<!ENTITY b-RPCGenService "<function xmlns='http://www.scons.org/dbxsd/v1.0'>RPCGenService</function>">
+<!ENTITY b-RPCGenXDR "<function xmlns='http://www.scons.org/dbxsd/v1.0'>RPCGenXDR</function>">
+<!ENTITY b-SharedLibrary "<function xmlns='http://www.scons.org/dbxsd/v1.0'>SharedLibrary</function>">
+<!ENTITY b-SharedObject "<function xmlns='http://www.scons.org/dbxsd/v1.0'>SharedObject</function>">
+<!ENTITY b-StaticLibrary "<function xmlns='http://www.scons.org/dbxsd/v1.0'>StaticLibrary</function>">
+<!ENTITY b-StaticObject "<function xmlns='http://www.scons.org/dbxsd/v1.0'>StaticObject</function>">
+<!ENTITY b-Substfile "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Substfile</function>">
+<!ENTITY b-Tar "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Tar</function>">
+<!ENTITY b-Textfile "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Textfile</function>">
+<!ENTITY b-Translate "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Translate</function>">
+<!ENTITY b-TypeLibrary "<function xmlns='http://www.scons.org/dbxsd/v1.0'>TypeLibrary</function>">
+<!ENTITY b-Uic "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Uic</function>">
+<!ENTITY b-Zip "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Zip</function>">
+
+<!ENTITY b-env-CFile "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.CFile</function>">
+<!ENTITY b-env-Command "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Command</function>">
+<!ENTITY b-env-CXXFile "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.CXXFile</function>">
+<!ENTITY b-env-DVI "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.DVI</function>">
+<!ENTITY b-env-Install "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Install</function>">
+<!ENTITY b-env-InstallAs "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.InstallAs</function>">
+<!ENTITY b-env-InstallVersionedLib "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.InstallVersionedLib</function>">
+<!ENTITY b-env-Jar "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Jar</function>">
+<!ENTITY b-env-Java "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Java</function>">
+<!ENTITY b-env-JavaH "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.JavaH</function>">
+<!ENTITY b-env-Library "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Library</function>">
+<!ENTITY b-env-LoadableModule "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.LoadableModule</function>">
+<!ENTITY b-env-M4 "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.M4</function>">
+<!ENTITY b-env-Moc "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Moc</function>">
+<!ENTITY b-env-MOFiles "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.MOFiles</function>">
+<!ENTITY b-env-MSVSProject "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.MSVSProject</function>">
+<!ENTITY b-env-MSVSSolution "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.MSVSSolution</function>">
+<!ENTITY b-env-Object "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Object</function>">
+<!ENTITY b-env-Package "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Package</function>">
+<!ENTITY b-env-PCH "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.PCH</function>">
+<!ENTITY b-env-PDF "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.PDF</function>">
+<!ENTITY b-env-POInit "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.POInit</function>">
+<!ENTITY b-env-PostScript "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.PostScript</function>">
+<!ENTITY b-env-POTUpdate "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.POTUpdate</function>">
+<!ENTITY b-env-POUpdate "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.POUpdate</function>">
+<!ENTITY b-env-Program "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Program</function>">
+<!ENTITY b-env-RES "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.RES</function>">
+<!ENTITY b-env-RMIC "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.RMIC</function>">
+<!ENTITY b-env-RPCGenClient "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.RPCGenClient</function>">
+<!ENTITY b-env-RPCGenHeader "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.RPCGenHeader</function>">
+<!ENTITY b-env-RPCGenService "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.RPCGenService</function>">
+<!ENTITY b-env-RPCGenXDR "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.RPCGenXDR</function>">
+<!ENTITY b-env-SharedLibrary "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.SharedLibrary</function>">
+<!ENTITY b-env-SharedObject "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.SharedObject</function>">
+<!ENTITY b-env-StaticLibrary "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.StaticLibrary</function>">
+<!ENTITY b-env-StaticObject "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.StaticObject</function>">
+<!ENTITY b-env-Substfile "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Substfile</function>">
+<!ENTITY b-env-Tar "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Tar</function>">
+<!ENTITY b-env-Textfile "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Textfile</function>">
+<!ENTITY b-env-Translate "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Translate</function>">
+<!ENTITY b-env-TypeLibrary "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.TypeLibrary</function>">
+<!ENTITY b-env-Uic "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Uic</function>">
+<!ENTITY b-env-Zip "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Zip</function>">
+
+<!--
+THIS IS AN AUTOMATICALLY-GENERATED FILE. DO NOT EDIT.
+-->
+
+<!--
+
+ Entities that are links to the builder entries in the appendix.
+
+-->
+
+<!ENTITY b-link-CFile "<link linkend='b-CFile' xmlns='http://www.scons.org/dbxsd/v1.0'><function>CFile</function></link>">
+<!ENTITY b-link-Command "<link linkend='b-Command' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Command</function></link>">
+<!ENTITY b-link-CXXFile "<link linkend='b-CXXFile' xmlns='http://www.scons.org/dbxsd/v1.0'><function>CXXFile</function></link>">
+<!ENTITY b-link-DVI "<link linkend='b-DVI' xmlns='http://www.scons.org/dbxsd/v1.0'><function>DVI</function></link>">
+<!ENTITY b-link-Install "<link linkend='b-Install' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Install</function></link>">
+<!ENTITY b-link-InstallAs "<link linkend='b-InstallAs' xmlns='http://www.scons.org/dbxsd/v1.0'><function>InstallAs</function></link>">
+<!ENTITY b-link-InstallVersionedLib "<link linkend='b-InstallVersionedLib' xmlns='http://www.scons.org/dbxsd/v1.0'><function>InstallVersionedLib</function></link>">
+<!ENTITY b-link-Jar "<link linkend='b-Jar' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Jar</function></link>">
+<!ENTITY b-link-Java "<link linkend='b-Java' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Java</function></link>">
+<!ENTITY b-link-JavaH "<link linkend='b-JavaH' xmlns='http://www.scons.org/dbxsd/v1.0'><function>JavaH</function></link>">
+<!ENTITY b-link-Library "<link linkend='b-Library' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Library</function></link>">
+<!ENTITY b-link-LoadableModule "<link linkend='b-LoadableModule' xmlns='http://www.scons.org/dbxsd/v1.0'><function>LoadableModule</function></link>">
+<!ENTITY b-link-M4 "<link linkend='b-M4' xmlns='http://www.scons.org/dbxsd/v1.0'><function>M4</function></link>">
+<!ENTITY b-link-Moc "<link linkend='b-Moc' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Moc</function></link>">
+<!ENTITY b-link-MOFiles "<link linkend='b-MOFiles' xmlns='http://www.scons.org/dbxsd/v1.0'><function>MOFiles</function></link>">
+<!ENTITY b-link-MSVSProject "<link linkend='b-MSVSProject' xmlns='http://www.scons.org/dbxsd/v1.0'><function>MSVSProject</function></link>">
+<!ENTITY b-link-MSVSSolution "<link linkend='b-MSVSSolution' xmlns='http://www.scons.org/dbxsd/v1.0'><function>MSVSSolution</function></link>">
+<!ENTITY b-link-Object "<link linkend='b-Object' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Object</function></link>">
+<!ENTITY b-link-Package "<link linkend='b-Package' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Package</function></link>">
+<!ENTITY b-link-PCH "<link linkend='b-PCH' xmlns='http://www.scons.org/dbxsd/v1.0'><function>PCH</function></link>">
+<!ENTITY b-link-PDF "<link linkend='b-PDF' xmlns='http://www.scons.org/dbxsd/v1.0'><function>PDF</function></link>">
+<!ENTITY b-link-POInit "<link linkend='b-POInit' xmlns='http://www.scons.org/dbxsd/v1.0'><function>POInit</function></link>">
+<!ENTITY b-link-PostScript "<link linkend='b-PostScript' xmlns='http://www.scons.org/dbxsd/v1.0'><function>PostScript</function></link>">
+<!ENTITY b-link-POTUpdate "<link linkend='b-POTUpdate' xmlns='http://www.scons.org/dbxsd/v1.0'><function>POTUpdate</function></link>">
+<!ENTITY b-link-POUpdate "<link linkend='b-POUpdate' xmlns='http://www.scons.org/dbxsd/v1.0'><function>POUpdate</function></link>">
+<!ENTITY b-link-Program "<link linkend='b-Program' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Program</function></link>">
+<!ENTITY b-link-RES "<link linkend='b-RES' xmlns='http://www.scons.org/dbxsd/v1.0'><function>RES</function></link>">
+<!ENTITY b-link-RMIC "<link linkend='b-RMIC' xmlns='http://www.scons.org/dbxsd/v1.0'><function>RMIC</function></link>">
+<!ENTITY b-link-RPCGenClient "<link linkend='b-RPCGenClient' xmlns='http://www.scons.org/dbxsd/v1.0'><function>RPCGenClient</function></link>">
+<!ENTITY b-link-RPCGenHeader "<link linkend='b-RPCGenHeader' xmlns='http://www.scons.org/dbxsd/v1.0'><function>RPCGenHeader</function></link>">
+<!ENTITY b-link-RPCGenService "<link linkend='b-RPCGenService' xmlns='http://www.scons.org/dbxsd/v1.0'><function>RPCGenService</function></link>">
+<!ENTITY b-link-RPCGenXDR "<link linkend='b-RPCGenXDR' xmlns='http://www.scons.org/dbxsd/v1.0'><function>RPCGenXDR</function></link>">
+<!ENTITY b-link-SharedLibrary "<link linkend='b-SharedLibrary' xmlns='http://www.scons.org/dbxsd/v1.0'><function>SharedLibrary</function></link>">
+<!ENTITY b-link-SharedObject "<link linkend='b-SharedObject' xmlns='http://www.scons.org/dbxsd/v1.0'><function>SharedObject</function></link>">
+<!ENTITY b-link-StaticLibrary "<link linkend='b-StaticLibrary' xmlns='http://www.scons.org/dbxsd/v1.0'><function>StaticLibrary</function></link>">
+<!ENTITY b-link-StaticObject "<link linkend='b-StaticObject' xmlns='http://www.scons.org/dbxsd/v1.0'><function>StaticObject</function></link>">
+<!ENTITY b-link-Substfile "<link linkend='b-Substfile' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Substfile</function></link>">
+<!ENTITY b-link-Tar "<link linkend='b-Tar' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Tar</function></link>">
+<!ENTITY b-link-Textfile "<link linkend='b-Textfile' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Textfile</function></link>">
+<!ENTITY b-link-Translate "<link linkend='b-Translate' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Translate</function></link>">
+<!ENTITY b-link-TypeLibrary "<link linkend='b-TypeLibrary' xmlns='http://www.scons.org/dbxsd/v1.0'><function>TypeLibrary</function></link>">
+<!ENTITY b-link-Uic "<link linkend='b-Uic' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Uic</function></link>">
+<!ENTITY b-link-Zip "<link linkend='b-Zip' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Zip</function></link>">
+
+<!ENTITY b-link-env-CFile "<link linkend='b-CFile' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.CFile</function></link>">
+<!ENTITY b-link-env-Command "<link linkend='b-Command' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Command</function></link>">
+<!ENTITY b-link-env-CXXFile "<link linkend='b-CXXFile' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.CXXFile</function></link>">
+<!ENTITY b-link-env-DVI "<link linkend='b-DVI' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.DVI</function></link>">
+<!ENTITY b-link-env-Install "<link linkend='b-Install' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Install</function></link>">
+<!ENTITY b-link-env-InstallAs "<link linkend='b-InstallAs' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.InstallAs</function></link>">
+<!ENTITY b-link-env-InstallVersionedLib "<link linkend='b-InstallVersionedLib' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.InstallVersionedLib</function></link>">
+<!ENTITY b-link-env-Jar "<link linkend='b-Jar' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Jar</function></link>">
+<!ENTITY b-link-env-Java "<link linkend='b-Java' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Java</function></link>">
+<!ENTITY b-link-env-JavaH "<link linkend='b-JavaH' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.JavaH</function></link>">
+<!ENTITY b-link-env-Library "<link linkend='b-Library' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Library</function></link>">
+<!ENTITY b-link-env-LoadableModule "<link linkend='b-LoadableModule' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.LoadableModule</function></link>">
+<!ENTITY b-link-env-M4 "<link linkend='b-M4' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.M4</function></link>">
+<!ENTITY b-link-env-Moc "<link linkend='b-Moc' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Moc</function></link>">
+<!ENTITY b-link-env-MOFiles "<link linkend='b-MOFiles' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.MOFiles</function></link>">
+<!ENTITY b-link-env-MSVSProject "<link linkend='b-MSVSProject' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.MSVSProject</function></link>">
+<!ENTITY b-link-env-MSVSSolution "<link linkend='b-MSVSSolution' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.MSVSSolution</function></link>">
+<!ENTITY b-link-env-Object "<link linkend='b-Object' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Object</function></link>">
+<!ENTITY b-link-env-Package "<link linkend='b-Package' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Package</function></link>">
+<!ENTITY b-link-env-PCH "<link linkend='b-PCH' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.PCH</function></link>">
+<!ENTITY b-link-env-PDF "<link linkend='b-PDF' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.PDF</function></link>">
+<!ENTITY b-link-env-POInit "<link linkend='b-POInit' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.POInit</function></link>">
+<!ENTITY b-link-env-PostScript "<link linkend='b-PostScript' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.PostScript</function></link>">
+<!ENTITY b-link-env-POTUpdate "<link linkend='b-POTUpdate' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.POTUpdate</function></link>">
+<!ENTITY b-link-env-POUpdate "<link linkend='b-POUpdate' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.POUpdate</function></link>">
+<!ENTITY b-link-env-Program "<link linkend='b-Program' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Program</function></link>">
+<!ENTITY b-link-env-RES "<link linkend='b-RES' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.RES</function></link>">
+<!ENTITY b-link-env-RMIC "<link linkend='b-RMIC' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.RMIC</function></link>">
+<!ENTITY b-link-env-RPCGenClient "<link linkend='b-RPCGenClient' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.RPCGenClient</function></link>">
+<!ENTITY b-link-env-RPCGenHeader "<link linkend='b-RPCGenHeader' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.RPCGenHeader</function></link>">
+<!ENTITY b-link-env-RPCGenService "<link linkend='b-RPCGenService' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.RPCGenService</function></link>">
+<!ENTITY b-link-env-RPCGenXDR "<link linkend='b-RPCGenXDR' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.RPCGenXDR</function></link>">
+<!ENTITY b-link-env-SharedLibrary "<link linkend='b-SharedLibrary' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.SharedLibrary</function></link>">
+<!ENTITY b-link-env-SharedObject "<link linkend='b-SharedObject' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.SharedObject</function></link>">
+<!ENTITY b-link-env-StaticLibrary "<link linkend='b-StaticLibrary' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.StaticLibrary</function></link>">
+<!ENTITY b-link-env-StaticObject "<link linkend='b-StaticObject' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.StaticObject</function></link>">
+<!ENTITY b-link-env-Substfile "<link linkend='b-Substfile' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Substfile</function></link>">
+<!ENTITY b-link-env-Tar "<link linkend='b-Tar' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Tar</function></link>">
+<!ENTITY b-link-env-Textfile "<link linkend='b-Textfile' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Textfile</function></link>">
+<!ENTITY b-link-env-Translate "<link linkend='b-Translate' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Translate</function></link>">
+<!ENTITY b-link-env-TypeLibrary "<link linkend='b-TypeLibrary' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.TypeLibrary</function></link>">
+<!ENTITY b-link-env-Uic "<link linkend='b-Uic' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Uic</function></link>">
+<!ENTITY b-link-env-Zip "<link linkend='b-Zip' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Zip</function></link>">
+
+<!--
+THIS IS AN AUTOMATICALLY-GENERATED FILE. DO NOT EDIT.
+-->
diff --git a/doc/generated/examples/EnumVariable_map_1.xml b/doc/generated/examples/EnumVariable_map_1.xml
new file mode 100644
index 00000000..2b10a0fc
--- /dev/null
+++ b/doc/generated/examples/EnumVariable_map_1.xml
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q COLOR=navy foo.o</userinput>
+cc -o foo.o -c -DCOLOR="blue" foo.c
+</screen>
diff --git a/doc/generated/examples/addmethod_ex1_1.xml b/doc/generated/examples/addmethod_ex1_1.xml
new file mode 100644
index 00000000..8d46cc55
--- /dev/null
+++ b/doc/generated/examples/addmethod_ex1_1.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q /</userinput>
+cc -o hello.o -c hello.c
+cc -o hello hello.o
+Install file: "hello" as "/usr/bin/hello"
+Install file: "hello" as "install/bin/hello"
+</screen>
diff --git a/doc/generated/examples/addmethod_ex2_1.xml b/doc/generated/examples/addmethod_ex2_1.xml
new file mode 100644
index 00000000..08cf5b4d
--- /dev/null
+++ b/doc/generated/examples/addmethod_ex2_1.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cc -o test_stuff.o -c test_stuff.c
+cc -o tests/test_stuff test_stuff.o
+</screen>
diff --git a/doc/generated/examples/addmethod_ex2_2.xml b/doc/generated/examples/addmethod_ex2_2.xml
new file mode 100644
index 00000000..f7b21104
--- /dev/null
+++ b/doc/generated/examples/addmethod_ex2_2.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">C:\&gt;<userinput>scons -Q</userinput>
+rc /fores.res res.rc
+cl /Fotest_stuff.obj /c test_stuff.c /nologo
+link /nologo /OUT:tests\test_stuff.exe test_stuff.obj res.res
+embedManifestExeCheck(target, source, env)
+</screen>
diff --git a/doc/generated/examples/alias_ex1_1.xml b/doc/generated/examples/alias_ex1_1.xml
new file mode 100644
index 00000000..a2500168
--- /dev/null
+++ b/doc/generated/examples/alias_ex1_1.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q install</userinput>
+cc -o hello.o -c hello.c
+cc -o hello hello.o
+Install file: "hello" as "/usr/bin/hello"
+</screen>
diff --git a/doc/generated/examples/alias_ex2_1.xml b/doc/generated/examples/alias_ex2_1.xml
new file mode 100644
index 00000000..e49ba930
--- /dev/null
+++ b/doc/generated/examples/alias_ex2_1.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q install-bin</userinput>
+cc -o foo.o -c foo.c
+cc -o foo foo.o
+Install file: "foo" as "/usr/bin/foo"
+% <userinput>scons -Q install-lib</userinput>
+cc -o bar.o -c bar.c
+ar rc libbar.a bar.o
+ranlib libbar.a
+Install file: "libbar.a" as "/usr/lib/libbar.a"
+% <userinput>scons -Q -c /</userinput>
+Removed foo.o
+Removed foo
+Removed /usr/bin/foo
+Removed bar.o
+Removed libbar.a
+Removed /usr/lib/libbar.a
+% <userinput>scons -Q install</userinput>
+cc -o foo.o -c foo.c
+cc -o foo foo.o
+Install file: "foo" as "/usr/bin/foo"
+cc -o bar.o -c bar.c
+ar rc libbar.a bar.o
+ranlib libbar.a
+Install file: "libbar.a" as "/usr/lib/libbar.a"
+</screen>
diff --git a/doc/generated/examples/buildersbuiltin_ex1_1.xml b/doc/generated/examples/buildersbuiltin_ex1_1.xml
new file mode 100644
index 00000000..d3d4a8f2
--- /dev/null
+++ b/doc/generated/examples/buildersbuiltin_ex1_1.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q .</userinput>
+tar -c -f out1.tar file1 file2
+tar -c -f out2.tar directory
+</screen>
diff --git a/doc/generated/examples/buildersbuiltin_ex2_1.xml b/doc/generated/examples/buildersbuiltin_ex2_1.xml
new file mode 100644
index 00000000..4afbe115
--- /dev/null
+++ b/doc/generated/examples/buildersbuiltin_ex2_1.xml
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q .</userinput>
+tar -c -z -f out.tar.gz directory
+</screen>
diff --git a/doc/generated/examples/buildersbuiltin_ex3_1.xml b/doc/generated/examples/buildersbuiltin_ex3_1.xml
new file mode 100644
index 00000000..0d2937c5
--- /dev/null
+++ b/doc/generated/examples/buildersbuiltin_ex3_1.xml
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q .</userinput>
+tar -c -z -f out.tgz directory
+</screen>
diff --git a/doc/generated/examples/buildersbuiltin_ex4_1.xml b/doc/generated/examples/buildersbuiltin_ex4_1.xml
new file mode 100644
index 00000000..e9a170d6
--- /dev/null
+++ b/doc/generated/examples/buildersbuiltin_ex4_1.xml
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q .</userinput>
+zip(["out.zip"], ["file1", "file2"])
+</screen>
diff --git a/doc/generated/examples/buildersbuiltin_libs_1.xml b/doc/generated/examples/buildersbuiltin_libs_1.xml
new file mode 100644
index 00000000..031e5515
--- /dev/null
+++ b/doc/generated/examples/buildersbuiltin_libs_1.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cc -o goodbye.o -c goodbye.c
+cc -o hello.o -c hello.c
+cc -o hello hello.o goodbye.o -L/usr/dir1 -Ldir2 -lfoo1 -lfoo2
+</screen>
diff --git a/doc/generated/examples/buildersbuiltin_libs_2.xml b/doc/generated/examples/buildersbuiltin_libs_2.xml
new file mode 100644
index 00000000..5c3c1ea6
--- /dev/null
+++ b/doc/generated/examples/buildersbuiltin_libs_2.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">C:\&gt;<userinput>scons -Q</userinput>
+cl /Fogoodbye.obj /c goodbye.c /nologo
+cl /Fohello.obj /c hello.c /nologo
+link /nologo /OUT:hello.exe /LIBPATH:\usr\dir1 /LIBPATH:dir2 foo1.lib foo2.lib hello.obj goodbye.obj
+embedManifestExeCheck(target, source, env)
+</screen>
diff --git a/doc/generated/examples/builderscommands_ex1_1.xml b/doc/generated/examples/builderscommands_ex1_1.xml
new file mode 100644
index 00000000..32ab8b87
--- /dev/null
+++ b/doc/generated/examples/builderscommands_ex1_1.xml
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+sed 's/x/y/' &lt; foo.in &gt; foo.out
+</screen>
diff --git a/doc/generated/examples/builderscommands_ex2_1.xml b/doc/generated/examples/builderscommands_ex2_1.xml
new file mode 100644
index 00000000..fbacb6c7
--- /dev/null
+++ b/doc/generated/examples/builderscommands_ex2_1.xml
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+build(["foo.out"], ["foo.in"])
+</screen>
diff --git a/doc/generated/examples/builderswriting_MY_EMITTER_1.xml b/doc/generated/examples/builderswriting_MY_EMITTER_1.xml
new file mode 100644
index 00000000..da454e87
--- /dev/null
+++ b/doc/generated/examples/builderswriting_MY_EMITTER_1.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+my_command file1.input modify1.in &gt; file1.foo
+my_command file2.input modify2.in &gt; file2.foo
+</screen>
diff --git a/doc/generated/examples/builderswriting_ex1_1.xml b/doc/generated/examples/builderswriting_ex1_1.xml
new file mode 100644
index 00000000..879bb91f
--- /dev/null
+++ b/doc/generated/examples/builderswriting_ex1_1.xml
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+foobuild &lt; file.input &gt; file.foo
+</screen>
diff --git a/doc/generated/examples/builderswriting_ex2_1.xml b/doc/generated/examples/builderswriting_ex2_1.xml
new file mode 100644
index 00000000..15f7a792
--- /dev/null
+++ b/doc/generated/examples/builderswriting_ex2_1.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+AttributeError: 'SConsEnvironment' object has no attribute 'Program':
+ File "/home/my/project/SConstruct", line 4:
+ env.Program('hello.c')
+</screen>
diff --git a/doc/generated/examples/builderswriting_ex3_1.xml b/doc/generated/examples/builderswriting_ex3_1.xml
new file mode 100644
index 00000000..b4e2cf72
--- /dev/null
+++ b/doc/generated/examples/builderswriting_ex3_1.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+foobuild &lt; file.input &gt; file.foo
+cc -o hello.o -c hello.c
+cc -o hello hello.o
+</screen>
diff --git a/doc/generated/examples/builderswriting_ex4_1.xml b/doc/generated/examples/builderswriting_ex4_1.xml
new file mode 100644
index 00000000..87563c28
--- /dev/null
+++ b/doc/generated/examples/builderswriting_ex4_1.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+foobuild &lt; file1.input &gt; file1.foo
+foobuild &lt; file2.input &gt; file2.foo
+</screen>
diff --git a/doc/generated/examples/builderswriting_ex5_1.xml b/doc/generated/examples/builderswriting_ex5_1.xml
new file mode 100644
index 00000000..01317346
--- /dev/null
+++ b/doc/generated/examples/builderswriting_ex5_1.xml
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+build_function(["file.foo"], ["file.input"])
+</screen>
diff --git a/doc/generated/examples/builderswriting_ex6_1.xml b/doc/generated/examples/builderswriting_ex6_1.xml
new file mode 100644
index 00000000..879bb91f
--- /dev/null
+++ b/doc/generated/examples/builderswriting_ex6_1.xml
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+foobuild &lt; file.input &gt; file.foo
+</screen>
diff --git a/doc/generated/examples/builderswriting_ex7_1.xml b/doc/generated/examples/builderswriting_ex7_1.xml
new file mode 100644
index 00000000..34ef7e19
--- /dev/null
+++ b/doc/generated/examples/builderswriting_ex7_1.xml
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+foobuild file.foo new_target - file.input new_source
+</screen>
diff --git a/doc/generated/examples/caching_ex-random_1.xml b/doc/generated/examples/caching_ex-random_1.xml
new file mode 100644
index 00000000..c70dcb60
--- /dev/null
+++ b/doc/generated/examples/caching_ex-random_1.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cc -o f2.o -c f2.c
+cc -o f5.o -c f5.c
+cc -o f4.o -c f4.c
+cc -o f3.o -c f3.c
+cc -o f1.o -c f1.c
+cc -o prog f1.o f2.o f3.o f4.o f5.o
+</screen>
diff --git a/doc/generated/examples/caching_ex1_1.xml b/doc/generated/examples/caching_ex1_1.xml
new file mode 100644
index 00000000..93ce35d7
--- /dev/null
+++ b/doc/generated/examples/caching_ex1_1.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cc -o hello.o -c hello.c
+cc -o hello hello.o
+% <userinput>scons -Q -c</userinput>
+Removed hello.o
+Removed hello
+% <userinput>scons -Q</userinput>
+Retrieved `hello.o' from cache
+Retrieved `hello' from cache
+</screen>
diff --git a/doc/generated/examples/caching_ex1_2.xml b/doc/generated/examples/caching_ex1_2.xml
new file mode 100644
index 00000000..e975cf58
--- /dev/null
+++ b/doc/generated/examples/caching_ex1_2.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cc -o hello.o -c hello.c
+cc -o hello hello.o
+% <userinput>scons -Q -c</userinput>
+Removed hello.o
+Removed hello
+% <userinput>scons -Q --cache-show</userinput>
+cc -o hello.o -c hello.c
+cc -o hello hello.o
+</screen>
diff --git a/doc/generated/examples/caching_ex1_4.xml b/doc/generated/examples/caching_ex1_4.xml
new file mode 100644
index 00000000..bca1d53b
--- /dev/null
+++ b/doc/generated/examples/caching_ex1_4.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cc -o hello.o -c hello.c
+cc -o hello hello.o
+% <userinput>scons -Q -c</userinput>
+Removed hello.o
+Removed hello
+% <userinput>scons -Q</userinput>
+Retrieved `hello.o' from cache
+Retrieved `hello' from cache
+% <userinput>scons -Q -c</userinput>
+Removed hello.o
+Removed hello
+% <userinput>scons -Q --cache-disable</userinput>
+cc -o hello.o -c hello.c
+cc -o hello hello.o
+</screen>
diff --git a/doc/generated/examples/caching_ex1_5.xml b/doc/generated/examples/caching_ex1_5.xml
new file mode 100644
index 00000000..0d7d00c4
--- /dev/null
+++ b/doc/generated/examples/caching_ex1_5.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q --cache-disable</userinput>
+cc -o hello.o -c hello.c
+cc -o hello hello.o
+% <userinput>scons -Q -c</userinput>
+Removed hello.o
+Removed hello
+% <userinput>scons -Q --cache-disable</userinput>
+cc -o hello.o -c hello.c
+cc -o hello hello.o
+% <userinput>scons -Q --cache-force</userinput>
+scons: `.' is up to date.
+% <userinput>scons -Q</userinput>
+scons: `.' is up to date.
+</screen>
diff --git a/doc/generated/examples/commandline_ARGLIST_1.xml b/doc/generated/examples/commandline_ARGLIST_1.xml
new file mode 100644
index 00000000..071b8a17
--- /dev/null
+++ b/doc/generated/examples/commandline_ARGLIST_1.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q define=FOO</userinput>
+cc -o prog.o -c -DFOO prog.c
+% <userinput>scons -Q define=FOO define=BAR</userinput>
+cc -o prog.o -c -DFOO -DBAR prog.c
+</screen>
diff --git a/doc/generated/examples/commandline_ARGUMENTS_1.xml b/doc/generated/examples/commandline_ARGUMENTS_1.xml
new file mode 100644
index 00000000..710fa572
--- /dev/null
+++ b/doc/generated/examples/commandline_ARGUMENTS_1.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q debug=0</userinput>
+cc -o prog.o -c prog.c
+cc -o prog prog.o
+% <userinput>scons -Q debug=0</userinput>
+scons: `.' is up to date.
+% <userinput>scons -Q debug=1</userinput>
+cc -o prog.o -c -g prog.c
+cc -o prog prog.o
+% <userinput>scons -Q debug=1</userinput>
+scons: `.' is up to date.
+</screen>
diff --git a/doc/generated/examples/commandline_AddOption_1.xml b/doc/generated/examples/commandline_AddOption_1.xml
new file mode 100644
index 00000000..302f2476
--- /dev/null
+++ b/doc/generated/examples/commandline_AddOption_1.xml
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q -n</userinput>
+Install file: "foo.in" as "/usr/bin/foo.in"
+</screen>
diff --git a/doc/generated/examples/commandline_AddOption_2.xml b/doc/generated/examples/commandline_AddOption_2.xml
new file mode 100644
index 00000000..640fb4ec
--- /dev/null
+++ b/doc/generated/examples/commandline_AddOption_2.xml
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q -n --prefix=/tmp/install</userinput>
+Install file: "foo.in" as "/tmp/install/usr/bin/foo.in"
+</screen>
diff --git a/doc/generated/examples/commandline_BUILD_TARGETS_1_1.xml b/doc/generated/examples/commandline_BUILD_TARGETS_1_1.xml
new file mode 100644
index 00000000..ac2674fe
--- /dev/null
+++ b/doc/generated/examples/commandline_BUILD_TARGETS_1_1.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+BUILD_TARGETS is ['prog1']
+cc -o prog1.o -c prog1.c
+cc -o prog1 prog1.o
+% <userinput>scons -Q prog2</userinput>
+BUILD_TARGETS is ['prog2']
+cc -o prog2.o -c prog2.c
+cc -o prog2 prog2.o
+% <userinput>scons -Q -c .</userinput>
+BUILD_TARGETS is ['.']
+Removed prog1.o
+Removed prog1
+Removed prog2.o
+Removed prog2
+</screen>
diff --git a/doc/generated/examples/commandline_BoolVariable_1.xml b/doc/generated/examples/commandline_BoolVariable_1.xml
new file mode 100644
index 00000000..2c173254
--- /dev/null
+++ b/doc/generated/examples/commandline_BoolVariable_1.xml
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q RELEASE=yes foo.o</userinput>
+cc -o foo.o -c -DRELEASE_BUILD=True foo.c
+</screen>
diff --git a/doc/generated/examples/commandline_BoolVariable_2.xml b/doc/generated/examples/commandline_BoolVariable_2.xml
new file mode 100644
index 00000000..86bb6d92
--- /dev/null
+++ b/doc/generated/examples/commandline_BoolVariable_2.xml
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q RELEASE=t foo.o</userinput>
+cc -o foo.o -c -DRELEASE_BUILD=True foo.c
+</screen>
diff --git a/doc/generated/examples/commandline_BoolVariable_3.xml b/doc/generated/examples/commandline_BoolVariable_3.xml
new file mode 100644
index 00000000..f85dd562
--- /dev/null
+++ b/doc/generated/examples/commandline_BoolVariable_3.xml
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q RELEASE=no foo.o</userinput>
+cc -o foo.o -c -DRELEASE_BUILD=False foo.c
+</screen>
diff --git a/doc/generated/examples/commandline_BoolVariable_4.xml b/doc/generated/examples/commandline_BoolVariable_4.xml
new file mode 100644
index 00000000..2a7cb5f8
--- /dev/null
+++ b/doc/generated/examples/commandline_BoolVariable_4.xml
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q RELEASE=f foo.o</userinput>
+cc -o foo.o -c -DRELEASE_BUILD=False foo.c
+</screen>
diff --git a/doc/generated/examples/commandline_BoolVariable_5.xml b/doc/generated/examples/commandline_BoolVariable_5.xml
new file mode 100644
index 00000000..387f5cae
--- /dev/null
+++ b/doc/generated/examples/commandline_BoolVariable_5.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q RELEASE=bad_value foo.o</userinput>
+
+scons: *** Error converting option: RELEASE
+Invalid value for boolean option: bad_value
+File "/home/my/project/SConstruct", line 4, in &lt;module&gt;
+</screen>
diff --git a/doc/generated/examples/commandline_COMMAND_LINE_TARGETS_1.xml b/doc/generated/examples/commandline_COMMAND_LINE_TARGETS_1.xml
new file mode 100644
index 00000000..646635ef
--- /dev/null
+++ b/doc/generated/examples/commandline_COMMAND_LINE_TARGETS_1.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cc -o foo.o -c foo.c
+cc -o foo foo.o
+% <userinput>scons -Q bar</userinput>
+Don't forget to copy `bar' to the archive!
+cc -o bar.o -c bar.c
+cc -o bar bar.o
+</screen>
diff --git a/doc/generated/examples/commandline_DEFAULT_TARGETS_1_1.xml b/doc/generated/examples/commandline_DEFAULT_TARGETS_1_1.xml
new file mode 100644
index 00000000..69a30cb4
--- /dev/null
+++ b/doc/generated/examples/commandline_DEFAULT_TARGETS_1_1.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons</userinput>
+scons: Reading SConscript files ...
+DEFAULT_TARGETS is ['prog1']
+scons: done reading SConscript files.
+scons: Building targets ...
+cc -o prog1.o -c prog1.c
+cc -o prog1 prog1.o
+scons: done building targets.
+</screen>
diff --git a/doc/generated/examples/commandline_DEFAULT_TARGETS_2_1.xml b/doc/generated/examples/commandline_DEFAULT_TARGETS_2_1.xml
new file mode 100644
index 00000000..1fd1bc76
--- /dev/null
+++ b/doc/generated/examples/commandline_DEFAULT_TARGETS_2_1.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons</userinput>
+scons: Reading SConscript files ...
+DEFAULT_TARGETS is now ['prog1']
+DEFAULT_TARGETS is now ['prog1', 'prog2']
+scons: done reading SConscript files.
+scons: Building targets ...
+cc -o prog1.o -c prog1.c
+cc -o prog1 prog1.o
+cc -o prog2.o -c prog2.c
+cc -o prog2 prog2.o
+scons: done building targets.
+</screen>
diff --git a/doc/generated/examples/commandline_Default1_1.xml b/doc/generated/examples/commandline_Default1_1.xml
new file mode 100644
index 00000000..edc18129
--- /dev/null
+++ b/doc/generated/examples/commandline_Default1_1.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cc -o hello.o -c hello.c
+cc -o hello hello.o
+% <userinput>scons -Q</userinput>
+scons: `hello' is up to date.
+% <userinput>scons -Q goodbye</userinput>
+cc -o goodbye.o -c goodbye.c
+cc -o goodbye goodbye.o
+</screen>
diff --git a/doc/generated/examples/commandline_Default1_2.xml b/doc/generated/examples/commandline_Default1_2.xml
new file mode 100644
index 00000000..cb5907dd
--- /dev/null
+++ b/doc/generated/examples/commandline_Default1_2.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q .</userinput>
+cc -o goodbye.o -c goodbye.c
+cc -o goodbye goodbye.o
+cc -o hello.o -c hello.c
+cc -o hello hello.o
+</screen>
diff --git a/doc/generated/examples/commandline_Default2_1.xml b/doc/generated/examples/commandline_Default2_1.xml
new file mode 100644
index 00000000..1cf267ad
--- /dev/null
+++ b/doc/generated/examples/commandline_Default2_1.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cc -o prog1.o -c prog1.c
+cc -o prog1 prog1.o
+cc -o prog3.o -c prog3.c
+cc -o prog3 prog3.o
+% <userinput>scons -Q .</userinput>
+cc -o prog2.o -c prog2.c
+cc -o prog2 prog2.o
+</screen>
diff --git a/doc/generated/examples/commandline_Default3_1.xml b/doc/generated/examples/commandline_Default3_1.xml
new file mode 100644
index 00000000..54094370
--- /dev/null
+++ b/doc/generated/examples/commandline_Default3_1.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cc -o prog1/foo.o -c prog1/foo.c
+cc -o prog1/main.o -c prog1/main.c
+cc -o prog1/main prog1/main.o prog1/foo.o
+% <userinput>scons -Q</userinput>
+scons: `prog1' is up to date.
+% <userinput>scons -Q .</userinput>
+cc -o prog2/bar.o -c prog2/bar.c
+cc -o prog2/main.o -c prog2/main.c
+cc -o prog2/main prog2/main.o prog2/bar.o
+</screen>
diff --git a/doc/generated/examples/commandline_Default4_1.xml b/doc/generated/examples/commandline_Default4_1.xml
new file mode 100644
index 00000000..81acde4d
--- /dev/null
+++ b/doc/generated/examples/commandline_Default4_1.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+scons: *** No targets specified and no Default() targets found. Stop.
+% <userinput>scons -Q .</userinput>
+cc -o prog1.o -c prog1.c
+cc -o prog1 prog1.o
+cc -o prog2.o -c prog2.c
+cc -o prog2 prog2.o
+</screen>
diff --git a/doc/generated/examples/commandline_EnumVariable_1.xml b/doc/generated/examples/commandline_EnumVariable_1.xml
new file mode 100644
index 00000000..d1d4bed9
--- /dev/null
+++ b/doc/generated/examples/commandline_EnumVariable_1.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q COLOR=red foo.o</userinput>
+cc -o foo.o -c -DCOLOR="red" foo.c
+% <userinput>scons -Q COLOR=blue foo.o</userinput>
+cc -o foo.o -c -DCOLOR="blue" foo.c
+% <userinput>scons -Q COLOR=green foo.o</userinput>
+cc -o foo.o -c -DCOLOR="green" foo.c
+</screen>
diff --git a/doc/generated/examples/commandline_EnumVariable_2.xml b/doc/generated/examples/commandline_EnumVariable_2.xml
new file mode 100644
index 00000000..e3310ae3
--- /dev/null
+++ b/doc/generated/examples/commandline_EnumVariable_2.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q COLOR=magenta foo.o</userinput>
+
+scons: *** Invalid value for option COLOR: magenta. Valid values are: ('red', 'green', 'blue')
+File "/home/my/project/SConstruct", line 5, in &lt;module&gt;
+</screen>
diff --git a/doc/generated/examples/commandline_EnumVariable_3.xml b/doc/generated/examples/commandline_EnumVariable_3.xml
new file mode 100644
index 00000000..a3928dcc
--- /dev/null
+++ b/doc/generated/examples/commandline_EnumVariable_3.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q COLOR=Red foo.o</userinput>
+
+scons: *** Invalid value for option COLOR: Red. Valid values are: ('red', 'green', 'blue')
+File "/home/my/project/SConstruct", line 5, in &lt;module&gt;
+% <userinput>scons -Q COLOR=BLUE foo.o</userinput>
+
+scons: *** Invalid value for option COLOR: BLUE. Valid values are: ('red', 'green', 'blue')
+File "/home/my/project/SConstruct", line 5, in &lt;module&gt;
+% <userinput>scons -Q COLOR=nAvY foo.o</userinput>
+
+scons: *** Invalid value for option COLOR: nAvY. Valid values are: ('red', 'green', 'blue')
+File "/home/my/project/SConstruct", line 5, in &lt;module&gt;
+</screen>
diff --git a/doc/generated/examples/commandline_EnumVariable_ic1_1.xml b/doc/generated/examples/commandline_EnumVariable_ic1_1.xml
new file mode 100644
index 00000000..4e2a45ab
--- /dev/null
+++ b/doc/generated/examples/commandline_EnumVariable_ic1_1.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q COLOR=Red foo.o</userinput>
+cc -o foo.o -c -DCOLOR="Red" foo.c
+% <userinput>scons -Q COLOR=BLUE foo.o</userinput>
+cc -o foo.o -c -DCOLOR="BLUE" foo.c
+% <userinput>scons -Q COLOR=nAvY foo.o</userinput>
+cc -o foo.o -c -DCOLOR="blue" foo.c
+% <userinput>scons -Q COLOR=green foo.o</userinput>
+cc -o foo.o -c -DCOLOR="green" foo.c
+</screen>
diff --git a/doc/generated/examples/commandline_EnumVariable_ic2_1.xml b/doc/generated/examples/commandline_EnumVariable_ic2_1.xml
new file mode 100644
index 00000000..407419a5
--- /dev/null
+++ b/doc/generated/examples/commandline_EnumVariable_ic2_1.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q COLOR=Red foo.o</userinput>
+cc -o foo.o -c -DCOLOR="red" foo.c
+% <userinput>scons -Q COLOR=nAvY foo.o</userinput>
+cc -o foo.o -c -DCOLOR="blue" foo.c
+% <userinput>scons -Q COLOR=GREEN foo.o</userinput>
+cc -o foo.o -c -DCOLOR="green" foo.c
+</screen>
diff --git a/doc/generated/examples/commandline_ListVariable_1.xml b/doc/generated/examples/commandline_ListVariable_1.xml
new file mode 100644
index 00000000..48adb7d5
--- /dev/null
+++ b/doc/generated/examples/commandline_ListVariable_1.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q COLORS=red,blue foo.o</userinput>
+cc -o foo.o -c -DCOLORS="red blue" foo.c
+% <userinput>scons -Q COLORS=blue,green,red foo.o</userinput>
+cc -o foo.o -c -DCOLORS="blue green red" foo.c
+</screen>
diff --git a/doc/generated/examples/commandline_ListVariable_2.xml b/doc/generated/examples/commandline_ListVariable_2.xml
new file mode 100644
index 00000000..67f33613
--- /dev/null
+++ b/doc/generated/examples/commandline_ListVariable_2.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q COLORS=all foo.o</userinput>
+cc -o foo.o -c -DCOLORS="red green blue" foo.c
+% <userinput>scons -Q COLORS=none foo.o</userinput>
+cc -o foo.o -c -DCOLORS="" foo.c
+</screen>
diff --git a/doc/generated/examples/commandline_ListVariable_3.xml b/doc/generated/examples/commandline_ListVariable_3.xml
new file mode 100644
index 00000000..f03f4fef
--- /dev/null
+++ b/doc/generated/examples/commandline_ListVariable_3.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q COLORS=magenta foo.o</userinput>
+
+scons: *** Error converting option: COLORS
+Invalid value(s) for option: magenta
+File "/home/my/project/SConstruct", line 5, in &lt;module&gt;
+</screen>
diff --git a/doc/generated/examples/commandline_PackageVariable_1.xml b/doc/generated/examples/commandline_PackageVariable_1.xml
new file mode 100644
index 00000000..03de9146
--- /dev/null
+++ b/doc/generated/examples/commandline_PackageVariable_1.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q foo.o</userinput>
+cc -o foo.o -c -DPACKAGE="/opt/location" foo.c
+% <userinput>scons -Q PACKAGE=/usr/local/location foo.o</userinput>
+cc -o foo.o -c -DPACKAGE="/usr/local/location" foo.c
+% <userinput>scons -Q PACKAGE=yes foo.o</userinput>
+cc -o foo.o -c -DPACKAGE="True" foo.c
+% <userinput>scons -Q PACKAGE=no foo.o</userinput>
+cc -o foo.o -c -DPACKAGE="False" foo.c
+</screen>
diff --git a/doc/generated/examples/commandline_PathVariable_1.xml b/doc/generated/examples/commandline_PathVariable_1.xml
new file mode 100644
index 00000000..f80a299b
--- /dev/null
+++ b/doc/generated/examples/commandline_PathVariable_1.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q foo.o</userinput>
+cc -o foo.o -c -DCONFIG_FILE="/etc/my_config" foo.c
+% <userinput>scons -Q CONFIG=/usr/local/etc/other_config foo.o</userinput>
+scons: `foo.o' is up to date.
+</screen>
diff --git a/doc/generated/examples/commandline_PathVariable_2.xml b/doc/generated/examples/commandline_PathVariable_2.xml
new file mode 100644
index 00000000..e24f8f21
--- /dev/null
+++ b/doc/generated/examples/commandline_PathVariable_2.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q CONFIG=/does/not/exist foo.o</userinput>
+
+scons: *** Path for option CONFIG does not exist: /does/not/exist
+File "/home/my/project/SConstruct", line 6, in &lt;module&gt;
+</screen>
diff --git a/doc/generated/examples/commandline_SCONSFLAGS_1.xml b/doc/generated/examples/commandline_SCONSFLAGS_1.xml
new file mode 100644
index 00000000..42616776
--- /dev/null
+++ b/doc/generated/examples/commandline_SCONSFLAGS_1.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons</userinput>
+scons: Reading SConscript files ...
+scons: done reading SConscript files.
+scons: Building targets ...
+ ... [build output] ...
+scons: done building targets.
+% <userinput>export SCONSFLAGS="-Q"</userinput>
+% <userinput>scons</userinput>
+ ... [build output] ...
+</screen>
diff --git a/doc/generated/examples/commandline_SetOption_1.xml b/doc/generated/examples/commandline_SetOption_1.xml
new file mode 100644
index 00000000..c3b878e4
--- /dev/null
+++ b/doc/generated/examples/commandline_SetOption_1.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+running with -j 2
+scons: `.' is up to date.
+</screen>
diff --git a/doc/generated/examples/commandline_SetOption_2.xml b/doc/generated/examples/commandline_SetOption_2.xml
new file mode 100644
index 00000000..d7bbf306
--- /dev/null
+++ b/doc/generated/examples/commandline_SetOption_2.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>export NUM_CPU="4"</userinput>
+% <userinput>scons -Q</userinput>
+running with -j 4
+scons: `.' is up to date.
+</screen>
diff --git a/doc/generated/examples/commandline_SetOption_3.xml b/doc/generated/examples/commandline_SetOption_3.xml
new file mode 100644
index 00000000..f4ca2f14
--- /dev/null
+++ b/doc/generated/examples/commandline_SetOption_3.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q -j 7</userinput>
+running with -j 7
+scons: `.' is up to date.
+% <userinput>export NUM_CPU="4"</userinput>
+% <userinput>scons -Q -j 3</userinput>
+running with -j 3
+scons: `.' is up to date.
+</screen>
diff --git a/doc/generated/examples/commandline_UnknownVariables_1.xml b/doc/generated/examples/commandline_UnknownVariables_1.xml
new file mode 100644
index 00000000..c6880d6e
--- /dev/null
+++ b/doc/generated/examples/commandline_UnknownVariables_1.xml
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q NOT_KNOWN=foo</userinput>
+Unknown variables: ['NOT_KNOWN']
+</screen>
diff --git a/doc/generated/examples/commandline_Variables1_1.xml b/doc/generated/examples/commandline_Variables1_1.xml
new file mode 100644
index 00000000..22754a39
--- /dev/null
+++ b/doc/generated/examples/commandline_Variables1_1.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q RELEASE=1</userinput>
+cc -o bar.o -c -DRELEASE_BUILD=1 bar.c
+cc -o foo.o -c -DRELEASE_BUILD=1 foo.c
+cc -o foo foo.o bar.o
+</screen>
diff --git a/doc/generated/examples/commandline_Variables_Help_1.xml b/doc/generated/examples/commandline_Variables_Help_1.xml
new file mode 100644
index 00000000..01344794
--- /dev/null
+++ b/doc/generated/examples/commandline_Variables_Help_1.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q -h</userinput>
+
+RELEASE: Set to 1 to build for release
+ default: 0
+ actual: 0
+
+Use scons -H for help about command-line options.
+</screen>
diff --git a/doc/generated/examples/commandline_Variables_custom_py_1_1.xml b/doc/generated/examples/commandline_Variables_custom_py_1_1.xml
new file mode 100644
index 00000000..77d35647
--- /dev/null
+++ b/doc/generated/examples/commandline_Variables_custom_py_1_1.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cc -o bar.o -c -DRELEASE_BUILD=1 bar.c
+cc -o foo.o -c -DRELEASE_BUILD=1 foo.c
+cc -o foo foo.o bar.o
+</screen>
diff --git a/doc/generated/examples/commandline_Variables_custom_py_1_custom.py b/doc/generated/examples/commandline_Variables_custom_py_1_custom.py
new file mode 100644
index 00000000..f2acb0dd
--- /dev/null
+++ b/doc/generated/examples/commandline_Variables_custom_py_1_custom.py
@@ -0,0 +1,3 @@
+
+ RELEASE = 1
+
diff --git a/doc/generated/examples/commandline_Variables_custom_py_2_1.xml b/doc/generated/examples/commandline_Variables_custom_py_2_1.xml
new file mode 100644
index 00000000..7ab5d74a
--- /dev/null
+++ b/doc/generated/examples/commandline_Variables_custom_py_2_1.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cc -o bar.o -c -DRELEASE_BUILD=0 bar.c
+cc -o foo.o -c -DRELEASE_BUILD=0 foo.c
+cc -o foo foo.o bar.o
+</screen>
diff --git a/doc/generated/examples/depends_AlwaysBuild_1.xml b/doc/generated/examples/depends_AlwaysBuild_1.xml
new file mode 100644
index 00000000..534c297a
--- /dev/null
+++ b/doc/generated/examples/depends_AlwaysBuild_1.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cc -o hello.o -c hello.c
+cc -o hello hello.o
+% <userinput>scons -Q</userinput>
+cc -o hello hello.o
+</screen>
diff --git a/doc/generated/examples/depends_AlwaysBuild_2.xml b/doc/generated/examples/depends_AlwaysBuild_2.xml
new file mode 100644
index 00000000..9a7325f0
--- /dev/null
+++ b/doc/generated/examples/depends_AlwaysBuild_2.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cc -o hello.o -c hello.c
+cc -o hello hello.o
+% <userinput>scons -Q hello.o</userinput>
+scons: `hello.o' is up to date.
+</screen>
diff --git a/doc/generated/examples/depends_Requires_1.xml b/doc/generated/examples/depends_Requires_1.xml
new file mode 100644
index 00000000..50b2f562
--- /dev/null
+++ b/doc/generated/examples/depends_Requires_1.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q hello</userinput>
+cc -o version.o -c version.c
+cc -o hello.o -c hello.c
+cc -o hello version.o hello.o
+% <userinput>sleep 1</userinput>
+% <userinput>scons -Q hello</userinput>
+cc -o version.o -c version.c
+scons: `hello' is up to date.
+% <userinput>sleep 1</userinput>
+% [CHANGE THE CONTENTS OF hello.c]
+% <userinput>scons -Q hello</userinput>
+cc -o version.o -c version.c
+cc -o hello.o -c hello.c
+cc -o hello version.o hello.o
+% <userinput>sleep 1</userinput>
+% <userinput>scons -Q hello</userinput>
+cc -o version.o -c version.c
+scons: `hello' is up to date.
+</screen>
diff --git a/doc/generated/examples/depends_ex1_1.xml b/doc/generated/examples/depends_ex1_1.xml
new file mode 100644
index 00000000..f9b35dde
--- /dev/null
+++ b/doc/generated/examples/depends_ex1_1.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cc -o hello.o -c hello.c
+cc -o hello hello.o
+% <userinput>scons -Q</userinput>
+scons: `.' is up to date.
+</screen>
diff --git a/doc/generated/examples/depends_ex1_2.xml b/doc/generated/examples/depends_ex1_2.xml
new file mode 100644
index 00000000..254f6419
--- /dev/null
+++ b/doc/generated/examples/depends_ex1_2.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q hello</userinput>
+cc -o hello.o -c hello.c
+cc -o hello hello.o
+% <userinput>scons -Q hello</userinput>
+scons: `hello' is up to date.
+</screen>
diff --git a/doc/generated/examples/depends_ex1_3.xml b/doc/generated/examples/depends_ex1_3.xml
new file mode 100644
index 00000000..a4cf4e39
--- /dev/null
+++ b/doc/generated/examples/depends_ex1_3.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q hello</userinput>
+cc -o hello.o -c hello.c
+cc -o hello hello.o
+% <userinput>touch hello.c</userinput>
+% <userinput>scons -Q hello</userinput>
+scons: `hello' is up to date.
+</screen>
diff --git a/doc/generated/examples/depends_ex1_4.xml b/doc/generated/examples/depends_ex1_4.xml
new file mode 100644
index 00000000..7e1f860e
--- /dev/null
+++ b/doc/generated/examples/depends_ex1_4.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q hello</userinput>
+cc -o hello.o -c hello.c
+cc -o hello hello.o
+% [CHANGE THE CONTENTS OF hello.c]
+% <userinput>scons -Q hello</userinput>
+cc -o hello.o -c hello.c
+cc -o hello hello.o
+</screen>
diff --git a/doc/generated/examples/depends_ex1_5.xml b/doc/generated/examples/depends_ex1_5.xml
new file mode 100644
index 00000000..abbe64ea
--- /dev/null
+++ b/doc/generated/examples/depends_ex1_5.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q hello</userinput>
+cc -o hello.o -c hello.c
+cc -o hello hello.o
+% [CHANGE A COMMENT IN hello.c]
+% <userinput>scons -Q hello</userinput>
+cc -o hello.o -c hello.c
+scons: `hello' is up to date.
+</screen>
diff --git a/doc/generated/examples/depends_ex1_6.xml b/doc/generated/examples/depends_ex1_6.xml
new file mode 100644
index 00000000..75e1f809
--- /dev/null
+++ b/doc/generated/examples/depends_ex1_6.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q --implicit-cache hello</userinput>
+cc -o hello.o -c hello.c
+cc -o hello hello.o
+% <userinput>scons -Q hello</userinput>
+scons: `hello' is up to date.
+</screen>
diff --git a/doc/generated/examples/depends_ex1_7.xml b/doc/generated/examples/depends_ex1_7.xml
new file mode 100644
index 00000000..2b7e30aa
--- /dev/null
+++ b/doc/generated/examples/depends_ex1_7.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q --implicit-deps-changed hello</userinput>
+cc -o hello.o -c hello.c
+cc -o hello hello.o
+% <userinput>scons -Q hello</userinput>
+scons: `hello' is up to date.
+</screen>
diff --git a/doc/generated/examples/depends_ex1_8.xml b/doc/generated/examples/depends_ex1_8.xml
new file mode 100644
index 00000000..957707d7
--- /dev/null
+++ b/doc/generated/examples/depends_ex1_8.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q --implicit-deps-unchanged hello</userinput>
+cc -o hello.o -c hello.c
+cc -o hello hello.o
+% <userinput>scons -Q hello</userinput>
+scons: `hello' is up to date.
+</screen>
diff --git a/doc/generated/examples/depends_ex5_1.xml b/doc/generated/examples/depends_ex5_1.xml
new file mode 100644
index 00000000..2d1f8682
--- /dev/null
+++ b/doc/generated/examples/depends_ex5_1.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q hello</userinput>
+cc -o hello.o -c -Iinclude -I/home/project/inc hello.c
+cc -o hello hello.o
+</screen>
diff --git a/doc/generated/examples/depends_ex5_2.xml b/doc/generated/examples/depends_ex5_2.xml
new file mode 100644
index 00000000..57da64fd
--- /dev/null
+++ b/doc/generated/examples/depends_ex5_2.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">C:\&gt;<userinput>scons -Q hello.exe</userinput>
+cl /Fohello.obj /c hello.c /nologo /Iinclude /I\home\project\inc
+link /nologo /OUT:hello.exe hello.obj
+embedManifestExeCheck(target, source, env)
+</screen>
diff --git a/doc/generated/examples/depends_ignore_explicit_1.xml b/doc/generated/examples/depends_ignore_explicit_1.xml
new file mode 100644
index 00000000..26071317
--- /dev/null
+++ b/doc/generated/examples/depends_ignore_explicit_1.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+scons: `.' is up to date.
+% <userinput>scons -Q hello</userinput>
+cc -o hello.o -c hello.c
+cc -o hello hello.o
+% <userinput>scons -Q hello</userinput>
+scons: `hello' is up to date.
+</screen>
diff --git a/doc/generated/examples/depends_include_1.xml b/doc/generated/examples/depends_include_1.xml
new file mode 100644
index 00000000..6f63e9a1
--- /dev/null
+++ b/doc/generated/examples/depends_include_1.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q hello</userinput>
+cc -o hello.o -c -I. hello.c
+cc -o hello hello.o
+% <userinput>scons -Q hello</userinput>
+scons: `hello' is up to date.
+% [CHANGE THE CONTENTS OF hello.h]
+% <userinput>scons -Q hello</userinput>
+cc -o hello.o -c -I. hello.c
+cc -o hello hello.o
+</screen>
diff --git a/doc/generated/examples/depends_include_SConstruct b/doc/generated/examples/depends_include_SConstruct
new file mode 100644
index 00000000..5f6d7f54
--- /dev/null
+++ b/doc/generated/examples/depends_include_SConstruct
@@ -0,0 +1,3 @@
+
+ Program('hello.c', CPPPATH = '.')
+
diff --git a/doc/generated/examples/depends_include_hello.h b/doc/generated/examples/depends_include_hello.h
new file mode 100644
index 00000000..c9046b3b
--- /dev/null
+++ b/doc/generated/examples/depends_include_hello.h
@@ -0,0 +1,3 @@
+
+ #define string "world"
+
diff --git a/doc/generated/examples/depends_macroinc_1.xml b/doc/generated/examples/depends_macroinc_1.xml
new file mode 100644
index 00000000..8f211cca
--- /dev/null
+++ b/doc/generated/examples/depends_macroinc_1.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cc -o hello.o -c -I. hello.c
+cc -o hello hello.o
+% [CHANGE CONTENTS OF foo.h]
+% <userinput>scons -Q</userinput>
+scons: `.' is up to date.
+</screen>
diff --git a/doc/generated/examples/depends_match_1.xml b/doc/generated/examples/depends_match_1.xml
new file mode 100644
index 00000000..c024b2aa
--- /dev/null
+++ b/doc/generated/examples/depends_match_1.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q hello.o</userinput>
+cc -o hello.o -c hello.c
+% <userinput>touch -t 198901010000 hello.c</userinput>
+% <userinput>scons -Q hello.o</userinput>
+cc -o hello.o -c hello.c
+</screen>
diff --git a/doc/generated/examples/depends_mixing_1.xml b/doc/generated/examples/depends_mixing_1.xml
new file mode 100644
index 00000000..10152b28
--- /dev/null
+++ b/doc/generated/examples/depends_mixing_1.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cc -o program1.o -c -I. program1.c
+cc -o prog-MD5 program1.o
+cc -o program2.o -c -I. program2.c
+cc -o prog-timestamp program2.o
+% <userinput>touch inc.h</userinput>
+% <userinput>scons -Q</userinput>
+cc -o program2.o -c -I. program2.c
+cc -o prog-timestamp program2.o
+</screen>
diff --git a/doc/generated/examples/depends_newer_1.xml b/doc/generated/examples/depends_newer_1.xml
new file mode 100644
index 00000000..9f13c315
--- /dev/null
+++ b/doc/generated/examples/depends_newer_1.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q hello.o</userinput>
+cc -o hello.o -c hello.c
+% <userinput>touch hello.c</userinput>
+% <userinput>scons -Q hello.o</userinput>
+cc -o hello.o -c hello.c
+</screen>
diff --git a/doc/generated/examples/depends_no-Requires_1.xml b/doc/generated/examples/depends_no-Requires_1.xml
new file mode 100644
index 00000000..5e9bb001
--- /dev/null
+++ b/doc/generated/examples/depends_no-Requires_1.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q hello</userinput>
+cc -o hello.o -c hello.c
+cc -o version.o -c version.c
+cc -o hello hello.o version.o
+% <userinput>sleep 1</userinput>
+% <userinput>scons -Q hello</userinput>
+cc -o version.o -c version.c
+cc -o hello hello.o version.o
+% <userinput>sleep 1</userinput>
+% <userinput>scons -Q hello</userinput>
+cc -o version.o -c version.c
+cc -o hello hello.o version.o
+</screen>
diff --git a/doc/generated/examples/depends_parsedep_1.xml b/doc/generated/examples/depends_parsedep_1.xml
new file mode 100644
index 00000000..585e89c1
--- /dev/null
+++ b/doc/generated/examples/depends_parsedep_1.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cc -o hello.o -c -MD -MF hello.d -I. hello.c
+cc -o hello hello.o
+% [CHANGE CONTENTS OF foo.h]
+% <userinput>scons -Q</userinput>
+cc -o hello.o -c -MD -MF hello.d -I. hello.c
+</screen>
diff --git a/doc/generated/examples/environments_Append-nonexistent_1.xml b/doc/generated/examples/environments_Append-nonexistent_1.xml
new file mode 100644
index 00000000..6597dd49
--- /dev/null
+++ b/doc/generated/examples/environments_Append-nonexistent_1.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+NEW_VARIABLE = added
+scons: `.' is up to date.
+</screen>
diff --git a/doc/generated/examples/environments_Prepend-nonexistent_1.xml b/doc/generated/examples/environments_Prepend-nonexistent_1.xml
new file mode 100644
index 00000000..6597dd49
--- /dev/null
+++ b/doc/generated/examples/environments_Prepend-nonexistent_1.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+NEW_VARIABLE = added
+scons: `.' is up to date.
+</screen>
diff --git a/doc/generated/examples/environments_Replace-nonexistent_1.xml b/doc/generated/examples/environments_Replace-nonexistent_1.xml
new file mode 100644
index 00000000..eb8b95cd
--- /dev/null
+++ b/doc/generated/examples/environments_Replace-nonexistent_1.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+NEW_VARIABLE = xyzzy
+scons: `.' is up to date.
+</screen>
diff --git a/doc/generated/examples/environments_Replace1_1.xml b/doc/generated/examples/environments_Replace1_1.xml
new file mode 100644
index 00000000..372d6aed
--- /dev/null
+++ b/doc/generated/examples/environments_Replace1_1.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cc -o foo.o -c -DDEFINE2 foo.c
+cc -o foo foo.o
+</screen>
diff --git a/doc/generated/examples/environments_Replace2_1.xml b/doc/generated/examples/environments_Replace2_1.xml
new file mode 100644
index 00000000..fe949ef5
--- /dev/null
+++ b/doc/generated/examples/environments_Replace2_1.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons</userinput>
+scons: Reading SConscript files ...
+CCFLAGS = -DDEFINE1
+CCFLAGS = -DDEFINE2
+scons: done reading SConscript files.
+scons: Building targets ...
+cc -o bar.o -c -DDEFINE2 bar.c
+cc -o bar bar.o
+cc -o foo.o -c -DDEFINE2 foo.c
+cc -o foo foo.o
+scons: done building targets.
+</screen>
diff --git a/doc/generated/examples/environments_ex1_1.xml b/doc/generated/examples/environments_ex1_1.xml
new file mode 100644
index 00000000..28bc8cab
--- /dev/null
+++ b/doc/generated/examples/environments_ex1_1.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+gcc -o foo.o -c -O2 foo.c
+gcc -o foo foo.o
+</screen>
diff --git a/doc/generated/examples/environments_ex2_1.xml b/doc/generated/examples/environments_ex2_1.xml
new file mode 100644
index 00000000..248cd285
--- /dev/null
+++ b/doc/generated/examples/environments_ex2_1.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cc -o bar.o -c -g bar.c
+cc -o bar bar.o
+cc -o foo.o -c -O2 foo.c
+cc -o foo foo.o
+</screen>
diff --git a/doc/generated/examples/environments_ex3_1.xml b/doc/generated/examples/environments_ex3_1.xml
new file mode 100644
index 00000000..1c2d6207
--- /dev/null
+++ b/doc/generated/examples/environments_ex3_1.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+
+scons: *** Two environments with different actions were specified for the same target: foo.o
+File "/home/my/project/SConstruct", line 6, in &lt;module&gt;
+</screen>
diff --git a/doc/generated/examples/environments_ex4_1.xml b/doc/generated/examples/environments_ex4_1.xml
new file mode 100644
index 00000000..69ac6492
--- /dev/null
+++ b/doc/generated/examples/environments_ex4_1.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cc -o foo-dbg.o -c -g foo.c
+cc -o foo-dbg foo-dbg.o
+cc -o foo-opt.o -c -O2 foo.c
+cc -o foo-opt foo-opt.o
+</screen>
diff --git a/doc/generated/examples/environments_ex5_1.xml b/doc/generated/examples/environments_ex5_1.xml
new file mode 100644
index 00000000..d50f349b
--- /dev/null
+++ b/doc/generated/examples/environments_ex5_1.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+gcc -o foo.o -c foo.c
+gcc -o foo foo.o
+gcc -o foo-dbg.o -c -g foo.c
+gcc -o foo-dbg foo-dbg.o
+gcc -o foo-opt.o -c -O2 foo.c
+gcc -o foo-opt foo-opt.o
+</screen>
diff --git a/doc/generated/examples/environments_ex6_1.xml b/doc/generated/examples/environments_ex6_1.xml
new file mode 100644
index 00000000..bef56a37
--- /dev/null
+++ b/doc/generated/examples/environments_ex6_1.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+CC is: cc
+scons: `.' is up to date.
+</screen>
diff --git a/doc/generated/examples/environments_ex6b_1.xml b/doc/generated/examples/environments_ex6b_1.xml
new file mode 100644
index 00000000..dbcc502e
--- /dev/null
+++ b/doc/generated/examples/environments_ex6b_1.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+key = OBJSUFFIX, value = .o
+key = LIBSUFFIX, value = .a
+key = PROGSUFFIX, value =
+scons: `.' is up to date.
+</screen>
diff --git a/doc/generated/examples/environments_ex6b_2.xml b/doc/generated/examples/environments_ex6b_2.xml
new file mode 100644
index 00000000..f6fb5544
--- /dev/null
+++ b/doc/generated/examples/environments_ex6b_2.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">C:\&gt;<userinput>scons -Q</userinput>
+key = OBJSUFFIX, value = .obj
+key = LIBSUFFIX, value = .lib
+key = PROGSUFFIX, value = .exe
+scons: `.' is up to date.
+</screen>
diff --git a/doc/generated/examples/environments_ex8_1.xml b/doc/generated/examples/environments_ex8_1.xml
new file mode 100644
index 00000000..17491958
--- /dev/null
+++ b/doc/generated/examples/environments_ex8_1.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cc -o foo.o -c -DMY_VALUE -DLAST foo.c
+cc -o foo foo.o
+</screen>
diff --git a/doc/generated/examples/environments_ex9_1.xml b/doc/generated/examples/environments_ex9_1.xml
new file mode 100644
index 00000000..aebefcce
--- /dev/null
+++ b/doc/generated/examples/environments_ex9_1.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cc -o foo.o -c -DFIRST -DMY_VALUE foo.c
+cc -o foo foo.o
+</screen>
diff --git a/doc/generated/examples/environments_missing1_1.xml b/doc/generated/examples/environments_missing1_1.xml
new file mode 100644
index 00000000..d58b27b9
--- /dev/null
+++ b/doc/generated/examples/environments_missing1_1.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+value is: -&gt;&lt;-
+scons: `.' is up to date.
+</screen>
diff --git a/doc/generated/examples/environments_missing2_1.xml b/doc/generated/examples/environments_missing2_1.xml
new file mode 100644
index 00000000..911ecd20
--- /dev/null
+++ b/doc/generated/examples/environments_missing2_1.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+value is:
+scons: *** NameError `MISSING' trying to evaluate `$MISSING'
+File "/home/my/project/SConstruct", line 3, in &lt;module&gt;
+</screen>
diff --git a/doc/generated/examples/environments_missing3_1.xml b/doc/generated/examples/environments_missing3_1.xml
new file mode 100644
index 00000000..d58b27b9
--- /dev/null
+++ b/doc/generated/examples/environments_missing3_1.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+value is: -&gt;&lt;-
+scons: `.' is up to date.
+</screen>
diff --git a/doc/generated/examples/factories_Chmod_1.xml b/doc/generated/examples/factories_Chmod_1.xml
new file mode 100644
index 00000000..59bccf5b
--- /dev/null
+++ b/doc/generated/examples/factories_Chmod_1.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+Copy("file.out", "file.in")
+Chmod("file.out", 0755)
+</screen>
diff --git a/doc/generated/examples/factories_Copy1_1.xml b/doc/generated/examples/factories_Copy1_1.xml
new file mode 100644
index 00000000..c0be7f8a
--- /dev/null
+++ b/doc/generated/examples/factories_Copy1_1.xml
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+Copy("file.out", "file.in")
+</screen>
diff --git a/doc/generated/examples/factories_Copy2_1.xml b/doc/generated/examples/factories_Copy2_1.xml
new file mode 100644
index 00000000..c0be7f8a
--- /dev/null
+++ b/doc/generated/examples/factories_Copy2_1.xml
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+Copy("file.out", "file.in")
+</screen>
diff --git a/doc/generated/examples/factories_Copy3_1.xml b/doc/generated/examples/factories_Copy3_1.xml
new file mode 100644
index 00000000..20702c8b
--- /dev/null
+++ b/doc/generated/examples/factories_Copy3_1.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+Copy("tempfile", "file.in")
+modify tempfile
+Copy("file.out", "tempfile")
+</screen>
diff --git a/doc/generated/examples/factories_Delete1_1.xml b/doc/generated/examples/factories_Delete1_1.xml
new file mode 100644
index 00000000..5cfde55c
--- /dev/null
+++ b/doc/generated/examples/factories_Delete1_1.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+Delete("tempfile")
+Copy("tempfile", "file.in")
+modify tempfile
+Copy("file.out", "tempfile")
+</screen>
diff --git a/doc/generated/examples/factories_Delete2_1.xml b/doc/generated/examples/factories_Delete2_1.xml
new file mode 100644
index 00000000..3bdb3f15
--- /dev/null
+++ b/doc/generated/examples/factories_Delete2_1.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+Delete("file.out")
+Copy("file.out", "file.in")
+</screen>
diff --git a/doc/generated/examples/factories_Execute_1.xml b/doc/generated/examples/factories_Execute_1.xml
new file mode 100644
index 00000000..1956439d
--- /dev/null
+++ b/doc/generated/examples/factories_Execute_1.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons</userinput>
+scons: Reading SConscript files ...
+Mkdir("/tmp/my_temp_directory")
+scons: done reading SConscript files.
+scons: Building targets ...
+scons: `.' is up to date.
+scons: done building targets.
+</screen>
diff --git a/doc/generated/examples/factories_Mkdir_1.xml b/doc/generated/examples/factories_Mkdir_1.xml
new file mode 100644
index 00000000..ae58dac9
--- /dev/null
+++ b/doc/generated/examples/factories_Mkdir_1.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+Delete("tempdir")
+Mkdir("tempdir")
+Copy("tempdir/file.in", "file.in")
+process tempdir
+Move("file.out", "tempdir/output_file")
+scons: *** [file.out] tempdir/output_file: No such file or directory
+</screen>
diff --git a/doc/generated/examples/factories_Move_1.xml b/doc/generated/examples/factories_Move_1.xml
new file mode 100644
index 00000000..2bd008d6
--- /dev/null
+++ b/doc/generated/examples/factories_Move_1.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+Copy("tempfile", "file.in")
+modify tempfile
+Move("file.out", "tempfile")
+</screen>
diff --git a/doc/generated/examples/factories_Touch_1.xml b/doc/generated/examples/factories_Touch_1.xml
new file mode 100644
index 00000000..aacde9e4
--- /dev/null
+++ b/doc/generated/examples/factories_Touch_1.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+Copy("file.out", "file.in")
+Touch("file.out")
+</screen>
diff --git a/doc/generated/examples/fileremoval_clean-ex1_1.xml b/doc/generated/examples/fileremoval_clean-ex1_1.xml
new file mode 100644
index 00000000..bb097075
--- /dev/null
+++ b/doc/generated/examples/fileremoval_clean-ex1_1.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+build -o foo.out foo.in
+% <userinput>scons -Q -c</userinput>
+Removed foo.out
+Removed foo.log
+</screen>
diff --git a/doc/generated/examples/fileremoval_noclean-ex1_1.xml b/doc/generated/examples/fileremoval_noclean-ex1_1.xml
new file mode 100644
index 00000000..ab36c3f9
--- /dev/null
+++ b/doc/generated/examples/fileremoval_noclean-ex1_1.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cc -o f1.o -c f1.c
+cc -o f2.o -c f2.c
+cc -o f3.o -c f3.c
+ar rc libfoo.a f1.o f2.o f3.o
+% <userinput>scons -c</userinput>
+scons: Reading SConscript files ...
+scons: done reading SConscript files.
+scons: Cleaning targets ...
+Removed f1.o
+Removed f2.o
+Removed f3.o
+scons: done cleaning targets.
+</screen>
diff --git a/doc/generated/examples/fileremoval_precious-ex1_1.xml b/doc/generated/examples/fileremoval_precious-ex1_1.xml
new file mode 100644
index 00000000..e8227e66
--- /dev/null
+++ b/doc/generated/examples/fileremoval_precious-ex1_1.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cc -o f1.o -c f1.c
+cc -o f2.o -c f2.c
+cc -o f3.o -c f3.c
+ar rc libfoo.a f1.o f2.o f3.o
+</screen>
diff --git a/doc/generated/examples/hierarchy_Return_1.xml b/doc/generated/examples/hierarchy_Return_1.xml
new file mode 100644
index 00000000..64b981ab
--- /dev/null
+++ b/doc/generated/examples/hierarchy_Return_1.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cc -o bar/bar.o -c bar/bar.c
+cc -o foo/foo.o -c foo/foo.c
+ar rc libprog.a foo/foo.o bar/bar.o
+ranlib libprog.a
+</screen>
diff --git a/doc/generated/examples/hierarchy_Return_foo_SConscript b/doc/generated/examples/hierarchy_Return_foo_SConscript
new file mode 100644
index 00000000..5d742644
--- /dev/null
+++ b/doc/generated/examples/hierarchy_Return_foo_SConscript
@@ -0,0 +1,5 @@
+
+ Import('env')
+ obj = env.Object('foo.c')
+ Return('obj')
+
diff --git a/doc/generated/examples/hierarchy_ex1_1.xml b/doc/generated/examples/hierarchy_ex1_1.xml
new file mode 100644
index 00000000..50beb935
--- /dev/null
+++ b/doc/generated/examples/hierarchy_ex1_1.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cc -o prog1/foo1.o -c prog1/foo1.c
+cc -o prog1/foo2.o -c prog1/foo2.c
+cc -o prog1/main.o -c prog1/main.c
+cc -o prog1/prog1 prog1/main.o prog1/foo1.o prog1/foo2.o
+cc -o prog2/bar1.o -c prog2/bar1.c
+cc -o prog2/bar2.o -c prog2/bar2.c
+cc -o prog2/main.o -c prog2/main.c
+cc -o prog2/prog2 prog2/main.o prog2/bar1.o prog2/bar2.o
+</screen>
diff --git a/doc/generated/examples/hierarchy_ex1_prog1_SConscript b/doc/generated/examples/hierarchy_ex1_prog1_SConscript
new file mode 100644
index 00000000..425f1b8c
--- /dev/null
+++ b/doc/generated/examples/hierarchy_ex1_prog1_SConscript
@@ -0,0 +1,4 @@
+
+ env = Environment()
+ env.Program('prog1', ['main.c', 'foo1.c', 'foo2.c'])
+
diff --git a/doc/generated/examples/hierarchy_ex1_prog2_SConscript b/doc/generated/examples/hierarchy_ex1_prog2_SConscript
new file mode 100644
index 00000000..fb529b40
--- /dev/null
+++ b/doc/generated/examples/hierarchy_ex1_prog2_SConscript
@@ -0,0 +1,4 @@
+
+ env = Environment()
+ env.Program('prog2', ['main.c', 'bar1.c', 'bar2.c'])
+
diff --git a/doc/generated/examples/hierarchy_ex2_1.xml b/doc/generated/examples/hierarchy_ex2_1.xml
new file mode 100644
index 00000000..1f781f89
--- /dev/null
+++ b/doc/generated/examples/hierarchy_ex2_1.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cc -o lib/foo1.o -c lib/foo1.c
+cc -o src/prog/foo2.o -c src/prog/foo2.c
+cc -o src/prog/main.o -c src/prog/main.c
+cc -o src/prog/prog src/prog/main.o lib/foo1.o src/prog/foo2.o
+</screen>
diff --git a/doc/generated/examples/hierarchy_ex3_1.xml b/doc/generated/examples/hierarchy_ex3_1.xml
new file mode 100644
index 00000000..cb5a0cec
--- /dev/null
+++ b/doc/generated/examples/hierarchy_ex3_1.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cc -o src/prog/foo2.o -c src/prog/foo2.c
+cc -o src/prog/main.o -c src/prog/main.c
+cc -o /usr/joe/lib/foo1.o -c /usr/joe/lib/foo1.c
+cc -o src/prog/prog src/prog/main.o /usr/joe/lib/foo1.o src/prog/foo2.o
+</screen>
diff --git a/doc/generated/examples/install_ex1_1.xml b/doc/generated/examples/install_ex1_1.xml
new file mode 100644
index 00000000..69a9f288
--- /dev/null
+++ b/doc/generated/examples/install_ex1_1.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cc -o hello.o -c hello.c
+cc -o hello hello.o
+% <userinput>scons -Q /usr/bin</userinput>
+Install file: "hello" as "/usr/bin/hello"
+</screen>
diff --git a/doc/generated/examples/install_ex2_1.xml b/doc/generated/examples/install_ex2_1.xml
new file mode 100644
index 00000000..66caba30
--- /dev/null
+++ b/doc/generated/examples/install_ex2_1.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cc -o hello.o -c hello.c
+cc -o hello hello.o
+% <userinput>scons -Q install</userinput>
+Install file: "hello" as "/usr/bin/hello"
+</screen>
diff --git a/doc/generated/examples/install_ex3_1.xml b/doc/generated/examples/install_ex3_1.xml
new file mode 100644
index 00000000..5e798088
--- /dev/null
+++ b/doc/generated/examples/install_ex3_1.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q install</userinput>
+cc -o goodbye.o -c goodbye.c
+cc -o goodbye goodbye.o
+Install file: "goodbye" as "/usr/bin/goodbye"
+cc -o hello.o -c hello.c
+cc -o hello hello.o
+Install file: "hello" as "/usr/bin/hello"
+</screen>
diff --git a/doc/generated/examples/install_ex4_1.xml b/doc/generated/examples/install_ex4_1.xml
new file mode 100644
index 00000000..277ab7a9
--- /dev/null
+++ b/doc/generated/examples/install_ex4_1.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q install</userinput>
+cc -o hello.o -c hello.c
+cc -o hello hello.o
+Install file: "hello" as "/usr/bin/hello-new"
+</screen>
diff --git a/doc/generated/examples/install_ex5_1.xml b/doc/generated/examples/install_ex5_1.xml
new file mode 100644
index 00000000..9cfc1783
--- /dev/null
+++ b/doc/generated/examples/install_ex5_1.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q install</userinput>
+cc -o goodbye.o -c goodbye.c
+cc -o goodbye goodbye.o
+Install file: "goodbye" as "/usr/bin/goodbye-new"
+cc -o hello.o -c hello.c
+cc -o hello hello.o
+Install file: "hello" as "/usr/bin/hello-new"
+</screen>
diff --git a/doc/generated/examples/java_JAVACLASSDIR_1.xml b/doc/generated/examples/java_JAVACLASSDIR_1.xml
new file mode 100644
index 00000000..e87345e6
--- /dev/null
+++ b/doc/generated/examples/java_JAVACLASSDIR_1.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+javac -d classes -sourcepath src/pkg/sub src/pkg/sub/Example1.java src/pkg/sub/Example2.java src/pkg/sub/Example3.java
+javah -d native -classpath classes pkg.sub.Example1 pkg.sub.Example2 pkg.sub.Example3
+</screen>
diff --git a/doc/generated/examples/java_RMIC_1.xml b/doc/generated/examples/java_RMIC_1.xml
new file mode 100644
index 00000000..be8c953a
--- /dev/null
+++ b/doc/generated/examples/java_RMIC_1.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+javac -d classes -sourcepath src/pkg/sub src/pkg/sub/Example1.java src/pkg/sub/Example2.java
+rmic -d outdir -classpath classes pkg.sub.Example1 pkg.sub.Example2
+</screen>
diff --git a/doc/generated/examples/java_jar1_1.xml b/doc/generated/examples/java_jar1_1.xml
new file mode 100644
index 00000000..6f5afa02
--- /dev/null
+++ b/doc/generated/examples/java_jar1_1.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+javac -d classes -sourcepath src src/Example1.java src/Example2.java src/Example3.java
+jar cf test.jar classes
+</screen>
diff --git a/doc/generated/examples/java_jar2_1.xml b/doc/generated/examples/java_jar2_1.xml
new file mode 100644
index 00000000..70e161bd
--- /dev/null
+++ b/doc/generated/examples/java_jar2_1.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+javac -d classes -sourcepath prog1 prog1/Example1.java prog1/Example2.java
+javac -d classes -sourcepath prog2 prog2/Example3.java prog2/Example4.java
+jar cf prog1.jar -C classes Example1.class -C classes Example2.class
+jar cf prog2.jar -C classes Example3.class -C classes Example4.class
+</screen>
diff --git a/doc/generated/examples/java_java-classes_1.xml b/doc/generated/examples/java_java-classes_1.xml
new file mode 100644
index 00000000..2ebc85c6
--- /dev/null
+++ b/doc/generated/examples/java_java-classes_1.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+javac -d classes -sourcepath src src/Example1.java src/Example2.java src/Example3.java
+% <userinput>scons -Q classes</userinput>
+scons: `classes' is up to date.
+</screen>
diff --git a/doc/generated/examples/java_java-classes_2.xml b/doc/generated/examples/java_java-classes_2.xml
new file mode 100644
index 00000000..9a24f70d
--- /dev/null
+++ b/doc/generated/examples/java_java-classes_2.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+javac -d classes -sourcepath src src/Example1.java src/Example2.java src/Example3.java
+% <userinput>scons -Q -c classes</userinput>
+Removed classes/Example1.class
+Removed classes/AdditionalClass1.class
+Removed classes/Example2$Inner2.class
+Removed classes/Example2.class
+Removed classes/Example3.class
+Removed classes/AdditionalClass3.class
+</screen>
diff --git a/doc/generated/examples/java_java_1.xml b/doc/generated/examples/java_java_1.xml
new file mode 100644
index 00000000..a6e69c1a
--- /dev/null
+++ b/doc/generated/examples/java_java_1.xml
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+javac -d classes -sourcepath src src/Example1.java src/Example2.java src/Example3.java
+</screen>
diff --git a/doc/generated/examples/java_javah_1.xml b/doc/generated/examples/java_javah_1.xml
new file mode 100644
index 00000000..e87345e6
--- /dev/null
+++ b/doc/generated/examples/java_javah_1.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+javac -d classes -sourcepath src/pkg/sub src/pkg/sub/Example1.java src/pkg/sub/Example2.java src/pkg/sub/Example3.java
+javah -d native -classpath classes pkg.sub.Example1 pkg.sub.Example2 pkg.sub.Example3
+</screen>
diff --git a/doc/generated/examples/java_javah_file_1.xml b/doc/generated/examples/java_javah_file_1.xml
new file mode 100644
index 00000000..a0e74d54
--- /dev/null
+++ b/doc/generated/examples/java_javah_file_1.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+javac -d classes -sourcepath src/pkg/sub src/pkg/sub/Example1.java src/pkg/sub/Example2.java src/pkg/sub/Example3.java
+javah -o native.h -classpath classes pkg.sub.Example1 pkg.sub.Example2 pkg.sub.Example3
+</screen>
diff --git a/doc/generated/examples/lesssimple_ex2_1.xml b/doc/generated/examples/lesssimple_ex2_1.xml
new file mode 100644
index 00000000..834f88c3
--- /dev/null
+++ b/doc/generated/examples/lesssimple_ex2_1.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cc -o file1.o -c file1.c
+cc -o file2.o -c file2.c
+cc -o prog.o -c prog.c
+cc -o prog prog.o file1.o file2.o
+</screen>
diff --git a/doc/generated/examples/lesssimple_ex3_1.xml b/doc/generated/examples/lesssimple_ex3_1.xml
new file mode 100644
index 00000000..415205be
--- /dev/null
+++ b/doc/generated/examples/lesssimple_ex3_1.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cc -o file1.o -c file1.c
+cc -o file2.o -c file2.c
+cc -o prog.o -c prog.c
+cc -o program prog.o file1.o file2.o
+</screen>
diff --git a/doc/generated/examples/lesssimple_ex3_2.xml b/doc/generated/examples/lesssimple_ex3_2.xml
new file mode 100644
index 00000000..2eee32b0
--- /dev/null
+++ b/doc/generated/examples/lesssimple_ex3_2.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">C:\&gt;<userinput>scons -Q</userinput>
+cl /Fofile1.obj /c file1.c /nologo
+cl /Fofile2.obj /c file2.c /nologo
+cl /Foprog.obj /c prog.c /nologo
+link /nologo /OUT:program.exe prog.obj file1.obj file2.obj
+embedManifestExeCheck(target, source, env)
+</screen>
diff --git a/doc/generated/examples/lesssimple_ex4_1.xml b/doc/generated/examples/lesssimple_ex4_1.xml
new file mode 100644
index 00000000..4d9267e8
--- /dev/null
+++ b/doc/generated/examples/lesssimple_ex4_1.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cc -o bar1.o -c bar1.c
+cc -o bar2.o -c bar2.c
+cc -o bar bar1.o bar2.o
+cc -o foo.o -c foo.c
+cc -o foo foo.o
+</screen>
diff --git a/doc/generated/examples/lesssimple_ex5_1.xml b/doc/generated/examples/lesssimple_ex5_1.xml
new file mode 100644
index 00000000..e1c35d49
--- /dev/null
+++ b/doc/generated/examples/lesssimple_ex5_1.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cc -o bar1.o -c bar1.c
+cc -o bar2.o -c bar2.c
+cc -o common1.o -c common1.c
+cc -o common2.o -c common2.c
+cc -o bar bar1.o bar2.o common1.o common2.o
+cc -o foo.o -c foo.c
+cc -o foo foo.o common1.o common2.o
+</screen>
diff --git a/doc/generated/examples/lesssimple_target_1.xml b/doc/generated/examples/lesssimple_target_1.xml
new file mode 100644
index 00000000..76f0de9f
--- /dev/null
+++ b/doc/generated/examples/lesssimple_target_1.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cc -o hello.o -c hello.c
+cc -o new_hello hello.o
+</screen>
diff --git a/doc/generated/examples/lesssimple_target_2.xml b/doc/generated/examples/lesssimple_target_2.xml
new file mode 100644
index 00000000..0babd046
--- /dev/null
+++ b/doc/generated/examples/lesssimple_target_2.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">C:\&gt;<userinput>scons -Q</userinput>
+cl /Fohello.obj /c hello.c /nologo
+link /nologo /OUT:new_hello.exe hello.obj
+embedManifestExeCheck(target, source, env)
+</screen>
diff --git a/doc/generated/examples/libraries_SharedLibrary_1.xml b/doc/generated/examples/libraries_SharedLibrary_1.xml
new file mode 100644
index 00000000..80df7082
--- /dev/null
+++ b/doc/generated/examples/libraries_SharedLibrary_1.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cc -o f1.os -c f1.c
+cc -o f2.os -c f2.c
+cc -o f3.os -c f3.c
+cc -o libfoo.so -shared f1.os f2.os f3.os
+</screen>
diff --git a/doc/generated/examples/libraries_SharedLibrary_2.xml b/doc/generated/examples/libraries_SharedLibrary_2.xml
new file mode 100644
index 00000000..c2894d5d
--- /dev/null
+++ b/doc/generated/examples/libraries_SharedLibrary_2.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">C:\&gt;<userinput>scons -Q</userinput>
+cl /Fof1.obj /c f1.c /nologo
+cl /Fof2.obj /c f2.c /nologo
+cl /Fof3.obj /c f3.c /nologo
+link /nologo /dll /out:foo.dll /implib:foo.lib f1.obj f2.obj f3.obj
+RegServerFunc(target, source, env)
+embedManifestDllCheck(target, source, env)
+</screen>
diff --git a/doc/generated/examples/libraries_ex1_1.xml b/doc/generated/examples/libraries_ex1_1.xml
new file mode 100644
index 00000000..0449b318
--- /dev/null
+++ b/doc/generated/examples/libraries_ex1_1.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cc -o f1.o -c f1.c
+cc -o f2.o -c f2.c
+cc -o f3.o -c f3.c
+ar rc libfoo.a f1.o f2.o f3.o
+ranlib libfoo.a
+</screen>
diff --git a/doc/generated/examples/libraries_ex1_2.xml b/doc/generated/examples/libraries_ex1_2.xml
new file mode 100644
index 00000000..9256d4f5
--- /dev/null
+++ b/doc/generated/examples/libraries_ex1_2.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">C:\&gt;<userinput>scons -Q</userinput>
+cl /Fof1.obj /c f1.c /nologo
+cl /Fof2.obj /c f2.c /nologo
+cl /Fof3.obj /c f3.c /nologo
+lib /nologo /OUT:foo.lib f1.obj f2.obj f3.obj
+</screen>
diff --git a/doc/generated/examples/libraries_ex2_1.xml b/doc/generated/examples/libraries_ex2_1.xml
new file mode 100644
index 00000000..73892035
--- /dev/null
+++ b/doc/generated/examples/libraries_ex2_1.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cc -o f1.o -c f1.c
+cc -o f2.o -c f2.c
+cc -o f3.o -c f3.c
+ar rc libfoo.a f1.o f2.o f3.o
+ranlib libfoo.a
+cc -o prog.o -c prog.c
+cc -o prog prog.o -L. -lfoo -lbar
+</screen>
diff --git a/doc/generated/examples/libraries_ex2_2.xml b/doc/generated/examples/libraries_ex2_2.xml
new file mode 100644
index 00000000..17ec5b55
--- /dev/null
+++ b/doc/generated/examples/libraries_ex2_2.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">C:\&gt;<userinput>scons -Q</userinput>
+cl /Fof1.obj /c f1.c /nologo
+cl /Fof2.obj /c f2.c /nologo
+cl /Fof3.obj /c f3.c /nologo
+lib /nologo /OUT:foo.lib f1.obj f2.obj f3.obj
+cl /Foprog.obj /c prog.c /nologo
+link /nologo /OUT:prog.exe /LIBPATH:. foo.lib bar.lib prog.obj
+embedManifestExeCheck(target, source, env)
+</screen>
diff --git a/doc/generated/examples/libraries_ex3_1.xml b/doc/generated/examples/libraries_ex3_1.xml
new file mode 100644
index 00000000..1b4fb3c9
--- /dev/null
+++ b/doc/generated/examples/libraries_ex3_1.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cc -o prog.o -c prog.c
+cc -o prog prog.o -L/usr/lib -L/usr/local/lib -lm
+</screen>
diff --git a/doc/generated/examples/libraries_ex3_2.xml b/doc/generated/examples/libraries_ex3_2.xml
new file mode 100644
index 00000000..2a64da1f
--- /dev/null
+++ b/doc/generated/examples/libraries_ex3_2.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">C:\&gt;<userinput>scons -Q</userinput>
+cl /Foprog.obj /c prog.c /nologo
+link /nologo /OUT:prog.exe /LIBPATH:\usr\lib /LIBPATH:\usr\local\lib m.lib prog.obj
+embedManifestExeCheck(target, source, env)
+</screen>
diff --git a/doc/generated/examples/libraries_objects_1.xml b/doc/generated/examples/libraries_objects_1.xml
new file mode 100644
index 00000000..97623d97
--- /dev/null
+++ b/doc/generated/examples/libraries_objects_1.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cc -o f1.o -c f1.c
+cc -o f3.o -c f3.c
+ar rc libfoo.a f1.o f2.o f3.o f4.o
+ranlib libfoo.a
+</screen>
diff --git a/doc/generated/examples/mergeflags_MergeFlags1_1.xml b/doc/generated/examples/mergeflags_MergeFlags1_1.xml
new file mode 100644
index 00000000..a5a69154
--- /dev/null
+++ b/doc/generated/examples/mergeflags_MergeFlags1_1.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+['-option', '-O1', '-whatever', '-O3']
+scons: `.' is up to date.
+</screen>
diff --git a/doc/generated/examples/mergeflags_MergeFlags2_1.xml b/doc/generated/examples/mergeflags_MergeFlags2_1.xml
new file mode 100644
index 00000000..d807d662
--- /dev/null
+++ b/doc/generated/examples/mergeflags_MergeFlags2_1.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+['/include', '/usr/local/include', '/usr/include', '/usr/opt/include']
+scons: `.' is up to date.
+</screen>
diff --git a/doc/generated/examples/mergeflags_MergeFlags3_1.xml b/doc/generated/examples/mergeflags_MergeFlags3_1.xml
new file mode 100644
index 00000000..324d9609
--- /dev/null
+++ b/doc/generated/examples/mergeflags_MergeFlags3_1.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+['-option', '-O1', '-whatever', '-O3']
+['/include', '/usr/local/include', '/usr/include', '/usr/opt/include']
+scons: `.' is up to date.
+</screen>
diff --git a/doc/generated/examples/misc_Exit_1.xml b/doc/generated/examples/misc_Exit_1.xml
new file mode 100644
index 00000000..65ccf9b5
--- /dev/null
+++ b/doc/generated/examples/misc_Exit_1.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q FUTURE=1</userinput>
+The FUTURE option is not supported yet!
+% <userinput>scons -Q</userinput>
+cc -o hello.o -c hello.c
+cc -o hello hello.o
+</screen>
diff --git a/doc/generated/examples/misc_FindFile1a_1.xml b/doc/generated/examples/misc_FindFile1a_1.xml
new file mode 100644
index 00000000..2b18f6e7
--- /dev/null
+++ b/doc/generated/examples/misc_FindFile1a_1.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+None
+&lt;class 'SCons.Node.FS.File'&gt; exists
+scons: `.' is up to date.
+</screen>
diff --git a/doc/generated/examples/misc_FindFile1b_1.xml b/doc/generated/examples/misc_FindFile1b_1.xml
new file mode 100644
index 00000000..f16dc95d
--- /dev/null
+++ b/doc/generated/examples/misc_FindFile1b_1.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+nonesuch.h: None
+config.h: config.h
+private.h: src/include/private.h
+dist.h: include/dist.h
+scons: `.' is up to date.
+</screen>
diff --git a/doc/generated/examples/misc_FindFile1d_1.xml b/doc/generated/examples/misc_FindFile1d_1.xml
new file mode 100644
index 00000000..e0e8e8d2
--- /dev/null
+++ b/doc/generated/examples/misc_FindFile1d_1.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+sub1/multiple
+sub2/multiple
+sub3/multiple
+scons: `.' is up to date.
+</screen>
diff --git a/doc/generated/examples/misc_FindFile2_1.xml b/doc/generated/examples/misc_FindFile2_1.xml
new file mode 100644
index 00000000..5aea2527
--- /dev/null
+++ b/doc/generated/examples/misc_FindFile2_1.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+leaf
+derived
+cat &gt; derived leaf
+</screen>
diff --git a/doc/generated/examples/misc_FindFile2_2.xml b/doc/generated/examples/misc_FindFile2_2.xml
new file mode 100644
index 00000000..5aea2527
--- /dev/null
+++ b/doc/generated/examples/misc_FindFile2_2.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+leaf
+derived
+cat &gt; derived leaf
+</screen>
diff --git a/doc/generated/examples/misc_FindFile3_1.xml b/doc/generated/examples/misc_FindFile3_1.xml
new file mode 100644
index 00000000..026212cc
--- /dev/null
+++ b/doc/generated/examples/misc_FindFile3_1.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+build/leaf
+scons: `.' is up to date.
+</screen>
diff --git a/doc/generated/examples/misc_Flatten1_1.xml b/doc/generated/examples/misc_Flatten1_1.xml
new file mode 100644
index 00000000..b25ef5f3
--- /dev/null
+++ b/doc/generated/examples/misc_Flatten1_1.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cc -o prog1.o -c prog1.c
+cc -o prog2.o -c -DFOO prog2.c
+cc -o prog1 prog1.o prog2.o
+</screen>
diff --git a/doc/generated/examples/misc_Flatten2_1.xml b/doc/generated/examples/misc_Flatten2_1.xml
new file mode 100644
index 00000000..5c9502d4
--- /dev/null
+++ b/doc/generated/examples/misc_Flatten2_1.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+AttributeError: 'NodeList' object has no attribute 'abspath':
+ File "/home/my/project/SConstruct", line 8:
+ print object_file.abspath
+</screen>
diff --git a/doc/generated/examples/nodes_GetBuildPath_1.xml b/doc/generated/examples/nodes_GetBuildPath_1.xml
new file mode 100644
index 00000000..d8160f3d
--- /dev/null
+++ b/doc/generated/examples/nodes_GetBuildPath_1.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+['foo.c', 'sub/dir/value']
+scons: `.' is up to date.
+</screen>
diff --git a/doc/generated/examples/nodes_ex1_1.xml b/doc/generated/examples/nodes_ex1_1.xml
new file mode 100644
index 00000000..fc724804
--- /dev/null
+++ b/doc/generated/examples/nodes_ex1_1.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cc -o goodbye.o -c -DGOODBYE goodbye.c
+cc -o hello.o -c -DHELLO hello.c
+cc -o hello hello.o goodbye.o
+</screen>
diff --git a/doc/generated/examples/nodes_ex1_2.xml b/doc/generated/examples/nodes_ex1_2.xml
new file mode 100644
index 00000000..cc92ae6b
--- /dev/null
+++ b/doc/generated/examples/nodes_ex1_2.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">C:\&gt;<userinput>scons -Q</userinput>
+cl /Fogoodbye.obj /c goodbye.c -DGOODBYE
+cl /Fohello.obj /c hello.c -DHELLO
+link /nologo /OUT:hello.exe hello.obj goodbye.obj
+embedManifestExeCheck(target, source, env)
+</screen>
diff --git a/doc/generated/examples/nodes_exists_1.xml b/doc/generated/examples/nodes_exists_1.xml
new file mode 100644
index 00000000..c618a6c8
--- /dev/null
+++ b/doc/generated/examples/nodes_exists_1.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+hello does not exist!
+cc -o hello.o -c hello.c
+cc -o hello hello.o
+</screen>
diff --git a/doc/generated/examples/nodes_print_1.xml b/doc/generated/examples/nodes_print_1.xml
new file mode 100644
index 00000000..dd8fcbb2
--- /dev/null
+++ b/doc/generated/examples/nodes_print_1.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+The object file is: hello.o
+The program file is: hello
+cc -o hello.o -c hello.c
+cc -o hello hello.o
+</screen>
diff --git a/doc/generated/examples/nodes_print_2.xml b/doc/generated/examples/nodes_print_2.xml
new file mode 100644
index 00000000..58bb703b
--- /dev/null
+++ b/doc/generated/examples/nodes_print_2.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">C:\&gt;<userinput>scons -Q</userinput>
+The object file is: hello.obj
+The program file is: hello.exe
+cl /Fohello.obj /c hello.c /nologo
+link /nologo /OUT:hello.exe hello.obj
+embedManifestExeCheck(target, source, env)
+</screen>
diff --git a/doc/generated/examples/output_Progress-TARGET_1.xml b/doc/generated/examples/output_Progress-TARGET_1.xml
new file mode 100644
index 00000000..29abc9f9
--- /dev/null
+++ b/doc/generated/examples/output_Progress-TARGET_1.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+Evaluating SConstruct
+Evaluating f1.c
+Evaluating f1.o
+cc -o f1.o -c f1.c
+Evaluating f1
+cc -o f1 f1.o
+Evaluating f2.c
+Evaluating f2.o
+cc -o f2.o -c f2.c
+Evaluating f2
+cc -o f2 f2.o
+Evaluating .
+</screen>
diff --git a/doc/generated/examples/output_ex1_1.xml b/doc/generated/examples/output_ex1_1.xml
new file mode 100644
index 00000000..2576b312
--- /dev/null
+++ b/doc/generated/examples/output_ex1_1.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -h</userinput>
+scons: Reading SConscript files ...
+scons: done reading SConscript files.
+
+Type: 'scons program' to build the production program,
+ 'scons debug' to build the debug version.
+
+Use scons -H for help about command-line options.
+</screen>
diff --git a/doc/generated/examples/output_ex2_1.xml b/doc/generated/examples/output_ex2_1.xml
new file mode 100644
index 00000000..e206c33b
--- /dev/null
+++ b/doc/generated/examples/output_ex2_1.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">C:\&gt;<userinput>scons -h</userinput>
+scons: Reading SConscript files ...
+scons: done reading SConscript files.
+
+Type: 'scons program' to build the production program.
+
+Type: 'scons windebug' to build the Windows debug version.
+
+Use scons -H for help about command-line options.
+</screen>
diff --git a/doc/generated/examples/output_ex2_2.xml b/doc/generated/examples/output_ex2_2.xml
new file mode 100644
index 00000000..126fc549
--- /dev/null
+++ b/doc/generated/examples/output_ex2_2.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -h</userinput>
+scons: Reading SConscript files ...
+scons: done reading SConscript files.
+
+Type: 'scons program' to build the production program.
+
+Use scons -H for help about command-line options.
+</screen>
diff --git a/doc/generated/examples/output_gbf2_1.xml b/doc/generated/examples/output_gbf2_1.xml
new file mode 100644
index 00000000..e72965fd
--- /dev/null
+++ b/doc/generated/examples/output_gbf2_1.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+scons: `.' is up to date.
+Build succeeded.
+% <userinput>scons -Q fail=1</userinput>
+scons: *** [target] Source `source' not found, needed by target `target'.
+FAILED!!!!
+Failed building target: Source `source' not found, needed by target `target'.
+</screen>
diff --git a/doc/generated/examples/parseflags_ex1_1.xml b/doc/generated/examples/parseflags_ex1_1.xml
new file mode 100644
index 00000000..d385662e
--- /dev/null
+++ b/doc/generated/examples/parseflags_ex1_1.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+CPPPATH ['/opt/include']
+LIBPATH ['/opt/lib']
+LIBS ['foo']
+cc -o f1.o -c -I/opt/include f1.c
+cc -o f1 f1.o -L/opt/lib -lfoo
+</screen>
diff --git a/doc/generated/examples/parseflags_ex1_2.xml b/doc/generated/examples/parseflags_ex1_2.xml
new file mode 100644
index 00000000..29985a28
--- /dev/null
+++ b/doc/generated/examples/parseflags_ex1_2.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">C:\&gt;<userinput>scons -Q</userinput>
+CPPPATH ['/opt/include']
+LIBPATH ['/opt/lib']
+LIBS ['foo']
+cl /Fof1.obj /c f1.c /nologo /I\opt\include
+link /nologo /OUT:f1.exe /LIBPATH:\opt\lib foo.lib f1.obj
+embedManifestExeCheck(target, source, env)
+</screen>
diff --git a/doc/generated/examples/parseflags_ex2_1.xml b/doc/generated/examples/parseflags_ex2_1.xml
new file mode 100644
index 00000000..8026ca0c
--- /dev/null
+++ b/doc/generated/examples/parseflags_ex2_1.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+CCFLAGS -whatever
+cc -o f1.o -c -whatever f1.c
+cc -o f1 f1.o
+</screen>
diff --git a/doc/generated/examples/parseflags_ex3_1.xml b/doc/generated/examples/parseflags_ex3_1.xml
new file mode 100644
index 00000000..d385662e
--- /dev/null
+++ b/doc/generated/examples/parseflags_ex3_1.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+CPPPATH ['/opt/include']
+LIBPATH ['/opt/lib']
+LIBS ['foo']
+cc -o f1.o -c -I/opt/include f1.c
+cc -o f1 f1.o -L/opt/lib -lfoo
+</screen>
diff --git a/doc/generated/examples/parseflags_ex4_1.xml b/doc/generated/examples/parseflags_ex4_1.xml
new file mode 100644
index 00000000..d385662e
--- /dev/null
+++ b/doc/generated/examples/parseflags_ex4_1.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+CPPPATH ['/opt/include']
+LIBPATH ['/opt/lib']
+LIBS ['foo']
+cc -o f1.o -c -I/opt/include f1.c
+cc -o f1 f1.o -L/opt/lib -lfoo
+</screen>
diff --git a/doc/generated/examples/repositories_CPPPATH3_1.xml b/doc/generated/examples/repositories_CPPPATH3_1.xml
new file mode 100644
index 00000000..558678d2
--- /dev/null
+++ b/doc/generated/examples/repositories_CPPPATH3_1.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cc -o hello.o -c -Idir1 -I/r1/dir1 -I/r2/dir1 -Idir2 -I/r1/dir2 -I/r2/dir2 -Idir3 -I/r1/dir3 -I/r2/dir3 hello.c
+cc -o hello hello.o
+</screen>
diff --git a/doc/generated/examples/repositories_CPPPATH_1.xml b/doc/generated/examples/repositories_CPPPATH_1.xml
new file mode 100644
index 00000000..f5ad6712
--- /dev/null
+++ b/doc/generated/examples/repositories_CPPPATH_1.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cc -o hello.o -c -I. -I/usr/repository1 hello.c
+cc -o hello hello.o
+</screen>
diff --git a/doc/generated/examples/repositories_ex1_1.xml b/doc/generated/examples/repositories_ex1_1.xml
new file mode 100644
index 00000000..d1250c20
--- /dev/null
+++ b/doc/generated/examples/repositories_ex1_1.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cc -o hello.o -c hello.c
+cc -o hello hello.o
+</screen>
diff --git a/doc/generated/examples/repositories_ex2_1.xml b/doc/generated/examples/repositories_ex2_1.xml
new file mode 100644
index 00000000..146a074d
--- /dev/null
+++ b/doc/generated/examples/repositories_ex2_1.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cc -o hello.o -c /usr/repository1/hello.c
+cc -o hello hello.o
+</screen>
diff --git a/doc/generated/examples/repositories_ex3_1.xml b/doc/generated/examples/repositories_ex3_1.xml
new file mode 100644
index 00000000..b3f07a27
--- /dev/null
+++ b/doc/generated/examples/repositories_ex3_1.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cc -o hello.o -c /usr/repository2/hello.c
+cc -o hello hello.o
+</screen>
diff --git a/doc/generated/examples/repositories_ex4_1.xml b/doc/generated/examples/repositories_ex4_1.xml
new file mode 100644
index 00000000..1d3e41ac
--- /dev/null
+++ b/doc/generated/examples/repositories_ex4_1.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>cd /usr/repository1</userinput>
+% <userinput>scons -Q</userinput>
+cc -o file1.o -c file1.c
+cc -o file2.o -c file2.c
+cc -o hello.o -c hello.c
+cc -o hello hello.o file1.o file2.o
+</screen>
diff --git a/doc/generated/examples/repositories_quote1_1.xml b/doc/generated/examples/repositories_quote1_1.xml
new file mode 100644
index 00000000..e9f362dc
--- /dev/null
+++ b/doc/generated/examples/repositories_quote1_1.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cc -o hello.o -c -I. -I/usr/repository1 /usr/repository1/hello.c
+cc -o hello hello.o
+</screen>
diff --git a/doc/generated/examples/separate_builddir_1.xml b/doc/generated/examples/separate_builddir_1.xml
new file mode 100644
index 00000000..e470a6d1
--- /dev/null
+++ b/doc/generated/examples/separate_builddir_1.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>ls src</userinput>
+hello.c
+% <userinput>scons -Q</userinput>
+cc -o build/hello.o -c build/hello.c
+cc -o build/hello build/hello.o
+% <userinput>ls build</userinput>
+hello hello.c hello.o
+</screen>
diff --git a/doc/generated/examples/separate_builddir_sconscript_1.xml b/doc/generated/examples/separate_builddir_sconscript_1.xml
new file mode 100644
index 00000000..34a07bd5
--- /dev/null
+++ b/doc/generated/examples/separate_builddir_sconscript_1.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>ls src</userinput>
+SConscript hello.c
+% <userinput>scons -Q</userinput>
+cc -o build/hello.o -c build/hello.c
+cc -o build/hello build/hello.o
+% <userinput>ls build</userinput>
+SConscript hello hello.c hello.o
+</screen>
diff --git a/doc/generated/examples/separate_builddir_sconscript_SConstruct b/doc/generated/examples/separate_builddir_sconscript_SConstruct
new file mode 100644
index 00000000..c3da7256
--- /dev/null
+++ b/doc/generated/examples/separate_builddir_sconscript_SConstruct
@@ -0,0 +1,4 @@
+
+ VariantDir('build', 'src')
+ SConscript('build/SConscript')
+
diff --git a/doc/generated/examples/separate_duplicate0_1.xml b/doc/generated/examples/separate_duplicate0_1.xml
new file mode 100644
index 00000000..13a25d32
--- /dev/null
+++ b/doc/generated/examples/separate_duplicate0_1.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>ls src</userinput>
+hello.c
+% <userinput>scons -Q</userinput>
+cc -o build/hello.o -c src/hello.c
+cc -o build/hello build/hello.o
+% <userinput>ls build</userinput>
+hello hello.o
+</screen>
diff --git a/doc/generated/examples/separate_ex1_1.xml b/doc/generated/examples/separate_ex1_1.xml
new file mode 100644
index 00000000..34a07bd5
--- /dev/null
+++ b/doc/generated/examples/separate_ex1_1.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>ls src</userinput>
+SConscript hello.c
+% <userinput>scons -Q</userinput>
+cc -o build/hello.o -c build/hello.c
+cc -o build/hello build/hello.o
+% <userinput>ls build</userinput>
+SConscript hello hello.c hello.o
+</screen>
diff --git a/doc/generated/examples/separate_glob_builddir_sconscript_1.xml b/doc/generated/examples/separate_glob_builddir_sconscript_1.xml
new file mode 100644
index 00000000..95b7650f
--- /dev/null
+++ b/doc/generated/examples/separate_glob_builddir_sconscript_1.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>ls src</userinput>
+SConscript f1.c f2.c f2.h
+% <userinput>scons -Q</userinput>
+cc -o build/f1.o -c build/f1.c
+cc -o build/f2.o -c build/f2.c
+cc -o build/hello build/f1.o build/f2.o
+% <userinput>ls build</userinput>
+SConscript f1.c f1.o f2.c f2.h f2.o hello
+</screen>
diff --git a/doc/generated/examples/sideeffect_parallel_1.xml b/doc/generated/examples/sideeffect_parallel_1.xml
new file mode 100644
index 00000000..18f834ad
--- /dev/null
+++ b/doc/generated/examples/sideeffect_parallel_1.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q --jobs=2</userinput>
+echo &gt; file1.out data1
+echo &gt; file2.out data2
+</screen>
diff --git a/doc/generated/examples/sideeffect_shared_1.xml b/doc/generated/examples/sideeffect_shared_1.xml
new file mode 100644
index 00000000..11cfec77
--- /dev/null
+++ b/doc/generated/examples/sideeffect_shared_1.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q --jobs=2</userinput>
+./build --log logfile.txt file1.in file1.out
+./build --log logfile.txt file2.in file2.out
+</screen>
diff --git a/doc/generated/examples/sideeffect_simple_1.xml b/doc/generated/examples/sideeffect_simple_1.xml
new file mode 100644
index 00000000..9fdf0747
--- /dev/null
+++ b/doc/generated/examples/sideeffect_simple_1.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q --jobs=2</userinput>
+ File "/home/my/project/SConstruct", line 4
+
+ 'echo &gt;$TARGET data1; echo &gt;log updated file1'))
+
+ ^
+
+SyntaxError: invalid syntax
+</screen>
diff --git a/doc/generated/examples/simple_Object_1.xml b/doc/generated/examples/simple_Object_1.xml
new file mode 100644
index 00000000..33a86a79
--- /dev/null
+++ b/doc/generated/examples/simple_Object_1.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons</userinput>
+scons: Reading SConscript files ...
+scons: done reading SConscript files.
+scons: Building targets ...
+cc -o hello.o -c hello.c
+scons: done building targets.
+</screen>
diff --git a/doc/generated/examples/simple_Object_2.xml b/doc/generated/examples/simple_Object_2.xml
new file mode 100644
index 00000000..42b773a2
--- /dev/null
+++ b/doc/generated/examples/simple_Object_2.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">C:\&gt;<userinput>scons</userinput>
+scons: Reading SConscript files ...
+scons: done reading SConscript files.
+scons: Building targets ...
+cl /Fohello.obj /c hello.c /nologo
+scons: done building targets.
+</screen>
diff --git a/doc/generated/examples/simple_clean_1.xml b/doc/generated/examples/simple_clean_1.xml
new file mode 100644
index 00000000..0affa246
--- /dev/null
+++ b/doc/generated/examples/simple_clean_1.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons</userinput>
+scons: Reading SConscript files ...
+scons: done reading SConscript files.
+scons: Building targets ...
+cc -o hello.o -c hello.c
+cc -o hello hello.o
+scons: done building targets.
+% <userinput>scons -c</userinput>
+scons: Reading SConscript files ...
+scons: done reading SConscript files.
+scons: Cleaning targets ...
+Removed hello.o
+Removed hello
+scons: done cleaning targets.
+</screen>
diff --git a/doc/generated/examples/simple_clean_2.xml b/doc/generated/examples/simple_clean_2.xml
new file mode 100644
index 00000000..3ccedf41
--- /dev/null
+++ b/doc/generated/examples/simple_clean_2.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">C:\&gt;<userinput>scons</userinput>
+scons: Reading SConscript files ...
+scons: done reading SConscript files.
+scons: Building targets ...
+cl /Fohello.obj /c hello.c /nologo
+link /nologo /OUT:hello.exe hello.obj
+embedManifestExeCheck(target, source, env)
+scons: done building targets.
+C:\&gt;<userinput>scons -c</userinput>
+scons: Reading SConscript files ...
+scons: done reading SConscript files.
+scons: Cleaning targets ...
+Removed hello.obj
+Removed hello.exe
+scons: done cleaning targets.
+</screen>
diff --git a/doc/generated/examples/simple_declarative_1.xml b/doc/generated/examples/simple_declarative_1.xml
new file mode 100644
index 00000000..effcd546
--- /dev/null
+++ b/doc/generated/examples/simple_declarative_1.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons</userinput>
+scons: Reading SConscript files ...
+Calling Program('hello.c')
+Calling Program('goodbye.c')
+Finished calling Program()
+scons: done reading SConscript files.
+scons: Building targets ...
+cc -o goodbye.o -c goodbye.c
+cc -o goodbye goodbye.o
+cc -o hello.o -c hello.c
+cc -o hello hello.o
+scons: done building targets.
+</screen>
diff --git a/doc/generated/examples/simple_ex1_1.xml b/doc/generated/examples/simple_ex1_1.xml
new file mode 100644
index 00000000..a855debe
--- /dev/null
+++ b/doc/generated/examples/simple_ex1_1.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons</userinput>
+scons: Reading SConscript files ...
+scons: done reading SConscript files.
+scons: Building targets ...
+cc -o hello.o -c hello.c
+cc -o hello hello.o
+scons: done building targets.
+</screen>
diff --git a/doc/generated/examples/simple_ex1_2.xml b/doc/generated/examples/simple_ex1_2.xml
new file mode 100644
index 00000000..b3d11cde
--- /dev/null
+++ b/doc/generated/examples/simple_ex1_2.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">C:\&gt;<userinput>scons</userinput>
+scons: Reading SConscript files ...
+scons: done reading SConscript files.
+scons: Building targets ...
+cl /Fohello.obj /c hello.c /nologo
+link /nologo /OUT:hello.exe hello.obj
+embedManifestExeCheck(target, source, env)
+scons: done building targets.
+</screen>
diff --git a/doc/generated/examples/simple_ex1_3.xml b/doc/generated/examples/simple_ex1_3.xml
new file mode 100644
index 00000000..b3d11cde
--- /dev/null
+++ b/doc/generated/examples/simple_ex1_3.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">C:\&gt;<userinput>scons</userinput>
+scons: Reading SConscript files ...
+scons: done reading SConscript files.
+scons: Building targets ...
+cl /Fohello.obj /c hello.c /nologo
+link /nologo /OUT:hello.exe hello.obj
+embedManifestExeCheck(target, source, env)
+scons: done building targets.
+</screen>
diff --git a/doc/generated/examples/simple_ex1_4.xml b/doc/generated/examples/simple_ex1_4.xml
new file mode 100644
index 00000000..4087bcff
--- /dev/null
+++ b/doc/generated/examples/simple_ex1_4.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">C:\&gt;<userinput>scons -Q</userinput>
+cl /Fohello.obj /c hello.c /nologo
+link /nologo /OUT:hello.exe hello.obj
+embedManifestExeCheck(target, source, env)
+</screen>
diff --git a/doc/generated/examples/simple_java_1.xml b/doc/generated/examples/simple_java_1.xml
new file mode 100644
index 00000000..53cc8aa1
--- /dev/null
+++ b/doc/generated/examples/simple_java_1.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons</userinput>
+scons: Reading SConscript files ...
+scons: done reading SConscript files.
+scons: Building targets ...
+javac -d classes -sourcepath src src/hello.java
+scons: done building targets.
+</screen>
diff --git a/doc/generated/examples/sourcecode_bitkeeper_1.xml b/doc/generated/examples/sourcecode_bitkeeper_1.xml
new file mode 100644
index 00000000..c02c973b
--- /dev/null
+++ b/doc/generated/examples/sourcecode_bitkeeper_1.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+bk get hello.c
+cc -o hello.o -c hello.c
+cc -o hello hello.o
+</screen>
diff --git a/doc/generated/examples/sourcecode_cvs_1.xml b/doc/generated/examples/sourcecode_cvs_1.xml
new file mode 100644
index 00000000..c2165cbc
--- /dev/null
+++ b/doc/generated/examples/sourcecode_cvs_1.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cvs -d /usr/local/CVS co hello.c
+cc -o hello.o -c hello.c
+cc -o hello hello.o
+</screen>
diff --git a/doc/generated/examples/sourcecode_rcs_1.xml b/doc/generated/examples/sourcecode_rcs_1.xml
new file mode 100644
index 00000000..75def9cc
--- /dev/null
+++ b/doc/generated/examples/sourcecode_rcs_1.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+co hello.c
+cc -o hello.o -c hello.c
+cc -o hello hello.o
+</screen>
diff --git a/doc/generated/examples/sourcecode_sccs_1.xml b/doc/generated/examples/sourcecode_sccs_1.xml
new file mode 100644
index 00000000..0be5f835
--- /dev/null
+++ b/doc/generated/examples/sourcecode_sccs_1.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+sccs get hello.c
+cc -o hello.o -c hello.c
+cc -o hello hello.o
+</screen>
diff --git a/doc/generated/examples/tasks_ex1_1.xml b/doc/generated/examples/tasks_ex1_1.xml
new file mode 100644
index 00000000..f8b323e5
--- /dev/null
+++ b/doc/generated/examples/tasks_ex1_1.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cc -o app main.cpp
+cat &lt; foo.bar2 &gt; foo.cpp
+cc -o app2 main2.cpp foo.cpp
+cat &lt; test.bar &gt; test.h
+</screen>
diff --git a/doc/generated/examples/tasks_ex1_main.cpp b/doc/generated/examples/tasks_ex1_main.cpp
new file mode 100644
index 00000000..2a37cad9
--- /dev/null
+++ b/doc/generated/examples/tasks_ex1_main.cpp
@@ -0,0 +1,3 @@
+
+#include "test.h"
+
diff --git a/doc/generated/examples/troubleshoot_Dump_1.xml b/doc/generated/examples/troubleshoot_Dump_1.xml
new file mode 100644
index 00000000..d1191eb0
--- /dev/null
+++ b/doc/generated/examples/troubleshoot_Dump_1.xml
@@ -0,0 +1,74 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons</userinput>
+scons: Reading SConscript files ...
+{ 'BUILDERS': {'_InternalInstall': &lt;function InstallBuilderWrapper at 0x700000&amp;gt;, '_InternalInstallVersionedLib': &lt;function InstallVersionedBuilderWrapper at 0x700000&amp;gt;, '_InternalInstallAs': &lt;function InstallAsBuilderWrapper at 0x700000&amp;gt;},
+ 'CONFIGUREDIR': '#/.sconf_temp',
+ 'CONFIGURELOG': '#/config.log',
+ 'CPPSUFFIXES': [ '.c',
+ '.C',
+ '.cxx',
+ '.cpp',
+ '.c++',
+ '.cc',
+ '.h',
+ '.H',
+ '.hxx',
+ '.hpp',
+ '.hh',
+ '.F',
+ '.fpp',
+ '.FPP',
+ '.m',
+ '.mm',
+ '.S',
+ '.spp',
+ '.SPP',
+ '.sx'],
+ 'DSUFFIXES': ['.d'],
+ 'Dir': &lt;SCons.Defaults.Variable_Method_Caller object at 0x700000&amp;gt;,
+ 'Dirs': &lt;SCons.Defaults.Variable_Method_Caller object at 0x700000&amp;gt;,
+ 'ENV': { 'PATH': '/usr/local/bin:/opt/bin:/bin:/usr/bin'},
+ 'ESCAPE': &lt;function escape at 0x700000&amp;gt;,
+ 'File': &lt;SCons.Defaults.Variable_Method_Caller object at 0x700000&amp;gt;,
+ 'HOST_ARCH': None,
+ 'HOST_OS': None,
+ 'IDLSUFFIXES': ['.idl', '.IDL'],
+ 'INSTALL': &lt;function copyFunc at 0x700000&amp;gt;,
+ 'INSTALLVERSIONEDLIB': &lt;function copyFuncVersionedLib at 0x700000&amp;gt;,
+ 'LIBPREFIX': 'lib',
+ 'LIBPREFIXES': ['$LIBPREFIX'],
+ 'LIBSUFFIX': '.a',
+ 'LIBSUFFIXES': ['$LIBSUFFIX', '$SHLIBSUFFIX'],
+ 'MAXLINELENGTH': 128072,
+ 'OBJPREFIX': '',
+ 'OBJSUFFIX': '.o',
+ 'PLATFORM': 'posix',
+ 'PROGPREFIX': '',
+ 'PROGSUFFIX': '',
+ 'PSPAWN': &lt;function piped_env_spawn at 0x700000&amp;gt;,
+ 'RDirs': &lt;SCons.Defaults.Variable_Method_Caller object at 0x700000&amp;gt;,
+ 'SCANNERS': [],
+ 'SHELL': 'sh',
+ 'SHLIBPREFIX': '$LIBPREFIX',
+ 'SHLIBSUFFIX': '.so',
+ 'SHOBJPREFIX': '$OBJPREFIX',
+ 'SHOBJSUFFIX': '$OBJSUFFIX',
+ 'SPAWN': &lt;function spawnvpe_spawn at 0x700000&amp;gt;,
+ 'TARGET_ARCH': None,
+ 'TARGET_OS': None,
+ 'TEMPFILE': &lt;class 'SCons.Platform.TempFileMunge'&gt;,
+ 'TEMPFILEPREFIX': '@',
+ 'TOOLS': ['install', 'install'],
+ '_CPPDEFFLAGS': '${_defines(CPPDEFPREFIX, CPPDEFINES, CPPDEFSUFFIX, __env__)}',
+ '_CPPINCFLAGS': '$( ${_concat(INCPREFIX, CPPPATH, INCSUFFIX, __env__, RDirs, TARGET, SOURCE)} $)',
+ '_LIBDIRFLAGS': '$( ${_concat(LIBDIRPREFIX, LIBPATH, LIBDIRSUFFIX, __env__, RDirs, TARGET, SOURCE)} $)',
+ '_LIBFLAGS': '${_concat(LIBLINKPREFIX, LIBS, LIBLINKSUFFIX, __env__)}',
+ '__RPATH': '$_RPATH',
+ '_concat': &lt;function _concat at 0x700000&amp;gt;,
+ '_defines': &lt;function _defines at 0x700000&amp;gt;,
+ '_stripixes': &lt;function _stripixes at 0x700000&amp;gt;}
+scons: done reading SConscript files.
+scons: Building targets ...
+scons: `.' is up to date.
+scons: done building targets.
+</screen>
diff --git a/doc/generated/examples/troubleshoot_Dump_2.xml b/doc/generated/examples/troubleshoot_Dump_2.xml
new file mode 100644
index 00000000..2fdb1bcb
--- /dev/null
+++ b/doc/generated/examples/troubleshoot_Dump_2.xml
@@ -0,0 +1,107 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">C:\&gt;<userinput>scons</userinput>
+scons: Reading SConscript files ...
+{ 'BUILDERS': {'_InternalInstallVersionedLib': &lt;function InstallVersionedBuilderWrapper at 0x700000&amp;gt;, '_InternalInstall': &lt;function InstallBuilderWrapper at 0x700000&amp;gt;, 'Object': &lt;SCons.Builder.CompositeBuilder object at 0x700000&amp;gt;, 'PCH': &lt;SCons.Builder.BuilderBase object at 0x700000&amp;gt;, 'RES': &lt;SCons.Builder.BuilderBase object at 0x700000&amp;gt;, 'SharedObject': &lt;SCons.Builder.CompositeBuilder object at 0x700000&amp;gt;, 'StaticObject': &lt;SCons.Builder.CompositeBuilder object at 0x700000&amp;gt;, '_InternalInstallAs': &lt;function InstallAsBuilderWrapper at 0x700000&amp;gt;},
+ 'CC': 'cl',
+ 'CCCOM': &lt;SCons.Action.FunctionAction object at 0x700000&amp;gt;,
+ 'CCFLAGS': ['/nologo'],
+ 'CCPCHFLAGS': ['${(PCH and "/Yu%s \\"/Fp%s\\""%(PCHSTOP or "",File(PCH))) or ""}'],
+ 'CCPDBFLAGS': ['${(PDB and "/Z7") or ""}'],
+ 'CFILESUFFIX': '.c',
+ 'CFLAGS': [],
+ 'CONFIGUREDIR': '#/.sconf_temp',
+ 'CONFIGURELOG': '#/config.log',
+ 'CPPDEFPREFIX': '/D',
+ 'CPPDEFSUFFIX': '',
+ 'CPPSUFFIXES': [ '.c',
+ '.C',
+ '.cxx',
+ '.cpp',
+ '.c++',
+ '.cc',
+ '.h',
+ '.H',
+ '.hxx',
+ '.hpp',
+ '.hh',
+ '.F',
+ '.fpp',
+ '.FPP',
+ '.m',
+ '.mm',
+ '.S',
+ '.spp',
+ '.SPP',
+ '.sx'],
+ 'CXX': '$CC',
+ 'CXXCOM': '${TEMPFILE("$CXX $_MSVC_OUTPUT_FLAG /c $CHANGED_SOURCES $CXXFLAGS $CCFLAGS $_CCCOMCOM")}',
+ 'CXXFILESUFFIX': '.cc',
+ 'CXXFLAGS': ['$(', '/TP', '$)'],
+ 'DSUFFIXES': ['.d'],
+ 'Dir': &lt;SCons.Defaults.Variable_Method_Caller object at 0x700000&amp;gt;,
+ 'Dirs': &lt;SCons.Defaults.Variable_Method_Caller object at 0x700000&amp;gt;,
+ 'ENV': { 'PATH': 'C:\\WINDOWS\\System32',
+ 'PATHEXT': '.COM;.EXE;.BAT;.CMD',
+ 'SystemRoot': 'C:\\WINDOWS'},
+ 'ESCAPE': &lt;function escape at 0x700000&amp;gt;,
+ 'File': &lt;SCons.Defaults.Variable_Method_Caller object at 0x700000&amp;gt;,
+ 'HOST_ARCH': '',
+ 'HOST_OS': 'win32',
+ 'IDLSUFFIXES': ['.idl', '.IDL'],
+ 'INCPREFIX': '/I',
+ 'INCSUFFIX': '',
+ 'INSTALL': &lt;function copyFunc at 0x700000&amp;gt;,
+ 'INSTALLVERSIONEDLIB': &lt;function copyFuncVersionedLib at 0x700000&amp;gt;,
+ 'LIBPREFIX': '',
+ 'LIBPREFIXES': ['$LIBPREFIX'],
+ 'LIBSUFFIX': '.lib',
+ 'LIBSUFFIXES': ['$LIBSUFFIX'],
+ 'MAXLINELENGTH': 2048,
+ 'MSVC_SETUP_RUN': True,
+ 'OBJPREFIX': '',
+ 'OBJSUFFIX': '.obj',
+ 'PCHCOM': '$CXX /Fo${TARGETS[1]} $CXXFLAGS $CCFLAGS $CPPFLAGS $_CPPDEFFLAGS $_CPPINCFLAGS /c $SOURCES /Yc$PCHSTOP /Fp${TARGETS[0]} $CCPDBFLAGS $PCHPDBFLAGS',
+ 'PCHPDBFLAGS': ['${(PDB and "/Yd") or ""}'],
+ 'PLATFORM': 'win32',
+ 'PROGPREFIX': '',
+ 'PROGSUFFIX': '.exe',
+ 'PSPAWN': &lt;function piped_spawn at 0x700000&amp;gt;,
+ 'RC': 'rc',
+ 'RCCOM': &lt;SCons.Action.FunctionAction object at 0x700000&amp;gt;,
+ 'RCFLAGS': [],
+ 'RCSUFFIXES': ['.rc', '.rc2'],
+ 'RDirs': &lt;SCons.Defaults.Variable_Method_Caller object at 0x700000&amp;gt;,
+ 'SCANNERS': [],
+ 'SHCC': '$CC',
+ 'SHCCCOM': &lt;SCons.Action.FunctionAction object at 0x700000&amp;gt;,
+ 'SHCCFLAGS': ['$CCFLAGS'],
+ 'SHCFLAGS': ['$CFLAGS'],
+ 'SHCXX': '$CXX',
+ 'SHCXXCOM': '${TEMPFILE("$SHCXX $_MSVC_OUTPUT_FLAG /c $CHANGED_SOURCES $SHCXXFLAGS $SHCCFLAGS $_CCCOMCOM")}',
+ 'SHCXXFLAGS': ['$CXXFLAGS'],
+ 'SHELL': None,
+ 'SHLIBPREFIX': '',
+ 'SHLIBSUFFIX': '.dll',
+ 'SHOBJPREFIX': '$OBJPREFIX',
+ 'SHOBJSUFFIX': '$OBJSUFFIX',
+ 'SPAWN': &lt;function spawn at 0x700000&amp;gt;,
+ 'STATIC_AND_SHARED_OBJECTS_ARE_THE_SAME': 1,
+ 'TARGET_ARCH': '',
+ 'TARGET_OS': 'win32',
+ 'TEMPFILE': &lt;class 'SCons.Platform.TempFileMunge'&gt;,
+ 'TEMPFILEPREFIX': '@',
+ 'TOOLS': ['msvc', 'install', 'install'],
+ '_CCCOMCOM': '$CPPFLAGS $_CPPDEFFLAGS $_CPPINCFLAGS $CCPCHFLAGS $CCPDBFLAGS',
+ '_CPPDEFFLAGS': '${_defines(CPPDEFPREFIX, CPPDEFINES, CPPDEFSUFFIX, __env__)}',
+ '_CPPINCFLAGS': '$( ${_concat(INCPREFIX, CPPPATH, INCSUFFIX, __env__, RDirs, TARGET, SOURCE)} $)',
+ '_LIBDIRFLAGS': '$( ${_concat(LIBDIRPREFIX, LIBPATH, LIBDIRSUFFIX, __env__, RDirs, TARGET, SOURCE)} $)',
+ '_LIBFLAGS': '${_concat(LIBLINKPREFIX, LIBS, LIBLINKSUFFIX, __env__)}',
+ '_MSVC_OUTPUT_FLAG': &lt;function msvc_output_flag at 0x700000&amp;gt;,
+ '_concat': &lt;function _concat at 0x700000&amp;gt;,
+ '_defines': &lt;function _defines at 0x700000&amp;gt;,
+ '_stripixes': &lt;function _stripixes at 0x700000&amp;gt;}
+scons: done reading SConscript files.
+scons: Building targets ...
+scons: `.' is up to date.
+scons: done building targets.
+</screen>
diff --git a/doc/generated/examples/troubleshoot_Dump_ENV_1.xml b/doc/generated/examples/troubleshoot_Dump_ENV_1.xml
new file mode 100644
index 00000000..818bbcc3
--- /dev/null
+++ b/doc/generated/examples/troubleshoot_Dump_ENV_1.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons</userinput>
+scons: Reading SConscript files ...
+{ 'PATH': '/usr/local/bin:/opt/bin:/bin:/usr/bin'}
+scons: done reading SConscript files.
+scons: Building targets ...
+scons: `.' is up to date.
+scons: done building targets.
+</screen>
diff --git a/doc/generated/examples/troubleshoot_Dump_ENV_2.xml b/doc/generated/examples/troubleshoot_Dump_ENV_2.xml
new file mode 100644
index 00000000..4ea3a2f1
--- /dev/null
+++ b/doc/generated/examples/troubleshoot_Dump_ENV_2.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">C:\&gt;<userinput>scons</userinput>
+scons: Reading SConscript files ...
+{ 'PATH': 'C:\\WINDOWS\\System32',
+ 'PATHEXT': '.COM;.EXE;.BAT;.CMD',
+ 'SystemRoot': 'C:\\WINDOWS'}
+scons: done reading SConscript files.
+scons: Building targets ...
+scons: `.' is up to date.
+scons: done building targets.
+</screen>
diff --git a/doc/generated/examples/troubleshoot_explain1_1.xml b/doc/generated/examples/troubleshoot_explain1_1.xml
new file mode 100644
index 00000000..50fb303e
--- /dev/null
+++ b/doc/generated/examples/troubleshoot_explain1_1.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cp file.in file.oout
+% <userinput>scons -Q</userinput>
+cp file.in file.oout
+% <userinput>scons -Q</userinput>
+cp file.in file.oout
+</screen>
diff --git a/doc/generated/examples/troubleshoot_explain1_2.xml b/doc/generated/examples/troubleshoot_explain1_2.xml
new file mode 100644
index 00000000..a58a2d38
--- /dev/null
+++ b/doc/generated/examples/troubleshoot_explain1_2.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q --debug=explain</userinput>
+scons: building `file.out' because it doesn't exist
+cp file.in file.oout
+</screen>
diff --git a/doc/generated/examples/troubleshoot_explain2_1.xml b/doc/generated/examples/troubleshoot_explain2_1.xml
new file mode 100644
index 00000000..3b5374fa
--- /dev/null
+++ b/doc/generated/examples/troubleshoot_explain2_1.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cc -o file1.o -c file1.c
+cc -o file2.o -c file2.c
+cc -o file3.o -c file3.c
+cc -o prog file1.o file2.o file3.o
+% [CHANGE THE CONTENTS OF file2.c]
+% <userinput>scons -Q --debug=explain</userinput>
+scons: rebuilding `file2.o' because `file2.c' changed
+cc -o file2.o -c file2.c
+scons: rebuilding `prog' because `file2.o' changed
+cc -o prog file1.o file2.o file3.o
+</screen>
diff --git a/doc/generated/examples/troubleshoot_explain3_1.xml b/doc/generated/examples/troubleshoot_explain3_1.xml
new file mode 100644
index 00000000..7e89a26b
--- /dev/null
+++ b/doc/generated/examples/troubleshoot_explain3_1.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+cc -o file1.o -c -I. file1.c
+cc -o file2.o -c -I. file2.c
+cc -o file3.o -c -I. file3.c
+cc -o prog file1.o file2.o file3.o
+% [CHANGE THE CONTENTS OF hello.h]
+% <userinput>scons -Q --debug=explain</userinput>
+scons: rebuilding `file1.o' because `hello.h' changed
+cc -o file1.o -c -I. file1.c
+scons: rebuilding `file3.o' because `hello.h' changed
+cc -o file3.o -c -I. file3.c
+scons: rebuilding `prog' because:
+ `file1.o' changed
+ `file3.o' changed
+cc -o prog file1.o file2.o file3.o
+</screen>
diff --git a/doc/generated/examples/troubleshoot_findlibs_1.xml b/doc/generated/examples/troubleshoot_findlibs_1.xml
new file mode 100644
index 00000000..0b34b73c
--- /dev/null
+++ b/doc/generated/examples/troubleshoot_findlibs_1.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q --debug=findlibs</userinput>
+ findlibs: looking for 'libfoo.a' in 'libs1' ...
+ findlibs: ... FOUND 'libfoo.a' in 'libs1'
+ findlibs: looking for 'libfoo.so' in 'libs1' ...
+ findlibs: looking for 'libfoo.so' in 'libs2' ...
+ findlibs: looking for 'libbar.a' in 'libs1' ...
+ findlibs: looking for 'libbar.a' in 'libs2' ...
+ findlibs: ... FOUND 'libbar.a' in 'libs2'
+ findlibs: looking for 'libbar.so' in 'libs1' ...
+ findlibs: looking for 'libbar.so' in 'libs2' ...
+cc -o prog.o -c prog.c
+cc -o prog prog.o -Llibs1 -Llibs2 -lfoo -lbar
+</screen>
diff --git a/doc/generated/examples/troubleshoot_stacktrace_1.xml b/doc/generated/examples/troubleshoot_stacktrace_1.xml
new file mode 100644
index 00000000..7228f77c
--- /dev/null
+++ b/doc/generated/examples/troubleshoot_stacktrace_1.xml
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q</userinput>
+scons: *** [prog.o] Source `prog.c' not found, needed by target `prog.o'.
+</screen>
diff --git a/doc/generated/examples/troubleshoot_stacktrace_2.xml b/doc/generated/examples/troubleshoot_stacktrace_2.xml
new file mode 100644
index 00000000..6b88dd14
--- /dev/null
+++ b/doc/generated/examples/troubleshoot_stacktrace_2.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q --debug=stacktrace</userinput>
+scons: *** [prog.o] Source `prog.c' not found, needed by target `prog.o'.
+scons: internal stack trace:
+ File "bootstrap/src/engine/SCons/Job.py", line 199, in start
+ task.prepare()
+ File "bootstrap/src/engine/SCons/Script/Main.py", line 168, in prepare
+ return SCons.Taskmaster.OutOfDateTask.prepare(self)
+ File "bootstrap/src/engine/SCons/Taskmaster.py", line 189, in prepare
+ executor.prepare()
+ File "bootstrap/src/engine/SCons/Executor.py", line 392, in prepare
+ raise SCons.Errors.StopError(msg % (s, self.batches[0].targets[0]))
+</screen>
diff --git a/doc/generated/examples/troubleshoot_taskmastertrace_1.xml b/doc/generated/examples/troubleshoot_taskmastertrace_1.xml
new file mode 100644
index 00000000..f1c25820
--- /dev/null
+++ b/doc/generated/examples/troubleshoot_taskmastertrace_1.xml
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q --taskmastertrace=- prog</userinput>
+
+Taskmaster: Looking for a node to evaluate
+Taskmaster: Considering node &lt;no_state 0 'prog'&gt; and its children:
+Taskmaster: &lt;no_state 0 'prog.o'&gt;
+Taskmaster: adjusted ref count: &lt;pending 1 'prog'&gt;, child 'prog.o'
+Taskmaster: Considering node &lt;no_state 0 'prog.o'&gt; and its children:
+Taskmaster: &lt;no_state 0 'prog.c'&gt;
+Taskmaster: &lt;no_state 0 'inc.h'&gt;
+Taskmaster: adjusted ref count: &lt;pending 1 'prog.o'&gt;, child 'prog.c'
+Taskmaster: adjusted ref count: &lt;pending 2 'prog.o'&gt;, child 'inc.h'
+Taskmaster: Considering node &lt;no_state 0 'prog.c'&gt; and its children:
+Taskmaster: Evaluating &lt;pending 0 'prog.c'&gt;
+
+Task.make_ready_current(): node &lt;pending 0 'prog.c'&gt;
+Task.prepare(): node &lt;up_to_date 0 'prog.c'&gt;
+Task.executed_with_callbacks(): node &lt;up_to_date 0 'prog.c'&gt;
+Task.postprocess(): node &lt;up_to_date 0 'prog.c'&gt;
+Task.postprocess(): removing &lt;up_to_date 0 'prog.c'&gt;
+Task.postprocess(): adjusted parent ref count &lt;pending 1 'prog.o'&gt;
+
+Taskmaster: Looking for a node to evaluate
+Taskmaster: Considering node &lt;no_state 0 'inc.h'&gt; and its children:
+Taskmaster: Evaluating &lt;pending 0 'inc.h'&gt;
+
+Task.make_ready_current(): node &lt;pending 0 'inc.h'&gt;
+Task.prepare(): node &lt;up_to_date 0 'inc.h'&gt;
+Task.executed_with_callbacks(): node &lt;up_to_date 0 'inc.h'&gt;
+Task.postprocess(): node &lt;up_to_date 0 'inc.h'&gt;
+Task.postprocess(): removing &lt;up_to_date 0 'inc.h'&gt;
+Task.postprocess(): adjusted parent ref count &lt;pending 0 'prog.o'&gt;
+
+Taskmaster: Looking for a node to evaluate
+Taskmaster: Considering node &lt;pending 0 'prog.o'&gt; and its children:
+Taskmaster: &lt;up_to_date 0 'prog.c'&gt;
+Taskmaster: &lt;up_to_date 0 'inc.h'&gt;
+Taskmaster: Evaluating &lt;pending 0 'prog.o'&gt;
+
+Task.make_ready_current(): node &lt;pending 0 'prog.o'&gt;
+Task.prepare(): node &lt;executing 0 'prog.o'&gt;
+Task.execute(): node &lt;executing 0 'prog.o'&gt;
+cc -o prog.o -c -I. prog.c
+Task.executed_with_callbacks(): node &lt;executing 0 'prog.o'&gt;
+Task.postprocess(): node &lt;executed 0 'prog.o'&gt;
+Task.postprocess(): removing &lt;executed 0 'prog.o'&gt;
+Task.postprocess(): adjusted parent ref count &lt;pending 0 'prog'&gt;
+
+Taskmaster: Looking for a node to evaluate
+Taskmaster: Considering node &lt;pending 0 'prog'&gt; and its children:
+Taskmaster: &lt;executed 0 'prog.o'&gt;
+Taskmaster: Evaluating &lt;pending 0 'prog'&gt;
+
+Task.make_ready_current(): node &lt;pending 0 'prog'&gt;
+Task.prepare(): node &lt;executing 0 'prog'&gt;
+Task.execute(): node &lt;executing 0 'prog'&gt;
+cc -o prog prog.o
+Task.executed_with_callbacks(): node &lt;executing 0 'prog'&gt;
+Task.postprocess(): node &lt;executed 0 'prog'&gt;
+
+Taskmaster: Looking for a node to evaluate
+Taskmaster: No candidate anymore.
+</screen>
diff --git a/doc/generated/examples/troubleshoot_tree1_1.xml b/doc/generated/examples/troubleshoot_tree1_1.xml
new file mode 100644
index 00000000..c082c0e7
--- /dev/null
+++ b/doc/generated/examples/troubleshoot_tree1_1.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q --tree=all</userinput>
+cc -o f1.o -c -I. f1.c
+cc -o f2.o -c -I. f2.c
+cc -o f3.o -c -I. f3.c
+cc -o prog f1.o f2.o f3.o
++-.
+ +-SConstruct
+ +-f1.c
+ +-f1.o
+ | +-f1.c
+ | +-inc.h
+ +-f2.c
+ +-f2.o
+ | +-f2.c
+ | +-inc.h
+ +-f3.c
+ +-f3.o
+ | +-f3.c
+ | +-inc.h
+ +-inc.h
+ +-prog
+ +-f1.o
+ | +-f1.c
+ | +-inc.h
+ +-f2.o
+ | +-f2.c
+ | +-inc.h
+ +-f3.o
+ +-f3.c
+ +-inc.h
+</screen>
diff --git a/doc/generated/examples/troubleshoot_tree1_2.xml b/doc/generated/examples/troubleshoot_tree1_2.xml
new file mode 100644
index 00000000..0a27f8b4
--- /dev/null
+++ b/doc/generated/examples/troubleshoot_tree1_2.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q --tree=all f2.o</userinput>
+cc -o f2.o -c -I. f2.c
++-f2.o
+ +-f2.c
+ +-inc.h
+</screen>
diff --git a/doc/generated/examples/troubleshoot_tree1_3.xml b/doc/generated/examples/troubleshoot_tree1_3.xml
new file mode 100644
index 00000000..7d26ee91
--- /dev/null
+++ b/doc/generated/examples/troubleshoot_tree1_3.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q --tree=all f1.o f3.o</userinput>
+cc -o f1.o -c -I. f1.c
++-f1.o
+ +-f1.c
+ +-inc.h
+cc -o f3.o -c -I. f3.c
++-f3.o
+ +-f3.c
+ +-inc.h
+</screen>
diff --git a/doc/generated/examples/troubleshoot_tree1_4.xml b/doc/generated/examples/troubleshoot_tree1_4.xml
new file mode 100644
index 00000000..0d974db1
--- /dev/null
+++ b/doc/generated/examples/troubleshoot_tree1_4.xml
@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q --tree=status</userinput>
+cc -o f1.o -c -I. f1.c
+cc -o f2.o -c -I. f2.c
+cc -o f3.o -c -I. f3.c
+cc -o prog f1.o f2.o f3.o
+ E = exists
+ R = exists in repository only
+ b = implicit builder
+ B = explicit builder
+ S = side effect
+ P = precious
+ A = always build
+ C = current
+ N = no clean
+ H = no cache
+
+[E b ]+-.
+[E C ] +-SConstruct
+[E C ] +-f1.c
+[E B C ] +-f1.o
+[E C ] | +-f1.c
+[E C ] | +-inc.h
+[E C ] +-f2.c
+[E B C ] +-f2.o
+[E C ] | +-f2.c
+[E C ] | +-inc.h
+[E C ] +-f3.c
+[E B C ] +-f3.o
+[E C ] | +-f3.c
+[E C ] | +-inc.h
+[E C ] +-inc.h
+[E B C ] +-prog
+[E B C ] +-f1.o
+[E C ] | +-f1.c
+[E C ] | +-inc.h
+[E B C ] +-f2.o
+[E C ] | +-f2.c
+[E C ] | +-inc.h
+[E B C ] +-f3.o
+[E C ] +-f3.c
+[E C ] +-inc.h
+</screen>
diff --git a/doc/generated/examples/troubleshoot_tree1_5.xml b/doc/generated/examples/troubleshoot_tree1_5.xml
new file mode 100644
index 00000000..a219aeff
--- /dev/null
+++ b/doc/generated/examples/troubleshoot_tree1_5.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q --tree=derived</userinput>
+cc -o f1.o -c -I. f1.c
+cc -o f2.o -c -I. f2.c
+cc -o f3.o -c -I. f3.c
+cc -o prog f1.o f2.o f3.o
++-.
+ +-f1.o
+ +-f2.o
+ +-f3.o
+ +-prog
+ +-f1.o
+ +-f2.o
+ +-f3.o
+</screen>
diff --git a/doc/generated/examples/troubleshoot_tree1_6.xml b/doc/generated/examples/troubleshoot_tree1_6.xml
new file mode 100644
index 00000000..4d3c972f
--- /dev/null
+++ b/doc/generated/examples/troubleshoot_tree1_6.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q --tree=derived,status</userinput>
+cc -o f1.o -c -I. f1.c
+cc -o f2.o -c -I. f2.c
+cc -o f3.o -c -I. f3.c
+cc -o prog f1.o f2.o f3.o
+ E = exists
+ R = exists in repository only
+ b = implicit builder
+ B = explicit builder
+ S = side effect
+ P = precious
+ A = always build
+ C = current
+ N = no clean
+ H = no cache
+
+[E b ]+-.
+[E B C ] +-f1.o
+[E B C ] +-f2.o
+[E B C ] +-f3.o
+[E B C ] +-prog
+[E B C ] +-f1.o
+[E B C ] +-f2.o
+[E B C ] +-f3.o
+</screen>
diff --git a/doc/generated/examples/troubleshoot_tree2_1.xml b/doc/generated/examples/troubleshoot_tree2_1.xml
new file mode 100644
index 00000000..7b786e31
--- /dev/null
+++ b/doc/generated/examples/troubleshoot_tree2_1.xml
@@ -0,0 +1,73 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q --tree=all</userinput>
+cc -o f1.o -c -I. f1.c
+cc -o f2.o -c -I. f2.c
+cc -o f3.o -c -I. f3.c
+ar rc libfoo.a f1.o f2.o f3.o
+ranlib libfoo.a
+cc -o prog1.o -c -I. prog1.c
+cc -o prog1 prog1.o -L. -lfoo
+cc -o prog2.o -c -I. prog2.c
+cc -o prog2 prog2.o -L. -lfoo
++-.
+ +-SConstruct
+ +-f1.c
+ +-f1.o
+ | +-f1.c
+ | +-inc.h
+ +-f2.c
+ +-f2.o
+ | +-f2.c
+ | +-inc.h
+ +-f3.c
+ +-f3.o
+ | +-f3.c
+ | +-inc.h
+ +-inc.h
+ +-libfoo.a
+ | +-f1.o
+ | | +-f1.c
+ | | +-inc.h
+ | +-f2.o
+ | | +-f2.c
+ | | +-inc.h
+ | +-f3.o
+ | +-f3.c
+ | +-inc.h
+ +-prog1
+ | +-prog1.o
+ | | +-prog1.c
+ | | +-inc.h
+ | +-libfoo.a
+ | +-f1.o
+ | | +-f1.c
+ | | +-inc.h
+ | +-f2.o
+ | | +-f2.c
+ | | +-inc.h
+ | +-f3.o
+ | +-f3.c
+ | +-inc.h
+ +-prog1.c
+ +-prog1.o
+ | +-prog1.c
+ | +-inc.h
+ +-prog2
+ | +-prog2.o
+ | | +-prog2.c
+ | | +-inc.h
+ | +-libfoo.a
+ | +-f1.o
+ | | +-f1.c
+ | | +-inc.h
+ | +-f2.o
+ | | +-f2.c
+ | | +-inc.h
+ | +-f3.o
+ | +-f3.c
+ | +-inc.h
+ +-prog2.c
+ +-prog2.o
+ +-prog2.c
+ +-inc.h
+</screen>
diff --git a/doc/generated/examples/troubleshoot_tree2_2.xml b/doc/generated/examples/troubleshoot_tree2_2.xml
new file mode 100644
index 00000000..2338622f
--- /dev/null
+++ b/doc/generated/examples/troubleshoot_tree2_2.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q --tree=prune</userinput>
+cc -o f1.o -c -I. f1.c
+cc -o f2.o -c -I. f2.c
+cc -o f3.o -c -I. f3.c
+ar rc libfoo.a f1.o f2.o f3.o
+ranlib libfoo.a
+cc -o prog1.o -c -I. prog1.c
+cc -o prog1 prog1.o -L. -lfoo
+cc -o prog2.o -c -I. prog2.c
+cc -o prog2 prog2.o -L. -lfoo
++-.
+ +-SConstruct
+ +-f1.c
+ +-f1.o
+ | +-f1.c
+ | +-inc.h
+ +-f2.c
+ +-f2.o
+ | +-f2.c
+ | +-inc.h
+ +-f3.c
+ +-f3.o
+ | +-f3.c
+ | +-inc.h
+ +-inc.h
+ +-libfoo.a
+ | +-[f1.o]
+ | +-[f2.o]
+ | +-[f3.o]
+ +-prog1
+ | +-prog1.o
+ | | +-prog1.c
+ | | +-inc.h
+ | +-[libfoo.a]
+ +-prog1.c
+ +-[prog1.o]
+ +-prog2
+ | +-prog2.o
+ | | +-prog2.c
+ | | +-inc.h
+ | +-[libfoo.a]
+ +-prog2.c
+ +-[prog2.o]
+</screen>
diff --git a/doc/generated/examples/variants_ex_1.xml b/doc/generated/examples/variants_ex_1.xml
new file mode 100644
index 00000000..cbc47abc
--- /dev/null
+++ b/doc/generated/examples/variants_ex_1.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">% <userinput>scons -Q OS=linux</userinput>
+Install file: "build/linux/world/world.h" as "export/linux/include/world.h"
+cc -o build/linux/hello/hello.o -c -Iexport/linux/include build/linux/hello/hello.c
+cc -o build/linux/world/world.o -c -Iexport/linux/include build/linux/world/world.c
+ar rc build/linux/world/libworld.a build/linux/world/world.o
+ranlib build/linux/world/libworld.a
+Install file: "build/linux/world/libworld.a" as "export/linux/lib/libworld.a"
+cc -o build/linux/hello/hello build/linux/hello/hello.o -Lexport/linux/lib -lworld
+Install file: "build/linux/hello/hello" as "export/linux/bin/hello"
+</screen>
diff --git a/doc/generated/examples/variants_ex_2.xml b/doc/generated/examples/variants_ex_2.xml
new file mode 100644
index 00000000..ac883de2
--- /dev/null
+++ b/doc/generated/examples/variants_ex_2.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">C:\&gt;<userinput>scons -Q OS=windows</userinput>
+Install file: "build/windows/world/world.h" as "export/windows/include/world.h"
+cl /Fobuild\windows\hello\hello.obj /c build\windows\hello\hello.c /nologo /Iexport\windows\include
+cl /Fobuild\windows\world\world.obj /c build\windows\world\world.c /nologo /Iexport\windows\include
+lib /nologo /OUT:build\windows\world\world.lib build\windows\world\world.obj
+Install file: "build/windows/world/world.lib" as "export/windows/lib/world.lib"
+link /nologo /OUT:build\windows\hello\hello.exe /LIBPATH:export\windows\lib world.lib build\windows\hello\hello.obj
+embedManifestExeCheck(target, source, env)
+Install file: "build/windows/hello/hello.exe" as "export/windows/bin/hello.exe"
+</screen>
diff --git a/doc/generated/functions.gen b/doc/generated/functions.gen
new file mode 100644
index 00000000..9eecc9cd
--- /dev/null
+++ b/doc/generated/functions.gen
@@ -0,0 +1,4978 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE sconsdoc [
+ <!ENTITY % scons SYSTEM "../scons.mod">
+ %scons;
+ <!ENTITY % builders-mod SYSTEM "builders.mod">
+ %builders-mod;
+ <!ENTITY % functions-mod SYSTEM "functions.mod">
+ %functions-mod;
+ <!ENTITY % tools-mod SYSTEM "tools.mod">
+ %tools-mod;
+ <!ENTITY % variables-mod SYSTEM "variables.mod">
+ %variables-mod;
+]>
+
+<variablelist xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">
+ <varlistentry id="f-Action">
+ <term>
+ <synopsis>Action(action, [cmd/str/fun, [var, ...]] [option=value, ...])</synopsis>
+ <synopsis>env.Action(action, [cmd/str/fun, [var, ...]] [option=value, ...])</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Creates an Action object for
+the specified
+<varname>action</varname>.
+See the section "Action Objects,"
+below, for a complete explanation of the arguments and behavior.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Note that the
+<function>env.Action</function>()
+form of the invocation will expand
+construction variables in any argument strings,
+including the
+<varname>action</varname>
+argument, at the time it is called
+using the construction variables in the
+<varname>env</varname>
+construction environment through which
+<function>env.Action</function>()
+was called.
+The
+<function>Action</function>()
+form delays all variable expansion
+until the Action object is actually used.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-AddMethod">
+ <term>
+ <synopsis>AddMethod(object, function, [name])</synopsis>
+ <synopsis>env.AddMethod(function, [name])</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+When called with the
+<function>AddMethod</function>()
+form,
+adds the specified
+<varname>function</varname>
+to the specified
+<varname>object</varname>
+as the specified method
+<varname>name</varname>.
+When called with the
+<function>env.AddMethod</function>()
+form,
+adds the specified
+<varname>function</varname>
+to the construction environment
+<varname>env</varname>
+as the specified method
+<varname>name</varname>.
+In both cases, if
+<varname>name</varname>
+is omitted or
+<literal>None</literal>,
+the name of the
+specified
+<varname>function</varname>
+itself is used for the method name.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Examples:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+# Note that the first argument to the function to
+# be attached as a method must be the object through
+# which the method will be called; the Python
+# convention is to call it 'self'.
+def my_method(self, arg):
+ print "my_method() got", arg
+
+# Use the global AddMethod() function to add a method
+# to the Environment class. This
+AddMethod(Environment, my_method)
+env = Environment()
+env.my_method('arg')
+
+# Add the function as a method, using the function
+# name for the method call.
+env = Environment()
+env.AddMethod(my_method, 'other_method_name')
+env.other_method_name('another arg')
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-AddOption">
+ <term>
+ <synopsis>AddOption(arguments)</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This function adds a new command-line option to be recognized.
+The specified
+<varname>arguments</varname>
+are the same as supported by the standard Python
+<function>optparse.add_option</function>()
+method (with a few additional capabilities noted below);
+see the documentation for
+<literal>optparse</literal>
+for a thorough discussion of its option-processing capabities.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+In addition to the arguments and values supported by the
+<function>optparse.add_option</function>()
+method,
+the SCons
+<function xmlns="http://www.scons.org/dbxsd/v1.0">AddOption</function>
+function allows you to set the
+<literal>nargs</literal>
+keyword value to
+<literal>'?'</literal>
+(a string with just the question mark)
+to indicate that the specified long option(s) take(s) an
+<emphasis>optional</emphasis>
+argument.
+When
+<literal>nargs = '?'</literal>
+is passed to the
+<function xmlns="http://www.scons.org/dbxsd/v1.0">AddOption</function>
+function, the
+<literal>const</literal>
+keyword argument
+may be used to supply the "default"
+value that should be used when the
+option is specified on the command line
+without an explicit argument.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+If no
+<literal>default=</literal>
+keyword argument is supplied when calling
+<function xmlns="http://www.scons.org/dbxsd/v1.0">AddOption</function>,
+the option will have a default value of
+<literal>None</literal>.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Once a new command-line option has been added with
+<function xmlns="http://www.scons.org/dbxsd/v1.0">AddOption</function>,
+the option value may be accessed using
+<function xmlns="http://www.scons.org/dbxsd/v1.0">GetOption</function>
+or
+<function>env.GetOption</function>().
+The value may also be set, using
+<function xmlns="http://www.scons.org/dbxsd/v1.0">SetOption</function>
+or
+<function>env.SetOption</function>(),
+if conditions in a
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">SConscript</filename>
+require overriding any default value.
+Note, however, that a
+value specified on the command line will
+<emphasis>always</emphasis>
+override a value set by any SConscript file.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Any specified
+<literal>help=</literal>
+strings for the new option(s)
+will be displayed by the
+<option>-H</option>
+or
+<option>-h</option>
+options
+(the latter only if no other help text is
+specified in the SConscript files).
+The help text for the local options specified by
+<function xmlns="http://www.scons.org/dbxsd/v1.0">AddOption</function>
+will appear below the SCons options themselves,
+under a separate
+<literal>Local Options</literal>
+heading.
+The options will appear in the help text
+in the order in which the
+<function xmlns="http://www.scons.org/dbxsd/v1.0">AddOption</function>
+calls occur.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Example:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+AddOption('--prefix',
+ dest='prefix',
+ nargs=1, type='string',
+ action='store',
+ metavar='DIR',
+ help='installation prefix')
+env = Environment(PREFIX = GetOption('prefix'))
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-AddPostAction">
+ <term>
+ <synopsis>AddPostAction(target, action)</synopsis>
+ <synopsis>env.AddPostAction(target, action)</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Arranges for the specified
+<varname>action</varname>
+to be performed
+after the specified
+<varname>target</varname>
+has been built.
+The specified action(s) may be
+an Action object, or anything that
+can be converted into an Action object
+(see below).
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+When multiple targets are supplied,
+the action may be called multiple times,
+once after each action that generates
+one or more targets in the list.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-AddPreAction">
+ <term>
+ <synopsis>AddPreAction(target, action)</synopsis>
+ <synopsis>env.AddPreAction(target, action)</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Arranges for the specified
+<varname>action</varname>
+to be performed
+before the specified
+<varname>target</varname>
+is built.
+The specified action(s) may be
+an Action object, or anything that
+can be converted into an Action object
+(see below).
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+When multiple targets are specified,
+the action(s) may be called multiple times,
+once before each action that generates
+one or more targets in the list.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Note that if any of the targets are built in multiple steps,
+the action will be invoked just
+before the "final" action that specifically
+generates the specified target(s).
+For example, when building an executable program
+from a specified source
+<filename>.c</filename>
+file via an intermediate object file:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+foo = Program('foo.c')
+AddPreAction(foo, 'pre_action')
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The specified
+<literal>pre_action</literal>
+would be executed before
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+calls the link command that actually
+generates the executable program binary
+<filename>foo</filename>,
+not before compiling the
+<filename>foo.c</filename>
+file into an object file.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-Alias">
+ <term>
+ <synopsis>Alias(alias, [targets, [action]])</synopsis>
+ <synopsis>env.Alias(alias, [targets, [action]])</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Creates one or more phony targets that
+expand to one or more other targets.
+An optional
+<varname>action</varname>
+(command)
+or list of actions
+can be specified that will be executed
+whenever the any of the alias targets are out-of-date.
+Returns the Node object representing the alias,
+which exists outside of any file system.
+This Node object, or the alias name,
+may be used as a dependency of any other target,
+including another alias.
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Alias</function>
+can be called multiple times for the same
+alias to add additional targets to the alias,
+or additional actions to the list for this alias.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Examples:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+Alias('install')
+Alias('install', '/usr/bin')
+Alias(['install', 'install-lib'], '/usr/local/lib')
+
+env.Alias('install', ['/usr/local/bin', '/usr/local/lib'])
+env.Alias('install', ['/usr/local/man'])
+
+env.Alias('update', ['file1', 'file2'], "update_database $SOURCES")
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-AllowSubstExceptions">
+ <term>
+ <synopsis>AllowSubstExceptions([exception, ...])</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Specifies the exceptions that will be allowed
+when expanding construction variables.
+By default,
+any construction variable expansions that generate a
+<literal>NameError</literal>
+or
+<literal>IndexError</literal>
+exception will expand to a
+<literal>''</literal>
+(a null string) and not cause scons to fail.
+All exceptions not in the specified list
+will generate an error message
+and terminate processing.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+If
+<function xmlns="http://www.scons.org/dbxsd/v1.0">AllowSubstExceptions</function>
+is called multiple times,
+each call completely overwrites the previous list
+of allowed exceptions.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Example:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+# Requires that all construction variable names exist.
+# (You may wish to do this if you want to enforce strictly
+# that all construction variables must be defined before use.)
+AllowSubstExceptions()
+
+# Also allow a string containing a zero-division expansion
+# like '${1 / 0}' to evalute to ''.
+AllowSubstExceptions(IndexError, NameError, ZeroDivisionError)
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-AlwaysBuild">
+ <term>
+ <synopsis>AlwaysBuild(target, ...)</synopsis>
+ <synopsis>env.AlwaysBuild(target, ...)</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Marks each given
+<varname>target</varname>
+so that it is always assumed to be out of date,
+and will always be rebuilt if needed.
+Note, however, that
+<function xmlns="http://www.scons.org/dbxsd/v1.0">AlwaysBuild</function>
+does not add its target(s) to the default target list,
+so the targets will only be built
+if they are specified on the command line,
+or are a dependent of a target specified on the command line--but
+they will
+<emphasis>always</emphasis>
+be built if so specified.
+Multiple targets can be passed in to a single call to
+<function xmlns="http://www.scons.org/dbxsd/v1.0">AlwaysBuild</function>.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-Append">
+ <term>
+ <synopsis>env.Append(key=val, [...])</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Appends the specified keyword arguments
+to the end of construction variables in the environment.
+If the Environment does not have
+the specified construction variable,
+it is simply added to the environment.
+If the values of the construction variable
+and the keyword argument are the same type,
+then the two values will be simply added together.
+Otherwise, the construction variable
+and the value of the keyword argument
+are both coerced to lists,
+and the lists are added together.
+(See also the Prepend method, below.)
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Example:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env.Append(CCFLAGS = ' -g', FOO = ['foo.yyy'])
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-AppendENVPath">
+ <term>
+ <synopsis>env.AppendENVPath(name, newpath, [envname, sep, delete_existing])</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This appends new path elements to the given path in the
+specified external environment
+(<literal>ENV</literal>
+by default).
+This will only add
+any particular path once (leaving the last one it encounters and
+ignoring the rest, to preserve path order),
+and to help assure this,
+will normalize all paths (using
+<function>os.path.normpath</function>
+and
+<function>os.path.normcase</function>).
+This can also handle the
+case where the given old path variable is a list instead of a
+string, in which case a list will be returned instead of a string.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+If
+<varname>delete_existing</varname>
+is 0, then adding a path that already exists
+will not move it to the end; it will stay where it is in the list.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Example:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+print 'before:',env['ENV']['INCLUDE']
+include_path = '/foo/bar:/foo'
+env.AppendENVPath('INCLUDE', include_path)
+print 'after:',env['ENV']['INCLUDE']
+
+yields:
+before: /foo:/biz
+after: /biz:/foo/bar:/foo
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-AppendUnique">
+ <term>
+ <synopsis>env.AppendUnique(key=val, [...], delete_existing=0)</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Appends the specified keyword arguments
+to the end of construction variables in the environment.
+If the Environment does not have
+the specified construction variable,
+it is simply added to the environment.
+If the construction variable being appended to is a list,
+then any value(s) that already exist in the
+construction variable will
+<emphasis>not</emphasis>
+be added again to the list.
+However, if delete_existing is 1,
+existing matching values are removed first, so
+existing values in the arg list move to the end of the list.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Example:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env.AppendUnique(CCFLAGS = '-g', FOO = ['foo.yyy'])
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-BitKeeper">
+ <term>
+ <synopsis>env.BitKeeper()</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A factory function that
+returns a Builder object
+to be used to fetch source files
+using BitKeeper.
+The returned Builder
+is intended to be passed to the
+<function xmlns="http://www.scons.org/dbxsd/v1.0">SourceCode</function>
+function.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This function is deprecated. For details, see the entry for the
+<function xmlns="http://www.scons.org/dbxsd/v1.0">SourceCode</function>
+function.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Example:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env.SourceCode('.', env.BitKeeper())
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-BuildDir">
+ <term>
+ <synopsis>BuildDir(build_dir, src_dir, [duplicate])</synopsis>
+ <synopsis>env.BuildDir(build_dir, src_dir, [duplicate])</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Deprecated synonyms for
+<function xmlns="http://www.scons.org/dbxsd/v1.0">VariantDir</function>
+and
+<function>env.VariantDir</function>().
+The
+<varname>build_dir</varname>
+argument becomes the
+<varname>variant_dir</varname>
+argument of
+<function xmlns="http://www.scons.org/dbxsd/v1.0">VariantDir</function>
+or
+<function>env.VariantDir</function>().
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-Builder">
+ <term>
+ <synopsis>Builder(action, [arguments])</synopsis>
+ <synopsis>env.Builder(action, [arguments])</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Creates a Builder object for
+the specified
+<varname>action</varname>.
+See the section "Builder Objects,"
+below, for a complete explanation of the arguments and behavior.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Note that the
+<function>env.Builder</function>()
+form of the invocation will expand
+construction variables in any arguments strings,
+including the
+<varname>action</varname>
+argument,
+at the time it is called
+using the construction variables in the
+<varname>env</varname>
+construction environment through which
+<function>env.Builder</function>()
+was called.
+The
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Builder</function>
+form delays all variable expansion
+until after the Builder object is actually called.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-CacheDir">
+ <term>
+ <synopsis>CacheDir(cache_dir)</synopsis>
+ <synopsis>env.CacheDir(cache_dir)</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Specifies that
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+will maintain a cache of derived files in
+<varname>cache_dir</varname>.
+The derived files in the cache will be shared
+among all the builds using the same
+<function xmlns="http://www.scons.org/dbxsd/v1.0">CacheDir</function>
+call.
+Specifying a
+<varname>cache_dir</varname>
+of
+<literal>None</literal>
+disables derived file caching.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Calling
+<function>env.CacheDir</function>()
+will only affect targets built
+through the specified construction environment.
+Calling
+<function xmlns="http://www.scons.org/dbxsd/v1.0">CacheDir</function>
+sets a global default
+that will be used by all targets built
+through construction environments
+that do
+<emphasis>not</emphasis>
+have an
+<function>env.CacheDir</function>()
+specified.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+When a
+<function>CacheDir</function>()
+is being used and
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+finds a derived file that needs to be rebuilt,
+it will first look in the cache to see if a
+derived file has already been built
+from identical input files and an identical build action
+(as incorporated into the MD5 build signature).
+If so,
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+will retrieve the file from the cache.
+If the derived file is not present in the cache,
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+will rebuild it and
+then place a copy of the built file in the cache
+(identified by its MD5 build signature),
+so that it may be retrieved by other
+builds that need to build the same derived file
+from identical inputs.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Use of a specified
+<function xmlns="http://www.scons.org/dbxsd/v1.0">CacheDir</function>
+may be disabled for any invocation
+by using the
+<option>--cache-disable</option>
+option.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+If the
+<option>--cache-force</option>
+option is used,
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+will place a copy of
+<emphasis>all</emphasis>
+derived files in the cache,
+even if they already existed
+and were not built by this invocation.
+This is useful to populate a cache
+the first time
+<function xmlns="http://www.scons.org/dbxsd/v1.0">CacheDir</function>
+is added to a build,
+or after using the
+<option>--cache-disable</option>
+option.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+When using
+<function xmlns="http://www.scons.org/dbxsd/v1.0">CacheDir</function>,
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+will report,
+"Retrieved `file' from cache,"
+unless the
+<option>--cache-show</option>
+option is being used.
+When the
+<option>--cache-show</option>
+option is used,
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+will print the action that
+<emphasis>would</emphasis>
+have been used to build the file,
+without any indication that
+the file was actually retrieved from the cache.
+This is useful to generate build logs
+that are equivalent regardless of whether
+a given derived file has been built in-place
+or retrieved from the cache.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="f-NoCache"><function>NoCache</function></link>
+method can be used to disable caching of specific files. This can be
+useful if inputs and/or outputs of some tool are impossible to
+predict or prohibitively large.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-Clean">
+ <term>
+ <synopsis>Clean(targets, files_or_dirs)</synopsis>
+ <synopsis>env.Clean(targets, files_or_dirs)</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This specifies a list of files or directories which should be removed
+whenever the targets are specified with the
+<option>-c</option>
+command line option.
+The specified targets may be a list
+or an individual target.
+Multiple calls to
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Clean</function>
+are legal,
+and create new targets or add files and directories to the
+clean list for the specified targets.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Multiple files or directories should be specified
+either as separate arguments to the
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Clean</function>
+method, or as a list.
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Clean</function>
+will also accept the return value of any of the construction environment
+Builder methods.
+Examples:
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The related
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="f-NoClean"><function>NoClean</function></link>
+function overrides calling
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Clean</function>
+for the same target,
+and any targets passed to both functions will
+<emphasis>not</emphasis>
+be removed by the
+<option>-c</option>
+option.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Examples:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+Clean('foo', ['bar', 'baz'])
+Clean('dist', env.Program('hello', 'hello.c'))
+Clean(['foo', 'bar'], 'something_else_to_clean')
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+In this example,
+installing the project creates a subdirectory for the documentation.
+This statement causes the subdirectory to be removed
+if the project is deinstalled.
+</para>
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+Clean(docdir, os.path.join(docdir, projectname))
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-Clone">
+ <term>
+ <synopsis>env.Clone([key=val, ...])</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Returns a separate copy of a construction environment.
+If there are any keyword arguments specified,
+they are added to the returned copy,
+overwriting any existing values
+for the keywords.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Example:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env2 = env.Clone()
+env3 = env.Clone(CCFLAGS = '-g')
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Additionally, a list of tools and a toolpath may be specified, as in
+the Environment constructor:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+def MyTool(env): env['FOO'] = 'bar'
+env4 = env.Clone(tools = ['msvc', MyTool])
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The
+<varname>parse_flags</varname>
+keyword argument is also recognized:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+# create an environment for compiling programs that use wxWidgets
+wx_env = env.Clone(parse_flags = '!wx-config --cflags --cxxflags')
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-Command">
+ <term>
+ <synopsis>Command(target, source, action, [key=val, ...])</synopsis>
+ <synopsis>env.Command(target, source, action, [key=val, ...])</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Executes a specific action
+(or list of actions)
+to build a target file or files.
+This is more convenient
+than defining a separate Builder object
+for a single special-case build.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+As a special case, the
+<varname>source_scanner</varname>
+keyword argument can
+be used to specify
+a Scanner object
+that will be used to scan the sources.
+(The global
+<literal>DirScanner</literal>
+object can be used
+if any of the sources will be directories
+that must be scanned on-disk for
+changes to files that aren't
+already specified in other Builder of function calls.)
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Any other keyword arguments specified override any
+same-named existing construction variables.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+An action can be an external command,
+specified as a string,
+or a callable Python object;
+see "Action Objects," below,
+for more complete information.
+Also note that a string specifying an external command
+may be preceded by an
+<literal>@</literal>
+(at-sign)
+to suppress printing the command in question,
+or by a
+<literal>-</literal>
+(hyphen)
+to ignore the exit status of the external command.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Examples:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env.Command('foo.out', 'foo.in',
+ "$FOO_BUILD &lt; $SOURCES &gt; $TARGET")
+
+env.Command('bar.out', 'bar.in',
+ ["rm -f $TARGET",
+ "$BAR_BUILD &lt; $SOURCES &gt; $TARGET"],
+ ENV = {'PATH' : '/usr/local/bin/'})
+
+def rename(env, target, source):
+ import os
+ os.rename('.tmp', str(target[0]))
+
+env.Command('baz.out', 'baz.in',
+ ["$BAZ_BUILD &lt; $SOURCES &gt; .tmp",
+ rename ])
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Note that the
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Command</function>
+function will usually assume, by default,
+that the specified targets and/or sources are Files,
+if no other part of the configuration
+identifies what type of entry it is.
+If necessary, you can explicitly specify
+that targets or source nodes should
+be treated as directoriese
+by using the
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="f-Dir"><function>Dir</function></link>
+or
+<function>env.Dir</function>()
+functions.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Examples:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env.Command('ddd.list', Dir('ddd'), 'ls -l $SOURCE &gt; $TARGET')
+
+env['DISTDIR'] = 'destination/directory'
+env.Command(env.Dir('$DISTDIR')), None, make_distdir)
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+(Also note that SCons will usually
+automatically create any directory necessary to hold a target file,
+so you normally don't need to create directories by hand.)
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-Configure">
+ <term>
+ <synopsis>Configure(env, [custom_tests, conf_dir, log_file, config_h])</synopsis>
+ <synopsis>env.Configure([custom_tests, conf_dir, log_file, config_h])</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Creates a Configure object for integrated
+functionality similar to GNU autoconf.
+See the section "Configure Contexts,"
+below, for a complete explanation of the arguments and behavior.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-Copy">
+ <term>
+ <synopsis>env.Copy([key=val, ...])</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A now-deprecated synonym for
+<function>env.Clone</function>().
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-CVS">
+ <term>
+ <synopsis>env.CVS(repository, module)</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A factory function that
+returns a Builder object
+to be used to fetch source files
+from the specified
+CVS
+<varname>repository</varname>.
+The returned Builder
+is intended to be passed to the
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="f-SourceCode"><function>SourceCode</function></link>
+function.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This function is deprecated. For details, see the entry for the
+<function xmlns="http://www.scons.org/dbxsd/v1.0">SourceCode</function>
+function.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The optional specified
+<varname>module</varname>
+will be added to the beginning
+of all repository path names;
+this can be used, in essence,
+to strip initial directory names
+from the repository path names,
+so that you only have to
+replicate part of the repository
+directory hierarchy in your
+local build directory.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Examples:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+# Will fetch foo/bar/src.c
+# from /usr/local/CVSROOT/foo/bar/src.c.
+env.SourceCode('.', env.CVS('/usr/local/CVSROOT'))
+
+# Will fetch bar/src.c
+# from /usr/local/CVSROOT/foo/bar/src.c.
+env.SourceCode('.', env.CVS('/usr/local/CVSROOT', 'foo'))
+
+# Will fetch src.c
+# from /usr/local/CVSROOT/foo/bar/src.c.
+env.SourceCode('.', env.CVS('/usr/local/CVSROOT', 'foo/bar'))
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-Decider">
+ <term>
+ <synopsis>Decider(function)</synopsis>
+ <synopsis>env.Decider(function)</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Specifies that all up-to-date decisions for
+targets built through this construction environment
+will be handled by the specified
+<varname>function</varname>.
+The
+<varname>function</varname>
+can be one of the following strings
+that specify the type of decision function
+to be performed:
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<variablelist>
+<varlistentry>
+<term><literal>timestamp-newer</literal></term>
+<listitem>
+<para>
+Specifies that a target shall be considered out of date and rebuilt
+if the dependency's timestamp is newer than the target file's timestamp.
+This is the behavior of the classic Make utility,
+and
+<literal>make</literal>
+can be used a synonym for
+<literal>timestamp-newer</literal>.
+</para>
+</listitem>
+</varlistentry>
+<varlistentry>
+<term><literal>timestamp-match</literal></term>
+<listitem>
+<para>
+Specifies that a target shall be considered out of date and rebuilt
+if the dependency's timestamp is different than the
+timestamp recorded the last time the target was built.
+This provides behavior very similar to the classic Make utility
+(in particular, files are not opened up so that their
+contents can be checksummed)
+except that the target will also be rebuilt if a
+dependency file has been restored to a version with an
+<emphasis>earlier</emphasis>
+timestamp, such as can happen when restoring files from backup archives.
+</para>
+</listitem>
+</varlistentry>
+<varlistentry>
+<term><literal>MD5</literal></term>
+<listitem>
+<para>
+Specifies that a target shall be considered out of date and rebuilt
+if the dependency's content has changed sine the last time
+the target was built,
+as determined be performing an MD5 checksum
+on the dependency's contents
+and comparing it to the checksum recorded the
+last time the target was built.
+<literal>content</literal>
+can be used as a synonym for
+<literal>MD5</literal>.
+</para>
+</listitem>
+</varlistentry>
+<varlistentry>
+<term><literal>MD5-timestamp</literal></term>
+<listitem>
+<para>
+Specifies that a target shall be considered out of date and rebuilt
+if the dependency's content has changed sine the last time
+the target was built,
+except that dependencies with a timestamp that matches
+the last time the target was rebuilt will be
+assumed to be up-to-date and
+<emphasis>not</emphasis>
+rebuilt.
+This provides behavior very similar
+to the
+<literal>MD5</literal>
+behavior of always checksumming file contents,
+with an optimization of not checking
+the contents of files whose timestamps haven't changed.
+The drawback is that SCons will
+<emphasis>not</emphasis>
+detect if a file's content has changed
+but its timestamp is the same,
+as might happen in an automated script
+that runs a build,
+updates a file,
+and runs the build again,
+all within a single second.
+</para>
+</listitem>
+</varlistentry>
+</variablelist>
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Examples:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+# Use exact timestamp matches by default.
+Decider('timestamp-match')
+
+# Use MD5 content signatures for any targets built
+# with the attached construction environment.
+env.Decider('content')
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+In addition to the above already-available functions,
+the
+<varname>function</varname>
+argument may be an actual Python function
+that takes the following three arguments:
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<variablelist>
+<varlistentry>
+<term><parameter>dependency</parameter></term>
+<listitem>
+<para>
+The Node (file) which
+should cause the
+<varname>target</varname>
+to be rebuilt
+if it has "changed" since the last tme
+<varname>target</varname>
+was built.
+</para>
+</listitem>
+</varlistentry>
+<varlistentry>
+<term><parameter>target</parameter></term>
+<listitem>
+<para>
+The Node (file) being built.
+In the normal case,
+this is what should get rebuilt
+if the
+<varname>dependency</varname>
+has "changed."
+</para>
+</listitem>
+</varlistentry>
+<varlistentry>
+<term><parameter>prev_ni</parameter></term>
+<listitem>
+<para>
+Stored information about the state of the
+<varname>dependency</varname>
+the last time the
+<varname>target</varname>
+was built.
+This can be consulted to match various
+file characteristics
+such as the timestamp,
+size, or content signature.
+</para>
+</listitem>
+</varlistentry>
+</variablelist>
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The
+<varname>function</varname>
+should return a
+<literal>True</literal>
+(non-zero)
+value if the
+<varname>dependency</varname>
+has "changed" since the last time
+the
+<varname>target</varname>
+was built
+(indicating that the target
+<emphasis>should</emphasis>
+be rebuilt),
+and
+<literal>False</literal>
+(zero)
+otherwise
+(indicating that the target should
+<emphasis>not</emphasis>
+be rebuilt).
+Note that the decision can be made
+using whatever criteria are appopriate.
+Ignoring some or all of the function arguments
+is perfectly normal.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Example:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+def my_decider(dependency, target, prev_ni):
+ return not os.path.exists(str(target))
+
+env.Decider(my_decider)
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-Default">
+ <term>
+ <synopsis>Default(targets)</synopsis>
+ <synopsis>env.Default(targets)</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This specifies a list of default targets,
+which will be built by
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+if no explicit targets are given on the command line.
+Multiple calls to
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Default</function>
+are legal,
+and add to the list of default targets.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Multiple targets should be specified as
+separate arguments to the
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Default</function>
+method, or as a list.
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Default</function>
+will also accept the Node returned by any
+of a construction environment's
+builder methods.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Examples:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+Default('foo', 'bar', 'baz')
+env.Default(['a', 'b', 'c'])
+hello = env.Program('hello', 'hello.c')
+env.Default(hello)
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+An argument to
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Default</function>
+of
+<literal>None</literal>
+will clear all default targets.
+Later calls to
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Default</function>
+will add to the (now empty) default-target list
+like normal.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The current list of targets added using the
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Default</function>
+function or method is available in the
+<literal>DEFAULT_TARGETS</literal>
+list;
+see below.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-DefaultEnvironment">
+ <term>
+ <synopsis>DefaultEnvironment([args])</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Creates and returns a default construction environment object.
+This construction environment is used internally by SCons
+in order to execute many of the global functions in this list,
+and to fetch source files transparently
+from source code management systems.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-Depends">
+ <term>
+ <synopsis>Depends(target, dependency)</synopsis>
+ <synopsis>env.Depends(target, dependency)</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Specifies an explicit dependency;
+the
+<varname>target</varname>
+will be rebuilt
+whenever the
+<varname>dependency</varname>
+has changed.
+Both the specified
+<varname>target</varname>
+and
+<varname>dependency</varname>
+can be a string
+(usually the path name of a file or directory)
+or Node objects,
+or a list of strings or Node objects
+(such as returned by a Builder call).
+This should only be necessary
+for cases where the dependency
+is not caught by a Scanner
+for the file.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Example:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env.Depends('foo', 'other-input-file-for-foo')
+
+mylib = env.Library('mylib.c')
+installed_lib = env.Install('lib', mylib)
+bar = env.Program('bar.c')
+
+# Arrange for the library to be copied into the installation
+# directory before trying to build the "bar" program.
+# (Note that this is for example only. A "real" library
+# dependency would normally be configured through the $LIBS
+# and $LIBPATH variables, not using an env.Depends() call.)
+
+env.Depends(bar, installed_lib)
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-Dictionary">
+ <term>
+ <synopsis>env.Dictionary([vars])</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Returns a dictionary object
+containing copies of all of the
+construction variables in the environment.
+If there are any variable names specified,
+only the specified construction
+variables are returned in the dictionary.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Example:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+dict = env.Dictionary()
+cc_dict = env.Dictionary('CC', 'CCFLAGS', 'CCCOM')
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-Dir">
+ <term>
+ <synopsis>Dir(name, [directory])</synopsis>
+ <synopsis>env.Dir(name, [directory])</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This returns a Directory Node,
+an object that represents the specified directory
+<varname>name</varname>.
+<varname>name</varname>
+can be a relative or absolute path.
+<varname>directory</varname>
+is an optional directory that will be used as the parent directory.
+If no
+<varname>directory</varname>
+is specified, the current script's directory is used as the parent.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+If
+<varname>name</varname>
+is a list, SCons returns a list of Dir nodes.
+Construction variables are expanded in
+<varname>name</varname>.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Directory Nodes can be used anywhere you
+would supply a string as a directory name
+to a Builder method or function.
+Directory Nodes have attributes and methods
+that are useful in many situations;
+see "File and Directory Nodes," below.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-Dump">
+ <term>
+ <synopsis>env.Dump([key])</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Returns a pretty printable representation of the environment.
+<varname>key</varname>,
+if not
+<literal>None</literal>,
+should be a string containing the name of the variable of interest.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This SConstruct:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env=Environment()
+print env.Dump('CCCOM')
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+will print:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+'$CC -c -o $TARGET $CCFLAGS $CPPFLAGS $_CPPDEFFLAGS $_CPPINCFLAGS $SOURCES'
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+While this SConstruct:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env=Environment()
+print env.Dump()
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+will print:
+</para>
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+{ 'AR': 'ar',
+ 'ARCOM': '$AR $ARFLAGS $TARGET $SOURCES\n$RANLIB $RANLIBFLAGS $TARGET',
+ 'ARFLAGS': ['r'],
+ 'AS': 'as',
+ 'ASCOM': '$AS $ASFLAGS -o $TARGET $SOURCES',
+ 'ASFLAGS': [],
+ ...
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-EnsurePythonVersion">
+ <term>
+ <synopsis>EnsurePythonVersion(major, minor)</synopsis>
+ <synopsis>env.EnsurePythonVersion(major, minor)</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Ensure that the Python version is at least
+<varname>major</varname>.<varname>minor</varname>.
+This function will
+print out an error message and exit SCons with a non-zero exit code if the
+actual Python version is not late enough.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Example:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+EnsurePythonVersion(2,2)
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-EnsureSConsVersion">
+ <term>
+ <synopsis>EnsureSConsVersion(major, minor, [revision])</synopsis>
+ <synopsis>env.EnsureSConsVersion(major, minor, [revision])</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Ensure that the SCons version is at least
+<varname>major.minor</varname>,
+or
+<varname>major.minor.revision</varname>.
+if
+<varname>revision</varname>
+is specified.
+This function will
+print out an error message and exit SCons with a non-zero exit code if the
+actual SCons version is not late enough.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Examples:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+EnsureSConsVersion(0,14)
+
+EnsureSConsVersion(0,96,90)
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-Environment">
+ <term>
+ <synopsis>Environment([key=value, ...])</synopsis>
+ <synopsis>env.Environment([key=value, ...])</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Return a new construction environment
+initialized with the specified
+<varname>key</varname><literal>=</literal><varname>value</varname>
+pairs.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-Execute">
+ <term>
+ <synopsis>Execute(action, [strfunction, varlist])</synopsis>
+ <synopsis>env.Execute(action, [strfunction, varlist])</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Executes an Action object.
+The specified
+<varname>action</varname>
+may be an Action object
+(see the section "Action Objects,"
+below, for a complete explanation of the arguments and behavior),
+or it may be a command-line string,
+list of commands,
+or executable Python function,
+each of which will be converted
+into an Action object
+and then executed.
+The exit value of the command
+or return value of the Python function
+will be returned.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Note that
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+will print an error message if the executed
+<varname>action</varname>
+fails--that is,
+exits with or returns a non-zero value.
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+will
+<emphasis>not</emphasis>,
+however,
+automatically terminate the build
+if the specified
+<varname>action</varname>
+fails.
+If you want the build to stop in response to a failed
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Execute</function>
+call,
+you must explicitly check for a non-zero return value:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+Execute(Copy('file.out', 'file.in'))
+
+if Execute("mkdir sub/dir/ectory"):
+ # The mkdir failed, don't try to build.
+ Exit(1)
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-Exit">
+ <term>
+ <synopsis>Exit([value])</synopsis>
+ <synopsis>env.Exit([value])</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This tells
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+to exit immediately
+with the specified
+<varname>value</varname>.
+A default exit value of
+<literal>0</literal>
+(zero)
+is used if no value is specified.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-Export">
+ <term>
+ <synopsis>Export(vars)</synopsis>
+ <synopsis>env.Export(vars)</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This tells
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+to export a list of variables from the current
+SConscript file to all other SConscript files.
+The exported variables are kept in a global collection,
+so subsequent calls to
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Export</function>
+will over-write previous exports that have the same name.
+Multiple variable names can be passed to
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Export</function>
+as separate arguments or as a list.
+Keyword arguments can be used to provide names and their values.
+A dictionary can be used to map variables to a different name when exported.
+Both local variables and global variables can be exported.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Examples:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment()
+# Make env available for all SConscript files to Import().
+Export("env")
+
+package = 'my_name'
+# Make env and package available for all SConscript files:.
+Export("env", "package")
+
+# Make env and package available for all SConscript files:
+Export(["env", "package"])
+
+# Make env available using the name debug:
+Export(debug = env)
+
+# Make env available using the name debug:
+Export({"debug":env})
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Note that the
+<function xmlns="http://www.scons.org/dbxsd/v1.0">SConscript</function>
+function supports an
+<varname>exports</varname>
+argument that makes it easier to to export a variable or
+set of variables to a single SConscript file.
+See the description of the
+<function xmlns="http://www.scons.org/dbxsd/v1.0">SConscript</function>
+function, below.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-File">
+ <term>
+ <synopsis>File(name, [directory])</synopsis>
+ <synopsis>env.File(name, [directory])</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This returns a
+File Node,
+an object that represents the specified file
+<varname>name</varname>.
+<varname>name</varname>
+can be a relative or absolute path.
+<varname>directory</varname>
+is an optional directory that will be used as the parent directory.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+If
+<varname>name</varname>
+is a list, SCons returns a list of File nodes.
+Construction variables are expanded in
+<varname>name</varname>.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+File Nodes can be used anywhere you
+would supply a string as a file name
+to a Builder method or function.
+File Nodes have attributes and methods
+that are useful in many situations;
+see "File and Directory Nodes," below.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-FindFile">
+ <term>
+ <synopsis>FindFile(file, dirs)</synopsis>
+ <synopsis>env.FindFile(file, dirs)</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Search for
+<varname>file</varname>
+in the path specified by
+<varname>dirs</varname>.
+<varname>dirs</varname>
+may be a list of directory names or a single directory name.
+In addition to searching for files that exist in the filesystem,
+this function also searches for derived files
+that have not yet been built.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Example:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+foo = env.FindFile('foo', ['dir1', 'dir2'])
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-FindInstalledFiles">
+ <term>
+ <synopsis>FindInstalledFiles()</synopsis>
+ <synopsis>env.FindInstalledFiles()</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Returns the list of targets set up by the
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-Install"><function>Install</function></link>
+or
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-InstallAs"><function>InstallAs</function></link>
+builders.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This function serves as a convenient method to select the contents of
+a binary package.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Example:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+Install( '/bin', [ 'executable_a', 'executable_b' ] )
+
+# will return the file node list
+# [ '/bin/executable_a', '/bin/executable_b' ]
+FindInstalledFiles()
+
+Install( '/lib', [ 'some_library' ] )
+
+# will return the file node list
+# [ '/bin/executable_a', '/bin/executable_b', '/lib/some_library' ]
+FindInstalledFiles()
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-FindPathDirs">
+ <term>
+ <synopsis>FindPathDirs(variable)</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Returns a function
+(actually a callable Python object)
+intended to be used as the
+<varname>path_function</varname>
+of a Scanner object.
+The returned object will look up the specified
+<varname>variable</varname>
+in a construction environment
+and treat the construction variable's value as a list of
+directory paths that should be searched
+(like
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-CPPPATH"><envar>$CPPPATH</envar></link>,
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-LIBPATH"><envar>$LIBPATH</envar></link>,
+etc.).
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Note that use of
+<function xmlns="http://www.scons.org/dbxsd/v1.0">FindPathDirs</function>
+is generally preferable to
+writing your own
+<varname>path_function</varname>
+for the following reasons:
+1) The returned list will contain all appropriate directories
+found in source trees
+(when
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="f-VariantDir"><function>VariantDir</function></link>
+is used)
+or in code repositories
+(when
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Repository</function>
+or the
+<option>-Y</option>
+option are used).
+2) scons will identify expansions of
+<varname>variable</varname>
+that evaluate to the same list of directories as,
+in fact, the same list,
+and avoid re-scanning the directories for files,
+when possible.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Example:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+def my_scan(node, env, path, arg):
+ # Code to scan file contents goes here...
+ return include_files
+
+scanner = Scanner(name = 'myscanner',
+ function = my_scan,
+ path_function = FindPathDirs('MYPATH'))
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-FindSourceFiles">
+ <term>
+ <synopsis>FindSourceFiles(node='"."')</synopsis>
+ <synopsis>env.FindSourceFiles(node='"."')</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Returns the list of nodes which serve as the source of the built files.
+It does so by inspecting the dependency tree starting at the optional
+argument
+<varname>node</varname>
+which defaults to the '"."'-node. It will then return all leaves of
+<varname>node</varname>.
+These are all children which have no further children.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This function is a convenient method to select the contents of a Source
+Package.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Example:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+Program( 'src/main_a.c' )
+Program( 'src/main_b.c' )
+Program( 'main_c.c' )
+
+# returns ['main_c.c', 'src/main_a.c', 'SConstruct', 'src/main_b.c']
+FindSourceFiles()
+
+# returns ['src/main_b.c', 'src/main_a.c' ]
+FindSourceFiles( 'src' )
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+As you can see build support files (SConstruct in the above example)
+will also be returned by this function.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-Flatten">
+ <term>
+ <synopsis>Flatten(sequence)</synopsis>
+ <synopsis>env.Flatten(sequence)</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Takes a sequence (that is, a Python list or tuple)
+that may contain nested sequences
+and returns a flattened list containing
+all of the individual elements in any sequence.
+This can be helpful for collecting
+the lists returned by calls to Builders;
+other Builders will automatically
+flatten lists specified as input,
+but direct Python manipulation of
+these lists does not.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Examples:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+foo = Object('foo.c')
+bar = Object('bar.c')
+
+# Because `foo' and `bar' are lists returned by the Object() Builder,
+# `objects' will be a list containing nested lists:
+objects = ['f1.o', foo, 'f2.o', bar, 'f3.o']
+
+# Passing such a list to another Builder is all right because
+# the Builder will flatten the list automatically:
+Program(source = objects)
+
+# If you need to manipulate the list directly using Python, you need to
+# call Flatten() yourself, or otherwise handle nested lists:
+for object in Flatten(objects):
+ print str(object)
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-GetBuildFailures">
+ <term>
+ <synopsis>GetBuildFailures()</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Returns a list of exceptions for the
+actions that failed while
+attempting to build targets.
+Each element in the returned list is a
+<classname>BuildError</classname>
+object
+with the following attributes
+that record various aspects
+of the build failure:
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<literal>.node</literal>
+The node that was being built
+when the build failure occurred.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<literal>.status</literal>
+The numeric exit status
+returned by the command or Python function
+that failed when trying to build the
+specified Node.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<literal>.errstr</literal>
+The SCons error string
+describing the build failure.
+(This is often a generic
+message like "Error 2"
+to indicate that an executed
+command exited with a status of 2.)
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<literal>.filename</literal>
+The name of the file or
+directory that actually caused the failure.
+This may be different from the
+<literal>.node</literal>
+attribute.
+For example,
+if an attempt to build a target named
+<filename>sub/dir/target</filename>
+fails because the
+<filename>sub/dir</filename>
+directory could not be created,
+then the
+<literal>.node</literal>
+attribute will be
+<filename>sub/dir/target</filename>
+but the
+<literal>.filename</literal>
+attribute will be
+<filename>sub/dir</filename>.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<literal>.executor</literal>
+The SCons Executor object
+for the target Node
+being built.
+This can be used to retrieve
+the construction environment used
+for the failed action.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<literal>.action</literal>
+The actual SCons Action object that failed.
+This will be one specific action
+out of the possible list of
+actions that would have been
+executed to build the target.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<literal>.command</literal>
+The actual expanded command that was executed and failed,
+after expansion of
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-TARGET"><envar>$TARGET</envar></link>,
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SOURCE"><envar>$SOURCE</envar></link>,
+and other construction variables.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Note that the
+<function xmlns="http://www.scons.org/dbxsd/v1.0">GetBuildFailures</function>
+function
+will always return an empty list
+until any build failure has occurred,
+which means that
+<function xmlns="http://www.scons.org/dbxsd/v1.0">GetBuildFailures</function>
+will always return an empty list
+while the
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">SConscript</filename>
+files are being read.
+Its primary intended use is
+for functions that will be
+executed before SCons exits
+by passing them to the
+standard Python
+<function>atexit.register</function>()
+function.
+Example:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+import atexit
+
+def print_build_failures():
+ from SCons.Script import GetBuildFailures
+ for bf in GetBuildFailures():
+ print "%s failed: %s" % (bf.node, bf.errstr)
+
+atexit.register(print_build_failures)
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-GetBuildPath">
+ <term>
+ <synopsis>GetBuildPath(file, [...])</synopsis>
+ <synopsis>env.GetBuildPath(file, [...])</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Returns the
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+path name (or names) for the specified
+<varname>file</varname>
+(or files).
+The specified
+<varname>file</varname>
+or files
+may be
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+Nodes or strings representing path names.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-GetLaunchDir">
+ <term>
+ <synopsis>GetLaunchDir()</synopsis>
+ <synopsis>env.GetLaunchDir()</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Returns the absolute path name of the directory from which
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+was initially invoked.
+This can be useful when using the
+<option>-u</option>,
+<option>-U</option>
+or
+<option>-D</option>
+options, which internally
+change to the directory in which the
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">SConstruct</filename>
+file is found.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-GetOption">
+ <term>
+ <synopsis>GetOption(name)</synopsis>
+ <synopsis>env.GetOption(name)</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This function provides a way to query the value of
+SCons options set on scons command line
+(or set using the
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="f-SetOption"><function>SetOption</function></link>
+function).
+The options supported are:
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<variablelist>
+<varlistentry>
+<term><literal>cache_debug</literal></term>
+<listitem>
+<para>
+which corresponds to --cache-debug;
+</para>
+</listitem>
+</varlistentry>
+<varlistentry>
+<term><literal>cache_disable</literal></term>
+<listitem>
+<para>
+which corresponds to --cache-disable;
+</para>
+</listitem>
+</varlistentry>
+<varlistentry>
+<term><literal>cache_force</literal></term>
+<listitem>
+<para>
+which corresponds to --cache-force;
+</para>
+</listitem>
+</varlistentry>
+<varlistentry>
+<term><literal>cache_show</literal></term>
+<listitem>
+<para>
+which corresponds to --cache-show;
+</para>
+</listitem>
+</varlistentry>
+<varlistentry>
+<term><literal>clean</literal></term>
+<listitem>
+<para>
+which corresponds to -c, --clean and --remove;
+</para>
+</listitem>
+</varlistentry>
+<varlistentry>
+<term><literal>config</literal></term>
+<listitem>
+<para>
+which corresponds to --config;
+</para>
+</listitem>
+</varlistentry>
+<varlistentry>
+<term><literal>directory</literal></term>
+<listitem>
+<para>
+which corresponds to -C and --directory;
+</para>
+</listitem>
+</varlistentry>
+<varlistentry>
+<term><literal>diskcheck</literal></term>
+<listitem>
+<para>
+which corresponds to --diskcheck
+</para>
+</listitem>
+</varlistentry>
+<varlistentry>
+<term><literal>duplicate</literal></term>
+<listitem>
+<para>
+which corresponds to --duplicate;
+</para>
+</listitem>
+</varlistentry>
+<varlistentry>
+<term><literal>file</literal></term>
+<listitem>
+<para>
+which corresponds to -f, --file, --makefile and --sconstruct;
+</para>
+</listitem>
+</varlistentry>
+<varlistentry>
+<term><literal>help</literal></term>
+<listitem>
+<para>
+which corresponds to -h and --help;
+</para>
+</listitem>
+</varlistentry>
+<varlistentry>
+<term><literal>ignore_errors</literal></term>
+<listitem>
+<para>
+which corresponds to --ignore-errors;
+</para>
+</listitem>
+</varlistentry>
+<varlistentry>
+<term><literal>implicit_cache</literal></term>
+<listitem>
+<para>
+which corresponds to --implicit-cache;
+</para>
+</listitem>
+</varlistentry>
+<varlistentry>
+<term><literal>implicit_deps_changed</literal></term>
+<listitem>
+<para>
+which corresponds to --implicit-deps-changed;
+</para>
+</listitem>
+</varlistentry>
+<varlistentry>
+<term><literal>implicit_deps_unchanged</literal></term>
+<listitem>
+<para>
+which corresponds to --implicit-deps-unchanged;
+</para>
+</listitem>
+</varlistentry>
+<varlistentry>
+<term><literal>interactive</literal></term>
+<listitem>
+<para>
+which corresponds to --interact and --interactive;
+</para>
+</listitem>
+</varlistentry>
+<varlistentry>
+<term><literal>keep_going</literal></term>
+<listitem>
+<para>
+which corresponds to -k and --keep-going;
+</para>
+</listitem>
+</varlistentry>
+<varlistentry>
+<term><literal>max_drift</literal></term>
+<listitem>
+<para>
+which corresponds to --max-drift;
+</para>
+</listitem>
+</varlistentry>
+<varlistentry>
+<term><literal>no_exec</literal></term>
+<listitem>
+<para>
+which corresponds to -n, --no-exec, --just-print, --dry-run and --recon;
+</para>
+</listitem>
+</varlistentry>
+<varlistentry>
+<term><literal>no_site_dir</literal></term>
+<listitem>
+<para>
+which corresponds to --no-site-dir;
+</para>
+</listitem>
+</varlistentry>
+<varlistentry>
+<term><literal>num_jobs</literal></term>
+<listitem>
+<para>
+which corresponds to -j and --jobs;
+</para>
+</listitem>
+</varlistentry>
+<varlistentry>
+<term><literal>profile_file</literal></term>
+<listitem>
+<para>
+which corresponds to --profile;
+</para>
+</listitem>
+</varlistentry>
+<varlistentry>
+<term><literal>question</literal></term>
+<listitem>
+<para>
+which corresponds to -q and --question;
+</para>
+</listitem>
+</varlistentry>
+<varlistentry>
+<term><literal>random</literal></term>
+<listitem>
+<para>
+which corresponds to --random;
+</para>
+</listitem>
+</varlistentry>
+<varlistentry>
+<term><literal>repository</literal></term>
+<listitem>
+<para>
+which corresponds to -Y, --repository and --srcdir;
+</para>
+</listitem>
+</varlistentry>
+<varlistentry>
+<term><literal>silent</literal></term>
+<listitem>
+<para>
+which corresponds to -s, --silent and --quiet;
+</para>
+</listitem>
+</varlistentry>
+<varlistentry>
+<term><literal>site_dir</literal></term>
+<listitem>
+<para>
+which corresponds to --site-dir;
+</para>
+</listitem>
+</varlistentry>
+<varlistentry>
+<term><literal>stack_size</literal></term>
+<listitem>
+<para>
+which corresponds to --stack-size;
+</para>
+</listitem>
+</varlistentry>
+<varlistentry>
+<term><literal>taskmastertrace_file</literal></term>
+<listitem>
+<para>
+which corresponds to --taskmastertrace; and
+</para>
+</listitem>
+</varlistentry>
+<varlistentry>
+<term><literal>warn</literal></term>
+<listitem>
+<para>
+which corresponds to --warn and --warning.
+</para>
+</listitem>
+</varlistentry>
+</variablelist>
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+See the documentation for the
+corresponding command line object for information about each specific
+option.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-Glob">
+ <term>
+ <synopsis>Glob(pattern, [ondisk, source, strings])</synopsis>
+ <synopsis>env.Glob(pattern, [ondisk, source, strings])</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Returns Nodes (or strings) that match the specified
+<varname>pattern</varname>,
+relative to the directory of the current
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">SConscript</filename>
+file.
+The
+<function>env.Glob</function>()
+form performs string substition on
+<varname>pattern</varname>
+and returns whatever matches
+the resulting expanded pattern.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The specified
+<varname>pattern</varname>
+uses Unix shell style metacharacters for matching:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+ * matches everything
+ ? matches any single character
+ [seq] matches any character in seq
+ [!seq] matches any char not in seq
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+If the first character of a filename is a dot,
+it must be matched explicitly.
+Character matches do
+<emphasis>not</emphasis>
+span directory separators.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Glob</function>
+knows about
+repositories
+(see the
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="f-Repository"><function>Repository</function></link>
+function)
+and source directories
+(see the
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="f-VariantDir"><function>VariantDir</function></link>
+function)
+and
+returns a Node (or string, if so configured)
+in the local (SConscript) directory
+if matching Node is found
+anywhere in a corresponding
+repository or source directory.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The
+<varname>ondisk</varname>
+argument may be set to
+<literal>False</literal>
+(or any other non-true value)
+to disable the search for matches on disk,
+thereby only returning matches among
+already-configured File or Dir Nodes.
+The default behavior is to
+return corresponding Nodes
+for any on-disk matches found.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The
+<varname>source</varname>
+argument may be set to
+<literal>True</literal>
+(or any equivalent value)
+to specify that,
+when the local directory is a
+<function xmlns="http://www.scons.org/dbxsd/v1.0">VariantDir</function>,
+the returned Nodes should be from the
+corresponding source directory,
+not the local directory.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The
+<varname>strings</varname>
+argument may be set to
+<literal>True</literal>
+(or any equivalent value)
+to have the
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Glob</function>
+function return strings, not Nodes,
+that represent the matched files or directories.
+The returned strings will be relative to
+the local (SConscript) directory.
+(Note that This may make it easier to perform
+arbitrary manipulation of file names,
+but if the returned strings are
+passed to a different
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">SConscript</filename>
+file,
+any Node translation will be relative
+to the other
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">SConscript</filename>
+directory,
+not the original
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">SConscript</filename>
+directory.)
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Examples:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+Program('foo', Glob('*.c'))
+Zip('/tmp/everything', Glob('.??*') + Glob('*'))
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-Help">
+ <term>
+ <synopsis>Help(text)</synopsis>
+ <synopsis>env.Help(text)</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This specifies help text to be printed if the
+<option>-h</option>
+argument is given to
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>.
+If
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Help</function>
+is called multiple times, the text is appended together in the order
+that
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Help</function>
+is called.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-Ignore">
+ <term>
+ <synopsis>Ignore(target, dependency)</synopsis>
+ <synopsis>env.Ignore(target, dependency)</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The specified dependency file(s)
+will be ignored when deciding if
+the target file(s) need to be rebuilt.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+You can also use
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Ignore</function>
+to remove a target from the default build.
+In order to do this you must specify the directory the target will
+be built in as the target, and the file you want to skip building
+as the dependency.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Note that this will only remove the dependencies listed from
+the files built by default. It will still be built if that
+dependency is needed by another object being built.
+See the third and forth examples below.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Examples:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env.Ignore('foo', 'foo.c')
+env.Ignore('bar', ['bar1.h', 'bar2.h'])
+env.Ignore('.','foobar.obj')
+env.Ignore('bar','bar/foobar.obj')
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-Import">
+ <term>
+ <synopsis>Import(vars)</synopsis>
+ <synopsis>env.Import(vars)</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This tells
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+to import a list of variables into the current SConscript file. This
+will import variables that were exported with
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Export</function>
+or in the
+<varname>exports</varname>
+argument to
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="f-SConscript"><function>SConscript</function></link>.
+Variables exported by
+<function xmlns="http://www.scons.org/dbxsd/v1.0">SConscript</function>
+have precedence.
+Multiple variable names can be passed to
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Import</function>
+as separate arguments or as a list. The variable "*" can be used
+to import all variables.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Examples:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+Import("env")
+Import("env", "variable")
+Import(["env", "variable"])
+Import("*")
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-Literal">
+ <term>
+ <synopsis>Literal(string)</synopsis>
+ <synopsis>env.Literal(string)</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The specified
+<varname>string</varname>
+will be preserved as-is
+and not have construction variables expanded.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-Local">
+ <term>
+ <synopsis>Local(targets)</synopsis>
+ <synopsis>env.Local(targets)</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The specified
+<varname>targets</varname>
+will have copies made in the local tree,
+even if an already up-to-date copy
+exists in a repository.
+Returns a list of the target Node or Nodes.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-MergeFlags">
+ <term>
+ <synopsis>env.MergeFlags(arg, [unique])</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Merges the specified
+<varname>arg</varname>
+values to the construction environment's construction variables.
+If the
+<varname>arg</varname>
+argument is not a dictionary,
+it is converted to one by calling
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="f-ParseFlags"><function>env.ParseFlags</function></link>
+on the argument
+before the values are merged.
+Note that
+<varname>arg</varname>
+must be a single value,
+so multiple strings must
+be passed in as a list,
+not as separate arguments to
+<function xmlns="http://www.scons.org/dbxsd/v1.0">env.MergeFlags</function>.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+By default,
+duplicate values are eliminated;
+you can, however, specify
+<literal>unique=0</literal>
+to allow duplicate
+values to be added.
+When eliminating duplicate values,
+any construction variables that end with
+the string
+<literal>PATH</literal>
+keep the left-most unique value.
+All other construction variables keep
+the right-most unique value.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Examples:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+# Add an optimization flag to $CCFLAGS.
+env.MergeFlags('-O3')
+
+# Combine the flags returned from running pkg-config with an optimization
+# flag and merge the result into the construction variables.
+env.MergeFlags(['!pkg-config gtk+-2.0 --cflags', '-O3'])
+
+# Combine an optimization flag with the flags returned from running pkg-config
+# twice and merge the result into the construction variables.
+env.MergeFlags(['-O3',
+ '!pkg-config gtk+-2.0 --cflags --libs',
+ '!pkg-config libpng12 --cflags --libs'])
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-NoCache">
+ <term>
+ <synopsis>NoCache(target, ...)</synopsis>
+ <synopsis>env.NoCache(target, ...)</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Specifies a list of files which should
+<emphasis>not</emphasis>
+be cached whenever the
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="f-CacheDir"><function>CacheDir</function></link>
+method has been activated.
+The specified targets may be a list
+or an individual target.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Multiple files should be specified
+either as separate arguments to the
+<function xmlns="http://www.scons.org/dbxsd/v1.0">NoCache</function>
+method, or as a list.
+<function xmlns="http://www.scons.org/dbxsd/v1.0">NoCache</function>
+will also accept the return value of any of the construction environment
+Builder methods.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Calling
+<function xmlns="http://www.scons.org/dbxsd/v1.0">NoCache</function>
+on directories and other non-File Node types has no effect because
+only File Nodes are cached.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Examples:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+NoCache('foo.elf')
+NoCache(env.Program('hello', 'hello.c'))
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-NoClean">
+ <term>
+ <synopsis>NoClean(target, ...)</synopsis>
+ <synopsis>env.NoClean(target, ...)</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Specifies a list of files or directories which should
+<emphasis>not</emphasis>
+be removed whenever the targets (or their dependencies)
+are specified with the
+<option>-c</option>
+command line option.
+The specified targets may be a list
+or an individual target.
+Multiple calls to
+<function xmlns="http://www.scons.org/dbxsd/v1.0">NoClean</function>
+are legal,
+and prevent each specified target
+from being removed by calls to the
+<option>-c</option>
+option.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Multiple files or directories should be specified
+either as separate arguments to the
+<function xmlns="http://www.scons.org/dbxsd/v1.0">NoClean</function>
+method, or as a list.
+<function xmlns="http://www.scons.org/dbxsd/v1.0">NoClean</function>
+will also accept the return value of any of the construction environment
+Builder methods.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Calling
+<function xmlns="http://www.scons.org/dbxsd/v1.0">NoClean</function>
+for a target overrides calling
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="f-Clean"><function>Clean</function></link>
+for the same target,
+and any targets passed to both functions will
+<emphasis>not</emphasis>
+be removed by the
+<option>-c</option>
+option.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Examples:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+NoClean('foo.elf')
+NoClean(env.Program('hello', 'hello.c'))
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-ParseConfig">
+ <term>
+ <synopsis>env.ParseConfig(command, [function, unique])</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Calls the specified
+<varname>function</varname>
+to modify the environment as specified by the output of
+<varname>command</varname>.
+The default
+<varname>function</varname>
+is
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="f-MergeFlags"><function>env.MergeFlags</function></link>,
+which expects the output of a typical
+<application>*-config</application>
+command
+(for example,
+<application>gtk-config</application>)
+and adds the options
+to the appropriate construction variables.
+By default,
+duplicate values are not
+added to any construction variables;
+you can specify
+<literal>unique=0</literal>
+to allow duplicate
+values to be added.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Interpreted options
+and the construction variables they affect
+are as specified for the
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="f-ParseFlags"><function>env.ParseFlags</function></link>
+method (which this method calls).
+See that method's description, below,
+for a table of options and construction variables.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-ParseDepends">
+ <term>
+ <synopsis>ParseDepends(filename, [must_exist, only_one])</synopsis>
+ <synopsis>env.ParseDepends(filename, [must_exist, only_one])</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Parses the contents of the specified
+<varname>filename</varname>
+as a list of dependencies in the style of
+<application xmlns="http://www.scons.org/dbxsd/v1.0">Make</application>
+or
+<application>mkdep</application>,
+and explicitly establishes all of the listed dependencies.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+By default,
+it is not an error
+if the specified
+<varname>filename</varname>
+does not exist.
+The optional
+<varname>must_exist</varname>
+argument may be set to a non-zero
+value to have
+scons
+throw an exception and
+generate an error if the file does not exist,
+or is otherwise inaccessible.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The optional
+<varname>only_one</varname>
+argument may be set to a non-zero
+value to have
+scons
+thrown an exception and
+generate an error
+if the file contains dependency
+information for more than one target.
+This can provide a small sanity check
+for files intended to be generated
+by, for example, the
+<literal>gcc -M</literal>
+flag,
+which should typically only
+write dependency information for
+one output file into a corresponding
+<filename>.d</filename>
+file.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The
+<varname>filename</varname>
+and all of the files listed therein
+will be interpreted relative to
+the directory of the
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">SConscript</filename>
+file which calls the
+<function xmlns="http://www.scons.org/dbxsd/v1.0">ParseDepends</function>
+function.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-ParseFlags">
+ <term>
+ <synopsis>env.ParseFlags(flags, ...)</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Parses one or more strings containing
+typical command-line flags for GCC tool chains
+and returns a dictionary with the flag values
+separated into the appropriate SCons construction variables.
+This is intended as a companion to the
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="f-MergeFlags"><function>env.MergeFlags</function></link>
+method, but allows for the values in the returned dictionary
+to be modified, if necessary,
+before merging them into the construction environment.
+(Note that
+<function xmlns="http://www.scons.org/dbxsd/v1.0">env.MergeFlags</function>
+will call this method if its argument is not a dictionary,
+so it is usually not necessary to call
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="f-ParseFlags"><function>env.ParseFlags</function></link>
+directly unless you want to manipulate the values.)
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+If the first character in any string is
+an exclamation mark (!),
+the rest of the string is executed as a command,
+and the output from the command is
+parsed as GCC tool chain command-line flags
+and added to the resulting dictionary.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Flag values are translated accordig to the prefix found,
+and added to the following construction variables:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+-arch CCFLAGS, LINKFLAGS
+-D CPPDEFINES
+-framework FRAMEWORKS
+-frameworkdir= FRAMEWORKPATH
+-include CCFLAGS
+-isysroot CCFLAGS, LINKFLAGS
+-I CPPPATH
+-l LIBS
+-L LIBPATH
+-mno-cygwin CCFLAGS, LINKFLAGS
+-mwindows LINKFLAGS
+-pthread CCFLAGS, LINKFLAGS
+-std= CFLAGS
+-Wa, ASFLAGS, CCFLAGS
+-Wl,-rpath= RPATH
+-Wl,-R, RPATH
+-Wl,-R RPATH
+-Wl, LINKFLAGS
+-Wp, CPPFLAGS
+- CCFLAGS
++ CCFLAGS, LINKFLAGS
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Any other strings not associated with options
+are assumed to be the names of libraries
+and added to the
+<envar xmlns="http://www.scons.org/dbxsd/v1.0">$LIBS</envar>
+construction variable.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Examples (all of which produce the same result):
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+dict = env.ParseFlags('-O2 -Dfoo -Dbar=1')
+dict = env.ParseFlags('-O2', '-Dfoo', '-Dbar=1')
+dict = env.ParseFlags(['-O2', '-Dfoo -Dbar=1'])
+dict = env.ParseFlags('-O2', '!echo -Dfoo -Dbar=1')
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-Perforce">
+ <term>
+ <synopsis>env.Perforce()</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A factory function that
+returns a Builder object
+to be used to fetch source files
+from the Perforce source code management system.
+The returned Builder
+is intended to be passed to the
+<function xmlns="http://www.scons.org/dbxsd/v1.0">SourceCode</function>
+function.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This function is deprecated. For details, see the entry for the
+<function xmlns="http://www.scons.org/dbxsd/v1.0">SourceCode</function>
+function.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Example:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env.SourceCode('.', env.Perforce())
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Perforce uses a number of external
+environment variables for its operation.
+Consequently, this function adds the
+following variables from the user's external environment
+to the construction environment's
+ENV dictionary:
+P4CHARSET,
+P4CLIENT,
+P4LANGUAGE,
+P4PASSWD,
+P4PORT,
+P4USER,
+SystemRoot,
+USER,
+and
+USERNAME.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-Platform">
+ <term>
+ <synopsis>Platform(string)</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Platform</function>
+form returns a callable object
+that can be used to initialize
+a construction environment using the
+platform keyword of the
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Environment</function>
+function.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Example:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment(platform = Platform('win32'))
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The
+<function xmlns="http://www.scons.org/dbxsd/v1.0">env.Platform</function>
+form applies the callable object for the specified platform
+<varname>string</varname>
+to the environment through which the method was called.
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env.Platform('posix')
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Note that the
+<literal>win32</literal>
+platform adds the
+<literal>SystemDrive</literal>
+and
+<literal>SystemRoot</literal>
+variables from the user's external environment
+to the construction environment's
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-ENV"><envar>$ENV</envar></link>
+dictionary.
+This is so that any executed commands
+that use sockets to connect with other systems
+(such as fetching source files from
+external CVS repository specifications like
+<literal>:pserver:anonymous@cvs.sourceforge.net:/cvsroot/scons</literal>)
+will work on Windows systems.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-Precious">
+ <term>
+ <synopsis>Precious(target, ...)</synopsis>
+ <synopsis>env.Precious(target, ...)</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Marks each given
+<varname>target</varname>
+as precious so it is not deleted before it is rebuilt. Normally
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+deletes a target before building it.
+Multiple targets can be passed in to a single call to
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Precious</function>.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-Prepend">
+ <term>
+ <synopsis>env.Prepend(key=val, [...])</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Appends the specified keyword arguments
+to the beginning of construction variables in the environment.
+If the Environment does not have
+the specified construction variable,
+it is simply added to the environment.
+If the values of the construction variable
+and the keyword argument are the same type,
+then the two values will be simply added together.
+Otherwise, the construction variable
+and the value of the keyword argument
+are both coerced to lists,
+and the lists are added together.
+(See also the Append method, above.)
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Example:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env.Prepend(CCFLAGS = '-g ', FOO = ['foo.yyy'])
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-PrependENVPath">
+ <term>
+ <synopsis>env.PrependENVPath(name, newpath, [envname, sep, delete_existing])</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This appends new path elements to the given path in the
+specified external environment
+(<envar xmlns="http://www.scons.org/dbxsd/v1.0">$ENV</envar>
+by default).
+This will only add
+any particular path once (leaving the first one it encounters and
+ignoring the rest, to preserve path order),
+and to help assure this,
+will normalize all paths (using
+<literal>os.path.normpath</literal>
+and
+<literal>os.path.normcase</literal>).
+This can also handle the
+case where the given old path variable is a list instead of a
+string, in which case a list will be returned instead of a string.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+If
+<varname>delete_existing</varname>
+is 0, then adding a path that already exists
+will not move it to the beginning;
+it will stay where it is in the list.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Example:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+print 'before:',env['ENV']['INCLUDE']
+include_path = '/foo/bar:/foo'
+env.PrependENVPath('INCLUDE', include_path)
+print 'after:',env['ENV']['INCLUDE']
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The above example will print:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+before: /biz:/foo
+after: /foo/bar:/foo:/biz
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-PrependUnique">
+ <term>
+ <synopsis>env.PrependUnique(key=val, delete_existing=0, [...])</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Appends the specified keyword arguments
+to the beginning of construction variables in the environment.
+If the Environment does not have
+the specified construction variable,
+it is simply added to the environment.
+If the construction variable being appended to is a list,
+then any value(s) that already exist in the
+construction variable will
+<emphasis>not</emphasis>
+be added again to the list.
+However, if delete_existing is 1,
+existing matching values are removed first, so
+existing values in the arg list move to the front of the list.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Example:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env.PrependUnique(CCFLAGS = '-g', FOO = ['foo.yyy'])
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-Progress">
+ <term>
+ <synopsis>Progress(callable, [interval])</synopsis>
+ <synopsis>Progress(string, [interval, file, overwrite])</synopsis>
+ <synopsis>Progress(list_of_strings, [interval, file, overwrite])</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Allows SCons to show progress made during the build
+by displaying a string or calling a function while
+evaluating Nodes (e.g. files).
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+If the first specified argument is a Python callable
+(a function or an object that has a
+<function>__call__</function>()
+method),
+the function will be called
+once every
+<varname>interval</varname>
+times a Node is evaluated.
+The callable will be passed the evaluated Node
+as its only argument.
+(For future compatibility,
+it's a good idea to also add
+<literal>*args</literal>
+and
+<literal>**kw</literal>
+as arguments to your function or method.
+This will prevent the code from breaking
+if SCons ever changes the interface
+to call the function with additional arguments in the future.)
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+An example of a simple custom progress function
+that prints a string containing the Node name
+every 10 Nodes:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+def my_progress_function(node, *args, **kw):
+ print 'Evaluating node %s!' % node
+Progress(my_progress_function, interval=10)
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A more complicated example of a custom progress display object
+that prints a string containing a count
+every 100 evaluated Nodes.
+Note the use of
+<literal>\r</literal>
+(a carriage return)
+at the end so that the string
+will overwrite itself on a display:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+import sys
+class ProgressCounter(object):
+ count = 0
+ def __call__(self, node, *args, **kw):
+ self.count += 100
+ sys.stderr.write('Evaluated %s nodes\r' % self.count)
+Progress(ProgressCounter(), interval=100)
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+If the first argument
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="f-Progress"><function>Progress</function></link>
+is a string,
+the string will be displayed
+every
+<varname>interval</varname>
+evaluated Nodes.
+The default is to print the string on standard output;
+an alternate output stream
+may be specified with the
+<literal>file=</literal>
+argument.
+The following will print a series of dots
+on the error output,
+one dot for every 100 evaluated Nodes:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+import sys
+Progress('.', interval=100, file=sys.stderr)
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+If the string contains the verbatim substring
+<envar xmlns="http://www.scons.org/dbxsd/v1.0">$TARGET</envar>,
+it will be replaced with the Node.
+Note that, for performance reasons, this is
+<emphasis>not</emphasis>
+a regular SCons variable substition,
+so you can not use other variables
+or use curly braces.
+The following example will print the name of
+every evaluated Node,
+using a
+<literal>\r</literal>
+(carriage return) to cause each line to overwritten by the next line,
+and the
+<literal>overwrite=</literal>
+keyword argument to make sure the previously-printed
+file name is overwritten with blank spaces:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+import sys
+Progress('$TARGET\r', overwrite=True)
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+If the first argument to
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Progress</function>
+is a list of strings,
+then each string in the list will be displayed
+in rotating fashion every
+<varname>interval</varname>
+evaluated Nodes.
+This can be used to implement a "spinner"
+on the user's screen as follows:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+Progress(['-\r', '\\\r', '|\r', '/\r'], interval=5)
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-RCS">
+ <term>
+ <synopsis>env.RCS()</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A factory function that
+returns a Builder object
+to be used to fetch source files
+from RCS.
+The returned Builder
+is intended to be passed to the
+<function xmlns="http://www.scons.org/dbxsd/v1.0">SourceCode</function>
+function:
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This function is deprecated. For details, see the entry for the
+<function xmlns="http://www.scons.org/dbxsd/v1.0">SourceCode</function>
+function.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Examples:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env.SourceCode('.', env.RCS())
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Note that
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+will fetch source files
+from RCS subdirectories automatically,
+so configuring RCS
+as demonstrated in the above example
+should only be necessary if
+you are fetching from
+RCS,v
+files in the same
+directory as the source files,
+or if you need to explicitly specify RCS
+for a specific subdirectory.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-Replace">
+ <term>
+ <synopsis>env.Replace(key=val, [...])</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Replaces construction variables in the Environment
+with the specified keyword arguments.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Example:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env.Replace(CCFLAGS = '-g', FOO = 'foo.xxx')
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-Repository">
+ <term>
+ <synopsis>Repository(directory)</synopsis>
+ <synopsis>env.Repository(directory)</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Specifies that
+<varname>directory</varname>
+is a repository to be searched for files.
+Multiple calls to
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Repository</function>
+are legal,
+and each one adds to the list of
+repositories that will be searched.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+To
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>,
+a repository is a copy of the source tree,
+from the top-level directory on down,
+which may contain
+both source files and derived files
+that can be used to build targets in
+the local source tree.
+The canonical example would be an
+official source tree maintained by an integrator.
+If the repository contains derived files,
+then the derived files should have been built using
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>,
+so that the repository contains the necessary
+signature information to allow
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+to figure out when it is appropriate to
+use the repository copy of a derived file,
+instead of building one locally.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Note that if an up-to-date derived file
+already exists in a repository,
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+will
+<emphasis>not</emphasis>
+make a copy in the local directory tree.
+In order to guarantee that a local copy
+will be made,
+use the
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="f-Local"><function>Local</function></link>
+method.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-Requires">
+ <term>
+ <synopsis>Requires(target, prerequisite)</synopsis>
+ <synopsis>env.Requires(target, prerequisite)</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Specifies an order-only relationship
+between the specified target file(s)
+and the specified prerequisite file(s).
+The prerequisite file(s)
+will be (re)built, if necessary,
+<emphasis>before</emphasis>
+the target file(s),
+but the target file(s) do not actually
+depend on the prerequisites
+and will not be rebuilt simply because
+the prerequisite file(s) change.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Example:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env.Requires('foo', 'file-that-must-be-built-before-foo')
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-Return">
+ <term>
+ <synopsis>Return([vars..., stop=])</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+By default,
+this stops processing the current SConscript
+file and returns to the calling SConscript file
+the values of the variables named in the
+<varname>vars</varname>
+string arguments.
+Multiple strings contaning variable names may be passed to
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Return</function>.
+Any strings that contain white space
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The optional
+<literal>stop=</literal>
+keyword argument may be set to a false value
+to continue processing the rest of the SConscript
+file after the
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Return</function>
+call.
+This was the default behavior prior to SCons 0.98.
+However, the values returned
+are still the values of the variables in the named
+<varname>vars</varname>
+at the point
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Return</function>
+is called.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Examples:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+# Returns without returning a value.
+Return()
+
+# Returns the value of the 'foo' Python variable.
+Return("foo")
+
+# Returns the values of the Python variables 'foo' and 'bar'.
+Return("foo", "bar")
+
+# Returns the values of Python variables 'val1' and 'val2'.
+Return('val1 val2')
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-Scanner">
+ <term>
+ <synopsis>Scanner(function, [argument, keys, path_function, node_class, node_factory, scan_check, recursive])</synopsis>
+ <synopsis>env.Scanner(function, [argument, keys, path_function, node_class, node_factory, scan_check, recursive])</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Creates a Scanner object for
+the specified
+<varname>function</varname>.
+See the section "Scanner Objects,"
+below, for a complete explanation of the arguments and behavior.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-SCCS">
+ <term>
+ <synopsis>env.SCCS()</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A factory function that
+returns a Builder object
+to be used to fetch source files
+from SCCS.
+The returned Builder
+is intended to be passed to the
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="f-SourceCode"><function>SourceCode</function></link>
+function.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Example:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env.SourceCode('.', env.SCCS())
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Note that
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+will fetch source files
+from SCCS subdirectories automatically,
+so configuring SCCS
+as demonstrated in the above example
+should only be necessary if
+you are fetching from
+<filename>s.SCCS</filename>
+files in the same
+directory as the source files,
+or if you need to explicitly specify SCCS
+for a specific subdirectory.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-SConscript">
+ <term>
+ <synopsis>SConscript(scripts, [exports, variant_dir, duplicate])</synopsis>
+ <synopsis>env.SConscript(scripts, [exports, variant_dir, duplicate])</synopsis>
+ <synopsis>SConscript(dirs=subdirs, [name=script, exports, variant_dir, duplicate])</synopsis>
+ <synopsis>env.SConscript(dirs=subdirs, [name=script, exports, variant_dir, duplicate])</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This tells
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+to execute
+one or more subsidiary SConscript (configuration) files.
+Any variables returned by a called script using
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="f-Return"><function>Return</function></link>
+will be returned by the call to
+<function xmlns="http://www.scons.org/dbxsd/v1.0">SConscript</function>.
+There are two ways to call the
+<function xmlns="http://www.scons.org/dbxsd/v1.0">SConscript</function>
+function.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The first way you can call
+<function xmlns="http://www.scons.org/dbxsd/v1.0">SConscript</function>
+is to explicitly specify one or more
+<varname>scripts</varname>
+as the first argument.
+A single script may be specified as a string;
+multiple scripts must be specified as a list
+(either explicitly or as created by
+a function like
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Split</function>).
+Examples:
+</para>
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+SConscript('SConscript') # run SConscript in the current directory
+SConscript('src/SConscript') # run SConscript in the src directory
+SConscript(['src/SConscript', 'doc/SConscript'])
+config = SConscript('MyConfig.py')
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The second way you can call
+<function xmlns="http://www.scons.org/dbxsd/v1.0">SConscript</function>
+is to specify a list of (sub)directory names
+as a
+<literal>dirs=</literal><varname>subdirs</varname>
+keyword argument.
+In this case,
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+will, by default,
+execute a subsidiary configuration file named
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">SConscript</filename>
+in each of the specified directories.
+You may specify a name other than
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">SConscript</filename>
+by supplying an optional
+<literal>name=</literal><varname>script</varname>
+keyword argument.
+The first three examples below have the same effect
+as the first three examples above:
+</para>
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+SConscript(dirs='.') # run SConscript in the current directory
+SConscript(dirs='src') # run SConscript in the src directory
+SConscript(dirs=['src', 'doc'])
+SConscript(dirs=['sub1', 'sub2'], name='MySConscript')
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The optional
+<varname>exports</varname>
+argument provides a list of variable names or a dictionary of
+named values to export to the
+<varname>script(s)</varname>.
+These variables are locally exported only to the specified
+<varname>script(s)</varname>,
+and do not affect the global pool of variables used by the
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Export</function>
+function.
+<!-- If multiple dirs are provided, each script gets a fresh export. -->
+The subsidiary
+<varname>script(s)</varname>
+must use the
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="f-Import"><function>Import</function></link>
+function to import the variables.
+Examples:
+</para>
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+foo = SConscript('sub/SConscript', exports='env')
+SConscript('dir/SConscript', exports=['env', 'variable'])
+SConscript(dirs='subdir', exports='env variable')
+SConscript(dirs=['one', 'two', 'three'], exports='shared_info')
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+If the optional
+<varname>variant_dir</varname>
+argument is present, it causes an effect equivalent to the
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="f-VariantDir"><function>VariantDir</function></link>
+method described below.
+(If
+<varname>variant_dir</varname>
+is not present, the
+<!-- <varname>src_dir</varname> and -->
+<varname>duplicate</varname>
+<!-- arguments are ignored.) -->
+argument is ignored.)
+The
+<varname>variant_dir</varname>
+<!--
+and
+<varname>src_dir</varname>
+arguments are interpreted relative to the directory of the calling
+-->
+argument is interpreted relative to the directory of the calling
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">SConscript</filename>
+file.
+See the description of the
+<function xmlns="http://www.scons.org/dbxsd/v1.0">VariantDir</function>
+function below for additional details and restrictions.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+If
+<varname>variant_dir</varname>
+is present,
+<!--
+but
+<varname>src_dir</varname>
+is not,
+-->
+the source directory is the directory in which the
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">SConscript</filename>
+file resides and the
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">SConscript</filename>
+file is evaluated as if it were in the
+<varname>variant_dir</varname>
+directory:
+</para>
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+SConscript('src/SConscript', variant_dir = 'build')
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+is equivalent to
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+VariantDir('build', 'src')
+SConscript('build/SConscript')
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This later paradigm is often used when the sources are
+in the same directory as the
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">SConstruct</filename>:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+SConscript('SConscript', variant_dir = 'build')
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+is equivalent to
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+VariantDir('build', '.')
+SConscript('build/SConscript')
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<!--
+If
+<varname>variant_dir</varname>
+and"
+<varname>src_dir</varname>
+are both present,
+xxxxx everything is in a state of confusion.
+</para>
+<example_commands>
+SConscript(dirs = 'src', variant_dir = 'build', src_dir = '.')
+runs src/SConscript in build/src, but
+SConscript(dirs = 'lib', variant_dir = 'build', src_dir = 'src')
+runs lib/SConscript (in lib!). However,
+SConscript(dirs = 'src', variant_dir = 'build', src_dir = 'src')
+runs src/SConscript in build. Moreover,
+SConscript(dirs = 'src/lib', variant_dir = 'build', src_dir = 'src')
+runs src/lib/SConscript in build/lib. Moreover,
+SConscript(dirs = 'build/src/lib', variant_dir = 'build', src_dir = 'src')
+can't find build/src/lib/SConscript, even though it ought to exist.
+</example_commands>
+<para>
+is equivalent to
+</para>
+<example_commands>
+????????????????
+</example_commands>
+<para>
+and what about this alternative?
+TODO??? SConscript('build/SConscript', src_dir='src')
+-->
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Here are some composite examples:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+# collect the configuration information and use it to build src and doc
+shared_info = SConscript('MyConfig.py')
+SConscript('src/SConscript', exports='shared_info')
+SConscript('doc/SConscript', exports='shared_info')
+</example_commands>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+# build debugging and production versions. SConscript
+# can use Dir('.').path to determine variant.
+SConscript('SConscript', variant_dir='debug', duplicate=0)
+SConscript('SConscript', variant_dir='prod', duplicate=0)
+</example_commands>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+# build debugging and production versions. SConscript
+# is passed flags to use.
+opts = { 'CPPDEFINES' : ['DEBUG'], 'CCFLAGS' : '-pgdb' }
+SConscript('SConscript', variant_dir='debug', duplicate=0, exports=opts)
+opts = { 'CPPDEFINES' : ['NODEBUG'], 'CCFLAGS' : '-O' }
+SConscript('SConscript', variant_dir='prod', duplicate=0, exports=opts)
+</example_commands>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+# build common documentation and compile for different architectures
+SConscript('doc/SConscript', variant_dir='build/doc', duplicate=0)
+SConscript('src/SConscript', variant_dir='build/x86', duplicate=0)
+SConscript('src/SConscript', variant_dir='build/ppc', duplicate=0)
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-SConscriptChdir">
+ <term>
+ <synopsis>SConscriptChdir(value)</synopsis>
+ <synopsis>env.SConscriptChdir(value)</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+By default,
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+changes its working directory
+to the directory in which each
+subsidiary SConscript file lives.
+This behavior may be disabled
+by specifying either:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+SConscriptChdir(0)
+env.SConscriptChdir(0)
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+in which case
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+will stay in the top-level directory
+while reading all SConscript files.
+(This may be necessary when building from repositories,
+when all the directories in which SConscript files may be found
+don't necessarily exist locally.)
+You may enable and disable
+this ability by calling
+SConscriptChdir()
+multiple times.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Example:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment()
+SConscriptChdir(0)
+SConscript('foo/SConscript') # will not chdir to foo
+env.SConscriptChdir(1)
+SConscript('bar/SConscript') # will chdir to bar
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-SConsignFile">
+ <term>
+ <synopsis>SConsignFile([file, dbm_module])</synopsis>
+ <synopsis>env.SConsignFile([file, dbm_module])</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This tells
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+to store all file signatures
+in the specified database
+<varname>file</varname>.
+If the
+<varname>file</varname>
+name is omitted,
+<filename>.sconsign</filename>
+is used by default.
+(The actual file name(s) stored on disk
+may have an appropriated suffix appended
+by the
+<varname> dbm_module</varname>.)
+If
+<varname>file</varname>
+is not an absolute path name,
+the file is placed in the same directory as the top-level
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">SConstruct</filename>
+file.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+If
+<varname>file</varname>
+is
+<literal>None</literal>,
+then
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+will store file signatures
+in a separate
+<filename>.sconsign</filename>
+file in each directory,
+not in one global database file.
+(This was the default behavior
+prior to SCons 0.96.91 and 0.97.)
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The optional
+<varname>dbm_module</varname>
+argument can be used to specify
+which Python database module
+The default is to use a custom
+<filename>SCons.dblite</filename>
+module that uses pickled
+Python data structures,
+and which works on all Python versions.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Examples:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+# Explicitly stores signatures in ".sconsign.dblite"
+# in the top-level SConstruct directory (the
+# default behavior).
+SConsignFile()
+
+# Stores signatures in the file "etc/scons-signatures"
+# relative to the top-level SConstruct directory.
+SConsignFile("etc/scons-signatures")
+
+# Stores signatures in the specified absolute file name.
+SConsignFile("/home/me/SCons/signatures")
+
+# Stores signatures in a separate .sconsign file
+# in each directory.
+SConsignFile(None)
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-SetDefault">
+ <term>
+ <synopsis>env.SetDefault(key=val, [...])</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables to default values specified with the keyword
+arguments if (and only if) the variables are not already set.
+The following statements are equivalent:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env.SetDefault(FOO = 'foo')
+
+if 'FOO' not in env: env['FOO'] = 'foo'
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-SetOption">
+ <term>
+ <synopsis>SetOption(name, value)</synopsis>
+ <synopsis>env.SetOption(name, value)</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This function provides a way to set a select subset of the scons command
+line options from a SConscript file. The options supported are:
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<variablelist>
+<varlistentry>
+<term><literal>clean</literal></term>
+<listitem>
+<para>
+which corresponds to -c, --clean and --remove;
+</para>
+</listitem>
+</varlistentry>
+<varlistentry>
+<term><literal>duplicate</literal></term>
+<listitem>
+<para>
+which corresponds to --duplicate;
+</para>
+</listitem>
+</varlistentry>
+<varlistentry>
+<term><literal>help</literal></term>
+<listitem>
+<para>
+which corresponds to -h and --help;
+</para>
+</listitem>
+</varlistentry>
+<varlistentry>
+<term><literal>implicit_cache</literal></term>
+<listitem>
+<para>
+which corresponds to --implicit-cache;
+</para>
+</listitem>
+</varlistentry>
+<varlistentry>
+<term><literal>max_drift</literal></term>
+<listitem>
+<para>
+which corresponds to --max-drift;
+</para>
+</listitem>
+</varlistentry>
+<varlistentry>
+<term><literal>no_exec</literal></term>
+<listitem>
+<para>
+which corresponds to -n, --no-exec, --just-print, --dry-run and --recon;
+</para>
+</listitem>
+</varlistentry>
+<varlistentry>
+<term><literal>num_jobs</literal></term>
+<listitem>
+<para>
+which corresponds to -j and --jobs;
+</para>
+</listitem>
+</varlistentry>
+<varlistentry>
+<term><literal>random</literal></term>
+<listitem>
+<para>
+which corresponds to --random; and
+</para>
+</listitem>
+</varlistentry>
+<varlistentry>
+<term><literal>stack_size</literal></term>
+<listitem>
+<para>
+which corresponds to --stack-size.
+</para>
+</listitem>
+</varlistentry>
+</variablelist>
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+See the documentation for the
+corresponding command line object for information about each specific
+option.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Example:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+SetOption('max_drift', 1)
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-SideEffect">
+ <term>
+ <synopsis>SideEffect(side_effect, target)</synopsis>
+ <synopsis>env.SideEffect(side_effect, target)</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Declares
+<varname>side_effect</varname>
+as a side effect of building
+<varname>target</varname>.
+Both
+<varname>side_effect</varname>
+and
+<varname>target</varname>
+can be a list, a file name, or a node.
+A side effect is a target file that is created or updated
+as a side effect of building other targets.
+For example, a Windows PDB
+file is created as a side effect of building the .obj
+files for a static library,
+and various log files are created updated
+as side effects of various TeX commands.
+If a target is a side effect of multiple build commands,
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+will ensure that only one set of commands
+is executed at a time.
+Consequently, you only need to use this method
+for side-effect targets that are built as a result of
+multiple build commands.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Because multiple build commands may update
+the same side effect file,
+by default the
+<varname>side_effect</varname>
+target is
+<emphasis>not</emphasis>
+automatically removed
+when the
+<varname>target</varname>
+is removed by the
+<option>-c</option>
+option.
+(Note, however, that the
+<varname>side_effect</varname>
+might be removed as part of
+cleaning the directory in which it lives.)
+If you want to make sure the
+<varname>side_effect</varname>
+is cleaned whenever a specific
+<varname>target</varname>
+is cleaned,
+you must specify this explicitly
+with the
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="f-Clean"><function>Clean</function></link>
+or
+<function xmlns="http://www.scons.org/dbxsd/v1.0">env.Clean</function>
+function.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-SourceCode">
+ <term>
+ <synopsis>SourceCode(entries, builder)</synopsis>
+ <synopsis>env.SourceCode(entries, builder)</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This function and its associate factory functions are deprecated.
+There is no replacement.
+The intended use was to keep a local tree in sync with an archive,
+but in actuality the function only causes the archive
+to be fetched on the first run.
+Synchronizing with the archive is best done external to <application xmlns="http://www.scons.org/dbxsd/v1.0">SCons</application>.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Arrange for non-existent source files to
+be fetched from a source code management system
+using the specified
+<varname>builder</varname>.
+The specified
+<varname>entries</varname>
+may be a Node, string or list of both,
+and may represent either individual
+source files or directories in which
+source files can be found.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+For any non-existent source files,
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+will search up the directory tree
+and use the first
+<function xmlns="http://www.scons.org/dbxsd/v1.0">SourceCode</function>
+builder it finds.
+The specified
+<varname>builder</varname>
+may be
+<literal>None</literal>,
+in which case
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+will not use a builder to fetch
+source files for the specified
+<varname>entries</varname>,
+even if a
+<function xmlns="http://www.scons.org/dbxsd/v1.0">SourceCode</function>
+builder has been specified
+for a directory higher up the tree.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+will, by default,
+fetch files from SCCS or RCS subdirectories
+without explicit configuration.
+This takes some extra processing time
+to search for the necessary
+source code management files on disk.
+You can avoid these extra searches
+and speed up your build a little
+by disabling these searches as follows:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env.SourceCode('.', None)
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Note that if the specified
+<varname>builder</varname>
+is one you create by hand,
+it must have an associated
+construction environment to use
+when fetching a source file.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+provides a set of canned factory
+functions that return appropriate
+Builders for various popular
+source code management systems.
+Canonical examples of invocation include:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env.SourceCode('.', env.BitKeeper('/usr/local/BKsources'))
+env.SourceCode('src', env.CVS('/usr/local/CVSROOT'))
+env.SourceCode('/', env.RCS())
+env.SourceCode(['f1.c', 'f2.c'], env.SCCS())
+env.SourceCode('no_source.c', None)
+</example_commands>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<!-- env.SourceCode('.', env.Subversion('file:///usr/local/Subversion')) -->
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-SourceSignatures">
+ <term>
+ <synopsis>SourceSignatures(type)</synopsis>
+ <synopsis>env.SourceSignatures(type)</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Note: Although it is not yet officially deprecated,
+use of this function is discouraged.
+See the
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="f-Decider"><function>Decider</function></link>
+function for a more flexible and straightforward way
+to configure SCons' decision-making.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The
+<function xmlns="http://www.scons.org/dbxsd/v1.0">SourceSignatures</function>
+function tells
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+how to decide if a source file
+(a file that is not built from any other files)
+has changed since the last time it
+was used to build a particular target file.
+Legal values are
+<literal>MD5</literal>
+or
+<literal>timestamp</literal>.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+If the environment method is used,
+the specified type of source signature
+is only used when deciding whether targets
+built with that environment are up-to-date or must be rebuilt.
+If the global function is used,
+the specified type of source signature becomes the default
+used for all decisions
+about whether targets are up-to-date.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<literal>MD5</literal>
+means
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+decides that a source file has changed
+if the MD5 checksum of its contents has changed since
+the last time it was used to rebuild a particular target file.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<literal>timestamp</literal>
+means
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+decides that a source file has changed
+if its timestamp (modification time) has changed since
+the last time it was used to rebuild a particular target file.
+(Note that although this is similar to the behavior of Make,
+by default it will also rebuild if the dependency is
+<emphasis>older</emphasis>
+than the last time it was used to rebuild the target file.)
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+There is no different between the two behaviors
+for Python
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Value</function>
+node objects.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<literal>MD5</literal>
+signatures take longer to compute,
+but are more accurate than
+<literal>timestamp</literal>
+signatures.
+The default value is
+<literal>MD5</literal>.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Note that the default
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="f-TargetSignatures"><function>TargetSignatures</function></link>
+setting (see below)
+is to use this
+<function xmlns="http://www.scons.org/dbxsd/v1.0">SourceSignatures</function>
+setting for any target files that are used
+to build other target files.
+Consequently, changing the value of
+<function xmlns="http://www.scons.org/dbxsd/v1.0">SourceSignatures</function>
+will, by default,
+affect the up-to-date decision for all files in the build
+(or all files built with a specific construction environment
+when
+<function xmlns="http://www.scons.org/dbxsd/v1.0">env.SourceSignatures</function>
+is used).
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-Split">
+ <term>
+ <synopsis>Split(arg)</synopsis>
+ <synopsis>env.Split(arg)</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Returns a list of file names or other objects.
+If arg is a string,
+it will be split on strings of white-space characters
+within the string,
+making it easier to write long lists of file names.
+If arg is already a list,
+the list will be returned untouched.
+If arg is any other type of object,
+it will be returned as a list
+containing just the object.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Example:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+files = Split("f1.c f2.c f3.c")
+files = env.Split("f4.c f5.c f6.c")
+files = Split("""
+ f7.c
+ f8.c
+ f9.c
+""")
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-subst">
+ <term>
+ <synopsis>env.subst(input, [raw, target, source, conv])</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Performs construction variable interpolation
+on the specified string or sequence argument
+<varname>input</varname>.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+By default,
+leading or trailing white space will
+be removed from the result.
+and all sequences of white space
+will be compressed to a single space character.
+Additionally, any
+<literal>$(</literal>
+and
+<literal>$)</literal>
+character sequences will be stripped from the returned string,
+The optional
+<varname>raw</varname>
+argument may be set to
+<literal>1</literal>
+if you want to preserve white space and
+<literal>$(</literal>-<literal>$)</literal>
+sequences.
+The
+<varname>raw</varname>
+argument may be set to
+<literal>2</literal>
+if you want to strip
+all characters between
+any
+<literal>$(</literal>
+and
+<literal>$)</literal>
+pairs
+(as is done for signature calculation).
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+If the input is a sequence
+(list or tuple),
+the individual elements of
+the sequence will be expanded,
+and the results will be returned as a list.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The optional
+<varname>target</varname>
+and
+<varname>source</varname>
+keyword arguments
+must be set to lists of
+target and source nodes, respectively,
+if you want the
+<envar xmlns="http://www.scons.org/dbxsd/v1.0">$TARGET</envar>,
+<envar xmlns="http://www.scons.org/dbxsd/v1.0">$TARGETS</envar>,
+<envar xmlns="http://www.scons.org/dbxsd/v1.0">$SOURCE</envar>
+and
+<envar xmlns="http://www.scons.org/dbxsd/v1.0">$SOURCES</envar>
+to be available for expansion.
+This is usually necessary if you are
+calling
+<function xmlns="http://www.scons.org/dbxsd/v1.0">env.subst</function>
+from within a Python function used
+as an SCons action.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Returned string values or sequence elements
+are converted to their string representation by default.
+The optional
+<varname>conv</varname>
+argument
+may specify a conversion function
+that will be used in place of
+the default.
+For example, if you want Python objects
+(including SCons Nodes)
+to be returned as Python objects,
+you can use the Python
+Λ
+idiom to pass in an unnamed function
+that simply returns its unconverted argument.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Example:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+print env.subst("The C compiler is: $CC")
+
+def compile(target, source, env):
+ sourceDir = env.subst("${SOURCE.srcdir}",
+ target=target,
+ source=source)
+
+source_nodes = env.subst('$EXPAND_TO_NODELIST',
+ conv=lambda x: x)
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-Tag">
+ <term>
+ <synopsis>Tag(node, tags)</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Annotates file or directory Nodes with
+information about how the
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-Package"><function>Package</function></link>
+Builder should package those files or directories.
+All tags are optional.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Examples:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+# makes sure the built library will be installed with 0644 file
+# access mode
+Tag( Library( 'lib.c' ), UNIX_ATTR="0644" )
+
+# marks file2.txt to be a documentation file
+Tag( 'file2.txt', DOC )
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-TargetSignatures">
+ <term>
+ <synopsis>TargetSignatures(type)</synopsis>
+ <synopsis>env.TargetSignatures(type)</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Note: Although it is not yet officially deprecated,
+use of this function is discouraged.
+See the
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="f-Decider"><function>Decider</function></link>
+function for a more flexible and straightforward way
+to configure SCons' decision-making.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The
+<function xmlns="http://www.scons.org/dbxsd/v1.0">TargetSignatures</function>
+function tells
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+how to decide if a target file
+(a file that
+<emphasis>is</emphasis>
+built from any other files)
+has changed since the last time it
+was used to build some other target file.
+Legal values are
+<literal>"build"</literal>;
+<literal>"content"</literal>
+(or its synonym
+<literal>"MD5"</literal>);
+<literal>"timestamp"</literal>;
+or
+<literal>"source"</literal>.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+If the environment method is used,
+the specified type of target signature is only used
+for targets built with that environment.
+If the global function is used,
+the specified type of signature becomes the default
+used for all target files that
+don't have an explicit target signature type
+specified for their environments.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<literal>"content"</literal>
+(or its synonym
+<literal>"MD5"</literal>)
+means
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+decides that a target file has changed
+if the MD5 checksum of its contents has changed since
+the last time it was used to rebuild some other target file.
+This means
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+will open up
+MD5 sum the contents
+of target files after they're built,
+and may decide that it does not need to rebuild
+"downstream" target files if a file was
+rebuilt with exactly the same contents as the last time.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<literal>"timestamp"</literal>
+means
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+decides that a target file has changed
+if its timestamp (modification time) has changed since
+the last time it was used to rebuild some other target file.
+(Note that although this is similar to the behavior of Make,
+by default it will also rebuild if the dependency is
+<emphasis>older</emphasis>
+than the last time it was used to rebuild the target file.)
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<literal>"source"</literal>
+means
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+decides that a target file has changed
+as specified by the corresponding
+<function xmlns="http://www.scons.org/dbxsd/v1.0">SourceSignatures</function>
+setting
+(<literal>"MD5"</literal>
+or
+<literal>"timestamp"</literal>).
+This means that
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+will treat all input files to a target the same way,
+regardless of whether they are source files
+or have been built from other files.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<literal>"build"</literal>
+means
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+decides that a target file has changed
+if it has been rebuilt in this invocation
+or if its content or timestamp have changed
+as specified by the corresponding
+<function xmlns="http://www.scons.org/dbxsd/v1.0">SourceSignatures</function>
+setting.
+This "propagates" the status of a rebuilt file
+so that other "downstream" target files
+will always be rebuilt,
+even if the contents or the timestamp
+have not changed.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<literal>"build"</literal>
+signatures are fastest because
+<literal>"content"</literal>
+(or
+<literal>"MD5"</literal>)
+signatures take longer to compute,
+but are more accurate than
+<literal>"timestamp"</literal>
+signatures,
+and can prevent unnecessary "downstream" rebuilds
+when a target file is rebuilt to the exact same contents
+as the previous build.
+The
+<literal>"source"</literal>
+setting provides the most consistent behavior
+when other target files may be rebuilt from
+both source and target input files.
+The default value is
+<literal>"source"</literal>.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Because the default setting is
+<literal>"source"</literal>,
+using
+<function xmlns="http://www.scons.org/dbxsd/v1.0">SourceSignatures</function>
+is generally preferable to
+<function xmlns="http://www.scons.org/dbxsd/v1.0">TargetSignatures</function>,
+so that the up-to-date decision
+will be consistent for all files
+(or all files built with a specific construction environment).
+Use of
+<function xmlns="http://www.scons.org/dbxsd/v1.0">TargetSignatures</function>
+provides specific control for how built target files
+affect their "downstream" dependencies.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-Tool">
+ <term>
+ <synopsis>Tool(string, [toolpath, **kw])</synopsis>
+ <synopsis>env.Tool(string, [toolpath, **kw])</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Tool</function>
+form of the function
+returns a callable object
+that can be used to initialize
+a construction environment using the
+tools keyword of the Environment() method.
+The object may be called with a construction
+environment as an argument,
+in which case the object will
+add the necessary variables
+to the construction environment
+and the name of the tool will be added to the
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-TOOLS"><envar>$TOOLS</envar></link>
+construction variable.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Additional keyword arguments are passed to the tool's
+<function>generate</function>()
+method.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Examples:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment(tools = [ Tool('msvc') ])
+
+env = Environment()
+t = Tool('msvc')
+t(env) # adds 'msvc' to the TOOLS variable
+u = Tool('opengl', toolpath = ['tools'])
+u(env) # adds 'opengl' to the TOOLS variable
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The
+<function xmlns="http://www.scons.org/dbxsd/v1.0">env.Tool</function>
+form of the function
+applies the callable object for the specified tool
+<varname>string</varname>
+to the environment through which the method was called.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Additional keyword arguments are passed to the tool's
+<function>generate</function>()
+method.
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env.Tool('gcc')
+env.Tool('opengl', toolpath = ['build/tools'])
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-Value">
+ <term>
+ <synopsis>Value(value, [built_value])</synopsis>
+ <synopsis>env.Value(value, [built_value])</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Returns a Node object representing the specified Python value. Value
+Nodes can be used as dependencies of targets. If the result of
+calling
+<function>str</function>(<varname>value</varname>)
+changes between SCons runs, any targets depending on
+<function>Value</function>(<varname>value</varname>)
+will be rebuilt.
+(This is true even when using timestamps to decide if
+files are up-to-date.)
+When using timestamp source signatures, Value Nodes'
+timestamps are equal to the system time when the Node is created.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The returned Value Node object has a
+<function>write</function>()
+method that can be used to "build" a Value Node
+by setting a new value.
+The optional
+<varname>built_value</varname>
+argument can be specified
+when the Value Node is created
+to indicate the Node should already be considered
+"built."
+There is a corresponding
+<function>read</function>()
+method that will return the built value of the Node.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Examples:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment()
+
+def create(target, source, env):
+ # A function that will write a 'prefix=$SOURCE'
+ # string into the file name specified as the
+ # $TARGET.
+ f = open(str(target[0]), 'wb')
+ f.write('prefix=' + source[0].get_contents())
+
+# Fetch the prefix= argument, if any, from the command
+# line, and use /usr/local as the default.
+prefix = ARGUMENTS.get('prefix', '/usr/local')
+
+# Attach a .Config() builder for the above function action
+# to the construction environment.
+env['BUILDERS']['Config'] = Builder(action = create)
+env.Config(target = 'package-config', source = Value(prefix))
+
+def build_value(target, source, env):
+ # A function that "builds" a Python Value by updating
+ # the the Python value with the contents of the file
+ # specified as the source of the Builder call ($SOURCE).
+ target[0].write(source[0].get_contents())
+
+output = env.Value('before')
+input = env.Value('after')
+
+# Attach a .UpdateValue() builder for the above function
+# action to the construction environment.
+env['BUILDERS']['UpdateValue'] = Builder(action = build_value)
+env.UpdateValue(target = Value(output), source = Value(input))
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-VariantDir">
+ <term>
+ <synopsis>VariantDir(variant_dir, src_dir, [duplicate])</synopsis>
+ <synopsis>env.VariantDir(variant_dir, src_dir, [duplicate])</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Use the
+<function xmlns="http://www.scons.org/dbxsd/v1.0">VariantDir</function>
+function to create a copy of your sources in another location:
+if a name under
+<varname>variant_dir</varname>
+is not found but exists under
+<varname>src_dir</varname>,
+the file or directory is copied to
+<varname>variant_dir</varname>.
+Target files can be built in a different directory
+than the original sources by simply refering to the sources (and targets)
+within the variant tree.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<function xmlns="http://www.scons.org/dbxsd/v1.0">VariantDir</function>
+can be called multiple times with the same
+<varname>src_dir</varname>
+to set up multiple builds with different options
+(<varname>variants</varname>).
+The
+<varname>src_dir</varname>
+location must be in or underneath the SConstruct file's directory, and
+<varname>variant_dir</varname>
+may not be underneath
+<varname>src_dir</varname>.
+<!--
+TODO: Can the above restrictions be clarified or relaxed?
+TODO: The latter restriction is clearly not completely right;
+TODO: src_dir = '.' works fine with a build dir under it.
+-->
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The default behavior is for
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+to physically duplicate the source files in the variant tree.
+Thus, a build performed in the variant tree is guaranteed to be identical
+to a build performed in the source tree even if
+intermediate source files are generated during the build,
+or preprocessors or other scanners search for included files
+relative to the source file,
+or individual compilers or other invoked tools are hard-coded
+to put derived files in the same directory as source files.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+If possible on the platform,
+the duplication is performed by linking rather than copying;
+see also the
+<option>--duplicate</option>
+command-line option.
+Moreover, only the files needed for the build are duplicated;
+files and directories that are not used are not present in
+<varname>variant_dir</varname>.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Duplicating the source tree may be disabled by setting the
+<literal>duplicate</literal>
+argument to
+<literal>0</literal>
+(zero).
+This will cause
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+to invoke Builders using the path names of source files in
+<varname>src_dir</varname>
+and the path names of derived files within
+<varname>variant_dir</varname>.
+This is always more efficient than
+<literal>duplicate=1</literal>,
+and is usually safe for most builds
+(but see above for cases that may cause problems).
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Note that
+<function xmlns="http://www.scons.org/dbxsd/v1.0">VariantDir</function>
+works most naturally with a subsidiary SConscript file.
+However, you would then call the subsidiary SConscript file
+not in the source directory, but in the
+<varname>variant_dir</varname>,
+regardless of the value of
+<literal>duplicate</literal>.
+This is how you tell
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+which variant of a source tree to build:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+# run src/SConscript in two variant directories
+VariantDir('build/variant1', 'src')
+SConscript('build/variant1/SConscript')
+VariantDir('build/variant2', 'src')
+SConscript('build/variant2/SConscript')
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+See also the
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="f-SConscript"><function>SConscript</function></link>
+function, described above,
+for another way to specify a variant directory
+in conjunction with calling a subsidiary SConscript file.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Examples:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+# use names in the build directory, not the source directory
+VariantDir('build', 'src', duplicate=0)
+Program('build/prog', 'build/source.c')
+</example_commands>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+# this builds both the source and docs in a separate subtree
+VariantDir('build', '.', duplicate=0)
+SConscript(dirs=['build/src','build/doc'])
+</example_commands>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+# same as previous example, but only uses SConscript
+SConscript(dirs='src', variant_dir='build/src', duplicate=0)
+SConscript(dirs='doc', variant_dir='build/doc', duplicate=0)
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="f-WhereIs">
+ <term>
+ <synopsis>WhereIs(program, [path, pathext, reject])</synopsis>
+ <synopsis>env.WhereIs(program, [path, pathext, reject])</synopsis>
+ </term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Searches for the specified executable
+<varname>program</varname>,
+returning the full path name to the program
+if it is found,
+and returning None if not.
+Searches the specified
+<varname>path</varname>,
+the value of the calling environment's PATH
+(<literal>env['ENV']['PATH']</literal>),
+or the user's current external PATH
+(<literal>os.environ['PATH']</literal>)
+by default.
+On Windows systems, searches for executable
+programs with any of the file extensions
+listed in the specified
+<varname>pathext</varname>,
+the calling environment's PATHEXT
+(<literal>env['ENV']['PATHEXT']</literal>)
+or the user's current PATHEXT
+(<literal>os.environ['PATHEXT']</literal>)
+by default.
+Will not select any
+path name or names
+in the specified
+<varname>reject</varname>
+list, if any.
+</para>
+</listitem>
+ </varlistentry>
+</variablelist>
diff --git a/doc/generated/functions.mod b/doc/generated/functions.mod
new file mode 100644
index 00000000..0f5dd21a
--- /dev/null
+++ b/doc/generated/functions.mod
@@ -0,0 +1,371 @@
+<!--
+THIS IS AN AUTOMATICALLY-GENERATED FILE. DO NOT EDIT.
+-->
+
+<!--
+
+ Regular function entities.
+
+-->
+
+<!ENTITY f-Action "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Action</function>">
+<!ENTITY f-AddMethod "<function xmlns='http://www.scons.org/dbxsd/v1.0'>AddMethod</function>">
+<!ENTITY f-AddOption "<function xmlns='http://www.scons.org/dbxsd/v1.0'>AddOption</function>">
+<!ENTITY f-AddPostAction "<function xmlns='http://www.scons.org/dbxsd/v1.0'>AddPostAction</function>">
+<!ENTITY f-AddPreAction "<function xmlns='http://www.scons.org/dbxsd/v1.0'>AddPreAction</function>">
+<!ENTITY f-Alias "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Alias</function>">
+<!ENTITY f-AllowSubstExceptions "<function xmlns='http://www.scons.org/dbxsd/v1.0'>AllowSubstExceptions</function>">
+<!ENTITY f-AlwaysBuild "<function xmlns='http://www.scons.org/dbxsd/v1.0'>AlwaysBuild</function>">
+<!ENTITY f-Append "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Append</function>">
+<!ENTITY f-AppendENVPath "<function xmlns='http://www.scons.org/dbxsd/v1.0'>AppendENVPath</function>">
+<!ENTITY f-AppendUnique "<function xmlns='http://www.scons.org/dbxsd/v1.0'>AppendUnique</function>">
+<!ENTITY f-BitKeeper "<function xmlns='http://www.scons.org/dbxsd/v1.0'>BitKeeper</function>">
+<!ENTITY f-BuildDir "<function xmlns='http://www.scons.org/dbxsd/v1.0'>BuildDir</function>">
+<!ENTITY f-Builder "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Builder</function>">
+<!ENTITY f-CacheDir "<function xmlns='http://www.scons.org/dbxsd/v1.0'>CacheDir</function>">
+<!ENTITY f-Clean "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Clean</function>">
+<!ENTITY f-Clone "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Clone</function>">
+<!ENTITY f-Command "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Command</function>">
+<!ENTITY f-Configure "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Configure</function>">
+<!ENTITY f-Copy "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Copy</function>">
+<!ENTITY f-CVS "<function xmlns='http://www.scons.org/dbxsd/v1.0'>CVS</function>">
+<!ENTITY f-Decider "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Decider</function>">
+<!ENTITY f-Default "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Default</function>">
+<!ENTITY f-DefaultEnvironment "<function xmlns='http://www.scons.org/dbxsd/v1.0'>DefaultEnvironment</function>">
+<!ENTITY f-Depends "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Depends</function>">
+<!ENTITY f-Dictionary "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Dictionary</function>">
+<!ENTITY f-Dir "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Dir</function>">
+<!ENTITY f-Dump "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Dump</function>">
+<!ENTITY f-EnsurePythonVersion "<function xmlns='http://www.scons.org/dbxsd/v1.0'>EnsurePythonVersion</function>">
+<!ENTITY f-EnsureSConsVersion "<function xmlns='http://www.scons.org/dbxsd/v1.0'>EnsureSConsVersion</function>">
+<!ENTITY f-Environment "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Environment</function>">
+<!ENTITY f-Execute "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Execute</function>">
+<!ENTITY f-Exit "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Exit</function>">
+<!ENTITY f-Export "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Export</function>">
+<!ENTITY f-File "<function xmlns='http://www.scons.org/dbxsd/v1.0'>File</function>">
+<!ENTITY f-FindFile "<function xmlns='http://www.scons.org/dbxsd/v1.0'>FindFile</function>">
+<!ENTITY f-FindInstalledFiles "<function xmlns='http://www.scons.org/dbxsd/v1.0'>FindInstalledFiles</function>">
+<!ENTITY f-FindPathDirs "<function xmlns='http://www.scons.org/dbxsd/v1.0'>FindPathDirs</function>">
+<!ENTITY f-FindSourceFiles "<function xmlns='http://www.scons.org/dbxsd/v1.0'>FindSourceFiles</function>">
+<!ENTITY f-Flatten "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Flatten</function>">
+<!ENTITY f-GetBuildFailures "<function xmlns='http://www.scons.org/dbxsd/v1.0'>GetBuildFailures</function>">
+<!ENTITY f-GetBuildPath "<function xmlns='http://www.scons.org/dbxsd/v1.0'>GetBuildPath</function>">
+<!ENTITY f-GetLaunchDir "<function xmlns='http://www.scons.org/dbxsd/v1.0'>GetLaunchDir</function>">
+<!ENTITY f-GetOption "<function xmlns='http://www.scons.org/dbxsd/v1.0'>GetOption</function>">
+<!ENTITY f-Glob "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Glob</function>">
+<!ENTITY f-Help "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Help</function>">
+<!ENTITY f-Ignore "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Ignore</function>">
+<!ENTITY f-Import "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Import</function>">
+<!ENTITY f-Literal "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Literal</function>">
+<!ENTITY f-Local "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Local</function>">
+<!ENTITY f-MergeFlags "<function xmlns='http://www.scons.org/dbxsd/v1.0'>MergeFlags</function>">
+<!ENTITY f-NoCache "<function xmlns='http://www.scons.org/dbxsd/v1.0'>NoCache</function>">
+<!ENTITY f-NoClean "<function xmlns='http://www.scons.org/dbxsd/v1.0'>NoClean</function>">
+<!ENTITY f-ParseConfig "<function xmlns='http://www.scons.org/dbxsd/v1.0'>ParseConfig</function>">
+<!ENTITY f-ParseDepends "<function xmlns='http://www.scons.org/dbxsd/v1.0'>ParseDepends</function>">
+<!ENTITY f-ParseFlags "<function xmlns='http://www.scons.org/dbxsd/v1.0'>ParseFlags</function>">
+<!ENTITY f-Perforce "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Perforce</function>">
+<!ENTITY f-Platform "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Platform</function>">
+<!ENTITY f-Precious "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Precious</function>">
+<!ENTITY f-Prepend "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Prepend</function>">
+<!ENTITY f-PrependENVPath "<function xmlns='http://www.scons.org/dbxsd/v1.0'>PrependENVPath</function>">
+<!ENTITY f-PrependUnique "<function xmlns='http://www.scons.org/dbxsd/v1.0'>PrependUnique</function>">
+<!ENTITY f-Progress "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Progress</function>">
+<!ENTITY f-RCS "<function xmlns='http://www.scons.org/dbxsd/v1.0'>RCS</function>">
+<!ENTITY f-Replace "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Replace</function>">
+<!ENTITY f-Repository "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Repository</function>">
+<!ENTITY f-Requires "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Requires</function>">
+<!ENTITY f-Return "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Return</function>">
+<!ENTITY f-Scanner "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Scanner</function>">
+<!ENTITY f-SCCS "<function xmlns='http://www.scons.org/dbxsd/v1.0'>SCCS</function>">
+<!ENTITY f-SConscript "<function xmlns='http://www.scons.org/dbxsd/v1.0'>SConscript</function>">
+<!ENTITY f-SConscriptChdir "<function xmlns='http://www.scons.org/dbxsd/v1.0'>SConscriptChdir</function>">
+<!ENTITY f-SConsignFile "<function xmlns='http://www.scons.org/dbxsd/v1.0'>SConsignFile</function>">
+<!ENTITY f-SetDefault "<function xmlns='http://www.scons.org/dbxsd/v1.0'>SetDefault</function>">
+<!ENTITY f-SetOption "<function xmlns='http://www.scons.org/dbxsd/v1.0'>SetOption</function>">
+<!ENTITY f-SideEffect "<function xmlns='http://www.scons.org/dbxsd/v1.0'>SideEffect</function>">
+<!ENTITY f-SourceCode "<function xmlns='http://www.scons.org/dbxsd/v1.0'>SourceCode</function>">
+<!ENTITY f-SourceSignatures "<function xmlns='http://www.scons.org/dbxsd/v1.0'>SourceSignatures</function>">
+<!ENTITY f-Split "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Split</function>">
+<!ENTITY f-subst "<function xmlns='http://www.scons.org/dbxsd/v1.0'>subst</function>">
+<!ENTITY f-Tag "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Tag</function>">
+<!ENTITY f-TargetSignatures "<function xmlns='http://www.scons.org/dbxsd/v1.0'>TargetSignatures</function>">
+<!ENTITY f-Tool "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Tool</function>">
+<!ENTITY f-Value "<function xmlns='http://www.scons.org/dbxsd/v1.0'>Value</function>">
+<!ENTITY f-VariantDir "<function xmlns='http://www.scons.org/dbxsd/v1.0'>VariantDir</function>">
+<!ENTITY f-WhereIs "<function xmlns='http://www.scons.org/dbxsd/v1.0'>WhereIs</function>">
+
+<!ENTITY f-env-Action "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Action</function>">
+<!ENTITY f-env-AddMethod "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.AddMethod</function>">
+<!ENTITY f-env-AddOption "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.AddOption</function>">
+<!ENTITY f-env-AddPostAction "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.AddPostAction</function>">
+<!ENTITY f-env-AddPreAction "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.AddPreAction</function>">
+<!ENTITY f-env-Alias "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Alias</function>">
+<!ENTITY f-env-AllowSubstExceptions "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.AllowSubstExceptions</function>">
+<!ENTITY f-env-AlwaysBuild "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.AlwaysBuild</function>">
+<!ENTITY f-env-Append "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Append</function>">
+<!ENTITY f-env-AppendENVPath "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.AppendENVPath</function>">
+<!ENTITY f-env-AppendUnique "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.AppendUnique</function>">
+<!ENTITY f-env-BitKeeper "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.BitKeeper</function>">
+<!ENTITY f-env-BuildDir "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.BuildDir</function>">
+<!ENTITY f-env-Builder "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Builder</function>">
+<!ENTITY f-env-CacheDir "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.CacheDir</function>">
+<!ENTITY f-env-Clean "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Clean</function>">
+<!ENTITY f-env-Clone "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Clone</function>">
+<!ENTITY f-env-Command "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Command</function>">
+<!ENTITY f-env-Configure "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Configure</function>">
+<!ENTITY f-env-Copy "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Copy</function>">
+<!ENTITY f-env-CVS "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.CVS</function>">
+<!ENTITY f-env-Decider "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Decider</function>">
+<!ENTITY f-env-Default "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Default</function>">
+<!ENTITY f-env-DefaultEnvironment "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.DefaultEnvironment</function>">
+<!ENTITY f-env-Depends "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Depends</function>">
+<!ENTITY f-env-Dictionary "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Dictionary</function>">
+<!ENTITY f-env-Dir "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Dir</function>">
+<!ENTITY f-env-Dump "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Dump</function>">
+<!ENTITY f-env-EnsurePythonVersion "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.EnsurePythonVersion</function>">
+<!ENTITY f-env-EnsureSConsVersion "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.EnsureSConsVersion</function>">
+<!ENTITY f-env-Environment "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Environment</function>">
+<!ENTITY f-env-Execute "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Execute</function>">
+<!ENTITY f-env-Exit "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Exit</function>">
+<!ENTITY f-env-Export "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Export</function>">
+<!ENTITY f-env-File "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.File</function>">
+<!ENTITY f-env-FindFile "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.FindFile</function>">
+<!ENTITY f-env-FindInstalledFiles "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.FindInstalledFiles</function>">
+<!ENTITY f-env-FindPathDirs "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.FindPathDirs</function>">
+<!ENTITY f-env-FindSourceFiles "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.FindSourceFiles</function>">
+<!ENTITY f-env-Flatten "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Flatten</function>">
+<!ENTITY f-env-GetBuildFailures "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.GetBuildFailures</function>">
+<!ENTITY f-env-GetBuildPath "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.GetBuildPath</function>">
+<!ENTITY f-env-GetLaunchDir "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.GetLaunchDir</function>">
+<!ENTITY f-env-GetOption "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.GetOption</function>">
+<!ENTITY f-env-Glob "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Glob</function>">
+<!ENTITY f-env-Help "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Help</function>">
+<!ENTITY f-env-Ignore "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Ignore</function>">
+<!ENTITY f-env-Import "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Import</function>">
+<!ENTITY f-env-Literal "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Literal</function>">
+<!ENTITY f-env-Local "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Local</function>">
+<!ENTITY f-env-MergeFlags "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.MergeFlags</function>">
+<!ENTITY f-env-NoCache "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.NoCache</function>">
+<!ENTITY f-env-NoClean "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.NoClean</function>">
+<!ENTITY f-env-ParseConfig "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.ParseConfig</function>">
+<!ENTITY f-env-ParseDepends "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.ParseDepends</function>">
+<!ENTITY f-env-ParseFlags "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.ParseFlags</function>">
+<!ENTITY f-env-Perforce "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Perforce</function>">
+<!ENTITY f-env-Platform "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Platform</function>">
+<!ENTITY f-env-Precious "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Precious</function>">
+<!ENTITY f-env-Prepend "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Prepend</function>">
+<!ENTITY f-env-PrependENVPath "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.PrependENVPath</function>">
+<!ENTITY f-env-PrependUnique "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.PrependUnique</function>">
+<!ENTITY f-env-Progress "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Progress</function>">
+<!ENTITY f-env-RCS "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.RCS</function>">
+<!ENTITY f-env-Replace "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Replace</function>">
+<!ENTITY f-env-Repository "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Repository</function>">
+<!ENTITY f-env-Requires "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Requires</function>">
+<!ENTITY f-env-Return "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Return</function>">
+<!ENTITY f-env-Scanner "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Scanner</function>">
+<!ENTITY f-env-SCCS "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.SCCS</function>">
+<!ENTITY f-env-SConscript "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.SConscript</function>">
+<!ENTITY f-env-SConscriptChdir "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.SConscriptChdir</function>">
+<!ENTITY f-env-SConsignFile "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.SConsignFile</function>">
+<!ENTITY f-env-SetDefault "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.SetDefault</function>">
+<!ENTITY f-env-SetOption "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.SetOption</function>">
+<!ENTITY f-env-SideEffect "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.SideEffect</function>">
+<!ENTITY f-env-SourceCode "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.SourceCode</function>">
+<!ENTITY f-env-SourceSignatures "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.SourceSignatures</function>">
+<!ENTITY f-env-Split "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Split</function>">
+<!ENTITY f-env-subst "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.subst</function>">
+<!ENTITY f-env-Tag "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Tag</function>">
+<!ENTITY f-env-TargetSignatures "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.TargetSignatures</function>">
+<!ENTITY f-env-Tool "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Tool</function>">
+<!ENTITY f-env-Value "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.Value</function>">
+<!ENTITY f-env-VariantDir "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.VariantDir</function>">
+<!ENTITY f-env-WhereIs "<function xmlns='http://www.scons.org/dbxsd/v1.0'>env.WhereIs</function>">
+
+<!--
+THIS IS AN AUTOMATICALLY-GENERATED FILE. DO NOT EDIT.
+-->
+
+<!--
+
+ Entities that are links to the function entries in the appendix.
+
+-->
+
+<!ENTITY f-link-Action "<link linkend='f-Action' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Action</function></link>">
+<!ENTITY f-link-AddMethod "<link linkend='f-AddMethod' xmlns='http://www.scons.org/dbxsd/v1.0'><function>AddMethod</function></link>">
+<!ENTITY f-link-AddOption "<link linkend='f-AddOption' xmlns='http://www.scons.org/dbxsd/v1.0'><function>AddOption</function></link>">
+<!ENTITY f-link-AddPostAction "<link linkend='f-AddPostAction' xmlns='http://www.scons.org/dbxsd/v1.0'><function>AddPostAction</function></link>">
+<!ENTITY f-link-AddPreAction "<link linkend='f-AddPreAction' xmlns='http://www.scons.org/dbxsd/v1.0'><function>AddPreAction</function></link>">
+<!ENTITY f-link-Alias "<link linkend='f-Alias' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Alias</function></link>">
+<!ENTITY f-link-AllowSubstExceptions "<link linkend='f-AllowSubstExceptions' xmlns='http://www.scons.org/dbxsd/v1.0'><function>AllowSubstExceptions</function></link>">
+<!ENTITY f-link-AlwaysBuild "<link linkend='f-AlwaysBuild' xmlns='http://www.scons.org/dbxsd/v1.0'><function>AlwaysBuild</function></link>">
+<!ENTITY f-link-Append "<link linkend='f-Append' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Append</function></link>">
+<!ENTITY f-link-AppendENVPath "<link linkend='f-AppendENVPath' xmlns='http://www.scons.org/dbxsd/v1.0'><function>AppendENVPath</function></link>">
+<!ENTITY f-link-AppendUnique "<link linkend='f-AppendUnique' xmlns='http://www.scons.org/dbxsd/v1.0'><function>AppendUnique</function></link>">
+<!ENTITY f-link-BitKeeper "<link linkend='f-BitKeeper' xmlns='http://www.scons.org/dbxsd/v1.0'><function>BitKeeper</function></link>">
+<!ENTITY f-link-BuildDir "<link linkend='f-BuildDir' xmlns='http://www.scons.org/dbxsd/v1.0'><function>BuildDir</function></link>">
+<!ENTITY f-link-Builder "<link linkend='f-Builder' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Builder</function></link>">
+<!ENTITY f-link-CacheDir "<link linkend='f-CacheDir' xmlns='http://www.scons.org/dbxsd/v1.0'><function>CacheDir</function></link>">
+<!ENTITY f-link-Clean "<link linkend='f-Clean' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Clean</function></link>">
+<!ENTITY f-link-Clone "<link linkend='f-Clone' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Clone</function></link>">
+<!ENTITY f-link-Command "<link linkend='f-Command' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Command</function></link>">
+<!ENTITY f-link-Configure "<link linkend='f-Configure' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Configure</function></link>">
+<!ENTITY f-link-Copy "<link linkend='f-Copy' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Copy</function></link>">
+<!ENTITY f-link-CVS "<link linkend='f-CVS' xmlns='http://www.scons.org/dbxsd/v1.0'><function>CVS</function></link>">
+<!ENTITY f-link-Decider "<link linkend='f-Decider' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Decider</function></link>">
+<!ENTITY f-link-Default "<link linkend='f-Default' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Default</function></link>">
+<!ENTITY f-link-DefaultEnvironment "<link linkend='f-DefaultEnvironment' xmlns='http://www.scons.org/dbxsd/v1.0'><function>DefaultEnvironment</function></link>">
+<!ENTITY f-link-Depends "<link linkend='f-Depends' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Depends</function></link>">
+<!ENTITY f-link-Dictionary "<link linkend='f-Dictionary' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Dictionary</function></link>">
+<!ENTITY f-link-Dir "<link linkend='f-Dir' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Dir</function></link>">
+<!ENTITY f-link-Dump "<link linkend='f-Dump' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Dump</function></link>">
+<!ENTITY f-link-EnsurePythonVersion "<link linkend='f-EnsurePythonVersion' xmlns='http://www.scons.org/dbxsd/v1.0'><function>EnsurePythonVersion</function></link>">
+<!ENTITY f-link-EnsureSConsVersion "<link linkend='f-EnsureSConsVersion' xmlns='http://www.scons.org/dbxsd/v1.0'><function>EnsureSConsVersion</function></link>">
+<!ENTITY f-link-Environment "<link linkend='f-Environment' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Environment</function></link>">
+<!ENTITY f-link-Execute "<link linkend='f-Execute' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Execute</function></link>">
+<!ENTITY f-link-Exit "<link linkend='f-Exit' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Exit</function></link>">
+<!ENTITY f-link-Export "<link linkend='f-Export' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Export</function></link>">
+<!ENTITY f-link-File "<link linkend='f-File' xmlns='http://www.scons.org/dbxsd/v1.0'><function>File</function></link>">
+<!ENTITY f-link-FindFile "<link linkend='f-FindFile' xmlns='http://www.scons.org/dbxsd/v1.0'><function>FindFile</function></link>">
+<!ENTITY f-link-FindInstalledFiles "<link linkend='f-FindInstalledFiles' xmlns='http://www.scons.org/dbxsd/v1.0'><function>FindInstalledFiles</function></link>">
+<!ENTITY f-link-FindPathDirs "<link linkend='f-FindPathDirs' xmlns='http://www.scons.org/dbxsd/v1.0'><function>FindPathDirs</function></link>">
+<!ENTITY f-link-FindSourceFiles "<link linkend='f-FindSourceFiles' xmlns='http://www.scons.org/dbxsd/v1.0'><function>FindSourceFiles</function></link>">
+<!ENTITY f-link-Flatten "<link linkend='f-Flatten' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Flatten</function></link>">
+<!ENTITY f-link-GetBuildFailures "<link linkend='f-GetBuildFailures' xmlns='http://www.scons.org/dbxsd/v1.0'><function>GetBuildFailures</function></link>">
+<!ENTITY f-link-GetBuildPath "<link linkend='f-GetBuildPath' xmlns='http://www.scons.org/dbxsd/v1.0'><function>GetBuildPath</function></link>">
+<!ENTITY f-link-GetLaunchDir "<link linkend='f-GetLaunchDir' xmlns='http://www.scons.org/dbxsd/v1.0'><function>GetLaunchDir</function></link>">
+<!ENTITY f-link-GetOption "<link linkend='f-GetOption' xmlns='http://www.scons.org/dbxsd/v1.0'><function>GetOption</function></link>">
+<!ENTITY f-link-Glob "<link linkend='f-Glob' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Glob</function></link>">
+<!ENTITY f-link-Help "<link linkend='f-Help' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Help</function></link>">
+<!ENTITY f-link-Ignore "<link linkend='f-Ignore' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Ignore</function></link>">
+<!ENTITY f-link-Import "<link linkend='f-Import' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Import</function></link>">
+<!ENTITY f-link-Literal "<link linkend='f-Literal' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Literal</function></link>">
+<!ENTITY f-link-Local "<link linkend='f-Local' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Local</function></link>">
+<!ENTITY f-link-MergeFlags "<link linkend='f-MergeFlags' xmlns='http://www.scons.org/dbxsd/v1.0'><function>MergeFlags</function></link>">
+<!ENTITY f-link-NoCache "<link linkend='f-NoCache' xmlns='http://www.scons.org/dbxsd/v1.0'><function>NoCache</function></link>">
+<!ENTITY f-link-NoClean "<link linkend='f-NoClean' xmlns='http://www.scons.org/dbxsd/v1.0'><function>NoClean</function></link>">
+<!ENTITY f-link-ParseConfig "<link linkend='f-ParseConfig' xmlns='http://www.scons.org/dbxsd/v1.0'><function>ParseConfig</function></link>">
+<!ENTITY f-link-ParseDepends "<link linkend='f-ParseDepends' xmlns='http://www.scons.org/dbxsd/v1.0'><function>ParseDepends</function></link>">
+<!ENTITY f-link-ParseFlags "<link linkend='f-ParseFlags' xmlns='http://www.scons.org/dbxsd/v1.0'><function>ParseFlags</function></link>">
+<!ENTITY f-link-Perforce "<link linkend='f-Perforce' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Perforce</function></link>">
+<!ENTITY f-link-Platform "<link linkend='f-Platform' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Platform</function></link>">
+<!ENTITY f-link-Precious "<link linkend='f-Precious' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Precious</function></link>">
+<!ENTITY f-link-Prepend "<link linkend='f-Prepend' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Prepend</function></link>">
+<!ENTITY f-link-PrependENVPath "<link linkend='f-PrependENVPath' xmlns='http://www.scons.org/dbxsd/v1.0'><function>PrependENVPath</function></link>">
+<!ENTITY f-link-PrependUnique "<link linkend='f-PrependUnique' xmlns='http://www.scons.org/dbxsd/v1.0'><function>PrependUnique</function></link>">
+<!ENTITY f-link-Progress "<link linkend='f-Progress' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Progress</function></link>">
+<!ENTITY f-link-RCS "<link linkend='f-RCS' xmlns='http://www.scons.org/dbxsd/v1.0'><function>RCS</function></link>">
+<!ENTITY f-link-Replace "<link linkend='f-Replace' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Replace</function></link>">
+<!ENTITY f-link-Repository "<link linkend='f-Repository' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Repository</function></link>">
+<!ENTITY f-link-Requires "<link linkend='f-Requires' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Requires</function></link>">
+<!ENTITY f-link-Return "<link linkend='f-Return' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Return</function></link>">
+<!ENTITY f-link-Scanner "<link linkend='f-Scanner' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Scanner</function></link>">
+<!ENTITY f-link-SCCS "<link linkend='f-SCCS' xmlns='http://www.scons.org/dbxsd/v1.0'><function>SCCS</function></link>">
+<!ENTITY f-link-SConscript "<link linkend='f-SConscript' xmlns='http://www.scons.org/dbxsd/v1.0'><function>SConscript</function></link>">
+<!ENTITY f-link-SConscriptChdir "<link linkend='f-SConscriptChdir' xmlns='http://www.scons.org/dbxsd/v1.0'><function>SConscriptChdir</function></link>">
+<!ENTITY f-link-SConsignFile "<link linkend='f-SConsignFile' xmlns='http://www.scons.org/dbxsd/v1.0'><function>SConsignFile</function></link>">
+<!ENTITY f-link-SetDefault "<link linkend='f-SetDefault' xmlns='http://www.scons.org/dbxsd/v1.0'><function>SetDefault</function></link>">
+<!ENTITY f-link-SetOption "<link linkend='f-SetOption' xmlns='http://www.scons.org/dbxsd/v1.0'><function>SetOption</function></link>">
+<!ENTITY f-link-SideEffect "<link linkend='f-SideEffect' xmlns='http://www.scons.org/dbxsd/v1.0'><function>SideEffect</function></link>">
+<!ENTITY f-link-SourceCode "<link linkend='f-SourceCode' xmlns='http://www.scons.org/dbxsd/v1.0'><function>SourceCode</function></link>">
+<!ENTITY f-link-SourceSignatures "<link linkend='f-SourceSignatures' xmlns='http://www.scons.org/dbxsd/v1.0'><function>SourceSignatures</function></link>">
+<!ENTITY f-link-Split "<link linkend='f-Split' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Split</function></link>">
+<!ENTITY f-link-subst "<link linkend='f-subst' xmlns='http://www.scons.org/dbxsd/v1.0'><function>subst</function></link>">
+<!ENTITY f-link-Tag "<link linkend='f-Tag' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Tag</function></link>">
+<!ENTITY f-link-TargetSignatures "<link linkend='f-TargetSignatures' xmlns='http://www.scons.org/dbxsd/v1.0'><function>TargetSignatures</function></link>">
+<!ENTITY f-link-Tool "<link linkend='f-Tool' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Tool</function></link>">
+<!ENTITY f-link-Value "<link linkend='f-Value' xmlns='http://www.scons.org/dbxsd/v1.0'><function>Value</function></link>">
+<!ENTITY f-link-VariantDir "<link linkend='f-VariantDir' xmlns='http://www.scons.org/dbxsd/v1.0'><function>VariantDir</function></link>">
+<!ENTITY f-link-WhereIs "<link linkend='f-WhereIs' xmlns='http://www.scons.org/dbxsd/v1.0'><function>WhereIs</function></link>">
+
+<!ENTITY f-link-env-Action "<link linkend='f-Action' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Action</function></link>">
+<!ENTITY f-link-env-AddMethod "<link linkend='f-AddMethod' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.AddMethod</function></link>">
+<!ENTITY f-link-env-AddOption "<link linkend='f-AddOption' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.AddOption</function></link>">
+<!ENTITY f-link-env-AddPostAction "<link linkend='f-AddPostAction' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.AddPostAction</function></link>">
+<!ENTITY f-link-env-AddPreAction "<link linkend='f-AddPreAction' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.AddPreAction</function></link>">
+<!ENTITY f-link-env-Alias "<link linkend='f-Alias' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Alias</function></link>">
+<!ENTITY f-link-env-AllowSubstExceptions "<link linkend='f-AllowSubstExceptions' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.AllowSubstExceptions</function></link>">
+<!ENTITY f-link-env-AlwaysBuild "<link linkend='f-AlwaysBuild' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.AlwaysBuild</function></link>">
+<!ENTITY f-link-env-Append "<link linkend='f-Append' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Append</function></link>">
+<!ENTITY f-link-env-AppendENVPath "<link linkend='f-AppendENVPath' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.AppendENVPath</function></link>">
+<!ENTITY f-link-env-AppendUnique "<link linkend='f-AppendUnique' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.AppendUnique</function></link>">
+<!ENTITY f-link-env-BitKeeper "<link linkend='f-BitKeeper' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.BitKeeper</function></link>">
+<!ENTITY f-link-env-BuildDir "<link linkend='f-BuildDir' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.BuildDir</function></link>">
+<!ENTITY f-link-env-Builder "<link linkend='f-Builder' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Builder</function></link>">
+<!ENTITY f-link-env-CacheDir "<link linkend='f-CacheDir' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.CacheDir</function></link>">
+<!ENTITY f-link-env-Clean "<link linkend='f-Clean' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Clean</function></link>">
+<!ENTITY f-link-env-Clone "<link linkend='f-Clone' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Clone</function></link>">
+<!ENTITY f-link-env-Command "<link linkend='f-Command' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Command</function></link>">
+<!ENTITY f-link-env-Configure "<link linkend='f-Configure' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Configure</function></link>">
+<!ENTITY f-link-env-Copy "<link linkend='f-Copy' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Copy</function></link>">
+<!ENTITY f-link-env-CVS "<link linkend='f-CVS' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.CVS</function></link>">
+<!ENTITY f-link-env-Decider "<link linkend='f-Decider' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Decider</function></link>">
+<!ENTITY f-link-env-Default "<link linkend='f-Default' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Default</function></link>">
+<!ENTITY f-link-env-DefaultEnvironment "<link linkend='f-DefaultEnvironment' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.DefaultEnvironment</function></link>">
+<!ENTITY f-link-env-Depends "<link linkend='f-Depends' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Depends</function></link>">
+<!ENTITY f-link-env-Dictionary "<link linkend='f-Dictionary' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Dictionary</function></link>">
+<!ENTITY f-link-env-Dir "<link linkend='f-Dir' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Dir</function></link>">
+<!ENTITY f-link-env-Dump "<link linkend='f-Dump' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Dump</function></link>">
+<!ENTITY f-link-env-EnsurePythonVersion "<link linkend='f-EnsurePythonVersion' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.EnsurePythonVersion</function></link>">
+<!ENTITY f-link-env-EnsureSConsVersion "<link linkend='f-EnsureSConsVersion' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.EnsureSConsVersion</function></link>">
+<!ENTITY f-link-env-Environment "<link linkend='f-Environment' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Environment</function></link>">
+<!ENTITY f-link-env-Execute "<link linkend='f-Execute' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Execute</function></link>">
+<!ENTITY f-link-env-Exit "<link linkend='f-Exit' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Exit</function></link>">
+<!ENTITY f-link-env-Export "<link linkend='f-Export' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Export</function></link>">
+<!ENTITY f-link-env-File "<link linkend='f-File' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.File</function></link>">
+<!ENTITY f-link-env-FindFile "<link linkend='f-FindFile' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.FindFile</function></link>">
+<!ENTITY f-link-env-FindInstalledFiles "<link linkend='f-FindInstalledFiles' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.FindInstalledFiles</function></link>">
+<!ENTITY f-link-env-FindPathDirs "<link linkend='f-FindPathDirs' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.FindPathDirs</function></link>">
+<!ENTITY f-link-env-FindSourceFiles "<link linkend='f-FindSourceFiles' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.FindSourceFiles</function></link>">
+<!ENTITY f-link-env-Flatten "<link linkend='f-Flatten' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Flatten</function></link>">
+<!ENTITY f-link-env-GetBuildFailures "<link linkend='f-GetBuildFailures' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.GetBuildFailures</function></link>">
+<!ENTITY f-link-env-GetBuildPath "<link linkend='f-GetBuildPath' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.GetBuildPath</function></link>">
+<!ENTITY f-link-env-GetLaunchDir "<link linkend='f-GetLaunchDir' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.GetLaunchDir</function></link>">
+<!ENTITY f-link-env-GetOption "<link linkend='f-GetOption' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.GetOption</function></link>">
+<!ENTITY f-link-env-Glob "<link linkend='f-Glob' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Glob</function></link>">
+<!ENTITY f-link-env-Help "<link linkend='f-Help' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Help</function></link>">
+<!ENTITY f-link-env-Ignore "<link linkend='f-Ignore' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Ignore</function></link>">
+<!ENTITY f-link-env-Import "<link linkend='f-Import' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Import</function></link>">
+<!ENTITY f-link-env-Literal "<link linkend='f-Literal' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Literal</function></link>">
+<!ENTITY f-link-env-Local "<link linkend='f-Local' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Local</function></link>">
+<!ENTITY f-link-env-MergeFlags "<link linkend='f-MergeFlags' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.MergeFlags</function></link>">
+<!ENTITY f-link-env-NoCache "<link linkend='f-NoCache' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.NoCache</function></link>">
+<!ENTITY f-link-env-NoClean "<link linkend='f-NoClean' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.NoClean</function></link>">
+<!ENTITY f-link-env-ParseConfig "<link linkend='f-ParseConfig' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.ParseConfig</function></link>">
+<!ENTITY f-link-env-ParseDepends "<link linkend='f-ParseDepends' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.ParseDepends</function></link>">
+<!ENTITY f-link-env-ParseFlags "<link linkend='f-ParseFlags' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.ParseFlags</function></link>">
+<!ENTITY f-link-env-Perforce "<link linkend='f-Perforce' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Perforce</function></link>">
+<!ENTITY f-link-env-Platform "<link linkend='f-Platform' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Platform</function></link>">
+<!ENTITY f-link-env-Precious "<link linkend='f-Precious' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Precious</function></link>">
+<!ENTITY f-link-env-Prepend "<link linkend='f-Prepend' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Prepend</function></link>">
+<!ENTITY f-link-env-PrependENVPath "<link linkend='f-PrependENVPath' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.PrependENVPath</function></link>">
+<!ENTITY f-link-env-PrependUnique "<link linkend='f-PrependUnique' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.PrependUnique</function></link>">
+<!ENTITY f-link-env-Progress "<link linkend='f-Progress' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Progress</function></link>">
+<!ENTITY f-link-env-RCS "<link linkend='f-RCS' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.RCS</function></link>">
+<!ENTITY f-link-env-Replace "<link linkend='f-Replace' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Replace</function></link>">
+<!ENTITY f-link-env-Repository "<link linkend='f-Repository' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Repository</function></link>">
+<!ENTITY f-link-env-Requires "<link linkend='f-Requires' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Requires</function></link>">
+<!ENTITY f-link-env-Return "<link linkend='f-Return' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Return</function></link>">
+<!ENTITY f-link-env-Scanner "<link linkend='f-Scanner' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Scanner</function></link>">
+<!ENTITY f-link-env-SCCS "<link linkend='f-SCCS' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.SCCS</function></link>">
+<!ENTITY f-link-env-SConscript "<link linkend='f-SConscript' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.SConscript</function></link>">
+<!ENTITY f-link-env-SConscriptChdir "<link linkend='f-SConscriptChdir' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.SConscriptChdir</function></link>">
+<!ENTITY f-link-env-SConsignFile "<link linkend='f-SConsignFile' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.SConsignFile</function></link>">
+<!ENTITY f-link-env-SetDefault "<link linkend='f-SetDefault' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.SetDefault</function></link>">
+<!ENTITY f-link-env-SetOption "<link linkend='f-SetOption' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.SetOption</function></link>">
+<!ENTITY f-link-env-SideEffect "<link linkend='f-SideEffect' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.SideEffect</function></link>">
+<!ENTITY f-link-env-SourceCode "<link linkend='f-SourceCode' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.SourceCode</function></link>">
+<!ENTITY f-link-env-SourceSignatures "<link linkend='f-SourceSignatures' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.SourceSignatures</function></link>">
+<!ENTITY f-link-env-Split "<link linkend='f-Split' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Split</function></link>">
+<!ENTITY f-link-env-subst "<link linkend='f-subst' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.subst</function></link>">
+<!ENTITY f-link-env-Tag "<link linkend='f-Tag' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Tag</function></link>">
+<!ENTITY f-link-env-TargetSignatures "<link linkend='f-TargetSignatures' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.TargetSignatures</function></link>">
+<!ENTITY f-link-env-Tool "<link linkend='f-Tool' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Tool</function></link>">
+<!ENTITY f-link-env-Value "<link linkend='f-Value' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.Value</function></link>">
+<!ENTITY f-link-env-VariantDir "<link linkend='f-VariantDir' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.VariantDir</function></link>">
+<!ENTITY f-link-env-WhereIs "<link linkend='f-WhereIs' xmlns='http://www.scons.org/dbxsd/v1.0'><function>env.WhereIs</function></link>">
+
+<!--
+THIS IS AN AUTOMATICALLY-GENERATED FILE. DO NOT EDIT.
+-->
diff --git a/doc/generated/tools.gen b/doc/generated/tools.gen
new file mode 100644
index 00000000..ceea0306
--- /dev/null
+++ b/doc/generated/tools.gen
@@ -0,0 +1,870 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE sconsdoc [
+ <!ENTITY % scons SYSTEM "../scons.mod">
+ %scons;
+ <!ENTITY % builders-mod SYSTEM "builders.mod">
+ %builders-mod;
+ <!ENTITY % functions-mod SYSTEM "functions.mod">
+ %functions-mod;
+ <!ENTITY % tools-mod SYSTEM "tools.mod">
+ %tools-mod;
+ <!ENTITY % variables-mod SYSTEM "variables.mod">
+ %variables-mod;
+]>
+
+<variablelist xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">
+ <varlistentry id="t-386asm">
+ <term>386asm</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the 386ASM assembler
+for the Phar Lap ETS embedded operating system.
+</para>
+<para>Sets: &cv-link-AS;, &cv-link-ASCOM;, &cv-link-ASFLAGS;, &cv-link-ASPPCOM;, &cv-link-ASPPFLAGS;.</para><para>Uses: &cv-link-CC;, &cv-link-CPPFLAGS;, &cv-link-_CPPDEFFLAGS;, &cv-link-_CPPINCFLAGS;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-aixcXX">
+ <term>aixc++</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the IMB xlc / Visual Age C++ compiler.
+</para>
+<para>Sets: &cv-link-CXX;, &cv-link-CXXVERSION;, &cv-link-SHCXX;, &cv-link-SHOBJSUFFIX;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-aixcc">
+ <term>aixcc</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the IBM xlc / Visual Age C compiler.
+</para>
+<para>Sets: &cv-link-CC;, &cv-link-CCVERSION;, &cv-link-SHCC;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-aixf77">
+ <term>aixf77</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the IBM Visual Age f77 Fortran compiler.
+</para>
+<para>Sets: &cv-link-F77;, &cv-link-SHF77;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-aixlink">
+ <term>aixlink</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the IBM Visual Age linker.
+</para>
+<para>Sets: &cv-link-LINKFLAGS;, &cv-link-SHLIBSUFFIX;, &cv-link-SHLINKFLAGS;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-applelink">
+ <term>applelink</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the Apple linker
+(similar to the GNU linker).
+</para>
+<para>Sets: &cv-link-FRAMEWORKPATHPREFIX;, &cv-link-LDMODULECOM;, &cv-link-LDMODULEFLAGS;, &cv-link-LDMODULEPREFIX;, &cv-link-LDMODULESUFFIX;, &cv-link-LINKCOM;, &cv-link-SHLINKCOM;, &cv-link-SHLINKFLAGS;, &cv-link-_FRAMEWORKPATH;, &cv-link-_FRAMEWORKS;.</para><para>Uses: &cv-link-FRAMEWORKSFLAGS;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-ar">
+ <term>ar</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the <application xmlns="http://www.scons.org/dbxsd/v1.0">ar</application> library archiver.
+</para>
+<para>Sets: &cv-link-AR;, &cv-link-ARCOM;, &cv-link-ARFLAGS;, &cv-link-LIBPREFIX;, &cv-link-LIBSUFFIX;, &cv-link-RANLIB;, &cv-link-RANLIBCOM;, &cv-link-RANLIBFLAGS;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-as">
+ <term>as</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the <application xmlns="http://www.scons.org/dbxsd/v1.0">as</application> assembler.
+</para>
+<para>Sets: &cv-link-AS;, &cv-link-ASCOM;, &cv-link-ASFLAGS;, &cv-link-ASPPCOM;, &cv-link-ASPPFLAGS;.</para><para>Uses: &cv-link-CC;, &cv-link-CPPFLAGS;, &cv-link-_CPPDEFFLAGS;, &cv-link-_CPPINCFLAGS;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-bcc32">
+ <term>bcc32</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the bcc32 compiler.
+</para>
+<para>Sets: &cv-link-CC;, &cv-link-CCCOM;, &cv-link-CCFLAGS;, &cv-link-CFILESUFFIX;, &cv-link-CFLAGS;, &cv-link-CPPDEFPREFIX;, &cv-link-CPPDEFSUFFIX;, &cv-link-INCPREFIX;, &cv-link-INCSUFFIX;, &cv-link-SHCC;, &cv-link-SHCCCOM;, &cv-link-SHCCFLAGS;, &cv-link-SHCFLAGS;, &cv-link-SHOBJSUFFIX;.</para><para>Uses: &cv-link-_CPPDEFFLAGS;, &cv-link-_CPPINCFLAGS;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-BitKeeper">
+ <term>BitKeeper</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the BitKeeper
+source code control system.
+</para>
+<para>Sets: &cv-link-BITKEEPER;, &cv-link-BITKEEPERCOM;, &cv-link-BITKEEPERGET;, &cv-link-BITKEEPERGETFLAGS;.</para><para>Uses: &cv-link-BITKEEPERCOMSTR;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-cc">
+ <term>cc</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for generic POSIX C copmilers.
+</para>
+<para>Sets: &cv-link-CC;, &cv-link-CCCOM;, &cv-link-CCFLAGS;, &cv-link-CFILESUFFIX;, &cv-link-CFLAGS;, &cv-link-CPPDEFPREFIX;, &cv-link-CPPDEFSUFFIX;, &cv-link-FRAMEWORKPATH;, &cv-link-FRAMEWORKS;, &cv-link-INCPREFIX;, &cv-link-INCSUFFIX;, &cv-link-SHCC;, &cv-link-SHCCCOM;, &cv-link-SHCCFLAGS;, &cv-link-SHCFLAGS;, &cv-link-SHOBJSUFFIX;.</para><para>Uses: &cv-link-PLATFORM;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-cvf">
+ <term>cvf</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the Compaq Visual Fortran compiler.
+</para>
+<para>Sets: &cv-link-FORTRAN;, &cv-link-FORTRANCOM;, &cv-link-FORTRANMODDIR;, &cv-link-FORTRANMODDIRPREFIX;, &cv-link-FORTRANMODDIRSUFFIX;, &cv-link-FORTRANPPCOM;, &cv-link-OBJSUFFIX;, &cv-link-SHFORTRANCOM;, &cv-link-SHFORTRANPPCOM;.</para><para>Uses: &cv-link-CPPFLAGS;, &cv-link-FORTRANFLAGS;, &cv-link-SHFORTRANFLAGS;, &cv-link-_CPPDEFFLAGS;, &cv-link-_FORTRANINCFLAGS;, &cv-link-_FORTRANMODFLAG;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-CVS">
+ <term>CVS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the CVS source code
+management system.
+</para>
+<para>Sets: &cv-link-CVS;, &cv-link-CVSCOFLAGS;, &cv-link-CVSCOM;, &cv-link-CVSFLAGS;.</para><para>Uses: &cv-link-CVSCOMSTR;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-cXX">
+ <term>cXX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for generic POSIX C++ compilers.
+</para>
+<para>Sets: &cv-link-CPPDEFPREFIX;, &cv-link-CPPDEFSUFFIX;, &cv-link-CXX;, &cv-link-CXXCOM;, &cv-link-CXXFILESUFFIX;, &cv-link-CXXFLAGS;, &cv-link-INCPREFIX;, &cv-link-INCSUFFIX;, &cv-link-OBJSUFFIX;, &cv-link-SHCXX;, &cv-link-SHCXXCOM;, &cv-link-SHCXXFLAGS;, &cv-link-SHOBJSUFFIX;.</para><para>Uses: &cv-link-CXXCOMSTR;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-default">
+ <term>default</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets variables by calling a default list of Tool modules
+for the platform on which SCons is running.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="t-dmd">
+ <term>dmd</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for D language compilers
+(the Digital Mars D compiler, or GDC).
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="t-dvi">
+ <term>dvi</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Attaches the <function xmlns="http://www.scons.org/dbxsd/v1.0">DVI</function> builder to the
+construction environment.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="t-dvipdf">
+ <term>dvipdf</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the dvipdf utility.
+</para>
+<para>Sets: &cv-link-DVIPDF;, &cv-link-DVIPDFCOM;, &cv-link-DVIPDFFLAGS;.</para><para>Uses: &cv-link-DVIPDFCOMSTR;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-dvips">
+ <term>dvips</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the dvips utility.
+</para>
+<para>Sets: &cv-link-DVIPS;, &cv-link-DVIPSFLAGS;, &cv-link-PSCOM;, &cv-link-PSPREFIX;, &cv-link-PSSUFFIX;.</para><para>Uses: &cv-link-PSCOMSTR;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-f03">
+ <term>f03</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Set construction variables for generic POSIX Fortran 03 compilers.
+</para>
+<para>Sets: &cv-link-F03;, &cv-link-F03COM;, &cv-link-F03FLAGS;, &cv-link-F03PPCOM;, &cv-link-SHF03;, &cv-link-SHF03COM;, &cv-link-SHF03FLAGS;, &cv-link-SHF03PPCOM;, &cv-link-_F03INCFLAGS;.</para><para>Uses: &cv-link-F03COMSTR;, &cv-link-F03PPCOMSTR;, &cv-link-SHF03COMSTR;, &cv-link-SHF03PPCOMSTR;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-f77">
+ <term>f77</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Set construction variables for generic POSIX Fortran 77 compilers.
+</para>
+<para>Sets: &cv-link-F77;, &cv-link-F77COM;, &cv-link-F77FILESUFFIXES;, &cv-link-F77FLAGS;, &cv-link-F77PPCOM;, &cv-link-F77PPFILESUFFIXES;, &cv-link-FORTRAN;, &cv-link-FORTRANCOM;, &cv-link-FORTRANFLAGS;, &cv-link-SHF77;, &cv-link-SHF77COM;, &cv-link-SHF77FLAGS;, &cv-link-SHF77PPCOM;, &cv-link-SHFORTRAN;, &cv-link-SHFORTRANCOM;, &cv-link-SHFORTRANFLAGS;, &cv-link-SHFORTRANPPCOM;, &cv-link-_F77INCFLAGS;.</para><para>Uses: &cv-link-F77COMSTR;, &cv-link-F77PPCOMSTR;, &cv-link-FORTRANCOMSTR;, &cv-link-FORTRANPPCOMSTR;, &cv-link-SHF77COMSTR;, &cv-link-SHF77PPCOMSTR;, &cv-link-SHFORTRANCOMSTR;, &cv-link-SHFORTRANPPCOMSTR;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-f90">
+ <term>f90</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Set construction variables for generic POSIX Fortran 90 compilers.
+</para>
+<para>Sets: &cv-link-F90;, &cv-link-F90COM;, &cv-link-F90FLAGS;, &cv-link-F90PPCOM;, &cv-link-SHF90;, &cv-link-SHF90COM;, &cv-link-SHF90FLAGS;, &cv-link-SHF90PPCOM;, &cv-link-_F90INCFLAGS;.</para><para>Uses: &cv-link-F90COMSTR;, &cv-link-F90PPCOMSTR;, &cv-link-SHF90COMSTR;, &cv-link-SHF90PPCOMSTR;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-f95">
+ <term>f95</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Set construction variables for generic POSIX Fortran 95 compilers.
+</para>
+<para>Sets: &cv-link-F95;, &cv-link-F95COM;, &cv-link-F95FLAGS;, &cv-link-F95PPCOM;, &cv-link-SHF95;, &cv-link-SHF95COM;, &cv-link-SHF95FLAGS;, &cv-link-SHF95PPCOM;, &cv-link-_F95INCFLAGS;.</para><para>Uses: &cv-link-F95COMSTR;, &cv-link-F95PPCOMSTR;, &cv-link-SHF95COMSTR;, &cv-link-SHF95PPCOMSTR;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-fortran">
+ <term>fortran</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Set construction variables for generic POSIX Fortran compilers.
+</para>
+<para>Sets: &cv-link-FORTRAN;, &cv-link-FORTRANCOM;, &cv-link-FORTRANFLAGS;, &cv-link-SHFORTRAN;, &cv-link-SHFORTRANCOM;, &cv-link-SHFORTRANFLAGS;, &cv-link-SHFORTRANPPCOM;.</para><para>Uses: &cv-link-FORTRANCOMSTR;, &cv-link-FORTRANPPCOMSTR;, &cv-link-SHFORTRANCOMSTR;, &cv-link-SHFORTRANPPCOMSTR;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-gXX">
+ <term>g++</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Set construction variables for the <application xmlns="http://www.scons.org/dbxsd/v1.0">gXX</application> C++ compiler.
+</para>
+<para>Sets: &cv-link-CXX;, &cv-link-CXXVERSION;, &cv-link-SHCXXFLAGS;, &cv-link-SHOBJSUFFIX;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-g77">
+ <term>g77</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Set construction variables for the <application xmlns="http://www.scons.org/dbxsd/v1.0">g77</application> Fortran compiler.
+Calls the <literal xmlns="http://www.scons.org/dbxsd/v1.0">f77</literal> Tool module
+to set variables.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="t-gas">
+ <term>gas</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the <application xmlns="http://www.scons.org/dbxsd/v1.0">gas</application> assembler.
+Calls the <literal xmlns="http://www.scons.org/dbxsd/v1.0">as</literal> module.
+</para>
+<para>Sets: &cv-link-AS;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-gcc">
+ <term>gcc</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Set construction variables for the <application xmlns="http://www.scons.org/dbxsd/v1.0">gcc</application> C compiler.
+</para>
+<para>Sets: &cv-link-CC;, &cv-link-CCVERSION;, &cv-link-SHCCFLAGS;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-gettext">
+ <term>gettext</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This is actually a toolset, which supports internationalization and
+localization of sofware being constructed with SCons. The toolset loads
+following tools:
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<itemizedlist mark="opencircle">
+ <listitem><para>
+ <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="t-xgettext"><literal>xgettext</literal></link> - to extract internationalized messages from source code to
+ <literal>POT</literal> file(s),
+ </para></listitem>
+ <listitem><para>
+ <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="t-msginit"><literal>msginit</literal></link> - may be optionally used to initialize <literal>PO</literal>
+ files,
+ </para></listitem>
+ <listitem><para>
+ <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="t-msgmerge"><literal>msgmerge</literal></link> - to update <literal>PO</literal> files, that already contain
+ translated messages,</para></listitem>
+ <listitem><para>
+ <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="t-msgfmt"><literal>msgfmt</literal></link> - to compile textual <literal>PO</literal> file to binary
+ installable <literal>MO</literal> file.
+ </para></listitem>
+</itemizedlist>
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+When you enable <literal xmlns="http://www.scons.org/dbxsd/v1.0">gettext</literal>, it internally loads all abovementioned tools,
+so you're encouraged to see their individual documentation.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Each of the above tools provides its own builder(s) which may be used to
+perform particular activities related to software internationalization. You
+may be however interested in <emphasis>top-level</emphasis> builder
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Translate</function> described few paragraphs later.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+To use <literal xmlns="http://www.scons.org/dbxsd/v1.0">gettext</literal> tools add <literal>'gettext'</literal> tool to your
+environment:
+</para>
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+ env = Environment( tools = ['default', 'gettext'] )
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="t-gfortran">
+ <term>gfortran</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the GNU F95/F2003 GNU compiler.
+</para>
+<para>Sets: &cv-link-F77;, &cv-link-F90;, &cv-link-F95;, &cv-link-FORTRAN;, &cv-link-SHF77;, &cv-link-SHF77FLAGS;, &cv-link-SHF90;, &cv-link-SHF90FLAGS;, &cv-link-SHF95;, &cv-link-SHF95FLAGS;, &cv-link-SHFORTRAN;, &cv-link-SHFORTRANFLAGS;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-gnulink">
+ <term>gnulink</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Set construction variables for GNU linker/loader.
+</para>
+<para>Sets: &cv-link-RPATHPREFIX;, &cv-link-RPATHSUFFIX;, &cv-link-SHLINKFLAGS;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-gs">
+ <term>gs</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Set construction variables for Ghostscript.
+</para>
+<para>Sets: &cv-link-GS;, &cv-link-GSCOM;, &cv-link-GSFLAGS;.</para><para>Uses: &cv-link-GSCOMSTR;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-hpcXX">
+ <term>hpc++</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Set construction variables for the compilers aCC on HP/UX systems.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="t-hpcc">
+ <term>hpcc</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Set construction variables for the
+<application>aCC</application> on HP/UX systems.
+Calls the <literal xmlns="http://www.scons.org/dbxsd/v1.0">cXX</literal> tool for additional variables.
+</para>
+<para>Sets: &cv-link-CXX;, &cv-link-CXXVERSION;, &cv-link-SHCXXFLAGS;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-hplink">
+ <term>hplink</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the linker on HP/UX systems.
+</para>
+<para>Sets: &cv-link-LINKFLAGS;, &cv-link-SHLIBSUFFIX;, &cv-link-SHLINKFLAGS;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-icc">
+ <term>icc</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the
+<application>icc</application> compiler on OS/2 systems.
+</para>
+<para>Sets: &cv-link-CC;, &cv-link-CCCOM;, &cv-link-CFILESUFFIX;, &cv-link-CPPDEFPREFIX;, &cv-link-CPPDEFSUFFIX;, &cv-link-CXXCOM;, &cv-link-CXXFILESUFFIX;, &cv-link-INCPREFIX;, &cv-link-INCSUFFIX;.</para><para>Uses: &cv-link-CCFLAGS;, &cv-link-CFLAGS;, &cv-link-CPPFLAGS;, &cv-link-_CPPDEFFLAGS;, &cv-link-_CPPINCFLAGS;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-icl">
+ <term>icl</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the Intel C/C++ compiler.
+Calls the <literal xmlns="http://www.scons.org/dbxsd/v1.0">intelc</literal> Tool module to set its variables.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="t-ifl">
+ <term>ifl</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the Intel Fortran compiler.
+</para>
+<para>Sets: &cv-link-FORTRAN;, &cv-link-FORTRANCOM;, &cv-link-FORTRANPPCOM;, &cv-link-SHFORTRANCOM;, &cv-link-SHFORTRANPPCOM;.</para><para>Uses: &cv-link-CPPFLAGS;, &cv-link-FORTRANFLAGS;, &cv-link-_CPPDEFFLAGS;, &cv-link-_FORTRANINCFLAGS;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-ifort">
+ <term>ifort</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for newer versions
+of the Intel Fortran compiler for Linux.
+</para>
+<para>Sets: &cv-link-F77;, &cv-link-F90;, &cv-link-F95;, &cv-link-FORTRAN;, &cv-link-SHF77;, &cv-link-SHF77FLAGS;, &cv-link-SHF90;, &cv-link-SHF90FLAGS;, &cv-link-SHF95;, &cv-link-SHF95FLAGS;, &cv-link-SHFORTRAN;, &cv-link-SHFORTRANFLAGS;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-ilink">
+ <term>ilink</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the
+<application>ilink</application> linker on OS/2 systems.
+</para>
+<para>Sets: &cv-link-LIBDIRPREFIX;, &cv-link-LIBDIRSUFFIX;, &cv-link-LIBLINKPREFIX;, &cv-link-LIBLINKSUFFIX;, &cv-link-LINK;, &cv-link-LINKCOM;, &cv-link-LINKFLAGS;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-ilink32">
+ <term>ilink32</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the Borland
+<application>ilink32</application> linker.
+</para>
+<para>Sets: &cv-link-LIBDIRPREFIX;, &cv-link-LIBDIRSUFFIX;, &cv-link-LIBLINKPREFIX;, &cv-link-LIBLINKSUFFIX;, &cv-link-LINK;, &cv-link-LINKCOM;, &cv-link-LINKFLAGS;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-install">
+ <term>install</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for file
+and directory installation.
+</para>
+<para>Sets: &cv-link-INSTALL;, &cv-link-INSTALLSTR;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-intelc">
+ <term>intelc</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the Intel C/C++ compiler
+(Linux and Windows, version 7 and later).
+Calls the <literal xmlns="http://www.scons.org/dbxsd/v1.0">gcc</literal> or <literal xmlns="http://www.scons.org/dbxsd/v1.0">msvc</literal>
+(on Linux and Windows, respectively)
+to set underlying variables.
+</para>
+<para>Sets: &cv-link-AR;, &cv-link-CC;, &cv-link-CXX;, &cv-link-INTEL_C_COMPILER_VERSION;, &cv-link-LINK;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-jar">
+ <term>jar</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the <application xmlns="http://www.scons.org/dbxsd/v1.0">jar</application> utility.
+</para>
+<para>Sets: &cv-link-JAR;, &cv-link-JARCOM;, &cv-link-JARFLAGS;, &cv-link-JARSUFFIX;.</para><para>Uses: &cv-link-JARCOMSTR;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-javac">
+ <term>javac</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the <application xmlns="http://www.scons.org/dbxsd/v1.0">javac</application> compiler.
+</para>
+<para>Sets: &cv-link-JAVABOOTCLASSPATH;, &cv-link-JAVAC;, &cv-link-JAVACCOM;, &cv-link-JAVACFLAGS;, &cv-link-JAVACLASSPATH;, &cv-link-JAVACLASSSUFFIX;, &cv-link-JAVASOURCEPATH;, &cv-link-JAVASUFFIX;.</para><para>Uses: &cv-link-JAVACCOMSTR;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-javah">
+ <term>javah</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the <application xmlns="http://www.scons.org/dbxsd/v1.0">javah</application> tool.
+</para>
+<para>Sets: &cv-link-JAVACLASSSUFFIX;, &cv-link-JAVAH;, &cv-link-JAVAHCOM;, &cv-link-JAVAHFLAGS;.</para><para>Uses: &cv-link-JAVACLASSPATH;, &cv-link-JAVAHCOMSTR;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-latex">
+ <term>latex</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the <application xmlns="http://www.scons.org/dbxsd/v1.0">latex</application> utility.
+</para>
+<para>Sets: &cv-link-LATEX;, &cv-link-LATEXCOM;, &cv-link-LATEXFLAGS;.</para><para>Uses: &cv-link-LATEXCOMSTR;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-lex">
+ <term>lex</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the <application xmlns="http://www.scons.org/dbxsd/v1.0">lex</application> lexical analyser.
+</para>
+<para>Sets: &cv-link-LEX;, &cv-link-LEXCOM;, &cv-link-LEXFLAGS;.</para><para>Uses: &cv-link-LEXCOMSTR;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-link">
+ <term>link</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for generic POSIX linkers.
+</para>
+<para>Sets: &cv-link-LDMODULE;, &cv-link-LDMODULECOM;, &cv-link-LDMODULEFLAGS;, &cv-link-LDMODULEPREFIX;, &cv-link-LDMODULESUFFIX;, &cv-link-LIBDIRPREFIX;, &cv-link-LIBDIRSUFFIX;, &cv-link-LIBLINKPREFIX;, &cv-link-LIBLINKSUFFIX;, &cv-link-LINK;, &cv-link-LINKCOM;, &cv-link-LINKFLAGS;, &cv-link-SHLIBSUFFIX;, &cv-link-SHLINK;, &cv-link-SHLINKCOM;, &cv-link-SHLINKFLAGS;.</para><para>Uses: &cv-link-LDMODULECOMSTR;, &cv-link-LINKCOMSTR;, &cv-link-SHLINKCOMSTR;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-linkloc">
+ <term>linkloc</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the
+<application>LinkLoc</application>
+linker for the Phar Lap ETS embedded operating system.
+</para>
+<para>Sets: &cv-link-LIBDIRPREFIX;, &cv-link-LIBDIRSUFFIX;, &cv-link-LIBLINKPREFIX;, &cv-link-LIBLINKSUFFIX;, &cv-link-LINK;, &cv-link-LINKCOM;, &cv-link-LINKFLAGS;, &cv-link-SHLINK;, &cv-link-SHLINKCOM;, &cv-link-SHLINKFLAGS;.</para><para>Uses: &cv-link-LINKCOMSTR;, &cv-link-SHLINKCOMSTR;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-m4">
+ <term>m4</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the <application xmlns="http://www.scons.org/dbxsd/v1.0">m4</application> macro processor.
+</para>
+<para>Sets: &cv-link-M4;, &cv-link-M4COM;, &cv-link-M4FLAGS;.</para><para>Uses: &cv-link-M4COMSTR;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-masm">
+ <term>masm</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the Microsoft assembler.
+</para>
+<para>Sets: &cv-link-AS;, &cv-link-ASCOM;, &cv-link-ASFLAGS;, &cv-link-ASPPCOM;, &cv-link-ASPPFLAGS;.</para><para>Uses: &cv-link-ASCOMSTR;, &cv-link-ASPPCOMSTR;, &cv-link-CPPFLAGS;, &cv-link-_CPPDEFFLAGS;, &cv-link-_CPPINCFLAGS;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-midl">
+ <term>midl</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the Microsoft IDL compiler.
+</para>
+<para>Sets: &cv-link-MIDL;, &cv-link-MIDLCOM;, &cv-link-MIDLFLAGS;.</para><para>Uses: &cv-link-MIDLCOMSTR;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-mingw">
+ <term>mingw</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for MinGW (Minimal Gnu on Windows).
+</para>
+<para>Sets: &cv-link-AS;, &cv-link-CC;, &cv-link-CXX;, &cv-link-LDMODULECOM;, &cv-link-LIBPREFIX;, &cv-link-LIBSUFFIX;, &cv-link-OBJSUFFIX;, &cv-link-RC;, &cv-link-RCCOM;, &cv-link-RCFLAGS;, &cv-link-RCINCFLAGS;, &cv-link-RCINCPREFIX;, &cv-link-RCINCSUFFIX;, &cv-link-SHCCFLAGS;, &cv-link-SHCXXFLAGS;, &cv-link-SHLINKCOM;, &cv-link-SHLINKFLAGS;, &cv-link-SHOBJSUFFIX;, &cv-link-WINDOWSDEFPREFIX;, &cv-link-WINDOWSDEFSUFFIX;.</para><para>Uses: &cv-link-RCCOMSTR;, &cv-link-SHLINKCOMSTR;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-msgfmt">
+ <term>msgfmt</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This scons tool is a part of scons <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="t-gettext"><literal>gettext</literal></link> toolset. It provides scons
+interface to <command>msgfmt(1)</command> command, which generates binary
+message catalog (<literal>MO</literal>) from a textual translation description
+(<literal>PO</literal>).
+</para>
+<para>Sets: &cv-link-MOSUFFIX;, &cv-link-MSGFMT;, &cv-link-MSGFMTCOM;, &cv-link-MSGFMTCOMSTR;, &cv-link-MSGFMTFLAGS;, &cv-link-POSUFFIX;.</para><para>Uses: &cv-link-LINGUAS_FILE;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-msginit">
+ <term>msginit</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This scons tool is a part of scons <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="t-gettext"><literal>gettext</literal></link> toolset. It provides
+scons interface to <command>msginit(1)</command> program, which creates new
+<literal>PO</literal> file, initializing the meta information with values from
+user's environment (or options).
+</para>
+<para>Sets: &cv-link-MSGINIT;, &cv-link-MSGINITCOM;, &cv-link-MSGINITCOMSTR;, &cv-link-MSGINITFLAGS;, &cv-link-POAUTOINIT;, &cv-link-POCREATE_ALIAS;, &cv-link-POSUFFIX;, &cv-link-POTSUFFIX;, &cv-link-_MSGINITLOCALE;.</para><para>Uses: &cv-link-LINGUAS_FILE;, &cv-link-POAUTOINIT;, &cv-link-POTDOMAIN;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-msgmerge">
+ <term>msgmerge</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This scons tool is a part of scons <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="t-gettext"><literal>gettext</literal></link> toolset. It provides
+scons interface to <command>msgmerge(1)</command> command, which merges two
+Uniform style <filename>.po</filename> files together.
+</para>
+<para>Sets: &cv-link-MSGMERGE;, &cv-link-MSGMERGECOM;, &cv-link-MSGMERGECOMSTR;, &cv-link-MSGMERGEFLAGS;, &cv-link-POSUFFIX;, &cv-link-POTSUFFIX;, &cv-link-POUPDATE_ALIAS;.</para><para>Uses: &cv-link-LINGUAS_FILE;, &cv-link-POAUTOINIT;, &cv-link-POTDOMAIN;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-mslib">
+ <term>mslib</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the Microsoft
+<application>mslib</application>
+library archiver.
+</para>
+<para>Sets: &cv-link-AR;, &cv-link-ARCOM;, &cv-link-ARFLAGS;, &cv-link-LIBPREFIX;, &cv-link-LIBSUFFIX;.</para><para>Uses: &cv-link-ARCOMSTR;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-mslink">
+ <term>mslink</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the Microsoft linker.
+</para>
+<para>Sets: &cv-link-LDMODULE;, &cv-link-LDMODULECOM;, &cv-link-LDMODULEFLAGS;, &cv-link-LDMODULEPREFIX;, &cv-link-LDMODULESUFFIX;, &cv-link-LIBDIRPREFIX;, &cv-link-LIBDIRSUFFIX;, &cv-link-LIBLINKPREFIX;, &cv-link-LIBLINKSUFFIX;, &cv-link-LINK;, &cv-link-LINKCOM;, &cv-link-LINKFLAGS;, &cv-link-REGSVR;, &cv-link-REGSVRCOM;, &cv-link-REGSVRFLAGS;, &cv-link-SHLINK;, &cv-link-SHLINKCOM;, &cv-link-SHLINKFLAGS;, &cv-link-WIN32DEFPREFIX;, &cv-link-WIN32DEFSUFFIX;, &cv-link-WIN32EXPPREFIX;, &cv-link-WIN32EXPSUFFIX;, &cv-link-WINDOWSDEFPREFIX;, &cv-link-WINDOWSDEFSUFFIX;, &cv-link-WINDOWSEXPPREFIX;, &cv-link-WINDOWSEXPSUFFIX;, &cv-link-WINDOWSPROGMANIFESTPREFIX;, &cv-link-WINDOWSPROGMANIFESTSUFFIX;, &cv-link-WINDOWSSHLIBMANIFESTPREFIX;, &cv-link-WINDOWSSHLIBMANIFESTSUFFIX;, &cv-link-WINDOWS_INSERT_DEF;.</para><para>Uses: &cv-link-LDMODULECOMSTR;, &cv-link-LINKCOMSTR;, &cv-link-REGSVRCOMSTR;, &cv-link-SHLINKCOMSTR;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-mssdk">
+ <term>mssdk</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets variables for Microsoft Platform SDK and/or Windows SDK.
+Note that unlike most other Tool modules,
+mssdk does not set construction variables,
+but sets the <emphasis>environment variables</emphasis>
+in the environment <application xmlns="http://www.scons.org/dbxsd/v1.0">SCons</application> uses to execute
+the Microsoft toolchain:
+<literal>%INCLUDE%</literal>,
+<literal>%LIB%</literal>,
+<literal>%LIBPATH%</literal> and
+<literal>%PATH%</literal>.
+</para>
+<para>Uses: &cv-link-MSSDK_DIR;, &cv-link-MSSDK_VERSION;, &cv-link-MSVS_VERSION;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-msvc">
+ <term>msvc</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the Microsoft Visual C/C++ compiler.
+</para>
+<para>Sets: &cv-link-BUILDERS;, &cv-link-CC;, &cv-link-CCCOM;, &cv-link-CCFLAGS;, &cv-link-CCPCHFLAGS;, &cv-link-CCPDBFLAGS;, &cv-link-CFILESUFFIX;, &cv-link-CFLAGS;, &cv-link-CPPDEFPREFIX;, &cv-link-CPPDEFSUFFIX;, &cv-link-CXX;, &cv-link-CXXCOM;, &cv-link-CXXFILESUFFIX;, &cv-link-CXXFLAGS;, &cv-link-INCPREFIX;, &cv-link-INCSUFFIX;, &cv-link-OBJPREFIX;, &cv-link-OBJSUFFIX;, &cv-link-PCHCOM;, &cv-link-PCHPDBFLAGS;, &cv-link-RC;, &cv-link-RCCOM;, &cv-link-RCFLAGS;, &cv-link-SHCC;, &cv-link-SHCCCOM;, &cv-link-SHCCFLAGS;, &cv-link-SHCFLAGS;, &cv-link-SHCXX;, &cv-link-SHCXXCOM;, &cv-link-SHCXXFLAGS;, &cv-link-SHOBJPREFIX;, &cv-link-SHOBJSUFFIX;.</para><para>Uses: &cv-link-CCCOMSTR;, &cv-link-CXXCOMSTR;, &cv-link-PCH;, &cv-link-PCHSTOP;, &cv-link-PDB;, &cv-link-SHCCCOMSTR;, &cv-link-SHCXXCOMSTR;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-msvs">
+ <term>msvs</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for Microsoft Visual Studio.
+</para>
+<para>Sets: &cv-link-MSVSBUILDCOM;, &cv-link-MSVSCLEANCOM;, &cv-link-MSVSENCODING;, &cv-link-MSVSPROJECTCOM;, &cv-link-MSVSREBUILDCOM;, &cv-link-MSVSSCONS;, &cv-link-MSVSSCONSCOM;, &cv-link-MSVSSCONSCRIPT;, &cv-link-MSVSSCONSFLAGS;, &cv-link-MSVSSOLUTIONCOM;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-mwcc">
+ <term>mwcc</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the Metrowerks CodeWarrior compiler.
+</para>
+<para>Sets: &cv-link-CC;, &cv-link-CCCOM;, &cv-link-CFILESUFFIX;, &cv-link-CPPDEFPREFIX;, &cv-link-CPPDEFSUFFIX;, &cv-link-CXX;, &cv-link-CXXCOM;, &cv-link-CXXFILESUFFIX;, &cv-link-INCPREFIX;, &cv-link-INCSUFFIX;, &cv-link-MWCW_VERSION;, &cv-link-MWCW_VERSIONS;, &cv-link-SHCC;, &cv-link-SHCCCOM;, &cv-link-SHCCFLAGS;, &cv-link-SHCFLAGS;, &cv-link-SHCXX;, &cv-link-SHCXXCOM;, &cv-link-SHCXXFLAGS;.</para><para>Uses: &cv-link-CCCOMSTR;, &cv-link-CXXCOMSTR;, &cv-link-SHCCCOMSTR;, &cv-link-SHCXXCOMSTR;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-mwld">
+ <term>mwld</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the Metrowerks CodeWarrior linker.
+</para>
+<para>Sets: &cv-link-AR;, &cv-link-ARCOM;, &cv-link-LIBDIRPREFIX;, &cv-link-LIBDIRSUFFIX;, &cv-link-LIBLINKPREFIX;, &cv-link-LIBLINKSUFFIX;, &cv-link-LINK;, &cv-link-LINKCOM;, &cv-link-SHLINK;, &cv-link-SHLINKCOM;, &cv-link-SHLINKFLAGS;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-nasm">
+ <term>nasm</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the
+<application>nasm</application> Netwide Assembler.
+</para>
+<para>Sets: &cv-link-AS;, &cv-link-ASCOM;, &cv-link-ASFLAGS;, &cv-link-ASPPCOM;, &cv-link-ASPPFLAGS;.</para><para>Uses: &cv-link-ASCOMSTR;, &cv-link-ASPPCOMSTR;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-packaging">
+ <term>packaging</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A framework for building binary and source packages.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="t-Packaging">
+ <term>Packaging</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the <function xmlns="http://www.scons.org/dbxsd/v1.0">Package</function> Builder.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="t-pdf">
+ <term>pdf</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the Portable Document Format builder.
+</para>
+<para>Sets: &cv-link-PDFPREFIX;, &cv-link-PDFSUFFIX;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-pdflatex">
+ <term>pdflatex</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the <application xmlns="http://www.scons.org/dbxsd/v1.0">pdflatex</application> utility.
+</para>
+<para>Sets: &cv-link-LATEXRETRIES;, &cv-link-PDFLATEX;, &cv-link-PDFLATEXCOM;, &cv-link-PDFLATEXFLAGS;.</para><para>Uses: &cv-link-PDFLATEXCOMSTR;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-pdftex">
+ <term>pdftex</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the <application xmlns="http://www.scons.org/dbxsd/v1.0">pdftex</application> utility.
+</para>
+<para>Sets: &cv-link-LATEXRETRIES;, &cv-link-PDFLATEX;, &cv-link-PDFLATEXCOM;, &cv-link-PDFLATEXFLAGS;, &cv-link-PDFTEX;, &cv-link-PDFTEXCOM;, &cv-link-PDFTEXFLAGS;.</para><para>Uses: &cv-link-PDFLATEXCOMSTR;, &cv-link-PDFTEXCOMSTR;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-Perforce">
+ <term>Perforce</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for interacting with the
+Perforce source code management system.
+</para>
+<para>Sets: &cv-link-P4;, &cv-link-P4COM;, &cv-link-P4FLAGS;.</para><para>Uses: &cv-link-P4COMSTR;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-qt">
+ <term>qt</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for building Qt applications.
+</para>
+<para>Sets: &cv-link-QTDIR;, &cv-link-QT_AUTOSCAN;, &cv-link-QT_BINPATH;, &cv-link-QT_CPPPATH;, &cv-link-QT_LIB;, &cv-link-QT_LIBPATH;, &cv-link-QT_MOC;, &cv-link-QT_MOCCXXPREFIX;, &cv-link-QT_MOCCXXSUFFIX;, &cv-link-QT_MOCFROMCXXCOM;, &cv-link-QT_MOCFROMCXXFLAGS;, &cv-link-QT_MOCFROMHCOM;, &cv-link-QT_MOCFROMHFLAGS;, &cv-link-QT_MOCHPREFIX;, &cv-link-QT_MOCHSUFFIX;, &cv-link-QT_UIC;, &cv-link-QT_UICCOM;, &cv-link-QT_UICDECLFLAGS;, &cv-link-QT_UICDECLPREFIX;, &cv-link-QT_UICDECLSUFFIX;, &cv-link-QT_UICIMPLFLAGS;, &cv-link-QT_UICIMPLPREFIX;, &cv-link-QT_UICIMPLSUFFIX;, &cv-link-QT_UISUFFIX;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-RCS">
+ <term>RCS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the interaction
+with the Revision Control System.
+</para>
+<para>Sets: &cv-link-RCS;, &cv-link-RCS_CO;, &cv-link-RCS_COCOM;, &cv-link-RCS_COFLAGS;.</para><para>Uses: &cv-link-RCS_COCOMSTR;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-rmic">
+ <term>rmic</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the <application xmlns="http://www.scons.org/dbxsd/v1.0">rmic</application> utility.
+</para>
+<para>Sets: &cv-link-JAVACLASSSUFFIX;, &cv-link-RMIC;, &cv-link-RMICCOM;, &cv-link-RMICFLAGS;.</para><para>Uses: &cv-link-RMICCOMSTR;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-rpcgen">
+ <term>rpcgen</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for building with RPCGEN.
+</para>
+<para>Sets: &cv-link-RPCGEN;, &cv-link-RPCGENCLIENTFLAGS;, &cv-link-RPCGENFLAGS;, &cv-link-RPCGENHEADERFLAGS;, &cv-link-RPCGENSERVICEFLAGS;, &cv-link-RPCGENXDRFLAGS;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-SCCS">
+ <term>SCCS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for interacting with the
+Source Code Control System.
+</para>
+<para>Sets: &cv-link-SCCS;, &cv-link-SCCSCOM;, &cv-link-SCCSFLAGS;, &cv-link-SCCSGETFLAGS;.</para><para>Uses: &cv-link-SCCSCOMSTR;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-sgiar">
+ <term>sgiar</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the SGI library archiver.
+</para>
+<para>Sets: &cv-link-AR;, &cv-link-ARCOMSTR;, &cv-link-ARFLAGS;, &cv-link-LIBPREFIX;, &cv-link-LIBSUFFIX;, &cv-link-SHLINK;, &cv-link-SHLINKFLAGS;.</para><para>Uses: &cv-link-ARCOMSTR;, &cv-link-SHLINKCOMSTR;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-sgicXX">
+ <term>sgic++</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the SGI C++ compiler.
+</para>
+<para>Sets: &cv-link-CXX;, &cv-link-CXXFLAGS;, &cv-link-SHCXX;, &cv-link-SHOBJSUFFIX;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-sgicc">
+ <term>sgicc</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the SGI C compiler.
+</para>
+<para>Sets: &cv-link-CXX;, &cv-link-SHOBJSUFFIX;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-sgilink">
+ <term>sgilink</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the SGI linker.
+</para>
+<para>Sets: &cv-link-LINK;, &cv-link-RPATHPREFIX;, &cv-link-RPATHSUFFIX;, &cv-link-SHLINKFLAGS;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-sunar">
+ <term>sunar</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the Sun library archiver.
+</para>
+<para>Sets: &cv-link-AR;, &cv-link-ARCOM;, &cv-link-ARFLAGS;, &cv-link-LIBPREFIX;, &cv-link-LIBSUFFIX;, &cv-link-SHLINK;, &cv-link-SHLINKCOM;, &cv-link-SHLINKFLAGS;.</para><para>Uses: &cv-link-ARCOMSTR;, &cv-link-SHLINKCOMSTR;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-suncXX">
+ <term>sunc++</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the Sun C++ compiler.
+</para>
+<para>Sets: &cv-link-CXX;, &cv-link-CXXVERSION;, &cv-link-SHCXX;, &cv-link-SHCXXFLAGS;, &cv-link-SHOBJPREFIX;, &cv-link-SHOBJSUFFIX;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-suncc">
+ <term>suncc</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the Sun C compiler.
+</para>
+<para>Sets: &cv-link-CXX;, &cv-link-SHCCFLAGS;, &cv-link-SHOBJPREFIX;, &cv-link-SHOBJSUFFIX;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-sunf77">
+ <term>sunf77</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Set construction variables for the Sun <application xmlns="http://www.scons.org/dbxsd/v1.0">f77</application> Fortran compiler.
+</para>
+<para>Sets: &cv-link-F77;, &cv-link-FORTRAN;, &cv-link-SHF77;, &cv-link-SHF77FLAGS;, &cv-link-SHFORTRAN;, &cv-link-SHFORTRANFLAGS;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-sunf90">
+ <term>sunf90</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Set construction variables for the Sun <application xmlns="http://www.scons.org/dbxsd/v1.0">f90</application> Fortran compiler.
+</para>
+<para>Sets: &cv-link-F90;, &cv-link-FORTRAN;, &cv-link-SHF90;, &cv-link-SHF90FLAGS;, &cv-link-SHFORTRAN;, &cv-link-SHFORTRANFLAGS;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-sunf95">
+ <term>sunf95</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Set construction variables for the Sun <application xmlns="http://www.scons.org/dbxsd/v1.0">f95</application> Fortran compiler.
+</para>
+<para>Sets: &cv-link-F95;, &cv-link-FORTRAN;, &cv-link-SHF95;, &cv-link-SHF95FLAGS;, &cv-link-SHFORTRAN;, &cv-link-SHFORTRANFLAGS;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-sunlink">
+ <term>sunlink</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the Sun linker.
+</para>
+<para>Sets: &cv-link-RPATHPREFIX;, &cv-link-RPATHSUFFIX;, &cv-link-SHLINKFLAGS;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-swig">
+ <term>swig</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the SWIG interface generator.
+</para>
+<para>Sets: &cv-link-SWIG;, &cv-link-SWIGCFILESUFFIX;, &cv-link-SWIGCOM;, &cv-link-SWIGCXXFILESUFFIX;, &cv-link-SWIGDIRECTORSUFFIX;, &cv-link-SWIGFLAGS;, &cv-link-SWIGINCPREFIX;, &cv-link-SWIGINCSUFFIX;, &cv-link-SWIGPATH;, &cv-link-SWIGVERSION;, &cv-link-_SWIGINCFLAGS;.</para><para>Uses: &cv-link-SWIGCOMSTR;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-tar">
+ <term>tar</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the <application xmlns="http://www.scons.org/dbxsd/v1.0">tar</application> archiver.
+</para>
+<para>Sets: &cv-link-TAR;, &cv-link-TARCOM;, &cv-link-TARFLAGS;, &cv-link-TARSUFFIX;.</para><para>Uses: &cv-link-TARCOMSTR;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-tex">
+ <term>tex</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the TeX formatter and typesetter.
+</para>
+<para>Sets: &cv-link-BIBTEX;, &cv-link-BIBTEXCOM;, &cv-link-BIBTEXFLAGS;, &cv-link-LATEX;, &cv-link-LATEXCOM;, &cv-link-LATEXFLAGS;, &cv-link-MAKEINDEX;, &cv-link-MAKEINDEXCOM;, &cv-link-MAKEINDEXFLAGS;, &cv-link-TEX;, &cv-link-TEXCOM;, &cv-link-TEXFLAGS;.</para><para>Uses: &cv-link-BIBTEXCOMSTR;, &cv-link-LATEXCOMSTR;, &cv-link-MAKEINDEXCOMSTR;, &cv-link-TEXCOMSTR;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-textfile">
+ <term>textfile</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Set construction variables for the <function xmlns="http://www.scons.org/dbxsd/v1.0">Textfile</function> and <function xmlns="http://www.scons.org/dbxsd/v1.0">Substfile</function> builders.
+</para>
+<para>Sets: &cv-link-LINESEPARATOR;, &cv-link-SUBSTFILEPREFIX;, &cv-link-SUBSTFILESUFFIX;, &cv-link-TEXTFILEPREFIX;, &cv-link-TEXTFILESUFFIX;.</para><para>Uses: &cv-link-SUBST_DICT;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-tlib">
+ <term>tlib</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the Borlan
+<application>tib</application> library archiver.
+</para>
+<para>Sets: &cv-link-AR;, &cv-link-ARCOM;, &cv-link-ARFLAGS;, &cv-link-LIBPREFIX;, &cv-link-LIBSUFFIX;.</para><para>Uses: &cv-link-ARCOMSTR;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-xgettext">
+ <term>xgettext</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This scons tool is a part of scons <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="t-gettext"><literal>gettext</literal></link> toolset. It provides
+scons interface to <command>xgettext(1)</command>
+program, which extracts internationalized messages from source code. The tool
+provides <function xmlns="http://www.scons.org/dbxsd/v1.0">POTUpdate</function> builder to make <literal>PO</literal>
+<emphasis>Template</emphasis> files.
+</para>
+<para>Sets: &cv-link-POTSUFFIX;, &cv-link-POTUPDATE_ALIAS;, &cv-link-XGETTEXTCOM;, &cv-link-XGETTEXTCOMSTR;, &cv-link-XGETTEXTFLAGS;, &cv-link-XGETTEXTFROM;, &cv-link-XGETTEXTFROMPREFIX;, &cv-link-XGETTEXTFROMSUFFIX;, &cv-link-XGETTEXTPATH;, &cv-link-XGETTEXTPATHPREFIX;, &cv-link-XGETTEXTPATHSUFFIX;, &cv-link-_XGETTEXTDOMAIN;, &cv-link-_XGETTEXTFROMFLAGS;, &cv-link-_XGETTEXTPATHFLAGS;.</para><para>Uses: &cv-link-POTDOMAIN;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-yacc">
+ <term>yacc</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the <application xmlns="http://www.scons.org/dbxsd/v1.0">yacc</application> parse generator.
+</para>
+<para>Sets: &cv-link-YACC;, &cv-link-YACCCOM;, &cv-link-YACCFLAGS;, &cv-link-YACCHFILESUFFIX;, &cv-link-YACCHXXFILESUFFIX;, &cv-link-YACCVCGFILESUFFIX;.</para><para>Uses: &cv-link-YACCCOMSTR;.</para></listitem>
+ </varlistentry>
+ <varlistentry id="t-zip">
+ <term>zip</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for the <application xmlns="http://www.scons.org/dbxsd/v1.0">zip</application> archiver.
+</para>
+<para>Sets: &cv-link-ZIP;, &cv-link-ZIPCOM;, &cv-link-ZIPCOMPRESSION;, &cv-link-ZIPFLAGS;, &cv-link-ZIPSUFFIX;.</para><para>Uses: &cv-link-ZIPCOMSTR;.</para></listitem>
+ </varlistentry>
+</variablelist>
diff --git a/doc/generated/tools.mod b/doc/generated/tools.mod
new file mode 100644
index 00000000..bde24705
--- /dev/null
+++ b/doc/generated/tools.mod
@@ -0,0 +1,215 @@
+<!--
+THIS IS AN AUTOMATICALLY-GENERATED FILE. DO NOT EDIT.
+-->
+
+<!--
+
+ Regular tool entities.
+
+-->
+
+<!ENTITY t-386asm "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>386asm</literal>">
+<!ENTITY t-aixcXX "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>aixc++</literal>">
+<!ENTITY t-aixcc "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>aixcc</literal>">
+<!ENTITY t-aixf77 "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>aixf77</literal>">
+<!ENTITY t-aixlink "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>aixlink</literal>">
+<!ENTITY t-applelink "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>applelink</literal>">
+<!ENTITY t-ar "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>ar</literal>">
+<!ENTITY t-as "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>as</literal>">
+<!ENTITY t-bcc32 "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>bcc32</literal>">
+<!ENTITY t-BitKeeper "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>BitKeeper</literal>">
+<!ENTITY t-cc "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>cc</literal>">
+<!ENTITY t-cvf "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>cvf</literal>">
+<!ENTITY t-CVS "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>CVS</literal>">
+<!ENTITY t-cXX "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>cXX</literal>">
+<!ENTITY t-default "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>default</literal>">
+<!ENTITY t-dmd "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>dmd</literal>">
+<!ENTITY t-dvi "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>dvi</literal>">
+<!ENTITY t-dvipdf "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>dvipdf</literal>">
+<!ENTITY t-dvips "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>dvips</literal>">
+<!ENTITY t-f03 "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>f03</literal>">
+<!ENTITY t-f77 "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>f77</literal>">
+<!ENTITY t-f90 "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>f90</literal>">
+<!ENTITY t-f95 "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>f95</literal>">
+<!ENTITY t-fortran "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>fortran</literal>">
+<!ENTITY t-gXX "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>g++</literal>">
+<!ENTITY t-g77 "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>g77</literal>">
+<!ENTITY t-gas "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>gas</literal>">
+<!ENTITY t-gcc "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>gcc</literal>">
+<!ENTITY t-gettext "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>gettext</literal>">
+<!ENTITY t-gfortran "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>gfortran</literal>">
+<!ENTITY t-gnulink "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>gnulink</literal>">
+<!ENTITY t-gs "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>gs</literal>">
+<!ENTITY t-hpcXX "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>hpc++</literal>">
+<!ENTITY t-hpcc "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>hpcc</literal>">
+<!ENTITY t-hplink "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>hplink</literal>">
+<!ENTITY t-icc "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>icc</literal>">
+<!ENTITY t-icl "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>icl</literal>">
+<!ENTITY t-ifl "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>ifl</literal>">
+<!ENTITY t-ifort "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>ifort</literal>">
+<!ENTITY t-ilink "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>ilink</literal>">
+<!ENTITY t-ilink32 "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>ilink32</literal>">
+<!ENTITY t-install "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>install</literal>">
+<!ENTITY t-intelc "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>intelc</literal>">
+<!ENTITY t-jar "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>jar</literal>">
+<!ENTITY t-javac "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>javac</literal>">
+<!ENTITY t-javah "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>javah</literal>">
+<!ENTITY t-latex "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>latex</literal>">
+<!ENTITY t-lex "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>lex</literal>">
+<!ENTITY t-link "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>link</literal>">
+<!ENTITY t-linkloc "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>linkloc</literal>">
+<!ENTITY t-m4 "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>m4</literal>">
+<!ENTITY t-masm "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>masm</literal>">
+<!ENTITY t-midl "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>midl</literal>">
+<!ENTITY t-mingw "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>mingw</literal>">
+<!ENTITY t-msgfmt "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>msgfmt</literal>">
+<!ENTITY t-msginit "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>msginit</literal>">
+<!ENTITY t-msgmerge "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>msgmerge</literal>">
+<!ENTITY t-mslib "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>mslib</literal>">
+<!ENTITY t-mslink "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>mslink</literal>">
+<!ENTITY t-mssdk "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>mssdk</literal>">
+<!ENTITY t-msvc "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>msvc</literal>">
+<!ENTITY t-msvs "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>msvs</literal>">
+<!ENTITY t-mwcc "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>mwcc</literal>">
+<!ENTITY t-mwld "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>mwld</literal>">
+<!ENTITY t-nasm "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>nasm</literal>">
+<!ENTITY t-packaging "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>packaging</literal>">
+<!ENTITY t-Packaging "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>Packaging</literal>">
+<!ENTITY t-pdf "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>pdf</literal>">
+<!ENTITY t-pdflatex "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>pdflatex</literal>">
+<!ENTITY t-pdftex "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>pdftex</literal>">
+<!ENTITY t-Perforce "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>Perforce</literal>">
+<!ENTITY t-qt "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>qt</literal>">
+<!ENTITY t-RCS "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>RCS</literal>">
+<!ENTITY t-rmic "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>rmic</literal>">
+<!ENTITY t-rpcgen "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>rpcgen</literal>">
+<!ENTITY t-SCCS "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>SCCS</literal>">
+<!ENTITY t-sgiar "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>sgiar</literal>">
+<!ENTITY t-sgicXX "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>sgic++</literal>">
+<!ENTITY t-sgicc "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>sgicc</literal>">
+<!ENTITY t-sgilink "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>sgilink</literal>">
+<!ENTITY t-sunar "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>sunar</literal>">
+<!ENTITY t-suncXX "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>sunc++</literal>">
+<!ENTITY t-suncc "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>suncc</literal>">
+<!ENTITY t-sunf77 "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>sunf77</literal>">
+<!ENTITY t-sunf90 "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>sunf90</literal>">
+<!ENTITY t-sunf95 "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>sunf95</literal>">
+<!ENTITY t-sunlink "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>sunlink</literal>">
+<!ENTITY t-swig "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>swig</literal>">
+<!ENTITY t-tar "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>tar</literal>">
+<!ENTITY t-tex "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>tex</literal>">
+<!ENTITY t-textfile "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>textfile</literal>">
+<!ENTITY t-tlib "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>tlib</literal>">
+<!ENTITY t-xgettext "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>xgettext</literal>">
+<!ENTITY t-yacc "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>yacc</literal>">
+<!ENTITY t-zip "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>zip</literal>">
+
+<!--
+THIS IS AN AUTOMATICALLY-GENERATED FILE. DO NOT EDIT.
+-->
+
+<!--
+
+ Entities that are links to the tool entries in the appendix.
+
+-->
+
+<!ENTITY t-link-386asm "<link linkend='t-386asm' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>386asm</literal></link>">
+<!ENTITY t-link-aixcXX "<link linkend='t-aixcXX' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>aixc++</literal></link>">
+<!ENTITY t-link-aixcc "<link linkend='t-aixcc' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>aixcc</literal></link>">
+<!ENTITY t-link-aixf77 "<link linkend='t-aixf77' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>aixf77</literal></link>">
+<!ENTITY t-link-aixlink "<link linkend='t-aixlink' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>aixlink</literal></link>">
+<!ENTITY t-link-applelink "<link linkend='t-applelink' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>applelink</literal></link>">
+<!ENTITY t-link-ar "<link linkend='t-ar' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>ar</literal></link>">
+<!ENTITY t-link-as "<link linkend='t-as' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>as</literal></link>">
+<!ENTITY t-link-bcc32 "<link linkend='t-bcc32' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>bcc32</literal></link>">
+<!ENTITY t-link-BitKeeper "<link linkend='t-BitKeeper' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>BitKeeper</literal></link>">
+<!ENTITY t-link-cc "<link linkend='t-cc' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>cc</literal></link>">
+<!ENTITY t-link-cvf "<link linkend='t-cvf' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>cvf</literal></link>">
+<!ENTITY t-link-CVS "<link linkend='t-CVS' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>CVS</literal></link>">
+<!ENTITY t-link-cXX "<link linkend='t-cXX' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>cXX</literal></link>">
+<!ENTITY t-link-default "<link linkend='t-default' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>default</literal></link>">
+<!ENTITY t-link-dmd "<link linkend='t-dmd' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>dmd</literal></link>">
+<!ENTITY t-link-dvi "<link linkend='t-dvi' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>dvi</literal></link>">
+<!ENTITY t-link-dvipdf "<link linkend='t-dvipdf' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>dvipdf</literal></link>">
+<!ENTITY t-link-dvips "<link linkend='t-dvips' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>dvips</literal></link>">
+<!ENTITY t-link-f03 "<link linkend='t-f03' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>f03</literal></link>">
+<!ENTITY t-link-f77 "<link linkend='t-f77' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>f77</literal></link>">
+<!ENTITY t-link-f90 "<link linkend='t-f90' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>f90</literal></link>">
+<!ENTITY t-link-f95 "<link linkend='t-f95' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>f95</literal></link>">
+<!ENTITY t-link-fortran "<link linkend='t-fortran' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>fortran</literal></link>">
+<!ENTITY t-link-gXX "<link linkend='t-gXX' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>g++</literal></link>">
+<!ENTITY t-link-g77 "<link linkend='t-g77' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>g77</literal></link>">
+<!ENTITY t-link-gas "<link linkend='t-gas' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>gas</literal></link>">
+<!ENTITY t-link-gcc "<link linkend='t-gcc' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>gcc</literal></link>">
+<!ENTITY t-link-gettext "<link linkend='t-gettext' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>gettext</literal></link>">
+<!ENTITY t-link-gfortran "<link linkend='t-gfortran' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>gfortran</literal></link>">
+<!ENTITY t-link-gnulink "<link linkend='t-gnulink' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>gnulink</literal></link>">
+<!ENTITY t-link-gs "<link linkend='t-gs' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>gs</literal></link>">
+<!ENTITY t-link-hpcXX "<link linkend='t-hpcXX' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>hpc++</literal></link>">
+<!ENTITY t-link-hpcc "<link linkend='t-hpcc' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>hpcc</literal></link>">
+<!ENTITY t-link-hplink "<link linkend='t-hplink' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>hplink</literal></link>">
+<!ENTITY t-link-icc "<link linkend='t-icc' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>icc</literal></link>">
+<!ENTITY t-link-icl "<link linkend='t-icl' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>icl</literal></link>">
+<!ENTITY t-link-ifl "<link linkend='t-ifl' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>ifl</literal></link>">
+<!ENTITY t-link-ifort "<link linkend='t-ifort' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>ifort</literal></link>">
+<!ENTITY t-link-ilink "<link linkend='t-ilink' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>ilink</literal></link>">
+<!ENTITY t-link-ilink32 "<link linkend='t-ilink32' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>ilink32</literal></link>">
+<!ENTITY t-link-install "<link linkend='t-install' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>install</literal></link>">
+<!ENTITY t-link-intelc "<link linkend='t-intelc' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>intelc</literal></link>">
+<!ENTITY t-link-jar "<link linkend='t-jar' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>jar</literal></link>">
+<!ENTITY t-link-javac "<link linkend='t-javac' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>javac</literal></link>">
+<!ENTITY t-link-javah "<link linkend='t-javah' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>javah</literal></link>">
+<!ENTITY t-link-latex "<link linkend='t-latex' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>latex</literal></link>">
+<!ENTITY t-link-lex "<link linkend='t-lex' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>lex</literal></link>">
+<!ENTITY t-link-link "<link linkend='t-link' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>link</literal></link>">
+<!ENTITY t-link-linkloc "<link linkend='t-linkloc' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>linkloc</literal></link>">
+<!ENTITY t-link-m4 "<link linkend='t-m4' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>m4</literal></link>">
+<!ENTITY t-link-masm "<link linkend='t-masm' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>masm</literal></link>">
+<!ENTITY t-link-midl "<link linkend='t-midl' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>midl</literal></link>">
+<!ENTITY t-link-mingw "<link linkend='t-mingw' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>mingw</literal></link>">
+<!ENTITY t-link-msgfmt "<link linkend='t-msgfmt' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>msgfmt</literal></link>">
+<!ENTITY t-link-msginit "<link linkend='t-msginit' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>msginit</literal></link>">
+<!ENTITY t-link-msgmerge "<link linkend='t-msgmerge' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>msgmerge</literal></link>">
+<!ENTITY t-link-mslib "<link linkend='t-mslib' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>mslib</literal></link>">
+<!ENTITY t-link-mslink "<link linkend='t-mslink' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>mslink</literal></link>">
+<!ENTITY t-link-mssdk "<link linkend='t-mssdk' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>mssdk</literal></link>">
+<!ENTITY t-link-msvc "<link linkend='t-msvc' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>msvc</literal></link>">
+<!ENTITY t-link-msvs "<link linkend='t-msvs' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>msvs</literal></link>">
+<!ENTITY t-link-mwcc "<link linkend='t-mwcc' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>mwcc</literal></link>">
+<!ENTITY t-link-mwld "<link linkend='t-mwld' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>mwld</literal></link>">
+<!ENTITY t-link-nasm "<link linkend='t-nasm' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>nasm</literal></link>">
+<!ENTITY t-link-packaging "<link linkend='t-packaging' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>packaging</literal></link>">
+<!ENTITY t-link-Packaging "<link linkend='t-Packaging' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>Packaging</literal></link>">
+<!ENTITY t-link-pdf "<link linkend='t-pdf' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>pdf</literal></link>">
+<!ENTITY t-link-pdflatex "<link linkend='t-pdflatex' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>pdflatex</literal></link>">
+<!ENTITY t-link-pdftex "<link linkend='t-pdftex' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>pdftex</literal></link>">
+<!ENTITY t-link-Perforce "<link linkend='t-Perforce' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>Perforce</literal></link>">
+<!ENTITY t-link-qt "<link linkend='t-qt' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>qt</literal></link>">
+<!ENTITY t-link-RCS "<link linkend='t-RCS' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>RCS</literal></link>">
+<!ENTITY t-link-rmic "<link linkend='t-rmic' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>rmic</literal></link>">
+<!ENTITY t-link-rpcgen "<link linkend='t-rpcgen' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>rpcgen</literal></link>">
+<!ENTITY t-link-SCCS "<link linkend='t-SCCS' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>SCCS</literal></link>">
+<!ENTITY t-link-sgiar "<link linkend='t-sgiar' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>sgiar</literal></link>">
+<!ENTITY t-link-sgicXX "<link linkend='t-sgicXX' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>sgic++</literal></link>">
+<!ENTITY t-link-sgicc "<link linkend='t-sgicc' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>sgicc</literal></link>">
+<!ENTITY t-link-sgilink "<link linkend='t-sgilink' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>sgilink</literal></link>">
+<!ENTITY t-link-sunar "<link linkend='t-sunar' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>sunar</literal></link>">
+<!ENTITY t-link-suncXX "<link linkend='t-suncXX' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>sunc++</literal></link>">
+<!ENTITY t-link-suncc "<link linkend='t-suncc' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>suncc</literal></link>">
+<!ENTITY t-link-sunf77 "<link linkend='t-sunf77' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>sunf77</literal></link>">
+<!ENTITY t-link-sunf90 "<link linkend='t-sunf90' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>sunf90</literal></link>">
+<!ENTITY t-link-sunf95 "<link linkend='t-sunf95' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>sunf95</literal></link>">
+<!ENTITY t-link-sunlink "<link linkend='t-sunlink' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>sunlink</literal></link>">
+<!ENTITY t-link-swig "<link linkend='t-swig' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>swig</literal></link>">
+<!ENTITY t-link-tar "<link linkend='t-tar' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>tar</literal></link>">
+<!ENTITY t-link-tex "<link linkend='t-tex' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>tex</literal></link>">
+<!ENTITY t-link-textfile "<link linkend='t-textfile' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>textfile</literal></link>">
+<!ENTITY t-link-tlib "<link linkend='t-tlib' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>tlib</literal></link>">
+<!ENTITY t-link-xgettext "<link linkend='t-xgettext' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>xgettext</literal></link>">
+<!ENTITY t-link-yacc "<link linkend='t-yacc' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>yacc</literal></link>">
+<!ENTITY t-link-zip "<link linkend='t-zip' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>zip</literal></link>">
+
+<!--
+THIS IS AN AUTOMATICALLY-GENERATED FILE. DO NOT EDIT.
+-->
diff --git a/doc/generated/variables.gen b/doc/generated/variables.gen
new file mode 100644
index 00000000..c2e83aeb
--- /dev/null
+++ b/doc/generated/variables.gen
@@ -0,0 +1,7175 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE sconsdoc [
+ <!ENTITY % scons SYSTEM "../scons.mod">
+ %scons;
+ <!ENTITY % builders-mod SYSTEM "builders.mod">
+ %builders-mod;
+ <!ENTITY % functions-mod SYSTEM "functions.mod">
+ %functions-mod;
+ <!ENTITY % tools-mod SYSTEM "tools.mod">
+ %tools-mod;
+ <!ENTITY % variables-mod SYSTEM "variables.mod">
+ %variables-mod;
+]>
+
+<variablelist xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0/scons.xsd scons.xsd">
+ <varlistentry id="cv-AR">
+ <term>AR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The static library archiver.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-ARCHITECTURE">
+ <term>ARCHITECTURE</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Specifies the system architecture for which
+the package is being built.
+The default is the system architecture
+of the machine on which SCons is running.
+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.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-ARCOM">
+ <term>ARCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to generate a static library from object files.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-ARCOMSTR">
+ <term>ARCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when an object file
+is generated from an assembly-language source file.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-ARCOM"><envar>$ARCOM</envar></link> (the command line) is displayed.
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment(ARCOMSTR = "Archiving $TARGET")
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-ARFLAGS">
+ <term>ARFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+General options passed to the static library archiver.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-AS">
+ <term>AS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The assembler.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-ASCOM">
+ <term>ASCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to generate an object file
+from an assembly-language source file.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-ASCOMSTR">
+ <term>ASCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when an object file
+is generated from an assembly-language source file.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-ASCOM"><envar>$ASCOM</envar></link> (the command line) is displayed.
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment(ASCOMSTR = "Assembling $TARGET")
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-ASFLAGS">
+ <term>ASFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+General options passed to the assembler.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-ASPPCOM">
+ <term>ASPPCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to assemble an assembly-language
+source file into an object file
+after first running the file through the C preprocessor.
+Any options specified
+in the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-ASFLAGS"><envar>$ASFLAGS</envar></link> and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-CPPFLAGS"><envar>$CPPFLAGS</envar></link> construction variables
+are included on this command line.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-ASPPCOMSTR">
+ <term>ASPPCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when an object file
+is generated from an assembly-language source file
+after first running the file through the C preprocessor.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-ASPPCOM"><envar>$ASPPCOM</envar></link> (the command line) is displayed.
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment(ASPPCOMSTR = "Assembling $TARGET")
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-ASPPFLAGS">
+ <term>ASPPFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+General options when an assembling an assembly-language
+source file into an object file
+after first running the file through the C preprocessor.
+The default is to use the value of <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-ASFLAGS"><envar>$ASFLAGS</envar></link>.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-BIBTEX">
+ <term>BIBTEX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The bibliography generator for the TeX formatter and typesetter and the
+LaTeX structured formatter and typesetter.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-BIBTEXCOM">
+ <term>BIBTEXCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to call the bibliography generator for the
+TeX formatter and typesetter and the LaTeX structured formatter and
+typesetter.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-BIBTEXCOMSTR">
+ <term>BIBTEXCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when generating a bibliography
+for TeX or LaTeX.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-BIBTEXCOM"><envar>$BIBTEXCOM</envar></link> (the command line) is displayed.
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment(BIBTEXCOMSTR = "Generating bibliography $TARGET")
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-BIBTEXFLAGS">
+ <term>BIBTEXFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+General options passed to the bibliography generator for the TeX formatter
+and typesetter and the LaTeX structured formatter and typesetter.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-BITKEEPER">
+ <term>BITKEEPER</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The BitKeeper executable.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-BITKEEPERCOM">
+ <term>BITKEEPERCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line for
+fetching source files using BitKeeper.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-BITKEEPERCOMSTR">
+ <term>BITKEEPERCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when fetching
+a source file using BitKeeper.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-BITKEEPERCOM"><envar>$BITKEEPERCOM</envar></link>
+(the command line) is displayed.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-BITKEEPERGET">
+ <term>BITKEEPERGET</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command (<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-BITKEEPER"><envar>$BITKEEPER</envar></link>) and subcommand
+for fetching source files using BitKeeper.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-BITKEEPERGETFLAGS">
+ <term>BITKEEPERGETFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Options that are passed to the BitKeeper
+<command>get</command>
+subcommand.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-BUILDERS">
+ <term>BUILDERS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A dictionary mapping the names of the builders
+available through this environment
+to underlying Builder objects.
+Builders named
+Alias, CFile, CXXFile, DVI, Library, Object, PDF, PostScript, and Program
+are available by default.
+If you initialize this variable when an
+Environment is created:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment(BUILDERS = {'NewBuilder' : foo})
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+the default Builders will no longer be available.
+To use a new Builder object in addition to the default Builders,
+add your new Builder object like this:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment()
+env.Append(BUILDERS = {'NewBuilder' : foo})
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+or this:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment()
+env['BUILDERS]['NewBuilder'] = foo
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-CC">
+ <term>CC</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The C compiler.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-CCCOM">
+ <term>CCCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to compile a C source file to a (static) object
+file. Any options specified in the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-CFLAGS"><envar>$CFLAGS</envar></link>, <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-CCFLAGS"><envar>$CCFLAGS</envar></link> and
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-CPPFLAGS"><envar>$CPPFLAGS</envar></link> construction variables are included on this command
+line.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-CCCOMSTR">
+ <term>CCCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when a C source file
+is compiled to a (static) object file.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-CCCOM"><envar>$CCCOM</envar></link> (the command line) is displayed.
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment(CCCOMSTR = "Compiling static object $TARGET")
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-CCFLAGS">
+ <term>CCFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+General options that are passed to the C and C++ compilers.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-CCPCHFLAGS">
+ <term>CCPCHFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Options added to the compiler command line
+to support building with precompiled headers.
+The default value expands expands to the appropriate
+Microsoft Visual C++ command-line options
+when the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-PCH"><envar>$PCH</envar></link> construction variable is set.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-CCPDBFLAGS">
+ <term>CCPDBFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Options added to the compiler command line
+to support storing debugging information in a
+Microsoft Visual C++ PDB file.
+The default value expands expands to appropriate
+Microsoft Visual C++ command-line options
+when the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-PDB"><envar>$PDB</envar></link> construction variable is set.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The Visual C++ compiler option that SCons uses by default
+to generate PDB information is <option>/Z7</option>.
+This works correctly with parallel (<option>-j</option>) builds
+because it embeds the debug information in the intermediate object files,
+as opposed to sharing a single PDB file between multiple object files.
+This is also the only way to get debug information
+embedded into a static library.
+Using the <option>/Zi</option> instead may yield improved
+link-time performance,
+although parallel builds will no longer work.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+You can generate PDB files with the <option>/Zi</option>
+switch by overriding the default <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-CCPDBFLAGS"><envar>$CCPDBFLAGS</envar></link> variable as follows:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env['CCPDBFLAGS'] = ['${(PDB and "/Zi /Fd%s" % File(PDB)) or ""}']
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+An alternative would be to use the <option>/Zi</option>
+to put the debugging information in a separate <filename>.pdb</filename>
+file for each object file by overriding
+the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-CCPDBFLAGS"><envar>$CCPDBFLAGS</envar></link> variable as follows:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env['CCPDBFLAGS'] = '/Zi /Fd${TARGET}.pdb'
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-CCVERSION">
+ <term>CCVERSION</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The version number of the C compiler.
+This may or may not be set,
+depending on the specific C compiler being used.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-CFILESUFFIX">
+ <term>CFILESUFFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The suffix for C source files.
+This is used by the internal CFile builder
+when generating C files from Lex (.l) or YACC (.y) input files.
+The default suffix, of course, is
+<filename>.c</filename>
+(lower case).
+On case-insensitive systems (like Windows),
+SCons also treats
+<filename>.C</filename>
+(upper case) files
+as C files.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-CFLAGS">
+ <term>CFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+General options that are passed to the C compiler (C only; not C++).
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-CHANGE_SPECFILE">
+ <term>CHANGE_SPECFILE</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A hook for modifying the file that controls the packaging build
+(the <filename>.spec</filename> for RPM,
+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>
+ <varlistentry id="cv-CHANGED_SOURCES">
+ <term>CHANGED_SOURCES</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A reserved variable name
+that may not be set or used in a construction environment.
+(See "Variable Substitution," below.)
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-CHANGED_TARGETS">
+ <term>CHANGED_TARGETS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A reserved variable name
+that may not be set or used in a construction environment.
+(See "Variable Substitution," below.)
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-CHANGELOG">
+ <term>CHANGELOG</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The name of a file containing the change log text
+to be included in the package.
+This is included as the
+<literal>%changelog</literal>
+section of the RPM
+<filename>.spec</filename> file.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-_concat">
+ <term>_concat</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A function used to produce variables like <envar xmlns="http://www.scons.org/dbxsd/v1.0">$_CPPINCFLAGS</envar>. It takes
+four or five
+arguments: a prefix to concatenate onto each element, a list of
+elements, a suffix to concatenate onto each element, an environment
+for variable interpolation, and an optional function that will be
+called to transform the list before concatenation.
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env['_CPPINCFLAGS'] = '$( ${_concat(INCPREFIX, CPPPATH, INCSUFFIX, __env__, RDirs)} $)',
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-CONFIGUREDIR">
+ <term>CONFIGUREDIR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The name of the directory in which
+Configure context test files are written.
+The default is
+<filename>.sconf_temp</filename>
+in the top-level directory
+containing the
+<filename>SConstruct</filename>
+file.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-CONFIGURELOG">
+ <term>CONFIGURELOG</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The name of the Configure context log file.
+The default is
+<filename>config.log</filename>
+in the top-level directory
+containing the
+<filename>SConstruct</filename>
+file.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-_CPPDEFFLAGS">
+ <term>_CPPDEFFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+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>
+to the beginning and end
+of each definition in <envar xmlns="http://www.scons.org/dbxsd/v1.0">$CPPDEFINES</envar>.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-CPPDEFINES">
+ <term>CPPDEFINES</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A platform independent specification of C preprocessor definitions.
+The definitions will be added to command lines
+through the automatically-generated
+<envar xmlns="http://www.scons.org/dbxsd/v1.0">$_CPPDEFFLAGS</envar> construction variable (see above),
+which is constructed according to
+the type of value of <envar xmlns="http://www.scons.org/dbxsd/v1.0">$CPPDEFINES</envar>:
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+If <envar xmlns="http://www.scons.org/dbxsd/v1.0">$CPPDEFINES</envar> is a string,
+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.
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+# Will add -Dxyz to POSIX compiler command lines,
+# and /Dxyz to Microsoft Visual C++ command lines.
+env = Environment(CPPDEFINES='xyz')
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+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
+of each element in the list.
+If any element is a list or tuple,
+then the first item is the name being
+defined and the second item is its value:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+# Will add -DB=2 -DA to POSIX compiler command lines,
+# and /DB=2 /DA to Microsoft Visual C++ command lines.
+env = Environment(CPPDEFINES=[('B', 2), 'A'])
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+If <envar xmlns="http://www.scons.org/dbxsd/v1.0">$CPPDEFINES</envar> is a dictionary,
+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
+of each item from the dictionary.
+The key of each dictionary item
+is a name being defined
+to the dictionary item's corresponding value;
+if the value is
+<literal>None</literal>,
+then the name is defined without an explicit value.
+Note that the resulting flags are sorted by keyword
+to ensure that the order of the options on the
+command line is consistent each time
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+is run.
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+# Will add -DA -DB=2 to POSIX compiler command lines,
+# and /DA /DB=2 to Microsoft Visual C++ command lines.
+env = Environment(CPPDEFINES={'B':2, 'A':None})
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-CPPDEFPREFIX">
+ <term>CPPDEFPREFIX</term>
+ <listitem>
+<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
+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>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-CPPDEFSUFFIX">
+ <term>CPPDEFSUFFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The suffix used to specify preprocessor definitions
+on the C compiler command line.
+This will be appended to the end 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>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-CPPFLAGS">
+ <term>CPPFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+User-specified C preprocessor options.
+These will be included in any command that uses the C preprocessor,
+including not just compilation of C and C++ source files
+via the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-CCCOM"><envar>$CCCOM</envar></link>,
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHCCCOM"><envar>$SHCCCOM</envar></link>,
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-CXXCOM"><envar>$CXXCOM</envar></link> and
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHCXXCOM"><envar>$SHCXXCOM</envar></link> command lines,
+but also the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FORTRANPPCOM"><envar>$FORTRANPPCOM</envar></link>,
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHFORTRANPPCOM"><envar>$SHFORTRANPPCOM</envar></link>,
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F77PPCOM"><envar>$F77PPCOM</envar></link> and
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHF77PPCOM"><envar>$SHF77PPCOM</envar></link> command lines
+used to compile a Fortran source file,
+and the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-ASPPCOM"><envar>$ASPPCOM</envar></link> command line
+used to assemble an assembly language source file,
+after first running each file through the C preprocessor.
+Note that this variable does
+<emphasis>not</emphasis>
+contain
+<option>-I</option>
+(or similar) include search path options
+that scons generates automatically from <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-CPPPATH"><envar>$CPPPATH</envar></link>.
+See <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-_CPPINCFLAGS"><envar>$_CPPINCFLAGS</envar></link>, below,
+for the variable that expands to those options.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-_CPPINCFLAGS">
+ <term>_CPPINCFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+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>
+to the beginning and end
+of each directory in <envar xmlns="http://www.scons.org/dbxsd/v1.0">$CPPPATH</envar>.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-CPPPATH">
+ <term>CPPPATH</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The list of directories that the C preprocessor will search for include
+directories. The C/C++ implicit dependency scanner will search these
+directories for include files. Don't explicitly put include directory
+arguments in CCFLAGS or CXXFLAGS because the result will be non-portable
+and the directories will not be searched by the dependency scanner. Note:
+directory names in CPPPATH will be looked-up relative to the SConscript
+directory when they are used in a command. To force
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+to look-up a directory relative to the root of the source tree use #:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment(CPPPATH='#/include')
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The directory look-up can also be forced using the
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Dir</function>()
+function:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+include = Dir('include')
+env = Environment(CPPPATH=include)
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The directory list will be added to command lines
+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
+<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
+of each directory in <envar xmlns="http://www.scons.org/dbxsd/v1.0">$CPPPATH</envar>.
+Any command lines you define that need
+the CPPPATH directory list should
+include <envar xmlns="http://www.scons.org/dbxsd/v1.0">$_CPPINCFLAGS</envar>:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment(CCCOM="my_compiler $_CPPINCFLAGS -c -o $TARGET $SOURCE")
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-CPPSUFFIXES">
+ <term>CPPSUFFIXES</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The list of suffixes of files that will be scanned
+for C preprocessor implicit dependencies
+(#include lines).
+The default list is:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+[".c", ".C", ".cxx", ".cpp", ".c++", ".cc",
+ ".h", ".H", ".hxx", ".hpp", ".hh",
+ ".F", ".fpp", ".FPP",
+ ".m", ".mm",
+ ".S", ".spp", ".SPP"]
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-CVS">
+ <term>CVS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The CVS executable.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-CVSCOFLAGS">
+ <term>CVSCOFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Options that are passed to the CVS checkout subcommand.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-CVSCOM">
+ <term>CVSCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to
+fetch source files from a CVS repository.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-CVSCOMSTR">
+ <term>CVSCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when fetching
+a source file from a CVS repository.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-CVSCOM"><envar>$CVSCOM</envar></link>
+(the command line) is displayed.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-CVSFLAGS">
+ <term>CVSFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+General options that are passed to CVS.
+By default, this is set to
+<literal>-d $CVSREPOSITORY</literal>
+to specify from where the files must be fetched.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-CVSREPOSITORY">
+ <term>CVSREPOSITORY</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The path to the CVS repository.
+This is referenced in the default
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-CVSFLAGS"><envar>$CVSFLAGS</envar></link> value.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-CXX">
+ <term>CXX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The C++ compiler.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-CXXCOM">
+ <term>CXXCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to compile a C++ source file to an object file.
+Any options specified in the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-CXXFLAGS"><envar>$CXXFLAGS</envar></link> and
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-CPPFLAGS"><envar>$CPPFLAGS</envar></link> construction variables
+are included on this command line.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-CXXCOMSTR">
+ <term>CXXCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when a C++ source file
+is compiled to a (static) object file.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-CXXCOM"><envar>$CXXCOM</envar></link> (the command line) is displayed.
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment(CXXCOMSTR = "Compiling static object $TARGET")
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-CXXFILESUFFIX">
+ <term>CXXFILESUFFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The suffix for C++ source files.
+This is used by the internal CXXFile builder
+when generating C++ files from Lex (.ll) or YACC (.yy) input files.
+The default suffix is
+<filename>.cc</filename>.
+SCons also treats files with the suffixes
+<filename>.cpp</filename>,
+<filename>.cxx</filename>,
+<filename>.c++</filename>,
+and
+<filename>.C++</filename>
+as C++ files,
+and files with
+<filename>.mm</filename>
+suffixes as Objective C++ files.
+On case-sensitive systems (Linux, UNIX, and other POSIX-alikes),
+SCons also treats
+<filename>.C</filename>
+(upper case) files
+as C++ files.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-CXXFLAGS">
+ <term>CXXFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+General options that are passed to the C++ compiler.
+By default, this includes the value of <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-CCFLAGS"><envar>$CCFLAGS</envar></link>,
+so that setting <envar xmlns="http://www.scons.org/dbxsd/v1.0">$CCFLAGS</envar> affects both C and C++ compilation.
+If you want to add C++-specific flags,
+you must set or override the value of <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-CXXFLAGS"><envar>$CXXFLAGS</envar></link>.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-CXXVERSION">
+ <term>CXXVERSION</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The version number of the C++ compiler.
+This may or may not be set,
+depending on the specific C++ compiler being used.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-DESCRIPTION">
+ <term>DESCRIPTION</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A long description of the project being packaged.
+This is included in the relevant section
+of the file that controls the packaging build.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-DESCRIPTION_lang">
+ <term>DESCRIPTION_lang</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A language-specific long description for
+the specified <varname>lang</varname>.
+This is used to populate a
+<literal>%description -l</literal>
+section of an RPM
+<filename>.spec</filename> file.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-Dir">
+ <term>Dir</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A function that converts a string
+into a Dir instance relative to the target being built.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A function that converts a string
+into a Dir instance relative to the target being built.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-Dirs">
+ <term>Dirs</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A function that converts a list of strings
+into a list of Dir instances relative to the target being built.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-DSUFFIXES">
+ <term>DSUFFIXES</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The list of suffixes of files that will be scanned
+for imported D package files.
+The default list is:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+['.d']
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-DVIPDF">
+ <term>DVIPDF</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The TeX DVI file to PDF file converter.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-DVIPDFCOM">
+ <term>DVIPDFCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to convert TeX DVI files into a PDF file.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-DVIPDFCOMSTR">
+ <term>DVIPDFCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when a TeX DVI file
+is converted into a PDF file.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-DVIPDFCOM"><envar>$DVIPDFCOM</envar></link> (the command line) is displayed.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-DVIPDFFLAGS">
+ <term>DVIPDFFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+General options passed to the TeX DVI file to PDF file converter.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-DVIPS">
+ <term>DVIPS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The TeX DVI file to PostScript converter.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-DVIPSFLAGS">
+ <term>DVIPSFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+General options passed to the TeX DVI file to PostScript converter.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-ENV">
+ <term>ENV</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A dictionary of environment variables
+to use when invoking commands. When
+<envar xmlns="http://www.scons.org/dbxsd/v1.0">$ENV</envar> is used in a command all list
+values will be joined using the path separator and any other non-string
+values will simply be coerced to a string.
+Note that, by default,
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+does
+<emphasis>not</emphasis>
+propagate the environment in force when you
+execute
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+to the commands used to build target files.
+This is so that builds will be guaranteed
+repeatable regardless of the environment
+variables set at the time
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+is invoked.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+If you want to propagate your
+environment variables
+to the commands executed
+to build target files,
+you must do so explicitly:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+import os
+env = Environment(ENV = os.environ)
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Note that you can choose only to propagate
+certain environment variables.
+A common example is
+the system
+<envar>PATH</envar>
+environment variable,
+so that
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+uses the same utilities
+as the invoking shell (or other process):
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+import os
+env = Environment(ENV = {'PATH' : os.environ['PATH']})
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-ESCAPE">
+ <term>ESCAPE</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A function that will be called to escape shell special characters in
+command lines. The function should take one argument: the command line
+string to escape; and should return the escaped command line.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-F03">
+ <term>F03</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The Fortran 03 compiler.
+You should normally set the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FORTRAN"><envar>$FORTRAN</envar></link> variable,
+which specifies the default Fortran compiler
+for all Fortran versions.
+You only need to set <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F03"><envar>$F03</envar></link> if you need to use a specific compiler
+or compiler version for Fortran 03 files.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-F03COM">
+ <term>F03COM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to compile a Fortran 03 source file to an object file.
+You only need to set <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F03COM"><envar>$F03COM</envar></link> if you need to use a specific
+command line for Fortran 03 files.
+You should normally set the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FORTRANCOM"><envar>$FORTRANCOM</envar></link> variable,
+which specifies the default command line
+for all Fortran versions.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-F03COMSTR">
+ <term>F03COMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when a Fortran 03 source file
+is compiled to an object file.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F03COM"><envar>$F03COM</envar></link> or <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FORTRANCOM"><envar>$FORTRANCOM</envar></link>
+(the command line) is displayed.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-F03FILESUFFIXES">
+ <term>F03FILESUFFIXES</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The list of file extensions for which the F03 dialect will be used. By
+default, this is ['.f03']
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-F03FLAGS">
+ <term>F03FLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+General user-specified options that are passed to the Fortran 03 compiler.
+Note that this variable does
+<emphasis>not</emphasis>
+contain
+<option>-I</option>
+(or similar) include search path options
+that scons generates automatically from <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F03PATH"><envar>$F03PATH</envar></link>.
+See
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-_F03INCFLAGS"><envar>$_F03INCFLAGS</envar></link>
+below,
+for the variable that expands to those options.
+You only need to set <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F03FLAGS"><envar>$F03FLAGS</envar></link> if you need to define specific
+user options for Fortran 03 files.
+You should normally set the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FORTRANFLAGS"><envar>$FORTRANFLAGS</envar></link> variable,
+which specifies the user-specified options
+passed to the default Fortran compiler
+for all Fortran versions.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-_F03INCFLAGS">
+ <term>_F03INCFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+An automatically-generated construction variable
+containing the Fortran 03 compiler command-line options
+for specifying directories to be searched for include files.
+The value of <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-_F03INCFLAGS"><envar>$_F03INCFLAGS</envar></link> is created
+by 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-F03PATH"><envar>$F03PATH</envar></link>.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-F03PATH">
+ <term>F03PATH</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The list of directories that the Fortran 03 compiler will search for include
+directories. The implicit dependency scanner will search these
+directories for include files. Don't explicitly put include directory
+arguments in <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F03FLAGS"><envar>$F03FLAGS</envar></link> because the result will be non-portable
+and the directories will not be searched by the dependency scanner. Note:
+directory names in <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F03PATH"><envar>$F03PATH</envar></link> will be looked-up relative to the SConscript
+directory when they are used in a command. To force
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+to look-up a directory relative to the root of the source tree use #:
+You only need to set <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F03PATH"><envar>$F03PATH</envar></link> if you need to define a specific
+include path for Fortran 03 files.
+You should normally set the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FORTRANPATH"><envar>$FORTRANPATH</envar></link> variable,
+which specifies the include path
+for the default Fortran compiler
+for all Fortran versions.
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment(F03PATH='#/include')
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The directory look-up can also be forced using the
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Dir</function>()
+function:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+include = Dir('include')
+env = Environment(F03PATH=include)
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The directory list will be added to command lines
+through the automatically-generated
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-_F03INCFLAGS"><envar>$_F03INCFLAGS</envar></link>
+construction variable,
+which is constructed by
+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
+of each directory in <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F03PATH"><envar>$F03PATH</envar></link>.
+Any command lines you define that need
+the F03PATH directory list should
+include <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-_F03INCFLAGS"><envar>$_F03INCFLAGS</envar></link>:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment(F03COM="my_compiler $_F03INCFLAGS -c -o $TARGET $SOURCE")
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-F03PPCOM">
+ <term>F03PPCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to compile a Fortran 03 source file to an object file
+after first running the file through the C preprocessor.
+Any options specified in the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F03FLAGS"><envar>$F03FLAGS</envar></link> and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-CPPFLAGS"><envar>$CPPFLAGS</envar></link> construction variables
+are included on this command line.
+You only need to set <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F03PPCOM"><envar>$F03PPCOM</envar></link> if you need to use a specific
+C-preprocessor command line for Fortran 03 files.
+You should normally set the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FORTRANPPCOM"><envar>$FORTRANPPCOM</envar></link> variable,
+which specifies the default C-preprocessor command line
+for all Fortran versions.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-F03PPCOMSTR">
+ <term>F03PPCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when a Fortran 03 source file
+is compiled to an object file
+after first running the file through the C preprocessor.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F03PPCOM"><envar>$F03PPCOM</envar></link> or <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FORTRANPPCOM"><envar>$FORTRANPPCOM</envar></link>
+(the command line) is displayed.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-F03PPFILESUFFIXES">
+ <term>F03PPFILESUFFIXES</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The list of file extensions for which the compilation + preprocessor pass for
+F03 dialect will be used. By default, this is empty
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-F77">
+ <term>F77</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The Fortran 77 compiler.
+You should normally set the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FORTRAN"><envar>$FORTRAN</envar></link> variable,
+which specifies the default Fortran compiler
+for all Fortran versions.
+You only need to set <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F77"><envar>$F77</envar></link> if you need to use a specific compiler
+or compiler version for Fortran 77 files.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-F77COM">
+ <term>F77COM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to compile a Fortran 77 source file to an object file.
+You only need to set <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F77COM"><envar>$F77COM</envar></link> if you need to use a specific
+command line for Fortran 77 files.
+You should normally set the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FORTRANCOM"><envar>$FORTRANCOM</envar></link> variable,
+which specifies the default command line
+for all Fortran versions.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-F77COMSTR">
+ <term>F77COMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when a Fortran 77 source file
+is compiled to an object file.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F77COM"><envar>$F77COM</envar></link> or <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FORTRANCOM"><envar>$FORTRANCOM</envar></link>
+(the command line) is displayed.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-F77FILESUFFIXES">
+ <term>F77FILESUFFIXES</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The list of file extensions for which the F77 dialect will be used. By
+default, this is ['.f77']
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-F77FLAGS">
+ <term>F77FLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+General user-specified options that are passed to the Fortran 77 compiler.
+Note that this variable does
+<emphasis>not</emphasis>
+contain
+<option>-I</option>
+(or similar) include search path options
+that scons generates automatically from <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F77PATH"><envar>$F77PATH</envar></link>.
+See
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-_F77INCFLAGS"><envar>$_F77INCFLAGS</envar></link>
+below,
+for the variable that expands to those options.
+You only need to set <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F77FLAGS"><envar>$F77FLAGS</envar></link> if you need to define specific
+user options for Fortran 77 files.
+You should normally set the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FORTRANFLAGS"><envar>$FORTRANFLAGS</envar></link> variable,
+which specifies the user-specified options
+passed to the default Fortran compiler
+for all Fortran versions.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-_F77INCFLAGS">
+ <term>_F77INCFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+An automatically-generated construction variable
+containing the Fortran 77 compiler command-line options
+for specifying directories to be searched for include files.
+The value of <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-_F77INCFLAGS"><envar>$_F77INCFLAGS</envar></link> is created
+by 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-F77PATH"><envar>$F77PATH</envar></link>.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-F77PATH">
+ <term>F77PATH</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The list of directories that the Fortran 77 compiler will search for include
+directories. The implicit dependency scanner will search these
+directories for include files. Don't explicitly put include directory
+arguments in <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F77FLAGS"><envar>$F77FLAGS</envar></link> because the result will be non-portable
+and the directories will not be searched by the dependency scanner. Note:
+directory names in <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F77PATH"><envar>$F77PATH</envar></link> will be looked-up relative to the SConscript
+directory when they are used in a command. To force
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+to look-up a directory relative to the root of the source tree use #:
+You only need to set <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F77PATH"><envar>$F77PATH</envar></link> if you need to define a specific
+include path for Fortran 77 files.
+You should normally set the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FORTRANPATH"><envar>$FORTRANPATH</envar></link> variable,
+which specifies the include path
+for the default Fortran compiler
+for all Fortran versions.
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment(F77PATH='#/include')
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The directory look-up can also be forced using the
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Dir</function>()
+function:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+include = Dir('include')
+env = Environment(F77PATH=include)
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The directory list will be added to command lines
+through the automatically-generated
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-_F77INCFLAGS"><envar>$_F77INCFLAGS</envar></link>
+construction variable,
+which is constructed by
+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
+of each directory in <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F77PATH"><envar>$F77PATH</envar></link>.
+Any command lines you define that need
+the F77PATH directory list should
+include <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-_F77INCFLAGS"><envar>$_F77INCFLAGS</envar></link>:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment(F77COM="my_compiler $_F77INCFLAGS -c -o $TARGET $SOURCE")
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-F77PPCOM">
+ <term>F77PPCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to compile a Fortran 77 source file to an object file
+after first running the file through the C preprocessor.
+Any options specified in the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F77FLAGS"><envar>$F77FLAGS</envar></link> and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-CPPFLAGS"><envar>$CPPFLAGS</envar></link> construction variables
+are included on this command line.
+You only need to set <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F77PPCOM"><envar>$F77PPCOM</envar></link> if you need to use a specific
+C-preprocessor command line for Fortran 77 files.
+You should normally set the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FORTRANPPCOM"><envar>$FORTRANPPCOM</envar></link> variable,
+which specifies the default C-preprocessor command line
+for all Fortran versions.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-F77PPCOMSTR">
+ <term>F77PPCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when a Fortran 77 source file
+is compiled to an object file
+after first running the file through the C preprocessor.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F77PPCOM"><envar>$F77PPCOM</envar></link> or <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FORTRANPPCOM"><envar>$FORTRANPPCOM</envar></link>
+(the command line) is displayed.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-F77PPFILESUFFIXES">
+ <term>F77PPFILESUFFIXES</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The list of file extensions for which the compilation + preprocessor pass for
+F77 dialect will be used. By default, this is empty
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-F90">
+ <term>F90</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The Fortran 90 compiler.
+You should normally set the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FORTRAN"><envar>$FORTRAN</envar></link> variable,
+which specifies the default Fortran compiler
+for all Fortran versions.
+You only need to set <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F90"><envar>$F90</envar></link> if you need to use a specific compiler
+or compiler version for Fortran 90 files.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-F90COM">
+ <term>F90COM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to compile a Fortran 90 source file to an object file.
+You only need to set <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F90COM"><envar>$F90COM</envar></link> if you need to use a specific
+command line for Fortran 90 files.
+You should normally set the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FORTRANCOM"><envar>$FORTRANCOM</envar></link> variable,
+which specifies the default command line
+for all Fortran versions.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-F90COMSTR">
+ <term>F90COMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when a Fortran 90 source file
+is compiled to an object file.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F90COM"><envar>$F90COM</envar></link> or <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FORTRANCOM"><envar>$FORTRANCOM</envar></link>
+(the command line) is displayed.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-F90FILESUFFIXES">
+ <term>F90FILESUFFIXES</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The list of file extensions for which the F90 dialect will be used. By
+default, this is ['.f90']
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-F90FLAGS">
+ <term>F90FLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+General user-specified options that are passed to the Fortran 90 compiler.
+Note that this variable does
+<emphasis>not</emphasis>
+contain
+<option>-I</option>
+(or similar) include search path options
+that scons generates automatically from <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F90PATH"><envar>$F90PATH</envar></link>.
+See
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-_F90INCFLAGS"><envar>$_F90INCFLAGS</envar></link>
+below,
+for the variable that expands to those options.
+You only need to set <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F90FLAGS"><envar>$F90FLAGS</envar></link> if you need to define specific
+user options for Fortran 90 files.
+You should normally set the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FORTRANFLAGS"><envar>$FORTRANFLAGS</envar></link> variable,
+which specifies the user-specified options
+passed to the default Fortran compiler
+for all Fortran versions.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-_F90INCFLAGS">
+ <term>_F90INCFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+An automatically-generated construction variable
+containing the Fortran 90 compiler command-line options
+for specifying directories to be searched for include files.
+The value of <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-_F90INCFLAGS"><envar>$_F90INCFLAGS</envar></link> is created
+by 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-F90PATH"><envar>$F90PATH</envar></link>.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-F90PATH">
+ <term>F90PATH</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The list of directories that the Fortran 90 compiler will search for include
+directories. The implicit dependency scanner will search these
+directories for include files. Don't explicitly put include directory
+arguments in <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F90FLAGS"><envar>$F90FLAGS</envar></link> because the result will be non-portable
+and the directories will not be searched by the dependency scanner. Note:
+directory names in <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F90PATH"><envar>$F90PATH</envar></link> will be looked-up relative to the SConscript
+directory when they are used in a command. To force
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+to look-up a directory relative to the root of the source tree use #:
+You only need to set <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F90PATH"><envar>$F90PATH</envar></link> if you need to define a specific
+include path for Fortran 90 files.
+You should normally set the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FORTRANPATH"><envar>$FORTRANPATH</envar></link> variable,
+which specifies the include path
+for the default Fortran compiler
+for all Fortran versions.
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment(F90PATH='#/include')
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The directory look-up can also be forced using the
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Dir</function>()
+function:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+include = Dir('include')
+env = Environment(F90PATH=include)
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The directory list will be added to command lines
+through the automatically-generated
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-_F90INCFLAGS"><envar>$_F90INCFLAGS</envar></link>
+construction variable,
+which is constructed by
+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
+of each directory in <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F90PATH"><envar>$F90PATH</envar></link>.
+Any command lines you define that need
+the F90PATH directory list should
+include <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-_F90INCFLAGS"><envar>$_F90INCFLAGS</envar></link>:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment(F90COM="my_compiler $_F90INCFLAGS -c -o $TARGET $SOURCE")
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-F90PPCOM">
+ <term>F90PPCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to compile a Fortran 90 source file to an object file
+after first running the file through the C preprocessor.
+Any options specified in the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F90FLAGS"><envar>$F90FLAGS</envar></link> and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-CPPFLAGS"><envar>$CPPFLAGS</envar></link> construction variables
+are included on this command line.
+You only need to set <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F90PPCOM"><envar>$F90PPCOM</envar></link> if you need to use a specific
+C-preprocessor command line for Fortran 90 files.
+You should normally set the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FORTRANPPCOM"><envar>$FORTRANPPCOM</envar></link> variable,
+which specifies the default C-preprocessor command line
+for all Fortran versions.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-F90PPCOMSTR">
+ <term>F90PPCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when a Fortran 90 source file
+is compiled after first running the file through the C preprocessor.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F90PPCOM"><envar>$F90PPCOM</envar></link> or <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FORTRANPPCOM"><envar>$FORTRANPPCOM</envar></link>
+(the command line) is displayed.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-F90PPFILESUFFIXES">
+ <term>F90PPFILESUFFIXES</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The list of file extensions for which the compilation + preprocessor pass for
+F90 dialect will be used. By default, this is empty
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-F95">
+ <term>F95</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The Fortran 95 compiler.
+You should normally set the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FORTRAN"><envar>$FORTRAN</envar></link> variable,
+which specifies the default Fortran compiler
+for all Fortran versions.
+You only need to set <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F95"><envar>$F95</envar></link> if you need to use a specific compiler
+or compiler version for Fortran 95 files.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-F95COM">
+ <term>F95COM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to compile a Fortran 95 source file to an object file.
+You only need to set <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F95COM"><envar>$F95COM</envar></link> if you need to use a specific
+command line for Fortran 95 files.
+You should normally set the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FORTRANCOM"><envar>$FORTRANCOM</envar></link> variable,
+which specifies the default command line
+for all Fortran versions.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-F95COMSTR">
+ <term>F95COMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when a Fortran 95 source file
+is compiled to an object file.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F95COM"><envar>$F95COM</envar></link> or <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FORTRANCOM"><envar>$FORTRANCOM</envar></link>
+(the command line) is displayed.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-F95FILESUFFIXES">
+ <term>F95FILESUFFIXES</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The list of file extensions for which the F95 dialect will be used. By
+default, this is ['.f95']
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-F95FLAGS">
+ <term>F95FLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+General user-specified options that are passed to the Fortran 95 compiler.
+Note that this variable does
+<emphasis>not</emphasis>
+contain
+<option>-I</option>
+(or similar) include search path options
+that scons generates automatically from <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F95PATH"><envar>$F95PATH</envar></link>.
+See
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-_F95INCFLAGS"><envar>$_F95INCFLAGS</envar></link>
+below,
+for the variable that expands to those options.
+You only need to set <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F95FLAGS"><envar>$F95FLAGS</envar></link> if you need to define specific
+user options for Fortran 95 files.
+You should normally set the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FORTRANFLAGS"><envar>$FORTRANFLAGS</envar></link> variable,
+which specifies the user-specified options
+passed to the default Fortran compiler
+for all Fortran versions.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-_F95INCFLAGS">
+ <term>_F95INCFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+An automatically-generated construction variable
+containing the Fortran 95 compiler command-line options
+for specifying directories to be searched for include files.
+The value of <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-_F95INCFLAGS"><envar>$_F95INCFLAGS</envar></link> is created
+by 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-F95PATH"><envar>$F95PATH</envar></link>.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-F95PATH">
+ <term>F95PATH</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The list of directories that the Fortran 95 compiler will search for include
+directories. The implicit dependency scanner will search these
+directories for include files. Don't explicitly put include directory
+arguments in <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F95FLAGS"><envar>$F95FLAGS</envar></link> because the result will be non-portable
+and the directories will not be searched by the dependency scanner. Note:
+directory names in <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F95PATH"><envar>$F95PATH</envar></link> will be looked-up relative to the SConscript
+directory when they are used in a command. To force
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+to look-up a directory relative to the root of the source tree use #:
+You only need to set <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F95PATH"><envar>$F95PATH</envar></link> if you need to define a specific
+include path for Fortran 95 files.
+You should normally set the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FORTRANPATH"><envar>$FORTRANPATH</envar></link> variable,
+which specifies the include path
+for the default Fortran compiler
+for all Fortran versions.
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment(F95PATH='#/include')
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The directory look-up can also be forced using the
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Dir</function>()
+function:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+include = Dir('include')
+env = Environment(F95PATH=include)
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The directory list will be added to command lines
+through the automatically-generated
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-_F95INCFLAGS"><envar>$_F95INCFLAGS</envar></link>
+construction variable,
+which is constructed by
+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
+of each directory in <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F95PATH"><envar>$F95PATH</envar></link>.
+Any command lines you define that need
+the F95PATH directory list should
+include <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-_F95INCFLAGS"><envar>$_F95INCFLAGS</envar></link>:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment(F95COM="my_compiler $_F95INCFLAGS -c -o $TARGET $SOURCE")
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-F95PPCOM">
+ <term>F95PPCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to compile a Fortran 95 source file to an object file
+after first running the file through the C preprocessor.
+Any options specified in the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F95FLAGS"><envar>$F95FLAGS</envar></link> and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-CPPFLAGS"><envar>$CPPFLAGS</envar></link> construction variables
+are included on this command line.
+You only need to set <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F95PPCOM"><envar>$F95PPCOM</envar></link> if you need to use a specific
+C-preprocessor command line for Fortran 95 files.
+You should normally set the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FORTRANPPCOM"><envar>$FORTRANPPCOM</envar></link> variable,
+which specifies the default C-preprocessor command line
+for all Fortran versions.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-F95PPCOMSTR">
+ <term>F95PPCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when a Fortran 95 source file
+is compiled to an object file
+after first running the file through the C preprocessor.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F95PPCOM"><envar>$F95PPCOM</envar></link> or <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FORTRANPPCOM"><envar>$FORTRANPPCOM</envar></link>
+(the command line) is displayed.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-F95PPFILESUFFIXES">
+ <term>F95PPFILESUFFIXES</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The list of file extensions for which the compilation + preprocessor pass for
+F95 dialect will be used. By default, this is empty
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-File">
+ <term>File</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A function that converts a string into a File instance relative to the
+target being built.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A function that converts a string into a File instance relative to the
+target being built.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-FORTRAN">
+ <term>FORTRAN</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The default Fortran compiler
+for all versions of Fortran.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-FORTRANCOM">
+ <term>FORTRANCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to compile a Fortran source file to an object file.
+By default, any options specified
+in the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FORTRANFLAGS"><envar>$FORTRANFLAGS</envar></link>,
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-CPPFLAGS"><envar>$CPPFLAGS</envar></link>,
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-_CPPDEFFLAGS"><envar>$_CPPDEFFLAGS</envar></link>,
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-_FORTRANMODFLAG"><envar>$_FORTRANMODFLAG</envar></link>, and
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-_FORTRANINCFLAGS"><envar>$_FORTRANINCFLAGS</envar></link> construction variables
+are included on this command line.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-FORTRANCOMSTR">
+ <term>FORTRANCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when a Fortran source file
+is compiled to an object file.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FORTRANCOM"><envar>$FORTRANCOM</envar></link>
+(the command line) is displayed.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-FORTRANFILESUFFIXES">
+ <term>FORTRANFILESUFFIXES</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The list of file extensions for which the FORTRAN dialect will be used. By
+default, this is ['.f', '.for', '.ftn']
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-FORTRANFLAGS">
+ <term>FORTRANFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+General user-specified options that are passed to the Fortran compiler.
+Note that this variable does
+<emphasis>not</emphasis>
+contain
+<option>-I</option>
+(or similar) include or module search path options
+that scons generates automatically from <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FORTRANPATH"><envar>$FORTRANPATH</envar></link>.
+See
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-_FORTRANINCFLAGS"><envar>$_FORTRANINCFLAGS</envar></link> and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-_FORTRANMODFLAG"><envar>$_FORTRANMODFLAG</envar></link>,
+below,
+for the variables that expand those options.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-_FORTRANINCFLAGS">
+ <term>_FORTRANINCFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+An automatically-generated construction variable
+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>
+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>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-FORTRANMODDIR">
+ <term>FORTRANMODDIR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Directory location where the Fortran compiler should place
+any module files it generates. This variable is empty, by default. Some
+Fortran compilers will internally append this directory in the search path
+for module files, as well.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-FORTRANMODDIRPREFIX">
+ <term>FORTRANMODDIRPREFIX</term>
+ <listitem>
+<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
+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>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-FORTRANMODDIRSUFFIX">
+ <term>FORTRANMODDIRSUFFIX</term>
+ <listitem>
+<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
+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>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-_FORTRANMODFLAG">
+ <term>_FORTRANMODFLAG</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+An automatically-generated construction variable
+containing the Fortran compiler command-line option
+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>
+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>
+ </varlistentry>
+ <varlistentry id="cv-FORTRANMODPREFIX">
+ <term>FORTRANMODPREFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The module file prefix used by the Fortran compiler. SCons assumes that
+the Fortran compiler follows the quasi-standard naming convention for
+module files of
+<filename>module_name.mod</filename>.
+As a result, this variable is left empty, by default. For situations in
+which the compiler does not necessarily follow the normal convention,
+the user may use this variable. Its value will be appended to every
+module file name as scons attempts to resolve dependencies.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-FORTRANMODSUFFIX">
+ <term>FORTRANMODSUFFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The module file suffix used by the Fortran compiler. SCons assumes that
+the Fortran compiler follows the quasi-standard naming convention for
+module files of
+<filename>module_name.mod</filename>.
+As a result, this variable is set to ".mod", by default. For situations
+in which the compiler does not necessarily follow the normal convention,
+the user may use this variable. Its value will be appended to every
+module file name as scons attempts to resolve dependencies.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-FORTRANPATH">
+ <term>FORTRANPATH</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The list of directories that the Fortran compiler will search for
+include files and (for some compilers) module files. The Fortran implicit
+dependency scanner will search these directories for include files (but
+not module files since they are autogenerated and, as such, may not
+actually exist at the time the scan takes place). Don't explicitly put
+include directory arguments in FORTRANFLAGS because the result will be
+non-portable and the directories will not be searched by the dependency
+scanner. Note: directory names in FORTRANPATH will be looked-up relative
+to the SConscript directory when they are used in a command. To force
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+to look-up a directory relative to the root of the source tree use #:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment(FORTRANPATH='#/include')
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The directory look-up can also be forced using the
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Dir</function>()
+function:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+include = Dir('include')
+env = Environment(FORTRANPATH=include)
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The directory list will be added to command lines
+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
+<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
+of each directory in <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FORTRANPATH"><envar>$FORTRANPATH</envar></link>.
+Any command lines you define that need
+the FORTRANPATH directory list should
+include <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-_FORTRANINCFLAGS"><envar>$_FORTRANINCFLAGS</envar></link>:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment(FORTRANCOM="my_compiler $_FORTRANINCFLAGS -c -o $TARGET $SOURCE")
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-FORTRANPPCOM">
+ <term>FORTRANPPCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to compile a Fortran source file to an object file
+after first running the file through the C preprocessor.
+By default, any options specified in the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FORTRANFLAGS"><envar>$FORTRANFLAGS</envar></link>,
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-CPPFLAGS"><envar>$CPPFLAGS</envar></link>,
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-_CPPDEFFLAGS"><envar>$_CPPDEFFLAGS</envar></link>,
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-_FORTRANMODFLAG"><envar>$_FORTRANMODFLAG</envar></link>, and
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-_FORTRANINCFLAGS"><envar>$_FORTRANINCFLAGS</envar></link>
+construction variables are included on this command line.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-FORTRANPPCOMSTR">
+ <term>FORTRANPPCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when a Fortran source file
+is compiled to an object file
+after first running the file through the C preprocessor.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FORTRANPPCOM"><envar>$FORTRANPPCOM</envar></link>
+(the command line) is displayed.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-FORTRANPPFILESUFFIXES">
+ <term>FORTRANPPFILESUFFIXES</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The list of file extensions for which the compilation + preprocessor pass for
+FORTRAN dialect will be used. By default, this is ['.fpp', '.FPP']
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-FORTRANSUFFIXES">
+ <term>FORTRANSUFFIXES</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The list of suffixes of files that will be scanned
+for Fortran implicit dependencies
+(INCLUDE lines and USE statements).
+The default list is:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+[".f", ".F", ".for", ".FOR", ".ftn", ".FTN", ".fpp", ".FPP",
+".f77", ".F77", ".f90", ".F90", ".f95", ".F95"]
+</example_commands>
+</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,
+a list containing the paths to search for frameworks.
+Used by the compiler to find framework-style includes like
+#include &lt;Fmwk/Header.h&gt;.
+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>
+
+<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>
+
+<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>
+ </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>
+ </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>
+ </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>
+ </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>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+ env.AppendUnique(FRAMEWORKS=Split('System Cocoa SystemConfiguration'))
+</example_commands>
+
+</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>
+ </varlistentry>
+ <varlistentry id="cv-GS">
+ <term>GS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The Ghostscript program used to convert PostScript to PDF files.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-GSCOM">
+ <term>GSCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The Ghostscript command line used to convert PostScript to PDF files.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-GSCOMSTR">
+ <term>GSCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when
+Ghostscript is used to convert
+a PostScript file to a PDF file.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-GSCOM"><envar>$GSCOM</envar></link> (the command line) is displayed.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-GSFLAGS">
+ <term>GSFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+General options passed to the Ghostscript program
+when converting PostScript to PDF files.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-HOST_ARCH">
+ <term>HOST_ARCH</term>
+ <listitem>
+<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.
+This variable must be passed as an argument to the Environment()
+constructor; setting it later has no effect.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Valid values are the same as for <envar xmlns="http://www.scons.org/dbxsd/v1.0">$TARGET_ARCH</envar>.
+</para>
+
+<para 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>
+ </varlistentry>
+ <varlistentry id="cv-HOST_OS">
+ <term>HOST_OS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+ The name of the host operating system 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>
+ </varlistentry>
+ <varlistentry id="cv-IDLSUFFIXES">
+ <term>IDLSUFFIXES</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The list of suffixes of files that will be scanned
+for IDL implicit dependencies
+(#include or import lines).
+The default list is:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+[".idl", ".IDL"]
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-IMPLICIT_COMMAND_DEPENDENCIES">
+ <term>IMPLICIT_COMMAND_DEPENDENCIES</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Controls whether or not SCons will
+add implicit dependencies for the commands
+executed to build targets.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+By default, SCons will add
+to each target
+an implicit dependency on the command
+represented by the first argument on any
+command line it executes.
+The specific file for the dependency is
+found by searching the
+<varname>PATH</varname>
+variable in the
+<varname>ENV</varname>
+environment used to execute the command.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+If the construction variable
+<envar xmlns="http://www.scons.org/dbxsd/v1.0">$IMPLICIT_COMMAND_DEPENDENCIES</envar>
+is set to a false value
+(<literal>None</literal>,
+<literal>False</literal>,
+<literal>0</literal>,
+etc.),
+then the implicit dependency will
+not be added to the targets
+built with that construction environment.
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment(IMPLICIT_COMMAND_DEPENDENCIES = 0)
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-INCPREFIX">
+ <term>INCPREFIX</term>
+ <listitem>
+<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
+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.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-INCSUFFIX">
+ <term>INCSUFFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The suffix used to specify an include directory on the C compiler command
+line.
+This will be appended to the end 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.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-INSTALL">
+ <term>INSTALL</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A function to be called to install a file into a
+destination file name.
+The default function copies the file into the destination
+(and sets the destination file's mode and permission bits
+to match the source file's).
+The function takes the following arguments:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+def install(dest, source, env):
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<varname>dest</varname>
+is the path name of the destination file.
+<varname>source</varname>
+is the path name of the source file.
+<varname>env</varname>
+is the construction environment
+(a dictionary of construction values)
+in force for this file installation.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-INSTALLSTR">
+ <term>INSTALLSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when a file is
+installed into a destination file name.
+The default is:
+</para>
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+Install file: "$SOURCE" as "$TARGET"
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-INTEL_C_COMPILER_VERSION">
+ <term>INTEL_C_COMPILER_VERSION</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Set by the "intelc" Tool
+to the major version number of the Intel C compiler
+selected for use.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-JAR">
+ <term>JAR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The Java archive tool.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The Java archive tool.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-JARCHDIR">
+ <term>JARCHDIR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The directory to which the Java archive tool should change
+(using the
+<option>-C</option>
+option).
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The directory to which the Java archive tool should change
+(using the
+<option>-C</option>
+option).
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-JARCOM">
+ <term>JARCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to call the Java archive tool.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to call the Java archive tool.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-JARCOMSTR">
+ <term>JARCOMSTR</term>
+ <listitem>
+<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.
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment(JARCOMSTR = "JARchiving $SOURCES into $TARGET")
+</example_commands>
+
+<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.
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment(JARCOMSTR = "JARchiving $SOURCES into $TARGET")
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-JARFLAGS">
+ <term>JARFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+General options passed to the Java archive tool.
+By default this is set to
+<option>cf</option>
+to create the necessary
+<command>jar</command>
+file.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+General options passed to the Java archive tool.
+By default this is set to
+<option>cf</option>
+to create the necessary
+<command>jar</command>
+file.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-JARSUFFIX">
+ <term>JARSUFFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The suffix for Java archives:
+<filename>.jar</filename>
+by default.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The suffix for Java archives:
+<filename>.jar</filename>
+by default.
+</para>
+</listitem>
+ </varlistentry>
+ <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>
+ </varlistentry>
+ <varlistentry id="cv-JAVAC">
+ <term>JAVAC</term>
+ <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>
+ </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>
+
+<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>
+ </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>
+ </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">
+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>
+ </varlistentry>
+ <varlistentry id="cv-JAVAH">
+ <term>JAVAH</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The Java generator for C header and stub files.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-JAVAHCOM">
+ <term>JAVAHCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to generate C header and stub files
+from Java classes.
+Any options specified in the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-JAVAHFLAGS"><envar>$JAVAHFLAGS</envar></link> construction variable
+are included on this command line.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-JAVAHCOMSTR">
+ <term>JAVAHCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when C header and stub files
+are generated from Java classes.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-JAVAHCOM"><envar>$JAVAHCOM</envar></link> (the command line) is displayed.
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment(JAVAHCOMSTR = "Generating header/stub file(s) $TARGETS from $SOURCES")
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-JAVAHFLAGS">
+ <term>JAVAHFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+General options passed to the C header and stub file generator
+for Java classes.
+</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">
+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>
+ </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">
+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>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The LaTeX structured formatter and typesetter.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-LATEXCOM">
+ <term>LATEXCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to call the LaTeX structured formatter and typesetter.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-LATEXCOMSTR">
+ <term>LATEXCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when calling
+the LaTeX structured formatter and typesetter.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-LATEXCOM"><envar>$LATEXCOM</envar></link> (the command line) is displayed.
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment(LATEXCOMSTR = "Building $TARGET from LaTeX input $SOURCES")
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-LATEXFLAGS">
+ <term>LATEXFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+General options passed to the LaTeX structured formatter and typesetter.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-LATEXRETRIES">
+ <term>LATEXRETRIES</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The maximum number of times that LaTeX
+will be re-run if the
+<filename>.log</filename>
+generated by the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-LATEXCOM"><envar>$LATEXCOM</envar></link> command
+indicates that there are undefined references.
+The default is to try to resolve undefined references
+by re-running LaTeX up to three times.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-LATEXSUFFIXES">
+ <term>LATEXSUFFIXES</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The list of suffixes of files that will be scanned
+for LaTeX implicit dependencies
+(<literal>\include</literal> or <literal>\import</literal> files).
+The default list is:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+[".tex", ".ltx", ".latex"]
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-LDMODULE">
+ <term>LDMODULE</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The linker for building loadable modules.
+By default, this is the same as <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHLINK"><envar>$SHLINK</envar></link>.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-LDMODULECOM">
+ <term>LDMODULECOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line for building loadable modules.
+On Mac OS X, this uses the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-LDMODULE"><envar>$LDMODULE</envar></link>,
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-LDMODULEFLAGS"><envar>$LDMODULEFLAGS</envar></link> and
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FRAMEWORKSFLAGS"><envar>$FRAMEWORKSFLAGS</envar></link> variables.
+On other systems, this is the same as <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHLINK"><envar>$SHLINK</envar></link>.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-LDMODULECOMSTR">
+ <term>LDMODULECOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when building loadable modules.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-LDMODULECOM"><envar>$LDMODULECOM</envar></link> (the command line) is displayed.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-LDMODULEFLAGS">
+ <term>LDMODULEFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+General user options passed to the linker for building loadable modules.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-LDMODULEPREFIX">
+ <term>LDMODULEPREFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The prefix used for loadable module file names.
+On Mac OS X, this is null;
+on other systems, this is
+the same as <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHLIBPREFIX"><envar>$SHLIBPREFIX</envar></link>.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-LDMODULESUFFIX">
+ <term>LDMODULESUFFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The suffix used for loadable module file names.
+On Mac OS X, this is null;
+on other systems, this is
+the same as $SHLIBSUFFIX.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-LEX">
+ <term>LEX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The lexical analyzer generator.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-LEXCOM">
+ <term>LEXCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to call the lexical analyzer generator
+to generate a source file.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-LEXCOMSTR">
+ <term>LEXCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when generating a source file
+using the lexical analyzer generator.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-LEXCOM"><envar>$LEXCOM</envar></link> (the command line) is displayed.
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment(LEXCOMSTR = "Lex'ing $TARGET from $SOURCES")
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-LEXFLAGS">
+ <term>LEXFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+General options passed to the lexical analyzer generator.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-_LIBDIRFLAGS">
+ <term>_LIBDIRFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+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>
+to the beginning and end
+of each directory in <envar xmlns="http://www.scons.org/dbxsd/v1.0">$LIBPATH</envar>.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-LIBDIRPREFIX">
+ <term>LIBDIRPREFIX</term>
+ <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
+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>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-LIBDIRSUFFIX">
+ <term>LIBDIRSUFFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The suffix used to specify a library directory on the linker command line.
+This will be appended to the end 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>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-LIBEMITTER">
+ <term>LIBEMITTER</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+TODO
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-_LIBFLAGS">
+ <term>_LIBFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+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>
+to the beginning and end
+of each filename in <envar xmlns="http://www.scons.org/dbxsd/v1.0">$LIBS</envar>.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-LIBLINKPREFIX">
+ <term>LIBLINKPREFIX</term>
+ <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
+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>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-LIBLINKSUFFIX">
+ <term>LIBLINKSUFFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The suffix used to specify a library to link on the linker command line.
+This will be appended to the end 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>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-LIBPATH">
+ <term>LIBPATH</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The list of directories that will be searched for libraries.
+The implicit dependency scanner will search these
+directories for include files. Don't explicitly put include directory
+arguments in <envar xmlns="http://www.scons.org/dbxsd/v1.0">$LINKFLAGS</envar> or <envar xmlns="http://www.scons.org/dbxsd/v1.0">$SHLINKFLAGS</envar>
+because the result will be non-portable
+and the directories will not be searched by the dependency scanner. Note:
+directory names in LIBPATH will be looked-up relative to the SConscript
+directory when they are used in a command. To force
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+to look-up a directory relative to the root of the source tree use #:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment(LIBPATH='#/libs')
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The directory look-up can also be forced using the
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Dir</function>()
+function:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+libs = Dir('libs')
+env = Environment(LIBPATH=libs)
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The directory list will be added to command lines
+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
+<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
+of each directory in <envar xmlns="http://www.scons.org/dbxsd/v1.0">$LIBPATH</envar>.
+Any command lines you define that need
+the LIBPATH directory list should
+include <envar xmlns="http://www.scons.org/dbxsd/v1.0">$_LIBDIRFLAGS</envar>:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment(LINKCOM="my_linker $_LIBDIRFLAGS $_LIBFLAGS -o $TARGET $SOURCE")
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-LIBPREFIX">
+ <term>LIBPREFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The prefix used for (static) library file names.
+A default value is set for each platform
+(posix, win32, os2, etc.),
+but the value is overridden by individual tools
+(ar, mslib, sgiar, sunar, tlib, etc.)
+to reflect the names of the libraries they create.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-LIBPREFIXES">
+ <term>LIBPREFIXES</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A list of all legal prefixes for library file names.
+When searching for library dependencies,
+SCons will look for files with these prefixes,
+the base library name,
+and suffixes in the <envar xmlns="http://www.scons.org/dbxsd/v1.0">$LIBSUFFIXES</envar> list.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-LIBS">
+ <term>LIBS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A list of one or more libraries
+that will be linked with
+any executable programs
+created by this environment.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The library list will be added to command lines
+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
+<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
+of each filename in <envar xmlns="http://www.scons.org/dbxsd/v1.0">$LIBS</envar>.
+Any command lines you define that need
+the LIBS library list should
+include <envar xmlns="http://www.scons.org/dbxsd/v1.0">$_LIBFLAGS</envar>:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment(LINKCOM="my_linker $_LIBDIRFLAGS $_LIBFLAGS -o $TARGET $SOURCE")
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+If you add a
+File
+object to the
+<envar xmlns="http://www.scons.org/dbxsd/v1.0">$LIBS</envar>
+list, the name of that file will be added to
+<envar xmlns="http://www.scons.org/dbxsd/v1.0">$_LIBFLAGS</envar>,
+and thus the link line, as is, without
+<envar xmlns="http://www.scons.org/dbxsd/v1.0">$LIBLINKPREFIX</envar>
+or
+<envar xmlns="http://www.scons.org/dbxsd/v1.0">$LIBLINKSUFFIX</envar>.
+For example:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env.Append(LIBS=File('/tmp/mylib.so'))
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+In all cases, scons will add dependencies from the executable program to
+all the libraries in this list.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-LIBSUFFIX">
+ <term>LIBSUFFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The suffix used for (static) library file names.
+A default value is set for each platform
+(posix, win32, os2, etc.),
+but the value is overridden by individual tools
+(ar, mslib, sgiar, sunar, tlib, etc.)
+to reflect the names of the libraries they create.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-LIBSUFFIXES">
+ <term>LIBSUFFIXES</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A list of all legal suffixes for library file names.
+When searching for library dependencies,
+SCons will look for files with prefixes, in the <envar xmlns="http://www.scons.org/dbxsd/v1.0">$LIBPREFIXES</envar> list,
+the base library name,
+and these suffixes.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-LICENSE">
+ <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.).
+See http://www.opensource.org/licenses/alphabetical
+for a list of license names.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-LINESEPARATOR">
+ <term>LINESEPARATOR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The separator used by the <function xmlns="http://www.scons.org/dbxsd/v1.0">Substfile</function> and <function xmlns="http://www.scons.org/dbxsd/v1.0">Textfile</function> builders.
+This value is used between sources when constructing the target.
+It defaults to the current system line separator.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-LINGUAS_FILE">
+ <term>LINGUAS_FILE</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The <envar xmlns="http://www.scons.org/dbxsd/v1.0">$LINGUAS_FILE</envar> defines file(s) containing list of additional linguas
+to be processed by <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-POInit"><function>POInit</function></link>, <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-POUpdate"><function>POUpdate</function></link> or <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-MOFiles"><function>MOFiles</function></link>
+builders. It also affects <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-Translate"><function>Translate</function></link> builder. If the variable contains
+a string, it defines name of the list file. The <envar xmlns="http://www.scons.org/dbxsd/v1.0">$LINGUAS_FILE</envar> may be a
+list of file names as well. If <envar xmlns="http://www.scons.org/dbxsd/v1.0">$LINGUAS_FILE</envar> is set to
+<literal>True</literal> (or non-zero numeric value), the list will be read from
+default file named
+<filename>LINGUAS</filename>.
+</para>
+
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-LINK">
+ <term>LINK</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The linker.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-LINKCOM">
+ <term>LINKCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to link object files into an executable.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-LINKCOMSTR">
+ <term>LINKCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when object files
+are linked into an executable.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-LINKCOM"><envar>$LINKCOM</envar></link> (the command line) is displayed.
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment(LINKCOMSTR = "Linking $TARGET")
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-LINKFLAGS">
+ <term>LINKFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+General user options passed to the linker.
+Note that this variable should
+<emphasis>not</emphasis>
+contain
+<option>-l</option>
+(or similar) options for linking with the libraries listed in <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-LIBS"><envar>$LIBS</envar></link>,
+nor
+<option>-L</option>
+(or similar) library search path options
+that scons generates automatically from <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-LIBPATH"><envar>$LIBPATH</envar></link>.
+See
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-_LIBFLAGS"><envar>$_LIBFLAGS</envar></link>
+above,
+for the variable that expands to library-link options,
+and
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-_LIBDIRFLAGS"><envar>$_LIBDIRFLAGS</envar></link>
+above,
+for the variable that expands to library search path options.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-M4">
+ <term>M4</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The M4 macro preprocessor.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-M4COM">
+ <term>M4COM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to pass files through the M4 macro preprocessor.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-M4COMSTR">
+ <term>M4COMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when
+a file is passed through the M4 macro preprocessor.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-M4COM"><envar>$M4COM</envar></link> (the command line) is displayed.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-M4FLAGS">
+ <term>M4FLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+General options passed to the M4 macro preprocessor.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-MAKEINDEX">
+ <term>MAKEINDEX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The makeindex generator for the TeX formatter and typesetter and the
+LaTeX structured formatter and typesetter.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-MAKEINDEXCOM">
+ <term>MAKEINDEXCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to call the makeindex generator for the
+TeX formatter and typesetter and the LaTeX structured formatter and
+typesetter.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-MAKEINDEXCOMSTR">
+ <term>MAKEINDEXCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when calling the makeindex generator for the
+TeX formatter and typesetter
+and the LaTeX structured formatter and typesetter.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-MAKEINDEXCOM"><envar>$MAKEINDEXCOM</envar></link> (the command line) is displayed.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-MAKEINDEXFLAGS">
+ <term>MAKEINDEXFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+General options passed to the makeindex generator for the TeX formatter
+and typesetter and the LaTeX structured formatter and typesetter.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-MAXLINELENGTH">
+ <term>MAXLINELENGTH</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The maximum number of characters allowed on an external command line.
+On Win32 systems,
+link lines longer than this many characters
+are linked via a temporary file name.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-MIDL">
+ <term>MIDL</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The Microsoft IDL compiler.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-MIDLCOM">
+ <term>MIDLCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to pass files to the Microsoft IDL compiler.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-MIDLCOMSTR">
+ <term>MIDLCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when
+the Microsoft IDL copmiler is called.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-MIDLCOM"><envar>$MIDLCOM</envar></link> (the command line) is displayed.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-MIDLFLAGS">
+ <term>MIDLFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+General options passed to the Microsoft IDL compiler.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-MOSUFFIX">
+ <term>MOSUFFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Suffix used for <literal>MO</literal> files (default: <literal>'.mo'</literal>).
+See <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="t-msgfmt"><literal>msgfmt</literal></link> tool and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-MOFiles"><function>MOFiles</function></link> builder.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-MSGFMT">
+ <term>MSGFMT</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Absolute path to <command>msgfmt(1)</command> binary, found by
+<function>Detect()</function>.
+See <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="t-msgfmt"><literal>msgfmt</literal></link> tool and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-MOFiles"><function>MOFiles</function></link> builder.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-MSGFMTCOM">
+ <term>MSGFMTCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Complete command line to run <command>msgfmt(1)</command> program.
+See <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="t-msgfmt"><literal>msgfmt</literal></link> tool and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-MOFiles"><function>MOFiles</function></link> builder.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-MSGFMTCOMSTR">
+ <term>MSGFMTCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+String to display when <command>msgfmt(1)</command> is invoked
+(default: <literal>''</literal>, which means ``print <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-MSGFMTCOM"><envar>$MSGFMTCOM</envar></link>'').
+See <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="t-msgfmt"><literal>msgfmt</literal></link> tool and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-MOFiles"><function>MOFiles</function></link> builder.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-MSGFMTFLAGS">
+ <term>MSGFMTFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Additional flags to <command>msgfmt(1)</command>.
+See <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="t-msgfmt"><literal>msgfmt</literal></link> tool and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-MOFiles"><function>MOFiles</function></link> builder.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-MSGINIT">
+ <term>MSGINIT</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Path to <command>msginit(1)</command> program (found via
+<literal>Detect()</literal>).
+See <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="t-msginit"><literal>msginit</literal></link> tool and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-POInit"><function>POInit</function></link> builder.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-MSGINITCOM">
+ <term>MSGINITCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Complete command line to run <command>msginit(1)</command> program.
+See <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="t-msginit"><literal>msginit</literal></link> tool and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-POInit"><function>POInit</function></link> builder.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-MSGINITCOMSTR">
+ <term>MSGINITCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+String to display when <command>msginit(1)</command> is invoked
+(default: <literal>''</literal>, which means ``print <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-MSGINITCOM"><envar>$MSGINITCOM</envar></link>'').
+See <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="t-msginit"><literal>msginit</literal></link> tool and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-POInit"><function>POInit</function></link> builder.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-MSGINITFLAGS">
+ <term>MSGINITFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+List of additional flags to <command>msginit(1)</command> (default:
+<literal>[]</literal>).
+See <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="t-msginit"><literal>msginit</literal></link> tool and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-POInit"><function>POInit</function></link> builder.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-_MSGINITLOCALE">
+ <term>_MSGINITLOCALE</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Internal ``macro''. Computes locale (language) name based on target filename
+(default: <literal>'${TARGET.filebase}' </literal>).
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-MSGMERGE">
+ <term>MSGMERGE</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Absolute path to <command>msgmerge(1)</command> binary as found by
+<function>Detect()</function>.
+See <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="t-msgmerge"><literal>msgmerge</literal></link> tool and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-POUpdate"><function>POUpdate</function></link> builder.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-MSGMERGECOM">
+ <term>MSGMERGECOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Complete command line to run <command>msgmerge(1)</command> command.
+See <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="t-msgmerge"><literal>msgmerge</literal></link> tool and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-POUpdate"><function>POUpdate</function></link> builder.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-MSGMERGECOMSTR">
+ <term>MSGMERGECOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+String to be displayed when <command>msgmerge(1)</command> is invoked
+(default: <literal>''</literal>, which means ``print <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-MSGMERGECOM"><envar>$MSGMERGECOM</envar></link>'').
+See <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="t-msgmerge"><literal>msgmerge</literal></link> tool and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-POUpdate"><function>POUpdate</function></link> builder.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-MSGMERGEFLAGS">
+ <term>MSGMERGEFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Additional flags to <command>msgmerge(1)</command> command.
+See <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="t-msgmerge"><literal>msgmerge</literal></link> tool and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-POUpdate"><function>POUpdate</function></link> builder.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-MSSDK_DIR">
+ <term>MSSDK_DIR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The directory containing the Microsoft SDK
+(either Platform SDK or Windows SDK)
+to be used for compilation.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-MSSDK_VERSION">
+ <term>MSSDK_VERSION</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The version string of the Microsoft SDK
+(either Platform SDK or Windows SDK)
+to be used for compilation.
+Supported versions include
+<literal>6.1</literal>,
+<literal>6.0A</literal>,
+<literal>6.0</literal>,
+<literal>2003R2</literal>
+and
+<literal>2003R1</literal>.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-MSVC_BATCH">
+ <term>MSVC_BATCH</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+When set to any true value,
+specifies that SCons should batch
+compilation of object files
+when calling the Microsoft Visual C/C++ compiler.
+All compilations of source files from the same source directory
+that generate target files in a same output directory
+and were configured in SCons using the same construction environment
+will be built in a single call to the compiler.
+Only source files that have changed since their
+object files were built will be passed to each compiler invocation
+(via the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-CHANGED_SOURCES"><envar>$CHANGED_SOURCES</envar></link> construction variable).
+Any compilations where the object (target) file base name
+(minus the <filename>.obj</filename>)
+does not match the source file base name
+will be compiled separately.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-MSVC_USE_SCRIPT">
+ <term>MSVC_USE_SCRIPT</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Use a batch script to set up Microsoft Visual Studio compiler
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<envar xmlns="http://www.scons.org/dbxsd/v1.0">$MSVC_USE_SCRIPT</envar> overrides <envar xmlns="http://www.scons.org/dbxsd/v1.0">$MSVC_VERSION</envar> and <envar xmlns="http://www.scons.org/dbxsd/v1.0">$TARGET_ARCH</envar>.
+If set to the name of a Visual Studio .bat file (e.g. vcvars.bat),
+SCons will run that bat file and extract the relevant variables from
+the result (typically %INCLUDE%, %LIB%, and %PATH%). Setting
+MSVC_USE_SCRIPT to None bypasses the Visual Studio autodetection
+entirely; use this if you are running SCons in a Visual Studio cmd
+window and importing the shell's environment variables.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-MSVC_VERSION">
+ <term>MSVC_VERSION</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets the preferred version of Microsoft Visual C/C++ to use.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+If <envar xmlns="http://www.scons.org/dbxsd/v1.0">$MSVC_VERSION</envar> is not set, SCons will (by default) select the
+latest version of Visual C/C++ installed on your system. If the
+specified version isn't installed, tool initialization will fail.
+This variable must be passed as an argument to the Environment()
+constructor; setting it later has no effect. Set it to an unexpected
+value (e.g. "XXX") to see the valid values on your system.
+</para>
+</listitem>
+ </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>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<envar>VERSION</envar>:
+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>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<envar>VERSIONS</envar>:
+the available versions of MSVS installed
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<envar>VCINSTALLDIR</envar>:
+installed directory of Visual C++
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<envar>VSINSTALLDIR</envar>:
+installed directory of Visual Studio
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<envar>FRAMEWORKDIR</envar>:
+installed directory of the .NET framework
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<envar>FRAMEWORKVERSIONS</envar>:
+list of installed versions of the .NET framework, sorted latest to oldest.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<envar>FRAMEWORKVERSION</envar>:
+latest installed version of the .NET framework
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<envar>FRAMEWORKSDKDIR</envar>:
+installed location of the .NET SDK.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<envar>PLATFORMSDKDIR</envar>:
+installed location of the Platform SDK.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<envar>PLATFORMSDK_MODULES</envar>:
+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>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+If a value isn't set, it wasn't 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>
+ </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 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>
+ </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 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>
+ </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>
+ </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>
+ </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>
+ </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>
+ </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>
+ </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>
+ </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>
+ </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>
+ </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>
+ </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>
+ </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>
+ </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>
+ </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>
+ </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>
+ </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>
+ </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>
+ </varlistentry>
+ <varlistentry id="cv-MT">
+ <term>MT</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The program used on Windows systems to embed manifests into DLLs and EXEs.
+See also <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-WINDOWS_EMBED_MANIFEST"><envar>$WINDOWS_EMBED_MANIFEST</envar></link>.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-MTEXECOM">
+ <term>MTEXECOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The Windows command line used to embed manifests into executables.
+See also <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-MTSHLIBCOM"><envar>$MTSHLIBCOM</envar></link>.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-MTFLAGS">
+ <term>MTFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Flags passed to the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-MT"><envar>$MT</envar></link> manifest embedding program (Windows only).
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-MTSHLIBCOM">
+ <term>MTSHLIBCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The Windows command line used to embed manifests into shared libraries (DLLs).
+See also <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-MTEXECOM"><envar>$MTEXECOM</envar></link>.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-MWCW_VERSION">
+ <term>MWCW_VERSION</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The version number of the MetroWerks CodeWarrior C compiler
+to be used.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-MWCW_VERSIONS">
+ <term>MWCW_VERSIONS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A list of installed versions of the MetroWerks CodeWarrior C compiler
+on this system.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-NAME">
+ <term>NAME</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Specfies the name of the project to package.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-no_import_lib">
+ <term>no_import_lib</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+When set to non-zero,
+suppresses creation of a corresponding Windows static import lib by the
+<literal>SharedLibrary</literal>
+builder when used with
+MinGW, Microsoft Visual Studio or Metrowerks.
+This also suppresses creation
+of an export (.exp) file
+when using Microsoft Visual Studio.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-OBJPREFIX">
+ <term>OBJPREFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The prefix used for (static) object file names.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-OBJSUFFIX">
+ <term>OBJSUFFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The suffix used for (static) object file names.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-P4">
+ <term>P4</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The Perforce executable.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-P4COM">
+ <term>P4COM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to
+fetch source files from Perforce.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-P4COMSTR">
+ <term>P4COMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when
+fetching a source file from Perforce.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-P4COM"><envar>$P4COM</envar></link> (the command line) is displayed.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-P4FLAGS">
+ <term>P4FLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+General options that are passed to Perforce.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-PACKAGEROOT">
+ <term>PACKAGEROOT</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Specifies the directory where all files in resulting archive will be
+placed if applicable. The default value is "$NAME-$VERSION".
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-PACKAGETYPE">
+ <term>PACKAGETYPE</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Selects the package type to build. Currently these are available:
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+ * msi - Microsoft Installer
+ * rpm - Redhat Package Manger
+ * ipkg - Itsy Package Management System
+ * tarbz2 - compressed tar
+ * targz - compressed tar
+ * zip - zip file
+ * src_tarbz2 - compressed tar source
+ * src_targz - compressed tar source
+ * src_zip - zip file source
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This may be overridden with the "package_type" command line option.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-PACKAGEVERSION">
+ <term>PACKAGEVERSION</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The version of the package (not the underlying project).
+This is currently only used by the rpm packager
+and should reflect changes in the packaging,
+not the underlying project code itself.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-PCH">
+ <term>PCH</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The Microsoft Visual C++ precompiled header that will be used when compiling
+object files. This variable is ignored by tools other than Microsoft Visual C++.
+When this variable is
+defined SCons will add options to the compiler command line to
+cause it to use the precompiled header, and will also set up the
+dependencies for the PCH file.
+Example:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env['PCH'] = 'StdAfx.pch'
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-PCHCOM">
+ <term>PCHCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used by the
+<function xmlns="http://www.scons.org/dbxsd/v1.0">PCH</function>
+builder to generated a precompiled header.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-PCHCOMSTR">
+ <term>PCHCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when generating a precompiled header.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-PCHCOM"><envar>$PCHCOM</envar></link> (the command line) is displayed.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-PCHPDBFLAGS">
+ <term>PCHPDBFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A construction variable that, when expanded,
+adds the <literal>/yD</literal> flag to the command line
+only if the <envar xmlns="http://www.scons.org/dbxsd/v1.0">$PDB</envar> construction variable is set.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-PCHSTOP">
+ <term>PCHSTOP</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This variable specifies how much of a source file is precompiled. This
+variable is ignored by tools other than Microsoft Visual C++, or when
+the PCH variable is not being used. When this variable is define it
+must be a string that is the name of the header that
+is included at the end of the precompiled portion of the source files, or
+the empty string if the "#pragma hrdstop" construct is being used:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env['PCHSTOP'] = 'StdAfx.h'
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-PDB">
+ <term>PDB</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The Microsoft Visual C++ PDB file that will store debugging information for
+object files, shared libraries, and programs. This variable is ignored by
+tools other than Microsoft Visual C++.
+When this variable is
+defined SCons will add options to the compiler and linker command line to
+cause them to generate external debugging information, and will also set up the
+dependencies for the PDB file.
+Example:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env['PDB'] = 'hello.pdb'
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The Visual C++ compiler switch that SCons uses by default
+to generate PDB information is <option>/Z7</option>.
+This works correctly with parallel (<option>-j</option>) builds
+because it embeds the debug information in the intermediate object files,
+as opposed to sharing a single PDB file between multiple object files.
+This is also the only way to get debug information
+embedded into a static library.
+Using the <option>/Zi</option> instead may yield improved
+link-time performance,
+although parallel builds will no longer work.
+You can generate PDB files with the <option>/Zi</option>
+switch by overriding the default <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-CCPDBFLAGS"><envar>$CCPDBFLAGS</envar></link> variable;
+see the entry for that variable for specific examples.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-PDFCOM">
+ <term>PDFCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A deprecated synonym for <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-DVIPDFCOM"><envar>$DVIPDFCOM</envar></link>.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-PDFLATEX">
+ <term>PDFLATEX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The <application xmlns="http://www.scons.org/dbxsd/v1.0">pdflatex</application> utility.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-PDFLATEXCOM">
+ <term>PDFLATEXCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to call the <application xmlns="http://www.scons.org/dbxsd/v1.0">pdflatex</application> utility.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-PDFLATEXCOMSTR">
+ <term>PDFLATEXCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when calling the <application xmlns="http://www.scons.org/dbxsd/v1.0">pdflatex</application> utility.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-PDFLATEXCOM"><envar>$PDFLATEXCOM</envar></link> (the command line) is displayed.
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment(PDFLATEX;COMSTR = "Building $TARGET from LaTeX input $SOURCES")
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-PDFLATEXFLAGS">
+ <term>PDFLATEXFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+General options passed to the <application xmlns="http://www.scons.org/dbxsd/v1.0">pdflatex</application> utility.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-PDFPREFIX">
+ <term>PDFPREFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The prefix used for PDF file names.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-PDFSUFFIX">
+ <term>PDFSUFFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The suffix used for PDF file names.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-PDFTEX">
+ <term>PDFTEX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The <application xmlns="http://www.scons.org/dbxsd/v1.0">pdftex</application> utility.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-PDFTEXCOM">
+ <term>PDFTEXCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to call the <application xmlns="http://www.scons.org/dbxsd/v1.0">pdftex</application> utility.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-PDFTEXCOMSTR">
+ <term>PDFTEXCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when calling the <application xmlns="http://www.scons.org/dbxsd/v1.0">pdftex</application> utility.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-PDFTEXCOM"><envar>$PDFTEXCOM</envar></link> (the command line) is displayed.
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment(PDFTEXCOMSTR = "Building $TARGET from TeX input $SOURCES")
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-PDFTEXFLAGS">
+ <term>PDFTEXFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+General options passed to the <application xmlns="http://www.scons.org/dbxsd/v1.0">pdftex</application> utility.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-PKGCHK">
+ <term>PKGCHK</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+On Solaris systems,
+the package-checking program that will
+be used (along with <envar xmlns="http://www.scons.org/dbxsd/v1.0">$PKGINFO</envar>)
+to look for installed versions of
+the Sun PRO C++ compiler.
+The default is
+<filename>/usr/sbin/pgkchk</filename>.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-PKGINFO">
+ <term>PKGINFO</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+On Solaris systems,
+the package information program that will
+be used (along with <envar xmlns="http://www.scons.org/dbxsd/v1.0">$PKGCHK</envar>)
+to look for installed versions of
+the Sun PRO C++ compiler.
+The default is
+<filename>pkginfo</filename>.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-PLATFORM">
+ <term>PLATFORM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The name of the platform used to create the Environment. If no platform is
+specified when the Environment is created,
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+autodetects the platform.
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment(tools = [])
+if env['PLATFORM'] == 'cygwin':
+ Tool('mingw')(env)
+else:
+ Tool('msvc')(env)
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-POAUTOINIT">
+ <term>POAUTOINIT</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The <envar xmlns="http://www.scons.org/dbxsd/v1.0">$POAUTOINIT</envar> variable, if set to <literal>True</literal> (on non-zero
+numeric value), let the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="t-msginit"><literal>msginit</literal></link> tool to automatically initialize
+<emphasis>missing</emphasis> <literal>PO</literal> files with
+<command>msginit(1)</command>. This applies to both,
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-POInit"><function>POInit</function></link> and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-POUpdate"><function>POUpdate</function></link> builders (and others that use any of
+them).
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-POCREATE_ALIAS">
+ <term>POCREATE_ALIAS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Common alias for all <literal>PO</literal> files created with <function xmlns="http://www.scons.org/dbxsd/v1.0">POInit</function>
+builder (default: <literal>'po-create'</literal>).
+See <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="t-msginit"><literal>msginit</literal></link> tool and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-POInit"><function>POInit</function></link> builder.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-POSUFFIX">
+ <term>POSUFFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Suffix used for <literal>PO</literal> files (default: <literal>'.po'</literal>)
+See <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="t-msginit"><literal>msginit</literal></link> tool and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-POInit"><function>POInit</function></link> builder.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-POTDOMAIN">
+ <term>POTDOMAIN</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The <envar xmlns="http://www.scons.org/dbxsd/v1.0">$POTDOMAIN</envar> defines default domain, used to generate
+<literal>POT</literal> filename as <filename><envar xmlns="http://www.scons.org/dbxsd/v1.0">$POTDOMAIN</envar>.pot</filename> when
+no <literal>POT</literal> file name is provided by the user. This applies to
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-POTUpdate"><function>POTUpdate</function></link>, <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-POInit"><function>POInit</function></link> and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-POUpdate"><function>POUpdate</function></link> builders (and
+builders, that use them, e.g. <function xmlns="http://www.scons.org/dbxsd/v1.0">Translate</function>). Normally (if <envar xmlns="http://www.scons.org/dbxsd/v1.0">$POTDOMAIN</envar> is
+not defined), the builders use <filename>messages.pot</filename> as default
+<literal>POT</literal> file name.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-POTSUFFIX">
+ <term>POTSUFFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Suffix used for PO Template files (default: <literal>'.pot'</literal>).
+See <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="t-xgettext"><literal>xgettext</literal></link> tool and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-POTUpdate"><function>POTUpdate</function></link> builder.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-POTUPDATE_ALIAS">
+ <term>POTUPDATE_ALIAS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Name of the common phony target for all PO Templates created with
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-POUpdate"><function>POUpdate</function></link> (default: <literal>'pot-update'</literal>).
+See <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="t-xgettext"><literal>xgettext</literal></link> tool and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-POTUpdate"><function>POTUpdate</function></link> builder.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-POUPDATE_ALIAS">
+ <term>POUPDATE_ALIAS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Common alias for all <literal>PO</literal> files being defined with
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-POUpdate"><function>POUpdate</function></link> builder (default: <literal>'po-update'</literal>).
+See <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="t-msgmerge"><literal>msgmerge</literal></link> tool and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-POUpdate"><function>POUpdate</function></link> builder.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-PRINT_CMD_LINE_FUNC">
+ <term>PRINT_CMD_LINE_FUNC</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A Python function used to print the command lines as they are executed
+(assuming command printing is not disabled by the
+<option>-q</option>
+or
+<option>-s</option>
+options or their equivalents).
+The function should take four arguments:
+<varname>s</varname>,
+the command being executed (a string),
+<varname>target</varname>,
+the target being built (file node, list, or string name(s)),
+<varname>source</varname>,
+the source(s) used (file node, list, or string name(s)), and
+<varname>env</varname>,
+the environment being used.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The function must do the printing itself. The default implementation,
+used if this variable is not set or is None, is:
+</para>
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+def print_cmd_line(s, target, source, env):
+ sys.stdout.write(s + "\n")
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Here's an example of a more interesting function:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+def print_cmd_line(s, target, source, env):
+ sys.stdout.write("Building %s -&gt; %s...\n" %
+ (' and '.join([str(x) for x in source]),
+ ' and '.join([str(x) for x in target])))
+env=Environment(PRINT_CMD_LINE_FUNC=print_cmd_line)
+env.Program('foo', 'foo.c')
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This just prints "Building <varname>targetname</varname> from <varname>sourcename</varname>..." instead
+of the actual commands.
+Such a function could also log the actual commands to a log file,
+for example.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-PROGEMITTER">
+ <term>PROGEMITTER</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+TODO
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-PROGPREFIX">
+ <term>PROGPREFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The prefix used for executable file names.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-PROGSUFFIX">
+ <term>PROGSUFFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The suffix used for executable file names.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-PSCOM">
+ <term>PSCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to convert TeX DVI files into a PostScript file.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-PSCOMSTR">
+ <term>PSCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when a TeX DVI file
+is converted into a PostScript file.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-PSCOM"><envar>$PSCOM</envar></link> (the command line) is displayed.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-PSPREFIX">
+ <term>PSPREFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The prefix used for PostScript file names.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-PSSUFFIX">
+ <term>PSSUFFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The prefix used for PostScript file names.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-QT_AUTOSCAN">
+ <term>QT_AUTOSCAN</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Turn off scanning for mocable files. Use the Moc Builder to explicitly
+specify files to run moc on.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-QT_BINPATH">
+ <term>QT_BINPATH</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The path where the qt binaries are installed.
+The default value is '<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-QTDIR"><envar>$QTDIR</envar></link>/bin'.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-QT_CPPPATH">
+ <term>QT_CPPPATH</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The path where the qt header files are installed.
+The default value is '<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-QTDIR"><envar>$QTDIR</envar></link>/include'.
+Note: If you set this variable to None,
+the tool won't change the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-CPPPATH"><envar>$CPPPATH</envar></link>
+construction variable.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-QT_DEBUG">
+ <term>QT_DEBUG</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Prints lots of debugging information while scanning for moc files.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-QT_LIB">
+ <term>QT_LIB</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Default value is 'qt'. You may want to set this to 'qt-mt'. Note: If you set
+this variable to None, the tool won't change the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-LIBS"><envar>$LIBS</envar></link> variable.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-QT_LIBPATH">
+ <term>QT_LIBPATH</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The path where the qt libraries are installed.
+The default value is '<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-QTDIR"><envar>$QTDIR</envar></link>/lib'.
+Note: If you set this variable to None,
+the tool won't change the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-LIBPATH"><envar>$LIBPATH</envar></link>
+construction variable.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-QT_MOC">
+ <term>QT_MOC</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Default value is '<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-QT_BINPATH"><envar>$QT_BINPATH</envar></link>/moc'.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-QT_MOCCXXPREFIX">
+ <term>QT_MOCCXXPREFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Default value is ''. Prefix for moc output files, when source is a cxx file.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-QT_MOCCXXSUFFIX">
+ <term>QT_MOCCXXSUFFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Default value is '.moc'. Suffix for moc output files, when source is a cxx
+file.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-QT_MOCFROMCXXCOM">
+ <term>QT_MOCFROMCXXCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Command to generate a moc file from a cpp file.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-QT_MOCFROMCXXCOMSTR">
+ <term>QT_MOCFROMCXXCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when generating a moc file from a cpp file.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-QT_MOCFROMCXXCOM"><envar>$QT_MOCFROMCXXCOM</envar></link> (the command line) is displayed.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-QT_MOCFROMCXXFLAGS">
+ <term>QT_MOCFROMCXXFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Default value is '-i'. These flags are passed to moc, when moccing a
+C++ file.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-QT_MOCFROMHCOM">
+ <term>QT_MOCFROMHCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Command to generate a moc file from a header.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-QT_MOCFROMHCOMSTR">
+ <term>QT_MOCFROMHCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when generating a moc file from a cpp file.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-QT_MOCFROMHCOM"><envar>$QT_MOCFROMHCOM</envar></link> (the command line) is displayed.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-QT_MOCFROMHFLAGS">
+ <term>QT_MOCFROMHFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Default value is ''. These flags are passed to moc, when moccing a header
+file.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-QT_MOCHPREFIX">
+ <term>QT_MOCHPREFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Default value is 'moc_'. Prefix for moc output files, when source is a header.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-QT_MOCHSUFFIX">
+ <term>QT_MOCHSUFFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Default value is '<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-CXXFILESUFFIX"><envar>$CXXFILESUFFIX</envar></link>'. Suffix for moc output files, when source is
+a header.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-QT_UIC">
+ <term>QT_UIC</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Default value is '<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-QT_BINPATH"><envar>$QT_BINPATH</envar></link>/uic'.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-QT_UICCOM">
+ <term>QT_UICCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Command to generate header files from .ui files.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-QT_UICCOMSTR">
+ <term>QT_UICCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when generating header files from .ui files.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-QT_UICCOM"><envar>$QT_UICCOM</envar></link> (the command line) is displayed.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-QT_UICDECLFLAGS">
+ <term>QT_UICDECLFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Default value is ''. These flags are passed to uic, when creating a a h
+file from a .ui file.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-QT_UICDECLPREFIX">
+ <term>QT_UICDECLPREFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Default value is ''. Prefix for uic generated header files.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-QT_UICDECLSUFFIX">
+ <term>QT_UICDECLSUFFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Default value is '.h'. Suffix for uic generated header files.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-QT_UICIMPLFLAGS">
+ <term>QT_UICIMPLFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Default value is ''. These flags are passed to uic, when creating a cxx
+file from a .ui file.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-QT_UICIMPLPREFIX">
+ <term>QT_UICIMPLPREFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Default value is 'uic_'. Prefix for uic generated implementation files.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-QT_UICIMPLSUFFIX">
+ <term>QT_UICIMPLSUFFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Default value is '<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-CXXFILESUFFIX"><envar>$CXXFILESUFFIX</envar></link>'. Suffix for uic generated implementation
+files.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-QT_UISUFFIX">
+ <term>QT_UISUFFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Default value is '.ui'. Suffix of designer input files.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-QTDIR">
+ <term>QTDIR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The qt tool tries to take this from os.environ.
+It also initializes all QT_*
+construction variables listed below.
+(Note that all paths are constructed
+with python's os.path.join() method,
+but are listed here with the '/' separator
+for easier reading.)
+In addition, the construction environment
+variables <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-CPPPATH"><envar>$CPPPATH</envar></link>,
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-LIBPATH"><envar>$LIBPATH</envar></link> and
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-LIBS"><envar>$LIBS</envar></link> may be modified
+and the variables
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-PROGEMITTER"><envar>$PROGEMITTER</envar></link>, <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHLIBEMITTER"><envar>$SHLIBEMITTER</envar></link> and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-LIBEMITTER"><envar>$LIBEMITTER</envar></link>
+are modified. Because the build-performance is affected when using this tool,
+you have to explicitly specify it at Environment creation:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+Environment(tools=['default','qt'])
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The qt tool supports the following operations:
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<emphasis role="strong">Automatic moc file generation from header files.</emphasis>
+You do not have to specify moc files explicitly, the tool does it for you.
+However, there are a few preconditions to do so: Your header file must have
+the same filebase as your implementation file and must stay in the same
+directory. It must have one of the suffixes .h, .hpp, .H, .hxx, .hh. You
+can turn off automatic moc file generation by setting QT_AUTOSCAN to 0.
+See also the corresponding
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Moc</function>()
+builder method.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<emphasis role="strong">Automatic moc file generation from cxx files.</emphasis>
+As stated in the qt documentation, include the moc file at the end of
+the cxx file. Note that you have to include the file, which is generated
+by the transformation ${QT_MOCCXXPREFIX}&lt;basename&gt;${QT_MOCCXXSUFFIX}, by default
+&lt;basename&gt;.moc. A warning is generated after building the moc file, if you
+do not include the correct file. If you are using VariantDir, you may
+need to specify duplicate=1. You can turn off automatic moc file generation
+by setting QT_AUTOSCAN to 0. See also the corresponding
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Moc</function>
+builder method.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<emphasis role="strong">Automatic handling of .ui files.</emphasis>
+The implementation files generated from .ui files are handled much the same
+as yacc or lex files. Each .ui file given as a source of Program, Library or
+SharedLibrary will generate three files, the declaration file, the
+implementation file and a moc file. Because there are also generated headers,
+you may need to specify duplicate=1 in calls to VariantDir.
+See also the corresponding
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Uic</function>
+builder method.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-RANLIB">
+ <term>RANLIB</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The archive indexer.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-RANLIBCOM">
+ <term>RANLIBCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to index a static library archive.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-RANLIBCOMSTR">
+ <term>RANLIBCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when a static library archive is indexed.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-RANLIBCOM"><envar>$RANLIBCOM</envar></link> (the command line) is displayed.
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment(RANLIBCOMSTR = "Indexing $TARGET")
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-RANLIBFLAGS">
+ <term>RANLIBFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+General options passed to the archive indexer.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-RC">
+ <term>RC</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The resource compiler used to build
+a Microsoft Visual C++ resource file.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-RCCOM">
+ <term>RCCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to build
+a Microsoft Visual C++ resource file.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-RCCOMSTR">
+ <term>RCCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when invoking the resource compiler
+to build a Microsoft Visual C++ resource file.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-RCCOM"><envar>$RCCOM</envar></link> (the command line) is displayed.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-RCFLAGS">
+ <term>RCFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The flags passed to the resource compiler by the RES builder.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-RCINCFLAGS">
+ <term>RCINCFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+An automatically-generated construction variable
+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>
+to the beginning and end
+of each directory in <envar xmlns="http://www.scons.org/dbxsd/v1.0">$CPPPATH</envar>.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-RCINCPREFIX">
+ <term>RCINCPREFIX</term>
+ <listitem>
+<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
+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>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-RCINCSUFFIX">
+ <term>RCINCSUFFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The suffix used to specify an include directory
+on the resource compiler command line.
+This will be appended to the end of each directory
+in the <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>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-RCS">
+ <term>RCS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The RCS executable.
+Note that this variable is not actually used
+for the command to fetch source files from RCS;
+see the
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-RCS_CO"><envar>$RCS_CO</envar></link>
+construction variable, below.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-RCS_CO">
+ <term>RCS_CO</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The RCS "checkout" executable,
+used to fetch source files from RCS.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-RCS_COCOM">
+ <term>RCS_COCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to
+fetch (checkout) source files from RCS.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-RCS_COCOMSTR">
+ <term>RCS_COCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when fetching
+a source file from RCS.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-RCS_COCOM"><envar>$RCS_COCOM</envar></link>
+(the command line) is displayed.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-RCS_COFLAGS">
+ <term>RCS_COFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Options that are passed to the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-RCS_CO"><envar>$RCS_CO</envar></link> command.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-RDirs">
+ <term>RDirs</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A function that converts a string into a list of Dir instances by
+searching the repositories.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-REGSVR">
+ <term>REGSVR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The program used on Windows systems
+to register a newly-built DLL library
+whenever the <function xmlns="http://www.scons.org/dbxsd/v1.0">SharedLibrary</function> builder
+is passed a keyword argument of <literal>register=1</literal>.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-REGSVRCOM">
+ <term>REGSVRCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used on Windows systems
+to register a newly-built DLL library
+whenever the <function xmlns="http://www.scons.org/dbxsd/v1.0">SharedLibrary</function> builder
+is passed a keyword argument of <literal>register=1</literal>.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-REGSVRCOMSTR">
+ <term>REGSVRCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when registering a newly-built DLL file.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-REGSVRCOM"><envar>$REGSVRCOM</envar></link> (the command line) is displayed.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-REGSVRFLAGS">
+ <term>REGSVRFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Flags passed to the DLL registration program
+on Windows systems when a newly-built DLL library is registered.
+By default,
+this includes the <option>/s</option>
+that prevents dialog boxes from popping up
+and requiring user attention.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-RMIC">
+ <term>RMIC</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The Java RMI stub compiler.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-RMICCOM">
+ <term>RMICCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to compile stub
+and skeleton class files
+from Java classes that contain RMI implementations.
+Any options specified in the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-RMICFLAGS"><envar>$RMICFLAGS</envar></link> construction variable
+are included on this command line.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-RMICCOMSTR">
+ <term>RMICCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when compiling
+stub and skeleton class files
+from Java classes that contain RMI implementations.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-RMICCOM"><envar>$RMICCOM</envar></link> (the command line) is displayed.
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment(RMICCOMSTR = "Generating stub/skeleton class files $TARGETS from $SOURCES")
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-RMICFLAGS">
+ <term>RMICFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+General options passed to the Java RMI stub compiler.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-_RPATH">
+ <term>_RPATH</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+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>
+to the beginning and end
+of each directory in <envar xmlns="http://www.scons.org/dbxsd/v1.0">$RPATH</envar>.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-RPATH">
+ <term>RPATH</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A list of paths to search for shared libraries when running programs.
+Currently only used in the GNU (gnulink),
+IRIX (sgilink) and Sun (sunlink) linkers.
+Ignored on platforms and toolchains that don't support it.
+Note that the paths added to RPATH
+are not transformed by
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+in any way: if you want an absolute
+path, you must make it absolute yourself.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-RPATHPREFIX">
+ <term>RPATHPREFIX</term>
+ <listitem>
+<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
+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>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-RPATHSUFFIX">
+ <term>RPATHSUFFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The suffix used to specify a directory to be searched for
+shared libraries when running programs.
+This will be appended to the end 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>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-RPCGEN">
+ <term>RPCGEN</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The RPC protocol compiler.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-RPCGENCLIENTFLAGS">
+ <term>RPCGENCLIENTFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Options passed to the RPC protocol compiler
+when generating client side stubs.
+These are in addition to any flags specified in the
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-RPCGENFLAGS"><envar>$RPCGENFLAGS</envar></link>
+construction variable.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-RPCGENFLAGS">
+ <term>RPCGENFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+General options passed to the RPC protocol compiler.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-RPCGENHEADERFLAGS">
+ <term>RPCGENHEADERFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Options passed to the RPC protocol compiler
+when generating a header file.
+These are in addition to any flags specified in the
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-RPCGENFLAGS"><envar>$RPCGENFLAGS</envar></link>
+construction variable.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-RPCGENSERVICEFLAGS">
+ <term>RPCGENSERVICEFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Options passed to the RPC protocol compiler
+when generating server side stubs.
+These are in addition to any flags specified in the
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-RPCGENFLAGS"><envar>$RPCGENFLAGS</envar></link>
+construction variable.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-RPCGENXDRFLAGS">
+ <term>RPCGENXDRFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Options passed to the RPC protocol compiler
+when generating XDR routines.
+These are in addition to any flags specified in the
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-RPCGENFLAGS"><envar>$RPCGENFLAGS</envar></link>
+construction variable.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SCANNERS">
+ <term>SCANNERS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A list of the available implicit dependency scanners.
+New file scanners may be added by
+appending to this list,
+although the more flexible approach
+is to associate scanners
+with a specific Builder.
+See the sections "Builder Objects"
+and "Scanner Objects,"
+below, for more information.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SCCS">
+ <term>SCCS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The SCCS executable.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SCCSCOM">
+ <term>SCCSCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to
+fetch source files from SCCS.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SCCSCOMSTR">
+ <term>SCCSCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when fetching
+a source file from a CVS repository.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SCCSCOM"><envar>$SCCSCOM</envar></link>
+(the command line) is displayed.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SCCSFLAGS">
+ <term>SCCSFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+General options that are passed to SCCS.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SCCSGETFLAGS">
+ <term>SCCSGETFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Options that are passed specifically to the SCCS "get" subcommand.
+This can be set, for example, to
+<option>-e</option>
+to check out editable files from SCCS.
+</para>
+</listitem>
+ </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>
+ </varlistentry>
+ <varlistentry id="cv-SHCC">
+ <term>SHCC</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The C compiler used for generating shared-library objects.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHCCCOM">
+ <term>SHCCCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to compile a C source file
+to a shared-library object file.
+Any options specified in the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHCFLAGS"><envar>$SHCFLAGS</envar></link>,
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHCCFLAGS"><envar>$SHCCFLAGS</envar></link> and
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-CPPFLAGS"><envar>$CPPFLAGS</envar></link> construction variables
+are included on this command line.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHCCCOMSTR">
+ <term>SHCCCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when a C source file
+is compiled to a shared object file.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHCCCOM"><envar>$SHCCCOM</envar></link> (the command line) is displayed.
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment(SHCCCOMSTR = "Compiling shared object $TARGET")
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHCCFLAGS">
+ <term>SHCCFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Options that are passed to the C and C++ compilers
+to generate shared-library objects.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHCFLAGS">
+ <term>SHCFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Options that are passed to the C compiler (only; not C++)
+to generate shared-library objects.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHCXX">
+ <term>SHCXX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The C++ compiler used for generating shared-library objects.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHCXXCOM">
+ <term>SHCXXCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to compile a C++ source file
+to a shared-library object file.
+Any options specified in the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHCXXFLAGS"><envar>$SHCXXFLAGS</envar></link> and
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-CPPFLAGS"><envar>$CPPFLAGS</envar></link> construction variables
+are included on this command line.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHCXXCOMSTR">
+ <term>SHCXXCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when a C++ source file
+is compiled to a shared object file.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHCXXCOM"><envar>$SHCXXCOM</envar></link> (the command line) is displayed.
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment(SHCXXCOMSTR = "Compiling shared object $TARGET")
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHCXXFLAGS">
+ <term>SHCXXFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Options that are passed to the C++ compiler
+to generate shared-library objects.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHELL">
+ <term>SHELL</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A string naming the shell program that will be passed to the
+<envar xmlns="http://www.scons.org/dbxsd/v1.0">$SPAWN</envar>
+function.
+See the
+<envar xmlns="http://www.scons.org/dbxsd/v1.0">$SPAWN</envar>
+construction variable for more information.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHF03">
+ <term>SHF03</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The Fortran 03 compiler used for generating shared-library objects.
+You should normally set the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHFORTRAN"><envar>$SHFORTRAN</envar></link> variable,
+which specifies the default Fortran compiler
+for all Fortran versions.
+You only need to set <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHF03"><envar>$SHF03</envar></link> if you need to use a specific compiler
+or compiler version for Fortran 03 files.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHF03COM">
+ <term>SHF03COM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to compile a Fortran 03 source file
+to a shared-library object file.
+You only need to set <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHF03COM"><envar>$SHF03COM</envar></link> if you need to use a specific
+command line for Fortran 03 files.
+You should normally set the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHFORTRANCOM"><envar>$SHFORTRANCOM</envar></link> variable,
+which specifies the default command line
+for all Fortran versions.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHF03COMSTR">
+ <term>SHF03COMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when a Fortran 03 source file
+is compiled to a shared-library object file.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHF03COM"><envar>$SHF03COM</envar></link> or <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHFORTRANCOM"><envar>$SHFORTRANCOM</envar></link>
+(the command line) is displayed.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHF03FLAGS">
+ <term>SHF03FLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Options that are passed to the Fortran 03 compiler
+to generated shared-library objects.
+You only need to set <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHF03FLAGS"><envar>$SHF03FLAGS</envar></link> if you need to define specific
+user options for Fortran 03 files.
+You should normally set the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHFORTRANFLAGS"><envar>$SHFORTRANFLAGS</envar></link> variable,
+which specifies the user-specified options
+passed to the default Fortran compiler
+for all Fortran versions.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHF03PPCOM">
+ <term>SHF03PPCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to compile a Fortran 03 source file to a
+shared-library object file
+after first running the file through the C preprocessor.
+Any options specified in the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHF03FLAGS"><envar>$SHF03FLAGS</envar></link> and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-CPPFLAGS"><envar>$CPPFLAGS</envar></link> construction variables
+are included on this command line.
+You only need to set <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHF03PPCOM"><envar>$SHF03PPCOM</envar></link> if you need to use a specific
+C-preprocessor command line for Fortran 03 files.
+You should normally set the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHFORTRANPPCOM"><envar>$SHFORTRANPPCOM</envar></link> variable,
+which specifies the default C-preprocessor command line
+for all Fortran versions.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHF03PPCOMSTR">
+ <term>SHF03PPCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when a Fortran 03 source file
+is compiled to a shared-library object file
+after first running the file through the C preprocessor.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHF03PPCOM"><envar>$SHF03PPCOM</envar></link> or <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHFORTRANPPCOM"><envar>$SHFORTRANPPCOM</envar></link>
+(the command line) is displayed.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHF77">
+ <term>SHF77</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The Fortran 77 compiler used for generating shared-library objects.
+You should normally set the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHFORTRAN"><envar>$SHFORTRAN</envar></link> variable,
+which specifies the default Fortran compiler
+for all Fortran versions.
+You only need to set <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHF77"><envar>$SHF77</envar></link> if you need to use a specific compiler
+or compiler version for Fortran 77 files.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHF77COM">
+ <term>SHF77COM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to compile a Fortran 77 source file
+to a shared-library object file.
+You only need to set <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHF77COM"><envar>$SHF77COM</envar></link> if you need to use a specific
+command line for Fortran 77 files.
+You should normally set the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHFORTRANCOM"><envar>$SHFORTRANCOM</envar></link> variable,
+which specifies the default command line
+for all Fortran versions.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHF77COMSTR">
+ <term>SHF77COMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when a Fortran 77 source file
+is compiled to a shared-library object file.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHF77COM"><envar>$SHF77COM</envar></link> or <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHFORTRANCOM"><envar>$SHFORTRANCOM</envar></link>
+(the command line) is displayed.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHF77FLAGS">
+ <term>SHF77FLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Options that are passed to the Fortran 77 compiler
+to generated shared-library objects.
+You only need to set <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHF77FLAGS"><envar>$SHF77FLAGS</envar></link> if you need to define specific
+user options for Fortran 77 files.
+You should normally set the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHFORTRANFLAGS"><envar>$SHFORTRANFLAGS</envar></link> variable,
+which specifies the user-specified options
+passed to the default Fortran compiler
+for all Fortran versions.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHF77PPCOM">
+ <term>SHF77PPCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to compile a Fortran 77 source file to a
+shared-library object file
+after first running the file through the C preprocessor.
+Any options specified in the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHF77FLAGS"><envar>$SHF77FLAGS</envar></link> and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-CPPFLAGS"><envar>$CPPFLAGS</envar></link> construction variables
+are included on this command line.
+You only need to set <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHF77PPCOM"><envar>$SHF77PPCOM</envar></link> if you need to use a specific
+C-preprocessor command line for Fortran 77 files.
+You should normally set the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHFORTRANPPCOM"><envar>$SHFORTRANPPCOM</envar></link> variable,
+which specifies the default C-preprocessor command line
+for all Fortran versions.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHF77PPCOMSTR">
+ <term>SHF77PPCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when a Fortran 77 source file
+is compiled to a shared-library object file
+after first running the file through the C preprocessor.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHF77PPCOM"><envar>$SHF77PPCOM</envar></link> or <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHFORTRANPPCOM"><envar>$SHFORTRANPPCOM</envar></link>
+(the command line) is displayed.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHF90">
+ <term>SHF90</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The Fortran 90 compiler used for generating shared-library objects.
+You should normally set the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHFORTRAN"><envar>$SHFORTRAN</envar></link> variable,
+which specifies the default Fortran compiler
+for all Fortran versions.
+You only need to set <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHF90"><envar>$SHF90</envar></link> if you need to use a specific compiler
+or compiler version for Fortran 90 files.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHF90COM">
+ <term>SHF90COM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to compile a Fortran 90 source file
+to a shared-library object file.
+You only need to set <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHF90COM"><envar>$SHF90COM</envar></link> if you need to use a specific
+command line for Fortran 90 files.
+You should normally set the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHFORTRANCOM"><envar>$SHFORTRANCOM</envar></link> variable,
+which specifies the default command line
+for all Fortran versions.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHF90COMSTR">
+ <term>SHF90COMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when a Fortran 90 source file
+is compiled to a shared-library object file.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHF90COM"><envar>$SHF90COM</envar></link> or <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHFORTRANCOM"><envar>$SHFORTRANCOM</envar></link>
+(the command line) is displayed.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHF90FLAGS">
+ <term>SHF90FLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Options that are passed to the Fortran 90 compiler
+to generated shared-library objects.
+You only need to set <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHF90FLAGS"><envar>$SHF90FLAGS</envar></link> if you need to define specific
+user options for Fortran 90 files.
+You should normally set the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHFORTRANFLAGS"><envar>$SHFORTRANFLAGS</envar></link> variable,
+which specifies the user-specified options
+passed to the default Fortran compiler
+for all Fortran versions.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHF90PPCOM">
+ <term>SHF90PPCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to compile a Fortran 90 source file to a
+shared-library object file
+after first running the file through the C preprocessor.
+Any options specified in the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHF90FLAGS"><envar>$SHF90FLAGS</envar></link> and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-CPPFLAGS"><envar>$CPPFLAGS</envar></link> construction variables
+are included on this command line.
+You only need to set <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHF90PPCOM"><envar>$SHF90PPCOM</envar></link> if you need to use a specific
+C-preprocessor command line for Fortran 90 files.
+You should normally set the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHFORTRANPPCOM"><envar>$SHFORTRANPPCOM</envar></link> variable,
+which specifies the default C-preprocessor command line
+for all Fortran versions.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHF90PPCOMSTR">
+ <term>SHF90PPCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when a Fortran 90 source file
+is compiled to a shared-library object file
+after first running the file through the C preprocessor.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHF90PPCOM"><envar>$SHF90PPCOM</envar></link> or <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHFORTRANPPCOM"><envar>$SHFORTRANPPCOM</envar></link>
+(the command line) is displayed.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHF95">
+ <term>SHF95</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The Fortran 95 compiler used for generating shared-library objects.
+You should normally set the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHFORTRAN"><envar>$SHFORTRAN</envar></link> variable,
+which specifies the default Fortran compiler
+for all Fortran versions.
+You only need to set <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHF95"><envar>$SHF95</envar></link> if you need to use a specific compiler
+or compiler version for Fortran 95 files.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHF95COM">
+ <term>SHF95COM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to compile a Fortran 95 source file
+to a shared-library object file.
+You only need to set <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHF95COM"><envar>$SHF95COM</envar></link> if you need to use a specific
+command line for Fortran 95 files.
+You should normally set the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHFORTRANCOM"><envar>$SHFORTRANCOM</envar></link> variable,
+which specifies the default command line
+for all Fortran versions.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHF95COMSTR">
+ <term>SHF95COMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when a Fortran 95 source file
+is compiled to a shared-library object file.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHF95COM"><envar>$SHF95COM</envar></link> or <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHFORTRANCOM"><envar>$SHFORTRANCOM</envar></link>
+(the command line) is displayed.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHF95FLAGS">
+ <term>SHF95FLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Options that are passed to the Fortran 95 compiler
+to generated shared-library objects.
+You only need to set <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHF95FLAGS"><envar>$SHF95FLAGS</envar></link> if you need to define specific
+user options for Fortran 95 files.
+You should normally set the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHFORTRANFLAGS"><envar>$SHFORTRANFLAGS</envar></link> variable,
+which specifies the user-specified options
+passed to the default Fortran compiler
+for all Fortran versions.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHF95PPCOM">
+ <term>SHF95PPCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to compile a Fortran 95 source file to a
+shared-library object file
+after first running the file through the C preprocessor.
+Any options specified in the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHF95FLAGS"><envar>$SHF95FLAGS</envar></link> and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-CPPFLAGS"><envar>$CPPFLAGS</envar></link> construction variables
+are included on this command line.
+You only need to set <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHF95PPCOM"><envar>$SHF95PPCOM</envar></link> if you need to use a specific
+C-preprocessor command line for Fortran 95 files.
+You should normally set the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHFORTRANPPCOM"><envar>$SHFORTRANPPCOM</envar></link> variable,
+which specifies the default C-preprocessor command line
+for all Fortran versions.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHF95PPCOMSTR">
+ <term>SHF95PPCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when a Fortran 95 source file
+is compiled to a shared-library object file
+after first running the file through the C preprocessor.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHF95PPCOM"><envar>$SHF95PPCOM</envar></link> or <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHFORTRANPPCOM"><envar>$SHFORTRANPPCOM</envar></link>
+(the command line) is displayed.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHFORTRAN">
+ <term>SHFORTRAN</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The default Fortran compiler used for generating shared-library objects.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHFORTRANCOM">
+ <term>SHFORTRANCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to compile a Fortran source file
+to a shared-library object file.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHFORTRANCOMSTR">
+ <term>SHFORTRANCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when a Fortran source file
+is compiled to a shared-library object file.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHFORTRANCOM"><envar>$SHFORTRANCOM</envar></link>
+(the command line) is displayed.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHFORTRANFLAGS">
+ <term>SHFORTRANFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Options that are passed to the Fortran compiler
+to generate shared-library objects.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHFORTRANPPCOM">
+ <term>SHFORTRANPPCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to compile a Fortran source file to a
+shared-library object file
+after first running the file through the C preprocessor.
+Any options specified
+in the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHFORTRANFLAGS"><envar>$SHFORTRANFLAGS</envar></link> and
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-CPPFLAGS"><envar>$CPPFLAGS</envar></link> construction variables
+are included on this command line.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHFORTRANPPCOMSTR">
+ <term>SHFORTRANPPCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when a Fortran source file
+is compiled to a shared-library object file
+after first running the file through the C preprocessor.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHFORTRANPPCOM"><envar>$SHFORTRANPPCOM</envar></link>
+(the command line) is displayed.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHLIBEMITTER">
+ <term>SHLIBEMITTER</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+TODO
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHLIBPREFIX">
+ <term>SHLIBPREFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The prefix used for shared library file names.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHLIBSUFFIX">
+ <term>SHLIBSUFFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The suffix used for shared library file names.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHLIBVERSION">
+ <term>SHLIBVERSION</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+When this construction variable is defined, a versioned shared library
+is created. This modifies the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHLINKFLAGS"><envar>$SHLINKFLAGS</envar></link> as required, adds
+the version number to the library name, and creates the symlinks that
+are needed. <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHLIBVERSION"><envar>$SHLIBVERSION</envar></link> needs to be of the form X.Y.Z,
+where X and Y are numbers, and Z is a number but can also contain
+letters to designate alpha, beta, or release candidate patch levels.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHLINK">
+ <term>SHLINK</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The linker for programs that use shared libraries.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHLINKCOM">
+ <term>SHLINKCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to link programs using shared libraries.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHLINKCOMSTR">
+ <term>SHLINKCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when programs using shared libraries are linked.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHLINKCOM"><envar>$SHLINKCOM</envar></link> (the command line) is displayed.
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment(SHLINKCOMSTR = "Linking shared $TARGET")
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHLINKFLAGS">
+ <term>SHLINKFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+General user options passed to the linker for programs using shared libraries.
+Note that this variable should
+<emphasis>not</emphasis>
+contain
+<option>-l</option>
+(or similar) options for linking with the libraries listed in <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-LIBS"><envar>$LIBS</envar></link>,
+nor
+<option>-L</option>
+(or similar) include search path options
+that scons generates automatically from <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-LIBPATH"><envar>$LIBPATH</envar></link>.
+See
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-_LIBFLAGS"><envar>$_LIBFLAGS</envar></link>
+above,
+for the variable that expands to library-link options,
+and
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-_LIBDIRFLAGS"><envar>$_LIBDIRFLAGS</envar></link>
+above,
+for the variable that expands to library search path options.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHOBJPREFIX">
+ <term>SHOBJPREFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The prefix used for shared object file names.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHOBJSUFFIX">
+ <term>SHOBJSUFFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The suffix used for shared object file names.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SOURCE">
+ <term>SOURCE</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A reserved variable name
+that may not be set or used in a construction environment.
+(See "Variable Substitution," below.)
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SOURCE_URL">
+ <term>SOURCE_URL</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The URL
+(web address)
+of the location from which the project was retrieved.
+This is used to fill in the
+<literal>Source:</literal>
+field in the controlling information for Ipkg and RPM packages.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SOURCES">
+ <term>SOURCES</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A reserved variable name
+that may not be set or used in a construction environment.
+(See "Variable Substitution," below.)
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SPAWN">
+ <term>SPAWN</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A command interpreter function that will be called to execute command line
+strings. The function must expect the following arguments:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+def spawn(shell, escape, cmd, args, env):
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+<varname>sh</varname>
+is a string naming the shell program to use.
+<varname>escape</varname>
+is a function that can be called to escape shell special characters in
+the command line.
+<varname>cmd</varname>
+is the path to the command to be executed.
+<varname>args</varname>
+is the arguments to the command.
+<varname>env</varname>
+is a dictionary of the environment variables
+in which the command should be executed.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SUBST_DICT">
+ <term>SUBST_DICT</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The dictionary used by the <function xmlns="http://www.scons.org/dbxsd/v1.0">Substfile</function> or <function xmlns="http://www.scons.org/dbxsd/v1.0">Textfile</function> builders
+for substitution values.
+It can be anything acceptable to the dict() constructor,
+so in addition to a dictionary,
+lists of tuples are also acceptable.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SUBSTFILEPREFIX">
+ <term>SUBSTFILEPREFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The prefix used for <function xmlns="http://www.scons.org/dbxsd/v1.0">Substfile</function> file names,
+the null string by default.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SUBSTFILESUFFIX">
+ <term>SUBSTFILESUFFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The suffix used for <function xmlns="http://www.scons.org/dbxsd/v1.0">Substfile</function> file names,
+the null string by default.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SUMMARY">
+ <term>SUMMARY</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A short summary of what the project is about.
+This is used to fill in the
+<literal>Summary:</literal>
+field in the controlling information for Ipkg and RPM packages,
+and as the
+<literal>Description:</literal>
+field in MSI packages.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SWIG">
+ <term>SWIG</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The scripting language wrapper and interface generator.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SWIGCFILESUFFIX">
+ <term>SWIGCFILESUFFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The suffix that will be used for intermediate C
+source files generated by
+the scripting language wrapper and interface generator.
+The default value is
+<filename>_wrap</filename><link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-CFILESUFFIX"><envar>$CFILESUFFIX</envar></link>.
+By default, this value is used whenever the
+<option>-c++</option>
+option is
+<emphasis>not</emphasis>
+specified as part of the
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SWIGFLAGS"><envar>$SWIGFLAGS</envar></link>
+construction variable.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SWIGCOM">
+ <term>SWIGCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to call
+the scripting language wrapper and interface generator.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SWIGCOMSTR">
+ <term>SWIGCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when calling
+the scripting language wrapper and interface generator.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SWIGCOM"><envar>$SWIGCOM</envar></link> (the command line) is displayed.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SWIGCXXFILESUFFIX">
+ <term>SWIGCXXFILESUFFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The suffix that will be used for intermediate C++
+source files generated by
+the scripting language wrapper and interface generator.
+The default value is
+<filename>_wrap</filename><link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-CFILESUFFIX"><envar>$CFILESUFFIX</envar></link>.
+By default, this value is used whenever the
+<filename>-c++</filename>
+option is specified as part of the
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SWIGFLAGS"><envar>$SWIGFLAGS</envar></link>
+construction variable.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SWIGDIRECTORSUFFIX">
+ <term>SWIGDIRECTORSUFFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The suffix that will be used for intermediate C++ header
+files generated by the scripting language wrapper and interface generator.
+These are only generated for C++ code when the SWIG 'directors' feature is
+turned on.
+The default value is
+<filename>_wrap.h</filename>.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SWIGFLAGS">
+ <term>SWIGFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+General options passed to
+the scripting language wrapper and interface generator.
+This is where you should set
+<option>-python</option>,
+<option>-perl5</option>,
+<option>-tcl</option>,
+or whatever other options you want to specify to SWIG.
+If you set the
+<option>-c++</option>
+option in this variable,
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+will, by default,
+generate a C++ intermediate source file
+with the extension that is specified as the
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-CXXFILESUFFIX"><envar>$CXXFILESUFFIX</envar></link>
+variable.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-_SWIGINCFLAGS">
+ <term>_SWIGINCFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+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>
+to the beginning and end
+of each directory in <envar xmlns="http://www.scons.org/dbxsd/v1.0">$SWIGPATH</envar>.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SWIGINCPREFIX">
+ <term>SWIGINCPREFIX</term>
+ <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
+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>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SWIGINCSUFFIX">
+ <term>SWIGINCSUFFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The suffix used to specify an include directory on the SWIG command line.
+This will be appended to the end 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>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SWIGOUTDIR">
+ <term>SWIGOUTDIR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Specifies the output directory in which
+the scripting language wrapper and interface generator
+should place generated language-specific files.
+This will be used by SCons to identify
+the files that will be generated by the <application xmlns="http://www.scons.org/dbxsd/v1.0">swig</application> call,
+and translated into the
+<literal>swig -outdir</literal> option on the command line.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SWIGPATH">
+ <term>SWIGPATH</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The list of directories that the scripting language wrapper
+and interface generate will search for included files.
+The SWIG implicit dependency scanner will search these
+directories for include files.
+The default is to use the same path
+specified as <envar xmlns="http://www.scons.org/dbxsd/v1.0">$CPPPATH</envar>.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Don't explicitly put include directory
+arguments in SWIGFLAGS;
+the result will be non-portable
+and the directories will not be searched by the dependency scanner.
+Note: directory names in SWIGPATH will be looked-up relative to the SConscript
+directory when they are used in a command.
+To force
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+to look-up a directory relative to the root of the source tree use #:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment(SWIGPATH='#/include')
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The directory look-up can also be forced using the
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Dir</function>()
+function:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+include = Dir('include')
+env = Environment(SWIGPATH=include)
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The directory list will be added to command lines
+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
+<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
+of each directory in <envar xmlns="http://www.scons.org/dbxsd/v1.0">$SWIGPATH</envar>.
+Any command lines you define that need
+the SWIGPATH directory list should
+include <envar xmlns="http://www.scons.org/dbxsd/v1.0">$_SWIGINCFLAGS</envar>:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment(SWIGCOM="my_swig -o $TARGET $_SWIGINCFLAGS $SORUCES")
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SWIGVERSION">
+ <term>SWIGVERSION</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The version number of the SWIG tool.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-TAR">
+ <term>TAR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The tar archiver.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-TARCOM">
+ <term>TARCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to call the tar archiver.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-TARCOMSTR">
+ <term>TARCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when archiving files
+using the tar archiver.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-TARCOM"><envar>$TARCOM</envar></link> (the command line) is displayed.
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment(TARCOMSTR = "Archiving $TARGET")
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-TARFLAGS">
+ <term>TARFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+General options passed to the tar archiver.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-TARGET">
+ <term>TARGET</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A reserved variable name
+that may not be set or used in a construction environment.
+(See "Variable Substitution," below.)
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-TARGET_ARCH">
+ <term>TARGET_ARCH</term>
+ <listitem>
+<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
+running machine's OS (note that the python build or architecture has no
+effect).
+This variable must be passed as an argument to the Environment()
+constructor; setting it later has no effect.
+This is currently only used on Windows, but in the future it will be
+used on other OSes as well.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Valid values for Windows are
+<literal>x86</literal>,
+<literal>i386</literal>
+(for 32 bits);
+<literal>amd64</literal>,
+<literal>emt64</literal>,
+<literal>x86_64</literal>
+(for 64 bits);
+and <literal>ia64</literal> (Itanium).
+For example, if you want to compile 64-bit binaries, you would set
+<literal>TARGET_ARCH='x86_64'</literal> in your SCons environment.
+</para>
+
+<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>
+ </varlistentry>
+ <varlistentry id="cv-TARGET_OS">
+ <term>TARGET_OS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+ The name of the target operating system for the compiled objects
+ created by this Environment.
+ This defaults to the value of HOST_OS, and the user can override it.
+ Currently only set for Win32.
+</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry id="cv-TARGETS">
+ <term>TARGETS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A reserved variable name
+that may not be set or used in a construction environment.
+(See "Variable Substitution," below.)
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-TARSUFFIX">
+ <term>TARSUFFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The suffix used for tar file names.
+</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
+or '-via' for ARM toolchain.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-TEX">
+ <term>TEX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The TeX formatter and typesetter.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-TEXCOM">
+ <term>TEXCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to call the TeX formatter and typesetter.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-TEXCOMSTR">
+ <term>TEXCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when calling
+the TeX formatter and typesetter.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-TEXCOM"><envar>$TEXCOM</envar></link> (the command line) is displayed.
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment(TEXCOMSTR = "Building $TARGET from TeX input $SOURCES")
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-TEXFLAGS">
+ <term>TEXFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+General options passed to the TeX formatter and typesetter.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-TEXINPUTS">
+ <term>TEXINPUTS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+List of directories that the LaTeX program will search
+for include directories.
+The LaTeX implicit dependency scanner will search these
+directories for \include and \import files.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-TEXTFILEPREFIX">
+ <term>TEXTFILEPREFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The prefix used for <function xmlns="http://www.scons.org/dbxsd/v1.0">Textfile</function> file names,
+the null string by default.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-TEXTFILESUFFIX">
+ <term>TEXTFILESUFFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The suffix used for <function xmlns="http://www.scons.org/dbxsd/v1.0">Textfile</function> file names;
+<filename>.txt</filename> by default.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-TOOLS">
+ <term>TOOLS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A list of the names of the Tool specifications
+that are part of this construction environment.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-UNCHANGED_SOURCES">
+ <term>UNCHANGED_SOURCES</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A reserved variable name
+that may not be set or used in a construction environment.
+(See "Variable Substitution," below.)
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-UNCHANGED_TARGETS">
+ <term>UNCHANGED_TARGETS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A reserved variable name
+that may not be set or used in a construction environment.
+(See "Variable Substitution," below.)
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-VENDOR">
+ <term>VENDOR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The person or organization who supply the packaged software.
+This is used to fill in the
+<literal>Vendor:</literal>
+field in the controlling information for RPM packages,
+and the
+<literal>Manufacturer:</literal>
+field in the controlling information for MSI packages.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-VERSION">
+ <term>VERSION</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The version of the project, specified as a string.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-WIN32_INSERT_DEF">
+ <term>WIN32_INSERT_DEF</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A deprecated synonym for <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-WINDOWS_INSERT_DEF"><envar>$WINDOWS_INSERT_DEF</envar></link>.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-WIN32DEFPREFIX">
+ <term>WIN32DEFPREFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A deprecated synonym for <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-WINDOWSDEFPREFIX"><envar>$WINDOWSDEFPREFIX</envar></link>.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-WIN32DEFSUFFIX">
+ <term>WIN32DEFSUFFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A deprecated synonym for <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-WINDOWSDEFSUFFIX"><envar>$WINDOWSDEFSUFFIX</envar></link>.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-WIN32EXPPREFIX">
+ <term>WIN32EXPPREFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A deprecated synonym for <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-WINDOWSEXPSUFFIX"><envar>$WINDOWSEXPSUFFIX</envar></link>.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-WIN32EXPSUFFIX">
+ <term>WIN32EXPSUFFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A deprecated synonym for <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-WINDOWSEXPSUFFIX"><envar>$WINDOWSEXPSUFFIX</envar></link>.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-WINDOWS_EMBED_MANIFEST">
+ <term>WINDOWS_EMBED_MANIFEST</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Set this variable to True or 1 to embed the compiler-generated manifest
+(normally <literal>${TARGET}.manifest</literal>)
+into all Windows exes and DLLs built with this environment,
+as a resource during their link step.
+This is done using <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-MT"><envar>$MT</envar></link> and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-MTEXECOM"><envar>$MTEXECOM</envar></link> and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-MTSHLIBCOM"><envar>$MTSHLIBCOM</envar></link>.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-WINDOWS_INSERT_DEF">
+ <term>WINDOWS_INSERT_DEF</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+When this is set to true,
+a library build of a Windows shared library
+(<filename>.dll</filename> file)
+will also build a corresponding <filename>.def</filename> file
+at the same time,
+if a <filename>.def</filename> file
+is not already listed as a build target.
+The default is 0 (do not build a <filename>.def</filename> file).
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-WINDOWS_INSERT_MANIFEST">
+ <term>WINDOWS_INSERT_MANIFEST</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+When this is set to true,
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+will be aware of the
+<filename>.manifest</filename>
+files generated by Microsoft Visua C/C++ 8.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-WINDOWSDEFPREFIX">
+ <term>WINDOWSDEFPREFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The prefix used for Windows <filename>.def</filename> file names.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-WINDOWSDEFSUFFIX">
+ <term>WINDOWSDEFSUFFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The suffix used for Windows <filename>.def</filename> file names.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-WINDOWSEXPPREFIX">
+ <term>WINDOWSEXPPREFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The prefix used for Windows <filename>.exp</filename> file names.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-WINDOWSEXPSUFFIX">
+ <term>WINDOWSEXPSUFFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The suffix used for Windows <filename>.exp</filename> file names.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-WINDOWSPROGMANIFESTPREFIX">
+ <term>WINDOWSPROGMANIFESTPREFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The prefix used for executable program <filename>.manifest</filename> files
+generated by Microsoft Visual C/C++.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-WINDOWSPROGMANIFESTSUFFIX">
+ <term>WINDOWSPROGMANIFESTSUFFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The suffix used for executable program <filename>.manifest</filename> files
+generated by Microsoft Visual C/C++.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-WINDOWSSHLIBMANIFESTPREFIX">
+ <term>WINDOWSSHLIBMANIFESTPREFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The prefix used for shared library <filename>.manifest</filename> files
+generated by Microsoft Visual C/C++.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-WINDOWSSHLIBMANIFESTSUFFIX">
+ <term>WINDOWSSHLIBMANIFESTSUFFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The suffix used for shared library <filename>.manifest</filename> files
+generated by Microsoft Visual C/C++.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-X_IPK_DEPENDS">
+ <term>X_IPK_DEPENDS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This is used to fill in the
+<literal>Depends:</literal>
+field in the controlling information for Ipkg packages.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-X_IPK_DESCRIPTION">
+ <term>X_IPK_DESCRIPTION</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This is used to fill in the
+<literal>Description:</literal>
+field in the controlling information for Ipkg packages.
+The default value is
+<literal>$SUMMARY\n$DESCRIPTION</literal>
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-X_IPK_MAINTAINER">
+ <term>X_IPK_MAINTAINER</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This is used to fill in the
+<literal>Maintainer:</literal>
+field in the controlling information for Ipkg packages.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-X_IPK_PRIORITY">
+ <term>X_IPK_PRIORITY</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This is used to fill in the
+<literal>Priority:</literal>
+field in the controlling information for Ipkg packages.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-X_IPK_SECTION">
+ <term>X_IPK_SECTION</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This is used to fill in the
+<literal>Section:</literal>
+field in the controlling information for Ipkg packages.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-X_MSI_LANGUAGE">
+ <term>X_MSI_LANGUAGE</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This is used to fill in the
+<literal>Language:</literal>
+attribute in the controlling information for MSI packages.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-X_MSI_LICENSE_TEXT">
+ <term>X_MSI_LICENSE_TEXT</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The text of the software license in RTF format.
+Carriage return characters will be
+replaced with the RTF equivalent \\par.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-X_MSI_UPGRADE_CODE">
+ <term>X_MSI_UPGRADE_CODE</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+TODO
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-X_RPM_AUTOREQPROV">
+ <term>X_RPM_AUTOREQPROV</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This is used to fill in the
+<literal>AutoReqProv:</literal>
+field in the RPM
+<filename>.spec</filename> file.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-X_RPM_BUILD">
+ <term>X_RPM_BUILD</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+internal, but overridable
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-X_RPM_BUILDREQUIRES">
+ <term>X_RPM_BUILDREQUIRES</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This is used to fill in the
+<literal>BuildRequires:</literal>
+field in the RPM
+<filename>.spec</filename> file.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-X_RPM_BUILDROOT">
+ <term>X_RPM_BUILDROOT</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+internal, but overridable
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-X_RPM_CLEAN">
+ <term>X_RPM_CLEAN</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+internal, but overridable
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-X_RPM_CONFLICTS">
+ <term>X_RPM_CONFLICTS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This is used to fill in the
+<literal>Conflicts:</literal>
+field in the RPM
+<filename>.spec</filename> file.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-X_RPM_DEFATTR">
+ <term>X_RPM_DEFATTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This value is used as the default attributes
+for the files in the RPM package.
+The default value is
+<literal>(-,root,root)</literal>.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-X_RPM_DISTRIBUTION">
+ <term>X_RPM_DISTRIBUTION</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This is used to fill in the
+<literal>Distribution:</literal>
+field in the RPM
+<filename>.spec</filename> file.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-X_RPM_EPOCH">
+ <term>X_RPM_EPOCH</term>
+ <listitem>
+<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.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-X_RPM_EXCLUDEARCH">
+ <term>X_RPM_EXCLUDEARCH</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This is used to fill in the
+<literal>ExcludeArch:</literal>
+field in the RPM
+<filename>.spec</filename> file.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-X_RPM_EXLUSIVEARCH">
+ <term>X_RPM_EXLUSIVEARCH</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This is used to fill in the
+<literal>ExclusiveArch:</literal>
+field in the RPM
+<filename>.spec</filename> file.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-X_RPM_GROUP">
+ <term>X_RPM_GROUP</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This is used to fill in the
+<literal>Group:</literal>
+field in the RPM
+<filename>.spec</filename> file.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-X_RPM_GROUP_lang">
+ <term>X_RPM_GROUP_lang</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This is used to fill in the
+<literal>Group(lang):</literal>
+field in the RPM
+<filename>.spec</filename> file.
+Note that
+<varname>lang</varname>
+is not literal
+and should be replaced by
+the appropriate language code.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-X_RPM_ICON">
+ <term>X_RPM_ICON</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This is used to fill in the
+<literal>Icon:</literal>
+field in the RPM
+<filename>.spec</filename> file.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-X_RPM_INSTALL">
+ <term>X_RPM_INSTALL</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+internal, but overridable
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-X_RPM_PACKAGER">
+ <term>X_RPM_PACKAGER</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This is used to fill in the
+<literal>Packager:</literal>
+field in the RPM
+<filename>.spec</filename> file.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-X_RPM_POSTINSTALL">
+ <term>X_RPM_POSTINSTALL</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This is used to fill in the
+<literal>%post:</literal>
+section in the RPM
+<filename>.spec</filename> file.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-X_RPM_POSTUNINSTALL">
+ <term>X_RPM_POSTUNINSTALL</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This is used to fill in the
+<literal>%postun:</literal>
+section in the RPM
+<filename>.spec</filename> file.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-X_RPM_PREFIX">
+ <term>X_RPM_PREFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This is used to fill in the
+<literal>Prefix:</literal>
+field in the RPM
+<filename>.spec</filename> file.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-X_RPM_PREINSTALL">
+ <term>X_RPM_PREINSTALL</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This is used to fill in the
+<literal>%pre:</literal>
+section in the RPM
+<filename>.spec</filename> file.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-X_RPM_PREP">
+ <term>X_RPM_PREP</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+internal, but overridable
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-X_RPM_PREUNINSTALL">
+ <term>X_RPM_PREUNINSTALL</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This is used to fill in the
+<literal>%preun:</literal>
+section in the RPM
+<filename>.spec</filename> file.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-X_RPM_PROVIDES">
+ <term>X_RPM_PROVIDES</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This is used to fill in the
+<literal>Provides:</literal>
+field in the RPM
+<filename>.spec</filename> file.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-X_RPM_REQUIRES">
+ <term>X_RPM_REQUIRES</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This is used to fill in the
+<literal>Requires:</literal>
+field in the RPM
+<filename>.spec</filename> file.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-X_RPM_SERIAL">
+ <term>X_RPM_SERIAL</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This is used to fill in the
+<literal>Serial:</literal>
+field in the RPM
+<filename>.spec</filename> file.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-X_RPM_URL">
+ <term>X_RPM_URL</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This is used to fill in the
+<literal>Url:</literal>
+field in the RPM
+<filename>.spec</filename> file.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-XGETTEXT">
+ <term>XGETTEXT</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Path to <command>xgettext(1)</command> program (found via
+<function>Detect()</function>).
+See <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="t-xgettext"><literal>xgettext</literal></link> tool and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-POTUpdate"><function>POTUpdate</function></link> builder.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-XGETTEXTCOM">
+ <term>XGETTEXTCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Complete xgettext command line.
+See <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="t-xgettext"><literal>xgettext</literal></link> tool and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-POTUpdate"><function>POTUpdate</function></link> builder.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-XGETTEXTCOMSTR">
+ <term>XGETTEXTCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A string that is shown when <command>xgettext(1)</command> command is invoked
+(default: <literal>''</literal>, which means "print <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-XGETTEXTCOM"><envar>$XGETTEXTCOM</envar></link>").
+See <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="t-xgettext"><literal>xgettext</literal></link> tool and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-POTUpdate"><function>POTUpdate</function></link> builder.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-_XGETTEXTDOMAIN">
+ <term>_XGETTEXTDOMAIN</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Internal "macro". Generates <command>xgettext</command> domain name
+form source and target (default: <literal>'${TARGET.filebase}'</literal>).
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-XGETTEXTFLAGS">
+ <term>XGETTEXTFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Additional flags to <command>xgettext(1)</command>.
+See <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="t-xgettext"><literal>xgettext</literal></link> tool and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-POTUpdate"><function>POTUpdate</function></link> builder.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-XGETTEXTFROM">
+ <term>XGETTEXTFROM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Name of file containing list of <command>xgettext(1)</command>'s source
+files. Autotools' users know this as <filename>POTFILES.in</filename> so they
+will in most cases set <literal>XGETTEXTFROM="POTFILES.in"</literal> here.
+The <envar xmlns="http://www.scons.org/dbxsd/v1.0">$XGETTEXTFROM</envar> files have same syntax and semantics as the well known
+GNU <filename>POTFILES.in</filename>.
+See <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="t-xgettext"><literal>xgettext</literal></link> tool and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-POTUpdate"><function>POTUpdate</function></link> builder.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-_XGETTEXTFROMFLAGS">
+ <term>_XGETTEXTFROMFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Internal "macro". Genrates list of <literal>-D&lt;dir&gt;</literal> flags
+from the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-XGETTEXTPATH"><envar>$XGETTEXTPATH</envar></link> list.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-XGETTEXTFROMPREFIX">
+ <term>XGETTEXTFROMPREFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This flag is used to add single <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-XGETTEXTFROM"><envar>$XGETTEXTFROM</envar></link> file to
+<command>xgettext(1)</command>'s commandline (default:
+<literal>'-f'</literal>).
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-XGETTEXTFROMSUFFIX">
+ <term>XGETTEXTFROMSUFFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+(default: <literal>''</literal>)
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-XGETTEXTPATH">
+ <term>XGETTEXTPATH</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+List of directories, there <command>xgettext(1)</command> will look for
+source files (default: <literal>[]</literal>).
+<note><para>
+This variable works only together with <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-XGETTEXTFROM"><envar>$XGETTEXTFROM</envar></link>
+</para></note>
+See also <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="t-xgettext"><literal>xgettext</literal></link> tool and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-POTUpdate"><function>POTUpdate</function></link> builder.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-_XGETTEXTPATHFLAGS">
+ <term>_XGETTEXTPATHFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Internal "macro". Generates list of <literal>-f&lt;file&gt;</literal> flags
+from <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-XGETTEXTFROM"><envar>$XGETTEXTFROM</envar></link>.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-XGETTEXTPATHPREFIX">
+ <term>XGETTEXTPATHPREFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This flag is used to add single search path to
+<command>xgettext(1)</command>'s commandline (default:
+<literal>'-D'</literal>).
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-XGETTEXTPATHSUFFIX">
+ <term>XGETTEXTPATHSUFFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+(default: <literal>''</literal>)
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-YACC">
+ <term>YACC</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The parser generator.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-YACCCOM">
+ <term>YACCCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to call the parser generator
+to generate a source file.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-YACCCOMSTR">
+ <term>YACCCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when generating a source file
+using the parser generator.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-YACCCOM"><envar>$YACCCOM</envar></link> (the command line) is displayed.
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment(YACCCOMSTR = "Yacc'ing $TARGET from $SOURCES")
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-YACCFLAGS">
+ <term>YACCFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+General options passed to the parser generator.
+If <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-YACCFLAGS"><envar>$YACCFLAGS</envar></link> contains a <option>-d</option> option,
+SCons assumes that the call will also create a .h file
+(if the yacc source file ends in a .y suffix)
+or a .hpp file
+(if the yacc source file ends in a .yy suffix)
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-YACCHFILESUFFIX">
+ <term>YACCHFILESUFFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The suffix of the C
+header file generated by the parser generator
+when the
+<option>-d</option>
+option is used.
+Note that setting this variable does not cause
+the parser generator to generate a header
+file with the specified suffix,
+it exists to allow you to specify
+what suffix the parser generator will use of its own accord.
+The default value is
+<filename>.h</filename>.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-YACCHXXFILESUFFIX">
+ <term>YACCHXXFILESUFFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The suffix of the C++
+header file generated by the parser generator
+when the
+<option>-d</option>
+option is used.
+Note that setting this variable does not cause
+the parser generator to generate a header
+file with the specified suffix,
+it exists to allow you to specify
+what suffix the parser generator will use of its own accord.
+The default value is
+<filename>.hpp</filename>,
+except on Mac OS X,
+where the default is
+<filename>${TARGET.suffix}.h</filename>.
+because the default <application xmlns="http://www.scons.org/dbxsd/v1.0">bison</application> parser generator just
+appends <filename>.h</filename>
+to the name of the generated C++ file.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-YACCVCGFILESUFFIX">
+ <term>YACCVCGFILESUFFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The suffix of the file
+containing the VCG grammar automaton definition
+when the
+<option>--graph=</option>
+option is used.
+Note that setting this variable does not cause
+the parser generator to generate a VCG
+file with the specified suffix,
+it exists to allow you to specify
+what suffix the parser generator will use of its own accord.
+The default value is
+<filename>.vcg</filename>.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-ZIP">
+ <term>ZIP</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The zip compression and file packaging utility.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-ZIPCOM">
+ <term>ZIPCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to call the zip utility,
+or the internal Python function used to create a
+zip archive.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-ZIPCOMPRESSION">
+ <term>ZIPCOMPRESSION</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The
+<varname>compression</varname>
+flag
+from the Python
+<filename>zipfile</filename>
+module used by the internal Python function
+to control whether the zip archive
+is compressed or not.
+The default value is
+<literal>zipfile.ZIP_DEFLATED</literal>,
+which creates a compressed zip archive.
+This value has no effect if the
+<literal>zipfile</literal>
+module is unavailable.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-ZIPCOMSTR">
+ <term>ZIPCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when archiving files
+using the zip utility.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-ZIPCOM"><envar>$ZIPCOM</envar></link>
+(the command line or internal Python function) is displayed.
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment(ZIPCOMSTR = "Zipping $TARGET")
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-ZIPFLAGS">
+ <term>ZIPFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+General options passed to the zip utility.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-ZIPSUFFIX">
+ <term>ZIPSUFFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The suffix used for zip file names.
+</para>
+</listitem>
+ </varlistentry>
+</variablelist>
diff --git a/doc/generated/variables.mod b/doc/generated/variables.mod
new file mode 100644
index 00000000..28b0d41c
--- /dev/null
+++ b/doc/generated/variables.mod
@@ -0,0 +1,1123 @@
+<!--
+THIS IS AN AUTOMATICALLY-GENERATED FILE. DO NOT EDIT.
+-->
+
+<!--
+
+ Regular construction variable entities.
+
+-->
+
+<!ENTITY cv-AR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$AR</envar>">
+<!ENTITY cv-ARCHITECTURE "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$ARCHITECTURE</envar>">
+<!ENTITY cv-ARCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$ARCOM</envar>">
+<!ENTITY cv-ARCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$ARCOMSTR</envar>">
+<!ENTITY cv-ARFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$ARFLAGS</envar>">
+<!ENTITY cv-AS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$AS</envar>">
+<!ENTITY cv-ASCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$ASCOM</envar>">
+<!ENTITY cv-ASCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$ASCOMSTR</envar>">
+<!ENTITY cv-ASFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$ASFLAGS</envar>">
+<!ENTITY cv-ASPPCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$ASPPCOM</envar>">
+<!ENTITY cv-ASPPCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$ASPPCOMSTR</envar>">
+<!ENTITY cv-ASPPFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$ASPPFLAGS</envar>">
+<!ENTITY cv-BIBTEX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$BIBTEX</envar>">
+<!ENTITY cv-BIBTEXCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$BIBTEXCOM</envar>">
+<!ENTITY cv-BIBTEXCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$BIBTEXCOMSTR</envar>">
+<!ENTITY cv-BIBTEXFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$BIBTEXFLAGS</envar>">
+<!ENTITY cv-BITKEEPER "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$BITKEEPER</envar>">
+<!ENTITY cv-BITKEEPERCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$BITKEEPERCOM</envar>">
+<!ENTITY cv-BITKEEPERCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$BITKEEPERCOMSTR</envar>">
+<!ENTITY cv-BITKEEPERGET "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$BITKEEPERGET</envar>">
+<!ENTITY cv-BITKEEPERGETFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$BITKEEPERGETFLAGS</envar>">
+<!ENTITY cv-BUILDERS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$BUILDERS</envar>">
+<!ENTITY cv-CC "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$CC</envar>">
+<!ENTITY cv-CCCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$CCCOM</envar>">
+<!ENTITY cv-CCCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$CCCOMSTR</envar>">
+<!ENTITY cv-CCFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$CCFLAGS</envar>">
+<!ENTITY cv-CCPCHFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$CCPCHFLAGS</envar>">
+<!ENTITY cv-CCPDBFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$CCPDBFLAGS</envar>">
+<!ENTITY cv-CCVERSION "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$CCVERSION</envar>">
+<!ENTITY cv-CFILESUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$CFILESUFFIX</envar>">
+<!ENTITY cv-CFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$CFLAGS</envar>">
+<!ENTITY cv-CHANGE_SPECFILE "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$CHANGE_SPECFILE</envar>">
+<!ENTITY cv-CHANGED_SOURCES "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$CHANGED_SOURCES</envar>">
+<!ENTITY cv-CHANGED_TARGETS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$CHANGED_TARGETS</envar>">
+<!ENTITY cv-CHANGELOG "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$CHANGELOG</envar>">
+<!ENTITY cv-_concat "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$_concat</envar>">
+<!ENTITY cv-CONFIGUREDIR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$CONFIGUREDIR</envar>">
+<!ENTITY cv-CONFIGURELOG "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$CONFIGURELOG</envar>">
+<!ENTITY cv-_CPPDEFFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$_CPPDEFFLAGS</envar>">
+<!ENTITY cv-CPPDEFINES "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$CPPDEFINES</envar>">
+<!ENTITY cv-CPPDEFPREFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$CPPDEFPREFIX</envar>">
+<!ENTITY cv-CPPDEFSUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$CPPDEFSUFFIX</envar>">
+<!ENTITY cv-CPPFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$CPPFLAGS</envar>">
+<!ENTITY cv-_CPPINCFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$_CPPINCFLAGS</envar>">
+<!ENTITY cv-CPPPATH "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$CPPPATH</envar>">
+<!ENTITY cv-CPPSUFFIXES "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$CPPSUFFIXES</envar>">
+<!ENTITY cv-CVS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$CVS</envar>">
+<!ENTITY cv-CVSCOFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$CVSCOFLAGS</envar>">
+<!ENTITY cv-CVSCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$CVSCOM</envar>">
+<!ENTITY cv-CVSCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$CVSCOMSTR</envar>">
+<!ENTITY cv-CVSFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$CVSFLAGS</envar>">
+<!ENTITY cv-CVSREPOSITORY "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$CVSREPOSITORY</envar>">
+<!ENTITY cv-CXX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$CXX</envar>">
+<!ENTITY cv-CXXCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$CXXCOM</envar>">
+<!ENTITY cv-CXXCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$CXXCOMSTR</envar>">
+<!ENTITY cv-CXXFILESUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$CXXFILESUFFIX</envar>">
+<!ENTITY cv-CXXFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$CXXFLAGS</envar>">
+<!ENTITY cv-CXXVERSION "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$CXXVERSION</envar>">
+<!ENTITY cv-DESCRIPTION "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$DESCRIPTION</envar>">
+<!ENTITY cv-DESCRIPTION_lang "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$DESCRIPTION_lang</envar>">
+<!ENTITY cv-Dir "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$Dir</envar>">
+<!ENTITY cv-Dirs "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$Dirs</envar>">
+<!ENTITY cv-DSUFFIXES "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$DSUFFIXES</envar>">
+<!ENTITY cv-DVIPDF "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$DVIPDF</envar>">
+<!ENTITY cv-DVIPDFCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$DVIPDFCOM</envar>">
+<!ENTITY cv-DVIPDFCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$DVIPDFCOMSTR</envar>">
+<!ENTITY cv-DVIPDFFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$DVIPDFFLAGS</envar>">
+<!ENTITY cv-DVIPS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$DVIPS</envar>">
+<!ENTITY cv-DVIPSFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$DVIPSFLAGS</envar>">
+<!ENTITY cv-ENV "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$ENV</envar>">
+<!ENTITY cv-ESCAPE "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$ESCAPE</envar>">
+<!ENTITY cv-F03 "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$F03</envar>">
+<!ENTITY cv-F03COM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$F03COM</envar>">
+<!ENTITY cv-F03COMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$F03COMSTR</envar>">
+<!ENTITY cv-F03FILESUFFIXES "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$F03FILESUFFIXES</envar>">
+<!ENTITY cv-F03FLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$F03FLAGS</envar>">
+<!ENTITY cv-_F03INCFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$_F03INCFLAGS</envar>">
+<!ENTITY cv-F03PATH "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$F03PATH</envar>">
+<!ENTITY cv-F03PPCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$F03PPCOM</envar>">
+<!ENTITY cv-F03PPCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$F03PPCOMSTR</envar>">
+<!ENTITY cv-F03PPFILESUFFIXES "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$F03PPFILESUFFIXES</envar>">
+<!ENTITY cv-F77 "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$F77</envar>">
+<!ENTITY cv-F77COM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$F77COM</envar>">
+<!ENTITY cv-F77COMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$F77COMSTR</envar>">
+<!ENTITY cv-F77FILESUFFIXES "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$F77FILESUFFIXES</envar>">
+<!ENTITY cv-F77FLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$F77FLAGS</envar>">
+<!ENTITY cv-_F77INCFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$_F77INCFLAGS</envar>">
+<!ENTITY cv-F77PATH "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$F77PATH</envar>">
+<!ENTITY cv-F77PPCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$F77PPCOM</envar>">
+<!ENTITY cv-F77PPCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$F77PPCOMSTR</envar>">
+<!ENTITY cv-F77PPFILESUFFIXES "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$F77PPFILESUFFIXES</envar>">
+<!ENTITY cv-F90 "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$F90</envar>">
+<!ENTITY cv-F90COM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$F90COM</envar>">
+<!ENTITY cv-F90COMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$F90COMSTR</envar>">
+<!ENTITY cv-F90FILESUFFIXES "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$F90FILESUFFIXES</envar>">
+<!ENTITY cv-F90FLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$F90FLAGS</envar>">
+<!ENTITY cv-_F90INCFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$_F90INCFLAGS</envar>">
+<!ENTITY cv-F90PATH "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$F90PATH</envar>">
+<!ENTITY cv-F90PPCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$F90PPCOM</envar>">
+<!ENTITY cv-F90PPCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$F90PPCOMSTR</envar>">
+<!ENTITY cv-F90PPFILESUFFIXES "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$F90PPFILESUFFIXES</envar>">
+<!ENTITY cv-F95 "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$F95</envar>">
+<!ENTITY cv-F95COM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$F95COM</envar>">
+<!ENTITY cv-F95COMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$F95COMSTR</envar>">
+<!ENTITY cv-F95FILESUFFIXES "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$F95FILESUFFIXES</envar>">
+<!ENTITY cv-F95FLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$F95FLAGS</envar>">
+<!ENTITY cv-_F95INCFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$_F95INCFLAGS</envar>">
+<!ENTITY cv-F95PATH "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$F95PATH</envar>">
+<!ENTITY cv-F95PPCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$F95PPCOM</envar>">
+<!ENTITY cv-F95PPCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$F95PPCOMSTR</envar>">
+<!ENTITY cv-F95PPFILESUFFIXES "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$F95PPFILESUFFIXES</envar>">
+<!ENTITY cv-File "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$File</envar>">
+<!ENTITY cv-FORTRAN "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$FORTRAN</envar>">
+<!ENTITY cv-FORTRANCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$FORTRANCOM</envar>">
+<!ENTITY cv-FORTRANCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$FORTRANCOMSTR</envar>">
+<!ENTITY cv-FORTRANFILESUFFIXES "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$FORTRANFILESUFFIXES</envar>">
+<!ENTITY cv-FORTRANFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$FORTRANFLAGS</envar>">
+<!ENTITY cv-_FORTRANINCFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$_FORTRANINCFLAGS</envar>">
+<!ENTITY cv-FORTRANMODDIR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$FORTRANMODDIR</envar>">
+<!ENTITY cv-FORTRANMODDIRPREFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$FORTRANMODDIRPREFIX</envar>">
+<!ENTITY cv-FORTRANMODDIRSUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$FORTRANMODDIRSUFFIX</envar>">
+<!ENTITY cv-_FORTRANMODFLAG "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$_FORTRANMODFLAG</envar>">
+<!ENTITY cv-FORTRANMODPREFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$FORTRANMODPREFIX</envar>">
+<!ENTITY cv-FORTRANMODSUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$FORTRANMODSUFFIX</envar>">
+<!ENTITY cv-FORTRANPATH "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$FORTRANPATH</envar>">
+<!ENTITY cv-FORTRANPPCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$FORTRANPPCOM</envar>">
+<!ENTITY cv-FORTRANPPCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$FORTRANPPCOMSTR</envar>">
+<!ENTITY cv-FORTRANPPFILESUFFIXES "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$FORTRANPPFILESUFFIXES</envar>">
+<!ENTITY cv-FORTRANSUFFIXES "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$FORTRANSUFFIXES</envar>">
+<!ENTITY cv-FRAMEWORKPATH "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$FRAMEWORKPATH</envar>">
+<!ENTITY cv-_FRAMEWORKPATH "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$_FRAMEWORKPATH</envar>">
+<!ENTITY cv-FRAMEWORKPATHPREFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$FRAMEWORKPATHPREFIX</envar>">
+<!ENTITY cv-FRAMEWORKPREFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$FRAMEWORKPREFIX</envar>">
+<!ENTITY cv-_FRAMEWORKS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$_FRAMEWORKS</envar>">
+<!ENTITY cv-FRAMEWORKS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$FRAMEWORKS</envar>">
+<!ENTITY cv-FRAMEWORKSFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$FRAMEWORKSFLAGS</envar>">
+<!ENTITY cv-GS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$GS</envar>">
+<!ENTITY cv-GSCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$GSCOM</envar>">
+<!ENTITY cv-GSCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$GSCOMSTR</envar>">
+<!ENTITY cv-GSFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$GSFLAGS</envar>">
+<!ENTITY cv-HOST_ARCH "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$HOST_ARCH</envar>">
+<!ENTITY cv-HOST_OS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$HOST_OS</envar>">
+<!ENTITY cv-IDLSUFFIXES "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$IDLSUFFIXES</envar>">
+<!ENTITY cv-IMPLICIT_COMMAND_DEPENDENCIES "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$IMPLICIT_COMMAND_DEPENDENCIES</envar>">
+<!ENTITY cv-INCPREFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$INCPREFIX</envar>">
+<!ENTITY cv-INCSUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$INCSUFFIX</envar>">
+<!ENTITY cv-INSTALL "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$INSTALL</envar>">
+<!ENTITY cv-INSTALLSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$INSTALLSTR</envar>">
+<!ENTITY cv-INTEL_C_COMPILER_VERSION "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$INTEL_C_COMPILER_VERSION</envar>">
+<!ENTITY cv-JAR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$JAR</envar>">
+<!ENTITY cv-JARCHDIR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$JARCHDIR</envar>">
+<!ENTITY cv-JARCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$JARCOM</envar>">
+<!ENTITY cv-JARCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$JARCOMSTR</envar>">
+<!ENTITY cv-JARFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$JARFLAGS</envar>">
+<!ENTITY cv-JARSUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$JARSUFFIX</envar>">
+<!ENTITY cv-JAVABOOTCLASSPATH "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$JAVABOOTCLASSPATH</envar>">
+<!ENTITY cv-JAVAC "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$JAVAC</envar>">
+<!ENTITY cv-JAVACCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$JAVACCOM</envar>">
+<!ENTITY cv-JAVACCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$JAVACCOMSTR</envar>">
+<!ENTITY cv-JAVACFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$JAVACFLAGS</envar>">
+<!ENTITY cv-JAVACLASSDIR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$JAVACLASSDIR</envar>">
+<!ENTITY cv-JAVACLASSPATH "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$JAVACLASSPATH</envar>">
+<!ENTITY cv-JAVACLASSSUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$JAVACLASSSUFFIX</envar>">
+<!ENTITY cv-JAVAH "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$JAVAH</envar>">
+<!ENTITY cv-JAVAHCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$JAVAHCOM</envar>">
+<!ENTITY cv-JAVAHCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$JAVAHCOMSTR</envar>">
+<!ENTITY cv-JAVAHFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$JAVAHFLAGS</envar>">
+<!ENTITY cv-JAVASOURCEPATH "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$JAVASOURCEPATH</envar>">
+<!ENTITY cv-JAVASUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$JAVASUFFIX</envar>">
+<!ENTITY cv-JAVAVERSION "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$JAVAVERSION</envar>">
+<!ENTITY cv-LATEX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$LATEX</envar>">
+<!ENTITY cv-LATEXCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$LATEXCOM</envar>">
+<!ENTITY cv-LATEXCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$LATEXCOMSTR</envar>">
+<!ENTITY cv-LATEXFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$LATEXFLAGS</envar>">
+<!ENTITY cv-LATEXRETRIES "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$LATEXRETRIES</envar>">
+<!ENTITY cv-LATEXSUFFIXES "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$LATEXSUFFIXES</envar>">
+<!ENTITY cv-LDMODULE "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$LDMODULE</envar>">
+<!ENTITY cv-LDMODULECOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$LDMODULECOM</envar>">
+<!ENTITY cv-LDMODULECOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$LDMODULECOMSTR</envar>">
+<!ENTITY cv-LDMODULEFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$LDMODULEFLAGS</envar>">
+<!ENTITY cv-LDMODULEPREFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$LDMODULEPREFIX</envar>">
+<!ENTITY cv-LDMODULESUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$LDMODULESUFFIX</envar>">
+<!ENTITY cv-LEX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$LEX</envar>">
+<!ENTITY cv-LEXCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$LEXCOM</envar>">
+<!ENTITY cv-LEXCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$LEXCOMSTR</envar>">
+<!ENTITY cv-LEXFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$LEXFLAGS</envar>">
+<!ENTITY cv-_LIBDIRFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$_LIBDIRFLAGS</envar>">
+<!ENTITY cv-LIBDIRPREFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$LIBDIRPREFIX</envar>">
+<!ENTITY cv-LIBDIRSUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$LIBDIRSUFFIX</envar>">
+<!ENTITY cv-LIBEMITTER "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$LIBEMITTER</envar>">
+<!ENTITY cv-_LIBFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$_LIBFLAGS</envar>">
+<!ENTITY cv-LIBLINKPREFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$LIBLINKPREFIX</envar>">
+<!ENTITY cv-LIBLINKSUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$LIBLINKSUFFIX</envar>">
+<!ENTITY cv-LIBPATH "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$LIBPATH</envar>">
+<!ENTITY cv-LIBPREFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$LIBPREFIX</envar>">
+<!ENTITY cv-LIBPREFIXES "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$LIBPREFIXES</envar>">
+<!ENTITY cv-LIBS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$LIBS</envar>">
+<!ENTITY cv-LIBSUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$LIBSUFFIX</envar>">
+<!ENTITY cv-LIBSUFFIXES "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$LIBSUFFIXES</envar>">
+<!ENTITY cv-LICENSE "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$LICENSE</envar>">
+<!ENTITY cv-LINESEPARATOR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$LINESEPARATOR</envar>">
+<!ENTITY cv-LINGUAS_FILE "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$LINGUAS_FILE</envar>">
+<!ENTITY cv-LINK "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$LINK</envar>">
+<!ENTITY cv-LINKCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$LINKCOM</envar>">
+<!ENTITY cv-LINKCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$LINKCOMSTR</envar>">
+<!ENTITY cv-LINKFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$LINKFLAGS</envar>">
+<!ENTITY cv-M4 "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$M4</envar>">
+<!ENTITY cv-M4COM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$M4COM</envar>">
+<!ENTITY cv-M4COMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$M4COMSTR</envar>">
+<!ENTITY cv-M4FLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$M4FLAGS</envar>">
+<!ENTITY cv-MAKEINDEX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MAKEINDEX</envar>">
+<!ENTITY cv-MAKEINDEXCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MAKEINDEXCOM</envar>">
+<!ENTITY cv-MAKEINDEXCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MAKEINDEXCOMSTR</envar>">
+<!ENTITY cv-MAKEINDEXFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MAKEINDEXFLAGS</envar>">
+<!ENTITY cv-MAXLINELENGTH "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MAXLINELENGTH</envar>">
+<!ENTITY cv-MIDL "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MIDL</envar>">
+<!ENTITY cv-MIDLCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MIDLCOM</envar>">
+<!ENTITY cv-MIDLCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MIDLCOMSTR</envar>">
+<!ENTITY cv-MIDLFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MIDLFLAGS</envar>">
+<!ENTITY cv-MOSUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MOSUFFIX</envar>">
+<!ENTITY cv-MSGFMT "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MSGFMT</envar>">
+<!ENTITY cv-MSGFMTCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MSGFMTCOM</envar>">
+<!ENTITY cv-MSGFMTCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MSGFMTCOMSTR</envar>">
+<!ENTITY cv-MSGFMTFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MSGFMTFLAGS</envar>">
+<!ENTITY cv-MSGINIT "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MSGINIT</envar>">
+<!ENTITY cv-MSGINITCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MSGINITCOM</envar>">
+<!ENTITY cv-MSGINITCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MSGINITCOMSTR</envar>">
+<!ENTITY cv-MSGINITFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MSGINITFLAGS</envar>">
+<!ENTITY cv-_MSGINITLOCALE "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$_MSGINITLOCALE</envar>">
+<!ENTITY cv-MSGMERGE "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MSGMERGE</envar>">
+<!ENTITY cv-MSGMERGECOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MSGMERGECOM</envar>">
+<!ENTITY cv-MSGMERGECOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MSGMERGECOMSTR</envar>">
+<!ENTITY cv-MSGMERGEFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MSGMERGEFLAGS</envar>">
+<!ENTITY cv-MSSDK_DIR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MSSDK_DIR</envar>">
+<!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_USE_SCRIPT "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MSVC_USE_SCRIPT</envar>">
+<!ENTITY cv-MSVC_VERSION "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MSVC_VERSION</envar>">
+<!ENTITY cv-MSVS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MSVS</envar>">
+<!ENTITY cv-MSVS_ARCH "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MSVS_ARCH</envar>">
+<!ENTITY cv-MSVS_PROJECT_GUID "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MSVS_PROJECT_GUID</envar>">
+<!ENTITY cv-MSVS_SCC_AUX_PATH "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MSVS_SCC_AUX_PATH</envar>">
+<!ENTITY cv-MSVS_SCC_CONNECTION_ROOT "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MSVS_SCC_CONNECTION_ROOT</envar>">
+<!ENTITY cv-MSVS_SCC_PROJECT_NAME "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MSVS_SCC_PROJECT_NAME</envar>">
+<!ENTITY cv-MSVS_SCC_PROVIDER "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MSVS_SCC_PROVIDER</envar>">
+<!ENTITY cv-MSVS_VERSION "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MSVS_VERSION</envar>">
+<!ENTITY cv-MSVSBUILDCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MSVSBUILDCOM</envar>">
+<!ENTITY cv-MSVSCLEANCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MSVSCLEANCOM</envar>">
+<!ENTITY cv-MSVSENCODING "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MSVSENCODING</envar>">
+<!ENTITY cv-MSVSPROJECTCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MSVSPROJECTCOM</envar>">
+<!ENTITY cv-MSVSPROJECTSUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MSVSPROJECTSUFFIX</envar>">
+<!ENTITY cv-MSVSREBUILDCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MSVSREBUILDCOM</envar>">
+<!ENTITY cv-MSVSSCONS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MSVSSCONS</envar>">
+<!ENTITY cv-MSVSSCONSCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MSVSSCONSCOM</envar>">
+<!ENTITY cv-MSVSSCONSCRIPT "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MSVSSCONSCRIPT</envar>">
+<!ENTITY cv-MSVSSCONSFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MSVSSCONSFLAGS</envar>">
+<!ENTITY cv-MSVSSOLUTIONCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MSVSSOLUTIONCOM</envar>">
+<!ENTITY cv-MSVSSOLUTIONSUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MSVSSOLUTIONSUFFIX</envar>">
+<!ENTITY cv-MT "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MT</envar>">
+<!ENTITY cv-MTEXECOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MTEXECOM</envar>">
+<!ENTITY cv-MTFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MTFLAGS</envar>">
+<!ENTITY cv-MTSHLIBCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MTSHLIBCOM</envar>">
+<!ENTITY cv-MWCW_VERSION "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MWCW_VERSION</envar>">
+<!ENTITY cv-MWCW_VERSIONS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$MWCW_VERSIONS</envar>">
+<!ENTITY cv-NAME "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$NAME</envar>">
+<!ENTITY cv-no_import_lib "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$no_import_lib</envar>">
+<!ENTITY cv-OBJPREFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$OBJPREFIX</envar>">
+<!ENTITY cv-OBJSUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$OBJSUFFIX</envar>">
+<!ENTITY cv-P4 "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$P4</envar>">
+<!ENTITY cv-P4COM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$P4COM</envar>">
+<!ENTITY cv-P4COMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$P4COMSTR</envar>">
+<!ENTITY cv-P4FLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$P4FLAGS</envar>">
+<!ENTITY cv-PACKAGEROOT "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$PACKAGEROOT</envar>">
+<!ENTITY cv-PACKAGETYPE "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$PACKAGETYPE</envar>">
+<!ENTITY cv-PACKAGEVERSION "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$PACKAGEVERSION</envar>">
+<!ENTITY cv-PCH "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$PCH</envar>">
+<!ENTITY cv-PCHCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$PCHCOM</envar>">
+<!ENTITY cv-PCHCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$PCHCOMSTR</envar>">
+<!ENTITY cv-PCHPDBFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$PCHPDBFLAGS</envar>">
+<!ENTITY cv-PCHSTOP "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$PCHSTOP</envar>">
+<!ENTITY cv-PDB "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$PDB</envar>">
+<!ENTITY cv-PDFCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$PDFCOM</envar>">
+<!ENTITY cv-PDFLATEX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$PDFLATEX</envar>">
+<!ENTITY cv-PDFLATEXCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$PDFLATEXCOM</envar>">
+<!ENTITY cv-PDFLATEXCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$PDFLATEXCOMSTR</envar>">
+<!ENTITY cv-PDFLATEXFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$PDFLATEXFLAGS</envar>">
+<!ENTITY cv-PDFPREFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$PDFPREFIX</envar>">
+<!ENTITY cv-PDFSUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$PDFSUFFIX</envar>">
+<!ENTITY cv-PDFTEX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$PDFTEX</envar>">
+<!ENTITY cv-PDFTEXCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$PDFTEXCOM</envar>">
+<!ENTITY cv-PDFTEXCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$PDFTEXCOMSTR</envar>">
+<!ENTITY cv-PDFTEXFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$PDFTEXFLAGS</envar>">
+<!ENTITY cv-PKGCHK "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$PKGCHK</envar>">
+<!ENTITY cv-PKGINFO "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$PKGINFO</envar>">
+<!ENTITY cv-PLATFORM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$PLATFORM</envar>">
+<!ENTITY cv-POAUTOINIT "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$POAUTOINIT</envar>">
+<!ENTITY cv-POCREATE_ALIAS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$POCREATE_ALIAS</envar>">
+<!ENTITY cv-POSUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$POSUFFIX</envar>">
+<!ENTITY cv-POTDOMAIN "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$POTDOMAIN</envar>">
+<!ENTITY cv-POTSUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$POTSUFFIX</envar>">
+<!ENTITY cv-POTUPDATE_ALIAS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$POTUPDATE_ALIAS</envar>">
+<!ENTITY cv-POUPDATE_ALIAS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$POUPDATE_ALIAS</envar>">
+<!ENTITY cv-PRINT_CMD_LINE_FUNC "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$PRINT_CMD_LINE_FUNC</envar>">
+<!ENTITY cv-PROGEMITTER "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$PROGEMITTER</envar>">
+<!ENTITY cv-PROGPREFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$PROGPREFIX</envar>">
+<!ENTITY cv-PROGSUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$PROGSUFFIX</envar>">
+<!ENTITY cv-PSCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$PSCOM</envar>">
+<!ENTITY cv-PSCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$PSCOMSTR</envar>">
+<!ENTITY cv-PSPREFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$PSPREFIX</envar>">
+<!ENTITY cv-PSSUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$PSSUFFIX</envar>">
+<!ENTITY cv-QT_AUTOSCAN "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$QT_AUTOSCAN</envar>">
+<!ENTITY cv-QT_BINPATH "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$QT_BINPATH</envar>">
+<!ENTITY cv-QT_CPPPATH "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$QT_CPPPATH</envar>">
+<!ENTITY cv-QT_DEBUG "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$QT_DEBUG</envar>">
+<!ENTITY cv-QT_LIB "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$QT_LIB</envar>">
+<!ENTITY cv-QT_LIBPATH "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$QT_LIBPATH</envar>">
+<!ENTITY cv-QT_MOC "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$QT_MOC</envar>">
+<!ENTITY cv-QT_MOCCXXPREFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$QT_MOCCXXPREFIX</envar>">
+<!ENTITY cv-QT_MOCCXXSUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$QT_MOCCXXSUFFIX</envar>">
+<!ENTITY cv-QT_MOCFROMCXXCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$QT_MOCFROMCXXCOM</envar>">
+<!ENTITY cv-QT_MOCFROMCXXCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$QT_MOCFROMCXXCOMSTR</envar>">
+<!ENTITY cv-QT_MOCFROMCXXFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$QT_MOCFROMCXXFLAGS</envar>">
+<!ENTITY cv-QT_MOCFROMHCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$QT_MOCFROMHCOM</envar>">
+<!ENTITY cv-QT_MOCFROMHCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$QT_MOCFROMHCOMSTR</envar>">
+<!ENTITY cv-QT_MOCFROMHFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$QT_MOCFROMHFLAGS</envar>">
+<!ENTITY cv-QT_MOCHPREFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$QT_MOCHPREFIX</envar>">
+<!ENTITY cv-QT_MOCHSUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$QT_MOCHSUFFIX</envar>">
+<!ENTITY cv-QT_UIC "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$QT_UIC</envar>">
+<!ENTITY cv-QT_UICCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$QT_UICCOM</envar>">
+<!ENTITY cv-QT_UICCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$QT_UICCOMSTR</envar>">
+<!ENTITY cv-QT_UICDECLFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$QT_UICDECLFLAGS</envar>">
+<!ENTITY cv-QT_UICDECLPREFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$QT_UICDECLPREFIX</envar>">
+<!ENTITY cv-QT_UICDECLSUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$QT_UICDECLSUFFIX</envar>">
+<!ENTITY cv-QT_UICIMPLFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$QT_UICIMPLFLAGS</envar>">
+<!ENTITY cv-QT_UICIMPLPREFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$QT_UICIMPLPREFIX</envar>">
+<!ENTITY cv-QT_UICIMPLSUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$QT_UICIMPLSUFFIX</envar>">
+<!ENTITY cv-QT_UISUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$QT_UISUFFIX</envar>">
+<!ENTITY cv-QTDIR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$QTDIR</envar>">
+<!ENTITY cv-RANLIB "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$RANLIB</envar>">
+<!ENTITY cv-RANLIBCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$RANLIBCOM</envar>">
+<!ENTITY cv-RANLIBCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$RANLIBCOMSTR</envar>">
+<!ENTITY cv-RANLIBFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$RANLIBFLAGS</envar>">
+<!ENTITY cv-RC "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$RC</envar>">
+<!ENTITY cv-RCCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$RCCOM</envar>">
+<!ENTITY cv-RCCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$RCCOMSTR</envar>">
+<!ENTITY cv-RCFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$RCFLAGS</envar>">
+<!ENTITY cv-RCINCFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$RCINCFLAGS</envar>">
+<!ENTITY cv-RCINCPREFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$RCINCPREFIX</envar>">
+<!ENTITY cv-RCINCSUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$RCINCSUFFIX</envar>">
+<!ENTITY cv-RCS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$RCS</envar>">
+<!ENTITY cv-RCS_CO "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$RCS_CO</envar>">
+<!ENTITY cv-RCS_COCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$RCS_COCOM</envar>">
+<!ENTITY cv-RCS_COCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$RCS_COCOMSTR</envar>">
+<!ENTITY cv-RCS_COFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$RCS_COFLAGS</envar>">
+<!ENTITY cv-RDirs "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$RDirs</envar>">
+<!ENTITY cv-REGSVR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$REGSVR</envar>">
+<!ENTITY cv-REGSVRCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$REGSVRCOM</envar>">
+<!ENTITY cv-REGSVRCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$REGSVRCOMSTR</envar>">
+<!ENTITY cv-REGSVRFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$REGSVRFLAGS</envar>">
+<!ENTITY cv-RMIC "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$RMIC</envar>">
+<!ENTITY cv-RMICCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$RMICCOM</envar>">
+<!ENTITY cv-RMICCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$RMICCOMSTR</envar>">
+<!ENTITY cv-RMICFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$RMICFLAGS</envar>">
+<!ENTITY cv-_RPATH "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$_RPATH</envar>">
+<!ENTITY cv-RPATH "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$RPATH</envar>">
+<!ENTITY cv-RPATHPREFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$RPATHPREFIX</envar>">
+<!ENTITY cv-RPATHSUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$RPATHSUFFIX</envar>">
+<!ENTITY cv-RPCGEN "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$RPCGEN</envar>">
+<!ENTITY cv-RPCGENCLIENTFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$RPCGENCLIENTFLAGS</envar>">
+<!ENTITY cv-RPCGENFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$RPCGENFLAGS</envar>">
+<!ENTITY cv-RPCGENHEADERFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$RPCGENHEADERFLAGS</envar>">
+<!ENTITY cv-RPCGENSERVICEFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$RPCGENSERVICEFLAGS</envar>">
+<!ENTITY cv-RPCGENXDRFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$RPCGENXDRFLAGS</envar>">
+<!ENTITY cv-SCANNERS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SCANNERS</envar>">
+<!ENTITY cv-SCCS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SCCS</envar>">
+<!ENTITY cv-SCCSCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SCCSCOM</envar>">
+<!ENTITY cv-SCCSCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SCCSCOMSTR</envar>">
+<!ENTITY cv-SCCSFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SCCSFLAGS</envar>">
+<!ENTITY cv-SCCSGETFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SCCSGETFLAGS</envar>">
+<!ENTITY cv-SCONS_HOME "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SCONS_HOME</envar>">
+<!ENTITY cv-SHCC "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHCC</envar>">
+<!ENTITY cv-SHCCCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHCCCOM</envar>">
+<!ENTITY cv-SHCCCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHCCCOMSTR</envar>">
+<!ENTITY cv-SHCCFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHCCFLAGS</envar>">
+<!ENTITY cv-SHCFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHCFLAGS</envar>">
+<!ENTITY cv-SHCXX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHCXX</envar>">
+<!ENTITY cv-SHCXXCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHCXXCOM</envar>">
+<!ENTITY cv-SHCXXCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHCXXCOMSTR</envar>">
+<!ENTITY cv-SHCXXFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHCXXFLAGS</envar>">
+<!ENTITY cv-SHELL "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHELL</envar>">
+<!ENTITY cv-SHF03 "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHF03</envar>">
+<!ENTITY cv-SHF03COM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHF03COM</envar>">
+<!ENTITY cv-SHF03COMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHF03COMSTR</envar>">
+<!ENTITY cv-SHF03FLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHF03FLAGS</envar>">
+<!ENTITY cv-SHF03PPCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHF03PPCOM</envar>">
+<!ENTITY cv-SHF03PPCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHF03PPCOMSTR</envar>">
+<!ENTITY cv-SHF77 "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHF77</envar>">
+<!ENTITY cv-SHF77COM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHF77COM</envar>">
+<!ENTITY cv-SHF77COMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHF77COMSTR</envar>">
+<!ENTITY cv-SHF77FLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHF77FLAGS</envar>">
+<!ENTITY cv-SHF77PPCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHF77PPCOM</envar>">
+<!ENTITY cv-SHF77PPCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHF77PPCOMSTR</envar>">
+<!ENTITY cv-SHF90 "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHF90</envar>">
+<!ENTITY cv-SHF90COM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHF90COM</envar>">
+<!ENTITY cv-SHF90COMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHF90COMSTR</envar>">
+<!ENTITY cv-SHF90FLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHF90FLAGS</envar>">
+<!ENTITY cv-SHF90PPCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHF90PPCOM</envar>">
+<!ENTITY cv-SHF90PPCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHF90PPCOMSTR</envar>">
+<!ENTITY cv-SHF95 "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHF95</envar>">
+<!ENTITY cv-SHF95COM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHF95COM</envar>">
+<!ENTITY cv-SHF95COMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHF95COMSTR</envar>">
+<!ENTITY cv-SHF95FLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHF95FLAGS</envar>">
+<!ENTITY cv-SHF95PPCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHF95PPCOM</envar>">
+<!ENTITY cv-SHF95PPCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHF95PPCOMSTR</envar>">
+<!ENTITY cv-SHFORTRAN "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHFORTRAN</envar>">
+<!ENTITY cv-SHFORTRANCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHFORTRANCOM</envar>">
+<!ENTITY cv-SHFORTRANCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHFORTRANCOMSTR</envar>">
+<!ENTITY cv-SHFORTRANFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHFORTRANFLAGS</envar>">
+<!ENTITY cv-SHFORTRANPPCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHFORTRANPPCOM</envar>">
+<!ENTITY cv-SHFORTRANPPCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHFORTRANPPCOMSTR</envar>">
+<!ENTITY cv-SHLIBEMITTER "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHLIBEMITTER</envar>">
+<!ENTITY cv-SHLIBPREFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHLIBPREFIX</envar>">
+<!ENTITY cv-SHLIBSUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHLIBSUFFIX</envar>">
+<!ENTITY cv-SHLIBVERSION "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHLIBVERSION</envar>">
+<!ENTITY cv-SHLINK "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHLINK</envar>">
+<!ENTITY cv-SHLINKCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHLINKCOM</envar>">
+<!ENTITY cv-SHLINKCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHLINKCOMSTR</envar>">
+<!ENTITY cv-SHLINKFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHLINKFLAGS</envar>">
+<!ENTITY cv-SHOBJPREFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHOBJPREFIX</envar>">
+<!ENTITY cv-SHOBJSUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHOBJSUFFIX</envar>">
+<!ENTITY cv-SOURCE "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SOURCE</envar>">
+<!ENTITY cv-SOURCE_URL "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SOURCE_URL</envar>">
+<!ENTITY cv-SOURCES "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SOURCES</envar>">
+<!ENTITY cv-SPAWN "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SPAWN</envar>">
+<!ENTITY cv-SUBST_DICT "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SUBST_DICT</envar>">
+<!ENTITY cv-SUBSTFILEPREFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SUBSTFILEPREFIX</envar>">
+<!ENTITY cv-SUBSTFILESUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SUBSTFILESUFFIX</envar>">
+<!ENTITY cv-SUMMARY "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SUMMARY</envar>">
+<!ENTITY cv-SWIG "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SWIG</envar>">
+<!ENTITY cv-SWIGCFILESUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SWIGCFILESUFFIX</envar>">
+<!ENTITY cv-SWIGCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SWIGCOM</envar>">
+<!ENTITY cv-SWIGCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SWIGCOMSTR</envar>">
+<!ENTITY cv-SWIGCXXFILESUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SWIGCXXFILESUFFIX</envar>">
+<!ENTITY cv-SWIGDIRECTORSUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SWIGDIRECTORSUFFIX</envar>">
+<!ENTITY cv-SWIGFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SWIGFLAGS</envar>">
+<!ENTITY cv-_SWIGINCFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$_SWIGINCFLAGS</envar>">
+<!ENTITY cv-SWIGINCPREFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SWIGINCPREFIX</envar>">
+<!ENTITY cv-SWIGINCSUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SWIGINCSUFFIX</envar>">
+<!ENTITY cv-SWIGOUTDIR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SWIGOUTDIR</envar>">
+<!ENTITY cv-SWIGPATH "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SWIGPATH</envar>">
+<!ENTITY cv-SWIGVERSION "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SWIGVERSION</envar>">
+<!ENTITY cv-TAR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$TAR</envar>">
+<!ENTITY cv-TARCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$TARCOM</envar>">
+<!ENTITY cv-TARCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$TARCOMSTR</envar>">
+<!ENTITY cv-TARFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$TARFLAGS</envar>">
+<!ENTITY cv-TARGET "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$TARGET</envar>">
+<!ENTITY cv-TARGET_ARCH "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$TARGET_ARCH</envar>">
+<!ENTITY cv-TARGET_OS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$TARGET_OS</envar>">
+<!ENTITY cv-TARGETS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$TARGETS</envar>">
+<!ENTITY cv-TARSUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$TARSUFFIX</envar>">
+<!ENTITY cv-TEMPFILEPREFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$TEMPFILEPREFIX</envar>">
+<!ENTITY cv-TEX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$TEX</envar>">
+<!ENTITY cv-TEXCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$TEXCOM</envar>">
+<!ENTITY cv-TEXCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$TEXCOMSTR</envar>">
+<!ENTITY cv-TEXFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$TEXFLAGS</envar>">
+<!ENTITY cv-TEXINPUTS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$TEXINPUTS</envar>">
+<!ENTITY cv-TEXTFILEPREFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$TEXTFILEPREFIX</envar>">
+<!ENTITY cv-TEXTFILESUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$TEXTFILESUFFIX</envar>">
+<!ENTITY cv-TOOLS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$TOOLS</envar>">
+<!ENTITY cv-UNCHANGED_SOURCES "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$UNCHANGED_SOURCES</envar>">
+<!ENTITY cv-UNCHANGED_TARGETS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$UNCHANGED_TARGETS</envar>">
+<!ENTITY cv-VENDOR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$VENDOR</envar>">
+<!ENTITY cv-VERSION "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$VERSION</envar>">
+<!ENTITY cv-WIN32_INSERT_DEF "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$WIN32_INSERT_DEF</envar>">
+<!ENTITY cv-WIN32DEFPREFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$WIN32DEFPREFIX</envar>">
+<!ENTITY cv-WIN32DEFSUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$WIN32DEFSUFFIX</envar>">
+<!ENTITY cv-WIN32EXPPREFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$WIN32EXPPREFIX</envar>">
+<!ENTITY cv-WIN32EXPSUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$WIN32EXPSUFFIX</envar>">
+<!ENTITY cv-WINDOWS_EMBED_MANIFEST "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$WINDOWS_EMBED_MANIFEST</envar>">
+<!ENTITY cv-WINDOWS_INSERT_DEF "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$WINDOWS_INSERT_DEF</envar>">
+<!ENTITY cv-WINDOWS_INSERT_MANIFEST "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$WINDOWS_INSERT_MANIFEST</envar>">
+<!ENTITY cv-WINDOWSDEFPREFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$WINDOWSDEFPREFIX</envar>">
+<!ENTITY cv-WINDOWSDEFSUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$WINDOWSDEFSUFFIX</envar>">
+<!ENTITY cv-WINDOWSEXPPREFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$WINDOWSEXPPREFIX</envar>">
+<!ENTITY cv-WINDOWSEXPSUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$WINDOWSEXPSUFFIX</envar>">
+<!ENTITY cv-WINDOWSPROGMANIFESTPREFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$WINDOWSPROGMANIFESTPREFIX</envar>">
+<!ENTITY cv-WINDOWSPROGMANIFESTSUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$WINDOWSPROGMANIFESTSUFFIX</envar>">
+<!ENTITY cv-WINDOWSSHLIBMANIFESTPREFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$WINDOWSSHLIBMANIFESTPREFIX</envar>">
+<!ENTITY cv-WINDOWSSHLIBMANIFESTSUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$WINDOWSSHLIBMANIFESTSUFFIX</envar>">
+<!ENTITY cv-X_IPK_DEPENDS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$X_IPK_DEPENDS</envar>">
+<!ENTITY cv-X_IPK_DESCRIPTION "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$X_IPK_DESCRIPTION</envar>">
+<!ENTITY cv-X_IPK_MAINTAINER "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$X_IPK_MAINTAINER</envar>">
+<!ENTITY cv-X_IPK_PRIORITY "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$X_IPK_PRIORITY</envar>">
+<!ENTITY cv-X_IPK_SECTION "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$X_IPK_SECTION</envar>">
+<!ENTITY cv-X_MSI_LANGUAGE "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$X_MSI_LANGUAGE</envar>">
+<!ENTITY cv-X_MSI_LICENSE_TEXT "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$X_MSI_LICENSE_TEXT</envar>">
+<!ENTITY cv-X_MSI_UPGRADE_CODE "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$X_MSI_UPGRADE_CODE</envar>">
+<!ENTITY cv-X_RPM_AUTOREQPROV "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$X_RPM_AUTOREQPROV</envar>">
+<!ENTITY cv-X_RPM_BUILD "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$X_RPM_BUILD</envar>">
+<!ENTITY cv-X_RPM_BUILDREQUIRES "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$X_RPM_BUILDREQUIRES</envar>">
+<!ENTITY cv-X_RPM_BUILDROOT "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$X_RPM_BUILDROOT</envar>">
+<!ENTITY cv-X_RPM_CLEAN "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$X_RPM_CLEAN</envar>">
+<!ENTITY cv-X_RPM_CONFLICTS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$X_RPM_CONFLICTS</envar>">
+<!ENTITY cv-X_RPM_DEFATTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$X_RPM_DEFATTR</envar>">
+<!ENTITY cv-X_RPM_DISTRIBUTION "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$X_RPM_DISTRIBUTION</envar>">
+<!ENTITY cv-X_RPM_EPOCH "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$X_RPM_EPOCH</envar>">
+<!ENTITY cv-X_RPM_EXCLUDEARCH "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$X_RPM_EXCLUDEARCH</envar>">
+<!ENTITY cv-X_RPM_EXLUSIVEARCH "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$X_RPM_EXLUSIVEARCH</envar>">
+<!ENTITY cv-X_RPM_GROUP "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$X_RPM_GROUP</envar>">
+<!ENTITY cv-X_RPM_GROUP_lang "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$X_RPM_GROUP_lang</envar>">
+<!ENTITY cv-X_RPM_ICON "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$X_RPM_ICON</envar>">
+<!ENTITY cv-X_RPM_INSTALL "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$X_RPM_INSTALL</envar>">
+<!ENTITY cv-X_RPM_PACKAGER "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$X_RPM_PACKAGER</envar>">
+<!ENTITY cv-X_RPM_POSTINSTALL "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$X_RPM_POSTINSTALL</envar>">
+<!ENTITY cv-X_RPM_POSTUNINSTALL "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$X_RPM_POSTUNINSTALL</envar>">
+<!ENTITY cv-X_RPM_PREFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$X_RPM_PREFIX</envar>">
+<!ENTITY cv-X_RPM_PREINSTALL "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$X_RPM_PREINSTALL</envar>">
+<!ENTITY cv-X_RPM_PREP "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$X_RPM_PREP</envar>">
+<!ENTITY cv-X_RPM_PREUNINSTALL "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$X_RPM_PREUNINSTALL</envar>">
+<!ENTITY cv-X_RPM_PROVIDES "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$X_RPM_PROVIDES</envar>">
+<!ENTITY cv-X_RPM_REQUIRES "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$X_RPM_REQUIRES</envar>">
+<!ENTITY cv-X_RPM_SERIAL "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$X_RPM_SERIAL</envar>">
+<!ENTITY cv-X_RPM_URL "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$X_RPM_URL</envar>">
+<!ENTITY cv-XGETTEXT "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$XGETTEXT</envar>">
+<!ENTITY cv-XGETTEXTCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$XGETTEXTCOM</envar>">
+<!ENTITY cv-XGETTEXTCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$XGETTEXTCOMSTR</envar>">
+<!ENTITY cv-_XGETTEXTDOMAIN "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$_XGETTEXTDOMAIN</envar>">
+<!ENTITY cv-XGETTEXTFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$XGETTEXTFLAGS</envar>">
+<!ENTITY cv-XGETTEXTFROM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$XGETTEXTFROM</envar>">
+<!ENTITY cv-_XGETTEXTFROMFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$_XGETTEXTFROMFLAGS</envar>">
+<!ENTITY cv-XGETTEXTFROMPREFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$XGETTEXTFROMPREFIX</envar>">
+<!ENTITY cv-XGETTEXTFROMSUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$XGETTEXTFROMSUFFIX</envar>">
+<!ENTITY cv-XGETTEXTPATH "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$XGETTEXTPATH</envar>">
+<!ENTITY cv-_XGETTEXTPATHFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$_XGETTEXTPATHFLAGS</envar>">
+<!ENTITY cv-XGETTEXTPATHPREFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$XGETTEXTPATHPREFIX</envar>">
+<!ENTITY cv-XGETTEXTPATHSUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$XGETTEXTPATHSUFFIX</envar>">
+<!ENTITY cv-YACC "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$YACC</envar>">
+<!ENTITY cv-YACCCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$YACCCOM</envar>">
+<!ENTITY cv-YACCCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$YACCCOMSTR</envar>">
+<!ENTITY cv-YACCFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$YACCFLAGS</envar>">
+<!ENTITY cv-YACCHFILESUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$YACCHFILESUFFIX</envar>">
+<!ENTITY cv-YACCHXXFILESUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$YACCHXXFILESUFFIX</envar>">
+<!ENTITY cv-YACCVCGFILESUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$YACCVCGFILESUFFIX</envar>">
+<!ENTITY cv-ZIP "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$ZIP</envar>">
+<!ENTITY cv-ZIPCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$ZIPCOM</envar>">
+<!ENTITY cv-ZIPCOMPRESSION "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$ZIPCOMPRESSION</envar>">
+<!ENTITY cv-ZIPCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$ZIPCOMSTR</envar>">
+<!ENTITY cv-ZIPFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$ZIPFLAGS</envar>">
+<!ENTITY cv-ZIPSUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$ZIPSUFFIX</envar>">
+
+<!--
+THIS IS AN AUTOMATICALLY-GENERATED FILE. DO NOT EDIT.
+-->
+
+<!--
+
+ Entities that are links to the construction variable entries in the appendix.
+
+-->
+
+<!ENTITY cv-link-AR "<link linkend='cv-AR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$AR</envar></link>">
+<!ENTITY cv-link-ARCHITECTURE "<link linkend='cv-ARCHITECTURE' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$ARCHITECTURE</envar></link>">
+<!ENTITY cv-link-ARCOM "<link linkend='cv-ARCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$ARCOM</envar></link>">
+<!ENTITY cv-link-ARCOMSTR "<link linkend='cv-ARCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$ARCOMSTR</envar></link>">
+<!ENTITY cv-link-ARFLAGS "<link linkend='cv-ARFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$ARFLAGS</envar></link>">
+<!ENTITY cv-link-AS "<link linkend='cv-AS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$AS</envar></link>">
+<!ENTITY cv-link-ASCOM "<link linkend='cv-ASCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$ASCOM</envar></link>">
+<!ENTITY cv-link-ASCOMSTR "<link linkend='cv-ASCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$ASCOMSTR</envar></link>">
+<!ENTITY cv-link-ASFLAGS "<link linkend='cv-ASFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$ASFLAGS</envar></link>">
+<!ENTITY cv-link-ASPPCOM "<link linkend='cv-ASPPCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$ASPPCOM</envar></link>">
+<!ENTITY cv-link-ASPPCOMSTR "<link linkend='cv-ASPPCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$ASPPCOMSTR</envar></link>">
+<!ENTITY cv-link-ASPPFLAGS "<link linkend='cv-ASPPFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$ASPPFLAGS</envar></link>">
+<!ENTITY cv-link-BIBTEX "<link linkend='cv-BIBTEX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$BIBTEX</envar></link>">
+<!ENTITY cv-link-BIBTEXCOM "<link linkend='cv-BIBTEXCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$BIBTEXCOM</envar></link>">
+<!ENTITY cv-link-BIBTEXCOMSTR "<link linkend='cv-BIBTEXCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$BIBTEXCOMSTR</envar></link>">
+<!ENTITY cv-link-BIBTEXFLAGS "<link linkend='cv-BIBTEXFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$BIBTEXFLAGS</envar></link>">
+<!ENTITY cv-link-BITKEEPER "<link linkend='cv-BITKEEPER' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$BITKEEPER</envar></link>">
+<!ENTITY cv-link-BITKEEPERCOM "<link linkend='cv-BITKEEPERCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$BITKEEPERCOM</envar></link>">
+<!ENTITY cv-link-BITKEEPERCOMSTR "<link linkend='cv-BITKEEPERCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$BITKEEPERCOMSTR</envar></link>">
+<!ENTITY cv-link-BITKEEPERGET "<link linkend='cv-BITKEEPERGET' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$BITKEEPERGET</envar></link>">
+<!ENTITY cv-link-BITKEEPERGETFLAGS "<link linkend='cv-BITKEEPERGETFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$BITKEEPERGETFLAGS</envar></link>">
+<!ENTITY cv-link-BUILDERS "<link linkend='cv-BUILDERS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$BUILDERS</envar></link>">
+<!ENTITY cv-link-CC "<link linkend='cv-CC' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$CC</envar></link>">
+<!ENTITY cv-link-CCCOM "<link linkend='cv-CCCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$CCCOM</envar></link>">
+<!ENTITY cv-link-CCCOMSTR "<link linkend='cv-CCCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$CCCOMSTR</envar></link>">
+<!ENTITY cv-link-CCFLAGS "<link linkend='cv-CCFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$CCFLAGS</envar></link>">
+<!ENTITY cv-link-CCPCHFLAGS "<link linkend='cv-CCPCHFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$CCPCHFLAGS</envar></link>">
+<!ENTITY cv-link-CCPDBFLAGS "<link linkend='cv-CCPDBFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$CCPDBFLAGS</envar></link>">
+<!ENTITY cv-link-CCVERSION "<link linkend='cv-CCVERSION' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$CCVERSION</envar></link>">
+<!ENTITY cv-link-CFILESUFFIX "<link linkend='cv-CFILESUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$CFILESUFFIX</envar></link>">
+<!ENTITY cv-link-CFLAGS "<link linkend='cv-CFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$CFLAGS</envar></link>">
+<!ENTITY cv-link-CHANGE_SPECFILE "<link linkend='cv-CHANGE_SPECFILE' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$CHANGE_SPECFILE</envar></link>">
+<!ENTITY cv-link-CHANGED_SOURCES "<link linkend='cv-CHANGED_SOURCES' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$CHANGED_SOURCES</envar></link>">
+<!ENTITY cv-link-CHANGED_TARGETS "<link linkend='cv-CHANGED_TARGETS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$CHANGED_TARGETS</envar></link>">
+<!ENTITY cv-link-CHANGELOG "<link linkend='cv-CHANGELOG' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$CHANGELOG</envar></link>">
+<!ENTITY cv-link-_concat "<link linkend='cv-_concat' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$_concat</envar></link>">
+<!ENTITY cv-link-CONFIGUREDIR "<link linkend='cv-CONFIGUREDIR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$CONFIGUREDIR</envar></link>">
+<!ENTITY cv-link-CONFIGURELOG "<link linkend='cv-CONFIGURELOG' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$CONFIGURELOG</envar></link>">
+<!ENTITY cv-link-_CPPDEFFLAGS "<link linkend='cv-_CPPDEFFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$_CPPDEFFLAGS</envar></link>">
+<!ENTITY cv-link-CPPDEFINES "<link linkend='cv-CPPDEFINES' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$CPPDEFINES</envar></link>">
+<!ENTITY cv-link-CPPDEFPREFIX "<link linkend='cv-CPPDEFPREFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$CPPDEFPREFIX</envar></link>">
+<!ENTITY cv-link-CPPDEFSUFFIX "<link linkend='cv-CPPDEFSUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$CPPDEFSUFFIX</envar></link>">
+<!ENTITY cv-link-CPPFLAGS "<link linkend='cv-CPPFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$CPPFLAGS</envar></link>">
+<!ENTITY cv-link-_CPPINCFLAGS "<link linkend='cv-_CPPINCFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$_CPPINCFLAGS</envar></link>">
+<!ENTITY cv-link-CPPPATH "<link linkend='cv-CPPPATH' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$CPPPATH</envar></link>">
+<!ENTITY cv-link-CPPSUFFIXES "<link linkend='cv-CPPSUFFIXES' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$CPPSUFFIXES</envar></link>">
+<!ENTITY cv-link-CVS "<link linkend='cv-CVS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$CVS</envar></link>">
+<!ENTITY cv-link-CVSCOFLAGS "<link linkend='cv-CVSCOFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$CVSCOFLAGS</envar></link>">
+<!ENTITY cv-link-CVSCOM "<link linkend='cv-CVSCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$CVSCOM</envar></link>">
+<!ENTITY cv-link-CVSCOMSTR "<link linkend='cv-CVSCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$CVSCOMSTR</envar></link>">
+<!ENTITY cv-link-CVSFLAGS "<link linkend='cv-CVSFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$CVSFLAGS</envar></link>">
+<!ENTITY cv-link-CVSREPOSITORY "<link linkend='cv-CVSREPOSITORY' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$CVSREPOSITORY</envar></link>">
+<!ENTITY cv-link-CXX "<link linkend='cv-CXX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$CXX</envar></link>">
+<!ENTITY cv-link-CXXCOM "<link linkend='cv-CXXCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$CXXCOM</envar></link>">
+<!ENTITY cv-link-CXXCOMSTR "<link linkend='cv-CXXCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$CXXCOMSTR</envar></link>">
+<!ENTITY cv-link-CXXFILESUFFIX "<link linkend='cv-CXXFILESUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$CXXFILESUFFIX</envar></link>">
+<!ENTITY cv-link-CXXFLAGS "<link linkend='cv-CXXFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$CXXFLAGS</envar></link>">
+<!ENTITY cv-link-CXXVERSION "<link linkend='cv-CXXVERSION' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$CXXVERSION</envar></link>">
+<!ENTITY cv-link-DESCRIPTION "<link linkend='cv-DESCRIPTION' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$DESCRIPTION</envar></link>">
+<!ENTITY cv-link-DESCRIPTION_lang "<link linkend='cv-DESCRIPTION_lang' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$DESCRIPTION_lang</envar></link>">
+<!ENTITY cv-link-Dir "<link linkend='cv-Dir' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$Dir</envar></link>">
+<!ENTITY cv-link-Dirs "<link linkend='cv-Dirs' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$Dirs</envar></link>">
+<!ENTITY cv-link-DSUFFIXES "<link linkend='cv-DSUFFIXES' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$DSUFFIXES</envar></link>">
+<!ENTITY cv-link-DVIPDF "<link linkend='cv-DVIPDF' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$DVIPDF</envar></link>">
+<!ENTITY cv-link-DVIPDFCOM "<link linkend='cv-DVIPDFCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$DVIPDFCOM</envar></link>">
+<!ENTITY cv-link-DVIPDFCOMSTR "<link linkend='cv-DVIPDFCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$DVIPDFCOMSTR</envar></link>">
+<!ENTITY cv-link-DVIPDFFLAGS "<link linkend='cv-DVIPDFFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$DVIPDFFLAGS</envar></link>">
+<!ENTITY cv-link-DVIPS "<link linkend='cv-DVIPS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$DVIPS</envar></link>">
+<!ENTITY cv-link-DVIPSFLAGS "<link linkend='cv-DVIPSFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$DVIPSFLAGS</envar></link>">
+<!ENTITY cv-link-ENV "<link linkend='cv-ENV' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$ENV</envar></link>">
+<!ENTITY cv-link-ESCAPE "<link linkend='cv-ESCAPE' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$ESCAPE</envar></link>">
+<!ENTITY cv-link-F03 "<link linkend='cv-F03' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$F03</envar></link>">
+<!ENTITY cv-link-F03COM "<link linkend='cv-F03COM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$F03COM</envar></link>">
+<!ENTITY cv-link-F03COMSTR "<link linkend='cv-F03COMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$F03COMSTR</envar></link>">
+<!ENTITY cv-link-F03FILESUFFIXES "<link linkend='cv-F03FILESUFFIXES' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$F03FILESUFFIXES</envar></link>">
+<!ENTITY cv-link-F03FLAGS "<link linkend='cv-F03FLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$F03FLAGS</envar></link>">
+<!ENTITY cv-link-_F03INCFLAGS "<link linkend='cv-_F03INCFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$_F03INCFLAGS</envar></link>">
+<!ENTITY cv-link-F03PATH "<link linkend='cv-F03PATH' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$F03PATH</envar></link>">
+<!ENTITY cv-link-F03PPCOM "<link linkend='cv-F03PPCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$F03PPCOM</envar></link>">
+<!ENTITY cv-link-F03PPCOMSTR "<link linkend='cv-F03PPCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$F03PPCOMSTR</envar></link>">
+<!ENTITY cv-link-F03PPFILESUFFIXES "<link linkend='cv-F03PPFILESUFFIXES' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$F03PPFILESUFFIXES</envar></link>">
+<!ENTITY cv-link-F77 "<link linkend='cv-F77' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$F77</envar></link>">
+<!ENTITY cv-link-F77COM "<link linkend='cv-F77COM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$F77COM</envar></link>">
+<!ENTITY cv-link-F77COMSTR "<link linkend='cv-F77COMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$F77COMSTR</envar></link>">
+<!ENTITY cv-link-F77FILESUFFIXES "<link linkend='cv-F77FILESUFFIXES' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$F77FILESUFFIXES</envar></link>">
+<!ENTITY cv-link-F77FLAGS "<link linkend='cv-F77FLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$F77FLAGS</envar></link>">
+<!ENTITY cv-link-_F77INCFLAGS "<link linkend='cv-_F77INCFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$_F77INCFLAGS</envar></link>">
+<!ENTITY cv-link-F77PATH "<link linkend='cv-F77PATH' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$F77PATH</envar></link>">
+<!ENTITY cv-link-F77PPCOM "<link linkend='cv-F77PPCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$F77PPCOM</envar></link>">
+<!ENTITY cv-link-F77PPCOMSTR "<link linkend='cv-F77PPCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$F77PPCOMSTR</envar></link>">
+<!ENTITY cv-link-F77PPFILESUFFIXES "<link linkend='cv-F77PPFILESUFFIXES' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$F77PPFILESUFFIXES</envar></link>">
+<!ENTITY cv-link-F90 "<link linkend='cv-F90' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$F90</envar></link>">
+<!ENTITY cv-link-F90COM "<link linkend='cv-F90COM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$F90COM</envar></link>">
+<!ENTITY cv-link-F90COMSTR "<link linkend='cv-F90COMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$F90COMSTR</envar></link>">
+<!ENTITY cv-link-F90FILESUFFIXES "<link linkend='cv-F90FILESUFFIXES' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$F90FILESUFFIXES</envar></link>">
+<!ENTITY cv-link-F90FLAGS "<link linkend='cv-F90FLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$F90FLAGS</envar></link>">
+<!ENTITY cv-link-_F90INCFLAGS "<link linkend='cv-_F90INCFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$_F90INCFLAGS</envar></link>">
+<!ENTITY cv-link-F90PATH "<link linkend='cv-F90PATH' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$F90PATH</envar></link>">
+<!ENTITY cv-link-F90PPCOM "<link linkend='cv-F90PPCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$F90PPCOM</envar></link>">
+<!ENTITY cv-link-F90PPCOMSTR "<link linkend='cv-F90PPCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$F90PPCOMSTR</envar></link>">
+<!ENTITY cv-link-F90PPFILESUFFIXES "<link linkend='cv-F90PPFILESUFFIXES' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$F90PPFILESUFFIXES</envar></link>">
+<!ENTITY cv-link-F95 "<link linkend='cv-F95' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$F95</envar></link>">
+<!ENTITY cv-link-F95COM "<link linkend='cv-F95COM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$F95COM</envar></link>">
+<!ENTITY cv-link-F95COMSTR "<link linkend='cv-F95COMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$F95COMSTR</envar></link>">
+<!ENTITY cv-link-F95FILESUFFIXES "<link linkend='cv-F95FILESUFFIXES' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$F95FILESUFFIXES</envar></link>">
+<!ENTITY cv-link-F95FLAGS "<link linkend='cv-F95FLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$F95FLAGS</envar></link>">
+<!ENTITY cv-link-_F95INCFLAGS "<link linkend='cv-_F95INCFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$_F95INCFLAGS</envar></link>">
+<!ENTITY cv-link-F95PATH "<link linkend='cv-F95PATH' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$F95PATH</envar></link>">
+<!ENTITY cv-link-F95PPCOM "<link linkend='cv-F95PPCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$F95PPCOM</envar></link>">
+<!ENTITY cv-link-F95PPCOMSTR "<link linkend='cv-F95PPCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$F95PPCOMSTR</envar></link>">
+<!ENTITY cv-link-F95PPFILESUFFIXES "<link linkend='cv-F95PPFILESUFFIXES' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$F95PPFILESUFFIXES</envar></link>">
+<!ENTITY cv-link-File "<link linkend='cv-File' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$File</envar></link>">
+<!ENTITY cv-link-FORTRAN "<link linkend='cv-FORTRAN' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$FORTRAN</envar></link>">
+<!ENTITY cv-link-FORTRANCOM "<link linkend='cv-FORTRANCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$FORTRANCOM</envar></link>">
+<!ENTITY cv-link-FORTRANCOMSTR "<link linkend='cv-FORTRANCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$FORTRANCOMSTR</envar></link>">
+<!ENTITY cv-link-FORTRANFILESUFFIXES "<link linkend='cv-FORTRANFILESUFFIXES' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$FORTRANFILESUFFIXES</envar></link>">
+<!ENTITY cv-link-FORTRANFLAGS "<link linkend='cv-FORTRANFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$FORTRANFLAGS</envar></link>">
+<!ENTITY cv-link-_FORTRANINCFLAGS "<link linkend='cv-_FORTRANINCFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$_FORTRANINCFLAGS</envar></link>">
+<!ENTITY cv-link-FORTRANMODDIR "<link linkend='cv-FORTRANMODDIR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$FORTRANMODDIR</envar></link>">
+<!ENTITY cv-link-FORTRANMODDIRPREFIX "<link linkend='cv-FORTRANMODDIRPREFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$FORTRANMODDIRPREFIX</envar></link>">
+<!ENTITY cv-link-FORTRANMODDIRSUFFIX "<link linkend='cv-FORTRANMODDIRSUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$FORTRANMODDIRSUFFIX</envar></link>">
+<!ENTITY cv-link-_FORTRANMODFLAG "<link linkend='cv-_FORTRANMODFLAG' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$_FORTRANMODFLAG</envar></link>">
+<!ENTITY cv-link-FORTRANMODPREFIX "<link linkend='cv-FORTRANMODPREFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$FORTRANMODPREFIX</envar></link>">
+<!ENTITY cv-link-FORTRANMODSUFFIX "<link linkend='cv-FORTRANMODSUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$FORTRANMODSUFFIX</envar></link>">
+<!ENTITY cv-link-FORTRANPATH "<link linkend='cv-FORTRANPATH' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$FORTRANPATH</envar></link>">
+<!ENTITY cv-link-FORTRANPPCOM "<link linkend='cv-FORTRANPPCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$FORTRANPPCOM</envar></link>">
+<!ENTITY cv-link-FORTRANPPCOMSTR "<link linkend='cv-FORTRANPPCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$FORTRANPPCOMSTR</envar></link>">
+<!ENTITY cv-link-FORTRANPPFILESUFFIXES "<link linkend='cv-FORTRANPPFILESUFFIXES' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$FORTRANPPFILESUFFIXES</envar></link>">
+<!ENTITY cv-link-FORTRANSUFFIXES "<link linkend='cv-FORTRANSUFFIXES' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$FORTRANSUFFIXES</envar></link>">
+<!ENTITY cv-link-FRAMEWORKPATH "<link linkend='cv-FRAMEWORKPATH' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$FRAMEWORKPATH</envar></link>">
+<!ENTITY cv-link-_FRAMEWORKPATH "<link linkend='cv-_FRAMEWORKPATH' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$_FRAMEWORKPATH</envar></link>">
+<!ENTITY cv-link-FRAMEWORKPATHPREFIX "<link linkend='cv-FRAMEWORKPATHPREFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$FRAMEWORKPATHPREFIX</envar></link>">
+<!ENTITY cv-link-FRAMEWORKPREFIX "<link linkend='cv-FRAMEWORKPREFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$FRAMEWORKPREFIX</envar></link>">
+<!ENTITY cv-link-_FRAMEWORKS "<link linkend='cv-_FRAMEWORKS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$_FRAMEWORKS</envar></link>">
+<!ENTITY cv-link-FRAMEWORKS "<link linkend='cv-FRAMEWORKS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$FRAMEWORKS</envar></link>">
+<!ENTITY cv-link-FRAMEWORKSFLAGS "<link linkend='cv-FRAMEWORKSFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$FRAMEWORKSFLAGS</envar></link>">
+<!ENTITY cv-link-GS "<link linkend='cv-GS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$GS</envar></link>">
+<!ENTITY cv-link-GSCOM "<link linkend='cv-GSCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$GSCOM</envar></link>">
+<!ENTITY cv-link-GSCOMSTR "<link linkend='cv-GSCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$GSCOMSTR</envar></link>">
+<!ENTITY cv-link-GSFLAGS "<link linkend='cv-GSFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$GSFLAGS</envar></link>">
+<!ENTITY cv-link-HOST_ARCH "<link linkend='cv-HOST_ARCH' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$HOST_ARCH</envar></link>">
+<!ENTITY cv-link-HOST_OS "<link linkend='cv-HOST_OS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$HOST_OS</envar></link>">
+<!ENTITY cv-link-IDLSUFFIXES "<link linkend='cv-IDLSUFFIXES' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$IDLSUFFIXES</envar></link>">
+<!ENTITY cv-link-IMPLICIT_COMMAND_DEPENDENCIES "<link linkend='cv-IMPLICIT_COMMAND_DEPENDENCIES' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$IMPLICIT_COMMAND_DEPENDENCIES</envar></link>">
+<!ENTITY cv-link-INCPREFIX "<link linkend='cv-INCPREFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$INCPREFIX</envar></link>">
+<!ENTITY cv-link-INCSUFFIX "<link linkend='cv-INCSUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$INCSUFFIX</envar></link>">
+<!ENTITY cv-link-INSTALL "<link linkend='cv-INSTALL' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$INSTALL</envar></link>">
+<!ENTITY cv-link-INSTALLSTR "<link linkend='cv-INSTALLSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$INSTALLSTR</envar></link>">
+<!ENTITY cv-link-INTEL_C_COMPILER_VERSION "<link linkend='cv-INTEL_C_COMPILER_VERSION' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$INTEL_C_COMPILER_VERSION</envar></link>">
+<!ENTITY cv-link-JAR "<link linkend='cv-JAR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$JAR</envar></link>">
+<!ENTITY cv-link-JARCHDIR "<link linkend='cv-JARCHDIR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$JARCHDIR</envar></link>">
+<!ENTITY cv-link-JARCOM "<link linkend='cv-JARCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$JARCOM</envar></link>">
+<!ENTITY cv-link-JARCOMSTR "<link linkend='cv-JARCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$JARCOMSTR</envar></link>">
+<!ENTITY cv-link-JARFLAGS "<link linkend='cv-JARFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$JARFLAGS</envar></link>">
+<!ENTITY cv-link-JARSUFFIX "<link linkend='cv-JARSUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$JARSUFFIX</envar></link>">
+<!ENTITY cv-link-JAVABOOTCLASSPATH "<link linkend='cv-JAVABOOTCLASSPATH' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$JAVABOOTCLASSPATH</envar></link>">
+<!ENTITY cv-link-JAVAC "<link linkend='cv-JAVAC' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$JAVAC</envar></link>">
+<!ENTITY cv-link-JAVACCOM "<link linkend='cv-JAVACCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$JAVACCOM</envar></link>">
+<!ENTITY cv-link-JAVACCOMSTR "<link linkend='cv-JAVACCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$JAVACCOMSTR</envar></link>">
+<!ENTITY cv-link-JAVACFLAGS "<link linkend='cv-JAVACFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$JAVACFLAGS</envar></link>">
+<!ENTITY cv-link-JAVACLASSDIR "<link linkend='cv-JAVACLASSDIR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$JAVACLASSDIR</envar></link>">
+<!ENTITY cv-link-JAVACLASSPATH "<link linkend='cv-JAVACLASSPATH' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$JAVACLASSPATH</envar></link>">
+<!ENTITY cv-link-JAVACLASSSUFFIX "<link linkend='cv-JAVACLASSSUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$JAVACLASSSUFFIX</envar></link>">
+<!ENTITY cv-link-JAVAH "<link linkend='cv-JAVAH' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$JAVAH</envar></link>">
+<!ENTITY cv-link-JAVAHCOM "<link linkend='cv-JAVAHCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$JAVAHCOM</envar></link>">
+<!ENTITY cv-link-JAVAHCOMSTR "<link linkend='cv-JAVAHCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$JAVAHCOMSTR</envar></link>">
+<!ENTITY cv-link-JAVAHFLAGS "<link linkend='cv-JAVAHFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$JAVAHFLAGS</envar></link>">
+<!ENTITY cv-link-JAVASOURCEPATH "<link linkend='cv-JAVASOURCEPATH' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$JAVASOURCEPATH</envar></link>">
+<!ENTITY cv-link-JAVASUFFIX "<link linkend='cv-JAVASUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$JAVASUFFIX</envar></link>">
+<!ENTITY cv-link-JAVAVERSION "<link linkend='cv-JAVAVERSION' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$JAVAVERSION</envar></link>">
+<!ENTITY cv-link-LATEX "<link linkend='cv-LATEX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$LATEX</envar></link>">
+<!ENTITY cv-link-LATEXCOM "<link linkend='cv-LATEXCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$LATEXCOM</envar></link>">
+<!ENTITY cv-link-LATEXCOMSTR "<link linkend='cv-LATEXCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$LATEXCOMSTR</envar></link>">
+<!ENTITY cv-link-LATEXFLAGS "<link linkend='cv-LATEXFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$LATEXFLAGS</envar></link>">
+<!ENTITY cv-link-LATEXRETRIES "<link linkend='cv-LATEXRETRIES' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$LATEXRETRIES</envar></link>">
+<!ENTITY cv-link-LATEXSUFFIXES "<link linkend='cv-LATEXSUFFIXES' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$LATEXSUFFIXES</envar></link>">
+<!ENTITY cv-link-LDMODULE "<link linkend='cv-LDMODULE' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$LDMODULE</envar></link>">
+<!ENTITY cv-link-LDMODULECOM "<link linkend='cv-LDMODULECOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$LDMODULECOM</envar></link>">
+<!ENTITY cv-link-LDMODULECOMSTR "<link linkend='cv-LDMODULECOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$LDMODULECOMSTR</envar></link>">
+<!ENTITY cv-link-LDMODULEFLAGS "<link linkend='cv-LDMODULEFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$LDMODULEFLAGS</envar></link>">
+<!ENTITY cv-link-LDMODULEPREFIX "<link linkend='cv-LDMODULEPREFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$LDMODULEPREFIX</envar></link>">
+<!ENTITY cv-link-LDMODULESUFFIX "<link linkend='cv-LDMODULESUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$LDMODULESUFFIX</envar></link>">
+<!ENTITY cv-link-LEX "<link linkend='cv-LEX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$LEX</envar></link>">
+<!ENTITY cv-link-LEXCOM "<link linkend='cv-LEXCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$LEXCOM</envar></link>">
+<!ENTITY cv-link-LEXCOMSTR "<link linkend='cv-LEXCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$LEXCOMSTR</envar></link>">
+<!ENTITY cv-link-LEXFLAGS "<link linkend='cv-LEXFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$LEXFLAGS</envar></link>">
+<!ENTITY cv-link-_LIBDIRFLAGS "<link linkend='cv-_LIBDIRFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$_LIBDIRFLAGS</envar></link>">
+<!ENTITY cv-link-LIBDIRPREFIX "<link linkend='cv-LIBDIRPREFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$LIBDIRPREFIX</envar></link>">
+<!ENTITY cv-link-LIBDIRSUFFIX "<link linkend='cv-LIBDIRSUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$LIBDIRSUFFIX</envar></link>">
+<!ENTITY cv-link-LIBEMITTER "<link linkend='cv-LIBEMITTER' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$LIBEMITTER</envar></link>">
+<!ENTITY cv-link-_LIBFLAGS "<link linkend='cv-_LIBFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$_LIBFLAGS</envar></link>">
+<!ENTITY cv-link-LIBLINKPREFIX "<link linkend='cv-LIBLINKPREFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$LIBLINKPREFIX</envar></link>">
+<!ENTITY cv-link-LIBLINKSUFFIX "<link linkend='cv-LIBLINKSUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$LIBLINKSUFFIX</envar></link>">
+<!ENTITY cv-link-LIBPATH "<link linkend='cv-LIBPATH' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$LIBPATH</envar></link>">
+<!ENTITY cv-link-LIBPREFIX "<link linkend='cv-LIBPREFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$LIBPREFIX</envar></link>">
+<!ENTITY cv-link-LIBPREFIXES "<link linkend='cv-LIBPREFIXES' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$LIBPREFIXES</envar></link>">
+<!ENTITY cv-link-LIBS "<link linkend='cv-LIBS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$LIBS</envar></link>">
+<!ENTITY cv-link-LIBSUFFIX "<link linkend='cv-LIBSUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$LIBSUFFIX</envar></link>">
+<!ENTITY cv-link-LIBSUFFIXES "<link linkend='cv-LIBSUFFIXES' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$LIBSUFFIXES</envar></link>">
+<!ENTITY cv-link-LICENSE "<link linkend='cv-LICENSE' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$LICENSE</envar></link>">
+<!ENTITY cv-link-LINESEPARATOR "<link linkend='cv-LINESEPARATOR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$LINESEPARATOR</envar></link>">
+<!ENTITY cv-link-LINGUAS_FILE "<link linkend='cv-LINGUAS_FILE' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$LINGUAS_FILE</envar></link>">
+<!ENTITY cv-link-LINK "<link linkend='cv-LINK' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$LINK</envar></link>">
+<!ENTITY cv-link-LINKCOM "<link linkend='cv-LINKCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$LINKCOM</envar></link>">
+<!ENTITY cv-link-LINKCOMSTR "<link linkend='cv-LINKCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$LINKCOMSTR</envar></link>">
+<!ENTITY cv-link-LINKFLAGS "<link linkend='cv-LINKFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$LINKFLAGS</envar></link>">
+<!ENTITY cv-link-M4 "<link linkend='cv-M4' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$M4</envar></link>">
+<!ENTITY cv-link-M4COM "<link linkend='cv-M4COM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$M4COM</envar></link>">
+<!ENTITY cv-link-M4COMSTR "<link linkend='cv-M4COMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$M4COMSTR</envar></link>">
+<!ENTITY cv-link-M4FLAGS "<link linkend='cv-M4FLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$M4FLAGS</envar></link>">
+<!ENTITY cv-link-MAKEINDEX "<link linkend='cv-MAKEINDEX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MAKEINDEX</envar></link>">
+<!ENTITY cv-link-MAKEINDEXCOM "<link linkend='cv-MAKEINDEXCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MAKEINDEXCOM</envar></link>">
+<!ENTITY cv-link-MAKEINDEXCOMSTR "<link linkend='cv-MAKEINDEXCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MAKEINDEXCOMSTR</envar></link>">
+<!ENTITY cv-link-MAKEINDEXFLAGS "<link linkend='cv-MAKEINDEXFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MAKEINDEXFLAGS</envar></link>">
+<!ENTITY cv-link-MAXLINELENGTH "<link linkend='cv-MAXLINELENGTH' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MAXLINELENGTH</envar></link>">
+<!ENTITY cv-link-MIDL "<link linkend='cv-MIDL' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MIDL</envar></link>">
+<!ENTITY cv-link-MIDLCOM "<link linkend='cv-MIDLCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MIDLCOM</envar></link>">
+<!ENTITY cv-link-MIDLCOMSTR "<link linkend='cv-MIDLCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MIDLCOMSTR</envar></link>">
+<!ENTITY cv-link-MIDLFLAGS "<link linkend='cv-MIDLFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MIDLFLAGS</envar></link>">
+<!ENTITY cv-link-MOSUFFIX "<link linkend='cv-MOSUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MOSUFFIX</envar></link>">
+<!ENTITY cv-link-MSGFMT "<link linkend='cv-MSGFMT' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MSGFMT</envar></link>">
+<!ENTITY cv-link-MSGFMTCOM "<link linkend='cv-MSGFMTCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MSGFMTCOM</envar></link>">
+<!ENTITY cv-link-MSGFMTCOMSTR "<link linkend='cv-MSGFMTCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MSGFMTCOMSTR</envar></link>">
+<!ENTITY cv-link-MSGFMTFLAGS "<link linkend='cv-MSGFMTFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MSGFMTFLAGS</envar></link>">
+<!ENTITY cv-link-MSGINIT "<link linkend='cv-MSGINIT' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MSGINIT</envar></link>">
+<!ENTITY cv-link-MSGINITCOM "<link linkend='cv-MSGINITCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MSGINITCOM</envar></link>">
+<!ENTITY cv-link-MSGINITCOMSTR "<link linkend='cv-MSGINITCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MSGINITCOMSTR</envar></link>">
+<!ENTITY cv-link-MSGINITFLAGS "<link linkend='cv-MSGINITFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MSGINITFLAGS</envar></link>">
+<!ENTITY cv-link-_MSGINITLOCALE "<link linkend='cv-_MSGINITLOCALE' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$_MSGINITLOCALE</envar></link>">
+<!ENTITY cv-link-MSGMERGE "<link linkend='cv-MSGMERGE' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MSGMERGE</envar></link>">
+<!ENTITY cv-link-MSGMERGECOM "<link linkend='cv-MSGMERGECOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MSGMERGECOM</envar></link>">
+<!ENTITY cv-link-MSGMERGECOMSTR "<link linkend='cv-MSGMERGECOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MSGMERGECOMSTR</envar></link>">
+<!ENTITY cv-link-MSGMERGEFLAGS "<link linkend='cv-MSGMERGEFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MSGMERGEFLAGS</envar></link>">
+<!ENTITY cv-link-MSSDK_DIR "<link linkend='cv-MSSDK_DIR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MSSDK_DIR</envar></link>">
+<!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_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_VERSION "<link linkend='cv-MSVC_VERSION' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MSVC_VERSION</envar></link>">
+<!ENTITY cv-link-MSVS "<link linkend='cv-MSVS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MSVS</envar></link>">
+<!ENTITY cv-link-MSVS_ARCH "<link linkend='cv-MSVS_ARCH' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MSVS_ARCH</envar></link>">
+<!ENTITY cv-link-MSVS_PROJECT_GUID "<link linkend='cv-MSVS_PROJECT_GUID' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MSVS_PROJECT_GUID</envar></link>">
+<!ENTITY cv-link-MSVS_SCC_AUX_PATH "<link linkend='cv-MSVS_SCC_AUX_PATH' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MSVS_SCC_AUX_PATH</envar></link>">
+<!ENTITY cv-link-MSVS_SCC_CONNECTION_ROOT "<link linkend='cv-MSVS_SCC_CONNECTION_ROOT' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MSVS_SCC_CONNECTION_ROOT</envar></link>">
+<!ENTITY cv-link-MSVS_SCC_PROJECT_NAME "<link linkend='cv-MSVS_SCC_PROJECT_NAME' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MSVS_SCC_PROJECT_NAME</envar></link>">
+<!ENTITY cv-link-MSVS_SCC_PROVIDER "<link linkend='cv-MSVS_SCC_PROVIDER' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MSVS_SCC_PROVIDER</envar></link>">
+<!ENTITY cv-link-MSVS_VERSION "<link linkend='cv-MSVS_VERSION' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MSVS_VERSION</envar></link>">
+<!ENTITY cv-link-MSVSBUILDCOM "<link linkend='cv-MSVSBUILDCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MSVSBUILDCOM</envar></link>">
+<!ENTITY cv-link-MSVSCLEANCOM "<link linkend='cv-MSVSCLEANCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MSVSCLEANCOM</envar></link>">
+<!ENTITY cv-link-MSVSENCODING "<link linkend='cv-MSVSENCODING' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MSVSENCODING</envar></link>">
+<!ENTITY cv-link-MSVSPROJECTCOM "<link linkend='cv-MSVSPROJECTCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MSVSPROJECTCOM</envar></link>">
+<!ENTITY cv-link-MSVSPROJECTSUFFIX "<link linkend='cv-MSVSPROJECTSUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MSVSPROJECTSUFFIX</envar></link>">
+<!ENTITY cv-link-MSVSREBUILDCOM "<link linkend='cv-MSVSREBUILDCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MSVSREBUILDCOM</envar></link>">
+<!ENTITY cv-link-MSVSSCONS "<link linkend='cv-MSVSSCONS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MSVSSCONS</envar></link>">
+<!ENTITY cv-link-MSVSSCONSCOM "<link linkend='cv-MSVSSCONSCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MSVSSCONSCOM</envar></link>">
+<!ENTITY cv-link-MSVSSCONSCRIPT "<link linkend='cv-MSVSSCONSCRIPT' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MSVSSCONSCRIPT</envar></link>">
+<!ENTITY cv-link-MSVSSCONSFLAGS "<link linkend='cv-MSVSSCONSFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MSVSSCONSFLAGS</envar></link>">
+<!ENTITY cv-link-MSVSSOLUTIONCOM "<link linkend='cv-MSVSSOLUTIONCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MSVSSOLUTIONCOM</envar></link>">
+<!ENTITY cv-link-MSVSSOLUTIONSUFFIX "<link linkend='cv-MSVSSOLUTIONSUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MSVSSOLUTIONSUFFIX</envar></link>">
+<!ENTITY cv-link-MT "<link linkend='cv-MT' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MT</envar></link>">
+<!ENTITY cv-link-MTEXECOM "<link linkend='cv-MTEXECOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MTEXECOM</envar></link>">
+<!ENTITY cv-link-MTFLAGS "<link linkend='cv-MTFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MTFLAGS</envar></link>">
+<!ENTITY cv-link-MTSHLIBCOM "<link linkend='cv-MTSHLIBCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MTSHLIBCOM</envar></link>">
+<!ENTITY cv-link-MWCW_VERSION "<link linkend='cv-MWCW_VERSION' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MWCW_VERSION</envar></link>">
+<!ENTITY cv-link-MWCW_VERSIONS "<link linkend='cv-MWCW_VERSIONS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$MWCW_VERSIONS</envar></link>">
+<!ENTITY cv-link-NAME "<link linkend='cv-NAME' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$NAME</envar></link>">
+<!ENTITY cv-link-no_import_lib "<link linkend='cv-no_import_lib' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$no_import_lib</envar></link>">
+<!ENTITY cv-link-OBJPREFIX "<link linkend='cv-OBJPREFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$OBJPREFIX</envar></link>">
+<!ENTITY cv-link-OBJSUFFIX "<link linkend='cv-OBJSUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$OBJSUFFIX</envar></link>">
+<!ENTITY cv-link-P4 "<link linkend='cv-P4' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$P4</envar></link>">
+<!ENTITY cv-link-P4COM "<link linkend='cv-P4COM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$P4COM</envar></link>">
+<!ENTITY cv-link-P4COMSTR "<link linkend='cv-P4COMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$P4COMSTR</envar></link>">
+<!ENTITY cv-link-P4FLAGS "<link linkend='cv-P4FLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$P4FLAGS</envar></link>">
+<!ENTITY cv-link-PACKAGEROOT "<link linkend='cv-PACKAGEROOT' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$PACKAGEROOT</envar></link>">
+<!ENTITY cv-link-PACKAGETYPE "<link linkend='cv-PACKAGETYPE' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$PACKAGETYPE</envar></link>">
+<!ENTITY cv-link-PACKAGEVERSION "<link linkend='cv-PACKAGEVERSION' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$PACKAGEVERSION</envar></link>">
+<!ENTITY cv-link-PCH "<link linkend='cv-PCH' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$PCH</envar></link>">
+<!ENTITY cv-link-PCHCOM "<link linkend='cv-PCHCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$PCHCOM</envar></link>">
+<!ENTITY cv-link-PCHCOMSTR "<link linkend='cv-PCHCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$PCHCOMSTR</envar></link>">
+<!ENTITY cv-link-PCHPDBFLAGS "<link linkend='cv-PCHPDBFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$PCHPDBFLAGS</envar></link>">
+<!ENTITY cv-link-PCHSTOP "<link linkend='cv-PCHSTOP' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$PCHSTOP</envar></link>">
+<!ENTITY cv-link-PDB "<link linkend='cv-PDB' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$PDB</envar></link>">
+<!ENTITY cv-link-PDFCOM "<link linkend='cv-PDFCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$PDFCOM</envar></link>">
+<!ENTITY cv-link-PDFLATEX "<link linkend='cv-PDFLATEX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$PDFLATEX</envar></link>">
+<!ENTITY cv-link-PDFLATEXCOM "<link linkend='cv-PDFLATEXCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$PDFLATEXCOM</envar></link>">
+<!ENTITY cv-link-PDFLATEXCOMSTR "<link linkend='cv-PDFLATEXCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$PDFLATEXCOMSTR</envar></link>">
+<!ENTITY cv-link-PDFLATEXFLAGS "<link linkend='cv-PDFLATEXFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$PDFLATEXFLAGS</envar></link>">
+<!ENTITY cv-link-PDFPREFIX "<link linkend='cv-PDFPREFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$PDFPREFIX</envar></link>">
+<!ENTITY cv-link-PDFSUFFIX "<link linkend='cv-PDFSUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$PDFSUFFIX</envar></link>">
+<!ENTITY cv-link-PDFTEX "<link linkend='cv-PDFTEX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$PDFTEX</envar></link>">
+<!ENTITY cv-link-PDFTEXCOM "<link linkend='cv-PDFTEXCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$PDFTEXCOM</envar></link>">
+<!ENTITY cv-link-PDFTEXCOMSTR "<link linkend='cv-PDFTEXCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$PDFTEXCOMSTR</envar></link>">
+<!ENTITY cv-link-PDFTEXFLAGS "<link linkend='cv-PDFTEXFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$PDFTEXFLAGS</envar></link>">
+<!ENTITY cv-link-PKGCHK "<link linkend='cv-PKGCHK' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$PKGCHK</envar></link>">
+<!ENTITY cv-link-PKGINFO "<link linkend='cv-PKGINFO' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$PKGINFO</envar></link>">
+<!ENTITY cv-link-PLATFORM "<link linkend='cv-PLATFORM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$PLATFORM</envar></link>">
+<!ENTITY cv-link-POAUTOINIT "<link linkend='cv-POAUTOINIT' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$POAUTOINIT</envar></link>">
+<!ENTITY cv-link-POCREATE_ALIAS "<link linkend='cv-POCREATE_ALIAS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$POCREATE_ALIAS</envar></link>">
+<!ENTITY cv-link-POSUFFIX "<link linkend='cv-POSUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$POSUFFIX</envar></link>">
+<!ENTITY cv-link-POTDOMAIN "<link linkend='cv-POTDOMAIN' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$POTDOMAIN</envar></link>">
+<!ENTITY cv-link-POTSUFFIX "<link linkend='cv-POTSUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$POTSUFFIX</envar></link>">
+<!ENTITY cv-link-POTUPDATE_ALIAS "<link linkend='cv-POTUPDATE_ALIAS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$POTUPDATE_ALIAS</envar></link>">
+<!ENTITY cv-link-POUPDATE_ALIAS "<link linkend='cv-POUPDATE_ALIAS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$POUPDATE_ALIAS</envar></link>">
+<!ENTITY cv-link-PRINT_CMD_LINE_FUNC "<link linkend='cv-PRINT_CMD_LINE_FUNC' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$PRINT_CMD_LINE_FUNC</envar></link>">
+<!ENTITY cv-link-PROGEMITTER "<link linkend='cv-PROGEMITTER' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$PROGEMITTER</envar></link>">
+<!ENTITY cv-link-PROGPREFIX "<link linkend='cv-PROGPREFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$PROGPREFIX</envar></link>">
+<!ENTITY cv-link-PROGSUFFIX "<link linkend='cv-PROGSUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$PROGSUFFIX</envar></link>">
+<!ENTITY cv-link-PSCOM "<link linkend='cv-PSCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$PSCOM</envar></link>">
+<!ENTITY cv-link-PSCOMSTR "<link linkend='cv-PSCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$PSCOMSTR</envar></link>">
+<!ENTITY cv-link-PSPREFIX "<link linkend='cv-PSPREFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$PSPREFIX</envar></link>">
+<!ENTITY cv-link-PSSUFFIX "<link linkend='cv-PSSUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$PSSUFFIX</envar></link>">
+<!ENTITY cv-link-QT_AUTOSCAN "<link linkend='cv-QT_AUTOSCAN' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$QT_AUTOSCAN</envar></link>">
+<!ENTITY cv-link-QT_BINPATH "<link linkend='cv-QT_BINPATH' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$QT_BINPATH</envar></link>">
+<!ENTITY cv-link-QT_CPPPATH "<link linkend='cv-QT_CPPPATH' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$QT_CPPPATH</envar></link>">
+<!ENTITY cv-link-QT_DEBUG "<link linkend='cv-QT_DEBUG' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$QT_DEBUG</envar></link>">
+<!ENTITY cv-link-QT_LIB "<link linkend='cv-QT_LIB' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$QT_LIB</envar></link>">
+<!ENTITY cv-link-QT_LIBPATH "<link linkend='cv-QT_LIBPATH' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$QT_LIBPATH</envar></link>">
+<!ENTITY cv-link-QT_MOC "<link linkend='cv-QT_MOC' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$QT_MOC</envar></link>">
+<!ENTITY cv-link-QT_MOCCXXPREFIX "<link linkend='cv-QT_MOCCXXPREFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$QT_MOCCXXPREFIX</envar></link>">
+<!ENTITY cv-link-QT_MOCCXXSUFFIX "<link linkend='cv-QT_MOCCXXSUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$QT_MOCCXXSUFFIX</envar></link>">
+<!ENTITY cv-link-QT_MOCFROMCXXCOM "<link linkend='cv-QT_MOCFROMCXXCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$QT_MOCFROMCXXCOM</envar></link>">
+<!ENTITY cv-link-QT_MOCFROMCXXCOMSTR "<link linkend='cv-QT_MOCFROMCXXCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$QT_MOCFROMCXXCOMSTR</envar></link>">
+<!ENTITY cv-link-QT_MOCFROMCXXFLAGS "<link linkend='cv-QT_MOCFROMCXXFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$QT_MOCFROMCXXFLAGS</envar></link>">
+<!ENTITY cv-link-QT_MOCFROMHCOM "<link linkend='cv-QT_MOCFROMHCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$QT_MOCFROMHCOM</envar></link>">
+<!ENTITY cv-link-QT_MOCFROMHCOMSTR "<link linkend='cv-QT_MOCFROMHCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$QT_MOCFROMHCOMSTR</envar></link>">
+<!ENTITY cv-link-QT_MOCFROMHFLAGS "<link linkend='cv-QT_MOCFROMHFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$QT_MOCFROMHFLAGS</envar></link>">
+<!ENTITY cv-link-QT_MOCHPREFIX "<link linkend='cv-QT_MOCHPREFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$QT_MOCHPREFIX</envar></link>">
+<!ENTITY cv-link-QT_MOCHSUFFIX "<link linkend='cv-QT_MOCHSUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$QT_MOCHSUFFIX</envar></link>">
+<!ENTITY cv-link-QT_UIC "<link linkend='cv-QT_UIC' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$QT_UIC</envar></link>">
+<!ENTITY cv-link-QT_UICCOM "<link linkend='cv-QT_UICCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$QT_UICCOM</envar></link>">
+<!ENTITY cv-link-QT_UICCOMSTR "<link linkend='cv-QT_UICCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$QT_UICCOMSTR</envar></link>">
+<!ENTITY cv-link-QT_UICDECLFLAGS "<link linkend='cv-QT_UICDECLFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$QT_UICDECLFLAGS</envar></link>">
+<!ENTITY cv-link-QT_UICDECLPREFIX "<link linkend='cv-QT_UICDECLPREFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$QT_UICDECLPREFIX</envar></link>">
+<!ENTITY cv-link-QT_UICDECLSUFFIX "<link linkend='cv-QT_UICDECLSUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$QT_UICDECLSUFFIX</envar></link>">
+<!ENTITY cv-link-QT_UICIMPLFLAGS "<link linkend='cv-QT_UICIMPLFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$QT_UICIMPLFLAGS</envar></link>">
+<!ENTITY cv-link-QT_UICIMPLPREFIX "<link linkend='cv-QT_UICIMPLPREFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$QT_UICIMPLPREFIX</envar></link>">
+<!ENTITY cv-link-QT_UICIMPLSUFFIX "<link linkend='cv-QT_UICIMPLSUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$QT_UICIMPLSUFFIX</envar></link>">
+<!ENTITY cv-link-QT_UISUFFIX "<link linkend='cv-QT_UISUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$QT_UISUFFIX</envar></link>">
+<!ENTITY cv-link-QTDIR "<link linkend='cv-QTDIR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$QTDIR</envar></link>">
+<!ENTITY cv-link-RANLIB "<link linkend='cv-RANLIB' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$RANLIB</envar></link>">
+<!ENTITY cv-link-RANLIBCOM "<link linkend='cv-RANLIBCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$RANLIBCOM</envar></link>">
+<!ENTITY cv-link-RANLIBCOMSTR "<link linkend='cv-RANLIBCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$RANLIBCOMSTR</envar></link>">
+<!ENTITY cv-link-RANLIBFLAGS "<link linkend='cv-RANLIBFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$RANLIBFLAGS</envar></link>">
+<!ENTITY cv-link-RC "<link linkend='cv-RC' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$RC</envar></link>">
+<!ENTITY cv-link-RCCOM "<link linkend='cv-RCCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$RCCOM</envar></link>">
+<!ENTITY cv-link-RCCOMSTR "<link linkend='cv-RCCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$RCCOMSTR</envar></link>">
+<!ENTITY cv-link-RCFLAGS "<link linkend='cv-RCFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$RCFLAGS</envar></link>">
+<!ENTITY cv-link-RCINCFLAGS "<link linkend='cv-RCINCFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$RCINCFLAGS</envar></link>">
+<!ENTITY cv-link-RCINCPREFIX "<link linkend='cv-RCINCPREFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$RCINCPREFIX</envar></link>">
+<!ENTITY cv-link-RCINCSUFFIX "<link linkend='cv-RCINCSUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$RCINCSUFFIX</envar></link>">
+<!ENTITY cv-link-RCS "<link linkend='cv-RCS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$RCS</envar></link>">
+<!ENTITY cv-link-RCS_CO "<link linkend='cv-RCS_CO' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$RCS_CO</envar></link>">
+<!ENTITY cv-link-RCS_COCOM "<link linkend='cv-RCS_COCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$RCS_COCOM</envar></link>">
+<!ENTITY cv-link-RCS_COCOMSTR "<link linkend='cv-RCS_COCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$RCS_COCOMSTR</envar></link>">
+<!ENTITY cv-link-RCS_COFLAGS "<link linkend='cv-RCS_COFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$RCS_COFLAGS</envar></link>">
+<!ENTITY cv-link-RDirs "<link linkend='cv-RDirs' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$RDirs</envar></link>">
+<!ENTITY cv-link-REGSVR "<link linkend='cv-REGSVR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$REGSVR</envar></link>">
+<!ENTITY cv-link-REGSVRCOM "<link linkend='cv-REGSVRCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$REGSVRCOM</envar></link>">
+<!ENTITY cv-link-REGSVRCOMSTR "<link linkend='cv-REGSVRCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$REGSVRCOMSTR</envar></link>">
+<!ENTITY cv-link-REGSVRFLAGS "<link linkend='cv-REGSVRFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$REGSVRFLAGS</envar></link>">
+<!ENTITY cv-link-RMIC "<link linkend='cv-RMIC' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$RMIC</envar></link>">
+<!ENTITY cv-link-RMICCOM "<link linkend='cv-RMICCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$RMICCOM</envar></link>">
+<!ENTITY cv-link-RMICCOMSTR "<link linkend='cv-RMICCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$RMICCOMSTR</envar></link>">
+<!ENTITY cv-link-RMICFLAGS "<link linkend='cv-RMICFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$RMICFLAGS</envar></link>">
+<!ENTITY cv-link-_RPATH "<link linkend='cv-_RPATH' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$_RPATH</envar></link>">
+<!ENTITY cv-link-RPATH "<link linkend='cv-RPATH' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$RPATH</envar></link>">
+<!ENTITY cv-link-RPATHPREFIX "<link linkend='cv-RPATHPREFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$RPATHPREFIX</envar></link>">
+<!ENTITY cv-link-RPATHSUFFIX "<link linkend='cv-RPATHSUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$RPATHSUFFIX</envar></link>">
+<!ENTITY cv-link-RPCGEN "<link linkend='cv-RPCGEN' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$RPCGEN</envar></link>">
+<!ENTITY cv-link-RPCGENCLIENTFLAGS "<link linkend='cv-RPCGENCLIENTFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$RPCGENCLIENTFLAGS</envar></link>">
+<!ENTITY cv-link-RPCGENFLAGS "<link linkend='cv-RPCGENFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$RPCGENFLAGS</envar></link>">
+<!ENTITY cv-link-RPCGENHEADERFLAGS "<link linkend='cv-RPCGENHEADERFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$RPCGENHEADERFLAGS</envar></link>">
+<!ENTITY cv-link-RPCGENSERVICEFLAGS "<link linkend='cv-RPCGENSERVICEFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$RPCGENSERVICEFLAGS</envar></link>">
+<!ENTITY cv-link-RPCGENXDRFLAGS "<link linkend='cv-RPCGENXDRFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$RPCGENXDRFLAGS</envar></link>">
+<!ENTITY cv-link-SCANNERS "<link linkend='cv-SCANNERS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SCANNERS</envar></link>">
+<!ENTITY cv-link-SCCS "<link linkend='cv-SCCS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SCCS</envar></link>">
+<!ENTITY cv-link-SCCSCOM "<link linkend='cv-SCCSCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SCCSCOM</envar></link>">
+<!ENTITY cv-link-SCCSCOMSTR "<link linkend='cv-SCCSCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SCCSCOMSTR</envar></link>">
+<!ENTITY cv-link-SCCSFLAGS "<link linkend='cv-SCCSFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SCCSFLAGS</envar></link>">
+<!ENTITY cv-link-SCCSGETFLAGS "<link linkend='cv-SCCSGETFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SCCSGETFLAGS</envar></link>">
+<!ENTITY cv-link-SCONS_HOME "<link linkend='cv-SCONS_HOME' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SCONS_HOME</envar></link>">
+<!ENTITY cv-link-SHCC "<link linkend='cv-SHCC' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHCC</envar></link>">
+<!ENTITY cv-link-SHCCCOM "<link linkend='cv-SHCCCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHCCCOM</envar></link>">
+<!ENTITY cv-link-SHCCCOMSTR "<link linkend='cv-SHCCCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHCCCOMSTR</envar></link>">
+<!ENTITY cv-link-SHCCFLAGS "<link linkend='cv-SHCCFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHCCFLAGS</envar></link>">
+<!ENTITY cv-link-SHCFLAGS "<link linkend='cv-SHCFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHCFLAGS</envar></link>">
+<!ENTITY cv-link-SHCXX "<link linkend='cv-SHCXX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHCXX</envar></link>">
+<!ENTITY cv-link-SHCXXCOM "<link linkend='cv-SHCXXCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHCXXCOM</envar></link>">
+<!ENTITY cv-link-SHCXXCOMSTR "<link linkend='cv-SHCXXCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHCXXCOMSTR</envar></link>">
+<!ENTITY cv-link-SHCXXFLAGS "<link linkend='cv-SHCXXFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHCXXFLAGS</envar></link>">
+<!ENTITY cv-link-SHELL "<link linkend='cv-SHELL' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHELL</envar></link>">
+<!ENTITY cv-link-SHF03 "<link linkend='cv-SHF03' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHF03</envar></link>">
+<!ENTITY cv-link-SHF03COM "<link linkend='cv-SHF03COM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHF03COM</envar></link>">
+<!ENTITY cv-link-SHF03COMSTR "<link linkend='cv-SHF03COMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHF03COMSTR</envar></link>">
+<!ENTITY cv-link-SHF03FLAGS "<link linkend='cv-SHF03FLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHF03FLAGS</envar></link>">
+<!ENTITY cv-link-SHF03PPCOM "<link linkend='cv-SHF03PPCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHF03PPCOM</envar></link>">
+<!ENTITY cv-link-SHF03PPCOMSTR "<link linkend='cv-SHF03PPCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHF03PPCOMSTR</envar></link>">
+<!ENTITY cv-link-SHF77 "<link linkend='cv-SHF77' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHF77</envar></link>">
+<!ENTITY cv-link-SHF77COM "<link linkend='cv-SHF77COM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHF77COM</envar></link>">
+<!ENTITY cv-link-SHF77COMSTR "<link linkend='cv-SHF77COMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHF77COMSTR</envar></link>">
+<!ENTITY cv-link-SHF77FLAGS "<link linkend='cv-SHF77FLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHF77FLAGS</envar></link>">
+<!ENTITY cv-link-SHF77PPCOM "<link linkend='cv-SHF77PPCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHF77PPCOM</envar></link>">
+<!ENTITY cv-link-SHF77PPCOMSTR "<link linkend='cv-SHF77PPCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHF77PPCOMSTR</envar></link>">
+<!ENTITY cv-link-SHF90 "<link linkend='cv-SHF90' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHF90</envar></link>">
+<!ENTITY cv-link-SHF90COM "<link linkend='cv-SHF90COM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHF90COM</envar></link>">
+<!ENTITY cv-link-SHF90COMSTR "<link linkend='cv-SHF90COMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHF90COMSTR</envar></link>">
+<!ENTITY cv-link-SHF90FLAGS "<link linkend='cv-SHF90FLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHF90FLAGS</envar></link>">
+<!ENTITY cv-link-SHF90PPCOM "<link linkend='cv-SHF90PPCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHF90PPCOM</envar></link>">
+<!ENTITY cv-link-SHF90PPCOMSTR "<link linkend='cv-SHF90PPCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHF90PPCOMSTR</envar></link>">
+<!ENTITY cv-link-SHF95 "<link linkend='cv-SHF95' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHF95</envar></link>">
+<!ENTITY cv-link-SHF95COM "<link linkend='cv-SHF95COM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHF95COM</envar></link>">
+<!ENTITY cv-link-SHF95COMSTR "<link linkend='cv-SHF95COMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHF95COMSTR</envar></link>">
+<!ENTITY cv-link-SHF95FLAGS "<link linkend='cv-SHF95FLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHF95FLAGS</envar></link>">
+<!ENTITY cv-link-SHF95PPCOM "<link linkend='cv-SHF95PPCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHF95PPCOM</envar></link>">
+<!ENTITY cv-link-SHF95PPCOMSTR "<link linkend='cv-SHF95PPCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHF95PPCOMSTR</envar></link>">
+<!ENTITY cv-link-SHFORTRAN "<link linkend='cv-SHFORTRAN' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHFORTRAN</envar></link>">
+<!ENTITY cv-link-SHFORTRANCOM "<link linkend='cv-SHFORTRANCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHFORTRANCOM</envar></link>">
+<!ENTITY cv-link-SHFORTRANCOMSTR "<link linkend='cv-SHFORTRANCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHFORTRANCOMSTR</envar></link>">
+<!ENTITY cv-link-SHFORTRANFLAGS "<link linkend='cv-SHFORTRANFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHFORTRANFLAGS</envar></link>">
+<!ENTITY cv-link-SHFORTRANPPCOM "<link linkend='cv-SHFORTRANPPCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHFORTRANPPCOM</envar></link>">
+<!ENTITY cv-link-SHFORTRANPPCOMSTR "<link linkend='cv-SHFORTRANPPCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHFORTRANPPCOMSTR</envar></link>">
+<!ENTITY cv-link-SHLIBEMITTER "<link linkend='cv-SHLIBEMITTER' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHLIBEMITTER</envar></link>">
+<!ENTITY cv-link-SHLIBPREFIX "<link linkend='cv-SHLIBPREFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHLIBPREFIX</envar></link>">
+<!ENTITY cv-link-SHLIBSUFFIX "<link linkend='cv-SHLIBSUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHLIBSUFFIX</envar></link>">
+<!ENTITY cv-link-SHLIBVERSION "<link linkend='cv-SHLIBVERSION' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHLIBVERSION</envar></link>">
+<!ENTITY cv-link-SHLINK "<link linkend='cv-SHLINK' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHLINK</envar></link>">
+<!ENTITY cv-link-SHLINKCOM "<link linkend='cv-SHLINKCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHLINKCOM</envar></link>">
+<!ENTITY cv-link-SHLINKCOMSTR "<link linkend='cv-SHLINKCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHLINKCOMSTR</envar></link>">
+<!ENTITY cv-link-SHLINKFLAGS "<link linkend='cv-SHLINKFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHLINKFLAGS</envar></link>">
+<!ENTITY cv-link-SHOBJPREFIX "<link linkend='cv-SHOBJPREFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHOBJPREFIX</envar></link>">
+<!ENTITY cv-link-SHOBJSUFFIX "<link linkend='cv-SHOBJSUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHOBJSUFFIX</envar></link>">
+<!ENTITY cv-link-SOURCE "<link linkend='cv-SOURCE' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SOURCE</envar></link>">
+<!ENTITY cv-link-SOURCE_URL "<link linkend='cv-SOURCE_URL' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SOURCE_URL</envar></link>">
+<!ENTITY cv-link-SOURCES "<link linkend='cv-SOURCES' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SOURCES</envar></link>">
+<!ENTITY cv-link-SPAWN "<link linkend='cv-SPAWN' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SPAWN</envar></link>">
+<!ENTITY cv-link-SUBST_DICT "<link linkend='cv-SUBST_DICT' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SUBST_DICT</envar></link>">
+<!ENTITY cv-link-SUBSTFILEPREFIX "<link linkend='cv-SUBSTFILEPREFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SUBSTFILEPREFIX</envar></link>">
+<!ENTITY cv-link-SUBSTFILESUFFIX "<link linkend='cv-SUBSTFILESUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SUBSTFILESUFFIX</envar></link>">
+<!ENTITY cv-link-SUMMARY "<link linkend='cv-SUMMARY' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SUMMARY</envar></link>">
+<!ENTITY cv-link-SWIG "<link linkend='cv-SWIG' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SWIG</envar></link>">
+<!ENTITY cv-link-SWIGCFILESUFFIX "<link linkend='cv-SWIGCFILESUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SWIGCFILESUFFIX</envar></link>">
+<!ENTITY cv-link-SWIGCOM "<link linkend='cv-SWIGCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SWIGCOM</envar></link>">
+<!ENTITY cv-link-SWIGCOMSTR "<link linkend='cv-SWIGCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SWIGCOMSTR</envar></link>">
+<!ENTITY cv-link-SWIGCXXFILESUFFIX "<link linkend='cv-SWIGCXXFILESUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SWIGCXXFILESUFFIX</envar></link>">
+<!ENTITY cv-link-SWIGDIRECTORSUFFIX "<link linkend='cv-SWIGDIRECTORSUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SWIGDIRECTORSUFFIX</envar></link>">
+<!ENTITY cv-link-SWIGFLAGS "<link linkend='cv-SWIGFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SWIGFLAGS</envar></link>">
+<!ENTITY cv-link-_SWIGINCFLAGS "<link linkend='cv-_SWIGINCFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$_SWIGINCFLAGS</envar></link>">
+<!ENTITY cv-link-SWIGINCPREFIX "<link linkend='cv-SWIGINCPREFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SWIGINCPREFIX</envar></link>">
+<!ENTITY cv-link-SWIGINCSUFFIX "<link linkend='cv-SWIGINCSUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SWIGINCSUFFIX</envar></link>">
+<!ENTITY cv-link-SWIGOUTDIR "<link linkend='cv-SWIGOUTDIR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SWIGOUTDIR</envar></link>">
+<!ENTITY cv-link-SWIGPATH "<link linkend='cv-SWIGPATH' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SWIGPATH</envar></link>">
+<!ENTITY cv-link-SWIGVERSION "<link linkend='cv-SWIGVERSION' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SWIGVERSION</envar></link>">
+<!ENTITY cv-link-TAR "<link linkend='cv-TAR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$TAR</envar></link>">
+<!ENTITY cv-link-TARCOM "<link linkend='cv-TARCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$TARCOM</envar></link>">
+<!ENTITY cv-link-TARCOMSTR "<link linkend='cv-TARCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$TARCOMSTR</envar></link>">
+<!ENTITY cv-link-TARFLAGS "<link linkend='cv-TARFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$TARFLAGS</envar></link>">
+<!ENTITY cv-link-TARGET "<link linkend='cv-TARGET' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$TARGET</envar></link>">
+<!ENTITY cv-link-TARGET_ARCH "<link linkend='cv-TARGET_ARCH' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$TARGET_ARCH</envar></link>">
+<!ENTITY cv-link-TARGET_OS "<link linkend='cv-TARGET_OS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$TARGET_OS</envar></link>">
+<!ENTITY cv-link-TARGETS "<link linkend='cv-TARGETS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$TARGETS</envar></link>">
+<!ENTITY cv-link-TARSUFFIX "<link linkend='cv-TARSUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$TARSUFFIX</envar></link>">
+<!ENTITY cv-link-TEMPFILEPREFIX "<link linkend='cv-TEMPFILEPREFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$TEMPFILEPREFIX</envar></link>">
+<!ENTITY cv-link-TEX "<link linkend='cv-TEX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$TEX</envar></link>">
+<!ENTITY cv-link-TEXCOM "<link linkend='cv-TEXCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$TEXCOM</envar></link>">
+<!ENTITY cv-link-TEXCOMSTR "<link linkend='cv-TEXCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$TEXCOMSTR</envar></link>">
+<!ENTITY cv-link-TEXFLAGS "<link linkend='cv-TEXFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$TEXFLAGS</envar></link>">
+<!ENTITY cv-link-TEXINPUTS "<link linkend='cv-TEXINPUTS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$TEXINPUTS</envar></link>">
+<!ENTITY cv-link-TEXTFILEPREFIX "<link linkend='cv-TEXTFILEPREFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$TEXTFILEPREFIX</envar></link>">
+<!ENTITY cv-link-TEXTFILESUFFIX "<link linkend='cv-TEXTFILESUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$TEXTFILESUFFIX</envar></link>">
+<!ENTITY cv-link-TOOLS "<link linkend='cv-TOOLS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$TOOLS</envar></link>">
+<!ENTITY cv-link-UNCHANGED_SOURCES "<link linkend='cv-UNCHANGED_SOURCES' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$UNCHANGED_SOURCES</envar></link>">
+<!ENTITY cv-link-UNCHANGED_TARGETS "<link linkend='cv-UNCHANGED_TARGETS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$UNCHANGED_TARGETS</envar></link>">
+<!ENTITY cv-link-VENDOR "<link linkend='cv-VENDOR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$VENDOR</envar></link>">
+<!ENTITY cv-link-VERSION "<link linkend='cv-VERSION' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$VERSION</envar></link>">
+<!ENTITY cv-link-WIN32_INSERT_DEF "<link linkend='cv-WIN32_INSERT_DEF' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$WIN32_INSERT_DEF</envar></link>">
+<!ENTITY cv-link-WIN32DEFPREFIX "<link linkend='cv-WIN32DEFPREFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$WIN32DEFPREFIX</envar></link>">
+<!ENTITY cv-link-WIN32DEFSUFFIX "<link linkend='cv-WIN32DEFSUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$WIN32DEFSUFFIX</envar></link>">
+<!ENTITY cv-link-WIN32EXPPREFIX "<link linkend='cv-WIN32EXPPREFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$WIN32EXPPREFIX</envar></link>">
+<!ENTITY cv-link-WIN32EXPSUFFIX "<link linkend='cv-WIN32EXPSUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$WIN32EXPSUFFIX</envar></link>">
+<!ENTITY cv-link-WINDOWS_EMBED_MANIFEST "<link linkend='cv-WINDOWS_EMBED_MANIFEST' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$WINDOWS_EMBED_MANIFEST</envar></link>">
+<!ENTITY cv-link-WINDOWS_INSERT_DEF "<link linkend='cv-WINDOWS_INSERT_DEF' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$WINDOWS_INSERT_DEF</envar></link>">
+<!ENTITY cv-link-WINDOWS_INSERT_MANIFEST "<link linkend='cv-WINDOWS_INSERT_MANIFEST' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$WINDOWS_INSERT_MANIFEST</envar></link>">
+<!ENTITY cv-link-WINDOWSDEFPREFIX "<link linkend='cv-WINDOWSDEFPREFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$WINDOWSDEFPREFIX</envar></link>">
+<!ENTITY cv-link-WINDOWSDEFSUFFIX "<link linkend='cv-WINDOWSDEFSUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$WINDOWSDEFSUFFIX</envar></link>">
+<!ENTITY cv-link-WINDOWSEXPPREFIX "<link linkend='cv-WINDOWSEXPPREFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$WINDOWSEXPPREFIX</envar></link>">
+<!ENTITY cv-link-WINDOWSEXPSUFFIX "<link linkend='cv-WINDOWSEXPSUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$WINDOWSEXPSUFFIX</envar></link>">
+<!ENTITY cv-link-WINDOWSPROGMANIFESTPREFIX "<link linkend='cv-WINDOWSPROGMANIFESTPREFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$WINDOWSPROGMANIFESTPREFIX</envar></link>">
+<!ENTITY cv-link-WINDOWSPROGMANIFESTSUFFIX "<link linkend='cv-WINDOWSPROGMANIFESTSUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$WINDOWSPROGMANIFESTSUFFIX</envar></link>">
+<!ENTITY cv-link-WINDOWSSHLIBMANIFESTPREFIX "<link linkend='cv-WINDOWSSHLIBMANIFESTPREFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$WINDOWSSHLIBMANIFESTPREFIX</envar></link>">
+<!ENTITY cv-link-WINDOWSSHLIBMANIFESTSUFFIX "<link linkend='cv-WINDOWSSHLIBMANIFESTSUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$WINDOWSSHLIBMANIFESTSUFFIX</envar></link>">
+<!ENTITY cv-link-X_IPK_DEPENDS "<link linkend='cv-X_IPK_DEPENDS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$X_IPK_DEPENDS</envar></link>">
+<!ENTITY cv-link-X_IPK_DESCRIPTION "<link linkend='cv-X_IPK_DESCRIPTION' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$X_IPK_DESCRIPTION</envar></link>">
+<!ENTITY cv-link-X_IPK_MAINTAINER "<link linkend='cv-X_IPK_MAINTAINER' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$X_IPK_MAINTAINER</envar></link>">
+<!ENTITY cv-link-X_IPK_PRIORITY "<link linkend='cv-X_IPK_PRIORITY' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$X_IPK_PRIORITY</envar></link>">
+<!ENTITY cv-link-X_IPK_SECTION "<link linkend='cv-X_IPK_SECTION' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$X_IPK_SECTION</envar></link>">
+<!ENTITY cv-link-X_MSI_LANGUAGE "<link linkend='cv-X_MSI_LANGUAGE' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$X_MSI_LANGUAGE</envar></link>">
+<!ENTITY cv-link-X_MSI_LICENSE_TEXT "<link linkend='cv-X_MSI_LICENSE_TEXT' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$X_MSI_LICENSE_TEXT</envar></link>">
+<!ENTITY cv-link-X_MSI_UPGRADE_CODE "<link linkend='cv-X_MSI_UPGRADE_CODE' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$X_MSI_UPGRADE_CODE</envar></link>">
+<!ENTITY cv-link-X_RPM_AUTOREQPROV "<link linkend='cv-X_RPM_AUTOREQPROV' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$X_RPM_AUTOREQPROV</envar></link>">
+<!ENTITY cv-link-X_RPM_BUILD "<link linkend='cv-X_RPM_BUILD' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$X_RPM_BUILD</envar></link>">
+<!ENTITY cv-link-X_RPM_BUILDREQUIRES "<link linkend='cv-X_RPM_BUILDREQUIRES' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$X_RPM_BUILDREQUIRES</envar></link>">
+<!ENTITY cv-link-X_RPM_BUILDROOT "<link linkend='cv-X_RPM_BUILDROOT' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$X_RPM_BUILDROOT</envar></link>">
+<!ENTITY cv-link-X_RPM_CLEAN "<link linkend='cv-X_RPM_CLEAN' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$X_RPM_CLEAN</envar></link>">
+<!ENTITY cv-link-X_RPM_CONFLICTS "<link linkend='cv-X_RPM_CONFLICTS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$X_RPM_CONFLICTS</envar></link>">
+<!ENTITY cv-link-X_RPM_DEFATTR "<link linkend='cv-X_RPM_DEFATTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$X_RPM_DEFATTR</envar></link>">
+<!ENTITY cv-link-X_RPM_DISTRIBUTION "<link linkend='cv-X_RPM_DISTRIBUTION' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$X_RPM_DISTRIBUTION</envar></link>">
+<!ENTITY cv-link-X_RPM_EPOCH "<link linkend='cv-X_RPM_EPOCH' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$X_RPM_EPOCH</envar></link>">
+<!ENTITY cv-link-X_RPM_EXCLUDEARCH "<link linkend='cv-X_RPM_EXCLUDEARCH' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$X_RPM_EXCLUDEARCH</envar></link>">
+<!ENTITY cv-link-X_RPM_EXLUSIVEARCH "<link linkend='cv-X_RPM_EXLUSIVEARCH' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$X_RPM_EXLUSIVEARCH</envar></link>">
+<!ENTITY cv-link-X_RPM_GROUP "<link linkend='cv-X_RPM_GROUP' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$X_RPM_GROUP</envar></link>">
+<!ENTITY cv-link-X_RPM_GROUP_lang "<link linkend='cv-X_RPM_GROUP_lang' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$X_RPM_GROUP_lang</envar></link>">
+<!ENTITY cv-link-X_RPM_ICON "<link linkend='cv-X_RPM_ICON' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$X_RPM_ICON</envar></link>">
+<!ENTITY cv-link-X_RPM_INSTALL "<link linkend='cv-X_RPM_INSTALL' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$X_RPM_INSTALL</envar></link>">
+<!ENTITY cv-link-X_RPM_PACKAGER "<link linkend='cv-X_RPM_PACKAGER' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$X_RPM_PACKAGER</envar></link>">
+<!ENTITY cv-link-X_RPM_POSTINSTALL "<link linkend='cv-X_RPM_POSTINSTALL' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$X_RPM_POSTINSTALL</envar></link>">
+<!ENTITY cv-link-X_RPM_POSTUNINSTALL "<link linkend='cv-X_RPM_POSTUNINSTALL' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$X_RPM_POSTUNINSTALL</envar></link>">
+<!ENTITY cv-link-X_RPM_PREFIX "<link linkend='cv-X_RPM_PREFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$X_RPM_PREFIX</envar></link>">
+<!ENTITY cv-link-X_RPM_PREINSTALL "<link linkend='cv-X_RPM_PREINSTALL' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$X_RPM_PREINSTALL</envar></link>">
+<!ENTITY cv-link-X_RPM_PREP "<link linkend='cv-X_RPM_PREP' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$X_RPM_PREP</envar></link>">
+<!ENTITY cv-link-X_RPM_PREUNINSTALL "<link linkend='cv-X_RPM_PREUNINSTALL' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$X_RPM_PREUNINSTALL</envar></link>">
+<!ENTITY cv-link-X_RPM_PROVIDES "<link linkend='cv-X_RPM_PROVIDES' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$X_RPM_PROVIDES</envar></link>">
+<!ENTITY cv-link-X_RPM_REQUIRES "<link linkend='cv-X_RPM_REQUIRES' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$X_RPM_REQUIRES</envar></link>">
+<!ENTITY cv-link-X_RPM_SERIAL "<link linkend='cv-X_RPM_SERIAL' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$X_RPM_SERIAL</envar></link>">
+<!ENTITY cv-link-X_RPM_URL "<link linkend='cv-X_RPM_URL' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$X_RPM_URL</envar></link>">
+<!ENTITY cv-link-XGETTEXT "<link linkend='cv-XGETTEXT' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$XGETTEXT</envar></link>">
+<!ENTITY cv-link-XGETTEXTCOM "<link linkend='cv-XGETTEXTCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$XGETTEXTCOM</envar></link>">
+<!ENTITY cv-link-XGETTEXTCOMSTR "<link linkend='cv-XGETTEXTCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$XGETTEXTCOMSTR</envar></link>">
+<!ENTITY cv-link-_XGETTEXTDOMAIN "<link linkend='cv-_XGETTEXTDOMAIN' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$_XGETTEXTDOMAIN</envar></link>">
+<!ENTITY cv-link-XGETTEXTFLAGS "<link linkend='cv-XGETTEXTFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$XGETTEXTFLAGS</envar></link>">
+<!ENTITY cv-link-XGETTEXTFROM "<link linkend='cv-XGETTEXTFROM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$XGETTEXTFROM</envar></link>">
+<!ENTITY cv-link-_XGETTEXTFROMFLAGS "<link linkend='cv-_XGETTEXTFROMFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$_XGETTEXTFROMFLAGS</envar></link>">
+<!ENTITY cv-link-XGETTEXTFROMPREFIX "<link linkend='cv-XGETTEXTFROMPREFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$XGETTEXTFROMPREFIX</envar></link>">
+<!ENTITY cv-link-XGETTEXTFROMSUFFIX "<link linkend='cv-XGETTEXTFROMSUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$XGETTEXTFROMSUFFIX</envar></link>">
+<!ENTITY cv-link-XGETTEXTPATH "<link linkend='cv-XGETTEXTPATH' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$XGETTEXTPATH</envar></link>">
+<!ENTITY cv-link-_XGETTEXTPATHFLAGS "<link linkend='cv-_XGETTEXTPATHFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$_XGETTEXTPATHFLAGS</envar></link>">
+<!ENTITY cv-link-XGETTEXTPATHPREFIX "<link linkend='cv-XGETTEXTPATHPREFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$XGETTEXTPATHPREFIX</envar></link>">
+<!ENTITY cv-link-XGETTEXTPATHSUFFIX "<link linkend='cv-XGETTEXTPATHSUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$XGETTEXTPATHSUFFIX</envar></link>">
+<!ENTITY cv-link-YACC "<link linkend='cv-YACC' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$YACC</envar></link>">
+<!ENTITY cv-link-YACCCOM "<link linkend='cv-YACCCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$YACCCOM</envar></link>">
+<!ENTITY cv-link-YACCCOMSTR "<link linkend='cv-YACCCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$YACCCOMSTR</envar></link>">
+<!ENTITY cv-link-YACCFLAGS "<link linkend='cv-YACCFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$YACCFLAGS</envar></link>">
+<!ENTITY cv-link-YACCHFILESUFFIX "<link linkend='cv-YACCHFILESUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$YACCHFILESUFFIX</envar></link>">
+<!ENTITY cv-link-YACCHXXFILESUFFIX "<link linkend='cv-YACCHXXFILESUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$YACCHXXFILESUFFIX</envar></link>">
+<!ENTITY cv-link-YACCVCGFILESUFFIX "<link linkend='cv-YACCVCGFILESUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$YACCVCGFILESUFFIX</envar></link>">
+<!ENTITY cv-link-ZIP "<link linkend='cv-ZIP' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$ZIP</envar></link>">
+<!ENTITY cv-link-ZIPCOM "<link linkend='cv-ZIPCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$ZIPCOM</envar></link>">
+<!ENTITY cv-link-ZIPCOMPRESSION "<link linkend='cv-ZIPCOMPRESSION' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$ZIPCOMPRESSION</envar></link>">
+<!ENTITY cv-link-ZIPCOMSTR "<link linkend='cv-ZIPCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$ZIPCOMSTR</envar></link>">
+<!ENTITY cv-link-ZIPFLAGS "<link linkend='cv-ZIPFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$ZIPFLAGS</envar></link>">
+<!ENTITY cv-link-ZIPSUFFIX "<link linkend='cv-ZIPSUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$ZIPSUFFIX</envar></link>">
+
+<!--
+THIS IS AN AUTOMATICALLY-GENERATED FILE. DO NOT EDIT.
+-->