summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/engine/SCons/Action.xml55
-rw-r--r--src/engine/SCons/Defaults.xml169
-rw-r--r--src/engine/SCons/Environment.xml721
-rw-r--r--src/engine/SCons/Platform/__init__.xml65
-rw-r--r--src/engine/SCons/Platform/posix.xml29
-rw-r--r--src/engine/SCons/Platform/sunos.xml25
-rw-r--r--src/engine/SCons/Platform/win32.xml23
-rw-r--r--src/engine/SCons/Scanner/__init__.xml31
-rw-r--r--src/engine/SCons/Script/Main.xml113
-rw-r--r--src/engine/SCons/Script/SConscript.xml163
-rw-r--r--src/engine/SCons/Subst.xml31
-rw-r--r--src/engine/SCons/Tool/386asm.xml41
-rw-r--r--src/engine/SCons/Tool/BitKeeper.xml53
-rw-r--r--src/engine/SCons/Tool/CVS.xml57
-rw-r--r--src/engine/SCons/Tool/Perforce.xml51
-rw-r--r--src/engine/SCons/Tool/RCS.xml55
-rw-r--r--src/engine/SCons/Tool/SCCS.xml53
-rw-r--r--src/engine/SCons/Tool/Subversion.xml49
-rw-r--r--src/engine/SCons/Tool/__init__.xml115
-rw-r--r--src/engine/SCons/Tool/aixc++.xml31
-rw-r--r--src/engine/SCons/Tool/aixcc.xml29
-rw-r--r--src/engine/SCons/Tool/aixf77.xml27
-rw-r--r--src/engine/SCons/Tool/aixlink.xml31
-rw-r--r--src/engine/SCons/Tool/applelink.xml75
-rw-r--r--src/engine/SCons/Tool/ar.xml63
-rw-r--r--src/engine/SCons/Tool/as.xml63
-rw-r--r--src/engine/SCons/Tool/bcc32.xml57
-rw-r--r--src/engine/SCons/Tool/c++.xml77
-rw-r--r--src/engine/SCons/Tool/cc.xml97
-rw-r--r--src/engine/SCons/Tool/cvf.xml53
-rw-r--r--src/engine/SCons/Tool/default.xml23
-rw-r--r--src/engine/SCons/Tool/dmd.xml97
-rw-r--r--src/engine/SCons/Tool/dvi.xml31
-rw-r--r--src/engine/SCons/Tool/dvipdf.xml41
-rw-r--r--src/engine/SCons/Tool/dvips.xml53
-rw-r--r--src/engine/SCons/Tool/f03.xml97
-rw-r--r--src/engine/SCons/Tool/f77.xml123
-rw-r--r--src/engine/SCons/Tool/f90.xml97
-rw-r--r--src/engine/SCons/Tool/f95.xml97
-rw-r--r--src/engine/SCons/Tool/fortran.xml111
-rw-r--r--src/engine/SCons/Tool/g++.xml33
-rw-r--r--src/engine/SCons/Tool/g77.xml23
-rw-r--r--src/engine/SCons/Tool/gas.xml25
-rw-r--r--src/engine/SCons/Tool/gcc.xml29
-rw-r--r--src/engine/SCons/Tool/gettext.xml95
-rw-r--r--src/engine/SCons/Tool/gfortran.xml47
-rw-r--r--src/engine/SCons/Tool/gnulink.xml29
-rw-r--r--src/engine/SCons/Tool/gs.xml39
-rw-r--r--src/engine/SCons/Tool/hpc++.xml23
-rw-r--r--src/engine/SCons/Tool/hpcc.xml29
-rw-r--r--src/engine/SCons/Tool/hplink.xml29
-rw-r--r--src/engine/SCons/Tool/icc.xml51
-rw-r--r--src/engine/SCons/Tool/icl.xml23
-rw-r--r--src/engine/SCons/Tool/ifl.xml41
-rw-r--r--src/engine/SCons/Tool/ifort.xml47
-rw-r--r--src/engine/SCons/Tool/ilink.xml37
-rw-r--r--src/engine/SCons/Tool/ilink32.xml37
-rw-r--r--src/engine/SCons/Tool/install.xml41
-rw-r--r--src/engine/SCons/Tool/intelc.xml37
-rw-r--r--src/engine/SCons/Tool/jar.xml59
-rw-r--r--src/engine/SCons/Tool/javac.xml91
-rw-r--r--src/engine/SCons/Tool/javah.xml57
-rw-r--r--src/engine/SCons/Tool/latex.xml47
-rw-r--r--src/engine/SCons/Tool/lex.xml43
-rw-r--r--src/engine/SCons/Tool/link.xml97
-rw-r--r--src/engine/SCons/Tool/linkloc.xml51
-rw-r--r--src/engine/SCons/Tool/m4.xml45
-rw-r--r--src/engine/SCons/Tool/masm.xml45
-rw-r--r--src/engine/SCons/Tool/midl.xml47
-rw-r--r--src/engine/SCons/Tool/mingw.xml69
-rw-r--r--src/engine/SCons/Tool/msgfmt.xml73
-rw-r--r--src/engine/SCons/Tool/msginit.xml107
-rw-r--r--src/engine/SCons/Tool/msgmerge.xml105
-rw-r--r--src/engine/SCons/Tool/mslib.xml35
-rw-r--r--src/engine/SCons/Tool/mslink.xml153
-rw-r--r--src/engine/SCons/Tool/mssdk.xml33
-rw-r--r--src/engine/SCons/Tool/msvc.xml187
-rw-r--r--src/engine/SCons/Tool/msvs.xml159
-rw-r--r--src/engine/SCons/Tool/mwcc.xml75
-rw-r--r--src/engine/SCons/Tool/mwld.xml47
-rw-r--r--src/engine/SCons/Tool/nasm.xml37
-rw-r--r--src/engine/SCons/Tool/packaging.xml45
-rw-r--r--src/engine/SCons/Tool/packaging/__init__.xml187
-rw-r--r--src/engine/SCons/Tool/pdf.xml37
-rw-r--r--src/engine/SCons/Tool/pdflatex.xml45
-rw-r--r--src/engine/SCons/Tool/pdftex.xml53
-rw-r--r--src/engine/SCons/Tool/qt.xml151
-rw-r--r--src/engine/SCons/Tool/rmic.xml53
-rw-r--r--src/engine/SCons/Tool/rpcgen.xml71
-rw-r--r--src/engine/SCons/Tool/sgiar.xml41
-rw-r--r--src/engine/SCons/Tool/sgic++.xml33
-rw-r--r--src/engine/SCons/Tool/sgicc.xml29
-rw-r--r--src/engine/SCons/Tool/sgilink.xml31
-rw-r--r--src/engine/SCons/Tool/sunar.xml43
-rw-r--r--src/engine/SCons/Tool/sunc++.xml35
-rw-r--r--src/engine/SCons/Tool/suncc.xml31
-rw-r--r--src/engine/SCons/Tool/sunf77.xml35
-rw-r--r--src/engine/SCons/Tool/sunf90.xml35
-rw-r--r--src/engine/SCons/Tool/sunf95.xml35
-rw-r--r--src/engine/SCons/Tool/sunlink.xml29
-rw-r--r--src/engine/SCons/Tool/swig.xml91
-rw-r--r--src/engine/SCons/Tool/tar.xml53
-rw-r--r--src/engine/SCons/Tool/tex.xml87
-rw-r--r--src/engine/SCons/Tool/textfile.xml71
-rw-r--r--src/engine/SCons/Tool/tlib.xml35
-rw-r--r--src/engine/SCons/Tool/xgettext.xml163
-rw-r--r--src/engine/SCons/Tool/yacc.xml55
-rw-r--r--src/engine/SCons/Tool/zip.xml56
108 files changed, 5961 insertions, 1318 deletions
diff --git a/src/engine/SCons/Action.xml b/src/engine/SCons/Action.xml
index a82b038c..72248e26 100644
--- a/src/engine/SCons/Action.xml
+++ b/src/engine/SCons/Action.xml
@@ -1,15 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<cvar name="IMPLICIT_COMMAND_DEPENDENCIES">
<summary>
+<para>
Controls whether or not SCons will
add implicit dependencies for the commands
executed to build targets.
+</para>
+<para>
By default, SCons will add
to each target
an implicit dependency on the command
@@ -21,7 +43,9 @@ found by searching the
variable in the
<varname>ENV</varname>
environment used to execute the command.
+</para>
+<para>
If the construction variable
&cv-IMPLICIT_COMMAND_DEPENDENCIES;
is set to a false value
@@ -32,15 +56,17 @@ etc.),
then the implicit dependency will
not be added to the targets
built with that construction environment.
+</para>
-<example>
+<example_commands>
env = Environment(IMPLICIT_COMMAND_DEPENDENCIES = 0)
-</example>
+</example_commands>
</summary>
</cvar>
<cvar name="PRINT_CMD_LINE_FUNC">
<summary>
+<para>
A Python function used to print the command lines as they are executed
(assuming command printing is not disabled by the
<option>-q</option>
@@ -56,41 +82,51 @@ the target being built (file node, list, or string name(s)),
the source(s) used (file node, list, or string name(s)), and
<varname>env</varname>,
the environment being used.
+</para>
+<para>
The function must do the printing itself. The default implementation,
used if this variable is not set or is None, is:
-<example>
+</para>
+<example_commands>
def print_cmd_line(s, target, source, env):
sys.stdout.write(s + "\n")
-</example>
+</example_commands>
+<para>
Here's an example of a more interesting function:
+</para>
-<example>
+<example_commands>
def print_cmd_line(s, target, source, env):
sys.stdout.write("Building %s -> %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>
+</example_commands>
+<para>
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>
</summary>
</cvar>
<cvar name="SPAWN">
<summary>
+<para>
A command interpreter function that will be called to execute command line
strings. The function must expect the following arguments:
+</para>
-<example>
+<example_commands>
def spawn(shell, escape, cmd, args, env):
-</example>
+</example_commands>
+<para>
<varname>sh</varname>
is a string naming the shell program to use.
<varname>escape</varname>
@@ -103,5 +139,8 @@ is the arguments to the command.
<varname>env</varname>
is a dictionary of the environment variables
in which the command should be executed.
+</para>
</summary>
</cvar>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Defaults.xml b/src/engine/SCons/Defaults.xml
index 2ef820a7..6d7b2479 100644
--- a/src/engine/SCons/Defaults.xml
+++ b/src/engine/SCons/Defaults.xml
@@ -1,26 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<cvar name ="_concat">
<summary>
+<para>
A function used to produce variables like &cv-_CPPINCFLAGS;. 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>
+<example_commands>
env['_CPPINCFLAGS'] = '$( ${_concat(INCPREFIX, CPPPATH, INCSUFFIX, __env__, RDirs)} $)',
-</example>
+</example_commands>
</summary>
</cvar>
<cvar name="CONFIGUREDIR">
<summary>
+<para>
The name of the directory in which
Configure context test files are written.
The default is
@@ -29,11 +51,13 @@ in the top-level directory
containing the
<filename>SConstruct</filename>
file.
+</para>
</summary>
</cvar>
<cvar name="CONFIGURELOG">
<summary>
+<para>
The name of the Configure context log file.
The default is
<filename>config.log</filename>
@@ -41,11 +65,13 @@ in the top-level directory
containing the
<filename>SConstruct</filename>
file.
+</para>
</summary>
</cvar>
<cvar name="_CPPDEFFLAGS">
<summary>
+<para>
An automatically-generated construction variable
containing the C preprocessor command-line options
to define values.
@@ -53,30 +79,36 @@ The value of &cv-_CPPDEFFLAGS; is created
by appending &cv-CPPDEFPREFIX; and &cv-CPPDEFSUFFIX;
to the beginning and end
of each definition in &cv-CPPDEFINES;.
+</para>
</summary>
</cvar>
<cvar name="CPPDEFINES">
<summary>
+<para>
A platform independent specification of C preprocessor definitions.
The definitions will be added to command lines
through the automatically-generated
&cv-_CPPDEFFLAGS; construction variable (see above),
which is constructed according to
the type of value of &cv-CPPDEFINES;:
+</para>
+<para>
If &cv-CPPDEFINES; is a string,
the values of the
&cv-CPPDEFPREFIX; and &cv-CPPDEFSUFFIX;
construction variables
will be added to the beginning and end.
+</para>
-<example>
+<example_commands>
# Will add -Dxyz to POSIX compiler command lines,
# and /Dxyz to Microsoft Visual C++ command lines.
env = Environment(CPPDEFINES='xyz')
-</example>
+</example_commands>
+<para>
If &cv-CPPDEFINES; is a list,
the values of the
&cv-CPPDEFPREFIX; and &cv-CPPDEFSUFFIX;
@@ -86,13 +118,15 @@ 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>
+<example_commands>
# 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>
+</example_commands>
+<para>
If &cv-CPPDEFINES; is a dictionary,
the values of the
&cv-CPPDEFPREFIX; and &cv-CPPDEFSUFFIX;
@@ -110,37 +144,43 @@ to ensure that the order of the options on the
command line is consistent each time
&scons;
is run.
+</para>
-<example>
+<example_commands>
# 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>
+</example_commands>
</summary>
</cvar>
<cvar name="CPPDEFPREFIX">
<summary>
+<para>
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 &cv-CPPDEFINES; construction variable
when the &cv-_CPPDEFFLAGS; variable is automatically generated.
+</para>
</summary>
</cvar>
<cvar name="CPPDEFSUFFIX">
<summary>
+<para>
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 &cv-CPPDEFINES; construction variable
when the &cv-_CPPDEFFLAGS; variable is automatically generated.
+</para>
</summary>
</cvar>
<cvar name="_CPPINCFLAGS">
<summary>
+<para>
An automatically-generated construction variable
containing the C preprocessor command-line options
for specifying directories to be searched for include files.
@@ -148,11 +188,13 @@ The value of &cv-_CPPINCFLAGS; is created
by appending &cv-INCPREFIX; and &cv-INCSUFFIX;
to the beginning and end
of each directory in &cv-CPPPATH;.
+</para>
</summary>
</cvar>
<cvar name="CPPPATH">
<summary>
+<para>
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
@@ -162,20 +204,24 @@ directory names in CPPPATH will be looked-up relative to the SConscript
directory when they are used in a command. To force
&scons;
to look-up a directory relative to the root of the source tree use #:
+</para>
-<example>
+<example_commands>
env = Environment(CPPPATH='#/include')
-</example>
+</example_commands>
+<para>
The directory look-up can also be forced using the
&Dir;()
function:
+</para>
-<example>
+<example_commands>
include = Dir('include')
env = Environment(CPPPATH=include)
-</example>
+</example_commands>
+<para>
The directory list will be added to command lines
through the automatically-generated
&cv-_CPPINCFLAGS;
@@ -189,94 +235,112 @@ of each directory in &cv-CPPPATH;.
Any command lines you define that need
the CPPPATH directory list should
include &cv-_CPPINCFLAGS;:
+</para>
-<example>
+<example_commands>
env = Environment(CCCOM="my_compiler $_CPPINCFLAGS -c -o $TARGET $SOURCE")
-</example>
+</example_commands>
</summary>
</cvar>
<cvar name="Dir">
<summary>
+<para>
A function that converts a string
into a Dir instance relative to the target being built.
+</para>
</summary>
</cvar>
<cvar name="Dirs">
<summary>
+<para>
A function that converts a list of strings
into a list of Dir instances relative to the target being built.
+</para>
</summary>
</cvar>
<cvar name="DSUFFIXES">
<summary>
+<para>
The list of suffixes of files that will be scanned
for imported D package files.
The default list is:
+</para>
-<example>
+<example_commands>
['.d']
-</example>
+</example_commands>
</summary>
</cvar>
<cvar name="File">
<summary>
+<para>
A function that converts a string into a File instance relative to the
target being built.
+</para>
</summary>
</cvar>
<cvar name="IDLSUFFIXES">
<summary>
+<para>
The list of suffixes of files that will be scanned
for IDL implicit dependencies
(#include or import lines).
The default list is:
+</para>
-<example>
+<example_commands>
[".idl", ".IDL"]
-</example>
+</example_commands>
</summary>
</cvar>
<cvar name="INCPREFIX">
<summary>
+<para>
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 &cv-CPPPATH; and &cv-FORTRANPATH; construction variables
when the &cv-_CPPINCFLAGS; and &cv-_FORTRANINCFLAGS;
variables are automatically generated.
+</para>
</summary>
</cvar>
<cvar name="INCSUFFIX">
<summary>
+<para>
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 &cv-CPPPATH; and &cv-FORTRANPATH; construction variables
when the &cv-_CPPINCFLAGS; and &cv-_FORTRANINCFLAGS;
variables are automatically generated.
+</para>
</summary>
</cvar>
<cvar name="INSTALL">
<summary>
+<para>
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>
+<example_commands>
def install(dest, source, env):
-</example>
+</example_commands>
+<para>
<varname>dest</varname>
is the path name of the destination file.
<varname>source</varname>
@@ -285,35 +349,41 @@ is the path name of the source file.
is the construction environment
(a dictionary of construction values)
in force for this file installation.
+</para>
</summary>
</cvar>
<cvar name="INSTALLSTR">
<summary>
+<para>
The string displayed when a file is
installed into a destination file name.
The default is:
-<example>
+</para>
+<example_commands>
Install file: "$SOURCE" as "$TARGET"
-</example>
+</example_commands>
</summary>
</cvar>
<cvar name="LATEXSUFFIXES">
<summary>
+<para>
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>
+<example_commands>
[".tex", ".ltx", ".latex"]
-</example>
+</example_commands>
</summary>
</cvar>
<cvar name="_LIBDIRFLAGS">
<summary>
+<para>
An automatically-generated construction variable
containing the linker command-line options
for specifying directories to be searched for library.
@@ -321,29 +391,35 @@ The value of &cv-_LIBDIRFLAGS; is created
by appending &cv-LIBDIRPREFIX; and &cv-LIBDIRSUFFIX;
to the beginning and end
of each directory in &cv-LIBPATH;.
+</para>
</summary>
</cvar>
<cvar name="LIBDIRPREFIX">
<summary>
+<para>
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 &cv-LIBPATH; construction variable
when the &cv-_LIBDIRFLAGS; variable is automatically generated.
+</para>
</summary>
</cvar>
<cvar name="LIBDIRSUFFIX">
<summary>
+<para>
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 &cv-LIBPATH; construction variable
when the &cv-_LIBDIRFLAGS; variable is automatically generated.
+</para>
</summary>
</cvar>
<cvar name="_LIBFLAGS">
<summary>
+<para>
An automatically-generated construction variable
containing the linker command-line options
for specifying libraries to be linked with the resulting target.
@@ -351,29 +427,35 @@ The value of &cv-_LIBFLAGS; is created
by appending &cv-LIBLINKPREFIX; and &cv-LIBLINKSUFFIX;
to the beginning and end
of each filename in &cv-LIBS;.
+</para>
</summary>
</cvar>
<cvar name="LIBLINKPREFIX">
<summary>
+<para>
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 &cv-LIBS; construction variable
when the &cv-_LIBFLAGS; variable is automatically generated.
+</para>
</summary>
</cvar>
<cvar name="LIBLINKSUFFIX">
<summary>
+<para>
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 &cv-LIBS; construction variable
when the &cv-_LIBFLAGS; variable is automatically generated.
+</para>
</summary>
</cvar>
<cvar name="LIBPATH">
<summary>
+<para>
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
@@ -384,20 +466,24 @@ directory names in LIBPATH will be looked-up relative to the SConscript
directory when they are used in a command. To force
&scons;
to look-up a directory relative to the root of the source tree use #:
+</para>
-<example>
+<example_commands>
env = Environment(LIBPATH='#/libs')
-</example>
+</example_commands>
+<para>
The directory look-up can also be forced using the
&Dir;()
function:
+</para>
-<example>
+<example_commands>
libs = Dir('libs')
env = Environment(LIBPATH=libs)
-</example>
+</example_commands>
+<para>
The directory list will be added to command lines
through the automatically-generated
&cv-_LIBDIRFLAGS;
@@ -411,20 +497,24 @@ of each directory in &cv-LIBPATH;.
Any command lines you define that need
the LIBPATH directory list should
include &cv-_LIBDIRFLAGS;:
+</para>
-<example>
+<example_commands>
env = Environment(LINKCOM="my_linker $_LIBDIRFLAGS $_LIBFLAGS -o $TARGET $SOURCE")
-</example>
+</example_commands>
</summary>
</cvar>
<cvar name="LIBS">
<summary>
+<para>
A list of one or more libraries
that will be linked with
any executable programs
created by this environment.
+</para>
+<para>
The library list will be added to command lines
through the automatically-generated
&cv-_LIBFLAGS;
@@ -438,11 +528,13 @@ of each filename in &cv-LIBS;.
Any command lines you define that need
the LIBS library list should
include &cv-_LIBFLAGS;:
+</para>
-<example>
+<example_commands>
env = Environment(LINKCOM="my_linker $_LIBDIRFLAGS $_LIBFLAGS -o $TARGET $SOURCE")
-</example>
+</example_commands>
+<para>
If you add a
File
object to the
@@ -454,20 +546,25 @@ and thus the link line, as is, without
or
&cv-LIBLINKSUFFIX;.
For example:
+</para>
-<example>
+<example_commands>
env.Append(LIBS=File('/tmp/mylib.so'))
-</example>
+</example_commands>
+<para>
In all cases, scons will add dependencies from the executable program to
all the libraries in this list.
+</para>
</summary>
</cvar>
<cvar name="RDirs">
<summary>
+<para>
A function that converts a string into a list of Dir instances by
searching the repositories.
+</para>
</summary>
</cvar>
@@ -476,10 +573,14 @@ searching the repositories.
([args])
</arguments>
<summary>
+<para>
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>
</summary>
</scons_function>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Environment.xml b/src/engine/SCons/Environment.xml
index 601cc569..bd3ad139 100644
--- a/src/engine/SCons/Environment.xml
+++ b/src/engine/SCons/Environment.xml
@@ -1,3 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
@@ -5,10 +6,29 @@ This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
+
<!-- Construction variables -->
<cvar name="BUILDERS">
<summary>
+<para>
A dictionary mapping the names of the builders
available through this environment
to underlying Builder objects.
@@ -17,38 +37,46 @@ 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>
+<example_commands>
env = Environment(BUILDERS = {'NewBuilder' : foo})
-</example>
+</example_commands>
+<para>
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>
+<example_commands>
env = Environment()
env.Append(BUILDERS = {'NewBuilder' : foo})
-</example>
+</example_commands>
+<para>
or this:
+</para>
-<example>
+<example_commands>
env = Environment()
env['BUILDERS]['NewBuilder'] = foo
-</example>
+</example_commands>
</summary>
</cvar>
<cvar name="Dir">
<summary>
+<para>
A function that converts a string
into a Dir instance relative to the target being built.
+</para>
</summary>
</cvar>
<cvar name="ENV">
<summary>
+<para>
A dictionary of environment variables
to use when invoking commands. When
&cv-ENV; is used in a command all list
@@ -67,18 +95,22 @@ repeatable regardless of the environment
variables set at the time
&scons;
is invoked.
+</para>
+<para>
If you want to propagate your
environment variables
to the commands executed
to build target files,
you must do so explicitly:
+</para>
-<example>
+<example_commands>
import os
env = Environment(ENV = os.environ)
-</example>
+</example_commands>
+<para>
Note that you can choose only to propagate
certain environment variables.
A common example is
@@ -89,23 +121,27 @@ so that
&scons;
uses the same utilities
as the invoking shell (or other process):
+</para>
-<example>
+<example_commands>
import os
env = Environment(ENV = {'PATH' : os.environ['PATH']})
-</example>
+</example_commands>
</summary>
</cvar>
<cvar name="File">
<summary>
+<para>
A function that converts a string into a File instance relative to the
target being built.
+</para>
</summary>
</cvar>
<cvar name="SCANNERS">
<summary>
+<para>
A list of the available implicit dependency scanners.
New file scanners may be added by
appending to this list,
@@ -115,77 +151,96 @@ with a specific Builder.
See the sections "Builder Objects"
and "Scanner Objects,"
below, for more information.
+</para>
</summary>
</cvar>
<cvar name="CHANGED_SOURCES">
<summary>
+<para>
A reserved variable name
that may not be set or used in a construction environment.
(See "Variable Substitution," below.)
+</para>
</summary>
</cvar>
<cvar name="CHANGED_TARGETS">
<summary>
+<para>
A reserved variable name
that may not be set or used in a construction environment.
(See "Variable Substitution," below.)
+</para>
</summary>
</cvar>
<cvar name="SOURCE">
<summary>
+<para>
A reserved variable name
that may not be set or used in a construction environment.
(See "Variable Substitution," below.)
+</para>
</summary>
</cvar>
<cvar name="SOURCES">
<summary>
+<para>
A reserved variable name
that may not be set or used in a construction environment.
(See "Variable Substitution," below.)
+</para>
</summary>
</cvar>
<cvar name="TARGET">
<summary>
+<para>
A reserved variable name
that may not be set or used in a construction environment.
(See "Variable Substitution," below.)
+</para>
</summary>
</cvar>
<cvar name="TARGETS">
<summary>
+<para>
A reserved variable name
that may not be set or used in a construction environment.
(See "Variable Substitution," below.)
+</para>
</summary>
</cvar>
<cvar name="UNCHANGED_SOURCES">
<summary>
+<para>
A reserved variable name
that may not be set or used in a construction environment.
(See "Variable Substitution," below.)
+</para>
</summary>
</cvar>
<cvar name="UNCHANGED_TARGETS">
<summary>
+<para>
A reserved variable name
that may not be set or used in a construction environment.
(See "Variable Substitution," below.)
+</para>
</summary>
</cvar>
<cvar name="TOOLS">
<summary>
+<para>
A list of the names of the Tool specifications
that are part of this construction environment.
+</para>
</summary>
</cvar>
@@ -196,12 +251,15 @@ that are part of this construction environment.
(action, [cmd/str/fun, [var, ...]] [option=value, ...])
</arguments>
<summary>
+<para>
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>
Note that the
<function>env.Action</function>()
form of the invocation will expand
@@ -218,6 +276,7 @@ The
<function>Action</function>()
form delays all variable expansion
until the Action object is actually used.
+</para>
</summary>
</scons_function>
@@ -229,6 +288,7 @@ until the Action object is actually used.
(function, [name])
</arguments>
<summary>
+<para>
When called with the
<function>AddMethod</function>()
form,
@@ -255,10 +315,13 @@ the name of the
specified
<varname>function</varname>
itself is used for the method name.
+</para>
+<para>
Examples:
+</para>
-<example>
+<example_commands>
# 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
@@ -277,7 +340,7 @@ env.my_method('arg')
env = Environment()
env.AddMethod(my_method, 'other_method_name')
env.other_method_name('another arg')
-</example>
+</example_commands>
</summary>
</scons_function>
@@ -286,6 +349,7 @@ env.other_method_name('another arg')
(target, action)
</arguments>
<summary>
+<para>
Arranges for the specified
<varname>action</varname>
to be performed
@@ -296,11 +360,14 @@ The specified action(s) may be
an Action object, or anything that
can be converted into an Action object
(see below).
+</para>
+<para>
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>
</summary>
</scons_function>
@@ -309,6 +376,7 @@ one or more targets in the list.
(target, action)
</arguments>
<summary>
+<para>
Arranges for the specified
<varname>action</varname>
to be performed
@@ -319,12 +387,16 @@ The specified action(s) may be
an Action object, or anything that
can be converted into an Action object
(see below).
+</para>
+<para>
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>
Note that if any of the targets are built in multiple steps,
the action will be invoked just
before the "final" action that specifically
@@ -333,12 +405,14 @@ For example, when building an executable program
from a specified source
<filename>.c</filename>
file via an intermediate object file:
+</para>
-<example>
+<example_commands>
foo = Program('foo.c')
AddPreAction(foo, 'pre_action')
-</example>
+</example_commands>
+<para>
The specified
<literal>pre_action</literal>
would be executed before
@@ -349,6 +423,7 @@ generates the executable program binary
not before compiling the
<filename>foo.c</filename>
file into an object file.
+</para>
</summary>
</scons_function>
@@ -357,6 +432,7 @@ file into an object file.
(alias, [targets, [action]])
</arguments>
<summary>
+<para>
Creates one or more phony targets that
expand to one or more other targets.
An optional
@@ -374,10 +450,13 @@ including another alias.
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>
Examples:
+</para>
-<example>
+<example_commands>
Alias('install')
Alias('install', '/usr/bin')
Alias(['install', 'install-lib'], '/usr/local/lib')
@@ -386,7 +465,7 @@ env.Alias('install', ['/usr/local/bin', '/usr/local/lib'])
env.Alias('install', ['/usr/local/man'])
env.Alias('update', ['file1', 'file2'], "update_database $SOURCES")
-</example>
+</example_commands>
</summary>
</scons_function>
@@ -395,6 +474,7 @@ env.Alias('update', ['file1', 'file2'], "update_database $SOURCES")
(target, ...)
</arguments>
<summary>
+<para>
Marks each given
<varname>target</varname>
so that it is always assumed to be out of date,
@@ -410,6 +490,7 @@ they will
be built if so specified.
Multiple targets can be passed in to a single call to
&f-AlwaysBuild;.
+</para>
</summary>
</scons_function>
@@ -418,6 +499,7 @@ Multiple targets can be passed in to a single call to
(key=val, [...])
</arguments>
<summary>
+<para>
Appends the specified keyword arguments
to the end of construction variables in the environment.
If the Environment does not have
@@ -431,12 +513,15 @@ 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>
Example:
+</para>
-<example>
+<example_commands>
env.Append(CCFLAGS = ' -g', FOO = ['foo.yyy'])
-</example>
+</example_commands>
</summary>
</scons_function>
@@ -445,6 +530,7 @@ env.Append(CCFLAGS = ' -g', FOO = ['foo.yyy'])
(name, newpath, [envname, sep, delete_existing])
</arguments>
<summary>
+<para>
This appends new path elements to the given path in the
specified external environment
(<literal>ENV</literal>
@@ -460,15 +546,20 @@ and
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>
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>
Example:
+</para>
-<example>
+<example_commands>
print 'before:',env['ENV']['INCLUDE']
include_path = '/foo/bar:/foo'
env.AppendENVPath('INCLUDE', include_path)
@@ -477,7 +568,7 @@ print 'after:',env['ENV']['INCLUDE']
yields:
before: /foo:/biz
after: /biz:/foo/bar:/foo
-</example>
+</example_commands>
</summary>
</scons_function>
@@ -486,6 +577,7 @@ after: /biz:/foo/bar:/foo
(key=val, [...], delete_existing=0)
</arguments>
<summary>
+<para>
Appends the specified keyword arguments
to the end of construction variables in the environment.
If the Environment does not have
@@ -499,12 +591,15 @@ 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>
Example:
+</para>
-<example>
+<example_commands>
env.AppendUnique(CCFLAGS = '-g', FOO = ['foo.yyy'])
-</example>
+</example_commands>
</summary>
</scons_function>
@@ -513,6 +608,7 @@ env.AppendUnique(CCFLAGS = '-g', FOO = ['foo.yyy'])
(build_dir, src_dir, [duplicate])
</arguments>
<summary>
+<para>
Deprecated synonyms for
&f-VariantDir;
and
@@ -525,6 +621,7 @@ argument of
&f-VariantDir;
or
<function>env.VariantDir</function>().
+</para>
</summary>
</scons_function>
@@ -533,12 +630,15 @@ or
(action, [arguments])
</arguments>
<summary>
+<para>
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>
Note that the
<function>env.Builder</function>()
form of the invocation will expand
@@ -556,6 +656,7 @@ The
&f-Builder;
form delays all variable expansion
until after the Builder object is actually called.
+</para>
</summary>
</scons_function>
@@ -564,6 +665,7 @@ until after the Builder object is actually called.
(cache_dir)
</arguments>
<summary>
+<para>
Specifies that
&scons;
will maintain a cache of derived files in
@@ -577,7 +679,9 @@ Specifying a
of
<literal>None</literal>
disables derived file caching.
+</para>
+<para>
Calling
<function>env.CacheDir</function>()
will only affect targets built
@@ -592,7 +696,9 @@ that do
have an
<function>env.CacheDir</function>()
specified.
+</para>
+<para>
When a
<function>CacheDir</function>()
is being used and
@@ -613,14 +719,18 @@ then place a copy of the built file in the cache
so that it may be retrieved by other
builds that need to build the same derived file
from identical inputs.
+</para>
+<para>
Use of a specified
&f-CacheDir;
may be disabled for any invocation
by using the
<option>--cache-disable</option>
option.
+</para>
+<para>
If the
<option>--cache-force</option>
option is used,
@@ -637,7 +747,9 @@ is added to a build,
or after using the
<option>--cache-disable</option>
option.
+</para>
+<para>
When using
&f-CacheDir;,
&scons;
@@ -659,12 +771,15 @@ 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>
The
&f-link-NoCache;
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>
</summary>
</scons_function>
@@ -673,6 +788,7 @@ predict or prohibitively large.
(targets, files_or_dirs)
</arguments>
<summary>
+<para>
This specifies a list of files or directories which should be removed
whenever the targets are specified with the
<option>-c</option>
@@ -684,7 +800,9 @@ Multiple calls to
are legal,
and create new targets or add files and directories to the
clean list for the specified targets.
+</para>
+<para>
Multiple files or directories should be specified
either as separate arguments to the
&f-Clean;
@@ -693,7 +811,9 @@ method, or as a list.
will also accept the return value of any of the construction environment
Builder methods.
Examples:
+</para>
+<para>
The related
&f-link-NoClean;
function overrides calling
@@ -704,22 +824,27 @@ and any targets passed to both functions will
be removed by the
<option>-c</option>
option.
+</para>
+<para>
Examples:
+</para>
-<example>
+<example_commands>
Clean('foo', ['bar', 'baz'])
Clean('dist', env.Program('hello', 'hello.c'))
Clean(['foo', 'bar'], 'something_else_to_clean')
-</example>
+</example_commands>
+<para>
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.
-<example>
+</para>
+<example_commands>
Clean(docdir, os.path.join(docdir, projectname))
-</example>
+</example_commands>
</summary>
</scons_function>
@@ -728,46 +853,56 @@ Clean(docdir, os.path.join(docdir, projectname))
([key=val, ...])
</arguments>
<summary>
+<para>
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>
Example:
+</para>
-<example>
+<example_commands>
env2 = env.Clone()
env3 = env.Clone(CCFLAGS = '-g')
-</example>
+</example_commands>
+<para>
Additionally, a list of tools and a toolpath may be specified, as in
the Environment constructor:
+</para>
-<example>
+<example_commands>
def MyTool(env): env['FOO'] = 'bar'
env4 = env.Clone(tools = ['msvc', MyTool])
-</example>
+</example_commands>
+<para>
The
<varname>parse_flags</varname>
keyword argument is also recognized:
+</para>
-<example>
+<example_commands>
# create an environment for compiling programs that use wxWidgets
wx_env = env.Clone(parse_flags = '!wx-config --cflags --cxxflags')
-</example>
+</example_commands>
</summary>
</scons_function>
<builder name="Command">
<summary>
+<para>
The &b-Command; "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 &f-link-Command; function description
for the calling syntax and details.
+</para>
</summary>
</builder>
@@ -776,13 +911,16 @@ for the calling syntax and details.
(target, source, action, [key=val, ...])
</arguments>
<summary>
+<para>
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>
As a special case, the
<varname>source_scanner</varname>
keyword argument can
@@ -796,10 +934,14 @@ 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>
Any other keyword arguments specified override any
same-named existing construction variables.
+</para>
+<para>
An action can be an external command,
specified as a string,
or a callable Python object;
@@ -814,10 +956,13 @@ or by a
<literal>-</literal>
(hyphen)
to ignore the exit status of the external command.
+</para>
+<para>
Examples:
+</para>
-<example>
+<example_commands>
env.Command('foo.out', 'foo.in',
"$FOO_BUILD &lt; $SOURCES &gt; $TARGET")
@@ -833,8 +978,9 @@ def rename(env, target, source):
env.Command('baz.out', 'baz.in',
["$BAZ_BUILD &lt; $SOURCES &gt; .tmp",
rename ])
-</example>
+</example_commands>
+<para>
Note that the
&f-Command;
function will usually assume, by default,
@@ -849,19 +995,24 @@ by using the
or
<function>env.Dir</function>()
functions.
+</para>
+<para>
Examples:
+</para>
-<example>
+<example_commands>
env.Command('ddd.list', Dir('ddd'), 'ls -l $SOURCE > $TARGET')
env['DISTDIR'] = 'destination/directory'
env.Command(env.Dir('$DISTDIR')), None, make_distdir)
-</example>
+</example_commands>
+<para>
(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>
</summary>
</scons_function>
@@ -873,10 +1024,12 @@ so you normally don't need to create directories by hand.)
([custom_tests, conf_dir, log_file, config_h])
</arguments>
<summary>
+<para>
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>
</summary>
</scons_function>
@@ -885,8 +1038,10 @@ below, for a complete explanation of the arguments and behavior.
([key=val, ...])
</arguments>
<summary>
+<para>
A now-deprecated synonym for
<function>env.Clone</function>().
+</para>
</summary>
</scons_function>
@@ -895,6 +1050,7 @@ A now-deprecated synonym for
(function)
</arguments>
<summary>
+<para>
Specifies that all up-to-date decisions for
targets built through this construction environment
will be handled by the specified
@@ -904,7 +1060,9 @@ The
can be one of the following strings
that specify the type of decision function
to be performed:
+</para>
+<para>
<variablelist>
<varlistentry>
<term><literal>timestamp-newer</literal></term>
@@ -985,24 +1143,30 @@ all within a single second.
</listitem>
</varlistentry>
</variablelist>
+</para>
+<para>
Examples:
+</para>
-<example>
+<example_commands>
# 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>
+</example_commands>
+<para>
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>
<variablelist>
<varlistentry>
<term><parameter>dependency</parameter></term>
@@ -1048,7 +1212,9 @@ size, or content signature.
</listitem>
</varlistentry>
</variablelist>
+</para>
+<para>
The
<varname>function</varname>
should return a
@@ -1074,15 +1240,18 @@ 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>
Example:
+</para>
-<example>
+<example_commands>
def my_decider(dependency, target, prev_ni):
return not os.path.exists(str(target))
env.Decider(my_decider)
-</example>
+</example_commands>
</summary>
</scons_function>
@@ -1091,6 +1260,7 @@ env.Decider(my_decider)
(target, dependency)
</arguments>
<summary>
+<para>
Specifies an explicit dependency;
the
<varname>target</varname>
@@ -1111,10 +1281,13 @@ This should only be necessary
for cases where the dependency
is not caught by a Scanner
for the file.
+</para>
+<para>
Example:
+</para>
-<example>
+<example_commands>
env.Depends('foo', 'other-input-file-for-foo')
mylib = env.Library('mylib.c')
@@ -1128,7 +1301,7 @@ bar = env.Program('bar.c')
# and $LIBPATH variables, not using an env.Depends() call.)
env.Depends(bar, installed_lib)
-</example>
+</example_commands>
</summary>
</scons_function>
@@ -1137,19 +1310,23 @@ env.Depends(bar, installed_lib)
([vars])
</arguments>
<summary>
+<para>
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>
Example:
+</para>
-<example>
+<example_commands>
dict = env.Dictionary()
cc_dict = env.Dictionary('CC', 'CCFLAGS', 'CCCOM')
-</example>
+</example_commands>
</summary>
</scons_function>
@@ -1158,6 +1335,7 @@ cc_dict = env.Dictionary('CC', 'CCFLAGS', 'CCCOM')
(name, [directory])
</arguments>
<summary>
+<para>
This returns a Directory Node,
an object that represents the specified directory
<varname>name</varname>.
@@ -1168,19 +1346,24 @@ 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>
If
<varname>name</varname>
is a list, SCons returns a list of Dir nodes.
Construction variables are expanded in
<varname>name</varname>.
+</para>
+<para>
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>
</summary>
</scons_function>
@@ -1189,34 +1372,44 @@ see "File and Directory Nodes," below.
([key])
</arguments>
<summary>
+<para>
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>
This SConstruct:
+</para>
-<example>
+<example_commands>
env=Environment()
print env.Dump('CCCOM')
-</example>
+</example_commands>
+<para>
will print:
+</para>
-<example>
+<example_commands>
'$CC -c -o $TARGET $CCFLAGS $CPPFLAGS $_CPPDEFFLAGS $_CPPINCFLAGS $SOURCES'
-</example>
+</example_commands>
+<para>
While this SConstruct:
+</para>
-<example>
+<example_commands>
env=Environment()
print env.Dump()
-</example>
+</example_commands>
+<para>
will print:
-<example>
+</para>
+<example_commands>
{ 'AR': 'ar',
'ARCOM': '$AR $ARFLAGS $TARGET $SOURCES\n$RANLIB $RANLIBFLAGS $TARGET',
'ARFLAGS': ['r'],
@@ -1224,7 +1417,7 @@ will print:
'ASCOM': '$AS $ASFLAGS -o $TARGET $SOURCES',
'ASFLAGS': [],
...
-</example>
+</example_commands>
</summary>
</scons_function>
@@ -1233,10 +1426,12 @@ will print:
([key=value, ...])
</arguments>
<summary>
+<para>
Return a new construction environment
initialized with the specified
<varname>key</varname><literal>=</literal><varname>value</varname>
pairs.
+</para>
</summary>
</scons_function>
@@ -1245,6 +1440,7 @@ pairs.
(action, [strfunction, varlist])
</arguments>
<summary>
+<para>
Executes an Action object.
The specified
<varname>action</varname>
@@ -1260,7 +1456,9 @@ and then executed.
The exit value of the command
or return value of the Python function
will be returned.
+</para>
+<para>
Note that
&scons;
will print an error message if the executed
@@ -1279,14 +1477,15 @@ If you want the build to stop in response to a failed
&f-Execute;
call,
you must explicitly check for a non-zero return value:
+</para>
-<example>
+<example_commands>
Execute(Copy('file.out', 'file.in'))
if Execute("mkdir sub/dir/ectory"):
# The mkdir failed, don't try to build.
Exit(1)
-</example>
+</example_commands>
</summary>
</scons_function>
@@ -1295,6 +1494,7 @@ if Execute("mkdir sub/dir/ectory"):
(name, [directory])
</arguments>
<summary>
+<para>
This returns a
File Node,
an object that represents the specified file
@@ -1303,19 +1503,24 @@ an object that represents the specified file
can be a relative or absolute path.
<varname>directory</varname>
is an optional directory that will be used as the parent directory.
+</para>
+<para>
If
<varname>name</varname>
is a list, SCons returns a list of File nodes.
Construction variables are expanded in
<varname>name</varname>.
+</para>
+<para>
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>
</summary>
</scons_function>
@@ -1324,6 +1529,7 @@ see "File and Directory Nodes," below.
(file, dirs)
</arguments>
<summary>
+<para>
Search for
<varname>file</varname>
in the path specified by
@@ -1333,12 +1539,15 @@ 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>
Example:
+</para>
-<example>
+<example_commands>
foo = env.FindFile('foo', ['dir1', 'dir2'])
-</example>
+</example_commands>
</summary>
</scons_function>
@@ -1347,18 +1556,24 @@ foo = env.FindFile('foo', ['dir1', 'dir2'])
()
</arguments>
<summary>
+<para>
Returns the list of targets set up by the
&b-link-Install;
or
&b-link-InstallAs;
builders.
+</para>
+<para>
This function serves as a convenient method to select the contents of
a binary package.
+</para>
+<para>
Example:
+</para>
-<example>
+<example_commands>
Install( '/bin', [ 'executable_a', 'executable_b' ] )
# will return the file node list
@@ -1370,7 +1585,7 @@ Install( '/lib', [ 'some_library' ] )
# will return the file node list
# [ '/bin/executable_a', '/bin/executable_b', '/lib/some_library' ]
FindInstalledFiles()
-</example>
+</example_commands>
</summary>
</scons_function>
@@ -1379,6 +1594,7 @@ FindInstalledFiles()
(node='"."')
</arguments>
<summary>
+<para>
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
@@ -1386,13 +1602,18 @@ argument
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>
This function is a convenient method to select the contents of a Source
Package.
+</para>
+<para>
Example:
+</para>
-<example>
+<example_commands>
Program( 'src/main_a.c' )
Program( 'src/main_b.c' )
Program( 'main_c.c' )
@@ -1402,10 +1623,12 @@ FindSourceFiles()
# returns ['src/main_b.c', 'src/main_a.c' ]
FindSourceFiles( 'src' )
-</example>
+</example_commands>
+<para>
As you can see build support files (SConstruct in the above example)
will also be returned by this function.
+</para>
</summary>
</scons_function>
@@ -1414,6 +1637,7 @@ will also be returned by this function.
(sequence)
</arguments>
<summary>
+<para>
Takes a sequence (that is, a Python list or tuple)
that may contain nested sequences
and returns a flattened list containing
@@ -1424,10 +1648,13 @@ other Builders will automatically
flatten lists specified as input,
but direct Python manipulation of
these lists does not.
+</para>
+<para>
Examples:
+</para>
-<example>
+<example_commands>
foo = Object('foo.c')
bar = Object('bar.c')
@@ -1443,7 +1670,7 @@ Program(source = objects)
# call Flatten() yourself, or otherwise handle nested lists:
for object in Flatten(objects):
print str(object)
-</example>
+</example_commands>
</summary>
</scons_function>
@@ -1452,6 +1679,7 @@ for object in Flatten(objects):
(file, [...])
</arguments>
<summary>
+<para>
Returns the
&scons;
path name (or names) for the specified
@@ -1463,6 +1691,7 @@ or files
may be
&scons;
Nodes or strings representing path names.
+</para>
</summary>
</scons_function>
@@ -1471,6 +1700,7 @@ Nodes or strings representing path names.
(pattern, [ondisk, source, strings])
</arguments>
<summary>
+<para>
Returns Nodes (or strings) that match the specified
<varname>pattern</varname>,
relative to the directory of the current
@@ -1482,24 +1712,30 @@ form performs string substition on
<varname>pattern</varname>
and returns whatever matches
the resulting expanded pattern.
+</para>
+<para>
The specified
<varname>pattern</varname>
uses Unix shell style metacharacters for matching:
+</para>
-<example>
+<example_commands>
* matches everything
? matches any single character
[seq] matches any character in seq
[!seq] matches any char not in seq
-</example>
+</example_commands>
+<para>
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>
The
&f-Glob;
knows about
@@ -1517,7 +1753,9 @@ in the local (SConscript) directory
if matching Node is found
anywhere in a corresponding
repository or source directory.
+</para>
+<para>
The
<varname>ondisk</varname>
argument may be set to
@@ -1529,7 +1767,9 @@ already-configured File or Dir Nodes.
The default behavior is to
return corresponding Nodes
for any on-disk matches found.
+</para>
+<para>
The
<varname>source</varname>
argument may be set to
@@ -1541,7 +1781,9 @@ when the local directory is a
the returned Nodes should be from the
corresponding source directory,
not the local directory.
+</para>
+<para>
The
<varname>strings</varname>
argument may be set to
@@ -1566,13 +1808,16 @@ directory,
not the original
&SConscript;
directory.)
+</para>
+<para>
Examples:
+</para>
-<example>
+<example_commands>
Program('foo', Glob('*.c'))
Zip('/tmp/everything', Glob('.??*') + Glob('*'))
-</example>
+</example_commands>
</summary>
</scons_function>
@@ -1582,6 +1827,7 @@ Zip('/tmp/everything', Glob('.??*') + Glob('*'))
(flag)
</arguments>
<summary>
+<para>
When
<varname>flag</varname>
is non-zero,
@@ -1597,6 +1843,7 @@ the names of the default builders are removed
from the global name space
so that an explicit construction environment is required
to call all builders.
+</para>
</summary>
</scons_function>
-->
@@ -1606,30 +1853,38 @@ to call all builders.
(target, dependency)
</arguments>
<summary>
+<para>
The specified dependency file(s)
will be ignored when deciding if
the target file(s) need to be rebuilt.
+</para>
+<para>
You can also use
&f-Ignore;
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>
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>
Examples:
+</para>
-<example>
+<example_commands>
env.Ignore('foo', 'foo.c')
env.Ignore('bar', ['bar1.h', 'bar2.h'])
env.Ignore('.','foobar.obj')
env.Ignore('bar','bar/foobar.obj')
-</example>
+</example_commands>
</summary>
</scons_function>
@@ -1638,10 +1893,12 @@ env.Ignore('bar','bar/foobar.obj')
(string)
</arguments>
<summary>
+<para>
The specified
<varname>string</varname>
will be preserved as-is
and not have construction variables expanded.
+</para>
</summary>
</scons_function>
@@ -1650,12 +1907,14 @@ and not have construction variables expanded.
(targets)
</arguments>
<summary>
+<para>
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>
</summary>
</scons_function>
@@ -1665,6 +1924,7 @@ Returns a list of the target Node or Nodes.
( arg ", [" prepend ])
</arguments>
<summary>
+<para>
Merges the elements of the specified
<varname>arg</varname>,
which must be a dictionary, to the construction
@@ -1679,7 +1939,9 @@ so multiple strings must
be passed in as a list,
not as separate arguments to
&f-MergeShellPaths;.
+</para>
+<para>
New values are prepended to the environment variable by default,
unless prepend=0 is specified.
Duplicate values are always eliminated,
@@ -1690,15 +1952,18 @@ or
depending on the
<varname>prepend</varname>
argument. See those functions for more details.
+</para>
+<para>
Examples:
+</para>
-<example>
+<example_commands>
# Prepend a path to the shell PATH.
env.MergeShellPaths({'PATH':'/usr/local/bin'} )
# Append two dirs to the shell INCLUDE.
env.MergeShellPaths({'INCLUDE':['c:/inc1', 'c:/inc2']}, prepend=0 )
-</example>
+</example_commands>
</summary>
</scons_function>
-->
@@ -1708,6 +1973,7 @@ env.MergeShellPaths({'INCLUDE':['c:/inc1', 'c:/inc2']}, prepend=0 )
(arg, [unique])
</arguments>
<summary>
+<para>
Merges the specified
<varname>arg</varname>
values to the construction environment's construction variables.
@@ -1725,7 +1991,9 @@ so multiple strings must
be passed in as a list,
not as separate arguments to
&f-env-MergeFlags;.
+</para>
+<para>
By default,
duplicate values are eliminated;
you can, however, specify
@@ -1739,10 +2007,13 @@ the string
keep the left-most unique value.
All other construction variables keep
the right-most unique value.
+</para>
+<para>
Examples:
+</para>
-<example>
+<example_commands>
# Add an optimization flag to $CCFLAGS.
env.MergeFlags('-O3')
@@ -1755,7 +2026,7 @@ env.MergeFlags(['!pkg-config gtk+-2.0 --cflags', '-O3'])
env.MergeFlags(['-O3',
'!pkg-config gtk+-2.0 --cflags --libs',
'!pkg-config libpng12 --cflags --libs'])
-</example>
+</example_commands>
</summary>
</scons_function>
@@ -1764,6 +2035,7 @@ env.MergeFlags(['-O3',
(target, ...)
</arguments>
<summary>
+<para>
Specifies a list of files which should
<emphasis>not</emphasis>
be cached whenever the
@@ -1771,7 +2043,9 @@ be cached whenever the
method has been activated.
The specified targets may be a list
or an individual target.
+</para>
+<para>
Multiple files should be specified
either as separate arguments to the
&f-NoCache;
@@ -1779,18 +2053,23 @@ method, or as a list.
&f-NoCache;
will also accept the return value of any of the construction environment
Builder methods.
+</para>
+<para>
Calling
&f-NoCache;
on directories and other non-File Node types has no effect because
only File Nodes are cached.
+</para>
+<para>
Examples:
+</para>
-<example>
+<example_commands>
NoCache('foo.elf')
NoCache(env.Program('hello', 'hello.c'))
-</example>
+</example_commands>
</summary>
</scons_function>
@@ -1799,6 +2078,7 @@ NoCache(env.Program('hello', 'hello.c'))
(target, ...)
</arguments>
<summary>
+<para>
Specifies a list of files or directories which should
<emphasis>not</emphasis>
be removed whenever the targets (or their dependencies)
@@ -1814,7 +2094,9 @@ and prevent each specified target
from being removed by calls to the
<option>-c</option>
option.
+</para>
+<para>
Multiple files or directories should be specified
either as separate arguments to the
&f-NoClean;
@@ -1822,7 +2104,9 @@ method, or as a list.
&f-NoClean;
will also accept the return value of any of the construction environment
Builder methods.
+</para>
+<para>
Calling
&f-NoClean;
for a target overrides calling
@@ -1833,13 +2117,16 @@ and any targets passed to both functions will
be removed by the
<option>-c</option>
option.
+</para>
+<para>
Examples:
+</para>
-<example>
+<example_commands>
NoClean('foo.elf')
NoClean(env.Program('hello', 'hello.c'))
-</example>
+</example_commands>
</summary>
</scons_function>
@@ -1848,6 +2135,7 @@ NoClean(env.Program('hello', 'hello.c'))
(command, [function, unique])
</arguments>
<summary>
+<para>
Calls the specified
<varname>function</varname>
to modify the environment as specified by the output of
@@ -1870,7 +2158,9 @@ you can specify
<literal>unique=0</literal>
to allow duplicate
values to be added.
+</para>
+<para>
Interpreted options
and the construction variables they affect
are as specified for the
@@ -1878,6 +2168,7 @@ are as specified for the
method (which this method calls).
See that method's description, below,
for a table of options and construction variables.
+</para>
</summary>
</scons_function>
@@ -1886,6 +2177,7 @@ for a table of options and construction variables.
(filename, [must_exist, only_one])
</arguments>
<summary>
+<para>
Parses the contents of the specified
<varname>filename</varname>
as a list of dependencies in the style of
@@ -1893,7 +2185,9 @@ as a list of dependencies in the style of
or
<application>mkdep</application>,
and explicitly establishes all of the listed dependencies.
+</para>
+<para>
By default,
it is not an error
if the specified
@@ -1907,7 +2201,9 @@ scons
throw an exception and
generate an error if the file does not exist,
or is otherwise inaccessible.
+</para>
+<para>
The optional
<varname>only_one</varname>
argument may be set to a non-zero
@@ -1927,7 +2223,9 @@ write dependency information for
one output file into a corresponding
<filename>.d</filename>
file.
+</para>
+<para>
The
<varname>filename</varname>
and all of the files listed therein
@@ -1937,6 +2235,7 @@ the directory of the
file which calls the
&f-ParseDepends;
function.
+</para>
</summary>
</scons_function>
@@ -1945,6 +2244,7 @@ function.
(flags, ...)
</arguments>
<summary>
+<para>
Parses one or more strings containing
typical command-line flags for GCC tool chains
and returns a dictionary with the flag values
@@ -1960,18 +2260,23 @@ will call this method if its argument is not a dictionary,
so it is usually not necessary to call
&f-link-env-ParseFlags;
directly unless you want to manipulate the values.)
+</para>
+<para>
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>
Flag values are translated accordig to the prefix found,
and added to the following construction variables:
+</para>
-<example>
+<example_commands>
-arch CCFLAGS, LINKFLAGS
-D CPPDEFINES
-framework FRAMEWORKS
@@ -1993,22 +2298,26 @@ and added to the following construction variables:
-Wp, CPPFLAGS
- CCFLAGS
+ CCFLAGS, LINKFLAGS
-</example>
+</example_commands>
+<para>
Any other strings not associated with options
are assumed to be the names of libraries
and added to the
&cv-LIBS;
construction variable.
+</para>
+<para>
Examples (all of which produce the same result):
+</para>
-<example>
+<example_commands>
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>
+</example_commands>
</summary>
</scons_function>
@@ -2017,6 +2326,7 @@ dict = env.ParseFlags('-O2', '!echo -Dfoo -Dbar=1')
(string)
</arguments>
<summary>
+<para>
The
&f-Platform;
form returns a callable object
@@ -2025,23 +2335,29 @@ a construction environment using the
platform keyword of the
&f-Environment;
function.
+</para>
+<para>
Example:
+</para>
-<example>
+<example_commands>
env = Environment(platform = Platform('win32'))
-</example>
+</example_commands>
+<para>
The
&f-env-Platform;
form applies the callable object for the specified platform
<varname>string</varname>
to the environment through which the method was called.
+</para>
-<example>
+<example_commands>
env.Platform('posix')
-</example>
+</example_commands>
+<para>
Note that the
<literal>win32</literal>
platform adds the
@@ -2058,6 +2374,7 @@ that use sockets to connect with other systems
external CVS repository specifications like
<literal>:pserver:anonymous@cvs.sourceforge.net:/cvsroot/scons</literal>)
will work on Windows systems.
+</para>
</summary>
</scons_function>
@@ -2066,6 +2383,7 @@ will work on Windows systems.
(key=val, [...])
</arguments>
<summary>
+<para>
Appends the specified keyword arguments
to the beginning of construction variables in the environment.
If the Environment does not have
@@ -2079,12 +2397,15 @@ 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>
Example:
+</para>
-<example>
+<example_commands>
env.Prepend(CCFLAGS = '-g ', FOO = ['foo.yyy'])
-</example>
+</example_commands>
</summary>
</scons_function>
@@ -2093,6 +2414,7 @@ env.Prepend(CCFLAGS = '-g ', FOO = ['foo.yyy'])
(name, newpath, [envname, sep, delete_existing])
</arguments>
<summary>
+<para>
This appends new path elements to the given path in the
specified external environment
(&cv-ENV;
@@ -2108,28 +2430,35 @@ and
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>
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>
Example:
+</para>
-<example>
+<example_commands>
print 'before:',env['ENV']['INCLUDE']
include_path = '/foo/bar:/foo'
env.PrependENVPath('INCLUDE', include_path)
print 'after:',env['ENV']['INCLUDE']
-</example>
+</example_commands>
+<para>
The above example will print:
+</para>
-<example>
+<example_commands>
before: /biz:/foo
after: /foo/bar:/foo:/biz
-</example>
+</example_commands>
</summary>
</scons_function>
@@ -2138,6 +2467,7 @@ after: /foo/bar:/foo:/biz
(key=val, delete_existing=0, [...])
</arguments>
<summary>
+<para>
Appends the specified keyword arguments
to the beginning of construction variables in the environment.
If the Environment does not have
@@ -2151,12 +2481,15 @@ 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>
Example:
+</para>
-<example>
+<example_commands>
env.PrependUnique(CCFLAGS = '-g', FOO = ['foo.yyy'])
-</example>
+</example_commands>
</summary>
</scons_function>
@@ -2165,14 +2498,18 @@ env.PrependUnique(CCFLAGS = '-g', FOO = ['foo.yyy'])
(key=val, [...])
</arguments>
<summary>
+<para>
Replaces construction variables in the Environment
with the specified keyword arguments.
+</para>
+<para>
Example:
+</para>
-<example>
+<example_commands>
env.Replace(CCFLAGS = '-g', FOO = 'foo.xxx')
-</example>
+</example_commands>
</summary>
</scons_function>
@@ -2181,6 +2518,7 @@ env.Replace(CCFLAGS = '-g', FOO = 'foo.xxx')
(directory)
</arguments>
<summary>
+<para>
Specifies that
<varname>directory</varname>
is a repository to be searched for files.
@@ -2189,7 +2527,9 @@ Multiple calls to
are legal,
and each one adds to the list of
repositories that will be searched.
+</para>
+<para>
To
&scons;,
a repository is a copy of the source tree,
@@ -2209,7 +2549,9 @@ signature information to allow
to figure out when it is appropriate to
use the repository copy of a derived file,
instead of building one locally.
+</para>
+<para>
Note that if an up-to-date derived file
already exists in a repository,
&scons;
@@ -2221,6 +2563,7 @@ will be made,
use the
&f-link-Local;
method.
+</para>
</summary>
</scons_function>
@@ -2229,6 +2572,7 @@ method.
(target, prerequisite)
</arguments>
<summary>
+<para>
Specifies an order-only relationship
between the specified target file(s)
and the specified prerequisite file(s).
@@ -2240,12 +2584,15 @@ 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>
Example:
+</para>
-<example>
+<example_commands>
env.Requires('foo', 'file-that-must-be-built-before-foo')
-</example>
+</example_commands>
</summary>
</scons_function>
@@ -2254,11 +2601,13 @@ env.Requires('foo', 'file-that-must-be-built-before-foo')
(function, [argument, keys, path_function, node_class, node_factory, scan_check, recursive])
</arguments>
<summary>
+<para>
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>
</summary>
</scons_function>
@@ -2267,6 +2616,7 @@ below, for a complete explanation of the arguments and behavior.
(value)
</arguments>
<summary>
+<para>
By default,
&scons;
changes its working directory
@@ -2274,12 +2624,14 @@ to the directory in which each
subsidiary SConscript file lives.
This behavior may be disabled
by specifying either:
+</para>
-<example>
+<example_commands>
SConscriptChdir(0)
env.SConscriptChdir(0)
-</example>
+</example_commands>
+<para>
in which case
&scons;
will stay in the top-level directory
@@ -2291,16 +2643,19 @@ You may enable and disable
this ability by calling
SConscriptChdir()
multiple times.
+</para>
+<para>
Example:
+</para>
-<example>
+<example_commands>
env = Environment()
SConscriptChdir(0)
SConscript('foo/SConscript') # will not chdir to foo
env.SConscriptChdir(1)
SConscript('bar/SConscript') # will chdir to bar
-</example>
+</example_commands>
</summary>
</scons_function>
@@ -2309,6 +2664,7 @@ SConscript('bar/SConscript') # will chdir to bar
([file, dbm_module])
</arguments>
<summary>
+<para>
This tells
&scons;
to store all file signatures
@@ -2329,7 +2685,9 @@ is not an absolute path name,
the file is placed in the same directory as the top-level
&SConstruct;
file.
+</para>
+<para>
If
<varname>file</varname>
is
@@ -2343,7 +2701,9 @@ 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>
The optional
<varname>dbm_module</varname>
argument can be used to specify
@@ -2353,10 +2713,13 @@ The default is to use a custom
module that uses pickled
Python data structures,
and which works on all Python versions.
+</para>
+<para>
Examples:
+</para>
-<example>
+<example_commands>
# Explicitly stores signatures in ".sconsign.dblite"
# in the top-level SConstruct directory (the
# default behavior).
@@ -2372,7 +2735,7 @@ SConsignFile("/home/me/SCons/signatures")
# Stores signatures in a separate .sconsign file
# in each directory.
SConsignFile(None)
-</example>
+</example_commands>
</summary>
</scons_function>
@@ -2381,15 +2744,17 @@ SConsignFile(None)
(key=val, [...])
</arguments>
<summary>
+<para>
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>
+<example_commands>
env.SetDefault(FOO = 'foo')
if 'FOO' not in env: env['FOO'] = 'foo'
-</example>
+</example_commands>
</summary>
</scons_function>
@@ -2398,6 +2763,7 @@ if 'FOO' not in env: env['FOO'] = 'foo'
(side_effect, target)
</arguments>
<summary>
+<para>
Declares
<varname>side_effect</varname>
as a side effect of building
@@ -2421,7 +2787,9 @@ 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>
Because multiple build commands may update
the same side effect file,
by default the
@@ -2449,6 +2817,7 @@ with the
or
&f-env-Clean;
function.
+</para>
</summary>
</scons_function>
@@ -2457,13 +2826,16 @@ function.
(entries, builder)
</arguments>
<summary>
+<para>
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 &SCons;.
+</para>
+<para>
Arrange for non-existent source files to
be fetched from a source code management system
using the specified
@@ -2474,7 +2846,9 @@ 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>
For any non-existent source files,
&scons;
will search up the directory tree
@@ -2494,7 +2868,9 @@ even if a
&f-SourceCode;
builder has been specified
for a directory higher up the tree.
+</para>
+<para>
&scons;
will, by default,
fetch files from SCCS or RCS subdirectories
@@ -2505,33 +2881,40 @@ 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>
+<example_commands>
env.SourceCode('.', None)
-</example>
+</example_commands>
+<para>
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>
&scons;
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>
+<example_commands>
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>
+</example_commands>
+<para>
<!-- env.SourceCode('.', env.Subversion('file:///usr/local/Subversion')) -->
+</para>
</summary>
</scons_function>
@@ -2540,13 +2923,16 @@ env.SourceCode('no_source.c', None)
(type)
</arguments>
<summary>
+<para>
Note: Although it is not yet officially deprecated,
use of this function is discouraged.
See the
&f-link-Decider;
function for a more flexible and straightforward way
to configure SCons' decision-making.
+</para>
+<para>
The
&f-SourceSignatures;
function tells
@@ -2559,7 +2945,9 @@ Legal values are
<literal>MD5</literal>
or
<literal>timestamp</literal>.
+</para>
+<para>
If the environment method is used,
the specified type of source signature
is only used when deciding whether targets
@@ -2568,14 +2956,18 @@ 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>
<literal>MD5</literal>
means
&scons;
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>
<literal>timestamp</literal>
means
&scons;
@@ -2586,12 +2978,16 @@ the last time it was used to rebuild a particular target file.
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>
There is no different between the two behaviors
for Python
&f-Value;
node objects.
+</para>
+<para>
<literal>MD5</literal>
signatures take longer to compute,
but are more accurate than
@@ -2599,7 +2995,9 @@ but are more accurate than
signatures.
The default value is
<literal>MD5</literal>.
+</para>
+<para>
Note that the default
&f-link-TargetSignatures;
setting (see below)
@@ -2615,6 +3013,7 @@ affect the up-to-date decision for all files in the build
when
&f-env-SourceSignatures;
is used).
+</para>
</summary>
</scons_function>
@@ -2623,6 +3022,7 @@ is used).
(arg)
</arguments>
<summary>
+<para>
Returns a list of file names or other objects.
If arg is a string,
it will be split on strings of white-space characters
@@ -2633,10 +3033,13 @@ 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>
Example:
+</para>
-<example>
+<example_commands>
files = Split("f1.c f2.c f3.c")
files = env.Split("f4.c f5.c f6.c")
files = Split("""
@@ -2644,7 +3047,7 @@ files = Split("""
f8.c
f9.c
""")
-</example>
+</example_commands>
</summary>
</scons_function>
@@ -2653,10 +3056,13 @@ files = Split("""
(input, [raw, target, source, conv])
</arguments>
<summary>
+<para>
Performs construction variable interpolation
on the specified string or sequence argument
<varname>input</varname>.
+</para>
+<para>
By default,
leading or trailing white space will
be removed from the result.
@@ -2686,13 +3092,17 @@ and
<literal>$)</literal>
pairs
(as is done for signature calculation).
+</para>
+<para>
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>
The optional
<varname>target</varname>
and
@@ -2712,7 +3122,9 @@ calling
&f-env-subst;
from within a Python function used
as an SCons action.
+</para>
+<para>
Returned string values or sequence elements
are converted to their string representation by default.
The optional
@@ -2728,10 +3140,13 @@ you can use the Python
&lambda;
idiom to pass in an unnamed function
that simply returns its unconverted argument.
+</para>
+<para>
Example:
+</para>
-<example>
+<example_commands>
print env.subst("The C compiler is: $CC")
def compile(target, source, env):
@@ -2741,7 +3156,7 @@ def compile(target, source, env):
source_nodes = env.subst('$EXPAND_TO_NODELIST',
conv=lambda x: x)
-</example>
+</example_commands>
</summary>
</scons_function>
@@ -2750,13 +3165,16 @@ source_nodes = env.subst('$EXPAND_TO_NODELIST',
(type)
</arguments>
<summary>
+<para>
Note: Although it is not yet officially deprecated,
use of this function is discouraged.
See the
&f-link-Decider;
function for a more flexible and straightforward way
to configure SCons' decision-making.
+</para>
+<para>
The
&f-TargetSignatures;
function tells
@@ -2775,7 +3193,9 @@ Legal values are
<literal>"timestamp"</literal>;
or
<literal>"source"</literal>.
+</para>
+<para>
If the environment method is used,
the specified type of target signature is only used
for targets built with that environment.
@@ -2784,7 +3204,9 @@ 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>
<literal>"content"</literal>
(or its synonym
<literal>"MD5"</literal>)
@@ -2801,7 +3223,9 @@ 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>
<literal>"timestamp"</literal>
means
&scons;
@@ -2812,7 +3236,9 @@ the last time it was used to rebuild some other target file.
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>
<literal>"source"</literal>
means
&scons;
@@ -2828,7 +3254,9 @@ This means that
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>
<literal>"build"</literal>
means
&scons;
@@ -2843,7 +3271,9 @@ so that other "downstream" target files
will always be rebuilt,
even if the contents or the timestamp
have not changed.
+</para>
+<para>
<literal>"build"</literal>
signatures are fastest because
<literal>"content"</literal>
@@ -2863,7 +3293,9 @@ when other target files may be rebuilt from
both source and target input files.
The default value is
<literal>"source"</literal>.
+</para>
+<para>
Because the default setting is
<literal>"source"</literal>,
using
@@ -2877,6 +3309,7 @@ Use of
&f-TargetSignatures;
provides specific control for how built target files
affect their "downstream" dependencies.
+</para>
</summary>
</scons_function>
@@ -2885,6 +3318,7 @@ affect their "downstream" dependencies.
(string, [toolpath, **kw])
</arguments>
<summary>
+<para>
The
&f-Tool;
form of the function
@@ -2900,14 +3334,19 @@ to the construction environment
and the name of the tool will be added to the
&cv-link-TOOLS;
construction variable.
+</para>
+<para>
Additional keyword arguments are passed to the tool's
<function>generate</function>()
method.
+</para>
+<para>
Examples:
+</para>
-<example>
+<example_commands>
env = Environment(tools = [ Tool('msvc') ])
env = Environment()
@@ -2915,23 +3354,27 @@ 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>
+</example_commands>
+<para>
The
&f-env-Tool;
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>
Additional keyword arguments are passed to the tool's
<function>generate</function>()
method.
+</para>
-<example>
+<example_commands>
env.Tool('gcc')
env.Tool('opengl', toolpath = ['build/tools'])
-</example>
+</example_commands>
</summary>
</scons_function>
@@ -2940,6 +3383,7 @@ env.Tool('opengl', toolpath = ['build/tools'])
(value, [built_value])
</arguments>
<summary>
+<para>
Returns a Node object representing the specified Python value. Value
Nodes can be used as dependencies of targets. If the result of
calling
@@ -2951,7 +3395,9 @@ will be rebuilt.
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>
The returned Value Node object has a
<function>write</function>()
method that can be used to "build" a Value Node
@@ -2965,10 +3411,13 @@ to indicate the Node should already be considered
There is a corresponding
<function>read</function>()
method that will return the built value of the Node.
+</para>
+<para>
Examples:
+</para>
-<example>
+<example_commands>
env = Environment()
def create(target, source, env):
@@ -3000,7 +3449,7 @@ input = env.Value('after')
# action to the construction environment.
env['BUILDERS']['UpdateValue'] = Builder(action = build_value)
env.UpdateValue(target = Value(output), source = Value(input))
-</example>
+</example_commands>
</summary>
</scons_function>
@@ -3009,6 +3458,7 @@ env.UpdateValue(target = Value(output), source = Value(input))
(variant_dir, src_dir, [duplicate])
</arguments>
<summary>
+<para>
Use the
&f-VariantDir;
function to create a copy of your sources in another location:
@@ -3021,7 +3471,9 @@ the file or directory is copied to
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>
&f-VariantDir;
can be called multiple times with the same
<varname>src_dir</varname>
@@ -3038,7 +3490,9 @@ 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>
The default behavior is for
&scons;
to physically duplicate the source files in the variant tree.
@@ -3049,7 +3503,9 @@ 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>
If possible on the platform,
the duplication is performed by linking rather than copying;
see also the
@@ -3058,7 +3514,9 @@ 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>
Duplicating the source tree may be disabled by setting the
<literal>duplicate</literal>
argument to
@@ -3074,7 +3532,9 @@ 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>
Note that
&f-VariantDir;
works most naturally with a subsidiary SConscript file.
@@ -3086,40 +3546,45 @@ regardless of the value of
This is how you tell
&scons;
which variant of a source tree to build:
+</para>
-<example>
+<example_commands>
# run src/SConscript in two variant directories
VariantDir('build/variant1', 'src')
SConscript('build/variant1/SConscript')
VariantDir('build/variant2', 'src')
SConscript('build/variant2/SConscript')
-</example>
+</example_commands>
+<para>
See also the
&f-link-SConscript;
function, described above,
for another way to specify a variant directory
in conjunction with calling a subsidiary SConscript file.
+</para>
+<para>
Examples:
+</para>
-<example>
+<example_commands>
# use names in the build directory, not the source directory
VariantDir('build', 'src', duplicate=0)
Program('build/prog', 'build/source.c')
-</example>
+</example_commands>
-<example>
+<example_commands>
# this builds both the source and docs in a separate subtree
VariantDir('build', '.', duplicate=0)
SConscript(dirs=['build/src','build/doc'])
-</example>
+</example_commands>
-<example>
+<example_commands>
# 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>
+</example_commands>
</summary>
</scons_function>
@@ -3128,6 +3593,7 @@ SConscript(dirs='doc', variant_dir='build/doc', duplicate=0)
(program, [path, pathext, reject])
</arguments>
<summary>
+<para>
Searches for the specified executable
<varname>program</varname>,
returning the full path name to the program
@@ -3154,5 +3620,8 @@ path name or names
in the specified
<varname>reject</varname>
list, if any.
+</para>
</summary>
</scons_function>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Platform/__init__.xml b/src/engine/SCons/Platform/__init__.xml
index 99f33226..88678d12 100644
--- a/src/engine/SCons/Platform/__init__.xml
+++ b/src/engine/SCons/Platform/__init__.xml
@@ -1,183 +1,244 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<cvar name="ESCAPE">
<summary>
+<para>
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>
</summary>
</cvar>
<cvar name="LIBPREFIX">
<summary>
+<para>
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>
</summary>
</cvar>
<cvar name="LIBPREFIXES">
<summary>
+<para>
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 &cv-LIBSUFFIXES; list.
+</para>
</summary>
</cvar>
<cvar name="LIBSUFFIX">
<summary>
+<para>
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>
</summary>
</cvar>
<cvar name="LIBSUFFIXES">
<summary>
+<para>
A list of all legal suffixes for library file names.
When searching for library dependencies,
SCons will look for files with prefixes, in the &cv-LIBPREFIXES; list,
the base library name,
and these suffixes.
+</para>
</summary>
</cvar>
<cvar name="OBJPREFIX">
<summary>
+<para>
The prefix used for (static) object file names.
+</para>
</summary>
</cvar>
<cvar name="OBJSUFFIX">
<summary>
+<para>
The suffix used for (static) object file names.
+</para>
</summary>
</cvar>
<cvar name="PLATFORM">
<summary>
+<para>
The name of the platform used to create the Environment. If no platform is
specified when the Environment is created,
&scons;
autodetects the platform.
+</para>
-<example>
+<example_commands>
env = Environment(tools = [])
if env['PLATFORM'] == 'cygwin':
Tool('mingw')(env)
else:
Tool('msvc')(env)
-</example>
+</example_commands>
</summary>
</cvar>
<cvar name="HOST_OS">
<summary>
+<para>
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>
</summary>
</cvar>
<cvar name="HOST_ARCH">
<summary>
+<para>
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>
</summary>
</cvar>
<cvar name="TARGET_OS">
<summary>
+<para>
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>
</summary>
</cvar>
<cvar name="TARGET_ARCH">
<summary>
+<para>
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>
</summary>
</cvar>
<cvar name="PROGPREFIX">
<summary>
+<para>
The prefix used for executable file names.
+</para>
</summary>
</cvar>
<cvar name="PROGSUFFIX">
<summary>
+<para>
The suffix used for executable file names.
+</para>
</summary>
</cvar>
<cvar name="SHELL">
<summary>
+<para>
A string naming the shell program that will be passed to the
&cv-SPAWN;
function.
See the
&cv-SPAWN;
construction variable for more information.
+</para>
</summary>
</cvar>
<cvar name="SHLIBPREFIX">
<summary>
+<para>
The prefix used for shared library file names.
+</para>
</summary>
</cvar>
<cvar name="SHLIBSUFFIX">
<summary>
+<para>
The suffix used for shared library file names.
+</para>
</summary>
</cvar>
<cvar name="SHOBJPREFIX">
<summary>
+<para>
The prefix used for shared object file names.
+</para>
</summary>
</cvar>
<cvar name="SHOBJSUFFIX">
<summary>
+<para>
The suffix used for shared object file names.
+</para>
</summary>
</cvar>
<cvar name="TEMPFILEPREFIX">
<summary>
+<para>
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>
</summary>
</cvar>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Platform/posix.xml b/src/engine/SCons/Platform/posix.xml
index a1bb7fde..3411ada1 100644
--- a/src/engine/SCons/Platform/posix.xml
+++ b/src/engine/SCons/Platform/posix.xml
@@ -1,11 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<cvar name="RPATH">
<summary>
+<para>
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.
@@ -15,11 +35,13 @@ are not transformed by
&scons;
in any way: if you want an absolute
path, you must make it absolute yourself.
+</para>
</summary>
</cvar>
<cvar name="_RPATH">
<summary>
+<para>
An automatically-generated construction variable
containing the rpath flags to be used when linking
a program with shared libraries.
@@ -27,25 +49,32 @@ The value of &cv-_RPATH; is created
by appending &cv-RPATHPREFIX; and &cv-RPATHSUFFIX;
to the beginning and end
of each directory in &cv-RPATH;.
+</para>
</summary>
</cvar>
<cvar name="RPATHPREFIX">
<summary>
+<para>
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 &cv-RPATH; construction variable
when the &cv-_RPATH; variable is automatically generated.
+</para>
</summary>
</cvar>
<cvar name="RPATHSUFFIX">
<summary>
+<para>
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 &cv-RPATH; construction variable
when the &cv-_RPATH; variable is automatically generated.
+</para>
</summary>
</cvar>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Platform/sunos.xml b/src/engine/SCons/Platform/sunos.xml
index d380d489..7221f58d 100644
--- a/src/engine/SCons/Platform/sunos.xml
+++ b/src/engine/SCons/Platform/sunos.xml
@@ -1,3 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
@@ -5,8 +6,27 @@ This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
+
<cvar name="PKGCHK">
<summary>
+<para>
On Solaris systems,
the package-checking program that will
be used (along with &cv-PKGINFO;)
@@ -14,11 +34,13 @@ to look for installed versions of
the Sun PRO C++ compiler.
The default is
<filename>/usr/sbin/pgkchk</filename>.
+</para>
</summary>
</cvar>
<cvar name="PKGINFO">
<summary>
+<para>
On Solaris systems,
the package information program that will
be used (along with &cv-PKGCHK;)
@@ -26,5 +48,8 @@ to look for installed versions of
the Sun PRO C++ compiler.
The default is
<filename>pkginfo</filename>.
+</para>
</summary>
</cvar>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Platform/win32.xml b/src/engine/SCons/Platform/win32.xml
index f284a408..bab54a6a 100644
--- a/src/engine/SCons/Platform/win32.xml
+++ b/src/engine/SCons/Platform/win32.xml
@@ -1,14 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<cvar name="MAXLINELENGTH">
<summary>
+<para>
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>
</summary>
</cvar>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Scanner/__init__.xml b/src/engine/SCons/Scanner/__init__.xml
index f5f7c7b8..7e444349 100644
--- a/src/engine/SCons/Scanner/__init__.xml
+++ b/src/engine/SCons/Scanner/__init__.xml
@@ -1,3 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
@@ -5,11 +6,30 @@ This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
+
<scons_function name="FindPathDirs">
<arguments signature="global">
(variable)
</arguments>
<summary>
+<para>
Returns a function
(actually a callable Python object)
intended to be used as the
@@ -24,7 +44,9 @@ directory paths that should be searched
&cv-link-CPPPATH;,
&cv-link-LIBPATH;,
etc.).
+</para>
+<para>
Note that use of
&f-FindPathDirs;
is generally preferable to
@@ -48,10 +70,13 @@ 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>
Example:
+</para>
-<example>
+<example_commands>
def my_scan(node, env, path, arg):
# Code to scan file contents goes here...
return include_files
@@ -59,6 +84,8 @@ def my_scan(node, env, path, arg):
scanner = Scanner(name = 'myscanner',
function = my_scan,
path_function = FindPathDirs('MYPATH'))
-</example>
+</example_commands>
</summary>
</scons_function>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Script/Main.xml b/src/engine/SCons/Script/Main.xml
index d4931f1c..b95d4ab2 100644
--- a/src/engine/SCons/Script/Main.xml
+++ b/src/engine/SCons/Script/Main.xml
@@ -1,3 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
@@ -5,11 +6,30 @@ This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
+
<scons_function name="AddOption">
<arguments signature="global">
(arguments)
</arguments>
<summary>
+<para>
This function adds a new command-line option to be recognized.
The specified
<varname>arguments</varname>
@@ -19,7 +39,9 @@ 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>
In addition to the arguments and values supported by the
<function>optparse.add_option</function>()
method,
@@ -44,14 +66,18 @@ 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>
If no
<literal>default=</literal>
keyword argument is supplied when calling
&f-AddOption;,
the option will have a default value of
<literal>None</literal>.
+</para>
+<para>
Once a new command-line option has been added with
&f-AddOption;,
the option value may be accessed using
@@ -69,7 +95,9 @@ Note, however, that a
value specified on the command line will
<emphasis>always</emphasis>
override a value set by any SConscript file.
+</para>
+<para>
Any specified
<literal>help=</literal>
strings for the new option(s)
@@ -90,10 +118,13 @@ The options will appear in the help text
in the order in which the
&f-AddOption;
calls occur.
+</para>
+<para>
Example:
+</para>
-<example>
+<example_commands>
AddOption('--prefix',
dest='prefix',
nargs=1, type='string',
@@ -101,7 +132,7 @@ AddOption('--prefix',
metavar='DIR',
help='installation prefix')
env = Environment(PREFIX = GetOption('prefix'))
-</example>
+</example_commands>
</summary>
</scons_function>
@@ -110,6 +141,7 @@ env = Environment(PREFIX = GetOption('prefix'))
()
</arguments>
<summary>
+<para>
Returns a list of exceptions for the
actions that failed while
attempting to build targets.
@@ -119,17 +151,23 @@ object
with the following attributes
that record various aspects
of the build failure:
+</para>
+<para>
<literal>.node</literal>
The node that was being built
when the build failure occurred.
+</para>
+<para>
<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>
<literal>.errstr</literal>
The SCons error string
describing the build failure.
@@ -137,7 +175,9 @@ describing the build failure.
message like "Error 2"
to indicate that an executed
command exited with a status of 2.)
+</para>
+<para>
<literal>.filename</literal>
The name of the file or
directory that actually caused the failure.
@@ -158,7 +198,9 @@ but the
<literal>.filename</literal>
attribute will be
<filename>sub/dir</filename>.
+</para>
+<para>
<literal>.executor</literal>
The SCons Executor object
for the target Node
@@ -166,21 +208,27 @@ being built.
This can be used to retrieve
the construction environment used
for the failed action.
+</para>
+<para>
<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>
<literal>.command</literal>
The actual expanded command that was executed and failed,
after expansion of
&cv-link-TARGET;,
&cv-link-SOURCE;,
and other construction variables.
+</para>
+<para>
Note that the
&f-GetBuildFailures;
function
@@ -200,8 +248,9 @@ standard Python
<function>atexit.register</function>()
function.
Example:
+</para>
-<example>
+<example_commands>
import atexit
def print_build_failures():
@@ -210,7 +259,7 @@ def print_build_failures():
print "%s failed: %s" % (bf.node, bf.errstr)
atexit.register(print_build_failures)
-</example>
+</example_commands>
</summary>
</scons_function>
@@ -219,13 +268,16 @@ atexit.register(print_build_failures)
(name)
</arguments>
<summary>
+<para>
This function provides a way to query the value of
SCons options set on scons command line
(or set using the
&f-link-SetOption;
function).
The options supported are:
+</para>
+<para>
<variablelist>
<varlistentry>
<term><literal>cache_debug</literal></term>
@@ -468,10 +520,13 @@ which corresponds to --warn and --warning.
</listitem>
</varlistentry>
</variablelist>
+</para>
+<para>
See the documentation for the
corresponding command line object for information about each specific
option.
+</para>
</summary>
</scons_function>
@@ -486,10 +541,13 @@ option.
(list_of_strings, [interval, file, overwrite])
</arguments>
<summary>
+<para>
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>
If the first specified argument is a Python callable
(a function or an object that has a
<function>__call__</function>()
@@ -509,17 +567,21 @@ 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>
An example of a simple custom progress function
that prints a string containing the Node name
every 10 Nodes:
+</para>
-<example>
+<example_commands>
def my_progress_function(node, *args, **kw):
print 'Evaluating node %s!' % node
Progress(my_progress_function, interval=10)
-</example>
+</example_commands>
+<para>
A more complicated example of a custom progress display object
that prints a string containing a count
every 100 evaluated Nodes.
@@ -528,8 +590,9 @@ Note the use of
(a carriage return)
at the end so that the string
will overwrite itself on a display:
+</para>
-<example>
+<example_commands>
import sys
class ProgressCounter(object):
count = 0
@@ -537,8 +600,9 @@ class ProgressCounter(object):
self.count += 100
sys.stderr.write('Evaluated %s nodes\r' % self.count)
Progress(ProgressCounter(), interval=100)
-</example>
+</example_commands>
+<para>
If the first argument
&f-link-Progress;
is a string,
@@ -554,12 +618,14 @@ argument.
The following will print a series of dots
on the error output,
one dot for every 100 evaluated Nodes:
+</para>
-<example>
+<example_commands>
import sys
Progress('.', interval=100, file=sys.stderr)
-</example>
+</example_commands>
+<para>
If the string contains the verbatim substring
&cv-TARGET;,
it will be replaced with the Node.
@@ -577,12 +643,14 @@ and the
<literal>overwrite=</literal>
keyword argument to make sure the previously-printed
file name is overwritten with blank spaces:
+</para>
-<example>
+<example_commands>
import sys
Progress('$TARGET\r', overwrite=True)
-</example>
+</example_commands>
+<para>
If the first argument to
&f-Progress;
is a list of strings,
@@ -592,10 +660,11 @@ in rotating fashion every
evaluated Nodes.
This can be used to implement a "spinner"
on the user's screen as follows:
+</para>
-<example>
+<example_commands>
Progress(['-\r', '\\\r', '|\r', '/\r'], interval=5)
-</example>
+</example_commands>
</summary>
</scons_function>
@@ -604,6 +673,7 @@ Progress(['-\r', '\\\r', '|\r', '/\r'], interval=5)
(target, ...)
</arguments>
<summary>
+<para>
Marks each given
<varname>target</varname>
as precious so it is not deleted before it is rebuilt. Normally
@@ -611,6 +681,7 @@ as precious so it is not deleted before it is rebuilt. Normally
deletes a target before building it.
Multiple targets can be passed in to a single call to
&f-Precious;.
+</para>
</summary>
</scons_function>
@@ -619,9 +690,12 @@ Multiple targets can be passed in to a single call to
(name, value)
</arguments>
<summary>
+<para>
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>
<variablelist>
<varlistentry>
<term><literal>clean</literal></term>
@@ -696,15 +770,22 @@ which corresponds to --stack-size.
</listitem>
</varlistentry>
</variablelist>
+</para>
+<para>
See the documentation for the
corresponding command line object for information about each specific
option.
+</para>
+<para>
Example:
+</para>
-<example>
+<example_commands>
SetOption('max_drift', 1)
-</example>
+</example_commands>
</summary>
</scons_function>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Script/SConscript.xml b/src/engine/SCons/Script/SConscript.xml
index d29a5ca0..0f52818c 100644
--- a/src/engine/SCons/Script/SConscript.xml
+++ b/src/engine/SCons/Script/SConscript.xml
@@ -1,3 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
@@ -5,11 +6,30 @@ This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
+
<scons_function name="Default">
<arguments>
(targets)
</arguments>
<summary>
+<para>
This specifies a list of default targets,
which will be built by
&scons;
@@ -18,7 +38,9 @@ Multiple calls to
&f-Default;
are legal,
and add to the list of default targets.
+</para>
+<para>
Multiple targets should be specified as
separate arguments to the
&f-Default;
@@ -27,16 +49,20 @@ method, or as a list.
will also accept the Node returned by any
of a construction environment's
builder methods.
+</para>
+<para>
Examples:
+</para>
-<example>
+<example_commands>
Default('foo', 'bar', 'baz')
env.Default(['a', 'b', 'c'])
hello = env.Program('hello', 'hello.c')
env.Default(hello)
-</example>
+</example_commands>
+<para>
An argument to
&f-Default;
of
@@ -46,13 +72,16 @@ Later calls to
&f-Default;
will add to the (now empty) default-target list
like normal.
+</para>
+<para>
The current list of targets added using the
&f-Default;
function or method is available in the
<literal>DEFAULT_TARGETS</literal>
list;
see below.
+</para>
</summary>
</scons_function>
@@ -61,17 +90,21 @@ see below.
(major, minor)
</arguments>
<summary>
+<para>
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>
Example:
+</para>
-<example>
+<example_commands>
EnsurePythonVersion(2,2)
-</example>
+</example_commands>
</summary>
</scons_function>
@@ -80,6 +113,7 @@ EnsurePythonVersion(2,2)
(major, minor, [revision])
</arguments>
<summary>
+<para>
Ensure that the SCons version is at least
<varname>major.minor</varname>,
or
@@ -90,14 +124,17 @@ 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>
Examples:
+</para>
-<example>
+<example_commands>
EnsureSConsVersion(0,14)
EnsureSConsVersion(0,96,90)
-</example>
+</example_commands>
</summary>
</scons_function>
@@ -106,6 +143,7 @@ EnsureSConsVersion(0,96,90)
([value])
</arguments>
<summary>
+<para>
This tells
&scons;
to exit immediately
@@ -115,6 +153,7 @@ A default exit value of
<literal>0</literal>
(zero)
is used if no value is specified.
+</para>
</summary>
</scons_function>
@@ -123,6 +162,7 @@ is used if no value is specified.
(vars)
</arguments>
<summary>
+<para>
This tells
&scons;
to export a list of variables from the current
@@ -137,10 +177,13 @@ 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>
Examples:
+</para>
-<example>
+<example_commands>
env = Environment()
# Make env available for all SConscript files to Import().
Export("env")
@@ -157,8 +200,9 @@ Export(debug = env)
# Make env available using the name debug:
Export({"debug":env})
-</example>
+</example_commands>
+<para>
Note that the
&f-SConscript;
function supports an
@@ -168,6 +212,7 @@ set of variables to a single SConscript file.
See the description of the
&f-SConscript;
function, below.
+</para>
</summary>
</scons_function>
@@ -176,6 +221,7 @@ function, below.
()
</arguments>
<summary>
+<para>
Returns the absolute path name of the directory from which
&scons;
was initially invoked.
@@ -188,6 +234,7 @@ options, which internally
change to the directory in which the
&SConstruct;
file is found.
+</para>
</summary>
</scons_function>
@@ -196,6 +243,7 @@ file is found.
(text)
</arguments>
<summary>
+<para>
This specifies help text to be printed if the
<option>-h</option>
argument is given to
@@ -206,6 +254,7 @@ is called multiple times, the text is appended together in the order
that
&f-Help;
is called.
+</para>
</summary>
</scons_function>
@@ -214,6 +263,7 @@ is called.
(vars)
</arguments>
<summary>
+<para>
This tells
&scons;
to import a list of variables into the current SConscript file. This
@@ -230,15 +280,18 @@ Multiple variable names can be passed to
&f-Import;
as separate arguments or as a list. The variable "*" can be used
to import all variables.
+</para>
+<para>
Examples:
+</para>
-<example>
+<example_commands>
Import("env")
Import("env", "variable")
Import(["env", "variable"])
Import("*")
-</example>
+</example_commands>
</summary>
</scons_function>
@@ -247,6 +300,7 @@ Import("*")
([vars..., stop=])
</arguments>
<summary>
+<para>
By default,
this stops processing the current SConscript
file and returns to the calling SConscript file
@@ -256,7 +310,9 @@ string arguments.
Multiple strings contaning variable names may be passed to
&f-Return;.
Any strings that contain white space
+</para>
+<para>
The optional
<literal>stop=</literal>
keyword argument may be set to a false value
@@ -271,10 +327,13 @@ are still the values of the variables in the named
at the point
&f-Return;
is called.
+</para>
+<para>
Examples:
+</para>
-<example>
+<example_commands>
# Returns without returning a value.
Return()
@@ -286,7 +345,7 @@ Return("foo", "bar")
# Returns the values of Python variables 'val1' and 'val2'.
Return('val1 val2')
-</example>
+</example_commands>
</summary>
</scons_function>
@@ -300,6 +359,7 @@ Return('val1 val2')
<!-- (dirs=subdirs, [name=script, exports, variant_dir, src_dir, duplicate]) -->
</arguments>
<summary>
+<para>
This tells
&scons;
to execute
@@ -311,7 +371,9 @@ will be returned by the call to
There are two ways to call the
&f-SConscript;
function.
+</para>
+<para>
The first way you can call
&f-SConscript;
is to explicitly specify one or more
@@ -323,13 +385,15 @@ multiple scripts must be specified as a list
a function like
&f-Split;).
Examples:
-<example>
+</para>
+<example_commands>
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>
+</example_commands>
+<para>
The second way you can call
&f-SConscript;
is to specify a list of (sub)directory names
@@ -349,13 +413,15 @@ by supplying an optional
keyword argument.
The first three examples below have the same effect
as the first three examples above:
-<example>
+</para>
+<example_commands>
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>
+</example_commands>
+<para>
The optional
<varname>exports</varname>
argument provides a list of variable names or a dictionary of
@@ -373,13 +439,15 @@ must use the
&f-link-Import;
function to import the variables.
Examples:
-<example>
+</para>
+<example_commands>
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>
+</example_commands>
+<para>
If the optional
<varname>variant_dir</varname>
argument is present, it causes an effect equivalent to the
@@ -405,7 +473,9 @@ file.
See the description of the
&f-VariantDir;
function below for additional details and restrictions.
+</para>
+<para>
If
<varname>variant_dir</varname>
is present,
@@ -421,32 +491,40 @@ file resides and the
file is evaluated as if it were in the
<varname>variant_dir</varname>
directory:
-<example>
+</para>
+<example_commands>
SConscript('src/SConscript', variant_dir = 'build')
-</example>
+</example_commands>
+<para>
is equivalent to
+</para>
-<example>
+<example_commands>
VariantDir('build', 'src')
SConscript('build/SConscript')
-</example>
+</example_commands>
+<para>
This later paradigm is often used when the sources are
in the same directory as the
&SConstruct;:
+</para>
-<example>
+<example_commands>
SConscript('SConscript', variant_dir = 'build')
-</example>
+</example_commands>
+<para>
is equivalent to
+</para>
-<example>
+<example_commands>
VariantDir('build', '.')
SConscript('build/SConscript')
-</example>
+</example_commands>
+<para>
<!--
If
<varname>variant_dir</varname>
@@ -454,7 +532,8 @@ and"
<varname>src_dir</varname>
are both present,
xxxxx everything is in a state of confusion.
-<example>
+</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')
@@ -465,45 +544,53 @@ 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>
+</example_commands>
+<para>
is equivalent to
-<example>
+</para>
+<example_commands>
????????????????
-</example>
+</example_commands>
+<para>
and what about this alternative?
TODO??? SConscript('build/SConscript', src_dir='src')
-->
+</para>
+<para>
Here are some composite examples:
+</para>
-<example>
+<example_commands>
# 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>
+</example_commands>
-<example>
+<example_commands>
# 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>
+</example_commands>
-<example>
+<example_commands>
# 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>
+</example_commands>
-<example>
+<example_commands>
# 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>
+</example_commands>
</summary>
</scons_function>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Subst.xml b/src/engine/SCons/Subst.xml
index 861e53a3..7764c295 100644
--- a/src/engine/SCons/Subst.xml
+++ b/src/engine/SCons/Subst.xml
@@ -1,3 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
@@ -5,11 +6,30 @@ This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
+
<scons_function name="AllowSubstExceptions">
<arguments signature="global">
([exception, ...])
</arguments>
<summary>
+<para>
Specifies the exceptions that will be allowed
when expanding construction variables.
By default,
@@ -23,16 +43,21 @@ exception will expand to a
All exceptions not in the specified list
will generate an error message
and terminate processing.
+</para>
+<para>
If
&f-AllowSubstExceptions;
is called multiple times,
each call completely overwrites the previous list
of allowed exceptions.
+</para>
+<para>
Example:
+</para>
-<example>
+<example_commands>
# 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.)
@@ -41,6 +66,8 @@ AllowSubstExceptions()
# Also allow a string containing a zero-division expansion
# like '${1 / 0}' to evalute to ''.
AllowSubstExceptions(IndexError, NameError, ZeroDivisionError)
-</example>
+</example_commands>
</summary>
</scons_function>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/386asm.xml b/src/engine/SCons/Tool/386asm.xml
index 824e060e..17c6c890 100644
--- a/src/engine/SCons/Tool/386asm.xml
+++ b/src/engine/SCons/Tool/386asm.xml
@@ -1,25 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="386asm">
<summary>
+<para>
Sets construction variables for the 386ASM assembler
for the Phar Lap ETS embedded operating system.
+</para>
</summary>
<sets>
-AS
-ASFLAGS
-ASPPFLAGS
-ASCOM
-ASPPCOM
+<item>AS</item>
+<item>ASFLAGS</item>
+<item>ASPPFLAGS</item>
+<item>ASCOM</item>
+<item>ASPPCOM</item>
</sets>
<uses>
-CC
-CPPFLAGS
-_CPPDEFFLAGS
-_CPPINCFLAGS
+<item>CC</item>
+<item>CPPFLAGS</item>
+<item>_CPPDEFFLAGS</item>
+<item>_CPPINCFLAGS</item>
</uses>
</tool>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/BitKeeper.xml b/src/engine/SCons/Tool/BitKeeper.xml
index ec209014..e332ff7e 100644
--- a/src/engine/SCons/Tool/BitKeeper.xml
+++ b/src/engine/SCons/Tool/BitKeeper.xml
@@ -1,59 +1,90 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="BitKeeper">
<summary>
+<para>
Sets construction variables for the BitKeeper
source code control system.
+</para>
</summary>
<sets>
-BITKEEPER
-BITKEEPERGET
-BITKEEPERGETFLAGS
-BITKEEPERCOM
+<item>BITKEEPER</item>
+<item>BITKEEPERGET</item>
+<item>BITKEEPERGETFLAGS</item>
+<item>BITKEEPERCOM</item>
</sets>
<uses>
-BITKEEPERCOMSTR
+<item>BITKEEPERCOMSTR</item>
</uses>
</tool>
<cvar name="BITKEEPER">
<summary>
+<para>
The BitKeeper executable.
+</para>
</summary>
</cvar>
<cvar name="BITKEEPERCOM">
<summary>
+<para>
The command line for
fetching source files using BitKeeper.
+</para>
</summary>
</cvar>
<cvar name="BITKEEPERCOMSTR">
<summary>
+<para>
The string displayed when fetching
a source file using BitKeeper.
If this is not set, then &cv-link-BITKEEPERCOM;
(the command line) is displayed.
+</para>
</summary>
</cvar>
<cvar name="BITKEEPERGET">
<summary>
+<para>
The command (&cv-link-BITKEEPER;) and subcommand
for fetching source files using BitKeeper.
+</para>
</summary>
</cvar>
<cvar name="BITKEEPERGETFLAGS">
<summary>
+<para>
Options that are passed to the BitKeeper
<command>get</command>
subcommand.
+</para>
</summary>
</cvar>
@@ -62,6 +93,7 @@ subcommand.
()
</arguments>
<summary>
+<para>
A factory function that
returns a Builder object
to be used to fetch source files
@@ -70,15 +102,22 @@ The returned Builder
is intended to be passed to the
&f-SourceCode;
function.
+</para>
+<para>
This function is deprecated. For details, see the entry for the
&f-SourceCode;
function.
+</para>
+<para>
Example:
+</para>
-<example>
+<example_commands>
env.SourceCode('.', env.BitKeeper())
-</example>
+</example_commands>
</summary>
</scons_function>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/CVS.xml b/src/engine/SCons/Tool/CVS.xml
index ccaba84c..69764056 100644
--- a/src/engine/SCons/Tool/CVS.xml
+++ b/src/engine/SCons/Tool/CVS.xml
@@ -1,67 +1,100 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="CVS">
<summary>
+<para>
Sets construction variables for the CVS source code
management system.
+</para>
</summary>
<sets>
-CVS
-CVSCOM
-CVSFLAGS
-CVSCOFLAGS
+<item>CVS</item>
+<item>CVSCOM</item>
+<item>CVSFLAGS</item>
+<item>CVSCOFLAGS</item>
</sets>
<uses>
-CVSCOMSTR
+<item>CVSCOMSTR</item>
</uses>
</tool>
<cvar name="CVS">
<summary>
+<para>
The CVS executable.
+</para>
</summary>
</cvar>
<cvar name="CVSCOFLAGS">
<summary>
+<para>
Options that are passed to the CVS checkout subcommand.
+</para>
</summary>
</cvar>
<cvar name="CVSCOM">
<summary>
+<para>
The command line used to
fetch source files from a CVS repository.
+</para>
</summary>
</cvar>
<cvar name="CVSCOMSTR">
<summary>
+<para>
The string displayed when fetching
a source file from a CVS repository.
If this is not set, then &cv-link-CVSCOM;
(the command line) is displayed.
+</para>
</summary>
</cvar>
<cvar name="CVSFLAGS">
<summary>
+<para>
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>
</summary>
</cvar>
<cvar name="CVSREPOSITORY">
<summary>
+<para>
The path to the CVS repository.
This is referenced in the default
&cv-link-CVSFLAGS; value.
+</para>
</summary>
</cvar>
@@ -70,6 +103,7 @@ This is referenced in the default
(repository, module)
</arguments>
<summary>
+<para>
A factory function that
returns a Builder object
to be used to fetch source files
@@ -80,11 +114,15 @@ The returned Builder
is intended to be passed to the
&f-link-SourceCode;
function.
+</para>
+<para>
This function is deprecated. For details, see the entry for the
&f-SourceCode;
function.
+</para>
+<para>
The optional specified
<varname>module</varname>
will be added to the beginning
@@ -96,10 +134,13 @@ so that you only have to
replicate part of the repository
directory hierarchy in your
local build directory.
+</para>
+<para>
Examples:
+</para>
-<example>
+<example_commands>
# Will fetch foo/bar/src.c
# from /usr/local/CVSROOT/foo/bar/src.c.
env.SourceCode('.', env.CVS('/usr/local/CVSROOT'))
@@ -111,6 +152,8 @@ 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>
+</example_commands>
</summary>
</scons_function>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/Perforce.xml b/src/engine/SCons/Tool/Perforce.xml
index cb34ede2..780f69be 100644
--- a/src/engine/SCons/Tool/Perforce.xml
+++ b/src/engine/SCons/Tool/Perforce.xml
@@ -1,48 +1,77 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="Perforce">
<summary>
+<para>
Sets construction variables for interacting with the
Perforce source code management system.
+</para>
</summary>
<sets>
-P4
-P4FLAGS
-P4COM
+<item>P4</item>
+<item>P4FLAGS</item>
+<item>P4COM</item>
</sets>
<uses>
-P4COMSTR
+<item>P4COMSTR</item>
</uses>
</tool>
<cvar name="P4">
<summary>
+<para>
The Perforce executable.
+</para>
</summary>
</cvar>
<cvar name="P4COM">
<summary>
+<para>
The command line used to
fetch source files from Perforce.
+</para>
</summary>
</cvar>
<cvar name="P4COMSTR">
<summary>
+<para>
The string displayed when
fetching a source file from Perforce.
If this is not set, then &cv-link-P4COM; (the command line) is displayed.
+</para>
</summary>
</cvar>
<cvar name="P4FLAGS">
<summary>
+<para>
General options that are passed to Perforce.
+</para>
</summary>
</cvar>
@@ -51,6 +80,7 @@ General options that are passed to Perforce.
()
</arguments>
<summary>
+<para>
A factory function that
returns a Builder object
to be used to fetch source files
@@ -59,17 +89,23 @@ The returned Builder
is intended to be passed to the
&f-SourceCode;
function.
+</para>
+<para>
This function is deprecated. For details, see the entry for the
&f-SourceCode;
function.
+</para>
+<para>
Example:
+</para>
-<example>
+<example_commands>
env.SourceCode('.', env.Perforce())
-</example>
+</example_commands>
+<para>
Perforce uses a number of external
environment variables for its operation.
Consequently, this function adds the
@@ -86,5 +122,8 @@ SystemRoot,
USER,
and
USERNAME.
+</para>
</summary>
</scons_function>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/RCS.xml b/src/engine/SCons/Tool/RCS.xml
index 515fc123..2a04a609 100644
--- a/src/engine/SCons/Tool/RCS.xml
+++ b/src/engine/SCons/Tool/RCS.xml
@@ -1,62 +1,93 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="RCS">
<summary>
+<para>
Sets construction variables for the interaction
with the Revision Control System.
+</para>
</summary>
<sets>
-RCS
-RCS_CO
-RCS_COFLAGS
-RCS_COCOM
+<item>RCS</item>
+<item>RCS_CO</item>
+<item>RCS_COFLAGS</item>
+<item>RCS_COCOM</item>
</sets>
<uses>
-RCS_COCOMSTR
+<item>RCS_COCOMSTR</item>
</uses>
</tool>
<cvar name="RCS">
<summary>
+<para>
The RCS executable.
Note that this variable is not actually used
for the command to fetch source files from RCS;
see the
&cv-link-RCS_CO;
construction variable, below.
+</para>
</summary>
</cvar>
<cvar name="RCS_CO">
<summary>
+<para>
The RCS "checkout" executable,
used to fetch source files from RCS.
+</para>
</summary>
</cvar>
<cvar name="RCS_COCOM">
<summary>
+<para>
The command line used to
fetch (checkout) source files from RCS.
+</para>
</summary>
</cvar>
<cvar name="RCS_COCOMSTR">
<summary>
+<para>
The string displayed when fetching
a source file from RCS.
If this is not set, then &cv-link-RCS_COCOM;
(the command line) is displayed.
+</para>
</summary>
</cvar>
<cvar name="RCS_COFLAGS">
<summary>
+<para>
Options that are passed to the &cv-link-RCS_CO; command.
+</para>
</summary>
</cvar>
@@ -65,6 +96,7 @@ Options that are passed to the &cv-link-RCS_CO; command.
()
</arguments>
<summary>
+<para>
A factory function that
returns a Builder object
to be used to fetch source files
@@ -73,17 +105,23 @@ The returned Builder
is intended to be passed to the
&f-SourceCode;
function:
+</para>
+<para>
This function is deprecated. For details, see the entry for the
&f-SourceCode;
function.
+</para>
+<para>
Examples:
+</para>
-<example>
+<example_commands>
env.SourceCode('.', env.RCS())
-</example>
+</example_commands>
+<para>
Note that
&scons;
will fetch source files
@@ -97,5 +135,8 @@ files in the same
directory as the source files,
or if you need to explicitly specify RCS
for a specific subdirectory.
+</para>
</summary>
</scons_function>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/SCCS.xml b/src/engine/SCons/Tool/SCCS.xml
index a111738f..2b5ff3c8 100644
--- a/src/engine/SCons/Tool/SCCS.xml
+++ b/src/engine/SCons/Tool/SCCS.xml
@@ -1,59 +1,90 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="SCCS">
<summary>
+<para>
Sets construction variables for interacting with the
Source Code Control System.
+</para>
</summary>
<sets>
-SCCS
-SCCSFLAGS
-SCCSGETFLAGS
-SCCSCOM
+<item>SCCS</item>
+<item>SCCSFLAGS</item>
+<item>SCCSGETFLAGS</item>
+<item>SCCSCOM</item>
</sets>
<uses>
-SCCSCOMSTR
+<item>SCCSCOMSTR</item>
</uses>
</tool>
<cvar name="SCCS">
<summary>
+<para>
The SCCS executable.
+</para>
</summary>
</cvar>
<cvar name="SCCSCOM">
<summary>
+<para>
The command line used to
fetch source files from SCCS.
+</para>
</summary>
</cvar>
<cvar name="SCCSCOMSTR">
<summary>
+<para>
The string displayed when fetching
a source file from a CVS repository.
If this is not set, then &cv-link-SCCSCOM;
(the command line) is displayed.
+</para>
</summary>
</cvar>
<cvar name="SCCSFLAGS">
<summary>
+<para>
General options that are passed to SCCS.
+</para>
</summary>
</cvar>
<cvar name="SCCSGETFLAGS">
<summary>
+<para>
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>
</summary>
</cvar>
@@ -62,6 +93,7 @@ to check out editable files from SCCS.
()
</arguments>
<summary>
+<para>
A factory function that
returns a Builder object
to be used to fetch source files
@@ -70,13 +102,17 @@ The returned Builder
is intended to be passed to the
&f-link-SourceCode;
function.
+</para>
+<para>
Example:
+</para>
-<example>
+<example_commands>
env.SourceCode('.', env.SCCS())
-</example>
+</example_commands>
+<para>
Note that
&scons;
will fetch source files
@@ -90,5 +126,8 @@ files in the same
directory as the source files,
or if you need to explicitly specify SCCS
for a specific subdirectory.
+</para>
</summary>
</scons_function>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/Subversion.xml b/src/engine/SCons/Tool/Subversion.xml
index ac1a9ad2..55ec1a1a 100644
--- a/src/engine/SCons/Tool/Subversion.xml
+++ b/src/engine/SCons/Tool/Subversion.xml
@@ -1,21 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<!--
<tool name="Subversion">
<summary>
+<para>
Sets construction variables for interacting with Subversion.
+</para>
</summary>
<sets>
-SVN
-SVNFLAGS
-SVNCOM
+<item>SVN</item>
+<item>SVNFLAGS</item>
+<item>SVNCOM</item>
</sets>
<uses>
-SVNCOMSTR
+<item>SVNCOMSTR</item>
</uses>
</tool>
-->
@@ -23,8 +44,10 @@ SVNCOMSTR
<!--
<cvar name="SVN">
<summary>
+<para>
The Subversion executable (usually named
<command>svn</command>).
+</para>
</summary>
</cvar>
-->
@@ -32,8 +55,10 @@ The Subversion executable (usually named
<!--
<cvar name="SVNCOM">
<summary>
+<para>
The command line used to
fetch source files from a Subversion repository.
+</para>
</summary>
</cvar>
-->
@@ -41,7 +66,9 @@ fetch source files from a Subversion repository.
<!--
<cvar name="SVNFLAGS">
<summary>
+<para>
General options that are passed to Subversion.
+</para>
</summary>
</cvar>
-->
@@ -52,6 +79,7 @@ General options that are passed to Subversion.
(repository, module)
</arguments>
<summary>
+<para>
A factory function that
returns a Builder object
to be used to fetch source files
@@ -61,7 +89,9 @@ The returned Builder
is intended to be passed to the
&f-link-SourceCode;
function.
+</para>
+<para>
The optional specified
<varname>module</varname>
will be added to the beginning
@@ -73,14 +103,19 @@ so that you only have to
replicate part of the repository
directory hierarchy in your
local build directory.
+</para>
+<para>
This function is deprecated, see the entry for the
&f-SourceCode;
function.
+</para>
+<para>
Example:
+</para>
-<example>
+<example_commands>
# Will fetch foo/bar/src.c
# from /usr/local/Subversion/foo/bar/src.c.
env.SourceCode('.', env.Subversion('file:///usr/local/Subversion'))
@@ -92,7 +127,9 @@ env.SourceCode('.', env.Subversion('file:///usr/local/Subversion', 'foo'))
# Will fetch src.c
# from /usr/local/Subversion/foo/bar/src.c.
env.SourceCode('.', env.Subversion('file:///usr/local/Subversion', 'foo/bar'))
-</example>
+</example_commands>
</summary>
</scons_function>
-->
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/__init__.xml b/src/engine/SCons/Tool/__init__.xml
index 532c8503..1cb4b770 100644
--- a/src/engine/SCons/Tool/__init__.xml
+++ b/src/engine/SCons/Tool/__init__.xml
@@ -1,11 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<builder name="CFile">
<summary>
+<para>
Builds a C source file given a lex (<filename>.l</filename>)
or yacc (<filename>.y</filename>) input file.
The suffix specified by the &cv-link-CFILESUFFIX; construction variable
@@ -13,18 +33,20 @@ The suffix specified by the &cv-link-CFILESUFFIX; construction variable
is automatically added to the target
if it is not already present.
Example:
+</para>
-<example>
+<example_commands>
# builds foo.c
env.CFile(target = 'foo.c', source = 'foo.l')
# builds bar.c
env.CFile(target = 'bar', source = 'bar.y')
-</example>
+</example_commands>
</summary>
</builder>
<builder name="CXXFile">
<summary>
+<para>
Builds a C++ source file given a lex (<filename>.ll</filename>)
or yacc (<filename>.yy</filename>)
input file.
@@ -33,44 +55,52 @@ The suffix specified by the &cv-link-CXXFILESUFFIX; construction variable
is automatically added to the target
if it is not already present.
Example:
+</para>
-<example>
+<example_commands>
# builds foo.cc
env.CXXFile(target = 'foo.cc', source = 'foo.ll')
# builds bar.cc
env.CXXFile(target = 'bar', source = 'bar.yy')
-</example>
+</example_commands>
</summary>
</builder>
<builder name="Library">
<summary>
+<para>
A synonym for the
&b-StaticLibrary;
builder method.
+</para>
</summary>
</builder>
<builder name="LoadableModule">
<summary>
+<para>
On most systems,
this is the same as
&b-SharedLibrary;.
On Mac OS X (Darwin) platforms,
this creates a loadable module bundle.
+</para>
</summary>
</builder>
<builder name="Object">
<summary>
+<para>
A synonym for the
&b-StaticObject;
builder method.
+</para>
</summary>
</builder>
<builder name="Program">
<summary>
+<para>
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,
@@ -89,15 +119,17 @@ 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>
+<example_commands>
env.Program(target = 'foo', source = ['foo.o', 'bar.c', 'baz.f'])
-</example>
+</example_commands>
</summary>
</builder>
<builder name="SharedLibrary">
<summary>
+<para>
Builds a shared library
(<filename>.so</filename> on a POSIX system,
<filename>.dll</filename> on Windows)
@@ -118,11 +150,13 @@ 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>
+<example_commands>
env.SharedLibrary(target = 'bar', source = ['bar.c', 'foo.o'])
-</example>
+</example_commands>
+<para>
On Windows systems, the
&b-SharedLibrary;
builder method will always build an import
@@ -131,7 +165,9 @@ 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>
Any object files listed in the
<literal>source</literal>
must have been built for a shared library
@@ -140,25 +176,33 @@ must have been built for a shared library
builder method).
&scons;
will raise an error if there is any mismatch.
+</para>
+<para>
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 &b-LoadableModule; builder for the latter.
+</para>
+<para>
When the &cv-link-SHLIBVERSION; construction variable is defined a versioned
shared library is created. This modifies the &cv-link-SHLINKFLAGS; as required,
adds the version number to the library name, and creates the symlinks that
are needed. &cv-link-SHLIBVERSION; 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>
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>
On Windows systems, specifying
<literal>register=1</literal>
will cause the <filename>.dll</filename> to be
@@ -171,20 +215,24 @@ to prevent dialogs from popping
up and requiring user attention when it is run. If you change
&cv-link-REGSVRFLAGS;, be sure to include the <option>/s</option> option.
For example,
+</para>
-<example>
+<example_commands>
env.SharedLibrary(target = 'bar',
source = ['bar.cxx', 'foo.obj'],
register=1)
-</example>
+</example_commands>
+<para>
will register <filename>bar.dll</filename> as a COM object
when it is done linking it.
+</para>
</summary>
</builder>
<builder name="SharedObject">
<summary>
+<para>
Builds an object file for
inclusion in a shared library.
Source files must have one of the same set of extensions
@@ -210,24 +258,28 @@ and suffix
(specified by the &cv-link-SHOBJSUFFIX; construction variable)
are automatically added to the target if not already present.
Examples:
+</para>
-<example>
+<example_commands>
env.SharedObject(target = 'ddd', source = 'ddd.c')
env.SharedObject(target = 'eee.o', source = 'eee.cpp')
env.SharedObject(target = 'fff.obj', source = 'fff.for')
-</example>
+</example_commands>
+<para>
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>
</summary>
</builder>
<builder name="StaticLibrary">
<summary>
+<para>
Builds a static library given one or more object files
or C, C++, D or Fortran source files.
If any source files are given,
@@ -245,11 +297,13 @@ 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>
+<example_commands>
env.StaticLibrary(target = 'bar', source = ['bar.c', 'foo.o'])
-</example>
+</example_commands>
+<para>
Any object files listed in the
<literal>source</literal>
must have been built for a static library
@@ -258,16 +312,19 @@ must have been built for a static library
builder method).
&scons;
will raise an error if there is any mismatch.
+</para>
</summary>
</builder>
<builder name="StaticObject">
<summary>
+<para>
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>
+<example_commands>
.asm assembly language file
.ASM assembly language file
.c C file
@@ -296,8 +353,9 @@ Source files must have one of the following extensions:
POSIX: assembly language file + C pre-processor
.spp assembly language file + C pre-processor
.SPP assembly language file + C pre-processor
-</example>
+</example_commands>
+<para>
The target object file prefix
(specified by the &cv-link-OBJPREFIX; construction variable; nothing by default)
and suffix
@@ -306,32 +364,38 @@ and suffix
<filename>.o</filename> on POSIX systems)
are automatically added to the target if not already present.
Examples:
+</para>
-<example>
+<example_commands>
env.StaticObject(target = 'aaa', source = 'aaa.c')
env.StaticObject(target = 'bbb.o', source = 'bbb.c++')
env.StaticObject(target = 'ccc.obj', source = 'ccc.f')
-</example>
+</example_commands>
+<para>
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>
</summary>
</builder>
<cvar name="CCVERSION">
<summary>
+<para>
The version number of the C compiler.
This may or may not be set,
depending on the specific C compiler being used.
+</para>
</summary>
</cvar>
<cvar name="CFILESUFFIX">
<summary>
+<para>
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.
@@ -343,19 +407,23 @@ SCons also treats
<filename>.C</filename>
(upper case) files
as C files.
+</para>
</summary>
</cvar>
<cvar name="CXXVERSION">
<summary>
+<para>
The version number of the C++ compiler.
This may or may not be set,
depending on the specific C++ compiler being used.
+</para>
</summary>
</cvar>
<cvar name="CXXFILESUFFIX">
<summary>
+<para>
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.
@@ -376,34 +444,45 @@ SCons also treats
<filename>.C</filename>
(upper case) files
as C++ files.
+</para>
</summary>
</cvar>
<cvar name="LIBEMITTER">
<summary>
+<para>
TODO
+</para>
</summary>
</cvar>
<cvar name="SHLIBEMITTER">
<summary>
+<para>
TODO
+</para>
</summary>
</cvar>
<cvar name="PROGEMITTER">
<summary>
+<para>
TODO
+</para>
</summary>
</cvar>
<cvar name="SHLIBVERSION">
<summary>
+<para>
When this construction variable is defined, a versioned shared library
is created. This modifies the &cv-link-SHLINKFLAGS; as required, adds
the version number to the library name, and creates the symlinks that
are needed. &cv-link-SHLIBVERSION; 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>
</summary>
</cvar>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/aixc++.xml b/src/engine/SCons/Tool/aixc++.xml
index 05b4dd64..25e3771b 100644
--- a/src/engine/SCons/Tool/aixc++.xml
+++ b/src/engine/SCons/Tool/aixc++.xml
@@ -1,19 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="aixc++">
<summary>
+<para>
Sets construction variables for the IMB xlc / Visual Age C++ compiler.
+</para>
</summary>
<sets>
-CXX
-SHCXX
-CXXVERSION
-SHOBJSUFFIX
+<item>CXX</item>
+<item>SHCXX</item>
+<item>CXXVERSION</item>
+<item>SHOBJSUFFIX</item>
</sets>
<uses>
</uses>
</tool>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/aixcc.xml b/src/engine/SCons/Tool/aixcc.xml
index 8ec301b2..8742d901 100644
--- a/src/engine/SCons/Tool/aixcc.xml
+++ b/src/engine/SCons/Tool/aixcc.xml
@@ -1,18 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="aixcc">
<summary>
+<para>
Sets construction variables for the IBM xlc / Visual Age C compiler.
+</para>
</summary>
<sets>
-CC
-SHCC
-CCVERSION
+<item>CC</item>
+<item>SHCC</item>
+<item>CCVERSION</item>
</sets>
<uses>
</uses>
</tool>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/aixf77.xml b/src/engine/SCons/Tool/aixf77.xml
index 14274f32..a058dd6f 100644
--- a/src/engine/SCons/Tool/aixf77.xml
+++ b/src/engine/SCons/Tool/aixf77.xml
@@ -1,17 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="aixf77">
<summary>
+<para>
Sets construction variables for the IBM Visual Age f77 Fortran compiler.
+</para>
</summary>
<sets>
-F77
-SHF77
+<item>F77</item>
+<item>SHF77</item>
</sets>
<uses>
</uses>
</tool>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/aixlink.xml b/src/engine/SCons/Tool/aixlink.xml
index 567882b8..31c4b5b7 100644
--- a/src/engine/SCons/Tool/aixlink.xml
+++ b/src/engine/SCons/Tool/aixlink.xml
@@ -1,19 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="aixlink">
<summary>
+<para>
Sets construction variables for the IBM Visual Age linker.
+</para>
</summary>
<sets>
-<!--SMARTLINKFLAGS-->
-LINKFLAGS
-SHLINKFLAGS
-SHLIBSUFFIX
+<item><!--SMARTLINKFLAGS--></item>
+<item>LINKFLAGS</item>
+<item>SHLINKFLAGS</item>
+<item>SHLIBSUFFIX</item>
</sets>
<uses>
</uses>
</tool>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/applelink.xml b/src/engine/SCons/Tool/applelink.xml
index a36536b0..7f8f22e5 100644
--- a/src/engine/SCons/Tool/applelink.xml
+++ b/src/engine/SCons/Tool/applelink.xml
@@ -1,33 +1,55 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="applelink">
<summary>
+<para>
Sets construction variables for the Apple linker
(similar to the GNU linker).
+</para>
</summary>
<sets>
-FRAMEWORKPATHPREFIX
-_FRAMEWORKPATH
-_FRAMEWORKS
-LINKCOM
-SHLINKFLAGS
-SHLINKCOM
-LDMODULEPREFIX
-LDMODULESUFFIX
-LDMODULEFLAGS
-LDMODULECOM
+<item>FRAMEWORKPATHPREFIX</item>
+<item>_FRAMEWORKPATH</item>
+<item>_FRAMEWORKS</item>
+<item>LINKCOM</item>
+<item>SHLINKFLAGS</item>
+<item>SHLINKCOM</item>
+<item>LDMODULEPREFIX</item>
+<item>LDMODULESUFFIX</item>
+<item>LDMODULEFLAGS</item>
+<item>LDMODULECOM</item>
</sets>
<uses>
-FRAMEWORKSFLAGS
+<item>FRAMEWORKSFLAGS</item>
</uses>
</tool>
<cvar name="FRAMEWORKSFLAGS">">
<summary>
+<para>
On Mac OS X with gcc,
general user-supplied frameworks options to be added at
the end of a command
@@ -36,44 +58,52 @@ line building a loadable module.
the &cv-link-FRAMEWORKPATH;, &cv-link-FRAMEWORKPATHPREFIX;,
&cv-link-FRAMEWORKPREFIX; and &cv-link-FRAMEWORKS; variables
described above.)
+</para>
</summary>
</cvar>
<cvar name="FRAMEWORKS">
<summary>
+<para>
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>
+<example_commands>
env.AppendUnique(FRAMEWORKS=Split('System Cocoa SystemConfiguration'))
-</example>
+</example_commands>
</summary>
</cvar>
<cvar name="FRAMEWORKPREFIX">
<summary>
+<para>
On Mac OS X with gcc,
the prefix to be used for linking in frameworks
(see &cv-link-FRAMEWORKS;).
The default value is
<option>-framework</option>.
+</para>
</summary>
</cvar>
<cvar name="_FRAMEWORKS">
<summary>
+<para>
On Mac OS X with gcc,
an automatically-generated construction variable
containing the linker command-line options
for linking with FRAMEWORKS.
+</para>
</summary>
</cvar>
<cvar name="FRAMEWORKPATH">
<summary>
+<para>
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
@@ -81,34 +111,45 @@ Used by the compiler to find framework-style includes like
Used by the linker to find user-specified frameworks when linking (see
&cv-link-FRAMEWORKS;).
For example:
+</para>
-<example>
+<example_commands>
env.AppendUnique(FRAMEWORKPATH='#myframeworkdir')
-</example>
+</example_commands>
+<para>
will add
+</para>
-<example>
+<example_commands>
... -Fmyframeworkdir
-</example>
+</example_commands>
+<para>
to the compiler and linker command lines.
+</para>
</summary>
</cvar>
<cvar name="FRAMEWORKPATHPREFIX">
<summary>
+<para>
On Mac OS X with gcc, the prefix to be used for the FRAMEWORKPATH entries.
(see &cv-link-FRAMEWORKPATH;).
The default value is
<option>-F</option>.
+</para>
</summary>
</cvar>
<cvar name="_FRAMEWORKPATH">
<summary>
+<para>
On Mac OS X with gcc, an automatically-generated construction variable
containing the linker command-line options corresponding to
&cv-link-FRAMEWORKPATH;.
+</para>
</summary>
</cvar>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/ar.xml b/src/engine/SCons/Tool/ar.xml
index 1fe9a574..defc6e51 100644
--- a/src/engine/SCons/Tool/ar.xml
+++ b/src/engine/SCons/Tool/ar.xml
@@ -1,22 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="ar">
<summary>
+<para>
Sets construction variables for the &ar; library archiver.
+</para>
</summary>
<sets>
-AR
-ARFLAGS
-ARCOM
-LIBPREFIX
-LIBSUFFIX
-RANLIB
-RANLIBFLAGS
-RANLIBCOM
+<item>AR</item>
+<item>ARFLAGS</item>
+<item>ARCOM</item>
+<item>LIBPREFIX</item>
+<item>LIBSUFFIX</item>
+<item>RANLIB</item>
+<item>RANLIBFLAGS</item>
+<item>RANLIBCOM</item>
</sets>
<uses>
</uses>
@@ -24,59 +45,77 @@ RANLIBCOM
<cvar name="AR">
<summary>
+<para>
The static library archiver.
+</para>
</summary>
</cvar>
<cvar name="ARCOM">
<summary>
+<para>
The command line used to generate a static library from object files.
+</para>
</summary>
</cvar>
<cvar name="ARCOMSTR">
<summary>
+<para>
The string displayed when an object file
is generated from an assembly-language source file.
If this is not set, then &cv-link-ARCOM; (the command line) is displayed.
+</para>
-<example>
+<example_commands>
env = Environment(ARCOMSTR = "Archiving $TARGET")
-</example>
+</example_commands>
</summary>
</cvar>
<cvar name="ARFLAGS">
<summary>
+<para>
General options passed to the static library archiver.
+</para>
</summary>
</cvar>
<cvar name="RANLIB">
<summary>
+<para>
The archive indexer.
+</para>
</summary>
</cvar>
<cvar name="RANLIBCOM">
<summary>
+<para>
The command line used to index a static library archive.
+</para>
</summary>
</cvar>
<cvar name="RANLIBCOMSTR">
<summary>
+<para>
The string displayed when a static library archive is indexed.
If this is not set, then &cv-link-RANLIBCOM; (the command line) is displayed.
+</para>
-<example>
+<example_commands>
env = Environment(RANLIBCOMSTR = "Indexing $TARGET")
-</example>
+</example_commands>
</summary>
</cvar>
<cvar name="RANLIBFLAGS">
<summary>
+<para>
General options passed to the archive indexer.
+</para>
</summary>
</cvar>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/as.xml b/src/engine/SCons/Tool/as.xml
index b771d0e4..1f2508bd 100644
--- a/src/engine/SCons/Tool/as.xml
+++ b/src/engine/SCons/Tool/as.xml
@@ -1,88 +1,125 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="as">
<summary>
+<para>
Sets construction variables for the &as; assembler.
+</para>
</summary>
<sets>
-AS
-ASFLAGS
-ASCOM
-ASPPFLAGS
-ASPPCOM
+<item>AS</item>
+<item>ASFLAGS</item>
+<item>ASCOM</item>
+<item>ASPPFLAGS</item>
+<item>ASPPCOM</item>
</sets>
<uses>
-CC
-CPPFLAGS
-_CPPDEFFLAGS
-_CPPINCFLAGS
+<item>CC</item>
+<item>CPPFLAGS</item>
+<item>_CPPDEFFLAGS</item>
+<item>_CPPINCFLAGS</item>
</uses>
</tool>
<cvar name="AS">
<summary>
+<para>
The assembler.
+</para>
</summary>
</cvar>
<cvar name="ASCOM">
<summary>
+<para>
The command line used to generate an object file
from an assembly-language source file.
+</para>
</summary>
</cvar>
<cvar name="ASCOMSTR">
<summary>
+<para>
The string displayed when an object file
is generated from an assembly-language source file.
If this is not set, then &cv-link-ASCOM; (the command line) is displayed.
+</para>
-<example>
+<example_commands>
env = Environment(ASCOMSTR = "Assembling $TARGET")
-</example>
+</example_commands>
</summary>
</cvar>
<cvar name="ASFLAGS">
<summary>
+<para>
General options passed to the assembler.
+</para>
</summary>
</cvar>
<cvar name="ASPPCOM">
<summary>
+<para>
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 &cv-link-ASFLAGS; and &cv-link-CPPFLAGS; construction variables
are included on this command line.
+</para>
</summary>
</cvar>
<cvar name="ASPPCOMSTR">
<summary>
+<para>
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 &cv-link-ASPPCOM; (the command line) is displayed.
+</para>
-<example>
+<example_commands>
env = Environment(ASPPCOMSTR = "Assembling $TARGET")
-</example>
+</example_commands>
</summary>
</cvar>
<cvar name="ASPPFLAGS">
<summary>
+<para>
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 &cv-link-ASFLAGS;.
+</para>
</summary>
</cvar>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/bcc32.xml b/src/engine/SCons/Tool/bcc32.xml
index 38ded356..fb192de7 100644
--- a/src/engine/SCons/Tool/bcc32.xml
+++ b/src/engine/SCons/Tool/bcc32.xml
@@ -1,32 +1,55 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="bcc32">
<summary>
+<para>
Sets construction variables for the bcc32 compiler.
+</para>
</summary>
<sets>
-CC
-CCFLAGS
-CFLAGS
-CCCOM
-SHCC
-SHCCFLAGS
-SHCFLAGS
-SHCCCOM
-CPPDEFPREFIX
-CPPDEFSUFFIX
-INCPREFIX
-INCSUFFIX
-SHOBJSUFFIX
-<!--STATIC_AND_SHARED_OBJECTS_ARE_THE_SAME-->
-CFILESUFFIX
+<item>CC</item>
+<item>CCFLAGS</item>
+<item>CFLAGS</item>
+<item>CCCOM</item>
+<item>SHCC</item>
+<item>SHCCFLAGS</item>
+<item>SHCFLAGS</item>
+<item>SHCCCOM</item>
+<item>CPPDEFPREFIX</item>
+<item>CPPDEFSUFFIX</item>
+<item>INCPREFIX</item>
+<item>INCSUFFIX</item>
+<item>SHOBJSUFFIX</item>
+<item><!--STATIC_AND_SHARED_OBJECTS_ARE_THE_SAME--></item>
+<item>CFILESUFFIX</item>
</sets>
<uses>
-_CPPDEFFLAGS
-_CPPINCFLAGS
+<item>_CPPDEFFLAGS</item>
+<item>_CPPINCFLAGS</item>
</uses>
</tool>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/c++.xml b/src/engine/SCons/Tool/c++.xml
index 02530da0..691c137a 100644
--- a/src/engine/SCons/Tool/c++.xml
+++ b/src/engine/SCons/Tool/c++.xml
@@ -1,102 +1,141 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="cXX">
<summary>
+<para>
Sets construction variables for generic POSIX C++ compilers.
+</para>
</summary>
<sets>
-CXX
-CXXFLAGS
-CXXCOM
-SHCXX
-SHCXXFLAGS
-SHCXXCOM
-CPPDEFPREFIX
-CPPDEFSUFFIX
-INCPREFIX
-INCSUFFIX
-SHOBJSUFFIX
-OBJSUFFIX
-<!--STATIC_AND_SHARED_OBJECTS_ARE_THE_SAME-->
-CXXFILESUFFIX
+<item>CXX</item>
+<item>CXXFLAGS</item>
+<item>CXXCOM</item>
+<item>SHCXX</item>
+<item>SHCXXFLAGS</item>
+<item>SHCXXCOM</item>
+<item>CPPDEFPREFIX</item>
+<item>CPPDEFSUFFIX</item>
+<item>INCPREFIX</item>
+<item>INCSUFFIX</item>
+<item>SHOBJSUFFIX</item>
+<item>OBJSUFFIX</item>
+<item><!--STATIC_AND_SHARED_OBJECTS_ARE_THE_SAME--></item>
+<item>CXXFILESUFFIX</item>
</sets>
<uses>
-CXXCOMSTR
+<item>CXXCOMSTR</item>
</uses>
</tool>
<cvar name="CXX">
<summary>
+<para>
The C++ compiler.
+</para>
</summary>
</cvar>
<cvar name="CXXCOM">
<summary>
+<para>
The command line used to compile a C++ source file to an object file.
Any options specified in the &cv-link-CXXFLAGS; and
&cv-link-CPPFLAGS; construction variables
are included on this command line.
+</para>
</summary>
</cvar>
<cvar name="CXXCOMSTR">
<summary>
+<para>
The string displayed when a C++ source file
is compiled to a (static) object file.
If this is not set, then &cv-link-CXXCOM; (the command line) is displayed.
+</para>
-<example>
+<example_commands>
env = Environment(CXXCOMSTR = "Compiling static object $TARGET")
-</example>
+</example_commands>
</summary>
</cvar>
<cvar name="CXXFLAGS">
<summary>
+<para>
General options that are passed to the C++ compiler.
By default, this includes the value of &cv-link-CCFLAGS;,
so that setting &cv-CCFLAGS; affects both C and C++ compilation.
If you want to add C++-specific flags,
you must set or override the value of &cv-link-CXXFLAGS;.
+</para>
</summary>
</cvar>
<cvar name="SHCXX">
<summary>
+<para>
The C++ compiler used for generating shared-library objects.
+</para>
</summary>
</cvar>
<cvar name="SHCXXCOM">
<summary>
+<para>
The command line used to compile a C++ source file
to a shared-library object file.
Any options specified in the &cv-link-SHCXXFLAGS; and
&cv-link-CPPFLAGS; construction variables
are included on this command line.
+</para>
</summary>
</cvar>
<cvar name="SHCXXCOMSTR">
<summary>
+<para>
The string displayed when a C++ source file
is compiled to a shared object file.
If this is not set, then &cv-link-SHCXXCOM; (the command line) is displayed.
+</para>
-<example>
+<example_commands>
env = Environment(SHCXXCOMSTR = "Compiling shared object $TARGET")
-</example>
+</example_commands>
</summary>
</cvar>
<cvar name="SHCXXFLAGS">
<summary>
+<para>
Options that are passed to the C++ compiler
to generate shared-library objects.
+</para>
</summary>
</cvar>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/cc.xml b/src/engine/SCons/Tool/cc.xml
index a89182a3..791519f4 100644
--- a/src/engine/SCons/Tool/cc.xml
+++ b/src/engine/SCons/Tool/cc.xml
@@ -1,79 +1,111 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="cc">
<summary>
+<para>
Sets construction variables for generic POSIX C copmilers.
+</para>
</summary>
<sets>
-<!--_CCCOMCOM-->
-FRAMEWORKS
-FRAMEWORKPATH
-CC
-CFLAGS
-CCFLAGS
-CCCOM
-SHCC
-SHCFLAGS
-SHCCFLAGS
-SHCCCOM
-CPPDEFPREFIX
-CPPDEFSUFFIX
-INCPREFIX
-INCSUFFIX
-SHOBJSUFFIX
-<!--STATIC_AND_SHARED_OBJECTS_ARE_THE_SAME-->
-CFILESUFFIX
+<item><!--_CCCOMCOM--></item>
+<item>FRAMEWORKS</item>
+<item>FRAMEWORKPATH</item>
+<item>CC</item>
+<item>CFLAGS</item>
+<item>CCFLAGS</item>
+<item>CCCOM</item>
+<item>SHCC</item>
+<item>SHCFLAGS</item>
+<item>SHCCFLAGS</item>
+<item>SHCCCOM</item>
+<item>CPPDEFPREFIX</item>
+<item>CPPDEFSUFFIX</item>
+<item>INCPREFIX</item>
+<item>INCSUFFIX</item>
+<item>SHOBJSUFFIX</item>
+<item><!--STATIC_AND_SHARED_OBJECTS_ARE_THE_SAME--></item>
+<item>CFILESUFFIX</item>
</sets>
<uses>
-PLATFORM
+<item>PLATFORM</item>
</uses>
</tool>
<cvar name="CC">
<summary>
+<para>
The C compiler.
+</para>
</summary>
</cvar>
<cvar name="CCCOM">
<summary>
+<para>
The command line used to compile a C source file to a (static) object
file. Any options specified in the &cv-link-CFLAGS;, &cv-link-CCFLAGS; and
&cv-link-CPPFLAGS; construction variables are included on this command
line.
+</para>
</summary>
</cvar>
<cvar name="CCCOMSTR">
<summary>
+<para>
The string displayed when a C source file
is compiled to a (static) object file.
If this is not set, then &cv-link-CCCOM; (the command line) is displayed.
+</para>
-<example>
+<example_commands>
env = Environment(CCCOMSTR = "Compiling static object $TARGET")
-</example>
+</example_commands>
</summary>
</cvar>
<cvar name="CCFLAGS">
<summary>
+<para>
General options that are passed to the C and C++ compilers.
+</para>
</summary>
</cvar>
<cvar name="CFLAGS">
<summary>
+<para>
General options that are passed to the C compiler (C only; not C++).
+</para>
</summary>
</cvar>
<cvar name="CPPFLAGS">
<summary>
+<para>
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
@@ -97,65 +129,80 @@ contain
that scons generates automatically from &cv-link-CPPPATH;.
See &cv-link-_CPPINCFLAGS;, below,
for the variable that expands to those options.
+</para>
</summary>
</cvar>
<cvar name="CPPSUFFIXES">
<summary>
+<para>
The list of suffixes of files that will be scanned
for C preprocessor implicit dependencies
(#include lines).
The default list is:
+</para>
-<example>
+<example_commands>
[".c", ".C", ".cxx", ".cpp", ".c++", ".cc",
".h", ".H", ".hxx", ".hpp", ".hh",
".F", ".fpp", ".FPP",
".m", ".mm",
".S", ".spp", ".SPP"]
-</example>
+</example_commands>
</summary>
</cvar>
<cvar name="SHCC">
<summary>
+<para>
The C compiler used for generating shared-library objects.
+</para>
</summary>
</cvar>
<cvar name="SHCCCOM">
<summary>
+<para>
The command line used to compile a C source file
to a shared-library object file.
Any options specified in the &cv-link-SHCFLAGS;,
&cv-link-SHCCFLAGS; and
&cv-link-CPPFLAGS; construction variables
are included on this command line.
+</para>
</summary>
</cvar>
<cvar name="SHCCCOMSTR">
<summary>
+<para>
The string displayed when a C source file
is compiled to a shared object file.
If this is not set, then &cv-link-SHCCCOM; (the command line) is displayed.
+</para>
-<example>
+<example_commands>
env = Environment(SHCCCOMSTR = "Compiling shared object $TARGET")
-</example>
+</example_commands>
</summary>
</cvar>
<cvar name="SHCCFLAGS">
<summary>
+<para>
Options that are passed to the C and C++ compilers
to generate shared-library objects.
+</para>
</summary>
</cvar>
<cvar name="SHCFLAGS">
<summary>
+<para>
Options that are passed to the C compiler (only; not C++)
to generate shared-library objects.
+</para>
</summary>
</cvar>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/cvf.xml b/src/engine/SCons/Tool/cvf.xml
index a8011e17..e64e1576 100644
--- a/src/engine/SCons/Tool/cvf.xml
+++ b/src/engine/SCons/Tool/cvf.xml
@@ -1,30 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="cvf">
<summary>
+<para>
Sets construction variables for the Compaq Visual Fortran compiler.
+</para>
</summary>
<sets>
-FORTRAN
-FORTRANCOM
-FORTRANPPCOM
-SHFORTRANCOM
-SHFORTRANPPCOM
-OBJSUFFIX
-FORTRANMODDIR
-FORTRANMODDIRPREFIX
-FORTRANMODDIRSUFFIX
+<item>FORTRAN</item>
+<item>FORTRANCOM</item>
+<item>FORTRANPPCOM</item>
+<item>SHFORTRANCOM</item>
+<item>SHFORTRANPPCOM</item>
+<item>OBJSUFFIX</item>
+<item>FORTRANMODDIR</item>
+<item>FORTRANMODDIRPREFIX</item>
+<item>FORTRANMODDIRSUFFIX</item>
</sets>
<uses>
-FORTRANFLAGS
-SHFORTRANFLAGS
-_FORTRANMODFLAG
-_FORTRANINCFLAGS
-CPPFLAGS
-_CPPDEFFLAGS
+<item>FORTRANFLAGS</item>
+<item>SHFORTRANFLAGS</item>
+<item>_FORTRANMODFLAG</item>
+<item>_FORTRANINCFLAGS</item>
+<item>CPPFLAGS</item>
+<item>_CPPDEFFLAGS</item>
</uses>
</tool>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/default.xml b/src/engine/SCons/Tool/default.xml
index e14f9f72..1d80f217 100644
--- a/src/engine/SCons/Tool/default.xml
+++ b/src/engine/SCons/Tool/default.xml
@@ -1,12 +1,35 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="default">
<summary>
+<para>
Sets variables by calling a default list of Tool modules
for the platform on which SCons is running.
+</para>
</summary>
</tool>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/dmd.xml b/src/engine/SCons/Tool/dmd.xml
index 835a4eb9..0a6b654e 100644
--- a/src/engine/SCons/Tool/dmd.xml
+++ b/src/engine/SCons/Tool/dmd.xml
@@ -1,53 +1,76 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="dmd">
<summary>
+<para>
Sets construction variables for D language compilers
(the Digital Mars D compiler, or GDC).
+</para>
</summary>
<sets>
-<!--
-DC
-DCOM
-_DINCFLAGS
-_DVERFLAGS
-_DDEBUGFLAGS
-_DFLAGS
-DPATH
-DFLAGS
-DVERSIONS
-DDEBUG
-DINCPREFIX
-DINCSUFFIX
-DVERPREFIX
-DVERSUFFIX
-DDEBUGPREFIX
-DDEBUGSUFFIX
-DFLAGPREFIX
-DFLAGSUFFIX
-DFLESUFFIX
-DLINK
-DLINKCOM
-DLIB
-DLIBCOM
-_DLINKLIBFLAGS
-_DLIBFLAGS
-DLINKFLAGS
-DLIBLINKPREFIX
-DLIBLINKSUFFIX
-DLIBFLAGPREFIX
-DLIBFLAGSUFFIX
-DLINKFLAGPREFIX
-DLINKFLAGSUFFIX
-LINKCOM
-ARCOM
-LIBS
--->
+<item><!--</item>
+<item>DC</item>
+<item>DCOM</item>
+<item>_DINCFLAGS</item>
+<item>_DVERFLAGS</item>
+<item>_DDEBUGFLAGS</item>
+<item>_DFLAGS</item>
+<item>DPATH</item>
+<item>DFLAGS</item>
+<item>DVERSIONS</item>
+<item>DDEBUG</item>
+<item>DINCPREFIX</item>
+<item>DINCSUFFIX</item>
+<item>DVERPREFIX</item>
+<item>DVERSUFFIX</item>
+<item>DDEBUGPREFIX</item>
+<item>DDEBUGSUFFIX</item>
+<item>DFLAGPREFIX</item>
+<item>DFLAGSUFFIX</item>
+<item>DFLESUFFIX</item>
+<item>DLINK</item>
+<item>DLINKCOM</item>
+<item>DLIB</item>
+<item>DLIBCOM</item>
+<item>_DLINKLIBFLAGS</item>
+<item>_DLIBFLAGS</item>
+<item>DLINKFLAGS</item>
+<item>DLIBLINKPREFIX</item>
+<item>DLIBLINKSUFFIX</item>
+<item>DLIBFLAGPREFIX</item>
+<item>DLIBFLAGSUFFIX</item>
+<item>DLINKFLAGPREFIX</item>
+<item>DLINKFLAGSUFFIX</item>
+<item>LINKCOM</item>
+<item>ARCOM</item>
+<item>LIBS</item>
+<item>--></item>
</sets>
<uses>
</uses>
</tool>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/dvi.xml b/src/engine/SCons/Tool/dvi.xml
index 8285a54f..0e772cc3 100644
--- a/src/engine/SCons/Tool/dvi.xml
+++ b/src/engine/SCons/Tool/dvi.xml
@@ -1,13 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="dvi">
<summary>
+<para>
Attaches the &b-DVI; builder to the
construction environment.
+</para>
</summary>
<sets>
</sets>
@@ -17,6 +38,7 @@ construction environment.
<builder name="DVI">
<summary>
+<para>
Builds a <filename>.dvi</filename> file
from a <filename>.tex</filename>,
<filename>.ltx</filename> or <filename>.latex</filename> input file.
@@ -47,21 +69,26 @@ and will examine the contents
<filename>.log</filename>
file and re-run the &cv-link-LATEXCOM; command
if the log file says it is necessary.
+</para>
+<para>
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>
+<example_commands>
# 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>
+</example_commands>
</summary>
</builder>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/dvipdf.xml b/src/engine/SCons/Tool/dvipdf.xml
index 7f5b160d..9e8c76f0 100644
--- a/src/engine/SCons/Tool/dvipdf.xml
+++ b/src/engine/SCons/Tool/dvipdf.xml
@@ -1,51 +1,84 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="dvipdf">
<summary>
+<para>
Sets construction variables for the dvipdf utility.
+</para>
</summary>
<sets>
-DVIPDF
-DVIPDFFLAGS
-DVIPDFCOM
+<item>DVIPDF</item>
+<item>DVIPDFFLAGS</item>
+<item>DVIPDFCOM</item>
</sets>
<uses>
-DVIPDFCOMSTR
+<item>DVIPDFCOMSTR</item>
</uses>
</tool>
<cvar name="DVIPDF">
<summary>
+<para>
The TeX DVI file to PDF file converter.
+</para>
</summary>
</cvar>
<cvar name="DVIPDFFLAGS">
<summary>
+<para>
General options passed to the TeX DVI file to PDF file converter.
+</para>
</summary>
</cvar>
<cvar name="DVIPDFCOM">
<summary>
+<para>
The command line used to convert TeX DVI files into a PDF file.
+</para>
</summary>
</cvar>
<cvar name="DVIPDFCOMSTR">
<summary>
+<para>
The string displayed when a TeX DVI file
is converted into a PDF file.
If this is not set, then &cv-link-DVIPDFCOM; (the command line) is displayed.
+</para>
</summary>
</cvar>
<cvar name="PDFCOM">
<summary>
+<para>
A deprecated synonym for &cv-link-DVIPDFCOM;.
+</para>
</summary>
</cvar>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/dvips.xml b/src/engine/SCons/Tool/dvips.xml
index 328bb46a..ec6baa68 100644
--- a/src/engine/SCons/Tool/dvips.xml
+++ b/src/engine/SCons/Tool/dvips.xml
@@ -1,27 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="dvips">
<summary>
+<para>
Sets construction variables for the dvips utility.
+</para>
</summary>
<sets>
-DVIPS
-DVIPSFLAGS
-PSCOM
-PSPREFIX
-PSSUFFIX
+<item>DVIPS</item>
+<item>DVIPSFLAGS</item>
+<item>PSCOM</item>
+<item>PSPREFIX</item>
+<item>PSSUFFIX</item>
</sets>
<uses>
-PSCOMSTR
+<item>PSCOMSTR</item>
</uses>
</tool>
<builder name="PostScript">
<summary>
+<para>
Builds a <filename>.ps</filename> file
from a <filename>.dvi</filename> input file
(or, by extension, a <filename>.tex</filename>,
@@ -32,50 +54,65 @@ The suffix specified by the &cv-link-PSSUFFIX; construction variable
(<filename>.ps</filename> by default)
is added automatically to the target
if it is not already present. Example:
+</para>
-<example>
+<example_commands>
# 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>
+</example_commands>
</summary>
</builder>
<cvar name="DVIPS">
<summary>
+<para>
The TeX DVI file to PostScript converter.
+</para>
</summary>
</cvar>
<cvar name="DVIPSFLAGS">
<summary>
+<para>
General options passed to the TeX DVI file to PostScript converter.
+</para>
</summary>
</cvar>
<cvar name="PSCOM">
<summary>
+<para>
The command line used to convert TeX DVI files into a PostScript file.
+</para>
</summary>
</cvar>
<cvar name="PSCOMSTR">
<summary>
+<para>
The string displayed when a TeX DVI file
is converted into a PostScript file.
If this is not set, then &cv-link-PSCOM; (the command line) is displayed.
+</para>
</summary>
</cvar>
<cvar name="PSPREFIX">
<summary>
+<para>
The prefix used for PostScript file names.
+</para>
</summary>
</cvar>
<cvar name="PSSUFFIX">
<summary>
+<para>
The prefix used for PostScript file names.
+</para>
</summary>
</cvar>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/f03.xml b/src/engine/SCons/Tool/f03.xml
index ef737dee..5f9c4fd8 100644
--- a/src/engine/SCons/Tool/f03.xml
+++ b/src/engine/SCons/Tool/f03.xml
@@ -1,79 +1,111 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="f03">
<summary>
+<para>
Set construction variables for generic POSIX Fortran 03 compilers.
+</para>
</summary>
<sets>
-F03
-F03FLAGS
-F03COM
-F03PPCOM
-SHF03
-SHF03FLAGS
-SHF03COM
-SHF03PPCOM
-_F03INCFLAGS
+<item>F03</item>
+<item>F03FLAGS</item>
+<item>F03COM</item>
+<item>F03PPCOM</item>
+<item>SHF03</item>
+<item>SHF03FLAGS</item>
+<item>SHF03COM</item>
+<item>SHF03PPCOM</item>
+<item>_F03INCFLAGS</item>
</sets>
<uses>
-F03COMSTR
-F03PPCOMSTR
-SHF03COMSTR
-SHF03PPCOMSTR
+<item>F03COMSTR</item>
+<item>F03PPCOMSTR</item>
+<item>SHF03COMSTR</item>
+<item>SHF03PPCOMSTR</item>
</uses>
</tool>
<cvar name="F03">
<summary>
+<para>
The Fortran 03 compiler.
You should normally set the &cv-link-FORTRAN; variable,
which specifies the default Fortran compiler
for all Fortran versions.
You only need to set &cv-link-F03; if you need to use a specific compiler
or compiler version for Fortran 03 files.
+</para>
</summary>
</cvar>
<cvar name="F03COM">
<summary>
+<para>
The command line used to compile a Fortran 03 source file to an object file.
You only need to set &cv-link-F03COM; if you need to use a specific
command line for Fortran 03 files.
You should normally set the &cv-link-FORTRANCOM; variable,
which specifies the default command line
for all Fortran versions.
+</para>
</summary>
</cvar>
<cvar name="F03COMSTR">
<summary>
+<para>
The string displayed when a Fortran 03 source file
is compiled to an object file.
If this is not set, then &cv-link-F03COM; or &cv-link-FORTRANCOM;
(the command line) is displayed.
+</para>
</summary>
</cvar>
<cvar name="F03FILESUFFIXES">
<summary>
+<para>
The list of file extensions for which the F03 dialect will be used. By
default, this is ['.f03']
+</para>
</summary>
</cvar>
<cvar name="F03PPFILESUFFIXES">
<summary>
+<para>
The list of file extensions for which the compilation + preprocessor pass for
F03 dialect will be used. By default, this is empty
+</para>
</summary>
</cvar>
<cvar name="F03FLAGS">
<summary>
+<para>
General user-specified options that are passed to the Fortran 03 compiler.
Note that this variable does
<emphasis>not</emphasis>
@@ -91,11 +123,13 @@ You should normally set the &cv-link-FORTRANFLAGS; variable,
which specifies the user-specified options
passed to the default Fortran compiler
for all Fortran versions.
+</para>
</summary>
</cvar>
<cvar name="_F03INCFLAGS">
<summary>
+<para>
An automatically-generated construction variable
containing the Fortran 03 compiler command-line options
for specifying directories to be searched for include files.
@@ -103,11 +137,13 @@ The value of &cv-link-_F03INCFLAGS; is created
by appending &cv-link-INCPREFIX; and &cv-link-INCSUFFIX;
to the beginning and end
of each directory in &cv-link-F03PATH;.
+</para>
</summary>
</cvar>
<cvar name="F03PATH">
<summary>
+<para>
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
@@ -123,20 +159,24 @@ You should normally set the &cv-link-FORTRANPATH; variable,
which specifies the include path
for the default Fortran compiler
for all Fortran versions.
+</para>
-<example>
+<example_commands>
env = Environment(F03PATH='#/include')
-</example>
+</example_commands>
+<para>
The directory look-up can also be forced using the
&Dir;()
function:
+</para>
-<example>
+<example_commands>
include = Dir('include')
env = Environment(F03PATH=include)
-</example>
+</example_commands>
+<para>
The directory list will be added to command lines
through the automatically-generated
&cv-link-_F03INCFLAGS;
@@ -150,15 +190,17 @@ of each directory in &cv-link-F03PATH;.
Any command lines you define that need
the F03PATH directory list should
include &cv-link-_F03INCFLAGS;:
+</para>
-<example>
+<example_commands>
env = Environment(F03COM="my_compiler $_F03INCFLAGS -c -o $TARGET $SOURCE")
-</example>
+</example_commands>
</summary>
</cvar>
<cvar name="F03PPCOM">
<summary>
+<para>
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 &cv-link-F03FLAGS; and &cv-link-CPPFLAGS; construction variables
@@ -168,32 +210,38 @@ C-preprocessor command line for Fortran 03 files.
You should normally set the &cv-link-FORTRANPPCOM; variable,
which specifies the default C-preprocessor command line
for all Fortran versions.
+</para>
</summary>
</cvar>
<cvar name="F03PPCOMSTR">
<summary>
+<para>
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 &cv-link-F03PPCOM; or &cv-link-FORTRANPPCOM;
(the command line) is displayed.
+</para>
</summary>
</cvar>
<cvar name="SHF03">
<summary>
+<para>
The Fortran 03 compiler used for generating shared-library objects.
You should normally set the &cv-link-SHFORTRAN; variable,
which specifies the default Fortran compiler
for all Fortran versions.
You only need to set &cv-link-SHF03; if you need to use a specific compiler
or compiler version for Fortran 03 files.
+</para>
</summary>
</cvar>
<cvar name="SHF03COM">
<summary>
+<para>
The command line used to compile a Fortran 03 source file
to a shared-library object file.
You only need to set &cv-link-SHF03COM; if you need to use a specific
@@ -201,20 +249,24 @@ command line for Fortran 03 files.
You should normally set the &cv-link-SHFORTRANCOM; variable,
which specifies the default command line
for all Fortran versions.
+</para>
</summary>
</cvar>
<cvar name="SHF03COMSTR">
<summary>
+<para>
The string displayed when a Fortran 03 source file
is compiled to a shared-library object file.
If this is not set, then &cv-link-SHF03COM; or &cv-link-SHFORTRANCOM;
(the command line) is displayed.
+</para>
</summary>
</cvar>
<cvar name="SHF03FLAGS">
<summary>
+<para>
Options that are passed to the Fortran 03 compiler
to generated shared-library objects.
You only need to set &cv-link-SHF03FLAGS; if you need to define specific
@@ -223,11 +275,13 @@ You should normally set the &cv-link-SHFORTRANFLAGS; variable,
which specifies the user-specified options
passed to the default Fortran compiler
for all Fortran versions.
+</para>
</summary>
</cvar>
<cvar name="SHF03PPCOM">
<summary>
+<para>
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.
@@ -238,15 +292,20 @@ C-preprocessor command line for Fortran 03 files.
You should normally set the &cv-link-SHFORTRANPPCOM; variable,
which specifies the default C-preprocessor command line
for all Fortran versions.
+</para>
</summary>
</cvar>
<cvar name="SHF03PPCOMSTR">
<summary>
+<para>
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 &cv-link-SHF03PPCOM; or &cv-link-SHFORTRANPPCOM;
(the command line) is displayed.
+</para>
</summary>
</cvar>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/f77.xml b/src/engine/SCons/Tool/f77.xml
index 8e60d71c..b55c17fa 100644
--- a/src/engine/SCons/Tool/f77.xml
+++ b/src/engine/SCons/Tool/f77.xml
@@ -1,92 +1,124 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="f77">
<summary>
+<para>
Set construction variables for generic POSIX Fortran 77 compilers.
+</para>
</summary>
<sets>
-F77
-F77FLAGS
-F77COM
-F77PPCOM
-F77FILESUFFIXES
-F77PPFILESUFFIXES
-FORTRAN
-FORTRANFLAGS
-FORTRANCOM
-SHF77
-SHF77FLAGS
-SHF77COM
-SHF77PPCOM
-SHFORTRAN
-SHFORTRANFLAGS
-SHFORTRANCOM
-SHFORTRANPPCOM
-_F77INCFLAGS
+<item>F77</item>
+<item>F77FLAGS</item>
+<item>F77COM</item>
+<item>F77PPCOM</item>
+<item>F77FILESUFFIXES</item>
+<item>F77PPFILESUFFIXES</item>
+<item>FORTRAN</item>
+<item>FORTRANFLAGS</item>
+<item>FORTRANCOM</item>
+<item>SHF77</item>
+<item>SHF77FLAGS</item>
+<item>SHF77COM</item>
+<item>SHF77PPCOM</item>
+<item>SHFORTRAN</item>
+<item>SHFORTRANFLAGS</item>
+<item>SHFORTRANCOM</item>
+<item>SHFORTRANPPCOM</item>
+<item>_F77INCFLAGS</item>
</sets>
<uses>
-F77COMSTR
-F77PPCOMSTR
-FORTRANCOMSTR
-FORTRANPPCOMSTR
-SHF77COMSTR
-SHF77PPCOMSTR
-SHFORTRANCOMSTR
-SHFORTRANPPCOMSTR
+<item>F77COMSTR</item>
+<item>F77PPCOMSTR</item>
+<item>FORTRANCOMSTR</item>
+<item>FORTRANPPCOMSTR</item>
+<item>SHF77COMSTR</item>
+<item>SHF77PPCOMSTR</item>
+<item>SHFORTRANCOMSTR</item>
+<item>SHFORTRANPPCOMSTR</item>
</uses>
</tool>
<cvar name="F77">
<summary>
+<para>
The Fortran 77 compiler.
You should normally set the &cv-link-FORTRAN; variable,
which specifies the default Fortran compiler
for all Fortran versions.
You only need to set &cv-link-F77; if you need to use a specific compiler
or compiler version for Fortran 77 files.
+</para>
</summary>
</cvar>
<cvar name="F77COM">
<summary>
+<para>
The command line used to compile a Fortran 77 source file to an object file.
You only need to set &cv-link-F77COM; if you need to use a specific
command line for Fortran 77 files.
You should normally set the &cv-link-FORTRANCOM; variable,
which specifies the default command line
for all Fortran versions.
+</para>
</summary>
</cvar>
<cvar name="F77FILESUFFIXES">
<summary>
+<para>
The list of file extensions for which the F77 dialect will be used. By
default, this is ['.f77']
+</para>
</summary>
</cvar>
<cvar name="F77PPFILESUFFIXES">
<summary>
+<para>
The list of file extensions for which the compilation + preprocessor pass for
F77 dialect will be used. By default, this is empty
+</para>
</summary>
</cvar>
<cvar name="F77COMSTR">
<summary>
+<para>
The string displayed when a Fortran 77 source file
is compiled to an object file.
If this is not set, then &cv-link-F77COM; or &cv-link-FORTRANCOM;
(the command line) is displayed.
+</para>
</summary>
</cvar>
<cvar name="F77FLAGS">
<summary>
+<para>
General user-specified options that are passed to the Fortran 77 compiler.
Note that this variable does
<emphasis>not</emphasis>
@@ -104,11 +136,13 @@ You should normally set the &cv-link-FORTRANFLAGS; variable,
which specifies the user-specified options
passed to the default Fortran compiler
for all Fortran versions.
+</para>
</summary>
</cvar>
<cvar name="_F77INCFLAGS">
<summary>
+<para>
An automatically-generated construction variable
containing the Fortran 77 compiler command-line options
for specifying directories to be searched for include files.
@@ -116,11 +150,13 @@ The value of &cv-link-_F77INCFLAGS; is created
by appending &cv-link-INCPREFIX; and &cv-link-INCSUFFIX;
to the beginning and end
of each directory in &cv-link-F77PATH;.
+</para>
</summary>
</cvar>
<cvar name="F77PATH">
<summary>
+<para>
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
@@ -136,20 +172,24 @@ You should normally set the &cv-link-FORTRANPATH; variable,
which specifies the include path
for the default Fortran compiler
for all Fortran versions.
+</para>
-<example>
+<example_commands>
env = Environment(F77PATH='#/include')
-</example>
+</example_commands>
+<para>
The directory look-up can also be forced using the
&Dir;()
function:
+</para>
-<example>
+<example_commands>
include = Dir('include')
env = Environment(F77PATH=include)
-</example>
+</example_commands>
+<para>
The directory list will be added to command lines
through the automatically-generated
&cv-link-_F77INCFLAGS;
@@ -163,15 +203,17 @@ of each directory in &cv-link-F77PATH;.
Any command lines you define that need
the F77PATH directory list should
include &cv-link-_F77INCFLAGS;:
+</para>
-<example>
+<example_commands>
env = Environment(F77COM="my_compiler $_F77INCFLAGS -c -o $TARGET $SOURCE")
-</example>
+</example_commands>
</summary>
</cvar>
<cvar name="F77PPCOM">
<summary>
+<para>
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 &cv-link-F77FLAGS; and &cv-link-CPPFLAGS; construction variables
@@ -181,32 +223,38 @@ C-preprocessor command line for Fortran 77 files.
You should normally set the &cv-link-FORTRANPPCOM; variable,
which specifies the default C-preprocessor command line
for all Fortran versions.
+</para>
</summary>
</cvar>
<cvar name="F77PPCOMSTR">
<summary>
+<para>
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 &cv-link-F77PPCOM; or &cv-link-FORTRANPPCOM;
(the command line) is displayed.
+</para>
</summary>
</cvar>
<cvar name="SHF77">
<summary>
+<para>
The Fortran 77 compiler used for generating shared-library objects.
You should normally set the &cv-link-SHFORTRAN; variable,
which specifies the default Fortran compiler
for all Fortran versions.
You only need to set &cv-link-SHF77; if you need to use a specific compiler
or compiler version for Fortran 77 files.
+</para>
</summary>
</cvar>
<cvar name="SHF77COM">
<summary>
+<para>
The command line used to compile a Fortran 77 source file
to a shared-library object file.
You only need to set &cv-link-SHF77COM; if you need to use a specific
@@ -214,20 +262,24 @@ command line for Fortran 77 files.
You should normally set the &cv-link-SHFORTRANCOM; variable,
which specifies the default command line
for all Fortran versions.
+</para>
</summary>
</cvar>
<cvar name="SHF77COMSTR">
<summary>
+<para>
The string displayed when a Fortran 77 source file
is compiled to a shared-library object file.
If this is not set, then &cv-link-SHF77COM; or &cv-link-SHFORTRANCOM;
(the command line) is displayed.
+</para>
</summary>
</cvar>
<cvar name="SHF77FLAGS">
<summary>
+<para>
Options that are passed to the Fortran 77 compiler
to generated shared-library objects.
You only need to set &cv-link-SHF77FLAGS; if you need to define specific
@@ -236,11 +288,13 @@ You should normally set the &cv-link-SHFORTRANFLAGS; variable,
which specifies the user-specified options
passed to the default Fortran compiler
for all Fortran versions.
+</para>
</summary>
</cvar>
<cvar name="SHF77PPCOM">
<summary>
+<para>
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.
@@ -251,15 +305,20 @@ C-preprocessor command line for Fortran 77 files.
You should normally set the &cv-link-SHFORTRANPPCOM; variable,
which specifies the default C-preprocessor command line
for all Fortran versions.
+</para>
</summary>
</cvar>
<cvar name="SHF77PPCOMSTR">
<summary>
+<para>
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 &cv-link-SHF77PPCOM; or &cv-link-SHFORTRANPPCOM;
(the command line) is displayed.
+</para>
</summary>
</cvar>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/f90.xml b/src/engine/SCons/Tool/f90.xml
index 4a2884e2..3deb99db 100644
--- a/src/engine/SCons/Tool/f90.xml
+++ b/src/engine/SCons/Tool/f90.xml
@@ -1,79 +1,111 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="f90">
<summary>
+<para>
Set construction variables for generic POSIX Fortran 90 compilers.
+</para>
</summary>
<sets>
-F90
-F90FLAGS
-F90COM
-F90PPCOM
-SHF90
-SHF90FLAGS
-SHF90COM
-SHF90PPCOM
-_F90INCFLAGS
+<item>F90</item>
+<item>F90FLAGS</item>
+<item>F90COM</item>
+<item>F90PPCOM</item>
+<item>SHF90</item>
+<item>SHF90FLAGS</item>
+<item>SHF90COM</item>
+<item>SHF90PPCOM</item>
+<item>_F90INCFLAGS</item>
</sets>
<uses>
-F90COMSTR
-F90PPCOMSTR
-SHF90COMSTR
-SHF90PPCOMSTR
+<item>F90COMSTR</item>
+<item>F90PPCOMSTR</item>
+<item>SHF90COMSTR</item>
+<item>SHF90PPCOMSTR</item>
</uses>
</tool>
<cvar name="F90">
<summary>
+<para>
The Fortran 90 compiler.
You should normally set the &cv-link-FORTRAN; variable,
which specifies the default Fortran compiler
for all Fortran versions.
You only need to set &cv-link-F90; if you need to use a specific compiler
or compiler version for Fortran 90 files.
+</para>
</summary>
</cvar>
<cvar name="F90COM">
<summary>
+<para>
The command line used to compile a Fortran 90 source file to an object file.
You only need to set &cv-link-F90COM; if you need to use a specific
command line for Fortran 90 files.
You should normally set the &cv-link-FORTRANCOM; variable,
which specifies the default command line
for all Fortran versions.
+</para>
</summary>
</cvar>
<cvar name="F90COMSTR">
<summary>
+<para>
The string displayed when a Fortran 90 source file
is compiled to an object file.
If this is not set, then &cv-link-F90COM; or &cv-link-FORTRANCOM;
(the command line) is displayed.
+</para>
</summary>
</cvar>
<cvar name="F90FILESUFFIXES">
<summary>
+<para>
The list of file extensions for which the F90 dialect will be used. By
default, this is ['.f90']
+</para>
</summary>
</cvar>
<cvar name="F90PPFILESUFFIXES">
<summary>
+<para>
The list of file extensions for which the compilation + preprocessor pass for
F90 dialect will be used. By default, this is empty
+</para>
</summary>
</cvar>
<cvar name="F90FLAGS">
<summary>
+<para>
General user-specified options that are passed to the Fortran 90 compiler.
Note that this variable does
<emphasis>not</emphasis>
@@ -91,11 +123,13 @@ You should normally set the &cv-link-FORTRANFLAGS; variable,
which specifies the user-specified options
passed to the default Fortran compiler
for all Fortran versions.
+</para>
</summary>
</cvar>
<cvar name="_F90INCFLAGS">
<summary>
+<para>
An automatically-generated construction variable
containing the Fortran 90 compiler command-line options
for specifying directories to be searched for include files.
@@ -103,11 +137,13 @@ The value of &cv-link-_F90INCFLAGS; is created
by appending &cv-link-INCPREFIX; and &cv-link-INCSUFFIX;
to the beginning and end
of each directory in &cv-link-F90PATH;.
+</para>
</summary>
</cvar>
<cvar name="F90PATH">
<summary>
+<para>
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
@@ -123,20 +159,24 @@ You should normally set the &cv-link-FORTRANPATH; variable,
which specifies the include path
for the default Fortran compiler
for all Fortran versions.
+</para>
-<example>
+<example_commands>
env = Environment(F90PATH='#/include')
-</example>
+</example_commands>
+<para>
The directory look-up can also be forced using the
&Dir;()
function:
+</para>
-<example>
+<example_commands>
include = Dir('include')
env = Environment(F90PATH=include)
-</example>
+</example_commands>
+<para>
The directory list will be added to command lines
through the automatically-generated
&cv-link-_F90INCFLAGS;
@@ -150,15 +190,17 @@ of each directory in &cv-link-F90PATH;.
Any command lines you define that need
the F90PATH directory list should
include &cv-link-_F90INCFLAGS;:
+</para>
-<example>
+<example_commands>
env = Environment(F90COM="my_compiler $_F90INCFLAGS -c -o $TARGET $SOURCE")
-</example>
+</example_commands>
</summary>
</cvar>
<cvar name="F90PPCOM">
<summary>
+<para>
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 &cv-link-F90FLAGS; and &cv-link-CPPFLAGS; construction variables
@@ -168,31 +210,37 @@ C-preprocessor command line for Fortran 90 files.
You should normally set the &cv-link-FORTRANPPCOM; variable,
which specifies the default C-preprocessor command line
for all Fortran versions.
+</para>
</summary>
</cvar>
<cvar name="F90PPCOMSTR">
<summary>
+<para>
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 &cv-link-F90PPCOM; or &cv-link-FORTRANPPCOM;
(the command line) is displayed.
+</para>
</summary>
</cvar>
<cvar name="SHF90">
<summary>
+<para>
The Fortran 90 compiler used for generating shared-library objects.
You should normally set the &cv-link-SHFORTRAN; variable,
which specifies the default Fortran compiler
for all Fortran versions.
You only need to set &cv-link-SHF90; if you need to use a specific compiler
or compiler version for Fortran 90 files.
+</para>
</summary>
</cvar>
<cvar name="SHF90COM">
<summary>
+<para>
The command line used to compile a Fortran 90 source file
to a shared-library object file.
You only need to set &cv-link-SHF90COM; if you need to use a specific
@@ -200,20 +248,24 @@ command line for Fortran 90 files.
You should normally set the &cv-link-SHFORTRANCOM; variable,
which specifies the default command line
for all Fortran versions.
+</para>
</summary>
</cvar>
<cvar name="SHF90COMSTR">
<summary>
+<para>
The string displayed when a Fortran 90 source file
is compiled to a shared-library object file.
If this is not set, then &cv-link-SHF90COM; or &cv-link-SHFORTRANCOM;
(the command line) is displayed.
+</para>
</summary>
</cvar>
<cvar name="SHF90FLAGS">
<summary>
+<para>
Options that are passed to the Fortran 90 compiler
to generated shared-library objects.
You only need to set &cv-link-SHF90FLAGS; if you need to define specific
@@ -222,11 +274,13 @@ You should normally set the &cv-link-SHFORTRANFLAGS; variable,
which specifies the user-specified options
passed to the default Fortran compiler
for all Fortran versions.
+</para>
</summary>
</cvar>
<cvar name="SHF90PPCOM">
<summary>
+<para>
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.
@@ -237,15 +291,20 @@ C-preprocessor command line for Fortran 90 files.
You should normally set the &cv-link-SHFORTRANPPCOM; variable,
which specifies the default C-preprocessor command line
for all Fortran versions.
+</para>
</summary>
</cvar>
<cvar name="SHF90PPCOMSTR">
<summary>
+<para>
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 &cv-link-SHF90PPCOM; or &cv-link-SHFORTRANPPCOM;
(the command line) is displayed.
+</para>
</summary>
</cvar>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/f95.xml b/src/engine/SCons/Tool/f95.xml
index 4c2a91a2..7c59813f 100644
--- a/src/engine/SCons/Tool/f95.xml
+++ b/src/engine/SCons/Tool/f95.xml
@@ -1,79 +1,111 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="f95">
<summary>
+<para>
Set construction variables for generic POSIX Fortran 95 compilers.
+</para>
</summary>
<sets>
-F95
-F95FLAGS
-F95COM
-F95PPCOM
-SHF95
-SHF95FLAGS
-SHF95COM
-SHF95PPCOM
-_F95INCFLAGS
+<item>F95</item>
+<item>F95FLAGS</item>
+<item>F95COM</item>
+<item>F95PPCOM</item>
+<item>SHF95</item>
+<item>SHF95FLAGS</item>
+<item>SHF95COM</item>
+<item>SHF95PPCOM</item>
+<item>_F95INCFLAGS</item>
</sets>
<uses>
-F95COMSTR
-F95PPCOMSTR
-SHF95COMSTR
-SHF95PPCOMSTR
+<item>F95COMSTR</item>
+<item>F95PPCOMSTR</item>
+<item>SHF95COMSTR</item>
+<item>SHF95PPCOMSTR</item>
</uses>
</tool>
<cvar name="F95">
<summary>
+<para>
The Fortran 95 compiler.
You should normally set the &cv-link-FORTRAN; variable,
which specifies the default Fortran compiler
for all Fortran versions.
You only need to set &cv-link-F95; if you need to use a specific compiler
or compiler version for Fortran 95 files.
+</para>
</summary>
</cvar>
<cvar name="F95COM">
<summary>
+<para>
The command line used to compile a Fortran 95 source file to an object file.
You only need to set &cv-link-F95COM; if you need to use a specific
command line for Fortran 95 files.
You should normally set the &cv-link-FORTRANCOM; variable,
which specifies the default command line
for all Fortran versions.
+</para>
</summary>
</cvar>
<cvar name="F95COMSTR">
<summary>
+<para>
The string displayed when a Fortran 95 source file
is compiled to an object file.
If this is not set, then &cv-link-F95COM; or &cv-link-FORTRANCOM;
(the command line) is displayed.
+</para>
</summary>
</cvar>
<cvar name="F95FILESUFFIXES">
<summary>
+<para>
The list of file extensions for which the F95 dialect will be used. By
default, this is ['.f95']
+</para>
</summary>
</cvar>
<cvar name="F95PPFILESUFFIXES">
<summary>
+<para>
The list of file extensions for which the compilation + preprocessor pass for
F95 dialect will be used. By default, this is empty
+</para>
</summary>
</cvar>
<cvar name="F95FLAGS">
<summary>
+<para>
General user-specified options that are passed to the Fortran 95 compiler.
Note that this variable does
<emphasis>not</emphasis>
@@ -91,11 +123,13 @@ You should normally set the &cv-link-FORTRANFLAGS; variable,
which specifies the user-specified options
passed to the default Fortran compiler
for all Fortran versions.
+</para>
</summary>
</cvar>
<cvar name="_F95INCFLAGS">
<summary>
+<para>
An automatically-generated construction variable
containing the Fortran 95 compiler command-line options
for specifying directories to be searched for include files.
@@ -103,11 +137,13 @@ The value of &cv-link-_F95INCFLAGS; is created
by appending &cv-link-INCPREFIX; and &cv-link-INCSUFFIX;
to the beginning and end
of each directory in &cv-link-F95PATH;.
+</para>
</summary>
</cvar>
<cvar name="F95PATH">
<summary>
+<para>
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
@@ -123,20 +159,24 @@ You should normally set the &cv-link-FORTRANPATH; variable,
which specifies the include path
for the default Fortran compiler
for all Fortran versions.
+</para>
-<example>
+<example_commands>
env = Environment(F95PATH='#/include')
-</example>
+</example_commands>
+<para>
The directory look-up can also be forced using the
&Dir;()
function:
+</para>
-<example>
+<example_commands>
include = Dir('include')
env = Environment(F95PATH=include)
-</example>
+</example_commands>
+<para>
The directory list will be added to command lines
through the automatically-generated
&cv-link-_F95INCFLAGS;
@@ -150,15 +190,17 @@ of each directory in &cv-link-F95PATH;.
Any command lines you define that need
the F95PATH directory list should
include &cv-link-_F95INCFLAGS;:
+</para>
-<example>
+<example_commands>
env = Environment(F95COM="my_compiler $_F95INCFLAGS -c -o $TARGET $SOURCE")
-</example>
+</example_commands>
</summary>
</cvar>
<cvar name="F95PPCOM">
<summary>
+<para>
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 &cv-link-F95FLAGS; and &cv-link-CPPFLAGS; construction variables
@@ -168,32 +210,38 @@ C-preprocessor command line for Fortran 95 files.
You should normally set the &cv-link-FORTRANPPCOM; variable,
which specifies the default C-preprocessor command line
for all Fortran versions.
+</para>
</summary>
</cvar>
<cvar name="F95PPCOMSTR">
<summary>
+<para>
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 &cv-link-F95PPCOM; or &cv-link-FORTRANPPCOM;
(the command line) is displayed.
+</para>
</summary>
</cvar>
<cvar name="SHF95">
<summary>
+<para>
The Fortran 95 compiler used for generating shared-library objects.
You should normally set the &cv-link-SHFORTRAN; variable,
which specifies the default Fortran compiler
for all Fortran versions.
You only need to set &cv-link-SHF95; if you need to use a specific compiler
or compiler version for Fortran 95 files.
+</para>
</summary>
</cvar>
<cvar name="SHF95COM">
<summary>
+<para>
The command line used to compile a Fortran 95 source file
to a shared-library object file.
You only need to set &cv-link-SHF95COM; if you need to use a specific
@@ -201,20 +249,24 @@ command line for Fortran 95 files.
You should normally set the &cv-link-SHFORTRANCOM; variable,
which specifies the default command line
for all Fortran versions.
+</para>
</summary>
</cvar>
<cvar name="SHF95COMSTR">
<summary>
+<para>
The string displayed when a Fortran 95 source file
is compiled to a shared-library object file.
If this is not set, then &cv-link-SHF95COM; or &cv-link-SHFORTRANCOM;
(the command line) is displayed.
+</para>
</summary>
</cvar>
<cvar name="SHF95FLAGS">
<summary>
+<para>
Options that are passed to the Fortran 95 compiler
to generated shared-library objects.
You only need to set &cv-link-SHF95FLAGS; if you need to define specific
@@ -223,11 +275,13 @@ You should normally set the &cv-link-SHFORTRANFLAGS; variable,
which specifies the user-specified options
passed to the default Fortran compiler
for all Fortran versions.
+</para>
</summary>
</cvar>
<cvar name="SHF95PPCOM">
<summary>
+<para>
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.
@@ -238,15 +292,20 @@ C-preprocessor command line for Fortran 95 files.
You should normally set the &cv-link-SHFORTRANPPCOM; variable,
which specifies the default C-preprocessor command line
for all Fortran versions.
+</para>
</summary>
</cvar>
<cvar name="SHF95PPCOMSTR">
<summary>
+<para>
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 &cv-link-SHF95PPCOM; or &cv-link-SHFORTRANPPCOM;
(the command line) is displayed.
+</para>
</summary>
</cvar>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/fortran.xml b/src/engine/SCons/Tool/fortran.xml
index 8d7e7000..d2d8426f 100644
--- a/src/engine/SCons/Tool/fortran.xml
+++ b/src/engine/SCons/Tool/fortran.xml
@@ -1,39 +1,63 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="fortran">
<summary>
+<para>
Set construction variables for generic POSIX Fortran compilers.
+</para>
</summary>
<sets>
-FORTRAN
-FORTRANFLAGS
-FORTRANCOM
-SHFORTRAN
-SHFORTRANFLAGS
-SHFORTRANCOM
-SHFORTRANPPCOM
+<item>FORTRAN</item>
+<item>FORTRANFLAGS</item>
+<item>FORTRANCOM</item>
+<item>SHFORTRAN</item>
+<item>SHFORTRANFLAGS</item>
+<item>SHFORTRANCOM</item>
+<item>SHFORTRANPPCOM</item>
</sets>
<uses>
-FORTRANCOMSTR
-FORTRANPPCOMSTR
-SHFORTRANCOMSTR
-SHFORTRANPPCOMSTR
+<item>FORTRANCOMSTR</item>
+<item>FORTRANPPCOMSTR</item>
+<item>SHFORTRANCOMSTR</item>
+<item>SHFORTRANPPCOMSTR</item>
</uses>
</tool>
<cvar name="FORTRAN">
<summary>
+<para>
The default Fortran compiler
for all versions of Fortran.
+</para>
</summary>
</cvar>
<cvar name="FORTRANCOM">
<summary>
+<para>
The command line used to compile a Fortran source file to an object file.
By default, any options specified
in the &cv-link-FORTRANFLAGS;,
@@ -42,34 +66,42 @@ in the &cv-link-FORTRANFLAGS;,
&cv-link-_FORTRANMODFLAG;, and
&cv-link-_FORTRANINCFLAGS; construction variables
are included on this command line.
+</para>
</summary>
</cvar>
<cvar name="FORTRANCOMSTR">
<summary>
+<para>
The string displayed when a Fortran source file
is compiled to an object file.
If this is not set, then &cv-link-FORTRANCOM;
(the command line) is displayed.
+</para>
</summary>
</cvar>
<cvar name="FORTRANFILESUFFIXES">
<summary>
+<para>
The list of file extensions for which the FORTRAN dialect will be used. By
default, this is ['.f', '.for', '.ftn']
+</para>
</summary>
</cvar>
<cvar name="FORTRANPPFILESUFFIXES">
<summary>
+<para>
The list of file extensions for which the compilation + preprocessor pass for
FORTRAN dialect will be used. By default, this is ['.fpp', '.FPP']
+</para>
</summary>
</cvar>
<cvar name="FORTRANFLAGS">
<summary>
+<para>
General user-specified options that are passed to the Fortran compiler.
Note that this variable does
<emphasis>not</emphasis>
@@ -81,11 +113,13 @@ See
&cv-link-_FORTRANINCFLAGS; and &cv-link-_FORTRANMODFLAG;,
below,
for the variables that expand those options.
+</para>
</summary>
</cvar>
<cvar name="_FORTRANINCFLAGS">
<summary>
+<para>
An automatically-generated construction variable
containing the Fortran compiler command-line options
for specifying directories to be searched for include
@@ -94,40 +128,48 @@ The value of &cv-link-_FORTRANINCFLAGS; is created
by prepending/appending &cv-link-INCPREFIX; and &cv-link-INCSUFFIX;
to the beginning and end
of each directory in &cv-link-FORTRANPATH;.
+</para>
</summary>
</cvar>
<cvar name="FORTRANMODDIR">
<summary>
+<para>
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>
</summary>
</cvar>
<cvar name="FORTRANMODDIRPREFIX">
<summary>
+<para>
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 &cv-link-FORTRANMODDIR; construction variables
when the &cv-link-_FORTRANMODFLAG; variables is automatically generated.
+</para>
</summary>
</cvar>
<cvar name="FORTRANMODDIRSUFFIX">
<summary>
+<para>
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 &cv-link-FORTRANMODDIR; construction variables
when the &cv-link-_FORTRANMODFLAG; variables is automatically generated.
+</para>
</summary>
</cvar>
<cvar name="_FORTRANMODFLAG">
<summary>
+<para>
An automatically-generated construction variable
containing the Fortran compiler command-line option
for specifying the directory location where the Fortran
@@ -137,11 +179,13 @@ The value of &cv-link-_FORTRANMODFLAG; is created
by prepending/appending &cv-link-FORTRANMODDIRPREFIX; and
&cv-link-FORTRANMODDIRSUFFIX;
to the beginning and end of the directory in &cv-link-FORTRANMODDIR;.
+</para>
</summary>
</cvar>
<cvar name="FORTRANMODPREFIX">
<summary>
+<para>
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
@@ -150,11 +194,13 @@ 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>
</summary>
</cvar>
<cvar name="FORTRANMODSUFFIX">
<summary>
+<para>
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
@@ -163,11 +209,13 @@ 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>
</summary>
</cvar>
<cvar name="FORTRANPATH">
<summary>
+<para>
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
@@ -179,20 +227,24 @@ scanner. Note: directory names in FORTRANPATH will be looked-up relative
to the SConscript directory when they are used in a command. To force
&scons;
to look-up a directory relative to the root of the source tree use #:
+</para>
-<example>
+<example_commands>
env = Environment(FORTRANPATH='#/include')
-</example>
+</example_commands>
+<para>
The directory look-up can also be forced using the
&Dir;()
function:
+</para>
-<example>
+<example_commands>
include = Dir('include')
env = Environment(FORTRANPATH=include)
-</example>
+</example_commands>
+<para>
The directory list will be added to command lines
through the automatically-generated
&cv-link-_FORTRANINCFLAGS;
@@ -206,15 +258,17 @@ of each directory in &cv-link-FORTRANPATH;.
Any command lines you define that need
the FORTRANPATH directory list should
include &cv-link-_FORTRANINCFLAGS;:
+</para>
-<example>
+<example_commands>
env = Environment(FORTRANCOM="my_compiler $_FORTRANINCFLAGS -c -o $TARGET $SOURCE")
-</example>
+</example_commands>
</summary>
</cvar>
<cvar name="FORTRANPPCOM">
<summary>
+<para>
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 &cv-link-FORTRANFLAGS;,
@@ -223,64 +277,78 @@ By default, any options specified in the &cv-link-FORTRANFLAGS;,
&cv-link-_FORTRANMODFLAG;, and
&cv-link-_FORTRANINCFLAGS;
construction variables are included on this command line.
+</para>
</summary>
</cvar>
<cvar name="FORTRANPPCOMSTR">
<summary>
+<para>
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 &cv-link-FORTRANPPCOM;
(the command line) is displayed.
+</para>
</summary>
</cvar>
<cvar name="FORTRANSUFFIXES">
<summary>
+<para>
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>
+<example_commands>
[".f", ".F", ".for", ".FOR", ".ftn", ".FTN", ".fpp", ".FPP",
".f77", ".F77", ".f90", ".F90", ".f95", ".F95"]
-</example>
+</example_commands>
</summary>
</cvar>
<cvar name="SHFORTRAN">
<summary>
+<para>
The default Fortran compiler used for generating shared-library objects.
+</para>
</summary>
</cvar>
<cvar name="SHFORTRANCOM">
<summary>
+<para>
The command line used to compile a Fortran source file
to a shared-library object file.
+</para>
</summary>
</cvar>
<cvar name="SHFORTRANCOMSTR">
<summary>
+<para>
The string displayed when a Fortran source file
is compiled to a shared-library object file.
If this is not set, then &cv-link-SHFORTRANCOM;
(the command line) is displayed.
+</para>
</summary>
</cvar>
<cvar name="SHFORTRANFLAGS">
<summary>
+<para>
Options that are passed to the Fortran compiler
to generate shared-library objects.
+</para>
</summary>
</cvar>
<cvar name="SHFORTRANPPCOM">
<summary>
+<para>
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.
@@ -288,15 +356,20 @@ Any options specified
in the &cv-link-SHFORTRANFLAGS; and
&cv-link-CPPFLAGS; construction variables
are included on this command line.
+</para>
</summary>
</cvar>
<cvar name="SHFORTRANPPCOMSTR">
<summary>
+<para>
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 &cv-link-SHFORTRANPPCOM;
(the command line) is displayed.
+</para>
</summary>
</cvar>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/g++.xml b/src/engine/SCons/Tool/g++.xml
index 79444b9a..dd524b28 100644
--- a/src/engine/SCons/Tool/g++.xml
+++ b/src/engine/SCons/Tool/g++.xml
@@ -1,18 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="g++">
<summary>
+<para>
Set construction variables for the &gXX; C++ compiler.
+</para>
</summary>
<sets>
-CXX
-SHCXXFLAGS
-<!--STATIC_AND_SHARED_OBJECTS_ARE_THE_SAME-->
-SHOBJSUFFIX
-CXXVERSION
+<item>CXX</item>
+<item>SHCXXFLAGS</item>
+<item><!--STATIC_AND_SHARED_OBJECTS_ARE_THE_SAME--></item>
+<item>SHOBJSUFFIX</item>
+<item>CXXVERSION</item>
</sets>
</tool>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/g77.xml b/src/engine/SCons/Tool/g77.xml
index 96d6f874..271c99d9 100644
--- a/src/engine/SCons/Tool/g77.xml
+++ b/src/engine/SCons/Tool/g77.xml
@@ -1,13 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="g77">
<summary>
+<para>
Set construction variables for the &g77; Fortran compiler.
Calls the &t-f77; Tool module
to set variables.
+</para>
</summary>
</tool>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/gas.xml b/src/engine/SCons/Tool/gas.xml
index 62bad7b3..a5dc74cf 100644
--- a/src/engine/SCons/Tool/gas.xml
+++ b/src/engine/SCons/Tool/gas.xml
@@ -1,15 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="gas">
<summary>
+<para>
Sets construction variables for the &gas; assembler.
Calls the &t-as; module.
+</para>
</summary>
<sets>
-AS
+<item>AS</item>
</sets>
</tool>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/gcc.xml b/src/engine/SCons/Tool/gcc.xml
index f36a5ebf..4dedcf68 100644
--- a/src/engine/SCons/Tool/gcc.xml
+++ b/src/engine/SCons/Tool/gcc.xml
@@ -1,16 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="gcc">
<summary>
+<para>
Set construction variables for the &gcc; C compiler.
+</para>
</summary>
<sets>
-CC
-SHCCFLAGS
-CCVERSION
+<item>CC</item>
+<item>SHCCFLAGS</item>
+<item>CCVERSION</item>
</sets>
</tool>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/gettext.xml b/src/engine/SCons/Tool/gettext.xml
index 3a9a78d3..4f51b1e0 100644
--- a/src/engine/SCons/Tool/gettext.xml
+++ b/src/engine/SCons/Tool/gettext.xml
@@ -1,15 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="gettext">
<summary>
+<para>
This is actually a toolset, which supports internationalization and
localization of sofware being constructed with SCons. The toolset loads
following tools:
+</para>
+<para>
<itemizedlist mark='opencircle'>
<listitem><para>
&t-link-xgettext; - to extract internationalized messages from source code to
@@ -27,30 +49,38 @@ following tools:
installable <literal>MO</literal> file.
</para></listitem>
</itemizedlist>
+</para>
+<para>
When you enable &t-gettext;, it internally loads all abovementioned tools,
so you're encouraged to see their individual documentation.
+</para>
+<para>
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
&b-Translate; described few paragraphs later.
+</para>
+<para>
To use &t-gettext; tools add <literal>'gettext'</literal> tool to your
environment:
-<example>
+</para>
+<example_commands>
env = Environment( tools = ['default', 'gettext'] )
-</example>
+</example_commands>
</summary>
<sets>
</sets>
<uses>
-<!-- PLATFORM -->
+<item><!-- PLATFORM --></item>
</uses>
</tool>
<builder name="Translate">
<summary>
+<para>
This pseudo-builder belongs to &t-link-gettext; toolset. The builder extracts
internationalized messages from source files, updates <literal>POT</literal>
template (if necessary) and then updates <literal>PO</literal> translations (if
@@ -59,42 +89,48 @@ will be automatically created (i.e. without translator person intervention).
The variables &cv-link-LINGUAS_FILE; and &cv-link-POTDOMAIN; are taken into
acount too. All other construction variables used by &b-link-POTUpdate;, and
&b-link-POUpdate; work here too.
+</para>
+<para>
<emphasis>Example 1</emphasis>.
The simplest way is to specify input files and output languages inline in
a SCons script when invoking &b-Translate;
-<example>
+</para>
+<example_commands>
# SConscript in 'po/' directory
env = Environment( tools = ["default", "gettext"] )
env['POAUTOINIT'] = 1
env.Translate(['en','pl'], ['../a.cpp','../b.cpp'])
-</example>
+</example_commands>
+<para>
<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
-<example>
+</para>
+<example_commands>
# LINGUAS
en pl
#end
-</example>
+</example_commands>
-<example>
+<example_commands>
# POTFILES.in
a.cpp
b.cpp
# end
-</example>
+</example_commands>
-<example>
+<example_commands>
# SConscript
env = Environment( tools = ["default", "gettext"] )
env['POAUTOINIT'] = 1
env['XGETTEXTPATH'] = ['../']
env.Translate(LINGUAS_FILE = 1, XGETTEXTFROM = 'POTFILES.in')
-</example>
+</example_commands>
+<para>
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
@@ -109,10 +145,13 @@ 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>
<emphasis>Example 3</emphasis>.
Let's prepare a development tree as below
-<example>
+</para>
+<example_commands>
project/
+ SConstruct
+ build/
@@ -122,29 +161,36 @@ Let's prepare a development tree as below
+ SConscript.i18n
+ POTFILES.in
+ LINGUAS
-</example>
+</example_commands>
+<para>
with <filename>build</filename> being variant directory. Write the top-level
<filename>SConstruct</filename> script as follows
-<example>
+</para>
+<example_commands>
# 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>
+</example_commands>
+<para>
the <filename>src/po/SConscript.i18n</filename> as
-<example>
+</para>
+<example_commands>
# src/po/SConscript.i18n
Import('env')
env.Translate(LINGUAS_FILE=1, XGETTEXTFROM='POTFILES.in', XGETTEXTPATH=['../'])
-</example>
+</example_commands>
+<para>
and the <filename>src/po/SConscript</filename>
-<example>
+</para>
+<example_commands>
# src/po/SConscript
Import('env')
env.MOFiles(LINGUAS_FILE = 1)
-</example>
+</example_commands>
+<para>
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
@@ -152,18 +198,22 @@ under source tree in <filename>src/po/</filename> and binary
<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>
<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>
</summary>
</builder>
<cvar name="POTDOMAIN">
<summary>
+<para>
The &cv-POTDOMAIN; defines default domain, used to generate
<literal>POT</literal> filename as <filename>&cv-POTDOMAIN;.pot</filename> when
no <literal>POT</literal> file name is provided by the user. This applies to
@@ -171,22 +221,26 @@ no <literal>POT</literal> file name is provided by the user. This applies to
builders, that use them, e.g. &b-Translate;). Normally (if &cv-POTDOMAIN; is
not defined), the builders use <filename>messages.pot</filename> as default
<literal>POT</literal> file name.
+</para>
</summary>
</cvar>
<cvar name="POAUTOINIT">
<summary>
+<para>
The &cv-POAUTOINIT; variable, if set to <literal>True</literal> (on non-zero
numeric value), let the &t-link-msginit; tool to automatically initialize
<emphasis>missing</emphasis> <literal>PO</literal> files with
<command>msginit(1)</command>. This applies to both,
&b-link-POInit; and &b-link-POUpdate; builders (and others that use any of
them).
+</para>
</summary>
</cvar>
<cvar name="LINGUAS_FILE">
<summary>
+<para>
The &cv-LINGUAS_FILE; defines file(s) containing list of additional linguas
to be processed by &b-link-POInit;, &b-link-POUpdate; or &b-link-MOFiles;
builders. It also affects &b-link-Translate; builder. If the variable contains
@@ -195,6 +249,9 @@ list of file names as well. If &cv-LINGUAS_FILE; is set to
<literal>True</literal> (or non-zero numeric value), the list will be read from
default file named
<filename>LINGUAS</filename>.
+</para>
</summary>
</cvar>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/gfortran.xml b/src/engine/SCons/Tool/gfortran.xml
index 21666ea9..7c7315ae 100644
--- a/src/engine/SCons/Tool/gfortran.xml
+++ b/src/engine/SCons/Tool/gfortran.xml
@@ -1,25 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="gfortran">
<summary>
+<para>
Sets construction variables for the GNU F95/F2003 GNU compiler.
+</para>
</summary>
<sets>
-FORTRAN
-F77
-F90
-F95
-SHFORTRAN
-SHF77
-SHF90
-SHF95
-SHFORTRANFLAGS
-SHF77FLAGS
-SHF90FLAGS
-SHF95FLAGS
+<item>FORTRAN</item>
+<item>F77</item>
+<item>F90</item>
+<item>F95</item>
+<item>SHFORTRAN</item>
+<item>SHF77</item>
+<item>SHF90</item>
+<item>SHF95</item>
+<item>SHFORTRANFLAGS</item>
+<item>SHF77FLAGS</item>
+<item>SHF90FLAGS</item>
+<item>SHF95FLAGS</item>
</sets>
</tool>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/gnulink.xml b/src/engine/SCons/Tool/gnulink.xml
index d822081d..ff7f3352 100644
--- a/src/engine/SCons/Tool/gnulink.xml
+++ b/src/engine/SCons/Tool/gnulink.xml
@@ -1,16 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="gnulink">
<summary>
+<para>
Set construction variables for GNU linker/loader.
+</para>
</summary>
<sets>
-SHLINKFLAGS
-RPATHPREFIX
-RPATHSUFFIX
+<item>SHLINKFLAGS</item>
+<item>RPATHPREFIX</item>
+<item>RPATHSUFFIX</item>
</sets>
</tool>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/gs.xml b/src/engine/SCons/Tool/gs.xml
index 2376735d..ff815f68 100644
--- a/src/engine/SCons/Tool/gs.xml
+++ b/src/engine/SCons/Tool/gs.xml
@@ -1,47 +1,78 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="gs">
<summary>
+<para>
Set construction variables for Ghostscript.
+</para>
</summary>
<sets>
-GS
-GSFLAGS
-GSCOM
+<item>GS</item>
+<item>GSFLAGS</item>
+<item>GSCOM</item>
</sets>
<uses>
-GSCOMSTR
+<item>GSCOMSTR</item>
</uses>
</tool>
<cvar name="GS">
<summary>
+<para>
The Ghostscript program used to convert PostScript to PDF files.
+</para>
</summary>
</cvar>
<cvar name="GSCOM">
<summary>
+<para>
The Ghostscript command line used to convert PostScript to PDF files.
+</para>
</summary>
</cvar>
<cvar name="GSCOMSTR">
<summary>
+<para>
The string displayed when
Ghostscript is used to convert
a PostScript file to a PDF file.
If this is not set, then &cv-link-GSCOM; (the command line) is displayed.
+</para>
</summary>
</cvar>
<cvar name="GSFLAGS">
<summary>
+<para>
General options passed to the Ghostscript program
when converting PostScript to PDF files.
+</para>
</summary>
</cvar>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/hpc++.xml b/src/engine/SCons/Tool/hpc++.xml
index 893907a6..07b3ba30 100644
--- a/src/engine/SCons/Tool/hpc++.xml
+++ b/src/engine/SCons/Tool/hpc++.xml
@@ -1,11 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="hpc++">
<summary>
+<para>
Set construction variables for the compilers aCC on HP/UX systems.
+</para>
</summary>
</tool>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/hpcc.xml b/src/engine/SCons/Tool/hpcc.xml
index 62a1ca43..1b0db05f 100644
--- a/src/engine/SCons/Tool/hpcc.xml
+++ b/src/engine/SCons/Tool/hpcc.xml
@@ -1,18 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="hpcc">
<summary>
+<para>
Set construction variables for the
<application>aCC</application> on HP/UX systems.
Calls the &t-cXX; tool for additional variables.
+</para>
</summary>
<sets>
-CXX
-SHCXXFLAGS
-CXXVERSION
+<item>CXX</item>
+<item>SHCXXFLAGS</item>
+<item>CXXVERSION</item>
</sets>
</tool>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/hplink.xml b/src/engine/SCons/Tool/hplink.xml
index 6a450179..2072844f 100644
--- a/src/engine/SCons/Tool/hplink.xml
+++ b/src/engine/SCons/Tool/hplink.xml
@@ -1,16 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="hplink">
<summary>
+<para>
Sets construction variables for the linker on HP/UX systems.
+</para>
</summary>
<sets>
-LINKFLAGS
-SHLINKFLAGS
-SHLIBSUFFIX
+<item>LINKFLAGS</item>
+<item>SHLINKFLAGS</item>
+<item>SHLIBSUFFIX</item>
</sets>
</tool>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/icc.xml b/src/engine/SCons/Tool/icc.xml
index a585f3f2..ccd8749d 100644
--- a/src/engine/SCons/Tool/icc.xml
+++ b/src/engine/SCons/Tool/icc.xml
@@ -1,30 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="icc">
<summary>
+<para>
Sets construction variables for the
<application>icc</application> compiler on OS/2 systems.
+</para>
</summary>
<sets>
-CC
-CCCOM
-CXXCOM
-CPPDEFPREFIX
-CPPDEFSUFFIX
-INCPREFIX
-INCSUFFIX
-CFILESUFFIX
-CXXFILESUFFIX
+<item>CC</item>
+<item>CCCOM</item>
+<item>CXXCOM</item>
+<item>CPPDEFPREFIX</item>
+<item>CPPDEFSUFFIX</item>
+<item>INCPREFIX</item>
+<item>INCSUFFIX</item>
+<item>CFILESUFFIX</item>
+<item>CXXFILESUFFIX</item>
</sets>
<uses>
-CFLAGS
-CCFLAGS
-CPPFLAGS
-_CPPDEFFLAGS
-_CPPINCFLAGS
+<item>CFLAGS</item>
+<item>CCFLAGS</item>
+<item>CPPFLAGS</item>
+<item>_CPPDEFFLAGS</item>
+<item>_CPPINCFLAGS</item>
</uses>
</tool>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/icl.xml b/src/engine/SCons/Tool/icl.xml
index 13b63926..a75fb5a1 100644
--- a/src/engine/SCons/Tool/icl.xml
+++ b/src/engine/SCons/Tool/icl.xml
@@ -1,12 +1,35 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="icl">
<summary>
+<para>
Sets construction variables for the Intel C/C++ compiler.
Calls the &t-intelc; Tool module to set its variables.
+</para>
</summary>
</tool>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/ifl.xml b/src/engine/SCons/Tool/ifl.xml
index 06f24275..c03bdff0 100644
--- a/src/engine/SCons/Tool/ifl.xml
+++ b/src/engine/SCons/Tool/ifl.xml
@@ -1,24 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="ifl">
<summary>
+<para>
Sets construction variables for the Intel Fortran compiler.
+</para>
</summary>
<sets>
-FORTRAN
-FORTRANCOM
-FORTRANPPCOM
-SHFORTRANCOM
-SHFORTRANPPCOM
+<item>FORTRAN</item>
+<item>FORTRANCOM</item>
+<item>FORTRANPPCOM</item>
+<item>SHFORTRANCOM</item>
+<item>SHFORTRANPPCOM</item>
</sets>
<uses>
-FORTRANFLAGS
-_FORTRANINCFLAGS
-CPPFLAGS
-_CPPDEFFLAGS
+<item>FORTRANFLAGS</item>
+<item>_FORTRANINCFLAGS</item>
+<item>CPPFLAGS</item>
+<item>_CPPDEFFLAGS</item>
</uses>
</tool>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/ifort.xml b/src/engine/SCons/Tool/ifort.xml
index 834708fe..c9b14cd8 100644
--- a/src/engine/SCons/Tool/ifort.xml
+++ b/src/engine/SCons/Tool/ifort.xml
@@ -1,26 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="ifort">
<summary>
+<para>
Sets construction variables for newer versions
of the Intel Fortran compiler for Linux.
+</para>
</summary>
<sets>
-FORTRAN
-F77
-F90
-F95
-SHFORTRAN
-SHF77
-SHF90
-SHF95
-SHFORTRANFLAGS
-SHF77FLAGS
-SHF90FLAGS
-SHF95FLAGS
+<item>FORTRAN</item>
+<item>F77</item>
+<item>F90</item>
+<item>F95</item>
+<item>SHFORTRAN</item>
+<item>SHF77</item>
+<item>SHF90</item>
+<item>SHF95</item>
+<item>SHFORTRANFLAGS</item>
+<item>SHF77FLAGS</item>
+<item>SHF90FLAGS</item>
+<item>SHF95FLAGS</item>
</sets>
</tool>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/ilink.xml b/src/engine/SCons/Tool/ilink.xml
index 2b29b30c..e0abc53f 100644
--- a/src/engine/SCons/Tool/ilink.xml
+++ b/src/engine/SCons/Tool/ilink.xml
@@ -1,23 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="ilink">
<summary>
+<para>
Sets construction variables for the
<application>ilink</application> linker on OS/2 systems.
+</para>
</summary>
<sets>
-LINK
-LINKFLAGS
-LINKCOM
-LIBDIRPREFIX
-LIBDIRSUFFIX
-LIBLINKPREFIX
-LIBLINKSUFFIX
+<item>LINK</item>
+<item>LINKFLAGS</item>
+<item>LINKCOM</item>
+<item>LIBDIRPREFIX</item>
+<item>LIBDIRSUFFIX</item>
+<item>LIBLINKPREFIX</item>
+<item>LIBLINKSUFFIX</item>
</sets>
<uses>
</uses>
</tool>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/ilink32.xml b/src/engine/SCons/Tool/ilink32.xml
index 49e868b9..e3595f70 100644
--- a/src/engine/SCons/Tool/ilink32.xml
+++ b/src/engine/SCons/Tool/ilink32.xml
@@ -1,23 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="ilink32">
<summary>
+<para>
Sets construction variables for the Borland
<application>ilink32</application> linker.
+</para>
</summary>
<sets>
-LINK
-LINKFLAGS
-LINKCOM
-LIBDIRPREFIX
-LIBDIRSUFFIX
-LIBLINKPREFIX
-LIBLINKSUFFIX
+<item>LINK</item>
+<item>LINKFLAGS</item>
+<item>LINKCOM</item>
+<item>LIBDIRPREFIX</item>
+<item>LIBDIRSUFFIX</item>
+<item>LIBLINKPREFIX</item>
+<item>LIBLINKSUFFIX</item>
</sets>
<uses>
</uses>
</tool>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/install.xml b/src/engine/SCons/Tool/install.xml
index bec592bc..d5596be6 100644
--- a/src/engine/SCons/Tool/install.xml
+++ b/src/engine/SCons/Tool/install.xml
@@ -1,3 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
@@ -5,19 +6,40 @@ This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
+
<tool name="install">
<summary>
+<para>
Sets construction variables for file
and directory installation.
+</para>
</summary>
<sets>
-INSTALL
-INSTALLSTR
+<item>INSTALL</item>
+<item>INSTALLSTR</item>
</sets>
</tool>
<builder name="Install">
<summary>
+<para>
Installs one or more source files or directories
in the specified target,
which must be a directory.
@@ -25,15 +47,17 @@ 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>
+<example_commands>
env.Install('/usr/local/bin', source = ['foo', 'bar'])
-</example>
+</example_commands>
</summary>
</builder>
<builder name="InstallAs">
<summary>
+<para>
Installs one or more source files or directories
to specific names,
allowing changing a file or directory name
@@ -43,21 +67,26 @@ target
and
source
arguments list different numbers of files or directories.
+</para>
</summary>
</builder>
<builder name="InstallVersionedLib">
<summary>
+<para>
Installs a versioned shared library. The &cv-link-SHLIBVERSION;
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>
+<example_commands>
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>
+</example_commands>
</summary>
</builder>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/intelc.xml b/src/engine/SCons/Tool/intelc.xml
index 0abc2a7e..d974bcee 100644
--- a/src/engine/SCons/Tool/intelc.xml
+++ b/src/engine/SCons/Tool/intelc.xml
@@ -1,24 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="intelc">
<summary>
+<para>
Sets construction variables for the Intel C/C++ compiler
(Linux and Windows, version 7 and later).
Calls the &t-gcc; or &t-msvc;
(on Linux and Windows, respectively)
to set underlying variables.
+</para>
</summary>
<sets>
-CC
-CXX
-LINK
-AR
-<!--LD-->
-INTEL_C_COMPILER_VERSION
+<item>CC</item>
+<item>CXX</item>
+<item>LINK</item>
+<item>AR</item>
+<item><!--LD--></item>
+<item>INTEL_C_COMPILER_VERSION</item>
</sets>
<uses>
</uses>
@@ -26,8 +47,12 @@ INTEL_C_COMPILER_VERSION
<cvar name="INTEL_C_COMPILER_VERSION">
<summary>
+<para>
Set by the "intelc" Tool
to the major version number of the Intel C compiler
selected for use.
+</para>
</summary>
</cvar>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/jar.xml b/src/engine/SCons/Tool/jar.xml
index 9e8fefac..5bd694c4 100644
--- a/src/engine/SCons/Tool/jar.xml
+++ b/src/engine/SCons/Tool/jar.xml
@@ -1,26 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="jar">
<summary>
+<para>
Sets construction variables for the &jar; utility.
+</para>
</summary>
<sets>
-JAR
-JARFLAGS
-JARCOM
-JARSUFFIX
+<item>JAR</item>
+<item>JARFLAGS</item>
+<item>JARCOM</item>
+<item>JARSUFFIX</item>
</sets>
<uses>
-JARCOMSTR
+<item>JARCOMSTR</item>
</uses>
</tool>
<builder name="Jar">
<summary>
+<para>
Builds a Java archive (<filename>.jar</filename>) file
from the specified list of sources.
Any directories in the source list
@@ -28,7 +50,9 @@ 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 &b-link-Java; Builder.
+</para>
+<para>
If the &cv-link-JARCHDIR; value is set, the
&jar;
command will change to the specified directory using the
@@ -38,7 +62,9 @@ If &cv-JARCHDIR; is not set explicitly,
&SCons; will use the top of any subdirectory tree
in which Java <filename>.class</filename>
were built by the &b-link-Java; Builder.
+</para>
+<para>
If the contents any of the source files begin with the string
<literal>Manifest-Version</literal>,
the file is assumed to be a manifest
@@ -47,64 +73,79 @@ and is passed to the
command with the
<option>m</option>
option set.
+</para>
-<example>
+<example_commands>
env.Jar(target = 'foo.jar', source = 'classes')
env.Jar(target = 'bar.jar',
source = ['bar1.java', 'bar2.java'])
-</example>
+</example_commands>
</summary>
</builder>
<cvar name="JAR">
<summary>
+<para>
The Java archive tool.
+</para>
</summary>
</cvar>
<cvar name="JARCHDIR">
<summary>
+<para>
The directory to which the Java archive tool should change
(using the
<option>-C</option>
option).
+</para>
</summary>
</cvar>
<cvar name="JARCOM">
<summary>
+<para>
The command line used to call the Java archive tool.
+</para>
</summary>
</cvar>
<cvar name="JARCOMSTR">
<summary>
+<para>
The string displayed when the Java archive tool
is called
If this is not set, then &cv-link-JARCOM; (the command line) is displayed.
+</para>
-<example>
+<example_commands>
env = Environment(JARCOMSTR = "JARchiving $SOURCES into $TARGET")
-</example>
+</example_commands>
</summary>
</cvar>
<cvar name="JARFLAGS">
<summary>
+<para>
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>
</summary>
</cvar>
<cvar name="JARSUFFIX">
<summary>
+<para>
The suffix for Java archives:
<filename>.jar</filename>
by default.
+</para>
</summary>
</cvar>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/javac.xml b/src/engine/SCons/Tool/javac.xml
index f106952b..824ad57e 100644
--- a/src/engine/SCons/Tool/javac.xml
+++ b/src/engine/SCons/Tool/javac.xml
@@ -1,36 +1,60 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="javac">
<summary>
+<para>
Sets construction variables for the &javac; compiler.
+</para>
</summary>
<sets>
-JAVAC
-JAVACFLAGS
-JAVACCOM
-JAVACLASSSUFFIX
-JAVASUFFIX
-JAVABOOTCLASSPATH
-JAVACLASSPATH
-JAVASOURCEPATH
+<item>JAVAC</item>
+<item>JAVACFLAGS</item>
+<item>JAVACCOM</item>
+<item>JAVACLASSSUFFIX</item>
+<item>JAVASUFFIX</item>
+<item>JAVABOOTCLASSPATH</item>
+<item>JAVACLASSPATH</item>
+<item>JAVASOURCEPATH</item>
</sets>
<uses>
-JAVACCOMSTR
+<item>JAVACCOMSTR</item>
</uses>
</tool>
<builder name="Java">
<summary>
+<para>
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>
SCons will parse each source <filename>.java</filename> file
to find the classes
(including inner classes)
@@ -39,7 +63,9 @@ 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>
SCons will also search each Java file
for the Java package name,
which it assumes can be found on a line
@@ -60,15 +86,19 @@ containing a package name of
will generate a corresponding
<filename>sub/dir/Foo.class</filename>
class file.
+</para>
+<para>
Examples:
+</para>
-<example>
+<example_commands>
env.Java(target = 'classes', source = 'src')
env.Java(target = 'classes', source = ['src1', 'src2'])
env.Java(target = 'classes', source = ['File1.java', 'File2.java'])
-</example>
+</example_commands>
+<para>
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,
@@ -78,16 +108,18 @@ 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>
+<example_commands>
env = Environment()
env['ENV']['LANG'] = 'en_GB.UTF-8'
-</example>
+</example_commands>
</summary>
</builder>
<cvar name="JAVABOOTCLASSPATH">
<summary>
+<para>
Specifies the list of directories that
will be added to the
&javac; command line
@@ -96,56 +128,68 @@ 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>
</summary>
</cvar>
<cvar name="JAVAC">
<summary>
+<para>
The Java compiler.
+</para>
</summary>
</cvar>
<cvar name="JAVACCOM">
<summary>
+<para>
The command line used to compile a directory tree containing
Java source files to
corresponding Java class files.
Any options specified in the &cv-link-JAVACFLAGS; construction variable
are included on this command line.
+</para>
</summary>
</cvar>
<cvar name="JAVACCOMSTR">
<summary>
+<para>
The string displayed when compiling
a directory tree of Java source files to
corresponding Java class files.
If this is not set, then &cv-link-JAVACCOM; (the command line) is displayed.
+</para>
-<example>
+<example_commands>
env = Environment(JAVACCOMSTR = "Compiling class files $TARGETS from $SOURCES")
-</example>
+</example_commands>
</summary>
</cvar>
<cvar name="JAVACFLAGS">
<summary>
+<para>
General options that are passed to the Java compiler.
+</para>
</summary>
</cvar>
<cvar name="JAVACLASSDIR">
<summary>
+<para>
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>
</summary>
</cvar>
<cvar name="JAVACLASSPATH">
<summary>
+<para>
Specifies the list of directories that
will be searched for Java
<filename>.class</filename> file.
@@ -156,25 +200,31 @@ 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>
Note that this currently just adds the specified
directory via the <option>-classpath</option> option.
&SCons; does not currently search the
&cv-JAVACLASSPATH; directories for dependency
<filename>.class</filename> files.
+</para>
</summary>
</cvar>
<cvar name="JAVACLASSSUFFIX">
<summary>
+<para>
The suffix for Java class files;
<filename>.class</filename>
by default.
+</para>
</summary>
</cvar>
<cvar name="JAVASOURCEPATH">
<summary>
+<para>
Specifies the list of directories that
will be searched for input
<filename>.java</filename> file.
@@ -185,32 +235,40 @@ 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>
Note that this currently just adds the specified
directory via the <option>-sourcepath</option> option.
&SCons; does not currently search the
&cv-JAVASOURCEPATH; directories for dependency
<filename>.java</filename> files.
+</para>
</summary>
</cvar>
<cvar name="JAVASUFFIX">
<summary>
+<para>
The suffix for Java files;
<filename>.java</filename>
by default.
+</para>
</summary>
</cvar>
<cvar name="JAVAVERSION">
<summary>
+<para>
Specifies the Java version being used by the &b-Java; 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 &javac; compiler.
The default is <literal>1.4</literal>.
+</para>
+<para>
This is sometimes necessary because
Java 1.5 changed the file names that are created
for nested anonymous inner classes,
@@ -220,5 +278,8 @@ Setting &cv-JAVAVERSION; to <literal>1.5</literal>
(or <literal>1.6</literal>, as appropriate)
can make &SCons; realize that a Java 1.5 or 1.6
build is actually up to date.
+</para>
</summary>
</cvar>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/javah.xml b/src/engine/SCons/Tool/javah.xml
index 20fe3eec..cee84767 100644
--- a/src/engine/SCons/Tool/javah.xml
+++ b/src/engine/SCons/Tool/javah.xml
@@ -1,27 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="javah">
<summary>
+<para>
Sets construction variables for the &javah; tool.
+</para>
</summary>
<sets>
-JAVAH
-JAVAHFLAGS
-JAVAHCOM
-JAVACLASSSUFFIX
+<item>JAVAH</item>
+<item>JAVAHFLAGS</item>
+<item>JAVAHCOM</item>
+<item>JAVACLASSSUFFIX</item>
</sets>
<uses>
-JAVAHCOMSTR
-JAVACLASSPATH
+<item>JAVAHCOMSTR</item>
+<item>JAVACLASSPATH</item>
</uses>
</tool>
<builder name="JavaH">
<summary>
+<para>
Builds C header and source files for
implementing Java native methods.
The target can be either a directory
@@ -35,7 +57,9 @@ by calling the &b-link-Java; builder method,
or the objects returned from the
&b-Java;
builder method.
+</para>
+<para>
If the construction variable
&cv-link-JAVACLASSDIR;
is set, either in the environment
@@ -45,10 +69,13 @@ builder method itself,
then the value of the variable
will be stripped from the
beginning of any <filename>.class</filename> file names.
+</para>
+<para>
Examples:
+</para>
-<example>
+<example_commands>
# builds java_native.h
classes = env.Java(target = 'classdir', source = 'src')
env.JavaH(target = 'java_native.h', source = classes)
@@ -61,40 +88,50 @@ env.JavaH(target = 'include',
env.JavaH(target = 'export',
source = ['classes/foo.class', 'classes/bar.class'],
JAVACLASSDIR = 'classes')
-</example>
+</example_commands>
</summary>
</builder>
<cvar name="JAVAH">
<summary>
+<para>
The Java generator for C header and stub files.
+</para>
</summary>
</cvar>
<cvar name="JAVAHCOM">
<summary>
+<para>
The command line used to generate C header and stub files
from Java classes.
Any options specified in the &cv-link-JAVAHFLAGS; construction variable
are included on this command line.
+</para>
</summary>
</cvar>
<cvar name="JAVAHCOMSTR">
<summary>
+<para>
The string displayed when C header and stub files
are generated from Java classes.
If this is not set, then &cv-link-JAVAHCOM; (the command line) is displayed.
+</para>
-<example>
+<example_commands>
env = Environment(JAVAHCOMSTR = "Generating header/stub file(s) $TARGETS from $SOURCES")
-</example>
+</example_commands>
</summary>
</cvar>
<cvar name="JAVAHFLAGS">
<summary>
+<para>
General options passed to the C header and stub file generator
for Java classes.
+</para>
</summary>
</cvar>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/latex.xml b/src/engine/SCons/Tool/latex.xml
index 56d7db50..06ce12ee 100644
--- a/src/engine/SCons/Tool/latex.xml
+++ b/src/engine/SCons/Tool/latex.xml
@@ -1,55 +1,85 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="latex">
<summary>
+<para>
Sets construction variables for the &latex; utility.
+</para>
</summary>
<sets>
-LATEX
-LATEXFLAGS
-LATEXCOM
+<item>LATEX</item>
+<item>LATEXFLAGS</item>
+<item>LATEXCOM</item>
</sets>
<uses>
-LATEXCOMSTR
+<item>LATEXCOMSTR</item>
</uses>
</tool>
<cvar name="LATEX">
<summary>
+<para>
The LaTeX structured formatter and typesetter.
+</para>
</summary>
</cvar>
<cvar name="LATEXCOM">
<summary>
+<para>
The command line used to call the LaTeX structured formatter and typesetter.
+</para>
</summary>
</cvar>
<cvar name="LATEXCOMSTR">
<summary>
+<para>
The string displayed when calling
the LaTeX structured formatter and typesetter.
If this is not set, then &cv-link-LATEXCOM; (the command line) is displayed.
+</para>
-<example>
+<example_commands>
env = Environment(LATEXCOMSTR = "Building $TARGET from LaTeX input $SOURCES")
-</example>
+</example_commands>
</summary>
</cvar>
<cvar name="LATEXFLAGS">
<summary>
+<para>
General options passed to the LaTeX structured formatter and typesetter.
+</para>
</summary>
</cvar>
<cvar name="LATEXRETRIES">
<summary>
+<para>
The maximum number of times that LaTeX
will be re-run if the
<filename>.log</filename>
@@ -57,15 +87,20 @@ generated by the &cv-link-LATEXCOM; 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>
</summary>
</cvar>
<cvar name="TEXINPUTS">
<summary>
+<para>
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>
</summary>
</cvar>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/lex.xml b/src/engine/SCons/Tool/lex.xml
index d7d86d02..19226db3 100644
--- a/src/engine/SCons/Tool/lex.xml
+++ b/src/engine/SCons/Tool/lex.xml
@@ -1,50 +1,81 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="lex">
<summary>
+<para>
Sets construction variables for the &lex; lexical analyser.
+</para>
</summary>
<sets>
-LEX
-LEXFLAGS
-LEXCOM
+<item>LEX</item>
+<item>LEXFLAGS</item>
+<item>LEXCOM</item>
</sets>
<uses>
-LEXCOMSTR
+<item>LEXCOMSTR</item>
</uses>
</tool>
<cvar name="LEX">
<summary>
+<para>
The lexical analyzer generator.
+</para>
</summary>
</cvar>
<cvar name="LEXCOM">
<summary>
+<para>
The command line used to call the lexical analyzer generator
to generate a source file.
+</para>
</summary>
</cvar>
<cvar name="LEXCOMSTR">
<summary>
+<para>
The string displayed when generating a source file
using the lexical analyzer generator.
If this is not set, then &cv-link-LEXCOM; (the command line) is displayed.
+</para>
-<example>
+<example_commands>
env = Environment(LEXCOMSTR = "Lex'ing $TARGET from $SOURCES")
-</example>
+</example_commands>
</summary>
</cvar>
<cvar name="LEXFLAGS">
<summary>
+<para>
General options passed to the lexical analyzer generator.
+</para>
</summary>
</cvar>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/link.xml b/src/engine/SCons/Tool/link.xml
index e8ca1dbb..09163021 100644
--- a/src/engine/SCons/Tool/link.xml
+++ b/src/engine/SCons/Tool/link.xml
@@ -1,112 +1,152 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="link">
<summary>
+<para>
Sets construction variables for generic POSIX linkers.
+</para>
</summary>
<sets>
-SHLINK
-SHLINKFLAGS
-SHLINKCOM
-LINK
-LINKFLAGS
-LINKCOM
-LIBDIRPREFIX
-LIBDIRSUFFIX
-LIBLINKPREFIX
-LIBLINKSUFFIX
-SHLIBSUFFIX
-LDMODULE
-LDMODULEPREFIX
-LDMODULESUFFIX
-LDMODULEFLAGS
-LDMODULECOM
+<item>SHLINK</item>
+<item>SHLINKFLAGS</item>
+<item>SHLINKCOM</item>
+<item>LINK</item>
+<item>LINKFLAGS</item>
+<item>LINKCOM</item>
+<item>LIBDIRPREFIX</item>
+<item>LIBDIRSUFFIX</item>
+<item>LIBLINKPREFIX</item>
+<item>LIBLINKSUFFIX</item>
+<item>SHLIBSUFFIX</item>
+<item>LDMODULE</item>
+<item>LDMODULEPREFIX</item>
+<item>LDMODULESUFFIX</item>
+<item>LDMODULEFLAGS</item>
+<item>LDMODULECOM</item>
</sets>
<uses>
-SHLINKCOMSTR
-LINKCOMSTR
-LDMODULECOMSTR
+<item>SHLINKCOMSTR</item>
+<item>LINKCOMSTR</item>
+<item>LDMODULECOMSTR</item>
</uses>
</tool>
<cvar name="LDMODULE">
<summary>
+<para>
The linker for building loadable modules.
By default, this is the same as &cv-link-SHLINK;.
+</para>
</summary>
</cvar>
<cvar name="LDMODULECOM">
<summary>
+<para>
The command line for building loadable modules.
On Mac OS X, this uses the &cv-link-LDMODULE;,
&cv-link-LDMODULEFLAGS; and
&cv-link-FRAMEWORKSFLAGS; variables.
On other systems, this is the same as &cv-link-SHLINK;.
+</para>
</summary>
</cvar>
<cvar name="LDMODULECOMSTR">
<summary>
+<para>
The string displayed when building loadable modules.
If this is not set, then &cv-link-LDMODULECOM; (the command line) is displayed.
+</para>
</summary>
</cvar>
<cvar name="LDMODULEFLAGS">
<summary>
+<para>
General user options passed to the linker for building loadable modules.
+</para>
</summary>
</cvar>
<cvar name="LDMODULEPREFIX">
<summary>
+<para>
The prefix used for loadable module file names.
On Mac OS X, this is null;
on other systems, this is
the same as &cv-link-SHLIBPREFIX;.
+</para>
</summary>
</cvar>
<cvar name="LDMODULESUFFIX">
<summary>
+<para>
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>
</summary>
</cvar>
<cvar name="LINK">
<summary>
+<para>
The linker.
+</para>
</summary>
</cvar>
<cvar name="LINKCOM">
<summary>
+<para>
The command line used to link object files into an executable.
+</para>
</summary>
</cvar>
<cvar name="LINKCOMSTR">
<summary>
+<para>
The string displayed when object files
are linked into an executable.
If this is not set, then &cv-link-LINKCOM; (the command line) is displayed.
+</para>
-<example>
+<example_commands>
env = Environment(LINKCOMSTR = "Linking $TARGET")
-</example>
+</example_commands>
</summary>
</cvar>
<cvar name="LINKFLAGS">
<summary>
+<para>
General user options passed to the linker.
Note that this variable should
<emphasis>not</emphasis>
@@ -125,34 +165,42 @@ and
&cv-link-_LIBDIRFLAGS;
above,
for the variable that expands to library search path options.
+</para>
</summary>
</cvar>
<cvar name="SHLINK">
<summary>
+<para>
The linker for programs that use shared libraries.
+</para>
</summary>
</cvar>
<cvar name="SHLINKCOM">
<summary>
+<para>
The command line used to link programs using shared libraries.
+</para>
</summary>
</cvar>
<cvar name="SHLINKCOMSTR">
<summary>
+<para>
The string displayed when programs using shared libraries are linked.
If this is not set, then &cv-link-SHLINKCOM; (the command line) is displayed.
+</para>
-<example>
+<example_commands>
env = Environment(SHLINKCOMSTR = "Linking shared $TARGET")
-</example>
+</example_commands>
</summary>
</cvar>
<cvar name="SHLINKFLAGS">
<summary>
+<para>
General user options passed to the linker for programs using shared libraries.
Note that this variable should
<emphasis>not</emphasis>
@@ -171,5 +219,8 @@ and
&cv-link-_LIBDIRFLAGS;
above,
for the variable that expands to library search path options.
+</para>
</summary>
</cvar>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/linkloc.xml b/src/engine/SCons/Tool/linkloc.xml
index e8a54f49..2665526b 100644
--- a/src/engine/SCons/Tool/linkloc.xml
+++ b/src/engine/SCons/Tool/linkloc.xml
@@ -1,31 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="linkloc">
<summary>
+<para>
Sets construction variables for the
<application>LinkLoc</application>
linker for the Phar Lap ETS embedded operating system.
+</para>
</summary>
<sets>
-<!--SUBST_CMD_FILE-->
-SHLINK
-SHLINKFLAGS
-SHLINKCOM
-<!--SHLINKEMITTER-->
-LINK
-LINKFLAGS
-LINKCOM
-LIBDIRPREFIX
-LIBDIRSUFFIX
-LIBLINKPREFIX
-LIBLINKSUFFIX
+<item><!--SUBST_CMD_FILE--></item>
+<item>SHLINK</item>
+<item>SHLINKFLAGS</item>
+<item>SHLINKCOM</item>
+<item><!--SHLINKEMITTER--></item>
+<item>LINK</item>
+<item>LINKFLAGS</item>
+<item>LINKCOM</item>
+<item>LIBDIRPREFIX</item>
+<item>LIBDIRSUFFIX</item>
+<item>LIBLINKPREFIX</item>
+<item>LIBLINKSUFFIX</item>
</sets>
<uses>
-SHLINKCOMSTR
-LINKCOMSTR
+<item>SHLINKCOMSTR</item>
+<item>LINKCOMSTR</item>
</uses>
</tool>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/m4.xml b/src/engine/SCons/Tool/m4.xml
index 63d16bee..da174943 100644
--- a/src/engine/SCons/Tool/m4.xml
+++ b/src/engine/SCons/Tool/m4.xml
@@ -1,25 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="m4">
<summary>
+<para>
Sets construction variables for the &m4; macro processor.
+</para>
</summary>
<sets>
-M4
-M4FLAGS
-M4COM
+<item>M4</item>
+<item>M4FLAGS</item>
+<item>M4COM</item>
</sets>
<uses>
-M4COMSTR
+<item>M4COMSTR</item>
</uses>
</tool>
<builder name="M4">
<summary>
+<para>
Builds an output file from an M4 input file.
This uses a default &cv-link-M4FLAGS; value of
<option>-E</option>,
@@ -27,35 +49,46 @@ which considers all warnings to be fatal
and stops on the first warning
when using the GNU version of m4.
Example:
+</para>
-<example>
+<example_commands>
env.M4(target = 'foo.c', source = 'foo.c.m4')
-</example>
+</example_commands>
</summary>
</builder>
<cvar name="M4">
<summary>
+<para>
The M4 macro preprocessor.
+</para>
</summary>
</cvar>
<cvar name="M4COM">
<summary>
+<para>
The command line used to pass files through the M4 macro preprocessor.
+</para>
</summary>
</cvar>
<cvar name="M4COMSTR">
<summary>
+<para>
The string displayed when
a file is passed through the M4 macro preprocessor.
If this is not set, then &cv-link-M4COM; (the command line) is displayed.
+</para>
</summary>
</cvar>
<cvar name="M4FLAGS">
<summary>
+<para>
General options passed to the M4 macro preprocessor.
+</para>
</summary>
</cvar>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/masm.xml b/src/engine/SCons/Tool/masm.xml
index 614da1fc..1f15d3f3 100644
--- a/src/engine/SCons/Tool/masm.xml
+++ b/src/engine/SCons/Tool/masm.xml
@@ -1,26 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="masm">
<summary>
+<para>
Sets construction variables for the Microsoft assembler.
+</para>
</summary>
<sets>
-AS
-ASFLAGS
-ASPPFLAGS
-ASCOM
-ASPPCOM
-<!--STATIC_AND_SHARED_OBJECTS_ARE_THE_SAME-->
+<item>AS</item>
+<item>ASFLAGS</item>
+<item>ASPPFLAGS</item>
+<item>ASCOM</item>
+<item>ASPPCOM</item>
+<item><!--STATIC_AND_SHARED_OBJECTS_ARE_THE_SAME--></item>
</sets>
<uses>
-ASCOMSTR
-ASPPCOMSTR
-CPPFLAGS
-_CPPDEFFLAGS
-_CPPINCFLAGS
+<item>ASCOMSTR</item>
+<item>ASPPCOMSTR</item>
+<item>CPPFLAGS</item>
+<item>_CPPDEFFLAGS</item>
+<item>_CPPINCFLAGS</item>
</uses>
</tool>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/midl.xml b/src/engine/SCons/Tool/midl.xml
index 2698aa69..3dda7a96 100644
--- a/src/engine/SCons/Tool/midl.xml
+++ b/src/engine/SCons/Tool/midl.xml
@@ -1,36 +1,60 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="midl">
<summary>
+<para>
Sets construction variables for the Microsoft IDL compiler.
+</para>
</summary>
<sets>
-MIDL
-MIDLFLAGS
-MIDLCOM
+<item>MIDL</item>
+<item>MIDLFLAGS</item>
+<item>MIDLCOM</item>
</sets>
<uses>
-MIDLCOMSTR
+<item>MIDLCOMSTR</item>
</uses>
</tool>
<builder name="TypeLibrary">
<summary>
+<para>
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>
+<example_commands>
env.TypeLibrary(source="foo.idl")
-</example>
+</example_commands>
+<para>
Will create <filename>foo.tlb</filename>,
<filename>foo.h</filename>,
<filename>foo_i.c</filename>,
@@ -38,31 +62,42 @@ Will create <filename>foo.tlb</filename>,
and
<filename>foo_data.c</filename>
files.
+</para>
</summary>
</builder>
<cvar name="MIDL">
<summary>
+<para>
The Microsoft IDL compiler.
+</para>
</summary>
</cvar>
<cvar name="MIDLCOM">
<summary>
+<para>
The command line used to pass files to the Microsoft IDL compiler.
+</para>
</summary>
</cvar>
<cvar name="MIDLCOMSTR">
<summary>
+<para>
The string displayed when
the Microsoft IDL copmiler is called.
If this is not set, then &cv-link-MIDLCOM; (the command line) is displayed.
+</para>
</summary>
</cvar>
<cvar name="MIDLFLAGS">
<summary>
+<para>
General options passed to the Microsoft IDL compiler.
+</para>
</summary>
</cvar>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/mingw.xml b/src/engine/SCons/Tool/mingw.xml
index f3354c19..1253271b 100644
--- a/src/engine/SCons/Tool/mingw.xml
+++ b/src/engine/SCons/Tool/mingw.xml
@@ -1,38 +1,61 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="mingw">
<summary>
+<para>
Sets construction variables for MinGW (Minimal Gnu on Windows).
+</para>
</summary>
<sets>
-CC
-SHCCFLAGS
-CXX
-SHCXXFLAGS
-SHLINKFLAGS
-SHLINKCOM
-LDMODULECOM
-AS
-WINDOWSDEFPREFIX
-WINDOWSDEFSUFFIX
-SHOBJSUFFIX
-<!--STATIC_AND_SHARED_OBJECTS_ARE_THE_SAME-->
-RC
-RCFLAGS
-RCINCFLAGS
-RCINCPREFIX
-RCINCSUFFIX
-RCCOM
-OBJSUFFIX
-LIBPREFIX
-LIBSUFFIX
+<item>CC</item>
+<item>SHCCFLAGS</item>
+<item>CXX</item>
+<item>SHCXXFLAGS</item>
+<item>SHLINKFLAGS</item>
+<item>SHLINKCOM</item>
+<item>LDMODULECOM</item>
+<item>AS</item>
+<item>WINDOWSDEFPREFIX</item>
+<item>WINDOWSDEFSUFFIX</item>
+<item>SHOBJSUFFIX</item>
+<item><!--STATIC_AND_SHARED_OBJECTS_ARE_THE_SAME--></item>
+<item>RC</item>
+<item>RCFLAGS</item>
+<item>RCINCFLAGS</item>
+<item>RCINCPREFIX</item>
+<item>RCINCSUFFIX</item>
+<item>RCCOM</item>
+<item>OBJSUFFIX</item>
+<item>LIBPREFIX</item>
+<item>LIBSUFFIX</item>
</sets>
<uses>
-SHLINKCOMSTR
-RCCOMSTR
+<item>SHLINKCOMSTR</item>
+<item>RCCOMSTR</item>
</uses>
</tool>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/msgfmt.xml b/src/engine/SCons/Tool/msgfmt.xml
index 3c5db8f8..94298d1a 100644
--- a/src/engine/SCons/Tool/msgfmt.xml
+++ b/src/engine/SCons/Tool/msgfmt.xml
@@ -1,102 +1,145 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="msgfmt">
<summary>
+<para>
This scons tool is a part of scons &t-link-gettext; 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>
</summary>
<sets>
-MOSUFFIX
-MSGFMT
-MSGFMTCOM
-MSGFMTCOMSTR
-MSGFMTFLAGS
-POSUFFIX
+<item>MOSUFFIX</item>
+<item>MSGFMT</item>
+<item>MSGFMTCOM</item>
+<item>MSGFMTCOMSTR</item>
+<item>MSGFMTFLAGS</item>
+<item>POSUFFIX</item>
</sets>
<uses>
-LINGUAS_FILE
+<item>LINGUAS_FILE</item>
</uses>
</tool>
<builder name="MOFiles">
<summary>
+<para>
This builder belongs to &t-link-msgfmt; tool. The builder compiles
<literal>PO</literal> files to <literal>MO</literal> files.
+</para>
+<para>
<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>:
-<example>
+</para>
+<example_commands>
# ...
env.MOFiles(['pl', 'en'])
-</example>
+</example_commands>
+<para>
<emphasis>Example 2</emphasis>.
Compile files for languages defined in <filename>LINGUAS</filename> file:
-<example>
+</para>
+<example_commands>
# ...
env.MOFiles(LINGUAS_FILE = 1)
-</example>
+</example_commands>
+<para>
<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:
-<example>
+</para>
+<example_commands>
# ...
env.MOFiles(['pl', 'en'], LINGUAS_FILE = 1)
-</example>
+</example_commands>
+<para>
<emphasis>Example 4</emphasis>.
Compile files for languages defined in <filename>LINGUAS</filename> file
(another version):
-<example>
+</para>
+<example_commands>
# ...
env['LINGUAS_FILE'] = 1
env.MOFiles()
-</example>
+</example_commands>
</summary>
</builder>
<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
<cvar name="MOSUFFIX">
<summary>
+<para>
Suffix used for <literal>MO</literal> files (default: <literal>'.mo'</literal>).
See &t-link-msgfmt; tool and &b-link-MOFiles; builder.
+</para>
</summary>
</cvar>
<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
<cvar name="MSGFMT">
<summary>
+<para>
Absolute path to <command>msgfmt(1)</command> binary, found by
<function>Detect()</function>.
See &t-link-msgfmt; tool and &b-link-MOFiles; builder.
+</para>
</summary>
</cvar>
<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
<cvar name="MSGFMTCOM">
<summary>
+<para>
Complete command line to run <command>msgfmt(1)</command> program.
See &t-link-msgfmt; tool and &b-link-MOFiles; builder.
+</para>
</summary>
</cvar>
<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
<cvar name="MSGFMTCOMSTR">
<summary>
+<para>
String to display when <command>msgfmt(1)</command> is invoked
(default: <literal>''</literal>, which means ``print &cv-link-MSGFMTCOM;'').
See &t-link-msgfmt; tool and &b-link-MOFiles; builder.
+</para>
</summary>
</cvar>
<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
<cvar name="MSGFMTFLAGS">
<summary>
+<para>
Additional flags to <command>msgfmt(1)</command>.
See &t-link-msgfmt; tool and &b-link-MOFiles; builder.
+</para>
</summary>
</cvar>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/msginit.xml b/src/engine/SCons/Tool/msginit.xml
index 612b9d9a..c278b9d5 100644
--- a/src/engine/SCons/Tool/msginit.xml
+++ b/src/engine/SCons/Tool/msginit.xml
@@ -1,36 +1,58 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="msginit">
<summary>
+<para>
This scons tool is a part of scons &t-link-gettext; 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>
</summary>
<sets>
-MSGINIT
-MSGINITCOM
-MSGINITCOMSTR
-MSGINITFLAGS
-POAUTOINIT
-POCREATE_ALIAS
-POSUFFIX
-POTSUFFIX
-_MSGINITLOCALE
+<item>MSGINIT</item>
+<item>MSGINITCOM</item>
+<item>MSGINITCOMSTR</item>
+<item>MSGINITFLAGS</item>
+<item>POAUTOINIT</item>
+<item>POCREATE_ALIAS</item>
+<item>POSUFFIX</item>
+<item>POTSUFFIX</item>
+<item>_MSGINITLOCALE</item>
</sets>
<uses>
-POTDOMAIN
-LINGUAS_FILE
-POAUTOINIT
+<item>POTDOMAIN</item>
+<item>LINGUAS_FILE</item>
+<item>POAUTOINIT</item>
</uses>
</tool>
<builder name="POInit">
<summary>
+<para>
This builder belongs to &t-link-msginit; tool. The builder initializes missing
<literal>PO</literal> file(s) if &cv-link-POAUTOINIT; is set. If
&cv-link-POAUTOINIT; is not set (default), &b-POInit; prints instruction for
@@ -42,127 +64,160 @@ instead</emphasis>. &b-link-POUpdate; chooses intelligently between
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>
Target nodes defined through &b-POInit; 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 &cv-link-POCREATE_ALIAS;
construction variable. All <literal>PO</literal> files defined through
&b-POInit; may be easily initialized by <command>scons po-create</command>.
+</para>
+<para>
<emphasis>Example 1</emphasis>.
Initialize <filename>en.po</filename> and <filename>pl.po</filename> from
<filename>messages.pot</filename>:
-<example>
+</para>
+<example_commands>
# ...
env.POInit(['en', 'pl']) # messages.pot --&gt; [en.po, pl.po]
-</example>
+</example_commands>
+<para>
<emphasis>Example 2</emphasis>.
Initialize <filename>en.po</filename> and <filename>pl.po</filename> from
<filename>foo.pot</filename>:
-<example>
+</para>
+<example_commands>
# ...
env.POInit(['en', 'pl'], ['foo']) # foo.pot --&gt; [en.po, pl.po]
-</example>
+</example_commands>
+<para>
<emphasis>Example 3</emphasis>.
Initialize <filename>en.po</filename> and <filename>pl.po</filename> from
<filename>foo.pot</filename> but using &cv-link-POTDOMAIN; construction
variable:
-<example>
+</para>
+<example_commands>
# ...
env.POInit(['en', 'pl'], POTDOMAIN='foo') # foo.pot --&gt; [en.po, pl.po]
-</example>
+</example_commands>
+<para>
<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>:
-<example>
+</para>
+<example_commands>
# ...
env.POInit(LINGUAS_FILE = 1) # needs 'LINGUAS' file
-</example>
+</example_commands>
+<para>
<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>:
-<example>
+</para>
+<example_commands>
# ...
env.POInit(['en', 'pl'], LINGUAS_FILE = 1)
-</example>
+</example_commands>
+<para>
<emphasis>Example 6</emphasis>.
You may preconfigure your environment first, and then initialize
<literal>PO</literal> files:
-<example>
+</para>
+<example_commands>
# ...
env['POAUTOINIT'] = 1
env['LINGUAS_FILE'] = 1
env['POTDOMAIN'] = 'foo'
env.POInit()
-</example>
+</example_commands>
+<para>
which has same efect as:
-<example>
+</para>
+<example_commands>
# ...
env.POInit(POAUTOINIT = 1, LINGUAS_FILE = 1, POTDOMAIN = 'foo')
-</example>
+</example_commands>
</summary>
</builder>
<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
<cvar name="POCREATE_ALIAS">
<summary>
+<para>
Common alias for all <literal>PO</literal> files created with &b-POInit;
builder (default: <literal>'po-create'</literal>).
See &t-link-msginit; tool and &b-link-POInit; builder.
+</para>
</summary>
</cvar>
<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
<cvar name="POSUFFIX">
<summary>
+<para>
Suffix used for <literal>PO</literal> files (default: <literal>'.po'</literal>)
See &t-link-msginit; tool and &b-link-POInit; builder.
+</para>
</summary>
</cvar>
<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
<cvar name="MSGINIT">
<summary>
+<para>
Path to <command>msginit(1)</command> program (found via
<literal>Detect()</literal>).
See &t-link-msginit; tool and &b-link-POInit; builder.
+</para>
</summary>
</cvar>
<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
<cvar name="MSGINITCOM">
<summary>
+<para>
Complete command line to run <command>msginit(1)</command> program.
See &t-link-msginit; tool and &b-link-POInit; builder.
+</para>
</summary>
</cvar>
<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
<cvar name="MSGINITCOMSTR">
<summary>
+<para>
String to display when <command>msginit(1)</command> is invoked
(default: <literal>''</literal>, which means ``print &cv-link-MSGINITCOM;'').
See &t-link-msginit; tool and &b-link-POInit; builder.
+</para>
</summary>
</cvar>
<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
<cvar name="MSGINITFLAGS">
<summary>
+<para>
List of additional flags to <command>msginit(1)</command> (default:
<literal>[]</literal>).
See &t-link-msginit; tool and &b-link-POInit; builder.
+</para>
</summary>
</cvar>
<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
<cvar name="_MSGINITLOCALE">
<summary>
+<para>
Internal ``macro''. Computes locale (language) name based on target filename
(default: <literal>'${TARGET.filebase}' </literal>).
+</para>
</summary>
See &t-link-msginit; tool and &b-link-POInit; builder.
</cvar>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/msgmerge.xml b/src/engine/SCons/Tool/msgmerge.xml
index 69c848b5..1cbbc062 100644
--- a/src/engine/SCons/Tool/msgmerge.xml
+++ b/src/engine/SCons/Tool/msgmerge.xml
@@ -1,33 +1,55 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="msgmerge">
<summary>
+<para>
This scons tool is a part of scons &t-link-gettext; toolset. It provides
scons interface to <command>msgmerge(1)</command> command, which merges two
Uniform style <filename>.po</filename> files together.
+</para>
</summary>
<sets>
-MSGMERGE
-MSGMERGECOM
-MSGMERGECOMSTR
-MSGMERGEFLAGS
-POSUFFIX
-POTSUFFIX
-POUPDATE_ALIAS
+<item>MSGMERGE</item>
+<item>MSGMERGECOM </item>
+<item>MSGMERGECOMSTR</item>
+<item>MSGMERGEFLAGS</item>
+<item>POSUFFIX </item>
+<item>POTSUFFIX</item>
+<item>POUPDATE_ALIAS</item>
</sets>
<uses>
-POTDOMAIN
-LINGUAS_FILE
-POAUTOINIT
+<item>POTDOMAIN</item>
+<item>LINGUAS_FILE</item>
+<item>POAUTOINIT</item>
</uses>
</tool>
<builder name="POUpdate">
<summary>
+<para>
The builder belongs to &t-link-msgmerge; 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
@@ -35,7 +57,9 @@ missing <literal>PO</literal> files as described in documentation of
&cv-link-POAUTOINIT;). Note, that &b-POUpdate; <emphasis>does not add its
targets to <literal>po-create</literal> alias</emphasis> as &b-link-POInit;
does.
+</para>
+<para>
Target nodes defined through &b-POUpdate; 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>
@@ -43,77 +67,94 @@ they are added automatically to special <literal>Alias</literal>
through the &cv-link-POUPDATE_ALIAS; construction variable. You can easilly
update <literal>PO</literal> files in your project by <command>scons
po-update</command>.
+</para>
+<para>
<emphasis>Example 1.</emphasis>
Update <filename>en.po</filename> and <filename>pl.po</filename> from
<filename>messages.pot</filename> template (see also &cv-link-POTDOMAIN;),
assuming that the later one exists or there is rule to build it (see
&b-link-POTUpdate;):
-<example>
+</para>
+<example_commands>
# ...
env.POUpdate(['en','pl']) # messages.pot --&gt; [en.po, pl.po]
-</example>
+</example_commands>
+<para>
<emphasis>Example 2.</emphasis>
Update <filename>en.po</filename> and <filename>pl.po</filename> from
<filename>foo.pot</filename> template:
-<example>
+</para>
+<example_commands>
# ...
env.POUpdate(['en', 'pl'], ['foo']) # foo.pot --&gt; [en.po, pl.pl]
-</example>
+</example_commands>
+<para>
<emphasis>Example 3.</emphasis>
Update <filename>en.po</filename> and <filename>pl.po</filename> from
<filename>foo.pot</filename> (another version):
-<example>
+</para>
+<example_commands>
# ...
env.POUpdate(['en', 'pl'], POTDOMAIN='foo') # foo.pot -- &gt; [en.po, pl.pl]
-</example>
+</example_commands>
+<para>
<emphasis>Example 4.</emphasis>
Update files for languages defined in <filename>LINGUAS</filename> file. The
files are updated from <filename>messages.pot</filename> template:
-<example>
+</para>
+<example_commands>
# ...
env.POUpdate(LINGUAS_FILE = 1) # needs 'LINGUAS' file
-</example>
+</example_commands>
+<para>
<emphasis>Example 5.</emphasis>
Same as above, but update from <filename>foo.pot</filename> template:
-<example>
+</para>
+<example_commands>
# ...
env.POUpdate(LINGUAS_FILE = 1, source = ['foo'])
-</example>
+</example_commands>
+<para>
<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:
-<example>
+</para>
+<example_commands>
# produce 'en.po', 'pl.po' + files defined in 'LINGUAS':
env.POUpdate(['en', 'pl' ], LINGUAS_FILE = 1)
-</example>
+</example_commands>
+<para>
<emphasis>Example 7.</emphasis>
Use &cv-link-POAUTOINIT; to automatically initialize <literal>PO</literal> file
if it doesn't exist:
-<example>
+</para>
+<example_commands>
# ...
env.POUpdate(LINGUAS_FILE = 1, POAUTOINIT = 1)
-</example>
+</example_commands>
+<para>
<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.
-<example>
+</para>
+<example_commands>
# ...
env['POAUTOINIT'] = 1
env['LINGUAS_FILE'] = 1
env['POTDOMAIN'] = 'foo'
env.POUpdate()
-</example>
+</example_commands>
</summary>
</builder>
@@ -121,38 +162,50 @@ pre-configured via environment.
<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
<cvar name="POUPDATE_ALIAS">
<summary>
+<para>
Common alias for all <literal>PO</literal> files being defined with
&b-link-POUpdate; builder (default: <literal>'po-update'</literal>).
See &t-link-msgmerge; tool and &b-link-POUpdate; builder.
+</para>
</summary>
</cvar>
<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
<cvar name="MSGMERGE">
<summary>
+<para>
Absolute path to <command>msgmerge(1)</command> binary as found by
<function>Detect()</function>.
See &t-link-msgmerge; tool and &b-link-POUpdate; builder.
+</para>
</summary>
</cvar>
<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
<cvar name="MSGMERGECOM">
<summary>
+<para>
Complete command line to run <command>msgmerge(1)</command> command.
See &t-link-msgmerge; tool and &b-link-POUpdate; builder.
+</para>
</summary>
</cvar>
<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
<cvar name="MSGMERGECOMSTR">
<summary>
+<para>
String to be displayed when <command>msgmerge(1)</command> is invoked
(default: <literal>''</literal>, which means ``print &cv-link-MSGMERGECOM;'').
See &t-link-msgmerge; tool and &b-link-POUpdate; builder.
+</para>
</summary>
</cvar>
<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
<cvar name="MSGMERGEFLAGS">
<summary>
+<para>
Additional flags to <command>msgmerge(1)</command> command.
See &t-link-msgmerge; tool and &b-link-POUpdate; builder.
+</para>
</summary>
</cvar>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/mslib.xml b/src/engine/SCons/Tool/mslib.xml
index 014ca9b5..9efe9016 100644
--- a/src/engine/SCons/Tool/mslib.xml
+++ b/src/engine/SCons/Tool/mslib.xml
@@ -1,23 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="mslib">
<summary>
+<para>
Sets construction variables for the Microsoft
<application>mslib</application>
library archiver.
+</para>
</summary>
<sets>
-AR
-ARFLAGS
-ARCOM
-LIBPREFIX
-LIBSUFFIX
+<item>AR</item>
+<item>ARFLAGS</item>
+<item>ARCOM</item>
+<item>LIBPREFIX</item>
+<item>LIBSUFFIX</item>
</sets>
<uses>
-ARCOMSTR
+<item>ARCOMSTR</item>
</uses>
</tool>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/mslink.xml b/src/engine/SCons/Tool/mslink.xml
index 80c55308..e26e93c0 100644
--- a/src/engine/SCons/Tool/mslink.xml
+++ b/src/engine/SCons/Tool/mslink.xml
@@ -1,57 +1,79 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="mslink">
<summary>
+<para>
Sets construction variables for the Microsoft linker.
+</para>
</summary>
<sets>
-SHLINK
-SHLINKFLAGS
-SHLINKCOM
-LINK
-LINKFLAGS
-LINKCOM
-LIBDIRPREFIX
-LIBDIRSUFFIX
-LIBLINKPREFIX
-LIBLINKSUFFIX
-WIN32DEFPREFIX
-WIN32DEFSUFFIX
-WINDOWSDEFPREFIX
-WINDOWSDEFSUFFIX
-WINDOWS_INSERT_DEF
-WIN32EXPPREFIX
-WIN32EXPSUFFIX
-WINDOWSEXPPREFIX
-WINDOWSEXPSUFFIX
-WINDOWSSHLIBMANIFESTPREFIX
-WINDOWSSHLIBMANIFESTSUFFIX
-WINDOWSPROGMANIFESTPREFIX
-WINDOWSPROGMANIFESTSUFFIX
-<!--REGSVRACTION-->
-REGSVR
-REGSVRFLAGS
-REGSVRCOM
-LDMODULE
-LDMODULEPREFIX
-LDMODULESUFFIX
-LDMODULEFLAGS
-LDMODULECOM
+<item>SHLINK</item>
+<item>SHLINKFLAGS</item>
+<item>SHLINKCOM</item>
+<item>LINK</item>
+<item>LINKFLAGS</item>
+<item>LINKCOM</item>
+<item>LIBDIRPREFIX</item>
+<item>LIBDIRSUFFIX</item>
+<item>LIBLINKPREFIX</item>
+<item>LIBLINKSUFFIX</item>
+<item>WIN32DEFPREFIX</item>
+<item>WIN32DEFSUFFIX</item>
+<item>WINDOWSDEFPREFIX</item>
+<item>WINDOWSDEFSUFFIX</item>
+<item>WINDOWS_INSERT_DEF</item>
+<item>WIN32EXPPREFIX</item>
+<item>WIN32EXPSUFFIX</item>
+<item>WINDOWSEXPPREFIX</item>
+<item>WINDOWSEXPSUFFIX</item>
+<item>WINDOWSSHLIBMANIFESTPREFIX</item>
+<item>WINDOWSSHLIBMANIFESTSUFFIX</item>
+<item>WINDOWSPROGMANIFESTPREFIX</item>
+<item>WINDOWSPROGMANIFESTSUFFIX</item>
+<item><!--REGSVRACTION--></item>
+<item>REGSVR</item>
+<item>REGSVRFLAGS</item>
+<item>REGSVRCOM</item>
+<item>LDMODULE</item>
+<item>LDMODULEPREFIX</item>
+<item>LDMODULESUFFIX</item>
+<item>LDMODULEFLAGS</item>
+<item>LDMODULECOM</item>
</sets>
<uses>
-SHLINKCOMSTR
-LINKCOMSTR
-REGSVRCOMSTR
-LDMODULECOMSTR
+<item>SHLINKCOMSTR</item>
+<item>LINKCOMSTR</item>
+<item>REGSVRCOMSTR</item>
+<item>LDMODULECOMSTR</item>
</uses>
</tool>
<cvar name="no_import_lib">
<summary>
+<para>
When set to non-zero,
suppresses creation of a corresponding Windows static import lib by the
<literal>SharedLibrary</literal>
@@ -60,11 +82,13 @@ MinGW, Microsoft Visual Studio or Metrowerks.
This also suppresses creation
of an export (.exp) file
when using Microsoft Visual Studio.
+</para>
</summary>
</cvar>
<cvar name="PDB">
<summary>
+<para>
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++.
@@ -73,11 +97,13 @@ 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>
+<example_commands>
env['PDB'] = 'hello.pdb'
-</example>
+</example_commands>
+<para>
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
@@ -91,114 +117,144 @@ although parallel builds will no longer work.
You can generate PDB files with the <option>/Zi</option>
switch by overriding the default &cv-link-CCPDBFLAGS; variable;
see the entry for that variable for specific examples.
+</para>
</summary>
</cvar>
<cvar name="WINDOWS_EMBED_MANIFEST">
<summary>
+<para>
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 &cv-link-MT; and &cv-link-MTEXECOM; and &cv-link-MTSHLIBCOM;.
+</para>
</summary>
</cvar>
<cvar name="MT">
<summary>
+<para>
The program used on Windows systems to embed manifests into DLLs and EXEs.
See also &cv-link-WINDOWS_EMBED_MANIFEST;.
+</para>
</summary>
</cvar>
<cvar name="MTFLAGS">
<summary>
+<para>
Flags passed to the &cv-link-MT; manifest embedding program (Windows only).
+</para>
</summary>
</cvar>
<cvar name="MTEXECOM">
<summary>
+<para>
The Windows command line used to embed manifests into executables.
See also &cv-link-MTSHLIBCOM;.
+</para>
</summary>
</cvar>
<cvar name="MTSHLIBCOM">
<summary>
+<para>
The Windows command line used to embed manifests into shared libraries (DLLs).
See also &cv-link-MTEXECOM;.
+</para>
</summary>
</cvar>
<cvar name="REGSVR">
<summary>
+<para>
The program used on Windows systems
to register a newly-built DLL library
whenever the &b-SharedLibrary; builder
is passed a keyword argument of <literal>register=1</literal>.
+</para>
</summary>
</cvar>
<cvar name="REGSVRCOM">
<summary>
+<para>
The command line used on Windows systems
to register a newly-built DLL library
whenever the &b-SharedLibrary; builder
is passed a keyword argument of <literal>register=1</literal>.
+</para>
</summary>
</cvar>
<cvar name="REGSVRCOMSTR">
<summary>
+<para>
The string displayed when registering a newly-built DLL file.
If this is not set, then &cv-link-REGSVRCOM; (the command line) is displayed.
+</para>
</summary>
</cvar>
<cvar name="REGSVRFLAGS">
<summary>
+<para>
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>
</summary>
</cvar>
<cvar name="WIN32_INSERT_DEF">
<summary>
+<para>
A deprecated synonym for &cv-link-WINDOWS_INSERT_DEF;.
+</para>
</summary>
</cvar>
<cvar name="WIN32DEFPREFIX">
<summary>
+<para>
A deprecated synonym for &cv-link-WINDOWSDEFPREFIX;.
+</para>
</summary>
</cvar>
<cvar name="WIN32DEFSUFFIX">
<summary>
+<para>
A deprecated synonym for &cv-link-WINDOWSDEFSUFFIX;.
+</para>
</summary>
</cvar>
<cvar name="WIN32EXPPREFIX">
<summary>
+<para>
A deprecated synonym for &cv-link-WINDOWSEXPSUFFIX;.
+</para>
</summary>
</cvar>
<cvar name="WIN32EXPSUFFIX">
<summary>
+<para>
A deprecated synonym for &cv-link-WINDOWSEXPSUFFIX;.
+</para>
</summary>
</cvar>
<cvar name="WINDOWS_INSERT_DEF">
<summary>
+<para>
When this is set to true,
a library build of a Windows shared library
(<filename>.dll</filename> file)
@@ -207,67 +263,88 @@ 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>
</summary>
</cvar>
<cvar name="WINDOWS_INSERT_MANIFEST">
<summary>
+<para>
When this is set to true,
&scons;
will be aware of the
<filename>.manifest</filename>
files generated by Microsoft Visua C/C++ 8.
+</para>
</summary>
</cvar>
<cvar name="WINDOWSDEFPREFIX">
<summary>
+<para>
The prefix used for Windows <filename>.def</filename> file names.
+</para>
</summary>
</cvar>
<cvar name="WINDOWSDEFSUFFIX">
<summary>
+<para>
The suffix used for Windows <filename>.def</filename> file names.
+</para>
</summary>
</cvar>
<cvar name="WINDOWSEXPPREFIX">
<summary>
+<para>
The prefix used for Windows <filename>.exp</filename> file names.
+</para>
</summary>
</cvar>
<cvar name="WINDOWSEXPSUFFIX">
<summary>
+<para>
The suffix used for Windows <filename>.exp</filename> file names.
+</para>
</summary>
</cvar>
<cvar name="WINDOWSPROGMANIFESTPREFIX">
<summary>
+<para>
The prefix used for executable program <filename>.manifest</filename> files
generated by Microsoft Visual C/C++.
+</para>
</summary>
</cvar>
<cvar name="WINDOWSPROGMANIFESTSUFFIX">
<summary>
+<para>
The suffix used for executable program <filename>.manifest</filename> files
generated by Microsoft Visual C/C++.
+</para>
</summary>
</cvar>
<cvar name="WINDOWSSHLIBMANIFESTPREFIX">
<summary>
+<para>
The prefix used for shared library <filename>.manifest</filename> files
generated by Microsoft Visual C/C++.
+</para>
</summary>
</cvar>
<cvar name="WINDOWSSHLIBMANIFESTSUFFIX">
<summary>
+<para>
The suffix used for shared library <filename>.manifest</filename> files
generated by Microsoft Visual C/C++.
+</para>
</summary>
</cvar>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/mssdk.xml b/src/engine/SCons/Tool/mssdk.xml
index bdfd3947..27d37ab6 100644
--- a/src/engine/SCons/Tool/mssdk.xml
+++ b/src/engine/SCons/Tool/mssdk.xml
@@ -1,11 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="mssdk">
<summary>
+<para>
Sets variables for Microsoft Platform SDK and/or Windows SDK.
Note that unlike most other Tool modules,
mssdk does not set construction variables,
@@ -16,26 +36,30 @@ the Microsoft toolchain:
<literal>%LIB%</literal>,
<literal>%LIBPATH%</literal> and
<literal>%PATH%</literal>.
+</para>
</summary>
<sets>
</sets>
<uses>
-MSSDK_DIR
-MSSDK_VERSION
-MSVS_VERSION
+<item>MSSDK_DIR</item>
+<item>MSSDK_VERSION</item>
+<item>MSVS_VERSION</item>
</uses>
</tool>
<cvar name="MSSDK_DIR">
<summary>
+<para>
The directory containing the Microsoft SDK
(either Platform SDK or Windows SDK)
to be used for compilation.
+</para>
</summary>
</cvar>
<cvar name="MSSDK_VERSION">
<summary>
+<para>
The version string of the Microsoft SDK
(either Platform SDK or Windows SDK)
to be used for compilation.
@@ -46,5 +70,8 @@ Supported versions include
<literal>2003R2</literal>
and
<literal>2003R1</literal>.
+</para>
</summary>
</cvar>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/msvc.xml b/src/engine/SCons/Tool/msvc.xml
index c2fed869..22ed9f10 100644
--- a/src/engine/SCons/Tool/msvc.xml
+++ b/src/engine/SCons/Tool/msvc.xml
@@ -1,62 +1,84 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="msvc">
<summary>
+<para>
Sets construction variables for the Microsoft Visual C/C++ compiler.
+</para>
</summary>
<sets>
-CCPDBFLAGS
-CCPCHFLAGS
-<!--CCCOMFLAGS-->
-CC
-CCFLAGS
-CFLAGS
-CCCOM
-SHCC
-SHCCFLAGS
-SHCFLAGS
-SHCCCOM
-CXX
-CXXFLAGS
-CXXCOM
-SHCXX
-SHCXXFLAGS
-SHCXXCOM
-CPPDEFPREFIX
-CPPDEFSUFFIX
-INCPREFIX
-INCSUFFIX
-<!--STATIC_AND_SHARED_OBJECTS_ARE_THE_SAME-->
-RC
-RCFLAGS
-RCCOM
-BUILDERS
-OBJPREFIX
-OBJSUFFIX
-SHOBJPREFIX
-SHOBJSUFFIX
-CFILESUFFIX
-CXXFILESUFFIX
-PCHPDBFLAGS
-PCHCOM
+<item>CCPDBFLAGS</item>
+<item>CCPCHFLAGS</item>
+<item><!--CCCOMFLAGS--></item>
+<item>CC</item>
+<item>CCFLAGS</item>
+<item>CFLAGS</item>
+<item>CCCOM</item>
+<item>SHCC</item>
+<item>SHCCFLAGS</item>
+<item>SHCFLAGS</item>
+<item>SHCCCOM</item>
+<item>CXX</item>
+<item>CXXFLAGS</item>
+<item>CXXCOM</item>
+<item>SHCXX</item>
+<item>SHCXXFLAGS</item>
+<item>SHCXXCOM</item>
+<item>CPPDEFPREFIX</item>
+<item>CPPDEFSUFFIX</item>
+<item>INCPREFIX</item>
+<item>INCSUFFIX</item>
+<item><!--STATIC_AND_SHARED_OBJECTS_ARE_THE_SAME--></item>
+<item>RC</item>
+<item>RCFLAGS</item>
+<item>RCCOM</item>
+<item>BUILDERS</item>
+<item>OBJPREFIX</item>
+<item>OBJSUFFIX</item>
+<item>SHOBJPREFIX</item>
+<item>SHOBJSUFFIX</item>
+<item>CFILESUFFIX</item>
+<item>CXXFILESUFFIX</item>
+<item>PCHPDBFLAGS</item>
+<item>PCHCOM</item>
</sets>
<uses>
-CCCOMSTR
-SHCCCOMSTR
-CXXCOMSTR
-SHCXXCOMSTR
-PCH
-PCHSTOP
-PDB
+<item>CCCOMSTR</item>
+<item>SHCCCOMSTR</item>
+<item>CXXCOMSTR</item>
+<item>SHCXXCOMSTR</item>
+<item>PCH</item>
+<item>PCHSTOP</item>
+<item>PDB</item>
</uses>
</tool>
<builder name="PCH">
<summary>
+<para>
Builds a Microsoft Visual C++ precompiled header.
Calling this builder method
returns a list of two targets: the PCH as the first element, and the object
@@ -66,15 +88,17 @@ provided when Microsoft Visual C++ is being used as the compiler.
The PCH builder method is generally used in
conjuction with the PCH construction variable to force object files to use
the precompiled header:
+</para>
-<example>
+<example_commands>
env['PCH'] = env.PCH('StdAfx.cpp')[0]
-</example>
+</example_commands>
</summary>
</builder>
<builder name="RES">
<summary>
+<para>
Builds a Microsoft Visual C++ resource file.
This builder method is only provided
when Microsoft Visual C++ or MinGW is being used as the compiler. The
@@ -85,32 +109,38 @@ for MinGW) suffix is added to the target name if no other suffix is given.
The source
file is scanned for implicit dependencies as though it were a C file.
Example:
+</para>
-<example>
+<example_commands>
env.RES('resource.rc')
-</example>
+</example_commands>
</summary>
</builder>
<cvar name="CCPCHFLAGS">
<summary>
+<para>
Options added to the compiler command line
to support building with precompiled headers.
The default value expands expands to the appropriate
Microsoft Visual C++ command-line options
when the &cv-link-PCH; construction variable is set.
+</para>
</summary>
</cvar>
<cvar name="CCPDBFLAGS">
<summary>
+<para>
Options added to the compiler command line
to support storing debugging information in a
Microsoft Visual C++ PDB file.
The default value expands expands to appropriate
Microsoft Visual C++ command-line options
when the &cv-link-PDB; construction variable is set.
+</para>
+<para>
The Visual C++ compiler option that SCons uses by default
to generate PDB information is <option>/Z7</option>.
This works correctly with parallel (<option>-j</option>) builds
@@ -121,27 +151,33 @@ embedded into a static library.
Using the <option>/Zi</option> instead may yield improved
link-time performance,
although parallel builds will no longer work.
+</para>
+<para>
You can generate PDB files with the <option>/Zi</option>
switch by overriding the default &cv-link-CCPDBFLAGS; variable as follows:
+</para>
-<example>
+<example_commands>
env['CCPDBFLAGS'] = ['${(PDB and "/Zi /Fd%s" % File(PDB)) or ""}']
-</example>
+</example_commands>
+<para>
An alternative would be to use the <option>/Zi</option>
to put the debugging information in a separate <filename>.pdb</filename>
file for each object file by overriding
the &cv-link-CCPDBFLAGS; variable as follows:
+</para>
-<example>
+<example_commands>
env['CCPDBFLAGS'] = '/Zi /Fd${TARGET}.pdb'
-</example>
+</example_commands>
</summary>
</cvar>
<cvar name="MSVC_BATCH">
<summary>
+<para>
When set to any true value,
specifies that SCons should batch
compilation of object files
@@ -157,11 +193,13 @@ Any compilations where the object (target) file base name
(minus the <filename>.obj</filename>)
does not match the source file base name
will be compiled separately.
+</para>
</summary>
</cvar>
<cvar name="PCH">
<summary>
+<para>
The Microsoft Visual C++ precompiled header that will be used when compiling
object files. This variable is ignored by tools other than Microsoft Visual C++.
When this variable is
@@ -169,81 +207,99 @@ defined SCons will add options to the compiler command line to
cause it to use the precompiled header, and will also set up the
dependencies for the PCH file.
Example:
+</para>
-<example>
+<example_commands>
env['PCH'] = 'StdAfx.pch'
-</example>
+</example_commands>
</summary>
</cvar>
<cvar name="PCHCOM">
<summary>
+<para>
The command line used by the
&b-PCH;
builder to generated a precompiled header.
+</para>
</summary>
</cvar>
<cvar name="PCHCOMSTR">
<summary>
+<para>
The string displayed when generating a precompiled header.
If this is not set, then &cv-link-PCHCOM; (the command line) is displayed.
+</para>
</summary>
</cvar>
<cvar name="PCHPDBFLAGS">
<summary>
+<para>
A construction variable that, when expanded,
adds the <literal>/yD</literal> flag to the command line
only if the &cv-PDB; construction variable is set.
+</para>
</summary>
</cvar>
<cvar name="PCHSTOP">
<summary>
+<para>
This variable specifies how much of a source file is precompiled. This
variable is ignored by tools other than Microsoft Visual C++, or when
the PCH variable is not being used. When this variable is define it
must be a string that is the name of the header that
is included at the end of the precompiled portion of the source files, or
the empty string if the "#pragma hrdstop" construct is being used:
+</para>
-<example>
+<example_commands>
env['PCHSTOP'] = 'StdAfx.h'
-</example>
+</example_commands>
</summary>
</cvar>
<cvar name="RC">
<summary>
+<para>
The resource compiler used to build
a Microsoft Visual C++ resource file.
+</para>
</summary>
</cvar>
<cvar name="RCCOM">
<summary>
+<para>
The command line used to build
a Microsoft Visual C++ resource file.
+</para>
</summary>
</cvar>
<cvar name="RCCOMSTR">
<summary>
+<para>
The string displayed when invoking the resource compiler
to build a Microsoft Visual C++ resource file.
If this is not set, then &cv-link-RCCOM; (the command line) is displayed.
+</para>
</summary>
</cvar>
<cvar name="RCFLAGS">
<summary>
+<para>
The flags passed to the resource compiler by the RES builder.
+</para>
</summary>
</cvar>
<cvar name="RCINCFLAGS">
<summary>
+<para>
An automatically-generated construction variable
containing the command-line options
for specifying directories to be searched
@@ -252,46 +308,58 @@ The value of &cv-RCINCFLAGS; is created
by appending &cv-RCINCPREFIX; and &cv-RCINCSUFFIX;
to the beginning and end
of each directory in &cv-CPPPATH;.
+</para>
</summary>
</cvar>
<cvar name="RCINCPREFIX">
<summary>
+<para>
The prefix (flag) used to specify an include directory
on the resource compiler command line.
This will be appended to the beginning of each directory
in the &cv-CPPPATH; construction variable
when the &cv-RCINCFLAGS; variable is expanded.
+</para>
</summary>
</cvar>
<cvar name="RCINCSUFFIX">
<summary>
+<para>
The suffix used to specify an include directory
on the resource compiler command line.
This will be appended to the end of each directory
in the &cv-CPPPATH; construction variable
when the &cv-RCINCFLAGS; variable is expanded.
+</para>
</summary>
</cvar>
<cvar name="MSVC_VERSION">
<summary>
+<para>
Sets the preferred version of Microsoft Visual C/C++ to use.
+</para>
+<para>
If &cv-MSVC_VERSION; is not set, SCons will (by default) select the
latest version of Visual C/C++ installed on your system. If the
specified version isn't installed, tool initialization will fail.
This variable must be passed as an argument to the Environment()
constructor; setting it later has no effect. Set it to an unexpected
value (e.g. "XXX") to see the valid values on your system.
+</para>
</summary>
</cvar>
<cvar name="MSVC_USE_SCRIPT">
<summary>
+<para>
Use a batch script to set up Microsoft Visual Studio compiler
+</para>
+<para>
&cv-MSVC_USE_SCRIPT; overrides &cv-MSVC_VERSION; and &cv-TARGET_ARCH;.
If set to the name of a Visual Studio .bat file (e.g. vcvars.bat),
SCons will run that bat file and extract the relevant variables from
@@ -299,25 +367,33 @@ the result (typically %INCLUDE%, %LIB%, and %PATH%). Setting
MSVC_USE_SCRIPT to None bypasses the Visual Studio autodetection
entirely; use this if you are running SCons in a Visual Studio cmd
window and importing the shell's environment variables.
+</para>
</summary>
</cvar>
<cvar name="HOST_ARCH">
<summary>
+<para>
Sets the host architecture for Visual Studio compiler. If not set,
default to the detected host architecture: note that this may depend
on the python you are using.
This variable must be passed as an argument to the Environment()
constructor; setting it later has no effect.
+</para>
+<para>
Valid values are the same as for &cv-TARGET_ARCH;.
+</para>
+<para>
This is currently only used on Windows, but in the future it will be
used on other OSes as well.
+</para>
</summary>
</cvar>
<cvar name="TARGET_ARCH">
<summary>
+<para>
Sets the target architecture for Visual Studio compiler (i.e. the arch
of the binaries generated by the compiler). If not set, default to
&cv-HOST_ARCH;, or, if that is unset, to the architecture of the
@@ -327,7 +403,9 @@ This variable must be passed as an argument to the Environment()
constructor; setting it later has no effect.
This is currently only used on Windows, but in the future it will be
used on other OSes as well.
+</para>
+<para>
Valid values for Windows are
<literal>x86</literal>,
<literal>i386</literal>
@@ -339,5 +417,8 @@ Valid values for Windows are
and <literal>ia64</literal> (Itanium).
For example, if you want to compile 64-bit binaries, you would set
<literal>TARGET_ARCH='x86_64'</literal> in your SCons environment.
+</para>
</summary>
</cvar>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/msvs.xml b/src/engine/SCons/Tool/msvs.xml
index 57269e4e..93c6f6e5 100644
--- a/src/engine/SCons/Tool/msvs.xml
+++ b/src/engine/SCons/Tool/msvs.xml
@@ -1,24 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="msvs">
<summary>
+<para>
Sets construction variables for Microsoft Visual Studio.
+</para>
</summary>
<sets>
-MSVSPROJECTCOM
-MSVSSOLUTIONCOM
-MSVSSCONSCRIPT
-MSVSSCONS
-MSVSSCONSFLAGS
-MSVSSCONSCOM
-MSVSBUILDCOM
-MSVSREBUILDCOM
-MSVSCLEANCOM
-MSVSENCODING
+<item>MSVSPROJECTCOM</item>
+<item>MSVSSOLUTIONCOM</item>
+<item>MSVSSCONSCRIPT</item>
+<item>MSVSSCONS</item>
+<item>MSVSSCONSFLAGS</item>
+<item>MSVSSCONSCOM</item>
+<item>MSVSBUILDCOM</item>
+<item>MSVSREBUILDCOM</item>
+<item>MSVSCLEANCOM</item>
+<item>MSVSENCODING</item>
</sets>
<uses>
</uses>
@@ -26,9 +47,12 @@ MSVSENCODING
<builder name ="MSVSProject">
<summary>
+<para>
Builds a Microsoft Visual Studio project file,
and by default builds a solution file as well.
+</para>
+<para>
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
@@ -40,7 +64,9 @@ file.
For Visual Studio 7 (.NET) and later versions, it will generate a
<filename>.vcproj</filename>
file.
+</para>
+<para>
By default,
this also generates a solution file
for the specified project,
@@ -59,7 +85,9 @@ build the solution file(s)
by calling the
&b-MSVSSolution;
Builder (see below).
+</para>
+<para>
The &b-MSVSProject; builder
takes several lists of filenames
to be placed into the project file.
@@ -75,14 +103,20 @@ lists are added to the &cv-link-SOURCES; 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>
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>
In addition to the above lists of values,
the following values may be specified:
+</para>
+<para>
<literal>target</literal>:
The name of the target
<filename>.dsp</filename>
@@ -95,7 +129,9 @@ but the
&cv-link-MSVSPROJECTSUFFIX;
construction variable
will be defined to the correct value (see example below).
+</para>
+<para>
<literal>variant</literal>:
The name of this particular variant.
For Visual Studio 7 projects,
@@ -115,7 +151,9 @@ Multiple calls to
with different variants are allowed;
all variants will be added to the project file with their appropriate
build targets and sources.
+</para>
+<para>
<literal>buildtarget</literal>:
An optional string, node, or list of strings or nodes
(one per build variant), to tell the Visual Studio debugger
@@ -125,7 +163,9 @@ The number of
entries must match the number of
<literal>variant</literal>
entries.
+</para>
+<para>
<literal>runfile</literal>:
The name of the file that Visual Studio 7 and later
will run and debug.
@@ -136,7 +176,9 @@ If this is not specified,
the default is the same as the specified
<literal>buildtarget</literal>
value.
+</para>
+<para>
Note that because &SCons; always executes its build commands
from the directory in which the &SConstruct; file is located,
if you generate a project file in a different directory
@@ -151,10 +193,13 @@ compiler option to the &cv-link-CCFLAGS; variable
so that the compiler will print
the full path name of any
files that cause compilation errors.
+</para>
+<para>
Example usage:
+</para>
-<example>
+<example_commands>
barsrcs = ['bar.cpp'],
barincs = ['bar.h'],
barlocalincs = ['StdAfx.h']
@@ -172,14 +217,17 @@ env.MSVSProject(target = 'Bar' + env['MSVSPROJECTSUFFIX'],
misc = barmisc,
buildtarget = dll,
variant = 'Release')
-</example>
+</example_commands>
</summary>
</builder>
<builder name ="MSVSSolution">
<summary>
+<para>
Builds a Microsoft Visual Studio solution file.
+</para>
+<para>
This builds a Visual Studio solution file,
based on the version of Visual Studio that is configured
(either the latest installed version,
@@ -193,22 +241,30 @@ For Visual Studio 7 (.NET), it will
generate a
<filename>.sln</filename>
file.
+</para>
+<para>
The following values must be specified:
+</para>
+<para>
<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
&cv-link-MSVSSOLUTIONSUFFIX;
will be defined to the correct value (see example below).
+</para>
+<para>
<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>
<literal>projects</literal>:
A list of project file names, or Project nodes returned by calls to the
&b-MSVSProject;
@@ -218,86 +274,120 @@ 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>
Example Usage:
+</para>
-<example>
+<example_commands>
env.MSVSSolution(target = 'Bar' + env['MSVSSOLUTIONSUFFIX'],
projects = ['bar' + env['MSVSPROJECTSUFFIX']],
variant = 'Release')
-</example>
+</example_commands>
</summary>
</builder>
<cvar name="MSVS">
<summary>
+<para>
When the Microsoft Visual Studio tools are initialized, they set up
this dictionary with the following keys:
+</para>
+<para>
<envar>VERSION</envar>:
the version of MSVS being used (can be set via
&cv-link-MSVS_VERSION;)
+</para>
+<para>
<envar>VERSIONS</envar>:
the available versions of MSVS installed
+</para>
+<para>
<envar>VCINSTALLDIR</envar>:
installed directory of Visual C++
+</para>
+<para>
<envar>VSINSTALLDIR</envar>:
installed directory of Visual Studio
+</para>
+<para>
<envar>FRAMEWORKDIR</envar>:
installed directory of the .NET framework
+</para>
+<para>
<envar>FRAMEWORKVERSIONS</envar>:
list of installed versions of the .NET framework, sorted latest to oldest.
+</para>
+<para>
<envar>FRAMEWORKVERSION</envar>:
latest installed version of the .NET framework
+</para>
+<para>
<envar>FRAMEWORKSDKDIR</envar>:
installed location of the .NET SDK.
+</para>
+<para>
<envar>PLATFORMSDKDIR</envar>:
installed location of the Platform SDK.
+</para>
+<para>
<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>
If a value isn't set, it wasn't available in the registry.
+</para>
</summary>
</cvar>
<cvar name="MSVS_ARCH">
<summary>
+<para>
Sets the architecture for which the generated project(s) should build.
+</para>
+<para>
The default value is <literal>x86</literal>.
<literal>amd64</literal> is also supported
by &SCons; for some Visual Studio versions.
Trying to set &cv-MSVS_ARCH; to an architecture that's not
supported for a given Visual Studio version
will generate an error.
+</para>
</summary>
</cvar>
<cvar name="MSVS_PROJECT_GUID">
<summary>
+<para>
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>
</summary>
</cvar>
<cvar name="MSVS_SCC_AUX_PATH">
<summary>
+<para>
The path name
placed in a generated Microsoft Visual Studio project file
as the value of the
@@ -307,11 +397,13 @@ if the
<envar>MSVS_SCC_PROVIDER</envar>
construction variable is also set.
There is no default value.
+</para>
</summary>
</cvar>
<cvar name="MSVS_SCC_CONNECTION_ROOT">
<summary>
+<para>
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
@@ -337,11 +429,13 @@ if the
<envar>MSVS_SCC_PROVIDER</envar>
construction variable is also set.
The default value is the current working directory.
+</para>
</summary>
</cvar>
<cvar name="MSVS_SCC_PROJECT_NAME">
<summary>
+<para>
The project name
placed in a generated Microsoft Visual Studio project file
as the value of the
@@ -356,11 +450,13 @@ attribute of the
<literal>GlobalSection(SourceCodeControl)</literal>
section of the Microsoft Visual Studio solution file.
There is no default value.
+</para>
</summary>
</cvar>
<cvar name="MSVS_SCC_PROVIDER">
<summary>
+<para>
The string
placed in a generated Microsoft Visual Studio project file
as the value of the
@@ -372,13 +468,17 @@ attribute of the
<literal>GlobalSection(SourceCodeControl)</literal>
section of the Microsoft Visual Studio solution file.
There is no default value.
+</para>
</summary>
</cvar>
<cvar name="MSVS_VERSION">
<summary>
+<para>
Sets the preferred version of Microsoft Visual Studio to use.
+</para>
+<para>
If &cv-MSVS_VERSION; is not set,
&SCons; will (by default) select the latest version
of Visual Studio installed on your system.
@@ -391,48 +491,60 @@ 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>
This is obsolete: use &cv-MSVC_VERSION; instead. If &cv-MSVS_VERSION; is set and
&cv-MSVC_VERSION; is not, &cv-MSVC_VERSION; will be set automatically to &cv-MSVS_VERSION;.
If both are set to different values, scons will raise an error.
+</para>
</summary>
</cvar>
<cvar name="MSVSBUILDCOM">
<summary>
+<para>
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>
</summary>
</cvar>
<cvar name="MSVSCLEANCOM">
<summary>
+<para>
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>
</summary>
</cvar>
<cvar name="MSVSENCODING">
<summary>
+<para>
The encoding string placed in
a generated Microsoft Visual Studio project file.
The default is encoding
<literal>Windows-1252</literal>.
+</para>
</summary>
</cvar>
<cvar name="MSVSPROJECTCOM">
<summary>
+<para>
The action used to generate Microsoft Visual Studio project files.
+</para>
</summary>
</cvar>
<cvar name="MSVSPROJECTSUFFIX">
<summary>
+<para>
The suffix used for Microsoft Visual Studio project (DSP) files.
The default value is
<filename>.vcproj</filename>
@@ -441,42 +553,52 @@ or later version,
and
<filename>.dsp</filename>
when using earlier versions of Visual Studio.
+</para>
</summary>
</cvar>
<cvar name="MSVSREBUILDCOM">
<summary>
+<para>
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>
</summary>
</cvar>
<cvar name="MSVSSCONS">
<summary>
+<para>
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>
</summary>
</cvar>
<cvar name="MSVSSCONSFLAGS">
<summary>
+<para>
The SCons flags used in generated Microsoft Visual Studio
project files.
+</para>
</summary>
</cvar>
<cvar name="MSVSSCONSCOM">
<summary>
+<para>
The default SCons command used in generated Microsoft Visual Studio
project files.
+</para>
</summary>
</cvar>
<cvar name="MSVSSCONSCRIPT">
<summary>
+<para>
The sconscript file
(that is,
&SConstruct;
@@ -492,17 +614,21 @@ The default is the same sconscript file
that contains the call to
&b-MSVSProject;
to build the project file.
+</para>
</summary>
</cvar>
<cvar name="MSVSSOLUTIONCOM">
<summary>
+<para>
The action used to generate Microsoft Visual Studio solution files.
+</para>
</summary>
</cvar>
<cvar name="MSVSSOLUTIONSUFFIX">
<summary>
+<para>
The suffix used for Microsoft Visual Studio solution (DSW) files.
The default value is
<filename>.sln</filename>
@@ -510,11 +636,13 @@ when using Visual Studio version 7.x (.NET),
and
<filename>.dsw</filename>
when using earlier versions of Visual Studio.
+</para>
</summary>
</cvar>
<cvar name="SCONS_HOME">
<summary>
+<para>
The (optional) path to the SCons library directory,
initialized from the external environment.
If set, this is used to construct a shorter and more
@@ -522,5 +650,8 @@ efficient search path in the
&cv-link-MSVSSCONS;
command line executed
from Microsoft Visual Studio project files.
+</para>
</summary>
</cvar>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/mwcc.xml b/src/engine/SCons/Tool/mwcc.xml
index 5ea07ee3..2ebd31b3 100644
--- a/src/engine/SCons/Tool/mwcc.xml
+++ b/src/engine/SCons/Tool/mwcc.xml
@@ -1,53 +1,80 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="mwcc">
<summary>
+<para>
Sets construction variables for the Metrowerks CodeWarrior compiler.
+</para>
</summary>
<sets>
-MWCW_VERSIONS
-MWCW_VERSION
-<!--CCCOMFLAGS-->
-CC
-CCCOM
-CXX
-CXXCOM
-SHCC
-SHCCFLAGS
-SHCFLAGS
-SHCCCOM
-SHCXX
-SHCXXFLAGS
-SHCXXCOM
-CFILESUFFIX
-CXXFILESUFFIX
-CPPDEFPREFIX
-CPPDEFSUFFIX
-INCPREFIX
-INCSUFFIX
+<item>MWCW_VERSIONS</item>
+<item>MWCW_VERSION</item>
+<item><!--CCCOMFLAGS--></item>
+<item>CC</item>
+<item>CCCOM</item>
+<item>CXX</item>
+<item>CXXCOM</item>
+<item>SHCC</item>
+<item>SHCCFLAGS</item>
+<item>SHCFLAGS</item>
+<item>SHCCCOM</item>
+<item>SHCXX</item>
+<item>SHCXXFLAGS</item>
+<item>SHCXXCOM</item>
+<item>CFILESUFFIX</item>
+<item>CXXFILESUFFIX</item>
+<item>CPPDEFPREFIX</item>
+<item>CPPDEFSUFFIX</item>
+<item>INCPREFIX</item>
+<item>INCSUFFIX</item>
</sets>
<uses>
-CCCOMSTR
-CXXCOMSTR
-SHCCCOMSTR
-SHCXXCOMSTR
+<item>CCCOMSTR</item>
+<item>CXXCOMSTR</item>
+<item>SHCCCOMSTR</item>
+<item>SHCXXCOMSTR</item>
</uses>
</tool>
<cvar name="MWCW_VERSION">
<summary>
+<para>
The version number of the MetroWerks CodeWarrior C compiler
to be used.
+</para>
</summary>
</cvar>
<cvar name="MWCW_VERSIONS">
<summary>
+<para>
A list of installed versions of the MetroWerks CodeWarrior C compiler
on this system.
+</para>
</summary>
</cvar>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/mwld.xml b/src/engine/SCons/Tool/mwld.xml
index c2b0d635..7fbb5dde 100644
--- a/src/engine/SCons/Tool/mwld.xml
+++ b/src/engine/SCons/Tool/mwld.xml
@@ -1,27 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="mwld">
<summary>
+<para>
Sets construction variables for the Metrowerks CodeWarrior linker.
+</para>
</summary>
<sets>
-AR
-ARCOM
-LIBDIRPREFIX
-LIBDIRSUFFIX
-LIBLINKPREFIX
-LIBLINKSUFFIX
-LINK
-LINKCOM
-SHLINK
-SHLINKFLAGS
-SHLINKCOM
-<!--SHLIBEMITTER-->
+<item>AR</item>
+<item>ARCOM</item>
+<item>LIBDIRPREFIX</item>
+<item>LIBDIRSUFFIX</item>
+<item>LIBLINKPREFIX</item>
+<item>LIBLINKSUFFIX</item>
+<item>LINK</item>
+<item>LINKCOM</item>
+<item>SHLINK</item>
+<item>SHLINKFLAGS</item>
+<item>SHLINKCOM</item>
+<item><!--SHLIBEMITTER--></item>
</sets>
<uses>
</uses>
</tool>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/nasm.xml b/src/engine/SCons/Tool/nasm.xml
index d2cb5c2b..3d002091 100644
--- a/src/engine/SCons/Tool/nasm.xml
+++ b/src/engine/SCons/Tool/nasm.xml
@@ -1,23 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="nasm">
<summary>
+<para>
Sets construction variables for the
<application>nasm</application> Netwide Assembler.
+</para>
</summary>
<sets>
-AS
-ASFLAGS
-ASPPFLAGS
-ASCOM
-ASPPCOM
+<item>AS</item>
+<item>ASFLAGS</item>
+<item>ASPPFLAGS</item>
+<item>ASCOM</item>
+<item>ASPPCOM</item>
</sets>
<uses>
-ASCOMSTR
-ASPPCOMSTR
+<item>ASCOMSTR</item>
+<item>ASPPCOMSTR</item>
</uses>
</tool>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/packaging.xml b/src/engine/SCons/Tool/packaging.xml
index e2d0fb47..38efdcea 100644
--- a/src/engine/SCons/Tool/packaging.xml
+++ b/src/engine/SCons/Tool/packaging.xml
@@ -1,73 +1,110 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="packaging">
<summary>
+<para>
A framework for building binary and source packages.
+</para>
</summary>
</tool>
<builder name="Package">
<summary>
+<para>
Builds a Binary Package of the given source files.
+</para>
-<example>
+<example_commands>
env.Package(source = FindInstalledFiles())
-</example>
+</example_commands>
</summary>
</builder>
<cvar name="JAR">
<summary>
+<para>
The Java archive tool.
+</para>
</summary>
</cvar>
<cvar name="JARCHDIR">
<summary>
+<para>
The directory to which the Java archive tool should change
(using the
<option>-C</option>
option).
+</para>
</summary>
</cvar>
<cvar name="JARCOM">
<summary>
+<para>
The command line used to call the Java archive tool.
+</para>
</summary>
</cvar>
<cvar name="JARCOMSTR">
<summary>
+<para>
The string displayed when the Java archive tool
is called
If this is not set, then &cv-JARCOM; (the command line) is displayed.
+</para>
-<example>
+<example_commands>
env = Environment(JARCOMSTR = "JARchiving $SOURCES into $TARGET")
-</example>
+</example_commands>
</summary>
</cvar>
<cvar name="JARFLAGS">
<summary>
+<para>
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>
</summary>
</cvar>
<cvar name="JARSUFFIX">
<summary>
+<para>
The suffix for Java archives:
<filename>.jar</filename>
by default.
+</para>
</summary>
</cvar>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/packaging/__init__.xml b/src/engine/SCons/Tool/packaging/__init__.xml
index 246b9ec5..a9795e50 100644
--- a/src/engine/SCons/Tool/packaging/__init__.xml
+++ b/src/engine/SCons/Tool/packaging/__init__.xml
@@ -1,12 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="Packaging">
<summary>
+<para>
Sets construction variables for the &b-Package; Builder.
+</para>
</summary>
<sets>
</sets>
@@ -16,6 +37,7 @@ Sets construction variables for the &b-Package; Builder.
<builder name="Package">
<summary>
+<para>
Builds software distribution packages.
Packages consist of files to install and packaging information.
The former may be specified with the &source; parameter and may be left out,
@@ -23,18 +45,24 @@ in which case the &FindInstalledFiles; function will collect
all files that have an &b-Install; or &b-InstallAs; Builder attached.
If the &target; is not specified
it will be deduced from additional information given to this Builder.
+</para>
+<para>
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 &Tag; function.
The mandatory ones will complain if they were not specified.
They vary depending on chosen target packager.
+</para>
+<para>
The target packager may be selected with the "PACKAGETYPE" command line
option or with the &cv-PACKAGETYPE; construction variable. Currently
the following packagers available:
+</para>
+<para>
* msi - Microsoft Installer
* rpm - Redhat Package Manger
* ipkg - Itsy Package Management System
@@ -44,10 +72,13 @@ the following packagers available:
* src_tarbz2 - compressed tar source
* src_targz - compressed tar source
* src_zip - zip file source
+</para>
+<para>
An updated list is always available under the "package_type" option when
running "scons --help" on a project that has packaging activated.
-<example>
+</para>
+<example_commands>
env = Environment(tools=['default', 'packaging'])
env.Install('/bin/', 'my_program')
env.Package( NAME = 'foo',
@@ -60,12 +91,13 @@ env.Package( NAME = 'foo',
X_RPM_GROUP = 'Application/fu',
SOURCE_URL = 'http://foo.org/foo-1.2.3.tar.gz'
)
-</example>
+</example_commands>
</summary>
</builder>
<cvar name="ARCHITECTURE">
<summary>
+<para>
Specifies the system architecture for which
the package is being built.
The default is the system architecture
@@ -75,11 +107,13 @@ This is used to fill in the
field in an Ipkg
<filename>control</filename> file,
and as part of the name of a generated RPM file.
+</para>
</summary>
</cvar>
<cvar name="CHANGE_SPECFILE">
<summary>
+<para>
A hook for modifying the file that controls the packaging build
(the <filename>.spec</filename> for RPM,
the <filename>control</filename> for Ipkg,
@@ -87,65 +121,81 @@ 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>
</summary>
</cvar>
<cvar name="CHANGELOG">
<summary>
+<para>
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>
</summary>
</cvar>
<cvar name="DESCRIPTION">
<summary>
+<para>
A long description of the project being packaged.
This is included in the relevant section
of the file that controls the packaging build.
+</para>
</summary>
</cvar>
<cvar name="DESCRIPTION_lang">
<summary>
+<para>
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>
</summary>
</cvar>
<cvar name="LICENSE">
<summary>
+<para>
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>
</summary>
</cvar>
<cvar name="NAME">
<summary>
+<para>
Specfies the name of the project to package.
+</para>
</summary>
</cvar>
<cvar name="PACKAGEROOT">
<summary>
+<para>
Specifies the directory where all files in resulting archive will be
placed if applicable. The default value is "$NAME-$VERSION".
+</para>
</summary>
</cvar>
<cvar name="PACKAGETYPE">
<summary>
+<para>
Selects the package type to build. Currently these are available:
+</para>
+<para>
* msi - Microsoft Installer
* rpm - Redhat Package Manger
* ipkg - Itsy Package Management System
@@ -155,33 +205,41 @@ Selects the package type to build. Currently these are available:
* src_tarbz2 - compressed tar source
* src_targz - compressed tar source
* src_zip - zip file source
+</para>
+<para>
This may be overridden with the "package_type" command line option.
+</para>
</summary>
</cvar>
<cvar name="PACKAGEVERSION">
<summary>
+<para>
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>
</summary>
</cvar>
<cvar name="SOURCE_URL">
<summary>
+<para>
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>
</summary>
</cvar>
<cvar name="SUMMARY">
<summary>
+<para>
A short summary of what the project is about.
This is used to fill in the
<literal>Summary:</literal>
@@ -189,11 +247,13 @@ field in the controlling information for Ipkg and RPM packages,
and as the
<literal>Description:</literal>
field in MSI packages.
+</para>
</summary>
</cvar>
<cvar name="VENDOR">
<summary>
+<para>
The person or organization who supply the packaged software.
This is used to fill in the
<literal>Vendor:</literal>
@@ -201,55 +261,68 @@ field in the controlling information for RPM packages,
and the
<literal>Manufacturer:</literal>
field in the controlling information for MSI packages.
+</para>
</summary>
</cvar>
<cvar name="VERSION">
<summary>
+<para>
The version of the project, specified as a string.
+</para>
</summary>
</cvar>
<cvar name="X_IPK_DEPENDS">
<summary>
+<para>
This is used to fill in the
<literal>Depends:</literal>
field in the controlling information for Ipkg packages.
+</para>
</summary>
</cvar>
<cvar name="X_IPK_DESCRIPTION">
<summary>
+<para>
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>
</summary>
</cvar>
<cvar name="X_IPK_MAINTAINER">
<summary>
+<para>
This is used to fill in the
<literal>Maintainer:</literal>
field in the controlling information for Ipkg packages.
+</para>
</summary>
</cvar>
<cvar name="X_IPK_PRIORITY">
<summary>
+<para>
This is used to fill in the
<literal>Priority:</literal>
field in the controlling information for Ipkg packages.
+</para>
</summary>
</cvar>
<cvar name="X_IPK_SECTION">
<summary>
+<para>
This is used to fill in the
<literal>Section:</literal>
field in the controlling information for Ipkg packages.
+</para>
</summary>
</cvar>
@@ -257,127 +330,158 @@ field in the controlling information for Ipkg packages.
<cvar name="X_MSI_LANGUAGE">
<summary>
+<para>
This is used to fill in the
<literal>Language:</literal>
attribute in the controlling information for MSI packages.
+</para>
</summary>
</cvar>
<cvar name="X_MSI_LICENSE_TEXT">
<summary>
+<para>
The text of the software license in RTF format.
Carriage return characters will be
replaced with the RTF equivalent \\par.
+</para>
</summary>
</cvar>
<cvar name="X_MSI_UPGRADE_CODE">
<summary>
+<para>
TODO
+</para>
</summary>
</cvar>
<cvar name="X_RPM_AUTOREQPROV">
<summary>
+<para>
This is used to fill in the
<literal>AutoReqProv:</literal>
field in the RPM
<filename>.spec</filename> file.
+</para>
</summary>
</cvar>
<cvar name="X_RPM_BUILD">
<summary>
+<para>
internal, but overridable
+</para>
</summary>
</cvar>
<cvar name="X_RPM_BUILDREQUIRES">
<summary>
+<para>
This is used to fill in the
<literal>BuildRequires:</literal>
field in the RPM
<filename>.spec</filename> file.
+</para>
</summary>
</cvar>
<cvar name="X_RPM_BUILDROOT">
<summary>
+<para>
internal, but overridable
+</para>
</summary>
</cvar>
<cvar name="X_RPM_CLEAN">
<summary>
+<para>
internal, but overridable
+</para>
</summary>
</cvar>
<cvar name="X_RPM_CONFLICTS">
<summary>
+<para>
This is used to fill in the
<literal>Conflicts:</literal>
field in the RPM
<filename>.spec</filename> file.
+</para>
</summary>
</cvar>
<cvar name="X_RPM_DEFATTR">
<summary>
+<para>
This value is used as the default attributes
for the files in the RPM package.
The default value is
<literal>(-,root,root)</literal>.
+</para>
</summary>
</cvar>
<cvar name="X_RPM_DISTRIBUTION">
<summary>
+<para>
This is used to fill in the
<literal>Distribution:</literal>
field in the RPM
<filename>.spec</filename> file.
+</para>
</summary>
</cvar>
<cvar name="X_RPM_EPOCH">
<summary>
+<para>
This is used to fill in the
<literal>Epoch:</literal>
field in the controlling information for RPM packages.
+</para>
</summary>
</cvar>
<cvar name="X_RPM_EXCLUDEARCH">
<summary>
+<para>
This is used to fill in the
<literal>ExcludeArch:</literal>
field in the RPM
<filename>.spec</filename> file.
+</para>
</summary>
</cvar>
<cvar name="X_RPM_EXLUSIVEARCH">
<summary>
+<para>
This is used to fill in the
<literal>ExclusiveArch:</literal>
field in the RPM
<filename>.spec</filename> file.
+</para>
</summary>
</cvar>
<cvar name="X_RPM_GROUP">
<summary>
+<para>
This is used to fill in the
<literal>Group:</literal>
field in the RPM
<filename>.spec</filename> file.
+</para>
</summary>
</cvar>
<cvar name="X_RPM_GROUP_lang">
<summary>
+<para>
This is used to fill in the
<literal>Group(lang):</literal>
field in the RPM
@@ -387,117 +491,144 @@ Note that
is not literal
and should be replaced by
the appropriate language code.
+</para>
</summary>
</cvar>
<cvar name="X_RPM_ICON">
<summary>
+<para>
This is used to fill in the
<literal>Icon:</literal>
field in the RPM
<filename>.spec</filename> file.
+</para>
</summary>
</cvar>
<cvar name="X_RPM_INSTALL">
<summary>
+<para>
internal, but overridable
+</para>
</summary>
</cvar>
<cvar name="X_RPM_PACKAGER">
<summary>
+<para>
This is used to fill in the
<literal>Packager:</literal>
field in the RPM
<filename>.spec</filename> file.
+</para>
</summary>
</cvar>
<cvar name="X_RPM_PROVIDES">
<summary>
+<para>
This is used to fill in the
<literal>Provides:</literal>
field in the RPM
<filename>.spec</filename> file.
+</para>
</summary>
</cvar>
<cvar name="X_RPM_POSTINSTALL">
<summary>
+<para>
This is used to fill in the
<literal>%post:</literal>
section in the RPM
<filename>.spec</filename> file.
+</para>
</summary>
</cvar>
<cvar name="X_RPM_PREINSTALL">
<summary>
+<para>
This is used to fill in the
<literal>%pre:</literal>
section in the RPM
<filename>.spec</filename> file.
+</para>
</summary>
</cvar>
<cvar name="X_RPM_PREFIX">
<summary>
+<para>
This is used to fill in the
<literal>Prefix:</literal>
field in the RPM
<filename>.spec</filename> file.
+</para>
</summary>
</cvar>
<cvar name="X_RPM_PREP">
<summary>
+<para>
internal, but overridable
+</para>
</summary>
</cvar>
<cvar name="X_RPM_POSTUNINSTALL">
<summary>
+<para>
This is used to fill in the
<literal>%postun:</literal>
section in the RPM
<filename>.spec</filename> file.
+</para>
</summary>
</cvar>
<cvar name="X_RPM_PREUNINSTALL">
<summary>
+<para>
This is used to fill in the
<literal>%preun:</literal>
section in the RPM
<filename>.spec</filename> file.
+</para>
</summary>
</cvar>
<cvar name="X_RPM_REQUIRES">
<summary>
+<para>
This is used to fill in the
<literal>Requires:</literal>
field in the RPM
<filename>.spec</filename> file.
+</para>
</summary>
</cvar>
<cvar name="X_RPM_SERIAL">
<summary>
+<para>
This is used to fill in the
<literal>Serial:</literal>
field in the RPM
<filename>.spec</filename> file.
+</para>
</summary>
</cvar>
<cvar name="X_RPM_URL">
<summary>
+<para>
This is used to fill in the
<literal>Url:</literal>
field in the RPM
<filename>.spec</filename> file.
+</para>
</summary>
</cvar>
@@ -511,115 +642,153 @@ NOT SURE YET WHAT TO DO ABOUT THESE.
<cvar name="CONFIG">
<summary>
+<para>
TODO
+</para>
</summary>
</cvar>
<cvar name="CONFIG_NOREPLACE">
<summary>
+<para>
TODO
+</para>
</summary>
</cvar>
<cvar name="DOC">
<summary>
+<para>
TODO
+</para>
</summary>
</cvar>
<cvar name="INSTALL_LOCATION">
<summary>
+<para>
internal, but overridable, TODO
+</para>
</summary>
</cvar>
<cvar name="LANG_lang">
<summary>
+<para>
TODO
+</para>
</summary>
</cvar>
<cvar name="UNIX_ATTR">
<summary>
+<para>
TODO
+</para>
</summary>
</cvar>
<cvar name="X_IPK_POSTINST">
<summary>
+<para>
TODO
+</para>
</summary>
</cvar>
<cvar name="X_IPK_POSTRM">
<summary>
+<para>
TODO
+</para>
</summary>
</cvar>
<cvar name="X_IPK_PREINST">
<summary>
+<para>
TODO
+</para>
</summary>
</cvar>
<cvar name="X_IPK_PRERM">
<summary>
+<para>
TODO
+</para>
</summary>
</cvar>
<cvar name="X_MSI_FEATURE">
<summary>
+<para>
TODO
+</para>
</summary>
</cvar>
<cvar name="X_MSI_FILEID">
<summary>
+<para>
TODO
+</para>
</summary>
</cvar>
<cvar name="X_MSI_LONGNAME">
<summary>
+<para>
TODO
+</para>
</summary>
</cvar>
<cvar name="X_MSI_SHORTNAME">
<summary>
+<para>
TODO
+</para>
</summary>
</cvar>
<cvar name="X_MSI_VITAL">
<summary>
+<para>
TODO
+</para>
</summary>
</cvar>
<cvar name="X_RPM_DIR">
<summary>
+<para>
TODO
+</para>
</summary>
</cvar>
<cvar name="X_RPM_DOCDIR">
<summary>
+<para>
TODO
+</para>
</summary>
</cvar>
<cvar name="X_RPM_GHOST">
<summary>
+<para>
TODO
+</para>
</summary>
</cvar>
<cvar name="X_RPM_VERIFY">
<summary>
+<para>
TODO
+</para>
</summary>
</cvar>
@@ -631,22 +800,26 @@ TODO
(node, tags)
</arguments>
<summary>
+<para>
Annotates file or directory Nodes with
information about how the
&b-link-Package;
Builder should package those files or directories.
All tags are optional.
+</para>
+<para>
Examples:
+</para>
-<example>
+<example_commands>
# 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>
+</example_commands>
</summary>
</scons_function>
@@ -654,13 +827,19 @@ Tag( 'file2.txt', DOC )
<!--
<function name="FindSourceFiles">
<summary>
+<para>
A convenience function which returns all leaves of the build tree.
+</para>
</summary>
</function>
<builder name="FindInstalledFiles">
<summary>
+<para>
Returns all files "built" by the &b-Install; or &b-InstallAs; builders.
+</para>
</summary>
</function>
-->
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/pdf.xml b/src/engine/SCons/Tool/pdf.xml
index c3a4eed2..eacf7a4b 100644
--- a/src/engine/SCons/Tool/pdf.xml
+++ b/src/engine/SCons/Tool/pdf.xml
@@ -1,21 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="pdf">
<summary>
+<para>
Sets construction variables for the Portable Document Format builder.
+</para>
</summary>
<sets>
-PDFPREFIX
-PDFSUFFIX
+<item>PDFPREFIX</item>
+<item>PDFSUFFIX</item>
</sets>
</tool>
<builder name="PDF">
<summary>
+<para>
Builds a <filename>.pdf</filename> file
from a <filename>.dvi</filename> input file
(or, by extension, a <filename>.tex</filename>,
@@ -26,24 +48,31 @@ The suffix specified by the &cv-link-PDFSUFFIX; construction variable
(<filename>.pdf</filename> by default)
is added automatically to the target
if it is not already present. Example:
+</para>
-<example>
+<example_commands>
# 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>
+</example_commands>
</summary>
</builder>
<cvar name="PDFPREFIX">
<summary>
+<para>
The prefix used for PDF file names.
+</para>
</summary>
</cvar>
<cvar name="PDFSUFFIX">
<summary>
+<para>
The suffix used for PDF file names.
+</para>
</summary>
</cvar>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/pdflatex.xml b/src/engine/SCons/Tool/pdflatex.xml
index 71f62561..2db309ab 100644
--- a/src/engine/SCons/Tool/pdflatex.xml
+++ b/src/engine/SCons/Tool/pdflatex.xml
@@ -1,49 +1,80 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="pdflatex">
<summary>
+<para>
Sets construction variables for the &pdflatex; utility.
+</para>
</summary>
<sets>
-PDFLATEX
-PDFLATEXFLAGS
-PDFLATEXCOM
-LATEXRETRIES
+<item>PDFLATEX</item>
+<item>PDFLATEXFLAGS</item>
+<item>PDFLATEXCOM</item>
+<item>LATEXRETRIES</item>
</sets>
<uses>
-PDFLATEXCOMSTR
+<item>PDFLATEXCOMSTR</item>
</uses>
</tool>
<cvar name="PDFLATEX">
<summary>
+<para>
The &pdflatex; utility.
+</para>
</summary>
</cvar>
<cvar name="PDFLATEXCOM">
<summary>
+<para>
The command line used to call the &pdflatex; utility.
+</para>
</summary>
</cvar>
<cvar name="PDFLATEXCOMSTR">
<summary>
+<para>
The string displayed when calling the &pdflatex; utility.
If this is not set, then &cv-link-PDFLATEXCOM; (the command line) is displayed.
+</para>
-<example>
+<example_commands>
env = Environment(PDFLATEX;COMSTR = "Building $TARGET from LaTeX input $SOURCES")
-</example>
+</example_commands>
</summary>
</cvar>
<cvar name="PDFLATEXFLAGS">
<summary>
+<para>
General options passed to the &pdflatex; utility.
+</para>
</summary>
</cvar>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/pdftex.xml b/src/engine/SCons/Tool/pdftex.xml
index a895d6f3..511675eb 100644
--- a/src/engine/SCons/Tool/pdftex.xml
+++ b/src/engine/SCons/Tool/pdftex.xml
@@ -1,53 +1,84 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="pdftex">
<summary>
+<para>
Sets construction variables for the &pdftex; utility.
+</para>
</summary>
<sets>
-PDFTEX
-PDFTEXFLAGS
-PDFTEXCOM
-PDFLATEX
-PDFLATEXFLAGS
-PDFLATEXCOM
-LATEXRETRIES
+<item>PDFTEX</item>
+<item>PDFTEXFLAGS</item>
+<item>PDFTEXCOM</item>
+<item>PDFLATEX</item>
+<item>PDFLATEXFLAGS</item>
+<item>PDFLATEXCOM</item>
+<item>LATEXRETRIES</item>
</sets>
<uses>
-PDFTEXCOMSTR
-PDFLATEXCOMSTR
+<item>PDFTEXCOMSTR</item>
+<item>PDFLATEXCOMSTR</item>
</uses>
</tool>
<cvar name="PDFTEX">
<summary>
+<para>
The &pdftex; utility.
+</para>
</summary>
</cvar>
<cvar name="PDFTEXCOM">
<summary>
+<para>
The command line used to call the &pdftex; utility.
+</para>
</summary>
</cvar>
<cvar name="PDFTEXCOMSTR">
<summary>
+<para>
The string displayed when calling the &pdftex; utility.
If this is not set, then &cv-link-PDFTEXCOM; (the command line) is displayed.
+</para>
-<example>
+<example_commands>
env = Environment(PDFTEXCOMSTR = "Building $TARGET from TeX input $SOURCES")
-</example>
+</example_commands>
</summary>
</cvar>
<cvar name="PDFTEXFLAGS">
<summary>
+<para>
General options passed to the &pdftex; utility.
+</para>
</summary>
</cvar>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/qt.xml b/src/engine/SCons/Tool/qt.xml
index 0522f207..ef4443e3 100644
--- a/src/engine/SCons/Tool/qt.xml
+++ b/src/engine/SCons/Tool/qt.xml
@@ -1,38 +1,59 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="qt">
<summary>
+<para>
Sets construction variables for building Qt applications.
+</para>
</summary>
<sets>
-QTDIR
-QT_BINPATH
-QT_CPPPATH
-QT_LIBPATH
-QT_MOC
-QT_UIC
-QT_LIB
-QT_AUTOSCAN
-QT_UICIMPLFLAGS
-QT_UICDECLFLAGS
-QT_MOCFROMHFLAGS
-QT_MOCFROMCXXFLAGS
-QT_UICDECLPREFIX
-QT_UICDECLSUFFIX
-QT_UICIMPLPREFIX
-QT_UICIMPLSUFFIX
-QT_MOCHPREFIX
-QT_MOCHSUFFIX
-QT_MOCCXXPREFIX
-QT_MOCCXXSUFFIX
-QT_UISUFFIX
-QT_UICCOM
-QT_MOCFROMHCOM
-QT_MOCFROMCXXCOM
+<item>QTDIR</item>
+<item>QT_BINPATH</item>
+<item>QT_CPPPATH</item>
+<item>QT_LIBPATH</item>
+<item>QT_MOC</item>
+<item>QT_UIC</item>
+<item>QT_LIB</item>
+<item>QT_AUTOSCAN</item>
+<item>QT_UICIMPLFLAGS</item>
+<item>QT_UICDECLFLAGS</item>
+<item>QT_MOCFROMHFLAGS</item>
+<item>QT_MOCFROMCXXFLAGS</item>
+<item>QT_UICDECLPREFIX</item>
+<item>QT_UICDECLSUFFIX</item>
+<item>QT_UICIMPLPREFIX</item>
+<item>QT_UICIMPLSUFFIX</item>
+<item>QT_MOCHPREFIX</item>
+<item>QT_MOCHSUFFIX</item>
+<item>QT_MOCCXXPREFIX</item>
+<item>QT_MOCCXXSUFFIX</item>
+<item>QT_UISUFFIX</item>
+<item>QT_UICCOM</item>
+<item>QT_MOCFROMHCOM</item>
+<item>QT_MOCFROMCXXCOM</item>
</sets>
<uses>
</uses>
@@ -40,20 +61,23 @@ QT_MOCFROMCXXCOM
<builder name="Moc">
<summary>
+<para>
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 &cv-link-QTDIR; variable for more information.
Example:
+</para>
-<example>
+<example_commands>
env.Moc('foo.h') # generates moc_foo.cc
env.Moc('foo.cpp') # generates foo.moc
-</example>
+</example_commands>
</summary>
</builder>
<builder name="Uic">
<summary>
+<para>
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
@@ -65,17 +89,19 @@ 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 &cv-link-QTDIR; variable for more information.
Example:
+</para>
-<example>
+<example_commands>
env.Uic('foo.ui') # -> ['foo.h', 'uic_foo.cc', 'moc_foo.cc']
env.Uic(target = Split('include/foo.h gen/uicfoo.cc gen/mocfoo.cc'),
source = 'foo.ui') # -> ['include/foo.h', 'gen/uicfoo.cc', 'gen/mocfoo.cc']
-</example>
+</example_commands>
</summary>
</builder>
<cvar name="QTDIR">
<summary>
+<para>
The qt tool tries to take this from os.environ.
It also initializes all QT_*
construction variables listed below.
@@ -91,13 +117,17 @@ and the variables
&cv-link-PROGEMITTER;, &cv-link-SHLIBEMITTER; and &cv-link-LIBEMITTER;
are modified. Because the build-performance is affected when using this tool,
you have to explicitly specify it at Environment creation:
+</para>
-<example>
+<example_commands>
Environment(tools=['default','qt'])
-</example>
+</example_commands>
+<para>
The qt tool supports the following operations:
+</para>
+<para>
<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
@@ -107,7 +137,9 @@ can turn off automatic moc file generation by setting QT_AUTOSCAN to 0.
See also the corresponding
&b-Moc;()
builder method.
+</para>
+<para>
<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
@@ -118,7 +150,9 @@ need to specify duplicate=1. You can turn off automatic moc file generation
by setting QT_AUTOSCAN to 0. See also the corresponding
&b-Moc;
builder method.
+</para>
+<para>
<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
@@ -128,188 +162,245 @@ you may need to specify duplicate=1 in calls to VariantDir.
See also the corresponding
&b-Uic;
builder method.
+</para>
</summary>
</cvar>
<cvar name="QT_AUTOSCAN">
<summary>
+<para>
Turn off scanning for mocable files. Use the Moc Builder to explicitly
specify files to run moc on.
+</para>
</summary>
</cvar>
<cvar name="QT_BINPATH">
<summary>
+<para>
The path where the qt binaries are installed.
The default value is '&cv-link-QTDIR;/bin'.
+</para>
</summary>
</cvar>
<cvar name="QT_CPPPATH">
<summary>
+<para>
The path where the qt header files are installed.
The default value is '&cv-link-QTDIR;/include'.
Note: If you set this variable to None,
the tool won't change the &cv-link-CPPPATH;
construction variable.
+</para>
</summary>
</cvar>
<cvar name="QT_DEBUG">
<summary>
+<para>
Prints lots of debugging information while scanning for moc files.
+</para>
</summary>
</cvar>
<cvar name="QT_LIB">
<summary>
+<para>
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 &cv-link-LIBS; variable.
+</para>
</summary>
</cvar>
<cvar name="QT_LIBPATH">
<summary>
+<para>
The path where the qt libraries are installed.
The default value is '&cv-link-QTDIR;/lib'.
Note: If you set this variable to None,
the tool won't change the &cv-link-LIBPATH;
construction variable.
+</para>
</summary>
</cvar>
<cvar name="QT_MOC">
<summary>
+<para>
Default value is '&cv-link-QT_BINPATH;/moc'.
+</para>
</summary>
</cvar>
<cvar name="QT_MOCCXXPREFIX">
<summary>
+<para>
Default value is ''. Prefix for moc output files, when source is a cxx file.
+</para>
</summary>
</cvar>
<cvar name="QT_MOCCXXSUFFIX">
<summary>
+<para>
Default value is '.moc'. Suffix for moc output files, when source is a cxx
file.
+</para>
</summary>
</cvar>
<cvar name="QT_MOCFROMCXXFLAGS">
<summary>
+<para>
Default value is '-i'. These flags are passed to moc, when moccing a
C++ file.
+</para>
</summary>
</cvar>
<cvar name="QT_MOCFROMCXXCOM">
<summary>
+<para>
Command to generate a moc file from a cpp file.
+</para>
</summary>
</cvar>
<cvar name="QT_MOCFROMCXXCOMSTR">
<summary>
+<para>
The string displayed when generating a moc file from a cpp file.
If this is not set, then &cv-link-QT_MOCFROMCXXCOM; (the command line) is displayed.
+</para>
</summary>
</cvar>
<cvar name="QT_MOCFROMHCOM">
<summary>
+<para>
Command to generate a moc file from a header.
+</para>
</summary>
</cvar>
<cvar name="QT_MOCFROMHCOMSTR">
<summary>
+<para>
The string displayed when generating a moc file from a cpp file.
If this is not set, then &cv-link-QT_MOCFROMHCOM; (the command line) is displayed.
+</para>
</summary>
</cvar>
<cvar name="QT_MOCFROMHFLAGS">
<summary>
+<para>
Default value is ''. These flags are passed to moc, when moccing a header
file.
+</para>
</summary>
</cvar>
<cvar name="QT_MOCHPREFIX">
<summary>
+<para>
Default value is 'moc_'. Prefix for moc output files, when source is a header.
+</para>
</summary>
</cvar>
<cvar name="QT_MOCHSUFFIX">
<summary>
+<para>
Default value is '&cv-link-CXXFILESUFFIX;'. Suffix for moc output files, when source is
a header.
+</para>
</summary>
</cvar>
<cvar name="QT_UIC">
<summary>
+<para>
Default value is '&cv-link-QT_BINPATH;/uic'.
+</para>
</summary>
</cvar>
<cvar name="QT_UICCOM">
<summary>
+<para>
Command to generate header files from .ui files.
+</para>
</summary>
</cvar>
<cvar name="QT_UICCOMSTR">
<summary>
+<para>
The string displayed when generating header files from .ui files.
If this is not set, then &cv-link-QT_UICCOM; (the command line) is displayed.
+</para>
</summary>
</cvar>
<cvar name="QT_UICDECLFLAGS">
<summary>
+<para>
Default value is ''. These flags are passed to uic, when creating a a h
file from a .ui file.
+</para>
</summary>
</cvar>
<cvar name="QT_UICDECLPREFIX">
<summary>
+<para>
Default value is ''. Prefix for uic generated header files.
+</para>
</summary>
</cvar>
<cvar name="QT_UICDECLSUFFIX">
<summary>
+<para>
Default value is '.h'. Suffix for uic generated header files.
+</para>
</summary>
</cvar>
<cvar name="QT_UICIMPLFLAGS">
<summary>
+<para>
Default value is ''. These flags are passed to uic, when creating a cxx
file from a .ui file.
+</para>
</summary>
</cvar>
<cvar name="QT_UICIMPLPREFIX">
<summary>
+<para>
Default value is 'uic_'. Prefix for uic generated implementation files.
+</para>
</summary>
</cvar>
<cvar name="QT_UICIMPLSUFFIX">
<summary>
+<para>
Default value is '&cv-link-CXXFILESUFFIX;'. Suffix for uic generated implementation
files.
+</para>
</summary>
</cvar>
<cvar name="QT_UISUFFIX">
<summary>
+<para>
Default value is '.ui'. Suffix of designer input files.
+</para>
</summary>
</cvar>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/rmic.xml b/src/engine/SCons/Tool/rmic.xml
index ff13f48f..3c0d0c73 100644
--- a/src/engine/SCons/Tool/rmic.xml
+++ b/src/engine/SCons/Tool/rmic.xml
@@ -1,26 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="rmic">
<summary>
+<para>
Sets construction variables for the &rmic; utility.
+</para>
</summary>
<sets>
-RMIC
-RMICFLAGS
-RMICCOM
-JAVACLASSSUFFIX
+<item>RMIC</item>
+<item>RMICFLAGS</item>
+<item>RMICCOM</item>
+<item>JAVACLASSSUFFIX</item>
</sets>
<uses>
-RMICCOMSTR
+<item>RMICCOMSTR</item>
</uses>
</tool>
<builder name="RMIC">
<summary>
+<para>
Builds stub and skeleton class files
for remote objects
from Java <filename>.class</filename> files.
@@ -31,7 +53,9 @@ The source can be the names of <filename>.class</filename> files,
or the objects return from the
&b-Java;
builder method.
+</para>
+<para>
If the construction variable
&cv-link-JAVACLASSDIR;
is set, either in the environment
@@ -42,8 +66,9 @@ then the value of the variable
will be stripped from the
beginning of any <filename>.class </filename>
file names.
+</para>
-<example>
+<example_commands>
classes = env.Java(target = 'classdir', source = 'src')
env.RMIC(target = 'outdir1', source = classes)
@@ -53,41 +78,51 @@ env.RMIC(target = 'outdir2',
env.RMIC(target = 'outdir3',
source = ['classes/foo.class', 'classes/bar.class'],
JAVACLASSDIR = 'classes')
-</example>
+</example_commands>
</summary>
</builder>
<cvar name="RMIC">
<summary>
+<para>
The Java RMI stub compiler.
+</para>
</summary>
</cvar>
<cvar name="RMICCOM">
<summary>
+<para>
The command line used to compile stub
and skeleton class files
from Java classes that contain RMI implementations.
Any options specified in the &cv-link-RMICFLAGS; construction variable
are included on this command line.
+</para>
</summary>
</cvar>
<cvar name="RMICCOMSTR">
<summary>
+<para>
The string displayed when compiling
stub and skeleton class files
from Java classes that contain RMI implementations.
If this is not set, then &cv-link-RMICCOM; (the command line) is displayed.
+</para>
-<example>
+<example_commands>
env = Environment(RMICCOMSTR = "Generating stub/skeleton class files $TARGETS from $SOURCES")
-</example>
+</example_commands>
</summary>
</cvar>
<cvar name="RMICFLAGS">
<summary>
+<para>
General options passed to the Java RMI stub compiler.
+</para>
</summary>
</cvar>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/rpcgen.xml b/src/engine/SCons/Tool/rpcgen.xml
index dd774168..43b462d8 100644
--- a/src/engine/SCons/Tool/rpcgen.xml
+++ b/src/engine/SCons/Tool/rpcgen.xml
@@ -1,20 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="rpcgen">
<summary>
+<para>
Sets construction variables for building with RPCGEN.
+</para>
</summary>
<sets>
-RPCGEN
-RPCGENFLAGS
-RPCGENCLIENTFLAGS
-RPCGENHEADERFLAGS
-RPCGENSERVICEFLAGS
-RPCGENXDRFLAGS
+<item>RPCGEN</item>
+<item>RPCGENFLAGS</item>
+<item>RPCGENCLIENTFLAGS</item>
+<item>RPCGENHEADERFLAGS</item>
+<item>RPCGENSERVICEFLAGS</item>
+<item>RPCGENXDRFLAGS</item>
</sets>
<uses>
</uses>
@@ -22,116 +43,138 @@ RPCGENXDRFLAGS
<builder name="RPCGenClient">
<summary>
+<para>
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>
+<example_commands>
# Builds src/rpcif_clnt.c
env.RPCGenClient('src/rpcif.x')
-</example>
+</example_commands>
</summary>
</builder>
<builder name="RPCGenHeader">
<summary>
+<para>
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>
+<example_commands>
# Builds src/rpcif.h
env.RPCGenHeader('src/rpcif.x')
-</example>
+</example_commands>
</summary>
</builder>
<builder name="RPCGenService">
<summary>
+<para>
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>
+<example_commands>
# Builds src/rpcif_svc.c
env.RPCGenClient('src/rpcif.x')
-</example>
+</example_commands>
</summary>
</builder>
<builder name="RPCGenXDR">
<summary>
+<para>
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>
+<example_commands>
# Builds src/rpcif_xdr.c
env.RPCGenClient('src/rpcif.x')
-</example>
+</example_commands>
</summary>
</builder>
<cvar name="RPCGEN">
<summary>
+<para>
The RPC protocol compiler.
+</para>
</summary>
</cvar>
<cvar name="RPCGENCLIENTFLAGS">
<summary>
+<para>
Options passed to the RPC protocol compiler
when generating client side stubs.
These are in addition to any flags specified in the
&cv-link-RPCGENFLAGS;
construction variable.
+</para>
</summary>
</cvar>
<cvar name="RPCGENFLAGS">
<summary>
+<para>
General options passed to the RPC protocol compiler.
+</para>
</summary>
</cvar>
<cvar name="RPCGENHEADERFLAGS">
<summary>
+<para>
Options passed to the RPC protocol compiler
when generating a header file.
These are in addition to any flags specified in the
&cv-link-RPCGENFLAGS;
construction variable.
+</para>
</summary>
</cvar>
<cvar name="RPCGENSERVICEFLAGS">
<summary>
+<para>
Options passed to the RPC protocol compiler
when generating server side stubs.
These are in addition to any flags specified in the
&cv-link-RPCGENFLAGS;
construction variable.
+</para>
</summary>
</cvar>
<cvar name="RPCGENXDRFLAGS">
<summary>
+<para>
Options passed to the RPC protocol compiler
when generating XDR routines.
These are in addition to any flags specified in the
&cv-link-RPCGENFLAGS;
construction variable.
+</para>
</summary>
</cvar>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/sgiar.xml b/src/engine/SCons/Tool/sgiar.xml
index 63debc43..3f496099 100644
--- a/src/engine/SCons/Tool/sgiar.xml
+++ b/src/engine/SCons/Tool/sgiar.xml
@@ -1,24 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="sgiar">
<summary>
+<para>
Sets construction variables for the SGI library archiver.
+</para>
</summary>
<sets>
-AR
-ARFLAGS
-ARCOMSTR
-SHLINK
-SHLINKFLAGS
-LIBPREFIX
-LIBSUFFIX
+<item>AR</item>
+<item>ARFLAGS</item>
+<item>ARCOMSTR</item>
+<item>SHLINK</item>
+<item>SHLINKFLAGS</item>
+<item>LIBPREFIX</item>
+<item>LIBSUFFIX</item>
</sets>
<uses>
-ARCOMSTR
-SHLINKCOMSTR
+<item>ARCOMSTR</item>
+<item>SHLINKCOMSTR</item>
</uses>
</tool>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/sgic++.xml b/src/engine/SCons/Tool/sgic++.xml
index a933ac2d..6387c3f0 100644
--- a/src/engine/SCons/Tool/sgic++.xml
+++ b/src/engine/SCons/Tool/sgic++.xml
@@ -1,18 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="sgic++">
<summary>
+<para>
Sets construction variables for the SGI C++ compiler.
+</para>
</summary>
<sets>
-CXX
-CXXFLAGS
-SHCXX
-SHOBJSUFFIX
-<!--STATIC_AND_SHARED_OBJECTS_ARE_THE_SAME-->
+<item>CXX</item>
+<item>CXXFLAGS</item>
+<item>SHCXX</item>
+<item>SHOBJSUFFIX</item>
+<item><!--STATIC_AND_SHARED_OBJECTS_ARE_THE_SAME--></item>
</sets>
</tool>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/sgicc.xml b/src/engine/SCons/Tool/sgicc.xml
index 152b841c..34a14b70 100644
--- a/src/engine/SCons/Tool/sgicc.xml
+++ b/src/engine/SCons/Tool/sgicc.xml
@@ -1,18 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="sgicc">
<summary>
+<para>
Sets construction variables for the SGI C compiler.
+</para>
</summary>
<sets>
-CXX
-SHOBJSUFFIX
-<!--STATIC_AND_SHARED_OBJECTS_ARE_THE_SAME-->
+<item>CXX</item>
+<item>SHOBJSUFFIX</item>
+<item><!--STATIC_AND_SHARED_OBJECTS_ARE_THE_SAME--></item>
</sets>
<uses>
</uses>
</tool>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/sgilink.xml b/src/engine/SCons/Tool/sgilink.xml
index 23039725..dd7f5cea 100644
--- a/src/engine/SCons/Tool/sgilink.xml
+++ b/src/engine/SCons/Tool/sgilink.xml
@@ -1,17 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="sgilink">
<summary>
+<para>
Sets construction variables for the SGI linker.
+</para>
</summary>
<sets>
-LINK
-SHLINKFLAGS
-RPATHPREFIX
-RPATHSUFFIX
+<item>LINK</item>
+<item>SHLINKFLAGS</item>
+<item>RPATHPREFIX</item>
+<item>RPATHSUFFIX</item>
</sets>
</tool>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/sunar.xml b/src/engine/SCons/Tool/sunar.xml
index 884a8644..f0c60903 100644
--- a/src/engine/SCons/Tool/sunar.xml
+++ b/src/engine/SCons/Tool/sunar.xml
@@ -1,25 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="sunar">
<summary>
+<para>
Sets construction variables for the Sun library archiver.
+</para>
</summary>
<sets>
-AR
-ARFLAGS
-ARCOM
-SHLINK
-SHLINKFLAGS
-SHLINKCOM
-LIBPREFIX
-LIBSUFFIX
+<item>AR</item>
+<item>ARFLAGS</item>
+<item>ARCOM</item>
+<item>SHLINK</item>
+<item>SHLINKFLAGS</item>
+<item>SHLINKCOM</item>
+<item>LIBPREFIX</item>
+<item>LIBSUFFIX</item>
</sets>
<uses>
-ARCOMSTR
-SHLINKCOMSTR
+<item>ARCOMSTR</item>
+<item>SHLINKCOMSTR</item>
</uses>
</tool>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/sunc++.xml b/src/engine/SCons/Tool/sunc++.xml
index 6eb2920d..6ee97674 100644
--- a/src/engine/SCons/Tool/sunc++.xml
+++ b/src/engine/SCons/Tool/sunc++.xml
@@ -1,19 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="sunc++">
<summary>
+<para>
Sets construction variables for the Sun C++ compiler.
+</para>
</summary>
<sets>
-CXX
-SHCXX
-CXXVERSION
-SHCXXFLAGS
-SHOBJPREFIX
-SHOBJSUFFIX
+<item>CXX</item>
+<item>SHCXX</item>
+<item>CXXVERSION</item>
+<item>SHCXXFLAGS</item>
+<item>SHOBJPREFIX</item>
+<item>SHOBJSUFFIX</item>
</sets>
</tool>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/suncc.xml b/src/engine/SCons/Tool/suncc.xml
index da91d124..111c6688 100644
--- a/src/engine/SCons/Tool/suncc.xml
+++ b/src/engine/SCons/Tool/suncc.xml
@@ -1,17 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="suncc">
<summary>
+<para>
Sets construction variables for the Sun C compiler.
+</para>
</summary>
<sets>
-CXX
-SHCCFLAGS
-SHOBJPREFIX
-SHOBJSUFFIX
+<item>CXX</item>
+<item>SHCCFLAGS</item>
+<item>SHOBJPREFIX</item>
+<item>SHOBJSUFFIX</item>
</sets>
</tool>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/sunf77.xml b/src/engine/SCons/Tool/sunf77.xml
index 3f021630..20f24ffd 100644
--- a/src/engine/SCons/Tool/sunf77.xml
+++ b/src/engine/SCons/Tool/sunf77.xml
@@ -1,19 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="sunf77">
<summary>
+<para>
Set construction variables for the Sun &f77; Fortran compiler.
+</para>
</summary>
<sets>
-FORTRAN
-F77
-SHFORTRAN
-SHF77
-SHFORTRANFLAGS
-SHF77FLAGS
+<item>FORTRAN</item>
+<item>F77</item>
+<item>SHFORTRAN</item>
+<item>SHF77</item>
+<item>SHFORTRANFLAGS</item>
+<item>SHF77FLAGS</item>
</sets>
</tool>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/sunf90.xml b/src/engine/SCons/Tool/sunf90.xml
index 1d518462..4b4c2a09 100644
--- a/src/engine/SCons/Tool/sunf90.xml
+++ b/src/engine/SCons/Tool/sunf90.xml
@@ -1,19 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="sunf90">
<summary>
+<para>
Set construction variables for the Sun &f90; Fortran compiler.
+</para>
</summary>
<sets>
-FORTRAN
-F90
-SHFORTRAN
-SHF90
-SHFORTRANFLAGS
-SHF90FLAGS
+<item>FORTRAN</item>
+<item>F90</item>
+<item>SHFORTRAN</item>
+<item>SHF90</item>
+<item>SHFORTRANFLAGS</item>
+<item>SHF90FLAGS</item>
</sets>
</tool>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/sunf95.xml b/src/engine/SCons/Tool/sunf95.xml
index be6cdb71..42bae1e7 100644
--- a/src/engine/SCons/Tool/sunf95.xml
+++ b/src/engine/SCons/Tool/sunf95.xml
@@ -1,19 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="sunf95">
<summary>
+<para>
Set construction variables for the Sun &f95; Fortran compiler.
+</para>
</summary>
<sets>
-FORTRAN
-F95
-SHFORTRAN
-SHF95
-SHFORTRANFLAGS
-SHF95FLAGS
+<item>FORTRAN</item>
+<item>F95</item>
+<item>SHFORTRAN</item>
+<item>SHF95</item>
+<item>SHFORTRANFLAGS</item>
+<item>SHF95FLAGS</item>
</sets>
</tool>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/sunlink.xml b/src/engine/SCons/Tool/sunlink.xml
index 083d4289..b0729394 100644
--- a/src/engine/SCons/Tool/sunlink.xml
+++ b/src/engine/SCons/Tool/sunlink.xml
@@ -1,16 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="sunlink">
<summary>
+<para>
Sets construction variables for the Sun linker.
+</para>
</summary>
<sets>
-SHLINKFLAGS
-RPATHPREFIX
-RPATHSUFFIX
+<item>SHLINKFLAGS</item>
+<item>RPATHPREFIX</item>
+<item>RPATHSUFFIX</item>
</sets>
</tool>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/swig.xml b/src/engine/SCons/Tool/swig.xml
index 33d3721c..bae5f072 100644
--- a/src/engine/SCons/Tool/swig.xml
+++ b/src/engine/SCons/Tool/swig.xml
@@ -1,39 +1,63 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="swig">
<summary>
+<para>
Sets construction variables for the SWIG interface generator.
+</para>
</summary>
<sets>
-SWIG
-SWIGFLAGS
-SWIGDIRECTORSUFFIX
-SWIGCFILESUFFIX
-SWIGCXXFILESUFFIX
-_SWIGINCFLAGS
-SWIGINCPREFIX
-SWIGINCSUFFIX
-SWIGCOM
-SWIGPATH
-SWIGVERSION
+<item>SWIG</item>
+<item>SWIGFLAGS</item>
+<item>SWIGDIRECTORSUFFIX</item>
+<item>SWIGCFILESUFFIX</item>
+<item>SWIGCXXFILESUFFIX</item>
+<item>_SWIGINCFLAGS</item>
+<item>SWIGINCPREFIX</item>
+<item>SWIGINCSUFFIX</item>
+<item>SWIGCOM</item>
+<item>SWIGPATH</item>
+<item>SWIGVERSION</item>
</sets>
<uses>
-SWIGCOMSTR
+<item>SWIGCOMSTR</item>
</uses>
</tool>
<cvar name="SWIG">
<summary>
+<para>
The scripting language wrapper and interface generator.
+</para>
</summary>
</cvar>
<cvar name="SWIGCFILESUFFIX">
<summary>
+<para>
The suffix that will be used for intermediate C
source files generated by
the scripting language wrapper and interface generator.
@@ -46,37 +70,45 @@ option is
specified as part of the
&cv-link-SWIGFLAGS;
construction variable.
+</para>
</summary>
</cvar>
<cvar name="SWIGDIRECTORSUFFIX">
<summary>
+<para>
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>
</summary>
</cvar>
<cvar name="SWIGCOM">
<summary>
+<para>
The command line used to call
the scripting language wrapper and interface generator.
+</para>
</summary>
</cvar>
<cvar name="SWIGCOMSTR">
<summary>
+<para>
The string displayed when calling
the scripting language wrapper and interface generator.
If this is not set, then &cv-link-SWIGCOM; (the command line) is displayed.
+</para>
</summary>
</cvar>
<cvar name="SWIGCXXFILESUFFIX">
<summary>
+<para>
The suffix that will be used for intermediate C++
source files generated by
the scripting language wrapper and interface generator.
@@ -87,11 +119,13 @@ By default, this value is used whenever the
option is specified as part of the
&cv-link-SWIGFLAGS;
construction variable.
+</para>
</summary>
</cvar>
<cvar name="SWIGFLAGS">
<summary>
+<para>
General options passed to
the scripting language wrapper and interface generator.
This is where you should set
@@ -108,11 +142,13 @@ generate a C++ intermediate source file
with the extension that is specified as the
&cv-link-CXXFILESUFFIX;
variable.
+</para>
</summary>
</cvar>
<cvar name="_SWIGINCFLAGS">
<summary>
+<para>
An automatically-generated construction variable
containing the SWIG command-line options
for specifying directories to be searched for included files.
@@ -120,29 +156,35 @@ The value of &cv-_SWIGINCFLAGS; is created
by appending &cv-SWIGINCPREFIX; and &cv-SWIGINCSUFFIX;
to the beginning and end
of each directory in &cv-SWIGPATH;.
+</para>
</summary>
</cvar>
<cvar name="SWIGINCPREFIX">
<summary>
+<para>
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 &cv-SWIGPATH; construction variable
when the &cv-_SWIGINCFLAGS; variable is automatically generated.
+</para>
</summary>
</cvar>
<cvar name="SWIGINCSUFFIX">
<summary>
+<para>
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 &cv-SWIGPATH; construction variable
when the &cv-_SWIGINCFLAGS; variable is automatically generated.
+</para>
</summary>
</cvar>
<cvar name="SWIGOUTDIR">
<summary>
+<para>
Specifies the output directory in which
the scripting language wrapper and interface generator
should place generated language-specific files.
@@ -150,18 +192,22 @@ This will be used by SCons to identify
the files that will be generated by the &swig; call,
and translated into the
<literal>swig -outdir</literal> option on the command line.
+</para>
</summary>
</cvar>
<cvar name="SWIGPATH">
<summary>
+<para>
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 &cv-CPPPATH;.
+</para>
+<para>
Don't explicitly put include directory
arguments in SWIGFLAGS;
the result will be non-portable
@@ -171,20 +217,24 @@ directory when they are used in a command.
To force
&scons;
to look-up a directory relative to the root of the source tree use #:
+</para>
-<example>
+<example_commands>
env = Environment(SWIGPATH='#/include')
-</example>
+</example_commands>
+<para>
The directory look-up can also be forced using the
&Dir;()
function:
+</para>
-<example>
+<example_commands>
include = Dir('include')
env = Environment(SWIGPATH=include)
-</example>
+</example_commands>
+<para>
The directory list will be added to command lines
through the automatically-generated
&cv-_SWIGINCFLAGS;
@@ -198,15 +248,20 @@ of each directory in &cv-SWIGPATH;.
Any command lines you define that need
the SWIGPATH directory list should
include &cv-_SWIGINCFLAGS;:
+</para>
-<example>
+<example_commands>
env = Environment(SWIGCOM="my_swig -o $TARGET $_SWIGINCFLAGS $SORUCES")
-</example>
+</example_commands>
</summary>
</cvar>
<cvar name="SWIGVERSION">
<summary>
+<para>
The version number of the SWIG tool.
+</para>
</summary>
</cvar>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/tar.xml b/src/engine/SCons/Tool/tar.xml
index 8cf407d9..c37f752c 100644
--- a/src/engine/SCons/Tool/tar.xml
+++ b/src/engine/SCons/Tool/tar.xml
@@ -1,26 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="tar">
<summary>
+<para>
Sets construction variables for the &tar; archiver.
+</para>
</summary>
<sets>
-TAR
-TARFLAGS
-TARCOM
-TARSUFFIX
+<item>TAR</item>
+<item>TARFLAGS</item>
+<item>TARCOM</item>
+<item>TARSUFFIX</item>
</sets>
<uses>
-TARCOMSTR
+<item>TARCOMSTR</item>
</uses>
</tool>
<builder name="Tar">
<summary>
+<para>
Builds a tar archive of the specified files
and/or directories.
Unlike most builder methods,
@@ -37,8 +59,9 @@ any on-disk files,
regardless of whether or not
&scons;
knows about them from other Builder or function calls.
+</para>
-<example>
+<example_commands>
env.Tar('src.tar', 'src')
# Create the stuff.tar file.
@@ -54,42 +77,54 @@ env.Tar('foo.tar.gz', 'foo')
env = Environment(TARFLAGS = '-c -z',
TARSUFFIX = '.tgz')
env.Tar('foo')
-</example>
+</example_commands>
</summary>
</builder>
<cvar name="TAR">
<summary>
+<para>
The tar archiver.
+</para>
</summary>
</cvar>
<cvar name="TARCOM">
<summary>
+<para>
The command line used to call the tar archiver.
+</para>
</summary>
</cvar>
<cvar name="TARCOMSTR">
<summary>
+<para>
The string displayed when archiving files
using the tar archiver.
If this is not set, then &cv-link-TARCOM; (the command line) is displayed.
+</para>
-<example>
+<example_commands>
env = Environment(TARCOMSTR = "Archiving $TARGET")
-</example>
+</example_commands>
</summary>
</cvar>
<cvar name="TARFLAGS">
<summary>
+<para>
General options passed to the tar archiver.
+</para>
</summary>
</cvar>
<cvar name="TARSUFFIX">
<summary>
+<para>
The suffix used for tar file names.
+</para>
</summary>
</cvar>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/tex.xml b/src/engine/SCons/Tool/tex.xml
index 80a84cc1..d84aeb47 100644
--- a/src/engine/SCons/Tool/tex.xml
+++ b/src/engine/SCons/Tool/tex.xml
@@ -1,126 +1,173 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="tex">
<summary>
+<para>
Sets construction variables for the TeX formatter and typesetter.
+</para>
</summary>
<sets>
-TEX
-TEXFLAGS
-TEXCOM
-LATEX
-LATEXFLAGS
-LATEXCOM
-BIBTEX
-BIBTEXFLAGS
-BIBTEXCOM
-MAKEINDEX
-MAKEINDEXFLAGS
-MAKEINDEXCOM
+<item>TEX</item>
+<item>TEXFLAGS</item>
+<item>TEXCOM</item>
+<item>LATEX</item>
+<item>LATEXFLAGS</item>
+<item>LATEXCOM</item>
+<item>BIBTEX</item>
+<item>BIBTEXFLAGS</item>
+<item>BIBTEXCOM</item>
+<item>MAKEINDEX</item>
+<item>MAKEINDEXFLAGS</item>
+<item>MAKEINDEXCOM</item>
</sets>
<uses>
-TEXCOMSTR
-LATEXCOMSTR
-BIBTEXCOMSTR
-MAKEINDEXCOMSTR
+<item>TEXCOMSTR</item>
+<item>LATEXCOMSTR</item>
+<item>BIBTEXCOMSTR</item>
+<item>MAKEINDEXCOMSTR</item>
</uses>
</tool>
<cvar name="BIBTEX">
<summary>
+<para>
The bibliography generator for the TeX formatter and typesetter and the
LaTeX structured formatter and typesetter.
+</para>
</summary>
</cvar>
<cvar name="BIBTEXCOM">
<summary>
+<para>
The command line used to call the bibliography generator for the
TeX formatter and typesetter and the LaTeX structured formatter and
typesetter.
+</para>
</summary>
</cvar>
<cvar name="BIBTEXCOMSTR">
<summary>
+<para>
The string displayed when generating a bibliography
for TeX or LaTeX.
If this is not set, then &cv-link-BIBTEXCOM; (the command line) is displayed.
+</para>
-<example>
+<example_commands>
env = Environment(BIBTEXCOMSTR = "Generating bibliography $TARGET")
-</example>
+</example_commands>
</summary>
</cvar>
<cvar name="BIBTEXFLAGS">
<summary>
+<para>
General options passed to the bibliography generator for the TeX formatter
and typesetter and the LaTeX structured formatter and typesetter.
+</para>
</summary>
</cvar>
<cvar name="MAKEINDEX">
<summary>
+<para>
The makeindex generator for the TeX formatter and typesetter and the
LaTeX structured formatter and typesetter.
+</para>
</summary>
</cvar>
<cvar name="MAKEINDEXCOM">
<summary>
+<para>
The command line used to call the makeindex generator for the
TeX formatter and typesetter and the LaTeX structured formatter and
typesetter.
+</para>
</summary>
</cvar>
<cvar name="MAKEINDEXCOMSTR">
<summary>
+<para>
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 &cv-link-MAKEINDEXCOM; (the command line) is displayed.
+</para>
</summary>
</cvar>
<cvar name="MAKEINDEXFLAGS">
<summary>
+<para>
General options passed to the makeindex generator for the TeX formatter
and typesetter and the LaTeX structured formatter and typesetter.
+</para>
</summary>
</cvar>
<cvar name="TEX">
<summary>
+<para>
The TeX formatter and typesetter.
+</para>
</summary>
</cvar>
<cvar name="TEXCOM">
<summary>
+<para>
The command line used to call the TeX formatter and typesetter.
+</para>
</summary>
</cvar>
<cvar name="TEXCOMSTR">
<summary>
+<para>
The string displayed when calling
the TeX formatter and typesetter.
If this is not set, then &cv-link-TEXCOM; (the command line) is displayed.
+</para>
-<example>
+<example_commands>
env = Environment(TEXCOMSTR = "Building $TARGET from TeX input $SOURCES")
-</example>
+</example_commands>
</summary>
</cvar>
<cvar name="TEXFLAGS">
<summary>
+<para>
General options passed to the TeX formatter and typesetter.
+</para>
</summary>
</cvar>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/textfile.xml b/src/engine/SCons/Tool/textfile.xml
index 3a53b573..c30e6658 100644
--- a/src/engine/SCons/Tool/textfile.xml
+++ b/src/engine/SCons/Tool/textfile.xml
@@ -1,43 +1,70 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="textfile">
<summary>
+<para>
Set construction variables for the &b-Textfile; and &b-Substfile; builders.
+</para>
</summary>
<sets>
-LINESEPARATOR
-SUBSTFILEPREFIX
-SUBSTFILESUFFIX
-TEXTFILEPREFIX
-TEXTFILESUFFIX
+<item>LINESEPARATOR</item>
+<item>SUBSTFILEPREFIX</item>
+<item>SUBSTFILESUFFIX</item>
+<item>TEXTFILEPREFIX</item>
+<item>TEXTFILESUFFIX</item>
</sets>
<uses>
-SUBST_DICT
+<item>SUBST_DICT</item>
</uses>
</tool>
<builder name="Textfile">
<summary>
+<para>
The &b-Textfile; builder generates a single text file.
The source strings constitute the lines;
nested lists of sources are flattened.
&cv-LINESEPARATOR; is used to separate the strings.
+</para>
+<para>
If present, the &cv-SUBST_DICT; construction variable
is used to modify the strings before they are written;
see the &b-Substfile; description for details.
+</para>
+<para>
The prefix and suffix specified by the &cv-TEXTFILEPREFIX;
and &cv-TEXTFILESUFFIX; 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>
+<example_commands>
# builds/writes foo.txt
env.Textfile(target = 'foo.txt', source = ['Goethe', 42, 'Schiller'])
@@ -76,26 +103,33 @@ blob.txt
Schiller
tanteratei
....8&lt;---- (no linefeed at the end)
-</example>
+</example_commands>
</summary>
</builder>
<builder name="Substfile">
<summary>
+<para>
The &b-Substfile; builder generates a single text file
by concatenating the source files.
Nested lists of sources are flattened.
&cv-LINESEPARATOR; is used to separate the source files;
see the description of &b-Textfile; for details.
+</para>
+<para>
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>
The prefix and suffix specified by the &cv-SUBSTFILEPREFIX;
and &cv-SUBSTFILESUFFIX; construction variables
(the null string by default in both cases)
are automatically added to the target if they are not already present.
+</para>
+<para>
If a construction variable named &cv-SUBST_DICT; is present,
it may be either a Python dictionary or a sequence of (key,value) tuples.
If the former,
@@ -103,7 +137,9 @@ 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>
Any occurences in the source of a key
are replaced by the corresponding value,
which may be a Python callable function or a string.
@@ -111,8 +147,9 @@ 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>
+<example_commands>
env = Environment(tools = ['default', 'textfile'])
env['prefix'] = '/usr/bin'
@@ -154,52 +191,66 @@ subst.Substfile('pgm2.c', [Value('#include "@foo@.h"'),
"pgm2.in"
])
-</example>
+</example_commands>
</summary>
</builder>
<cvar name="LINESEPARATOR">
<summary>
+<para>
The separator used by the &b-Substfile; and &b-Textfile; builders.
This value is used between sources when constructing the target.
It defaults to the current system line separator.
+</para>
</summary>
</cvar>
<cvar name="SUBST_DICT">
<summary>
+<para>
The dictionary used by the &b-Substfile; or &b-Textfile; 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>
</summary>
</cvar>
<cvar name="SUBSTFILEPREFIX">
<summary>
+<para>
The prefix used for &b-Substfile; file names,
the null string by default.
+</para>
</summary>
</cvar>
<cvar name="SUBSTFILESUFFIX">
<summary>
+<para>
The suffix used for &b-Substfile; file names,
the null string by default.
+</para>
</summary>
</cvar>
<cvar name="TEXTFILEPREFIX">
<summary>
+<para>
The prefix used for &b-Textfile; file names,
the null string by default.
+</para>
</summary>
</cvar>
<cvar name="TEXTFILESUFFIX">
<summary>
+<para>
The suffix used for &b-Textfile; file names;
<filename>.txt</filename> by default.
+</para>
</summary>
</cvar>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/tlib.xml b/src/engine/SCons/Tool/tlib.xml
index 55179d3a..6c10d1b0 100644
--- a/src/engine/SCons/Tool/tlib.xml
+++ b/src/engine/SCons/Tool/tlib.xml
@@ -1,22 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="tlib">
<summary>
+<para>
Sets construction variables for the Borlan
<application>tib</application> library archiver.
+</para>
</summary>
<sets>
-AR
-ARFLAGS
-ARCOM
-LIBPREFIX
-LIBSUFFIX
+<item>AR</item>
+<item>ARFLAGS</item>
+<item>ARCOM</item>
+<item>LIBPREFIX</item>
+<item>LIBSUFFIX</item>
</sets>
<uses>
-ARCOMSTR
+<item>ARCOMSTR</item>
</uses>
</tool>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/xgettext.xml b/src/engine/SCons/Tool/xgettext.xml
index 045a5747..b29fe7bf 100644
--- a/src/engine/SCons/Tool/xgettext.xml
+++ b/src/engine/SCons/Tool/xgettext.xml
@@ -1,40 +1,62 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="xgettext">
<summary>
+<para>
This scons tool is a part of scons &t-link-gettext; toolset. It provides
scons interface to <command>xgettext(1)</command>
program, which extracts internationalized messages from source code. The tool
provides &b-POTUpdate; builder to make <literal>PO</literal>
<emphasis>Template</emphasis> files.
+</para>
</summary>
<sets>
-POTSUFFIX
-POTUPDATE_ALIAS
-XGETTEXTCOM
-XGETTEXTCOMSTR
-XGETTEXTFLAGS
-XGETTEXTFROM
-XGETTEXTFROMPREFIX
-XGETTEXTFROMSUFFIX
-XGETTEXTPATH
-XGETTEXTPATHPREFIX
-XGETTEXTPATHSUFFIX
-_XGETTEXTDOMAIN
-_XGETTEXTFROMFLAGS
-_XGETTEXTPATHFLAGS
+<item>POTSUFFIX</item>
+<item>POTUPDATE_ALIAS</item>
+<item>XGETTEXTCOM</item>
+<item>XGETTEXTCOMSTR</item>
+<item>XGETTEXTFLAGS</item>
+<item>XGETTEXTFROM</item>
+<item>XGETTEXTFROMPREFIX</item>
+<item>XGETTEXTFROMSUFFIX</item>
+<item>XGETTEXTPATH</item>
+<item>XGETTEXTPATHPREFIX</item>
+<item>XGETTEXTPATHSUFFIX</item>
+<item>_XGETTEXTDOMAIN</item>
+<item>_XGETTEXTFROMFLAGS</item>
+<item>_XGETTEXTPATHFLAGS</item>
</sets>
<uses>
-POTDOMAIN
+<item>POTDOMAIN</item>
</uses>
</tool>
<builder name="POTUpdate">
<summary>
+<para>
The builder belongs to &t-link-xgettext; 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
@@ -46,7 +68,9 @@ special alias (<literal>pot-update</literal> by default, see
<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>
<note> <para>You may see <command>xgettext(1)</command> being invoked by the
&t-link-xgettext; tool even if there is no real change in internationalized
messages (so the <literal>POT</literal> file is not being updated). This
@@ -54,114 +78,143 @@ 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>
<emphasis>Example 1.</emphasis>
Let's create <filename>po/</filename> directory and place following
<filename>SConstruct</filename> script there:
-<example>
+</para>
+<example_commands>
# SConstruct in 'po/' subdir
env = Environment( tools = ['default', 'xgettext'] )
env.POTUpdate(['foo'], ['../a.cpp', '../b.cpp'])
env.POTUpdate(['bar'], ['../c.cpp', '../d.cpp'])
-</example>
+</example_commands>
+<para>
Then invoke scons few times:
-<example>
+</para>
+<example_commands>
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>
+</example_commands>
+<para>
the results shall be as the comments above say.
+</para>
+<para>
<emphasis>Example 2.</emphasis>
The &b-POTUpdate; 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 &cv-link-POTDOMAIN; construction
variable or providing it as an override to &b-POTUpdate; builder:
-<example>
+</para>
+<example_commands>
# 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>
+</example_commands>
+<para>
<emphasis>Example 3.</emphasis>
The sources may be specified within separate file, for example
<filename>POTFILES.in</filename>:
-<example>
+</para>
+<example_commands>
# POTFILES.in in 'po/' subdirectory
../a.cpp
../b.cpp
# end of file
-</example>
+</example_commands>
+<para>
The name of the file (<filename>POTFILES.in</filename>) containing the list of
sources is provided via &cv-link-XGETTEXTFROM;:
-<example>
+</para>
+<example_commands>
# SConstruct file in 'po/' subdirectory
env = Environment( tools = ['default', 'xgettext'] )
env.POTUpdate(XGETTEXTFROM = 'POTFILES.in')
-</example>
+</example_commands>
+<para>
<emphasis>Example 4.</emphasis>
You may use &cv-link-XGETTEXTPATH; 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:
-<example>
+</para>
+<example_commands>
# POTFILES.in in 'po/' subdirectory
a.cpp
b.cpp
# end of file
-</example>
+</example_commands>
-<example>
+<example_commands>
# SConstruct file in 'po/' subdirectory
env = Environment( tools = ['default', 'xgettext'] )
env.POTUpdate(XGETTEXTFROM = 'POTFILES.in', XGETTEXTPATH='../')
-</example>
+</example_commands>
+<para>
<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>
Let's create <filename>0/1/po/SConstruct</filename> script:
-<example>
+</para>
+<example_commands>
# SConstruct file in '0/1/po/' subdirectory
env = Environment( tools = ['default', 'xgettext'] )
env.POTUpdate(XGETTEXTFROM = 'POTFILES.in', XGETTEXTPATH=['../', '../../'])
-</example>
+</example_commands>
+<para>
and <filename>0/1/po/POTFILES.in</filename>:
-<example>
+</para>
+<example_commands>
# POTFILES.in in '0/1/po/' subdirectory
a.cpp
# end of file
-</example>
+</example_commands>
+<para>
Write two <filename>*.cpp</filename> files, the first one is
<filename>0/a.cpp</filename>:
-<example>
+</para>
+<example_commands>
/* 0/a.cpp */
gettext("Hello from ../../a.cpp")
-</example>
+</example_commands>
+<para>
and the second is <filename>0/1/a.cpp</filename>:
-<example>
+</para>
+<example_commands>
/* 0/1/a.cpp */
gettext("Hello from ../a.cpp")
-</example>
+</example_commands>
+<para>
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
-<example>
+</para>
+<example_commands>
# SConstruct file in '0/1/po/' subdirectory
env = Environment( tools = ['default', 'xgettext'] )
env.POTUpdate(XGETTEXTFROM = 'POTFILES.in', XGETTEXTPATH=['../../', '../'])
-</example>
+</example_commands>
+<para>
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>
</summary>
</builder>
@@ -169,120 +222,152 @@ then the <filename>messages.pot</filename> will contain
<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
<cvar name="POTSUFFIX">
<summary>
+<para>
Suffix used for PO Template files (default: <literal>'.pot'</literal>).
See &t-link-xgettext; tool and &b-link-POTUpdate; builder.
+</para>
</summary>
</cvar>
<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
<cvar name="POTUPDATE_ALIAS">
<summary>
+<para>
Name of the common phony target for all PO Templates created with
&b-link-POUpdate; (default: <literal>'pot-update'</literal>).
See &t-link-xgettext; tool and &b-link-POTUpdate; builder.
+</para>
</summary>
</cvar>
<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
<cvar name="XGETTEXT">
<summary>
+<para>
Path to <command>xgettext(1)</command> program (found via
<function>Detect()</function>).
See &t-link-xgettext; tool and &b-link-POTUpdate; builder.
+</para>
</summary>
</cvar>
<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
<cvar name="XGETTEXTCOM">
<summary>
+<para>
Complete xgettext command line.
See &t-link-xgettext; tool and &b-link-POTUpdate; builder.
+</para>
</summary>
</cvar>
<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
<cvar name="XGETTEXTCOMSTR">
<summary>
+<para>
A string that is shown when <command>xgettext(1)</command> command is invoked
(default: <literal>''</literal>, which means "print &cv-link-XGETTEXTCOM;").
See &t-link-xgettext; tool and &b-link-POTUpdate; builder.
+</para>
</summary>
</cvar>
<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
<cvar name="XGETTEXTFLAGS">
<summary>
+<para>
Additional flags to <command>xgettext(1)</command>.
See &t-link-xgettext; tool and &b-link-POTUpdate; builder.
+</para>
</summary>
</cvar>
<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
<cvar name="XGETTEXTFROM">
<summary>
+<para>
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 &cv-XGETTEXTFROM; files have same syntax and semantics as the well known
GNU <filename>POTFILES.in</filename>.
See &t-link-xgettext; tool and &b-link-POTUpdate; builder.
+</para>
</summary>
</cvar>
<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
<cvar name="XGETTEXTPATH">
<summary>
+<para>
List of directories, there <command>xgettext(1)</command> will look for
source files (default: <literal>[]</literal>).
<note><para>
This variable works only together with &cv-link-XGETTEXTFROM;
</para></note>
See also &t-link-xgettext; tool and &b-link-POTUpdate; builder.
+</para>
</summary>
</cvar>
<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
<cvar name="XGETTEXTPATHPREFIX">
<summary>
+<para>
This flag is used to add single search path to
<command>xgettext(1)</command>'s commandline (default:
<literal>'-D'</literal>).
+</para>
</summary>
</cvar>
<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
<cvar name="XGETTEXTPATHSUFFIX">
<summary>
+<para>
(default: <literal>''</literal>)
+</para>
</summary>
</cvar>
<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
<cvar name="XGETTEXTFROMPREFIX">
<summary>
+<para>
This flag is used to add single &cv-link-XGETTEXTFROM; file to
<command>xgettext(1)</command>'s commandline (default:
<literal>'-f'</literal>).
+</para>
</summary>
</cvar>
<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
<cvar name="XGETTEXTFROMSUFFIX">
<summary>
+<para>
(default: <literal>''</literal>)
+</para>
</summary>
</cvar>
<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
<cvar name="_XGETTEXTDOMAIN">
<summary>
+<para>
Internal "macro". Generates <command>xgettext</command> domain name
form source and target (default: <literal>'${TARGET.filebase}'</literal>).
+</para>
</summary>
</cvar>
<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
<cvar name="_XGETTEXTFROMFLAGS">
<summary>
+<para>
Internal "macro". Genrates list of <literal>-D&lt;dir&gt;</literal> flags
from the &cv-link-XGETTEXTPATH; list.
+</para>
</summary>
</cvar>
<!-- %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -->
<cvar name="_XGETTEXTPATHFLAGS">
<summary>
+<para>
Internal "macro". Generates list of <literal>-f&lt;file&gt;</literal> flags
from &cv-link-XGETTEXTFROM;.
+</para>
</summary>
</cvar>
<!--
-->
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/yacc.xml b/src/engine/SCons/Tool/yacc.xml
index aa648b1e..5ad213ce 100644
--- a/src/engine/SCons/Tool/yacc.xml
+++ b/src/engine/SCons/Tool/yacc.xml
@@ -1,64 +1,94 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="yacc">
<summary>
+<para>
Sets construction variables for the &yacc; parse generator.
+</para>
</summary>
<sets>
-YACC
-YACCFLAGS
-YACCCOM
-YACCHFILESUFFIX
-YACCHXXFILESUFFIX
-YACCVCGFILESUFFIX
+<item>YACC</item>
+<item>YACCFLAGS</item>
+<item>YACCCOM</item>
+<item>YACCHFILESUFFIX</item>
+<item>YACCHXXFILESUFFIX</item>
+<item>YACCVCGFILESUFFIX</item>
</sets>
<uses>
-YACCCOMSTR
+<item>YACCCOMSTR</item>
</uses>
</tool>
<cvar name="YACC">
<summary>
+<para>
The parser generator.
+</para>
</summary>
</cvar>
<cvar name="YACCCOM">
<summary>
+<para>
The command line used to call the parser generator
to generate a source file.
+</para>
</summary>
</cvar>
<cvar name="YACCCOMSTR">
<summary>
+<para>
The string displayed when generating a source file
using the parser generator.
If this is not set, then &cv-link-YACCCOM; (the command line) is displayed.
+</para>
-<example>
+<example_commands>
env = Environment(YACCCOMSTR = "Yacc'ing $TARGET from $SOURCES")
-</example>
+</example_commands>
</summary>
</cvar>
<cvar name="YACCFLAGS">
<summary>
+<para>
General options passed to the parser generator.
If &cv-link-YACCFLAGS; 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>
</summary>
</cvar>
<cvar name="YACCHFILESUFFIX">
<summary>
+<para>
The suffix of the C
header file generated by the parser generator
when the
@@ -71,11 +101,13 @@ 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>
</summary>
</cvar>
<cvar name="YACCHXXFILESUFFIX">
<summary>
+<para>
The suffix of the C++
header file generated by the parser generator
when the
@@ -94,11 +126,13 @@ where the default is
because the default &bison; parser generator just
appends <filename>.h</filename>
to the name of the generated C++ file.
+</para>
</summary>
</cvar>
<cvar name="YACCVCGFILESUFFIX">
<summary>
+<para>
The suffix of the file
containing the VCG grammar automaton definition
when the
@@ -111,5 +145,8 @@ 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>
</summary>
</cvar>
+
+</sconsdoc> \ No newline at end of file
diff --git a/src/engine/SCons/Tool/zip.xml b/src/engine/SCons/Tool/zip.xml
index c2b80266..63f7636d 100644
--- a/src/engine/SCons/Tool/zip.xml
+++ b/src/engine/SCons/Tool/zip.xml
@@ -1,27 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
<!--
__COPYRIGHT__
This file is processed by the bin/SConsDoc.py module.
See its __doc__ string for a discussion of the format.
-->
+
+<!DOCTYPE sconsdoc [
+<!ENTITY % scons SYSTEM '../../../../doc/scons.mod'>
+%scons;
+<!ENTITY % builders-mod SYSTEM '../../../../doc/generated/builders.mod'>
+%builders-mod;
+<!ENTITY % functions-mod SYSTEM '../../../../doc/generated/functions.mod'>
+%functions-mod;
+<!ENTITY % tools-mod SYSTEM '../../../../doc/generated/tools.mod'>
+%tools-mod;
+<!ENTITY % variables-mod SYSTEM '../../../../doc/generated/variables.mod'>
+%variables-mod;
+]>
+
+<sconsdoc xmlns="http://www.scons.org/dbxsd/v1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 scons.xsd">
+
<tool name="zip">
<summary>
+<para>
Sets construction variables for the &zip; archiver.
+</para>
</summary>
<sets>
-ZIP
-ZIPFLAGS
-ZIPCOM
-ZIPCOMPRESSION
-ZIPSUFFIX
+<item>ZIP</item>
+<item>ZIPFLAGS</item>
+<item>ZIPCOM</item>
+<item>ZIPCOMPRESSION</item>
+<item>ZIPSUFFIX</item>
</sets>
<uses>
-ZIPCOMSTR
+<item>ZIPCOMSTR</item>
</uses>
</tool>
<builder name="Zip">
<summary>
+<para>
Builds a zip archive of the specified files
and/or directories.
Unlike most builder methods,
@@ -38,47 +60,55 @@ any on-disk files,
regardless of whether or not
&scons;
knows about them from other Builder or function calls.
+</para>
-<example>
+<example_commands>
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>
+</example_commands>
</summary>
</builder>
<cvar name="ZIP">
<summary>
+<para>
The zip compression and file packaging utility.
+</para>
</summary>
</cvar>
<cvar name="ZIPCOM">
<summary>
+<para>
The command line used to call the zip utility,
or the internal Python function used to create a
zip archive.
+</para>
</summary>
</cvar>
<cvar name="ZIPCOMSTR">
<summary>
+<para>
The string displayed when archiving files
using the zip utility.
If this is not set, then &cv-link-ZIPCOM;
(the command line or internal Python function) is displayed.
+</para>
-<example>
+<example_commands>
env = Environment(ZIPCOMSTR = "Zipping $TARGET")
-</example>
+</example_commands>
</summary>
</cvar>
<cvar name="ZIPCOMPRESSION">
<summary>
+<para>
The
<varname>compression</varname>
flag
@@ -93,21 +123,27 @@ which creates a compressed zip archive.
This value has no effect if the
<literal>zipfile</literal>
module is unavailable.
+</para>
</summary>
</cvar>
<cvar name="ZIPFLAGS">
<summary>
+<para>
General options passed to the zip utility.
+</para>
</summary>
</cvar>
<cvar name="ZIPSUFFIX">
<summary>
+<para>
The suffix used for zip file names.
+</para>
</summary>
</cvar>
+</sconsdoc>
<cvar name="ZIPROOT">
<summary>
An optional zip root directory (default empty). The filenames stored