summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
Diffstat (limited to 'doc')
-rw-r--r--doc/SConscript170
-rw-r--r--doc/design/titlepage/SConsBuildBricks_path.svg22
-rw-r--r--doc/generated/builders.gen551
-rw-r--r--doc/generated/examples/caching_ex-random_1.xml4
-rw-r--r--doc/generated/examples/troubleshoot_Dump_1.xml4
-rw-r--r--doc/generated/examples/troubleshoot_Dump_2.xml8
-rw-r--r--doc/generated/examples/troubleshoot_explain1_3.xml2
-rw-r--r--doc/generated/examples/troubleshoot_stacktrace_2.xml2
-rw-r--r--doc/generated/functions.gen33
-rw-r--r--doc/generated/tools.gen43
-rw-r--r--doc/generated/tools.mod8
-rw-r--r--doc/generated/variables.gen989
-rw-r--r--doc/generated/variables.mod68
-rw-r--r--doc/man/scons-time.xml3
-rw-r--r--doc/man/scons.xml11
-rw-r--r--doc/man/sconsign.xml3
-rw-r--r--doc/man/titlepage/SConsBuildBricks_path.svg22
-rw-r--r--doc/python10/process.xml4
-rw-r--r--doc/reference/titlepage/SConsBuildBricks_path.svg22
-rw-r--r--doc/scons.mod1
-rw-r--r--doc/user/build-install.xml18
-rw-r--r--doc/user/builders-writing.xml2
-rw-r--r--doc/user/less-simple.xml1
-rw-r--r--doc/user/libraries.xml2
-rw-r--r--doc/user/main.xml4
-rw-r--r--doc/user/misc.xml9
-rw-r--r--doc/user/output.xml22
-rw-r--r--doc/user/repositories.xml2
-rw-r--r--doc/user/sconf.xml26
-rw-r--r--doc/user/tasks.xml4
-rw-r--r--doc/user/titlepage/SConsBuildBricks_path.svg22
-rw-r--r--doc/version.xml4
32 files changed, 1333 insertions, 753 deletions
diff --git a/doc/SConscript b/doc/SConscript
index d9afc238..6dbf33de 100644
--- a/doc/SConscript
+++ b/doc/SConscript
@@ -29,25 +29,43 @@ import os.path
import re
import sys
import glob
-import SConsDoc
-import SConsExamples
+
import bootstrap
Import('build_dir', 'env', 'whereis', 'revaction')
-env = env.Clone()
+#
+# -- Check prerequisites for building the documentation ---
+#
+skip_doc = False
-build = os.path.join(build_dir, 'doc')
+try:
+ import SConsDoc
+ import SConsExamples
+except ImportError as exc:
+ print("doc: SConsDoc failed to import, the error was:")
+ print(" ImportError: %s" % exc)
+ print(" Please make sure that python-libxml2 or python-lxml is installed.")
+ skip_doc = True
fop = whereis('fop')
xep = whereis('xep')
+
+if not fop and not xep:
+ print "doc: No PDF renderer found (fop|xep)!"
+ skip_doc = True
+
+#
+# --- Configure build
+#
+env = env.Clone()
+
+build = os.path.join(build_dir, 'doc')
+
epydoc_cli = whereis('epydoc')
gs = whereis('gs')
lynx = whereis('lynx')
-#
-#
-#
dist_doc_tar_gz = '$DISTDIR/scons-doc-${VERSION}.tar.gz'
tar_deps = []
@@ -56,7 +74,9 @@ tar_list = []
orig_env = env
env = orig_env.Clone(SCONS_PY = File('#src/script/scons.py').rfile())
-
+#
+# --- Helpers ---
+#
def writeVersionXml(verfile, date, ver, rev):
""" Helper function: Write a version.xml file. """
try:
@@ -76,31 +96,54 @@ THIS IS AN AUTOMATICALLY-GENERATED FILE. DO NOT EDIT.
<!ENTITY buildrevision "%s">
""" % (date, ver, rev))
+
+# The names of the target files for the MAN pages
+man_page_list = ['scons.1','scons-time.1','sconsign.1']
+
+# Template for the MAN page texts when we can't properly
+# create them because the skip_doc flag is set (required
+# modules/tools aren't installed in the current system)
+man_replace_tpl = """.TH "%(uctitle)s" "1" "%(today)s" "SCons %(version)s" "SCons %(version)s"
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.nh
+.ad l
+.SH "NOTE"
+%(title)s \- This is a replacement file, stemming from an incomplete
+packaging process without the required doc modules installed. Please
+update the system and try running bootstrap.py again.
+"""
+
#
-# Check whether we have all tools installed for
-# building the documentation.
+# --- Processing ---
#
-skip_doc = False
-try:
- import libxml2
-except:
- try:
- import lxml
- except:
- print("doc: Neither libxml2 nor lxml Python bindings found!")
- print(" Please install one of the packages python-libxml2 or python-lxml.")
- skip_doc = True
-
-if not fop and not xep:
- print("doc: No PDF renderer found (fop|xep)!")
- skip_doc = True
-
+
if skip_doc:
print("doc: ...skipping building User Guide.")
+ print(" ...creating fake MAN pages.")
+
+ # Since the top-level SConstruct requires the MAN
+ # pages to exist for the basic packaging, we create simple
+ # stub texts here as replacement...
+ scdir = os.path.join(build, 'man')
+ if not os.path.isdir(scdir):
+ os.makedirs(scdir)
+
+ import datetime
+ today = datetime.date.today().strftime("%m/%d/%Y")
+ version = env.subst('$VERSION')
+ for m in man_page_list:
+ man, _ = os.path.splitext(m)
+ fman = open(os.path.join(scdir, m), "w")
+ fman.write(man_replace_tpl % {'uctitle' : man.upper().replace("-", "\\-"),
+ 'today' : today,
+ 'title' : man,
+ 'version' : version})
+ fman.close()
else:
if not lynx:
print("doc: Warning, lynx is not installed...created release packages won't be complete!")
-
+
#
# Always create a version.xml file containing the version information
# for this run. Ignore it for dependency purposes so we don't
@@ -116,7 +159,7 @@ else:
#
# Builder for copying files to an Install dir, based
# on their extension (better: glob matching pattern)...
- #
+ #
def _glob_install_action(target, source, env):
if not SCons.Util.is_List(target):
target = [target]
@@ -129,7 +172,7 @@ else:
target = [target]
if not SCons.Util.is_List(source):
source = [source]
-
+
res = []
res_src = []
tdir = env.Dir(target[0])
@@ -144,7 +187,7 @@ else:
#
# Builder for copying ChunkedHTML files to an Install dir...
- #
+ #
def _chunked_install_action(target, source, env):
if not SCons.Util.is_List(target):
target = [target]
@@ -154,13 +197,13 @@ else:
spattern = os.path.join(os.path.split(str(source[0]))[0], '*.html')
for g in glob.glob(spattern):
shutil.copy(g, tdir)
-
+
def _chunked_install_emitter(target, source, env):
if not SCons.Util.is_List(target):
target = [target]
if not SCons.Util.is_List(source):
source = [source]
-
+
tdir = env.Dir(target[0])
head, tail = os.path.split(str(source[0]))
return os.path.join(str(tdir), tail), source
@@ -178,18 +221,18 @@ else:
print("OK")
else:
print("Validation failed! Please correct the errors above and try again.")
- sys.exit(0)
-
+ sys.exit(1)
+
print("Checking whether all example names are unique...")
if SConsExamples.exampleNamesAreUnique(os.path.join('doc','user')):
print("OK")
else:
print("Not all example names and suffixes are unique! Please correct the errors listed above and try again.")
- sys.exit(0)
-
+ sys.exit(1)
+
# List of prerequisite files in the build/doc folder
buildsuite = []
-
+
def copy_dbfiles(env, toolpath, paths, fpattern, use_builddir=True):
""" Helper function, copies a bunch of files matching
the given fpattern to a target directory.
@@ -210,7 +253,7 @@ else:
target_dir = env.Dir(os.path.join(*(toolpath+paths)))
buildsuite.extend(env.GlobInstall(target_dir,
os.path.join(*(paths + fpattern))))
-
+
#
# Copy generated files (.gen/.mod/.xml) to the build folder
#
@@ -259,7 +302,7 @@ else:
# installing/copying them to the build directory. It basically
# links the original sources to the respective build folder,
# such that a simple 'python bootstrap.py' rebuilds the
- # documentation when a file, like 'doc/user/depends.xml'
+ # documentation when a file, like 'doc/user/depends.xml'
# for example, changes.
# Finally, in DOCNODES we store the created PDF and HTML files,
# such that we can then install them in the proper places for
@@ -274,10 +317,7 @@ else:
'user' : (['chunked','html','pdf','epub','text'], [], []),
'man' : (['man','epub','text'], [], [])
}
-
- # The names of the target files for the MAN pages
- man_page_list = ['scons.1','scons-time.1','sconsign.1']
-
+
#
# We have to tell SCons to scan the top-level XML files which
# get included by the document XML files in the subdirectories.
@@ -289,15 +329,15 @@ else:
continue
base, ext = os.path.splitext(s)
if ext in ['.fig', '.jpg']:
- buildsuite.extend(env.Command(os.path.join(build, s),
- s,
+ buildsuite.extend(env.Command(os.path.join(build, s),
+ s,
Copy("$TARGET", "$SOURCE")))
else:
revaction([env.File(os.path.join(build, s))],
[env.File(s)], env)
for doc in docs:
-
+
#
# Read MANIFEST file and copy the listed files to the
# build directory, while branding them with the
@@ -321,7 +361,7 @@ else:
else:
target_dir = os.path.join(build, doc)
if ext in ['.fig', '.jpg', '.svg']:
- docs[doc][DOCDEPENDS].extend(env.Command(build_s, doc_s,
+ docs[doc][DOCDEPENDS].extend(env.Command(build_s, doc_s,
Copy("$TARGET", "$SOURCE")))
else:
btarget = env.File(build_s)
@@ -351,18 +391,18 @@ else:
sctargets.append(env.File(os.path.join(scdir, 'scons-%s.pdf' % doc)))
if 'epub' in docs[doc][DOCTARGETS]:
sctargets.append(env.File(os.path.join(scdir, 'scons-%s.epub' % doc)))
-
+
if 'man' in docs[doc][DOCTARGETS]:
for m in man_page_list:
sctargets.append(os.path.join(scdir, m))
man, _1 = os.path.splitext(m)
-
+
sctargets.append(os.path.join(scdir, 'scons-%s.pdf' % man))
sctargets.append(os.path.join(scdir, 'scons-%s.html' % man))
-
- docs[doc][DOCNODES].extend(env.Command(sctargets, buildsuite + docs[doc][DOCDEPENDS],
+
+ docs[doc][DOCNODES].extend(env.Command(sctargets, buildsuite + docs[doc][DOCDEPENDS],
"cd %s && $PYTHON ${SCONS_PY.abspath}%s" % (scdir, cleanopt)))
-
+
install_css = False
for doc in docs:
@@ -374,13 +414,13 @@ else:
epub = os.path.join(build, 'EPUB', 'scons-%s.epub' % doc)
text = os.path.join(build, 'TEXT', 'scons-%s.txt' % doc)
if 'chunked' in docs[doc][DOCTARGETS]:
- installed_chtml = env.ChunkedInstall(env.Dir(htmldir),
+ installed_chtml = env.ChunkedInstall(env.Dir(htmldir),
os.path.join(build, doc,'scons-%s' % doc, 'index.html'))
installed_chtml_css = env.Install(env.Dir(htmldir),
os.path.join(build, doc, 'scons.css'))
env.Depends(installed_chtml, docs[doc][DOCNODES])
env.Depends(installed_chtml_css, docs[doc][DOCNODES])
-
+
tar_deps.extend([htmlindex, installed_chtml_css])
tar_list.extend([htmldir])
Local(htmlindex)
@@ -393,7 +433,7 @@ else:
Local(html)
env.Ignore(html, version_xml)
install_css = True
-
+
if 'pdf' in docs[doc][DOCTARGETS]:
env.InstallAs(env.File(pdf), env.File(os.path.join(build, doc,'scons-%s.pdf' % doc)))
Local(pdf)
@@ -409,14 +449,14 @@ else:
tar_deps.append(epub)
tar_list.append(epub)
-
- if ('text' in docs[doc][DOCTARGETS] and lynx and
+
+ if ('text' in docs[doc][DOCTARGETS] and lynx and
(('html' in docs[doc][DOCTARGETS]) or (doc == 'man'))):
texthtml = os.path.join(build, doc,'index.html')
if doc == 'man':
# Special handling for single MAN file
texthtml = os.path.join(build, doc, 'scons-scons.html')
-
+
env.Command(text, env.File(texthtml), "lynx -dump ${SOURCE.abspath} > $TARGET")
Local(text)
@@ -424,21 +464,21 @@ else:
tar_deps.append(text)
tar_list.append(text)
-
-
+
+
if 'man' in docs[doc][DOCTARGETS]:
#
# Man page(s)
#
for m in man_page_list:
man, _1 = os.path.splitext(m)
-
+
pdf = os.path.join(build, 'PDF', '%s-man.pdf' % man)
html = os.path.join(build, 'HTML' , '%s-man.html' % man)
-
+
env.InstallAs(env.File(pdf), env.File(os.path.join(build, 'man','scons-%s.pdf' % man)))
env.InstallAs(env.File(html), env.File(os.path.join(build, 'man','scons-%s.html' % man)))
-
+
tar_deps.extend([pdf, html])
tar_list.extend([pdf, html])
@@ -446,7 +486,7 @@ else:
# Install CSS file, common to all single HTMLs
if install_css:
css_file = os.path.join(build, 'HTML', 'scons.css')
- env.InstallAs(env.File(css_file),
+ env.InstallAs(env.File(css_file),
env.File(os.path.join(build, 'user','scons.css')))
tar_deps.extend([css_file])
tar_list.extend([css_file])
@@ -502,7 +542,7 @@ if not epydoc_cli:
# http://epydoc.svn.sourceforge.net/viewvc/epydoc/trunk/epydoc/src/epydoc/cli.py
elif env['EPYDOCFLAGS'] == '--pdf':
- pdf_writer = LatexWriter(docindex,
+ pdf_writer = LatexWriter(docindex,
docformat='restructuredText',
prj_name='SCons',
prj_url='http://www.scons.org/')
@@ -522,7 +562,7 @@ else: # epydoc_cli is found
Touch('$TARGET'),
]
-
+
if not epydoc_cli and not epydoc:
print("doc: epydoc not found, skipping building API documentation.")
else:
diff --git a/doc/design/titlepage/SConsBuildBricks_path.svg b/doc/design/titlepage/SConsBuildBricks_path.svg
index ed0c60d7..0d7f63e0 100644
--- a/doc/design/titlepage/SConsBuildBricks_path.svg
+++ b/doc/design/titlepage/SConsBuildBricks_path.svg
@@ -14,9 +14,9 @@
height="80.330002"
id="svg2"
sodipodi:version="0.32"
- inkscape:version="0.48.1 r9760"
+ inkscape:version="0.48.4 r9939"
version="1.0"
- sodipodi:docname="SConsBuildBricks.svg"
+ sodipodi:docname="SConsBuildBricks_path.svg"
inkscape:export-filename="Constructs-using-SCons.png"
inkscape:export-xdpi="100"
inkscape:export-ydpi="100">
@@ -77,24 +77,22 @@
</cc:Agent>
</dc:contributor>
<cc:license
- rdf:resource="http://creativecommons.org/licenses/by-nc-sa/2.0/" />
+ rdf:resource="http://creativecommons.org/licenses/by-sa/3.0/" />
</cc:Work>
<cc:License
- rdf:about="http://creativecommons.org/licenses/by-nc-sa/2.5/">
+ rdf:about="http://creativecommons.org/licenses/by-sa/3.0/">
<cc:permits
- rdf:resource="http://web.resource.org/cc/Reproduction" />
+ rdf:resource="http://creativecommons.org/ns#Reproduction" />
<cc:permits
- rdf:resource="http://web.resource.org/cc/Distribution" />
+ rdf:resource="http://creativecommons.org/ns#Distribution" />
<cc:requires
- rdf:resource="http://web.resource.org/cc/Notice" />
+ rdf:resource="http://creativecommons.org/ns#Notice" />
<cc:requires
- rdf:resource="http://web.resource.org/cc/Attribution" />
- <cc:prohibits
- rdf:resource="http://web.resource.org/cc/CommercialUse" />
+ rdf:resource="http://creativecommons.org/ns#Attribution" />
<cc:permits
- rdf:resource="http://web.resource.org/cc/DerivativeWorks" />
+ rdf:resource="http://creativecommons.org/ns#DerivativeWorks" />
<cc:requires
- rdf:resource="http://web.resource.org/cc/ShareAlike" />
+ rdf:resource="http://creativecommons.org/ns#ShareAlike" />
</cc:License>
</rdf:RDF>
</metadata>
diff --git a/doc/generated/builders.gen b/doc/generated/builders.gen
index 3d534b07..d49156f3 100644
--- a/doc/generated/builders.gen
+++ b/doc/generated/builders.gen
@@ -486,6 +486,14 @@ and
source
arguments list different numbers of files or directories.
</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env.InstallAs(target = '/usr/local/bin/foo',
+ source = 'foo_debug')
+env.InstallAs(target = ['../lib/libfoo.a', '../lib/libbar.a'],
+ source = ['libFOO.a', 'libBAR.a'])
+</example_commands>
+
</listitem>
</varlistentry>
<varlistentry id="b-InstallVersionedLib">
@@ -497,17 +505,13 @@ arguments list different numbers of files or directories.
</term>
<listitem>
<para xmlns="http://www.scons.org/dbxsd/v1.0">
-Installs a versioned shared library. The <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHLIBVERSION"><envar>$SHLIBVERSION</envar></link>
-construction variable should be defined in the environment
-to confirm the version number in the library name.
-The symlinks appropriate to the architecture will be generated.
+Installs a versioned shared library. The symlinks appropriate to the
+architecture will be generated based on symlinks of the source library.
</para>
<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
-env.InstallAs(target = '/usr/local/bin/foo',
- source = 'foo_debug')
-env.InstallAs(target = ['../lib/libfoo.a', '../lib/libbar.a'],
- source = ['libFOO.a', 'libBAR.a'])
+env.InstallVersionedLib(target = '/usr/local/bin/foo',
+ source = 'libxyz.1.5.2.so')
</example_commands>
</listitem>
</varlistentry>
@@ -832,161 +836,105 @@ Compile files for languages defined in <filename>LINGUAS</filename> file
<term>
<function>env.MSVSProject()</function>
</term>
- <listitem>
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-Builds a Microsoft Visual Studio project file,
-and by default builds a solution file as well.
-</para>
-
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-This builds a Visual Studio project file, based on the version of
-Visual Studio that is configured (either the latest installed version,
-or the version specified by
-<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-MSVS_VERSION"><envar>$MSVS_VERSION</envar></link>
-in the Environment constructor).
-For Visual Studio 6, it will generate a
-<filename>.dsp</filename>
-file.
-For Visual Studio 7 (.NET) and later versions, it will generate a
-<filename>.vcproj</filename>
-file.
-</para>
-
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-By default,
-this also generates a solution file
-for the specified project,
-a
-<filename>.dsw</filename>
-file for Visual Studio 6
-or a
-<filename>.sln</filename>
-file for Visual Studio 7 (.NET).
-This behavior may be disabled by specifying
-<literal>auto_build_solution=0</literal>
-when you call
-<function xmlns="http://www.scons.org/dbxsd/v1.0">MSVSProject</function>,
-in which case you presumably want to
-build the solution file(s)
-by calling the
-<function xmlns="http://www.scons.org/dbxsd/v1.0">MSVSSolution</function>
-Builder (see below).
-</para>
-
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-The <function xmlns="http://www.scons.org/dbxsd/v1.0">MSVSProject</function> builder
-takes several lists of filenames
-to be placed into the project file.
-These are currently limited to
-<literal>srcs</literal>,
-<literal>incs</literal>,
-<literal>localincs</literal>,
-<literal>resources</literal>,
-and
-<literal>misc</literal>.
-These are pretty self-explanatory, but it should be noted that these
-lists are added to the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SOURCES"><envar>$SOURCES</envar></link> construction variable as strings,
-NOT as SCons File Nodes. This is because they represent file
-names to be added to the project file, not the source files used to
-build the project file.
-</para>
-
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-The above filename lists are all optional,
-although at least one must be specified
-for the resulting project file to be non-empty.
-</para>
-
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-In addition to the above lists of values,
-the following values may be specified:
-</para>
-
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-<literal>target</literal>:
-The name of the target
-<filename>.dsp</filename>
-or
-<filename>.vcproj</filename>
-file.
-The correct
-suffix for the version of Visual Studio must be used,
-but the
-<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-MSVSPROJECTSUFFIX"><envar>$MSVSPROJECTSUFFIX</envar></link>
-construction variable
-will be defined to the correct value (see example below).
-</para>
-
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-<literal>variant</literal>:
-The name of this particular variant.
-For Visual Studio 7 projects,
-this can also be a list of variant names.
-These are typically things like "Debug" or "Release", but really
-can be anything you want.
-For Visual Studio 7 projects,
-they may also specify a target platform
-separated from the variant name by a
-<literal>|</literal>
-(vertical pipe)
-character:
-<literal>Debug|Xbox</literal>.
-The default target platform is Win32.
-Multiple calls to
-<function xmlns="http://www.scons.org/dbxsd/v1.0">MSVSProject</function>
-with different variants are allowed;
-all variants will be added to the project file with their appropriate
-build targets and sources.
-</para>
-
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-<literal>buildtarget</literal>:
-An optional string, node, or list of strings or nodes
-(one per build variant), to tell the Visual Studio debugger
-what output target to use in what build variant.
-The number of
-<literal>buildtarget</literal>
-entries must match the number of
-<literal>variant</literal>
-entries.
-</para>
-
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-<literal>runfile</literal>:
-The name of the file that Visual Studio 7 and later
-will run and debug.
-This appears as the value of the
-<literal>Output</literal>
-field in the resutling Visual Studio project file.
-If this is not specified,
-the default is the same as the specified
-<literal>buildtarget</literal>
-value.
-</para>
-
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-Note that because <application xmlns="http://www.scons.org/dbxsd/v1.0">SCons</application> always executes its build commands
-from the directory in which the <filename xmlns="http://www.scons.org/dbxsd/v1.0">SConstruct</filename> file is located,
-if you generate a project file in a different directory
-than the <filename xmlns="http://www.scons.org/dbxsd/v1.0">SConstruct</filename> directory,
-users will not be able to double-click
-on the file name in compilation error messages
-displayed in the Visual Studio console output window.
-This can be remedied by adding the
-Visual C/C++
-<literal>/FC</literal>
-compiler option to the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-CCFLAGS"><envar>$CCFLAGS</envar></link> variable
-so that the compiler will print
-the full path name of any
-files that cause compilation errors.
-</para>
-
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-Example usage:
-</para>
-
-<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
-barsrcs = ['bar.cpp'],
+ <listitem> <para xmlns="http://www.scons.org/dbxsd/v1.0"> Builds a Microsoft Visual Studio project
+file, and by default builds a solution file as well. </para> <para xmlns="http://www.scons.org/dbxsd/v1.0"> This
+builds a Visual Studio project file, based on the version of Visual Studio
+that is configured (either the latest installed version, or the version
+specified by <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-MSVS_VERSION"><envar>$MSVS_VERSION</envar></link> in the Environment constructor). For
+Visual Studio 6, it will generate a <filename>.dsp</filename> file. For Visual
+Studio 7 (.NET) and later versions, it will generate a
+<filename>.vcproj</filename> file. </para> <para xmlns="http://www.scons.org/dbxsd/v1.0"> By default, this also
+generates a solution file for the specified project, a
+<filename>.dsw</filename> file for Visual Studio 6 or a
+<filename>.sln</filename> file for Visual Studio 7 (.NET). This behavior may
+be disabled by specifying <literal>auto_build_solution=0</literal> when you
+call <function xmlns="http://www.scons.org/dbxsd/v1.0">MSVSProject</function>, in which case you presumably want to build the solution
+file(s) by calling the <function xmlns="http://www.scons.org/dbxsd/v1.0">MSVSSolution</function> Builder (see below). </para> <para xmlns="http://www.scons.org/dbxsd/v1.0">
+The <function xmlns="http://www.scons.org/dbxsd/v1.0">MSVSProject</function> builder takes several lists of filenames to be placed into
+the project file. These are currently limited to <literal>srcs</literal>,
+<literal>incs</literal>, <literal>localincs</literal>,
+<literal>resources</literal>, and <literal>misc</literal>. These are pretty
+self-explanatory, but it should be noted that these lists are added to the
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SOURCES"><envar>$SOURCES</envar></link> construction variable as strings, NOT as SCons File Nodes.
+This is because they represent file names to be added to the project file, not
+the source files used to build the project file. </para> <para xmlns="http://www.scons.org/dbxsd/v1.0"> The above
+filename lists are all optional, although at least one must be specified for
+the resulting project file to be non-empty. </para> <para xmlns="http://www.scons.org/dbxsd/v1.0"> In addition to the
+above lists of values, the following values may be specified:
+</para><variablelist xmlns="http://www.scons.org/dbxsd/v1.0">
+ <varlistentry>
+ <term>target</term>
+
+ <listitem>
+ <para>The name of the target <filename>.dsp</filename> or
+ <filename>.vcproj</filename> file. The correct suffix for the version
+ of Visual Studio must be used, but the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-MSVSPROJECTSUFFIX"><envar>$MSVSPROJECTSUFFIX</envar></link>
+ construction variable will be defined to the correct value (see
+ example below).</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>variant</term>
+
+ <listitem>
+ <para>The name of this particular variant. For Visual Studio 7
+ projects, this can also be a list of variant names. These are
+ typically things like "Debug" or "Release", but really can be anything
+ you want. For Visual Studio 7 projects, they may also specify a target
+ platform separated from the variant name by a <literal>|</literal>
+ (vertical pipe) character: <literal>Debug|Xbox</literal>. The default
+ target platform is Win32. Multiple calls to <function xmlns="http://www.scons.org/dbxsd/v1.0">MSVSProject</function> with
+ different variants are allowed; all variants will be added to the
+ project file with their appropriate build targets and
+ sources.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>cmdargs</term>
+
+ <listitem>
+ <para>Additional command line arguments for the different
+ variants. The number of <literal>cmdargs</literal> entries must match
+ the number of <literal>variant</literal> entries, or be empty (not
+ specified). If you give only one, it will automatically be propagated
+ to all variants.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>buildtarget</term>
+
+ <listitem>
+ <para>An optional string, node, or list of strings or nodes (one
+ per build variant), to tell the Visual Studio debugger what output
+ target to use in what build variant. The number of
+ <literal>buildtarget</literal> entries must match the number of
+ <literal>variant</literal> entries.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>runfile</term>
+
+ <listitem>
+ <para>The name of the file that Visual Studio 7 and later will
+ run and debug. This appears as the value of the
+ <literal>Output</literal> field in the resulting Visual Studio project
+ file. If this is not specified, the default is the same as the
+ specified <literal>buildtarget</literal> value.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist><para xmlns="http://www.scons.org/dbxsd/v1.0"> Note that because <application xmlns="http://www.scons.org/dbxsd/v1.0">SCons</application> always executes its build
+commands from the directory in which the <filename xmlns="http://www.scons.org/dbxsd/v1.0">SConstruct</filename> file is located, if you
+generate a project file in a different directory than the <filename xmlns="http://www.scons.org/dbxsd/v1.0">SConstruct</filename>
+directory, users will not be able to double-click on the file name in
+compilation error messages displayed in the Visual Studio console output
+window. This can be remedied by adding the Visual C/C++ <literal>/FC</literal>
+compiler option to the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-CCFLAGS"><envar>$CCFLAGS</envar></link> variable so that the compiler will
+print the full path name of any files that cause compilation errors. </para>
+<para xmlns="http://www.scons.org/dbxsd/v1.0"> Example usage: </para> <example_commands xmlns="http://www.scons.org/dbxsd/v1.0">barsrcs = ['bar.cpp'],
barincs = ['bar.h'],
barlocalincs = ['StdAfx.h']
barresources = ['bar.rc','resource.h']
@@ -1004,7 +952,143 @@ env.MSVSProject(target = 'Bar' + env['MSVSPROJECTSUFFIX'],
buildtarget = dll,
variant = 'Release')
</example_commands>
-</listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">Starting with version 2.4 of
+SCons it's also possible to specify the optional argument
+<parameter>DebugSettings</parameter>, which creates files for debugging under
+Visual Studio:</para><variablelist xmlns="http://www.scons.org/dbxsd/v1.0">
+ <varlistentry>
+ <term>DebugSettings</term>
+
+ <listitem>
+ <para>A dictionary of debug settings that get written to the
+ <filename>.vcproj.user</filename> or the
+ <filename>.vcxproj.user</filename> file, depending on the version
+ installed. As it is done for cmdargs (see above), you can specify a
+ <parameter>DebugSettings</parameter> dictionary per variant. If you
+ give only one, it will be propagated to all variants.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist><para xmlns="http://www.scons.org/dbxsd/v1.0">Currently, only Visual Studio v9.0 and Visual Studio
+version v11 are implemented, for other versions no file is generated. To
+generate the user file, you just need to add a
+<parameter>DebugSettings</parameter> dictionary to the environment with the
+right parameters for your MSVS version. If the dictionary is empty, or does
+not contain any good value, no file will be generated.</para><para xmlns="http://www.scons.org/dbxsd/v1.0">Following
+is a more contrived example, involving the setup of a project for variants and
+DebugSettings:</para><example_commands xmlns="http://www.scons.org/dbxsd/v1.0"># Assuming you store your defaults in a file
+vars = Variables('variables.py')
+msvcver = vars.args.get('vc', '9')
+
+# Check command args to force one Microsoft Visual Studio version
+if msvcver == '9' or msvcver == '11':
+ env = Environment(MSVC_VERSION=msvcver+'.0', MSVC_BATCH=False)
+else:
+ env = Environment()
+
+AddOption('--userfile', action='store_true', dest='userfile', default=False,
+ help="Create Visual Studio Project user file")
+
+#
+# 1. Configure your Debug Setting dictionary with options you want in the list
+# of allowed options, for instance if you want to create a user file to launch
+# a specific application for testing your dll with Microsoft Visual Studio 2008 (v9):
+#
+V9DebugSettings = {
+ 'Command':'c:\\myapp\\using\\thisdll.exe',
+ 'WorkingDirectory': 'c:\\myapp\\using\\',
+ 'CommandArguments': '-p password',
+# 'Attach':'false',
+# 'DebuggerType':'3',
+# 'Remote':'1',
+# 'RemoteMachine': None,
+# 'RemoteCommand': None,
+# 'HttpUrl': None,
+# 'PDBPath': None,
+# 'SQLDebugging': None,
+# 'Environment': '',
+# 'EnvironmentMerge':'true',
+# 'DebuggerFlavor': None,
+# 'MPIRunCommand': None,
+# 'MPIRunArguments': None,
+# 'MPIRunWorkingDirectory': None,
+# 'ApplicationCommand': None,
+# 'ApplicationArguments': None,
+# 'ShimCommand': None,
+# 'MPIAcceptMode': None,
+# 'MPIAcceptFilter': None,
+}
+
+#
+# 2. Because there are a lot of different options depending on the Microsoft
+# Visual Studio version, if you use more than one version you have to
+# define a dictionary per version, for instance if you want to create a user
+# file to launch a specific application for testing your dll with Microsoft
+# Visual Studio 2012 (v11):
+#
+V10DebugSettings = {
+ 'LocalDebuggerCommand': 'c:\\myapp\\using\\thisdll.exe',
+ 'LocalDebuggerWorkingDirectory': 'c:\\myapp\\using\\',
+ 'LocalDebuggerCommandArguments': '-p password',
+# 'LocalDebuggerEnvironment': None,
+# 'DebuggerFlavor': 'WindowsLocalDebugger',
+# 'LocalDebuggerAttach': None,
+# 'LocalDebuggerDebuggerType': None,
+# 'LocalDebuggerMergeEnvironment': None,
+# 'LocalDebuggerSQLDebugging': None,
+# 'RemoteDebuggerCommand': None,
+# 'RemoteDebuggerCommandArguments': None,
+# 'RemoteDebuggerWorkingDirectory': None,
+# 'RemoteDebuggerServerName': None,
+# 'RemoteDebuggerConnection': None,
+# 'RemoteDebuggerDebuggerType': None,
+# 'RemoteDebuggerAttach': None,
+# 'RemoteDebuggerSQLDebugging': None,
+# 'DeploymentDirectory': None,
+# 'AdditionalFiles': None,
+# 'RemoteDebuggerDeployDebugCppRuntime': None,
+# 'WebBrowserDebuggerHttpUrl': None,
+# 'WebBrowserDebuggerDebuggerType': None,
+# 'WebServiceDebuggerHttpUrl': None,
+# 'WebServiceDebuggerDebuggerType': None,
+# 'WebServiceDebuggerSQLDebugging': None,
+}
+
+#
+# 3. Select the dictionary you want depending on the version of visual Studio
+# Files you want to generate.
+#
+if not env.GetOption('userfile'):
+ dbgSettings = None
+elif env.get('MSVC_VERSION', None) == '9.0':
+ dbgSettings = V9DebugSettings
+elif env.get('MSVC_VERSION', None) == '11.0':
+ dbgSettings = V10DebugSettings
+else:
+ dbgSettings = None
+
+#
+# 4. Add the dictionary to the DebugSettings keyword.
+#
+barsrcs = ['bar.cpp', 'dllmain.cpp', 'stdafx.cpp']
+barincs = ['targetver.h']
+barlocalincs = ['StdAfx.h']
+barresources = ['bar.rc','resource.h']
+barmisc = ['ReadMe.txt']
+
+dll = env.SharedLibrary(target = 'bar.dll',
+ source = barsrcs)
+
+env.MSVSProject(target = 'Bar' + env['MSVSPROJECTSUFFIX'],
+ srcs = barsrcs,
+ incs = barincs,
+ localincs = barlocalincs,
+ resources = barresources,
+ misc = barmisc,
+ buildtarget = [dll[0]] * 2,
+ variant = ('Debug|Win32', 'Release|Win32'),
+ cmdargs = 'vc=%s' % msvcver,
+ DebugSettings = (dbgSettings, {}))
+</example_commands> </listitem>
</varlistentry>
<varlistentry id="b-MSVSSolution">
<term>
@@ -1013,70 +1097,54 @@ env.MSVSProject(target = 'Bar' + env['MSVSPROJECTSUFFIX'],
<term>
<function>env.MSVSSolution()</function>
</term>
- <listitem>
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-Builds a Microsoft Visual Studio solution file.
-</para>
-
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-This builds a Visual Studio solution file,
-based on the version of Visual Studio that is configured
-(either the latest installed version,
-or the version specified by
-<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-MSVS_VERSION"><envar>$MSVS_VERSION</envar></link>
-in the construction environment).
-For Visual Studio 6, it will generate a
-<filename>.dsw</filename>
-file.
-For Visual Studio 7 (.NET), it will
-generate a
-<filename>.sln</filename>
-file.
-</para>
-
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-The following values must be specified:
-</para>
-
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-<literal>target</literal>:
-The name of the target .dsw or .sln file. The correct
-suffix for the version of Visual Studio must be used, but the value
-<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-MSVSSOLUTIONSUFFIX"><envar>$MSVSSOLUTIONSUFFIX</envar></link>
-will be defined to the correct value (see example below).
-</para>
-
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-<literal>variant</literal>:
-The name of this particular variant, or a list of variant
-names (the latter is only supported for MSVS 7 solutions). These are
-typically things like "Debug" or "Release", but really can be anything
-you want. For MSVS 7 they may also specify target platform, like this
-"Debug|Xbox". Default platform is Win32.
-</para>
-
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-<literal>projects</literal>:
-A list of project file names, or Project nodes returned by calls to the
-<function xmlns="http://www.scons.org/dbxsd/v1.0">MSVSProject</function>
-Builder,
-to be placed into the solution file.
-It should be noted that these file names are NOT added to the $SOURCES
-environment variable in form of files, but rather as strings. This
-is because they represent file names to be added to the solution file,
-not the source files used to build the solution file.
-</para>
-
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-Example Usage:
-</para>
-
-<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
-env.MSVSSolution(target = 'Bar' + env['MSVSSOLUTIONSUFFIX'],
- projects = ['bar' + env['MSVSPROJECTSUFFIX']],
- variant = 'Release')
-</example_commands>
-</listitem>
+ <listitem> <para xmlns="http://www.scons.org/dbxsd/v1.0">Builds a Microsoft Visual Studio solution
+file. </para> <para xmlns="http://www.scons.org/dbxsd/v1.0">This builds a Visual Studio solution file, based on the
+version of Visual Studio that is configured (either the latest installed
+version, or the version specified by <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-MSVS_VERSION"><envar>$MSVS_VERSION</envar></link> in the
+construction environment). For Visual Studio 6, it will generate a
+<filename>.dsw</filename> file. For Visual Studio 7 (.NET), it will generate a
+<filename>.sln</filename> file. </para> <para xmlns="http://www.scons.org/dbxsd/v1.0"> The following values must be
+specified: </para><variablelist xmlns="http://www.scons.org/dbxsd/v1.0">
+ <varlistentry>
+ <term>target</term>
+
+ <listitem>
+ <para>The name of the target .dsw or .sln file. The correct
+ suffix for the version of Visual Studio must be used, but the value
+ <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-MSVSSOLUTIONSUFFIX"><envar>$MSVSSOLUTIONSUFFIX</envar></link> will be defined to the correct value (see
+ example below).</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>variant</term>
+
+ <listitem>
+ <para>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>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>projects</term>
+
+ <listitem>
+ <para>A list of project file names, or Project nodes returned by
+ calls to the <function xmlns="http://www.scons.org/dbxsd/v1.0">MSVSProject</function> Builder, to be placed into the solution
+ file. It should be noted that these file names are NOT added to the
+ $SOURCES environment variable in form of files, but rather as strings.
+ This is because they represent file names to be added to the solution
+ file, not the source files used to build the solution
+ file.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist> <para xmlns="http://www.scons.org/dbxsd/v1.0"> Example Usage: </para> <example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env.MSVSSolution(target = 'Bar' + env['MSVSSOLUTIONSUFFIX'], projects = ['bar'
++ env['MSVSPROJECTSUFFIX']], variant = 'Release')
+</example_commands></listitem>
</varlistentry>
<varlistentry id="b-Object">
<term>
@@ -1182,7 +1250,7 @@ file as the second element. Normally the object file is ignored.
This builder method is only
provided when Microsoft Visual C++ is being used as the compiler.
The PCH builder method is generally used in
-conjuction with the PCH construction variable to force object files to use
+conjunction with the PCH construction variable to force object files to use
the precompiled header:
</para>
@@ -1415,7 +1483,7 @@ the results shall be as the comments above say.
<emphasis>Example 2.</emphasis>
The <function xmlns="http://www.scons.org/dbxsd/v1.0">POTUpdate</function> builder may be used with no target specified, in which
case default target <filename>messages.pot</filename> will be used. The
-default target may also be overriden by setting <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-POTDOMAIN"><envar>$POTDOMAIN</envar></link> construction
+default target may also be overridden by setting <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-POTDOMAIN"><envar>$POTDOMAIN</envar></link> construction
variable or providing it as an override to <function xmlns="http://www.scons.org/dbxsd/v1.0">POTUpdate</function> builder:
</para>
<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
@@ -1548,7 +1616,7 @@ Target nodes defined through <function xmlns="http://www.scons.org/dbxsd/v1.0">P
(they're <literal>Ignore</literal>d from <literal>'.'</literal> node). Instead,
they are added automatically to special <literal>Alias</literal>
(<literal>'po-update'</literal> by default). The alias name may be changed
-through the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-POUPDATE_ALIAS"><envar>$POUPDATE_ALIAS</envar></link> construction variable. You can easilly
+through the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-POUPDATE_ALIAS"><envar>$POUPDATE_ALIAS</envar></link> construction variable. You can easily
update <literal>PO</literal> files in your project by <command>scons
po-update</command>.
</para>
@@ -1920,17 +1988,20 @@ For maximum portability, use the <function xmlns="http://www.scons.org/dbxsd/v1.
When the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHLIBVERSION"><envar>$SHLIBVERSION</envar></link> construction variable is defined a versioned
shared library is created. This modifies the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHLINKFLAGS"><envar>$SHLINKFLAGS</envar></link> as required,
adds the version number to the library name, and creates the symlinks that
-are needed. <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHLIBVERSION"><envar>$SHLIBVERSION</envar></link> needs to be of the form X.Y.Z, where X
-and Y are numbers, and Z is a number but can also contain letters to designate
-alpha, beta, or release candidate patch levels.
+are needed.
</para>
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env.SharedLibrary(target = 'bar', source = ['bar.c', 'foo.o'], SHLIBVERSION='1.5.2')
+</example_commands>
+
<para xmlns="http://www.scons.org/dbxsd/v1.0">
-This builder may create multiple links to the library. On a POSIX system,
-for the shared library libbar.so.2.3.1, the links created would be
-libbar.so and libbar.so.2; on a Darwin (OSX) system
-the library would be libbar.2.3.1.dylib and the link would be
-libbar.dylib.
+On a POSIX system, versions with a single token create exactly one symlink:
+libbar.so.6 would have symlinks libbar.so only.
+On a POSIX system, versions with two or more
+tokens create exactly two symlinks: libbar.so.2.3.1 would have symlinks
+libbar.so and libbar.so.2; on a Darwin (OSX) system the library would be
+libbar.2.3.1.dylib and the link would be libbar.dylib.
</para>
<para xmlns="http://www.scons.org/dbxsd/v1.0">
@@ -2484,7 +2555,7 @@ running <command>scons '.'</command>.</para></note>
<para xmlns="http://www.scons.org/dbxsd/v1.0">
Builds a Windows type library (<filename>.tlb</filename>)
file from an input IDL file (<filename>.idl</filename>).
-In addition, it will build the associated inteface stub and
+In addition, it will build the associated interface stub and
proxy source files,
naming them according to the base name of the <filename>.idl</filename> file.
For example,
diff --git a/doc/generated/examples/caching_ex-random_1.xml b/doc/generated/examples/caching_ex-random_1.xml
index 2ed1a8f5..6a0337b9 100644
--- a/doc/generated/examples/caching_ex-random_1.xml
+++ b/doc/generated/examples/caching_ex-random_1.xml
@@ -1,9 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<screen xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 http://www.scons.org/dbxsd/v1.0/scons.xsd">% <userinput>scons -Q</userinput>
-cc -o f1.o -c f1.c
cc -o f2.o -c f2.c
-cc -o f3.o -c f3.c
+cc -o f1.o -c f1.c
cc -o f5.o -c f5.c
+cc -o f3.o -c f3.c
cc -o f4.o -c f4.c
cc -o prog f1.o f2.o f3.o f4.o f5.o
</screen>
diff --git a/doc/generated/examples/troubleshoot_Dump_1.xml b/doc/generated/examples/troubleshoot_Dump_1.xml
index 248e85c0..bf141a0f 100644
--- a/doc/generated/examples/troubleshoot_Dump_1.xml
+++ b/doc/generated/examples/troubleshoot_Dump_1.xml
@@ -64,7 +64,11 @@ scons: Reading SConscript files ...
'_LIBDIRFLAGS': '$( ${_concat(LIBDIRPREFIX, LIBPATH, LIBDIRSUFFIX, __env__, RDirs, TARGET, SOURCE)} $)',
'_LIBFLAGS': '${_concat(LIBLINKPREFIX, LIBS, LIBLINKSUFFIX, __env__)}',
'__DRPATH': '$_DRPATH',
+ '__DSHLIBVERSIONFLAGS': '${__libversionflags(__env__,"DSHLIBVERSION","_DSHLIBVERSIONFLAGS")}',
+ '__LDMODULEVERSIONFLAGS': '${__libversionflags(__env__,"LDMODULEVERSION","_LDMODULEVERSIONFLAGS")}',
'__RPATH': '$_RPATH',
+ '__SHLIBVERSIONFLAGS': '${__libversionflags(__env__,"SHLIBVERSION","_SHLIBVERSIONFLAGS")}',
+ '__libversionflags': &lt;function __libversionflags at 0x700000&amp;gt;,
'_concat': &lt;function _concat at 0x700000&amp;gt;,
'_defines': &lt;function _defines at 0x700000&amp;gt;,
'_stripixes': &lt;function _stripixes at 0x700000&amp;gt;}
diff --git a/doc/generated/examples/troubleshoot_Dump_2.xml b/doc/generated/examples/troubleshoot_Dump_2.xml
index 17c9de51..0ae8fe1b 100644
--- a/doc/generated/examples/troubleshoot_Dump_2.xml
+++ b/doc/generated/examples/troubleshoot_Dump_2.xml
@@ -34,7 +34,7 @@ scons: Reading SConscript files ...
'.SPP',
'.sx'],
'CXX': '$CC',
- 'CXXCOM': '${TEMPFILE("$CXX $_MSVC_OUTPUT_FLAG /c $CHANGED_SOURCES $CXXFLAGS $CCFLAGS $_CCCOMCOM")}',
+ 'CXXCOM': '${TEMPFILE("$CXX $_MSVC_OUTPUT_FLAG /c $CHANGED_SOURCES $CXXFLAGS $CCFLAGS $_CCCOMCOM","$CXXCOMSTR")}',
'CXXFILESUFFIX': '.cc',
'CXXFLAGS': ['$(', '/TP', '$)'],
'DSUFFIXES': ['.d'],
@@ -77,7 +77,7 @@ scons: Reading SConscript files ...
'SHCCFLAGS': ['$CCFLAGS'],
'SHCFLAGS': ['$CFLAGS'],
'SHCXX': '$CXX',
- 'SHCXXCOM': '${TEMPFILE("$SHCXX $_MSVC_OUTPUT_FLAG /c $CHANGED_SOURCES $SHCXXFLAGS $SHCCFLAGS $_CCCOMCOM")}',
+ 'SHCXXCOM': '${TEMPFILE("$SHCXX $_MSVC_OUTPUT_FLAG /c $CHANGED_SOURCES $SHCXXFLAGS $SHCCFLAGS $_CCCOMCOM","$SHCXXCOMSTR")}',
'SHCXXFLAGS': ['$CXXFLAGS'],
'SHELL': None,
'SHLIBPREFIX': '',
@@ -97,6 +97,10 @@ scons: Reading SConscript files ...
'_LIBDIRFLAGS': '$( ${_concat(LIBDIRPREFIX, LIBPATH, LIBDIRSUFFIX, __env__, RDirs, TARGET, SOURCE)} $)',
'_LIBFLAGS': '${_concat(LIBLINKPREFIX, LIBS, LIBLINKSUFFIX, __env__)}',
'_MSVC_OUTPUT_FLAG': &lt;function msvc_output_flag at 0x700000&amp;gt;,
+ '__DSHLIBVERSIONFLAGS': '${__libversionflags(__env__,"DSHLIBVERSION","_DSHLIBVERSIONFLAGS")}',
+ '__LDMODULEVERSIONFLAGS': '${__libversionflags(__env__,"LDMODULEVERSION","_LDMODULEVERSIONFLAGS")}',
+ '__SHLIBVERSIONFLAGS': '${__libversionflags(__env__,"SHLIBVERSION","_SHLIBVERSIONFLAGS")}',
+ '__libversionflags': &lt;function __libversionflags at 0x700000&amp;gt;,
'_concat': &lt;function _concat at 0x700000&amp;gt;,
'_defines': &lt;function _defines at 0x700000&amp;gt;,
'_stripixes': &lt;function _stripixes at 0x700000&amp;gt;}
diff --git a/doc/generated/examples/troubleshoot_explain1_3.xml b/doc/generated/examples/troubleshoot_explain1_3.xml
index 0bdaace1..3d8592d4 100644
--- a/doc/generated/examples/troubleshoot_explain1_3.xml
+++ b/doc/generated/examples/troubleshoot_explain1_3.xml
@@ -3,5 +3,5 @@
cp file.in file.oout
scons: warning: Cannot find target file.out after building
-File "/home/garyo/src/scons-scons/bootstrap/src/script/scons.py", line 199, in &lt;module&gt;
+File "/scons/as_scons/bootstrap/src/script/scons.py", line 199, in &lt;module&gt;
</screen>
diff --git a/doc/generated/examples/troubleshoot_stacktrace_2.xml b/doc/generated/examples/troubleshoot_stacktrace_2.xml
index 1ab65ee3..add59ff4 100644
--- a/doc/generated/examples/troubleshoot_stacktrace_2.xml
+++ b/doc/generated/examples/troubleshoot_stacktrace_2.xml
@@ -8,6 +8,6 @@ scons: internal stack trace:
return SCons.Taskmaster.OutOfDateTask.prepare(self)
File "bootstrap/src/engine/SCons/Taskmaster.py", line 191, in prepare
executor.prepare()
- File "bootstrap/src/engine/SCons/Executor.py", line 396, in prepare
+ File "bootstrap/src/engine/SCons/Executor.py", line 430, in prepare
raise SCons.Errors.StopError(msg % (s, self.batches[0].targets[0]))
</screen>
diff --git a/doc/generated/functions.gen b/doc/generated/functions.gen
index 62a9ab3b..e80c1c98 100644
--- a/doc/generated/functions.gen
+++ b/doc/generated/functions.gen
@@ -2426,10 +2426,10 @@ option.
</varlistentry>
<varlistentry id="f-Glob">
<term>
- <literal>Glob(pattern, [ondisk, source, strings])</literal>
+ <literal>Glob(pattern, [ondisk, source, strings, exclude])</literal>
</term>
<term>
- <literal>env.Glob(pattern, [ondisk, source, strings])</literal>
+ <literal>env.Glob(pattern, [ondisk, source, strings, exclude])</literal>
</term>
<listitem>
<para xmlns="http://www.scons.org/dbxsd/v1.0">
@@ -2543,21 +2543,32 @@ directory.)
</para>
<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The
+<varname>exclude</varname>
+argument may be set to a pattern or a list of patterns
+(following the same Unix shell semantics)
+which must be filtered out of returned elements.
+Elements matching a least one pattern of
+this list will be excluded.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
Examples:
</para>
<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
Program('foo', Glob('*.c'))
Zip('/tmp/everything', Glob('.??*') + Glob('*'))
+sources = Glob('*.cpp', exclude=['os_*_specific_*.cpp']) + Glob('os_%s_specific_*.cpp'%currentOS)
</example_commands>
</listitem>
</varlistentry>
<varlistentry id="f-Help">
<term>
- <literal>Help(text)</literal>
+ <literal>Help(text, append=False)</literal>
</term>
<term>
- <literal>env.Help(text)</literal>
+ <literal>env.Help(text, append=False)</literal>
</term>
<listitem>
<para xmlns="http://www.scons.org/dbxsd/v1.0">
@@ -2565,12 +2576,18 @@ This specifies help text to be printed if the
<option>-h</option>
argument is given to
<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>.
-If
+If
<function xmlns="http://www.scons.org/dbxsd/v1.0">Help</function>
-is called multiple times, the text is appended together in the order
-that
+is called multiple times, the text is appended together in the order that
<function xmlns="http://www.scons.org/dbxsd/v1.0">Help</function>
-is called.
+is called. With append set to False, any
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Help</function>
+text generated with
+<function xmlns="http://www.scons.org/dbxsd/v1.0">AddOption</function>
+is clobbered. If append is True, the AddOption help is prepended to the help
+string, thus preserving the
+<option>-h</option>
+message.
</para>
</listitem>
</varlistentry>
diff --git a/doc/generated/tools.gen b/doc/generated/tools.gen
index dc9b50da..ba12966f 100644
--- a/doc/generated/tools.gen
+++ b/doc/generated/tools.gen
@@ -129,6 +129,14 @@ Sets construction variables for generic POSIX C++ compilers.
</para>
<para>Sets: &cv-link-CPPDEFPREFIX;, &cv-link-CPPDEFSUFFIX;, &cv-link-CXX;, &cv-link-CXXCOM;, &cv-link-CXXFILESUFFIX;, &cv-link-CXXFLAGS;, &cv-link-INCPREFIX;, &cv-link-INCSUFFIX;, &cv-link-OBJSUFFIX;, &cv-link-SHCXX;, &cv-link-SHCXXCOM;, &cv-link-SHCXXFLAGS;, &cv-link-SHOBJSUFFIX;.</para><para>Uses: &cv-link-CXXCOMSTR;.</para></listitem>
</varlistentry>
+ <varlistentry id="t-cyglink">
+ <term>cyglink</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Set construction variables for cygwin linker/loader.
+</para>
+<para>Sets: &cv-link-IMPLIBPREFIX;, &cv-link-IMPLIBSUFFIX;, &cv-link-LDMODULEVERSIONFLAGS;, &cv-link-LINKFLAGS;, &cv-link-RPATHPREFIX;, &cv-link-RPATHSUFFIX;, &cv-link-SHLIBPREFIX;, &cv-link-SHLIBSUFFIX;, &cv-link-SHLIBVERSIONFLAGS;, &cv-link-SHLINKCOM;, &cv-link-SHLINKFLAGS;, &cv-link-_LDMODULEVERSIONFLAGS;, &cv-link-_SHLIBVERSIONFLAGS;.</para></listitem>
+ </varlistentry>
<varlistentry id="t-default">
<term>default</term>
<listitem>
@@ -307,6 +315,14 @@ Set construction variables for generic POSIX Fortran 03 compilers.
</para>
<para>Sets: &cv-link-F03;, &cv-link-F03COM;, &cv-link-F03FLAGS;, &cv-link-F03PPCOM;, &cv-link-SHF03;, &cv-link-SHF03COM;, &cv-link-SHF03FLAGS;, &cv-link-SHF03PPCOM;, &cv-link-_F03INCFLAGS;.</para><para>Uses: &cv-link-F03COMSTR;, &cv-link-F03PPCOMSTR;, &cv-link-SHF03COMSTR;, &cv-link-SHF03PPCOMSTR;.</para></listitem>
</varlistentry>
+ <varlistentry id="t-f08">
+ <term>f08</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Set construction variables for generic POSIX Fortran 08 compilers.
+</para>
+<para>Sets: &cv-link-F08;, &cv-link-F08COM;, &cv-link-F08FLAGS;, &cv-link-F08PPCOM;, &cv-link-SHF08;, &cv-link-SHF08COM;, &cv-link-SHF08FLAGS;, &cv-link-SHF08PPCOM;, &cv-link-_F08INCFLAGS;.</para><para>Uses: &cv-link-F08COMSTR;, &cv-link-F08PPCOMSTR;, &cv-link-SHF08COMSTR;, &cv-link-SHF08PPCOMSTR;.</para></listitem>
+ </varlistentry>
<varlistentry id="t-f77">
<term>f77</term>
<listitem>
@@ -387,7 +403,7 @@ Sets construction variables for the D language compiler GDC.
<listitem>
<para xmlns="http://www.scons.org/dbxsd/v1.0">
This is actually a toolset, which supports internationalization and
-localization of sofware being constructed with SCons. The toolset loads
+localization of software being constructed with SCons. The toolset loads
following tools:
</para>
@@ -446,7 +462,7 @@ Sets construction variables for the GNU F95/F2003 GNU compiler.
<para xmlns="http://www.scons.org/dbxsd/v1.0">
Set construction variables for GNU linker/loader.
</para>
-<para>Sets: &cv-link-RPATHPREFIX;, &cv-link-RPATHSUFFIX;, &cv-link-SHLINKFLAGS;.</para></listitem>
+<para>Sets: &cv-link-LDMODULEVERSIONFLAGS;, &cv-link-RPATHPREFIX;, &cv-link-RPATHSUFFIX;, &cv-link-SHLIBVERSIONFLAGS;, &cv-link-SHLINKFLAGS;, &cv-link-_LDMODULESONAME;, &cv-link-_SHLIBSONAME;.</para></listitem>
</varlistentry>
<varlistentry id="t-gs">
<term>gs</term>
@@ -615,7 +631,7 @@ Sets construction variables for the <application xmlns="http://www.scons.org/dbx
<para xmlns="http://www.scons.org/dbxsd/v1.0">
Sets construction variables for generic POSIX linkers.
</para>
-<para>Sets: &cv-link-LDMODULE;, &cv-link-LDMODULECOM;, &cv-link-LDMODULEFLAGS;, &cv-link-LDMODULEPREFIX;, &cv-link-LDMODULESUFFIX;, &cv-link-LIBDIRPREFIX;, &cv-link-LIBDIRSUFFIX;, &cv-link-LIBLINKPREFIX;, &cv-link-LIBLINKSUFFIX;, &cv-link-LINK;, &cv-link-LINKCOM;, &cv-link-LINKFLAGS;, &cv-link-SHLIBSUFFIX;, &cv-link-SHLINK;, &cv-link-SHLINKCOM;, &cv-link-SHLINKFLAGS;.</para><para>Uses: &cv-link-LDMODULECOMSTR;, &cv-link-LINKCOMSTR;, &cv-link-SHLINKCOMSTR;.</para></listitem>
+<para>Sets: &cv-link-LDMODULE;, &cv-link-LDMODULECOM;, &cv-link-LDMODULEFLAGS;, &cv-link-LDMODULENOVERSIONSYMLINKS;, &cv-link-LDMODULEPREFIX;, &cv-link-LDMODULESUFFIX;, &cv-link-LDMODULEVERSION;, &cv-link-LDMODULEVERSIONFLAGS;, &cv-link-LIBDIRPREFIX;, &cv-link-LIBDIRSUFFIX;, &cv-link-LIBLINKPREFIX;, &cv-link-LIBLINKSUFFIX;, &cv-link-LINK;, &cv-link-LINKCOM;, &cv-link-LINKFLAGS;, &cv-link-SHLIBSUFFIX;, &cv-link-SHLINK;, &cv-link-SHLINKCOM;, &cv-link-SHLINKFLAGS;, &cv-link-__LDMODULEVERSIONFLAGS;, &cv-link-__SHLIBVERSIONFLAGS;.</para><para>Uses: &cv-link-LDMODULECOMSTR;, &cv-link-LINKCOMSTR;, &cv-link-SHLINKCOMSTR;.</para></listitem>
</varlistentry>
<varlistentry id="t-linkloc">
<term>linkloc</term>
@@ -736,11 +752,8 @@ Sets construction variables for the Microsoft Visual C/C++ compiler.
</varlistentry>
<varlistentry id="t-msvs">
<term>msvs</term>
- <listitem>
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-Sets construction variables for Microsoft Visual Studio.
-</para>
-<para>Sets: &cv-link-MSVSBUILDCOM;, &cv-link-MSVSCLEANCOM;, &cv-link-MSVSENCODING;, &cv-link-MSVSPROJECTCOM;, &cv-link-MSVSREBUILDCOM;, &cv-link-MSVSSCONS;, &cv-link-MSVSSCONSCOM;, &cv-link-MSVSSCONSCRIPT;, &cv-link-MSVSSCONSFLAGS;, &cv-link-MSVSSOLUTIONCOM;.</para></listitem>
+ <listitem> <para xmlns="http://www.scons.org/dbxsd/v1.0">
+Sets construction variables for Microsoft Visual Studio. </para> <para>Sets: &cv-link-MSVSBUILDCOM;, &cv-link-MSVSCLEANCOM;, &cv-link-MSVSENCODING;, &cv-link-MSVSPROJECTCOM;, &cv-link-MSVSREBUILDCOM;, &cv-link-MSVSSCONS;, &cv-link-MSVSSCONSCOM;, &cv-link-MSVSSCONSCRIPT;, &cv-link-MSVSSCONSFLAGS;, &cv-link-MSVSSOLUTIONCOM;.</para></listitem>
</varlistentry>
<varlistentry id="t-mwcc">
<term>mwcc</term>
@@ -767,19 +780,19 @@ Sets construction variables for the
</para>
<para>Sets: &cv-link-AS;, &cv-link-ASCOM;, &cv-link-ASFLAGS;, &cv-link-ASPPCOM;, &cv-link-ASPPFLAGS;.</para><para>Uses: &cv-link-ASCOMSTR;, &cv-link-ASPPCOMSTR;.</para></listitem>
</varlistentry>
- <varlistentry id="t-packaging">
- <term>packaging</term>
+ <varlistentry id="t-Packaging">
+ <term>Packaging</term>
<listitem>
<para xmlns="http://www.scons.org/dbxsd/v1.0">
-A framework for building binary and source packages.
+Sets construction variables for the <function xmlns="http://www.scons.org/dbxsd/v1.0">Package</function> Builder.
</para>
</listitem>
</varlistentry>
- <varlistentry id="t-Packaging">
- <term>Packaging</term>
+ <varlistentry id="t-packaging">
+ <term>packaging</term>
<listitem>
<para xmlns="http://www.scons.org/dbxsd/v1.0">
-Sets construction variables for the <function xmlns="http://www.scons.org/dbxsd/v1.0">Package</function> Builder.
+A framework for building binary and source packages.
</para>
</listitem>
</varlistentry>
@@ -896,7 +909,7 @@ Sets construction variables for the SGI linker.
<para xmlns="http://www.scons.org/dbxsd/v1.0">
Sets construction variables for the Sun library archiver.
</para>
-<para>Sets: &cv-link-AR;, &cv-link-ARCOM;, &cv-link-ARFLAGS;, &cv-link-LIBPREFIX;, &cv-link-LIBSUFFIX;, &cv-link-SHLINK;, &cv-link-SHLINKCOM;, &cv-link-SHLINKFLAGS;.</para><para>Uses: &cv-link-ARCOMSTR;, &cv-link-SHLINKCOMSTR;.</para></listitem>
+<para>Sets: &cv-link-AR;, &cv-link-ARCOM;, &cv-link-ARFLAGS;, &cv-link-LIBPREFIX;, &cv-link-LIBSUFFIX;.</para><para>Uses: &cv-link-ARCOMSTR;.</para></listitem>
</varlistentry>
<varlistentry id="t-suncXX">
<term>sunc++</term>
diff --git a/doc/generated/tools.mod b/doc/generated/tools.mod
index 3c6f71cf..2ee22706 100644
--- a/doc/generated/tools.mod
+++ b/doc/generated/tools.mod
@@ -22,6 +22,7 @@ THIS IS AN AUTOMATICALLY-GENERATED FILE. DO NOT EDIT.
<!ENTITY t-cvf "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>cvf</literal>">
<!ENTITY t-CVS "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>CVS</literal>">
<!ENTITY t-cXX "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>cXX</literal>">
+<!ENTITY t-cyglink "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>cyglink</literal>">
<!ENTITY t-default "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>default</literal>">
<!ENTITY t-dmd "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>dmd</literal>">
<!ENTITY t-docbook "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>docbook</literal>">
@@ -29,6 +30,7 @@ THIS IS AN AUTOMATICALLY-GENERATED FILE. DO NOT EDIT.
<!ENTITY t-dvipdf "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>dvipdf</literal>">
<!ENTITY t-dvips "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>dvips</literal>">
<!ENTITY t-f03 "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>f03</literal>">
+<!ENTITY t-f08 "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>f08</literal>">
<!ENTITY t-f77 "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>f77</literal>">
<!ENTITY t-f90 "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>f90</literal>">
<!ENTITY t-f95 "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>f95</literal>">
@@ -76,8 +78,8 @@ THIS IS AN AUTOMATICALLY-GENERATED FILE. DO NOT EDIT.
<!ENTITY t-mwcc "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>mwcc</literal>">
<!ENTITY t-mwld "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>mwld</literal>">
<!ENTITY t-nasm "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>nasm</literal>">
-<!ENTITY t-packaging "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>packaging</literal>">
<!ENTITY t-Packaging "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>Packaging</literal>">
+<!ENTITY t-packaging "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>packaging</literal>">
<!ENTITY t-pdf "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>pdf</literal>">
<!ENTITY t-pdflatex "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>pdflatex</literal>">
<!ENTITY t-pdftex "<literal xmlns='http://www.scons.org/dbxsd/v1.0'>pdftex</literal>">
@@ -131,6 +133,7 @@ THIS IS AN AUTOMATICALLY-GENERATED FILE. DO NOT EDIT.
<!ENTITY t-link-cvf "<link linkend='t-cvf' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>cvf</literal></link>">
<!ENTITY t-link-CVS "<link linkend='t-CVS' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>CVS</literal></link>">
<!ENTITY t-link-cXX "<link linkend='t-cXX' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>cXX</literal></link>">
+<!ENTITY t-link-cyglink "<link linkend='t-cyglink' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>cyglink</literal></link>">
<!ENTITY t-link-default "<link linkend='t-default' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>default</literal></link>">
<!ENTITY t-link-dmd "<link linkend='t-dmd' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>dmd</literal></link>">
<!ENTITY t-link-docbook "<link linkend='t-docbook' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>docbook</literal></link>">
@@ -138,6 +141,7 @@ THIS IS AN AUTOMATICALLY-GENERATED FILE. DO NOT EDIT.
<!ENTITY t-link-dvipdf "<link linkend='t-dvipdf' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>dvipdf</literal></link>">
<!ENTITY t-link-dvips "<link linkend='t-dvips' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>dvips</literal></link>">
<!ENTITY t-link-f03 "<link linkend='t-f03' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>f03</literal></link>">
+<!ENTITY t-link-f08 "<link linkend='t-f08' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>f08</literal></link>">
<!ENTITY t-link-f77 "<link linkend='t-f77' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>f77</literal></link>">
<!ENTITY t-link-f90 "<link linkend='t-f90' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>f90</literal></link>">
<!ENTITY t-link-f95 "<link linkend='t-f95' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>f95</literal></link>">
@@ -185,8 +189,8 @@ THIS IS AN AUTOMATICALLY-GENERATED FILE. DO NOT EDIT.
<!ENTITY t-link-mwcc "<link linkend='t-mwcc' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>mwcc</literal></link>">
<!ENTITY t-link-mwld "<link linkend='t-mwld' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>mwld</literal></link>">
<!ENTITY t-link-nasm "<link linkend='t-nasm' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>nasm</literal></link>">
-<!ENTITY t-link-packaging "<link linkend='t-packaging' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>packaging</literal></link>">
<!ENTITY t-link-Packaging "<link linkend='t-Packaging' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>Packaging</literal></link>">
+<!ENTITY t-link-packaging "<link linkend='t-packaging' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>packaging</literal></link>">
<!ENTITY t-link-pdf "<link linkend='t-pdf' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>pdf</literal></link>">
<!ENTITY t-link-pdflatex "<link linkend='t-pdflatex' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>pdflatex</literal></link>">
<!ENTITY t-link-pdftex "<link linkend='t-pdftex' xmlns='http://www.scons.org/dbxsd/v1.0'><literal>pdftex</literal></link>">
diff --git a/doc/generated/variables.gen b/doc/generated/variables.gen
index d21b417a..b3771027 100644
--- a/doc/generated/variables.gen
+++ b/doc/generated/variables.gen
@@ -13,6 +13,24 @@
]>
<variablelist xmlns="http://www.scons.org/dbxsd/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.scons.org/dbxsd/v1.0 http://www.scons.org/dbxsd/v1.0/scons.xsd">
+ <varlistentry id="cv-__LDMODULEVERSIONFLAGS">
+ <term>__LDMODULEVERSIONFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This construction variable automatically introduces <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-_LDMODULEVERSIONFLAGS"><envar>$_LDMODULEVERSIONFLAGS</envar></link>
+if <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-LDMODULEVERSION"><envar>$LDMODULEVERSION</envar></link> is set. Othervise it evaluates to an empty string.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-__SHLIBVERSIONFLAGS">
+ <term>__SHLIBVERSIONFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This construction variable automatically introduces <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-_SHLIBVERSIONFLAGS"><envar>$_SHLIBVERSIONFLAGS</envar></link>
+if <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHLIBVERSION"><envar>$SHLIBVERSION</envar></link> is set. Othervise it evaluates to an empty string.
+</para>
+</listitem>
+ </varlistentry>
<varlistentry id="cv-AR">
<term>AR</term>
<listitem>
@@ -950,19 +968,19 @@ DFLAGPREFIX.
</para>
</listitem>
</varlistentry>
- <varlistentry id="cv-DFLAGS">
- <term>DFLAGS</term>
+ <varlistentry id="cv-_DFLAGS">
+ <term>_DFLAGS</term>
<listitem>
<para xmlns="http://www.scons.org/dbxsd/v1.0">
-DFLAGS.
+_DFLAGS.
</para>
</listitem>
</varlistentry>
- <varlistentry id="cv-_DFLAGS">
- <term>_DFLAGS</term>
+ <varlistentry id="cv-DFLAGS">
+ <term>DFLAGS</term>
<listitem>
<para xmlns="http://www.scons.org/dbxsd/v1.0">
-_DFLAGS.
+DFLAGS.
</para>
</listitem>
</varlistentry>
@@ -1686,6 +1704,184 @@ F03 dialect will be used. By default, this is empty
</para>
</listitem>
</varlistentry>
+ <varlistentry id="cv-F08">
+ <term>F08</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The Fortran 08 compiler.
+You should normally set the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FORTRAN"><envar>$FORTRAN</envar></link> variable,
+which specifies the default Fortran compiler
+for all Fortran versions.
+You only need to set <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F08"><envar>$F08</envar></link> if you need to use a specific compiler
+or compiler version for Fortran 08 files.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-F08COM">
+ <term>F08COM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to compile a Fortran 08 source file to an object file.
+You only need to set <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F08COM"><envar>$F08COM</envar></link> if you need to use a specific
+command line for Fortran 08 files.
+You should normally set the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FORTRANCOM"><envar>$FORTRANCOM</envar></link> variable,
+which specifies the default command line
+for all Fortran versions.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-F08COMSTR">
+ <term>F08COMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when a Fortran 08 source file
+is compiled to an object file.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F08COM"><envar>$F08COM</envar></link> or <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FORTRANCOM"><envar>$FORTRANCOM</envar></link>
+(the command line) is displayed.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-F08FILESUFFIXES">
+ <term>F08FILESUFFIXES</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The list of file extensions for which the F08 dialect will be used. By
+default, this is ['.f08']
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-F08FLAGS">
+ <term>F08FLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+General user-specified options that are passed to the Fortran 08 compiler.
+Note that this variable does
+<emphasis>not</emphasis>
+contain
+<option>-I</option>
+(or similar) include search path options
+that scons generates automatically from <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F08PATH"><envar>$F08PATH</envar></link>.
+See
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-_F08INCFLAGS"><envar>$_F08INCFLAGS</envar></link>
+below,
+for the variable that expands to those options.
+You only need to set <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F08FLAGS"><envar>$F08FLAGS</envar></link> if you need to define specific
+user options for Fortran 08 files.
+You should normally set the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FORTRANFLAGS"><envar>$FORTRANFLAGS</envar></link> variable,
+which specifies the user-specified options
+passed to the default Fortran compiler
+for all Fortran versions.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-_F08INCFLAGS">
+ <term>_F08INCFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+An automatically-generated construction variable
+containing the Fortran 08 compiler command-line options
+for specifying directories to be searched for include files.
+The value of <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-_F08INCFLAGS"><envar>$_F08INCFLAGS</envar></link> is created
+by appending <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-INCPREFIX"><envar>$INCPREFIX</envar></link> and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-INCSUFFIX"><envar>$INCSUFFIX</envar></link>
+to the beginning and end
+of each directory in <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F08PATH"><envar>$F08PATH</envar></link>.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-F08PATH">
+ <term>F08PATH</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The list of directories that the Fortran 08 compiler will search for include
+directories. The implicit dependency scanner will search these
+directories for include files. Don't explicitly put include directory
+arguments in <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F08FLAGS"><envar>$F08FLAGS</envar></link> because the result will be non-portable
+and the directories will not be searched by the dependency scanner. Note:
+directory names in <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F08PATH"><envar>$F08PATH</envar></link> will be looked-up relative to the SConscript
+directory when they are used in a command. To force
+<filename xmlns="http://www.scons.org/dbxsd/v1.0">scons</filename>
+to look-up a directory relative to the root of the source tree use #:
+You only need to set <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F08PATH"><envar>$F08PATH</envar></link> if you need to define a specific
+include path for Fortran 08 files.
+You should normally set the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FORTRANPATH"><envar>$FORTRANPATH</envar></link> variable,
+which specifies the include path
+for the default Fortran compiler
+for all Fortran versions.
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment(F08PATH='#/include')
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The directory look-up can also be forced using the
+<function xmlns="http://www.scons.org/dbxsd/v1.0">Dir</function>()
+function:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+include = Dir('include')
+env = Environment(F08PATH=include)
+</example_commands>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The directory list will be added to command lines
+through the automatically-generated
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-_F08INCFLAGS"><envar>$_F08INCFLAGS</envar></link>
+construction variable,
+which is constructed by
+appending the values of the
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-INCPREFIX"><envar>$INCPREFIX</envar></link> and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-INCSUFFIX"><envar>$INCSUFFIX</envar></link>
+construction variables
+to the beginning and end
+of each directory in <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F08PATH"><envar>$F08PATH</envar></link>.
+Any command lines you define that need
+the F08PATH directory list should
+include <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-_F08INCFLAGS"><envar>$_F08INCFLAGS</envar></link>:
+</para>
+
+<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
+env = Environment(F08COM="my_compiler $_F08INCFLAGS -c -o $TARGET $SOURCE")
+</example_commands>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-F08PPCOM">
+ <term>F08PPCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to compile a Fortran 08 source file to an object file
+after first running the file through the C preprocessor.
+Any options specified in the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F08FLAGS"><envar>$F08FLAGS</envar></link> and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-CPPFLAGS"><envar>$CPPFLAGS</envar></link> construction variables
+are included on this command line.
+You only need to set <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F08PPCOM"><envar>$F08PPCOM</envar></link> if you need to use a specific
+C-preprocessor command line for Fortran 08 files.
+You should normally set the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FORTRANPPCOM"><envar>$FORTRANPPCOM</envar></link> variable,
+which specifies the default C-preprocessor command line
+for all Fortran versions.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-F08PPCOMSTR">
+ <term>F08PPCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when a Fortran 08 source file
+is compiled to an object file
+after first running the file through the C preprocessor.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-F08PPCOM"><envar>$F08PPCOM</envar></link> or <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-FORTRANPPCOM"><envar>$FORTRANPPCOM</envar></link>
+(the command line) is displayed.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-F08PPFILESUFFIXES">
+ <term>F08PPFILESUFFIXES</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The list of file extensions for which the compilation + preprocessor pass for
+F08 dialect will be used. By default, this is empty
+</para>
+</listitem>
+ </varlistentry>
<varlistentry id="cv-F77">
<term>F77</term>
<listitem>
@@ -2642,6 +2838,15 @@ is <quote><literal>-dNOPAUSE -dBATCH -sDEVICE=pdfwrite</literal></quote>
<term>HOST_ARCH</term>
<listitem>
<para xmlns="http://www.scons.org/dbxsd/v1.0">
+ The name of the host hardware architecture used to create the Environment.
+ If a platform is specified when creating the Environment, then
+ that Platform's logic will handle setting this value.
+ This value is immutable, and should not be changed by the user after
+ the Environment is initialized.
+ Currently only set for Win32.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
Sets the host architecture for Visual Studio compiler. If not set,
default to the detected host architecture: note that this may depend
on the python you are using.
@@ -2657,16 +2862,7 @@ Valid values are the same as for <envar xmlns="http://www.scons.org/dbxsd/v1.0">
This is currently only used on Windows, but in the future it will be
used on other OSes as well.
</para>
-
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
- The name of the host hardware architecture used to create the Environment.
- If a platform is specified when creating the Environment, then
- that Platform's logic will handle setting this value.
- This value is immutable, and should not be changed by the user after
- the Environment is initialized.
- Currently only set for Win32.
-</para>
- </listitem>
+</listitem>
</varlistentry>
<varlistentry id="cv-HOST_OS">
<term>HOST_OS</term>
@@ -2696,6 +2892,52 @@ The default list is:
</example_commands>
</listitem>
</varlistentry>
+ <varlistentry id="cv-IMPLIBNOVERSIONSYMLINKS">
+ <term>IMPLIBNOVERSIONSYMLINKS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Used to override <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHLIBNOVERSIONSYMLINKS"><envar>$SHLIBNOVERSIONSYMLINKS</envar></link>/<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-LDMODULENOVERSIONSYMLINKS"><envar>$LDMODULENOVERSIONSYMLINKS</envar></link> when
+creating versioned import library for a shared library/loadable module. If not defined,
+then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHLIBNOVERSIONSYMLINKS"><envar>$SHLIBNOVERSIONSYMLINKS</envar></link>/<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-LDMODULENOVERSIONSYMLINKS"><envar>$LDMODULENOVERSIONSYMLINKS</envar></link> is used to determine
+whether to disable symlink generation or not.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-IMPLIBPREFIX">
+ <term>IMPLIBPREFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The prefix used for import library names. For example, cygwin uses import
+libraries (<literal>libfoo.dll.a</literal>) in pair with dynamic libraries
+(<literal>cygfoo.dll</literal>). The <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="t-cyglink"><literal>cyglink</literal></link> linker sets
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-IMPLIBPREFIX"><envar>$IMPLIBPREFIX</envar></link> to <literal>'lib'</literal> and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHLIBPREFIX"><envar>$SHLIBPREFIX</envar></link>
+to <literal>'cyg'</literal>.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-IMPLIBSUFFIX">
+ <term>IMPLIBSUFFIX</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The suffix used for import library names. For example, cygwin uses import
+libraries (<literal>libfoo.dll.a</literal>) in pair with dynamic libraries
+(<literal>cygfoo.dll</literal>). The <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="t-cyglink"><literal>cyglink</literal></link> linker sets
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-IMPLIBSUFFIX"><envar>$IMPLIBSUFFIX</envar></link> to <literal>'.dll.a'</literal> and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHLIBSUFFIX"><envar>$SHLIBSUFFIX</envar></link>
+to <literal>'.dll'</literal>.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-IMPLIBVERSION">
+ <term>IMPLIBVERSION</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Used to override <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHLIBVERSION"><envar>$SHLIBVERSION</envar></link>/<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-LDMODULEVERSION"><envar>$LDMODULEVERSION</envar></link> when
+generating versioned import library for a shared library/loadable module. If
+undefined, the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHLIBVERSION"><envar>$SHLIBVERSION</envar></link>/<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-LDMODULEVERSION"><envar>$LDMODULEVERSION</envar></link> is used to
+determine the version of versioned import library.
+</para>
+</listitem>
+ </varlistentry>
<varlistentry id="cv-IMPLICIT_COMMAND_DEPENDENCIES">
<term>IMPLICIT_COMMAND_DEPENDENCIES</term>
<listitem>
@@ -3230,6 +3472,15 @@ General user options passed to the linker for building loadable modules.
</para>
</listitem>
</varlistentry>
+ <varlistentry id="cv-LDMODULENOVERSIONSYMLINKS">
+ <term>LDMODULENOVERSIONSYMLINKS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Instructs the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-LoadableModule"><function>LoadableModule</function></link> builder to not automatically create symlinks
+for versioned modules. Defaults to <literal>$SHLIBNOVERSIONSYMLINKS</literal>
+</para>
+</listitem>
+ </varlistentry>
<varlistentry id="cv-LDMODULEPREFIX">
<term>LDMODULEPREFIX</term>
<listitem>
@@ -3241,6 +3492,16 @@ the same as <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHLIBPREFI
</para>
</listitem>
</varlistentry>
+ <varlistentry id="cv-_LDMODULESONAME">
+ <term>_LDMODULESONAME</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A macro that automatically generates loadable module's SONAME based on $TARGET,
+$LDMODULEVERSION and $LDMODULESUFFIX. Used by <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-LoadableModule"><function>LoadableModule</function></link> builder
+when the linker tool supports SONAME (e.g. <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="t-gnulink"><literal>gnulink</literal></link>).
+</para>
+</listitem>
+ </varlistentry>
<varlistentry id="cv-LDMODULESUFFIX">
<term>LDMODULESUFFIX</term>
<listitem>
@@ -3252,6 +3513,42 @@ the same as $SHLIBSUFFIX.
</para>
</listitem>
</varlistentry>
+ <varlistentry id="cv-LDMODULEVERSION">
+ <term>LDMODULEVERSION</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+When this construction variable is defined, a versioned loadable module
+is created by <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-LoadableModule"><function>LoadableModule</function></link> builder. This activates the
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-_LDMODULEVERSIONFLAGS"><envar>$_LDMODULEVERSIONFLAGS</envar></link> and thus modifies the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-LDMODULECOM"><envar>$LDMODULECOM</envar></link> as
+required, adds the version number to the library name, and creates the symlinks
+that are needed. <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-LDMODULEVERSION"><envar>$LDMODULEVERSION</envar></link> versions should exist in the same
+format as <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHLIBVERSION"><envar>$SHLIBVERSION</envar></link>.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-LDMODULEVERSIONFLAGS">
+ <term>LDMODULEVERSIONFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Extra flags added to <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-LDMODULECOM"><envar>$LDMODULECOM</envar></link> when building versioned
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-LoadableModule"><function>LoadableModule</function></link>. These flags are only used when <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-LDMODULEVERSION"><envar>$LDMODULEVERSION</envar></link> is
+set.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-_LDMODULEVERSIONFLAGS">
+ <term>_LDMODULEVERSIONFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This macro automatically introduces extra flags to <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-LDMODULECOM"><envar>$LDMODULECOM</envar></link> when
+building versioned <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-LoadableModule"><function>LoadableModule</function></link> (that is when
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-LDMODULEVERSION"><envar>$LDMODULEVERSION</envar></link> is set). <literal>_LDMODULEVERSIONFLAGS</literal>
+usually adds <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHLIBVERSIONFLAGS"><envar>$SHLIBVERSIONFLAGS</envar></link> and some extra dynamically generated
+options (such as <literal>-Wl,-soname=$_LDMODULESONAME</literal>). It is unused
+by plain (unversioned) loadable modules.
+</para>
+</listitem>
+ </varlistentry>
<varlistentry id="cv-LEX">
<term>LEX</term>
<listitem>
@@ -3978,355 +4275,254 @@ Versions ending in <literal>Exp</literal> refer to "Express" or
</varlistentry>
<varlistentry id="cv-MSVS">
<term>MSVS</term>
- <listitem>
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-When the Microsoft Visual Studio tools are initialized, they set up
-this dictionary with the following keys:
-</para>
-
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-<envar>VERSION</envar>:
-the version of MSVS being used (can be set via
-<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-MSVS_VERSION"><envar>$MSVS_VERSION</envar></link>)
-</para>
-
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-<envar>VERSIONS</envar>:
-the available versions of MSVS installed
-</para>
-
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-<envar>VCINSTALLDIR</envar>:
-installed directory of Visual C++
-</para>
-
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-<envar>VSINSTALLDIR</envar>:
-installed directory of Visual Studio
-</para>
-
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-<envar>FRAMEWORKDIR</envar>:
-installed directory of the .NET framework
-</para>
-
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-<envar>FRAMEWORKVERSIONS</envar>:
-list of installed versions of the .NET framework, sorted latest to oldest.
-</para>
-
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-<envar>FRAMEWORKVERSION</envar>:
-latest installed version of the .NET framework
-</para>
-
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-<envar>FRAMEWORKSDKDIR</envar>:
-installed location of the .NET SDK.
-</para>
-
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-<envar>PLATFORMSDKDIR</envar>:
-installed location of the Platform SDK.
-</para>
-
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-<envar>PLATFORMSDK_MODULES</envar>:
-dictionary of installed Platform SDK modules,
-where the dictionary keys are keywords for the various modules, and
-the values are 2-tuples where the first is the release date, and the
-second is the version number.
-</para>
-
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-If a value isn't set, it wasn't available in the registry.
-</para>
-</listitem>
+ <listitem> <para xmlns="http://www.scons.org/dbxsd/v1.0">
+When the Microsoft Visual Studio tools are initialized, they set up this
+dictionary with the following keys: </para><variablelist xmlns="http://www.scons.org/dbxsd/v1.0">
+ <varlistentry>
+ <term>VERSION</term>
+
+ <listitem>
+ <para>the version of MSVS being used (can be set via
+ <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-MSVS_VERSION"><envar>$MSVS_VERSION</envar></link>)</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>VERSIONS</term>
+
+ <listitem>
+ <para>the available versions of MSVS installed</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>VCINSTALLDIR</term>
+
+ <listitem>
+ <para>installed directory of Visual C++</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>VSINSTALLDIR</term>
+
+ <listitem>
+ <para>installed directory of Visual Studio</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>FRAMEWORKDIR</term>
+
+ <listitem>
+ <para>installed directory of the .NET framework</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>FRAMEWORKVERSIONS</term>
+
+ <listitem>
+ <para>list of installed versions of the .NET framework, sorted
+ latest to oldest.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>FRAMEWORKVERSION</term>
+
+ <listitem>
+ <para>latest installed version of the .NET
+ framework</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>FRAMEWORKSDKDIR</term>
+
+ <listitem>
+ <para>installed location of the .NET SDK.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>PLATFORMSDKDIR</term>
+
+ <listitem>
+ <para>installed location of the Platform SDK.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term>PLATFORMSDK_MODULES</term>
+
+ <listitem>
+ <para>dictionary of installed Platform SDK modules, where the
+ dictionary keys are keywords for the various modules, and the values
+ are 2-tuples where the first is the release date, and the second is
+ the version number.</para>
+ </listitem>
+ </varlistentry>
+ </variablelist><para xmlns="http://www.scons.org/dbxsd/v1.0">If a value isn't set, it wasn't available in the
+registry.</para></listitem>
</varlistentry>
<varlistentry id="cv-MSVS_ARCH">
<term>MSVS_ARCH</term>
- <listitem>
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-Sets the architecture for which the generated project(s) should build.
-</para>
-
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-The default value is <literal>x86</literal>.
-<literal>amd64</literal> is also supported
-by <application xmlns="http://www.scons.org/dbxsd/v1.0">SCons</application> for some Visual Studio versions.
-Trying to set <envar xmlns="http://www.scons.org/dbxsd/v1.0">$MSVS_ARCH</envar> to an architecture that's not
-supported for a given Visual Studio version
-will generate an error.
-</para>
-</listitem>
+ <listitem> <para xmlns="http://www.scons.org/dbxsd/v1.0">Sets
+the architecture for which the generated project(s) should build. </para>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">The default value is <literal>x86</literal>. <literal>amd64</literal> is
+also supported by <application xmlns="http://www.scons.org/dbxsd/v1.0">SCons</application> for some Visual Studio versions. Trying to set
+<envar xmlns="http://www.scons.org/dbxsd/v1.0">$MSVS_ARCH</envar> to an architecture that's not supported for a given Visual
+Studio version will generate an error. </para> </listitem>
</varlistentry>
<varlistentry id="cv-MSVS_PROJECT_GUID">
<term>MSVS_PROJECT_GUID</term>
- <listitem>
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-The string
-placed in a generated Microsoft Visual Studio project file
-as the value of the
-<literal>ProjectGUID</literal>
-attribute.
-There is no default value. If not defined, a new GUID is generated.
-</para>
-</listitem>
+ <listitem> <para xmlns="http://www.scons.org/dbxsd/v1.0">The string placed in a generated
+Microsoft Visual Studio project file as the value of the
+<literal>ProjectGUID</literal> attribute. There is no default value. If not
+defined, a new GUID is generated. </para> </listitem>
</varlistentry>
<varlistentry id="cv-MSVS_SCC_AUX_PATH">
<term>MSVS_SCC_AUX_PATH</term>
- <listitem>
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-The path name
-placed in a generated Microsoft Visual Studio project file
-as the value of the
-<literal>SccAuxPath</literal>
-attribute
-if the
-<envar>MSVS_SCC_PROVIDER</envar>
-construction variable is also set.
-There is no default value.
-</para>
-</listitem>
+ <listitem> <para xmlns="http://www.scons.org/dbxsd/v1.0">The path name placed in a generated
+Microsoft Visual Studio project file as the value of the
+<literal>SccAuxPath</literal> attribute if the
+<envar>MSVS_SCC_PROVIDER</envar> construction variable is also set. There is
+no default value. </para> </listitem>
</varlistentry>
<varlistentry id="cv-MSVS_SCC_CONNECTION_ROOT">
<term>MSVS_SCC_CONNECTION_ROOT</term>
- <listitem>
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-The root path of projects in your SCC workspace, i.e the path under which
-all project and solution files will be generated. It is used as a
-reference path from which the relative paths of the generated
-Microsoft Visual Studio project and solution files are computed.
-The relative project file path is placed as the value of the
-<literal>SccLocalPath</literal>
-attribute
-of the project file
-and as the values of the
-<literal>SccProjectFilePathRelativizedFromConnection[i]</literal>
-(where [i] ranges from 0 to the number of projects in the solution)
-attributes of the
-<literal>GlobalSection(SourceCodeControl)</literal>
-section of the Microsoft Visual Studio solution file.
-Similarly the relative solution file path is placed as the values of the
-<literal>SccLocalPath[i]</literal>
-(where [i] ranges from 0 to the number of projects in the solution)
-attributes of the
-<literal>GlobalSection(SourceCodeControl)</literal>
-section of the Microsoft Visual Studio solution file.
-This is used only
-if the
-<envar>MSVS_SCC_PROVIDER</envar>
-construction variable is also set.
-The default value is the current working directory.
-</para>
-</listitem>
+ <listitem> <para xmlns="http://www.scons.org/dbxsd/v1.0">The root path of projects in
+your SCC workspace, i.e the path under which all project and solution files
+will be generated. It is used as a reference path from which the relative
+paths of the generated Microsoft Visual Studio project and solution files are
+computed. The relative project file path is placed as the value of the
+<literal>SccLocalPath</literal> attribute of the project file and as the
+values of the
+<literal>SccProjectFilePathRelativizedFromConnection[i]</literal> (where [i]
+ranges from 0 to the number of projects in the solution) attributes of the
+<literal>GlobalSection(SourceCodeControl)</literal> section of the Microsoft
+Visual Studio solution file. Similarly the relative solution file path is
+placed as the values of the <literal>SccLocalPath[i]</literal> (where [i]
+ranges from 0 to the number of projects in the solution) attributes of the
+<literal>GlobalSection(SourceCodeControl)</literal> section of the Microsoft
+Visual Studio solution file. This is used only if the
+<envar>MSVS_SCC_PROVIDER</envar> construction variable is also set. The
+default value is the current working directory. </para> </listitem>
</varlistentry>
<varlistentry id="cv-MSVS_SCC_PROJECT_NAME">
<term>MSVS_SCC_PROJECT_NAME</term>
- <listitem>
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-The project name
-placed in a generated Microsoft Visual Studio project file
-as the value of the
-<literal>SccProjectName</literal>
-attribute
-if the
-<envar>MSVS_SCC_PROVIDER</envar>
-construction variable is also set.
-In this case the string is also placed in the
-<literal>SccProjectName0</literal>
-attribute of the
-<literal>GlobalSection(SourceCodeControl)</literal>
-section of the Microsoft Visual Studio solution file.
-There is no default value.
-</para>
-</listitem>
+ <listitem> <para xmlns="http://www.scons.org/dbxsd/v1.0">The project name placed in
+a generated Microsoft Visual Studio project file as the value of the
+<literal>SccProjectName</literal> attribute if the
+<envar>MSVS_SCC_PROVIDER</envar> construction variable is also set. In this
+case the string is also placed in the <literal>SccProjectName0</literal>
+attribute of the <literal>GlobalSection(SourceCodeControl)</literal> section
+of the Microsoft Visual Studio solution file. There is no default value.
+</para> </listitem>
</varlistentry>
<varlistentry id="cv-MSVS_SCC_PROVIDER">
<term>MSVS_SCC_PROVIDER</term>
- <listitem>
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-The string
-placed in a generated Microsoft Visual Studio project file
-as the value of the
-<literal>SccProvider</literal>
-attribute.
-The string is also placed in the
-<literal>SccProvider0</literal>
-attribute of the
-<literal>GlobalSection(SourceCodeControl)</literal>
-section of the Microsoft Visual Studio solution file.
-There is no default value.
-</para>
-</listitem>
+ <listitem> <para xmlns="http://www.scons.org/dbxsd/v1.0">The
+string placed in a generated Microsoft Visual Studio project file as the value
+of the <literal>SccProvider</literal> attribute. The string is also placed in
+the <literal>SccProvider0</literal> attribute of the
+<literal>GlobalSection(SourceCodeControl)</literal> section of the Microsoft
+Visual Studio solution file. There is no default value. </para> </listitem>
</varlistentry>
<varlistentry id="cv-MSVS_VERSION">
<term>MSVS_VERSION</term>
- <listitem>
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-Sets the preferred version of Microsoft Visual Studio to use.
-</para>
-
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-If <envar xmlns="http://www.scons.org/dbxsd/v1.0">$MSVS_VERSION</envar> is not set,
-<application xmlns="http://www.scons.org/dbxsd/v1.0">SCons</application> will (by default) select the latest version
-of Visual Studio installed on your system.
-So, if you have version 6 and version 7 (MSVS .NET) installed,
-it will prefer version 7.
-You can override this by
-specifying the
-<envar>MSVS_VERSION</envar>
-variable in the Environment initialization, setting it to the
-appropriate version ('6.0' or '7.0', for example).
-If the specified version isn't installed,
-tool initialization will fail.
-</para>
-
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-This is obsolete: use <envar xmlns="http://www.scons.org/dbxsd/v1.0">$MSVC_VERSION</envar> instead. If <envar xmlns="http://www.scons.org/dbxsd/v1.0">$MSVS_VERSION</envar> is set and
-<envar xmlns="http://www.scons.org/dbxsd/v1.0">$MSVC_VERSION</envar> is not, <envar xmlns="http://www.scons.org/dbxsd/v1.0">$MSVC_VERSION</envar> will be set automatically to <envar xmlns="http://www.scons.org/dbxsd/v1.0">$MSVS_VERSION</envar>.
-If both are set to different values, scons will raise an error.
-</para>
-</listitem>
+ <listitem> <para xmlns="http://www.scons.org/dbxsd/v1.0">Sets the preferred version
+of Microsoft Visual Studio to use. </para> <para xmlns="http://www.scons.org/dbxsd/v1.0">If <envar xmlns="http://www.scons.org/dbxsd/v1.0">$MSVS_VERSION</envar> is not
+set, <application xmlns="http://www.scons.org/dbxsd/v1.0">SCons</application> will (by default) select the latest version of Visual Studio
+installed on your system. So, if you have version 6 and version 7 (MSVS .NET)
+installed, it will prefer version 7. You can override this by specifying the
+<envar>MSVS_VERSION</envar> variable in the Environment initialization,
+setting it to the appropriate version ('6.0' or '7.0', for example). If the
+specified version isn't installed, tool initialization will fail. </para>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">This is obsolete: use <envar xmlns="http://www.scons.org/dbxsd/v1.0">$MSVC_VERSION</envar> instead. If <envar xmlns="http://www.scons.org/dbxsd/v1.0">$MSVS_VERSION</envar> is
+set and <envar xmlns="http://www.scons.org/dbxsd/v1.0">$MSVC_VERSION</envar> is not, <envar xmlns="http://www.scons.org/dbxsd/v1.0">$MSVC_VERSION</envar> will be set automatically
+to <envar xmlns="http://www.scons.org/dbxsd/v1.0">$MSVS_VERSION</envar>. If both are set to different values, scons will raise an
+error. </para> </listitem>
</varlistentry>
<varlistentry id="cv-MSVSBUILDCOM">
<term>MSVSBUILDCOM</term>
<listitem>
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-The build command line placed in
-a generated Microsoft Visual Studio project file.
-The default is to have Visual Studio invoke SCons with any specified
-build targets.
-</para>
-</listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">The build command line placed in a generated Microsoft Visual Studio
+project file. The default is to have Visual Studio invoke SCons with any
+specified build targets. </para> </listitem>
</varlistentry>
<varlistentry id="cv-MSVSCLEANCOM">
<term>MSVSCLEANCOM</term>
- <listitem>
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-The clean command line placed in
-a generated Microsoft Visual Studio project file.
-The default is to have Visual Studio invoke SCons with the -c option
-to remove any specified targets.
-</para>
-</listitem>
+ <listitem> <para xmlns="http://www.scons.org/dbxsd/v1.0">The clean command line placed in a generated Microsoft Visual
+Studio project file. The default is to have Visual Studio invoke SCons with
+the -c option to remove any specified targets. </para> </listitem>
</varlistentry>
<varlistentry id="cv-MSVSENCODING">
<term>MSVSENCODING</term>
- <listitem>
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-The encoding string placed in
-a generated Microsoft Visual Studio project file.
-The default is encoding
-<literal>Windows-1252</literal>.
-</para>
-</listitem>
+ <listitem> <para xmlns="http://www.scons.org/dbxsd/v1.0">The encoding string placed in a
+generated Microsoft Visual Studio project file. The default is encoding
+<literal>Windows-1252</literal>. </para> </listitem>
</varlistentry>
<varlistentry id="cv-MSVSPROJECTCOM">
<term>MSVSPROJECTCOM</term>
- <listitem>
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-The action used to generate Microsoft Visual Studio project files.
-</para>
-</listitem>
+ <listitem> <para xmlns="http://www.scons.org/dbxsd/v1.0">The action used to generate Microsoft
+Visual Studio project files. </para> </listitem>
</varlistentry>
<varlistentry id="cv-MSVSPROJECTSUFFIX">
<term>MSVSPROJECTSUFFIX</term>
- <listitem>
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-The suffix used for Microsoft Visual Studio project (DSP) files.
-The default value is
-<filename>.vcproj</filename>
-when using Visual Studio version 7.x (.NET)
-or later version,
-and
-<filename>.dsp</filename>
-when using earlier versions of Visual Studio.
-</para>
-</listitem>
+ <listitem> <para xmlns="http://www.scons.org/dbxsd/v1.0">The suffix used for Microsoft Visual
+Studio project (DSP) files. The default value is <filename>.vcproj</filename>
+when using Visual Studio version 7.x (.NET) or later version, and
+<filename>.dsp</filename> when using earlier versions of Visual Studio.
+</para> </listitem>
</varlistentry>
<varlistentry id="cv-MSVSREBUILDCOM">
<term>MSVSREBUILDCOM</term>
- <listitem>
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-The rebuild command line placed in
-a generated Microsoft Visual Studio project file.
-The default is to have Visual Studio invoke SCons with any specified
-rebuild targets.
-</para>
-</listitem>
+ <listitem> <para xmlns="http://www.scons.org/dbxsd/v1.0">The
+rebuild command line placed in a generated Microsoft Visual Studio project
+file. The default is to have Visual Studio invoke SCons with any specified
+rebuild targets. </para> </listitem>
</varlistentry>
<varlistentry id="cv-MSVSSCONS">
<term>MSVSSCONS</term>
<listitem>
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-The SCons used in generated Microsoft Visual Studio project files.
-The default is the version of SCons being
-used to generate the project file.
-</para>
-</listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">The SCons used in generated Microsoft Visual Studio project files. The
+default is the version of SCons being used to generate the project file.
+</para> </listitem>
</varlistentry>
<varlistentry id="cv-MSVSSCONSCOM">
<term>MSVSSCONSCOM</term>
- <listitem>
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-The default SCons command used in generated Microsoft Visual Studio
-project files.
-</para>
+ <listitem> <para xmlns="http://www.scons.org/dbxsd/v1.0">The default
+SCons command used in generated Microsoft Visual Studio project files. </para>
</listitem>
</varlistentry>
<varlistentry id="cv-MSVSSCONSCRIPT">
<term>MSVSSCONSCRIPT</term>
- <listitem>
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-The sconscript file
-(that is,
-<filename xmlns="http://www.scons.org/dbxsd/v1.0">SConstruct</filename>
-or
-<filename xmlns="http://www.scons.org/dbxsd/v1.0">SConscript</filename>
-file)
-that will be invoked by Visual Studio
-project files
-(through the
-<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-MSVSSCONSCOM"><envar>$MSVSSCONSCOM</envar></link>
-variable).
-The default is the same sconscript file
-that contains the call to
-<function xmlns="http://www.scons.org/dbxsd/v1.0">MSVSProject</function>
-to build the project file.
-</para>
-</listitem>
+ <listitem> <para xmlns="http://www.scons.org/dbxsd/v1.0">The sconscript
+file (that is, <filename xmlns="http://www.scons.org/dbxsd/v1.0">SConstruct</filename> or <filename xmlns="http://www.scons.org/dbxsd/v1.0">SConscript</filename> file) that will be invoked by
+Visual Studio project files (through the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-MSVSSCONSCOM"><envar>$MSVSSCONSCOM</envar></link> variable). The
+default is the same sconscript file that contains the call to <function xmlns="http://www.scons.org/dbxsd/v1.0">MSVSProject</function>
+to build the project file. </para> </listitem>
</varlistentry>
<varlistentry id="cv-MSVSSCONSFLAGS">
<term>MSVSSCONSFLAGS</term>
- <listitem>
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-The SCons flags used in generated Microsoft Visual Studio
-project files.
-</para>
+ <listitem> <para xmlns="http://www.scons.org/dbxsd/v1.0">The
+SCons flags used in generated Microsoft Visual Studio project files. </para>
</listitem>
</varlistentry>
<varlistentry id="cv-MSVSSOLUTIONCOM">
<term>MSVSSOLUTIONCOM</term>
- <listitem>
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-The action used to generate Microsoft Visual Studio solution files.
-</para>
-</listitem>
+ <listitem> <para xmlns="http://www.scons.org/dbxsd/v1.0">The action used to generate Microsoft
+Visual Studio solution files. </para> </listitem>
</varlistentry>
<varlistentry id="cv-MSVSSOLUTIONSUFFIX">
<term>MSVSSOLUTIONSUFFIX</term>
- <listitem>
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-The suffix used for Microsoft Visual Studio solution (DSW) files.
-The default value is
-<filename>.sln</filename>
-when using Visual Studio version 7.x (.NET),
-and
-<filename>.dsw</filename>
-when using earlier versions of Visual Studio.
-</para>
-</listitem>
+ <listitem> <para xmlns="http://www.scons.org/dbxsd/v1.0">The suffix used for Microsoft
+Visual Studio solution (DSW) files. The default value is
+<filename>.sln</filename> when using Visual Studio version 7.x (.NET), and
+<filename>.dsw</filename> when using earlier versions of Visual Studio.
+</para> </listitem>
</varlistentry>
<varlistentry id="cv-MT">
<term>MT</term>
@@ -5672,17 +5868,11 @@ to check out editable files from SCCS.
</varlistentry>
<varlistentry id="cv-SCONS_HOME">
<term>SCONS_HOME</term>
- <listitem>
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
-The (optional) path to the SCons library directory,
-initialized from the external environment.
-If set, this is used to construct a shorter and more
-efficient search path in the
-<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-MSVSSCONS"><envar>$MSVSSCONS</envar></link>
-command line executed
-from Microsoft Visual Studio project files.
-</para>
-</listitem>
+ <listitem> <para xmlns="http://www.scons.org/dbxsd/v1.0">The
+(optional) path to the SCons library directory, initialized from the external
+environment. If set, this is used to construct a shorter and more efficient
+search path in the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-MSVSSCONS"><envar>$MSVSSCONS</envar></link> command line executed from Microsoft
+Visual Studio project files. </para> </listitem>
</varlistentry>
<varlistentry id="cv-SHCC">
<term>SHCC</term>
@@ -5915,6 +6105,88 @@ If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="
</para>
</listitem>
</varlistentry>
+ <varlistentry id="cv-SHF08">
+ <term>SHF08</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The Fortran 08 compiler used for generating shared-library objects.
+You should normally set the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHFORTRAN"><envar>$SHFORTRAN</envar></link> variable,
+which specifies the default Fortran compiler
+for all Fortran versions.
+You only need to set <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHF08"><envar>$SHF08</envar></link> if you need to use a specific compiler
+or compiler version for Fortran 08 files.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHF08COM">
+ <term>SHF08COM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to compile a Fortran 08 source file
+to a shared-library object file.
+You only need to set <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHF08COM"><envar>$SHF08COM</envar></link> if you need to use a specific
+command line for Fortran 08 files.
+You should normally set the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHFORTRANCOM"><envar>$SHFORTRANCOM</envar></link> variable,
+which specifies the default command line
+for all Fortran versions.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHF08COMSTR">
+ <term>SHF08COMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when a Fortran 08 source file
+is compiled to a shared-library object file.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHF08COM"><envar>$SHF08COM</envar></link> or <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHFORTRANCOM"><envar>$SHFORTRANCOM</envar></link>
+(the command line) is displayed.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHF08FLAGS">
+ <term>SHF08FLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Options that are passed to the Fortran 08 compiler
+to generated shared-library objects.
+You only need to set <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHF08FLAGS"><envar>$SHF08FLAGS</envar></link> if you need to define specific
+user options for Fortran 08 files.
+You should normally set the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHFORTRANFLAGS"><envar>$SHFORTRANFLAGS</envar></link> variable,
+which specifies the user-specified options
+passed to the default Fortran compiler
+for all Fortran versions.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHF08PPCOM">
+ <term>SHF08PPCOM</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The command line used to compile a Fortran 08 source file to a
+shared-library object file
+after first running the file through the C preprocessor.
+Any options specified in the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHF08FLAGS"><envar>$SHF08FLAGS</envar></link> and <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-CPPFLAGS"><envar>$CPPFLAGS</envar></link> construction variables
+are included on this command line.
+You only need to set <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHF08PPCOM"><envar>$SHF08PPCOM</envar></link> if you need to use a specific
+C-preprocessor command line for Fortran 08 files.
+You should normally set the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHFORTRANPPCOM"><envar>$SHFORTRANPPCOM</envar></link> variable,
+which specifies the default C-preprocessor command line
+for all Fortran versions.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHF08PPCOMSTR">
+ <term>SHF08PPCOMSTR</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+The string displayed when a Fortran 08 source file
+is compiled to a shared-library object file
+after first running the file through the C preprocessor.
+If this is not set, then <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHF08PPCOM"><envar>$SHF08PPCOM</envar></link> or <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHFORTRANPPCOM"><envar>$SHFORTRANPPCOM</envar></link>
+(the command line) is displayed.
+</para>
+</listitem>
+ </varlistentry>
<varlistentry id="cv-SHF77">
<term>SHF77</term>
<listitem>
@@ -6232,6 +6504,15 @@ TODO
</para>
</listitem>
</varlistentry>
+ <varlistentry id="cv-SHLIBNOVERSIONSYMLINKS">
+ <term>SHLIBNOVERSIONSYMLINKS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Instructs the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-SharedLibrary"><function>SharedLibrary</function></link> builder to not create symlinks for versioned
+shared libraries.
+</para>
+</listitem>
+ </varlistentry>
<varlistentry id="cv-SHLIBPREFIX">
<term>SHLIBPREFIX</term>
<listitem>
@@ -6240,6 +6521,16 @@ The prefix used for shared library file names.
</para>
</listitem>
</varlistentry>
+ <varlistentry id="cv-_SHLIBSONAME">
+ <term>_SHLIBSONAME</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+A macro that automatically generates shared library's SONAME based on $TARGET,
+$SHLIBVERSION and $SHLIBSUFFIX. Used by <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-SharedLibrary"><function>SharedLibrary</function></link> builder when
+the linker tool supports SONAME (e.g. <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="t-gnulink"><literal>gnulink</literal></link>).
+</para>
+</listitem>
+ </varlistentry>
<varlistentry id="cv-SHLIBSUFFIX">
<term>SHLIBSUFFIX</term>
<listitem>
@@ -6253,11 +6544,35 @@ The suffix used for shared library file names.
<listitem>
<para xmlns="http://www.scons.org/dbxsd/v1.0">
When this construction variable is defined, a versioned shared library
-is created. This modifies the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHLINKFLAGS"><envar>$SHLINKFLAGS</envar></link> as required, adds
-the version number to the library name, and creates the symlinks that
-are needed. <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHLIBVERSION"><envar>$SHLIBVERSION</envar></link> needs to be of the form X.Y.Z,
-where X and Y are numbers, and Z is a number but can also contain
-letters to designate alpha, beta, or release candidate patch levels.
+is created by <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-SharedLibrary"><function>SharedLibrary</function></link> builder. This activates the
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-_SHLIBVERSIONFLAGS"><envar>$_SHLIBVERSIONFLAGS</envar></link> and thus modifies the <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHLINKCOM"><envar>$SHLINKCOM</envar></link> as
+required, adds the version number to the library name, and creates the symlinks
+that are needed. <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHLIBVERSION"><envar>$SHLIBVERSION</envar></link> versions should exist as alpha-numeric,
+decimal-delimited values as defined by the regular expression "\w+[\.\w+]*".
+Example <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHLIBVERSION"><envar>$SHLIBVERSION</envar></link> values include '1', '1.2.3', and '1.2.gitaa412c8b'.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-_SHLIBVERSIONFLAGS">
+ <term>_SHLIBVERSIONFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+This macro automatically introduces extra flags to <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHLINKCOM"><envar>$SHLINKCOM</envar></link> when
+building versioned <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-SharedLibrary"><function>SharedLibrary</function></link> (that is when <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHLIBVERSION"><envar>$SHLIBVERSION</envar></link>
+is set). <literal>_SHLIBVERSIONFLAGS</literal> usually adds <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHLIBVERSIONFLAGS"><envar>$SHLIBVERSIONFLAGS</envar></link>
+and some extra dynamically generated options (such as
+<literal>-Wl,-soname=$_SHLIBSONAME</literal>. It is unused by "plain"
+(unversioned) shared libraries.
+</para>
+</listitem>
+ </varlistentry>
+ <varlistentry id="cv-SHLIBVERSIONFLAGS">
+ <term>SHLIBVERSIONFLAGS</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Extra flags added to <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHLINKCOM"><envar>$SHLINKCOM</envar></link> when building versioned
+<link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="b-SharedLibrary"><function>SharedLibrary</function></link>. These flags are only used when <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="cv-SHLIBVERSION"><envar>$SHLIBVERSION</envar></link> is
+set.
</para>
</listitem>
</varlistentry>
@@ -6331,6 +6646,18 @@ The suffix used for shared object file names.
</para>
</listitem>
</varlistentry>
+ <varlistentry id="cv-SONAME">
+ <term>SONAME</term>
+ <listitem>
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
+Variable used to hard-code SONAME for versioned shared library/loadable module.
+<example_commands>
+env.SharedLibrary('test', 'test.c', SHLIBVERSION='0.1.2', SONAME='libtest.so.2')
+</example_commands>
+The variable is used, for example, by <link xmlns="http://www.scons.org/dbxsd/v1.0" linkend="t-gnulink"><literal>gnulink</literal></link> linker tool.
+</para>
+</listitem>
+ </varlistentry>
<varlistentry id="cv-SOURCE">
<term>SOURCE</term>
<listitem>
@@ -6600,9 +6927,7 @@ and translated into the
The list of directories that the scripting language wrapper
and interface generate will search for included files.
The SWIG implicit dependency scanner will search these
-directories for include files.
-The default is to use the same path
-specified as <envar xmlns="http://www.scons.org/dbxsd/v1.0">$CPPPATH</envar>.
+directories for include files. The default value is an empty list.
</para>
<para xmlns="http://www.scons.org/dbxsd/v1.0">
@@ -6649,7 +6974,7 @@ include <envar xmlns="http://www.scons.org/dbxsd/v1.0">$_SWIGINCFLAGS</envar>:
</para>
<example_commands xmlns="http://www.scons.org/dbxsd/v1.0">
-env = Environment(SWIGCOM="my_swig -o $TARGET $_SWIGINCFLAGS $SORUCES")
+env = Environment(SWIGCOM="my_swig -o $TARGET $_SWIGINCFLAGS $SOURCES")
</example_commands>
</listitem>
</varlistentry>
@@ -6713,6 +7038,13 @@ that may not be set or used in a construction environment.
<term>TARGET_ARCH</term>
<listitem>
<para xmlns="http://www.scons.org/dbxsd/v1.0">
+ The name of the target hardware architecture for the compiled objects
+ created by this Environment.
+ This defaults to the value of HOST_ARCH, and the user can override it.
+ Currently only set for Win32.
+</para>
+
+<para xmlns="http://www.scons.org/dbxsd/v1.0">
Sets the target architecture for Visual Studio compiler (i.e. the arch
of the binaries generated by the compiler). If not set, default to
<envar xmlns="http://www.scons.org/dbxsd/v1.0">$HOST_ARCH</envar>, or, if that is unset, to the architecture of the
@@ -6737,14 +7069,7 @@ and <literal>ia64</literal> (Itanium).
For example, if you want to compile 64-bit binaries, you would set
<literal>TARGET_ARCH='x86_64'</literal> in your SCons environment.
</para>
-
-<para xmlns="http://www.scons.org/dbxsd/v1.0">
- The name of the target hardware architecture for the compiled objects
- created by this Environment.
- This defaults to the value of HOST_ARCH, and the user can override it.
- Currently only set for Win32.
-</para>
- </listitem>
+</listitem>
</varlistentry>
<varlistentry id="cv-TARGET_OS">
<term>TARGET_OS</term>
diff --git a/doc/generated/variables.mod b/doc/generated/variables.mod
index 0a59605a..955a9eb8 100644
--- a/doc/generated/variables.mod
+++ b/doc/generated/variables.mod
@@ -8,6 +8,8 @@ THIS IS AN AUTOMATICALLY-GENERATED FILE. DO NOT EDIT.
-->
+<!ENTITY cv-__LDMODULEVERSIONFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$__LDMODULEVERSIONFLAGS</envar>">
+<!ENTITY cv-__SHLIBVERSIONFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$__SHLIBVERSIONFLAGS</envar>">
<!ENTITY cv-AR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$AR</envar>">
<!ENTITY cv-ARCHITECTURE "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$ARCHITECTURE</envar>">
<!ENTITY cv-ARCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$ARCOM</envar>">
@@ -76,8 +78,8 @@ THIS IS AN AUTOMATICALLY-GENERATED FILE. DO NOT EDIT.
<!ENTITY cv-DESCRIPTION_lang "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$DESCRIPTION_lang</envar>">
<!ENTITY cv-DFILESUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$DFILESUFFIX</envar>">
<!ENTITY cv-DFLAGPREFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$DFLAGPREFIX</envar>">
-<!ENTITY cv-DFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$DFLAGS</envar>">
<!ENTITY cv-_DFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$_DFLAGS</envar>">
+<!ENTITY cv-DFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$DFLAGS</envar>">
<!ENTITY cv-DFLAGSUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$DFLAGSUFFIX</envar>">
<!ENTITY cv-_DINCFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$_DINCFLAGS</envar>">
<!ENTITY cv-DINCPREFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$DINCPREFIX</envar>">
@@ -144,6 +146,16 @@ THIS IS AN AUTOMATICALLY-GENERATED FILE. DO NOT EDIT.
<!ENTITY cv-F03PPCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$F03PPCOM</envar>">
<!ENTITY cv-F03PPCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$F03PPCOMSTR</envar>">
<!ENTITY cv-F03PPFILESUFFIXES "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$F03PPFILESUFFIXES</envar>">
+<!ENTITY cv-F08 "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$F08</envar>">
+<!ENTITY cv-F08COM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$F08COM</envar>">
+<!ENTITY cv-F08COMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$F08COMSTR</envar>">
+<!ENTITY cv-F08FILESUFFIXES "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$F08FILESUFFIXES</envar>">
+<!ENTITY cv-F08FLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$F08FLAGS</envar>">
+<!ENTITY cv-_F08INCFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$_F08INCFLAGS</envar>">
+<!ENTITY cv-F08PATH "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$F08PATH</envar>">
+<!ENTITY cv-F08PPCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$F08PPCOM</envar>">
+<!ENTITY cv-F08PPCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$F08PPCOMSTR</envar>">
+<!ENTITY cv-F08PPFILESUFFIXES "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$F08PPFILESUFFIXES</envar>">
<!ENTITY cv-F77 "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$F77</envar>">
<!ENTITY cv-F77COM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$F77COM</envar>">
<!ENTITY cv-F77COMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$F77COMSTR</envar>">
@@ -206,6 +218,10 @@ THIS IS AN AUTOMATICALLY-GENERATED FILE. DO NOT EDIT.
<!ENTITY cv-HOST_ARCH "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$HOST_ARCH</envar>">
<!ENTITY cv-HOST_OS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$HOST_OS</envar>">
<!ENTITY cv-IDLSUFFIXES "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$IDLSUFFIXES</envar>">
+<!ENTITY cv-IMPLIBNOVERSIONSYMLINKS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$IMPLIBNOVERSIONSYMLINKS</envar>">
+<!ENTITY cv-IMPLIBPREFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$IMPLIBPREFIX</envar>">
+<!ENTITY cv-IMPLIBSUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$IMPLIBSUFFIX</envar>">
+<!ENTITY cv-IMPLIBVERSION "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$IMPLIBVERSION</envar>">
<!ENTITY cv-IMPLICIT_COMMAND_DEPENDENCIES "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$IMPLICIT_COMMAND_DEPENDENCIES</envar>">
<!ENTITY cv-INCPREFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$INCPREFIX</envar>">
<!ENTITY cv-INCSUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$INCSUFFIX</envar>">
@@ -243,8 +259,13 @@ THIS IS AN AUTOMATICALLY-GENERATED FILE. DO NOT EDIT.
<!ENTITY cv-LDMODULECOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$LDMODULECOM</envar>">
<!ENTITY cv-LDMODULECOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$LDMODULECOMSTR</envar>">
<!ENTITY cv-LDMODULEFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$LDMODULEFLAGS</envar>">
+<!ENTITY cv-LDMODULENOVERSIONSYMLINKS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$LDMODULENOVERSIONSYMLINKS</envar>">
<!ENTITY cv-LDMODULEPREFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$LDMODULEPREFIX</envar>">
+<!ENTITY cv-_LDMODULESONAME "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$_LDMODULESONAME</envar>">
<!ENTITY cv-LDMODULESUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$LDMODULESUFFIX</envar>">
+<!ENTITY cv-LDMODULEVERSION "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$LDMODULEVERSION</envar>">
+<!ENTITY cv-LDMODULEVERSIONFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$LDMODULEVERSIONFLAGS</envar>">
+<!ENTITY cv-_LDMODULEVERSIONFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$_LDMODULEVERSIONFLAGS</envar>">
<!ENTITY cv-LEX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$LEX</envar>">
<!ENTITY cv-LEXCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$LEXCOM</envar>">
<!ENTITY cv-LEXCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$LEXCOMSTR</envar>">
@@ -464,6 +485,12 @@ THIS IS AN AUTOMATICALLY-GENERATED FILE. DO NOT EDIT.
<!ENTITY cv-SHF03FLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHF03FLAGS</envar>">
<!ENTITY cv-SHF03PPCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHF03PPCOM</envar>">
<!ENTITY cv-SHF03PPCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHF03PPCOMSTR</envar>">
+<!ENTITY cv-SHF08 "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHF08</envar>">
+<!ENTITY cv-SHF08COM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHF08COM</envar>">
+<!ENTITY cv-SHF08COMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHF08COMSTR</envar>">
+<!ENTITY cv-SHF08FLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHF08FLAGS</envar>">
+<!ENTITY cv-SHF08PPCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHF08PPCOM</envar>">
+<!ENTITY cv-SHF08PPCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHF08PPCOMSTR</envar>">
<!ENTITY cv-SHF77 "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHF77</envar>">
<!ENTITY cv-SHF77COM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHF77COM</envar>">
<!ENTITY cv-SHF77COMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHF77COMSTR</envar>">
@@ -489,15 +516,20 @@ THIS IS AN AUTOMATICALLY-GENERATED FILE. DO NOT EDIT.
<!ENTITY cv-SHFORTRANPPCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHFORTRANPPCOM</envar>">
<!ENTITY cv-SHFORTRANPPCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHFORTRANPPCOMSTR</envar>">
<!ENTITY cv-SHLIBEMITTER "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHLIBEMITTER</envar>">
+<!ENTITY cv-SHLIBNOVERSIONSYMLINKS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHLIBNOVERSIONSYMLINKS</envar>">
<!ENTITY cv-SHLIBPREFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHLIBPREFIX</envar>">
+<!ENTITY cv-_SHLIBSONAME "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$_SHLIBSONAME</envar>">
<!ENTITY cv-SHLIBSUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHLIBSUFFIX</envar>">
<!ENTITY cv-SHLIBVERSION "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHLIBVERSION</envar>">
+<!ENTITY cv-_SHLIBVERSIONFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$_SHLIBVERSIONFLAGS</envar>">
+<!ENTITY cv-SHLIBVERSIONFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHLIBVERSIONFLAGS</envar>">
<!ENTITY cv-SHLINK "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHLINK</envar>">
<!ENTITY cv-SHLINKCOM "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHLINKCOM</envar>">
<!ENTITY cv-SHLINKCOMSTR "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHLINKCOMSTR</envar>">
<!ENTITY cv-SHLINKFLAGS "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHLINKFLAGS</envar>">
<!ENTITY cv-SHOBJPREFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHOBJPREFIX</envar>">
<!ENTITY cv-SHOBJSUFFIX "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SHOBJSUFFIX</envar>">
+<!ENTITY cv-SONAME "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SONAME</envar>">
<!ENTITY cv-SOURCE "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SOURCE</envar>">
<!ENTITY cv-SOURCE_URL "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SOURCE_URL</envar>">
<!ENTITY cv-SOURCES "<envar xmlns='http://www.scons.org/dbxsd/v1.0'>$SOURCES</envar>">
@@ -630,6 +662,8 @@ THIS IS AN AUTOMATICALLY-GENERATED FILE. DO NOT EDIT.
-->
+<!ENTITY cv-link-__LDMODULEVERSIONFLAGS "<link linkend='cv-__LDMODULEVERSIONFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$__LDMODULEVERSIONFLAGS</envar></link>">
+<!ENTITY cv-link-__SHLIBVERSIONFLAGS "<link linkend='cv-__SHLIBVERSIONFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$__SHLIBVERSIONFLAGS</envar></link>">
<!ENTITY cv-link-AR "<link linkend='cv-AR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$AR</envar></link>">
<!ENTITY cv-link-ARCHITECTURE "<link linkend='cv-ARCHITECTURE' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$ARCHITECTURE</envar></link>">
<!ENTITY cv-link-ARCOM "<link linkend='cv-ARCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$ARCOM</envar></link>">
@@ -698,8 +732,8 @@ THIS IS AN AUTOMATICALLY-GENERATED FILE. DO NOT EDIT.
<!ENTITY cv-link-DESCRIPTION_lang "<link linkend='cv-DESCRIPTION_lang' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$DESCRIPTION_lang</envar></link>">
<!ENTITY cv-link-DFILESUFFIX "<link linkend='cv-DFILESUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$DFILESUFFIX</envar></link>">
<!ENTITY cv-link-DFLAGPREFIX "<link linkend='cv-DFLAGPREFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$DFLAGPREFIX</envar></link>">
-<!ENTITY cv-link-DFLAGS "<link linkend='cv-DFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$DFLAGS</envar></link>">
<!ENTITY cv-link-_DFLAGS "<link linkend='cv-_DFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$_DFLAGS</envar></link>">
+<!ENTITY cv-link-DFLAGS "<link linkend='cv-DFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$DFLAGS</envar></link>">
<!ENTITY cv-link-DFLAGSUFFIX "<link linkend='cv-DFLAGSUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$DFLAGSUFFIX</envar></link>">
<!ENTITY cv-link-_DINCFLAGS "<link linkend='cv-_DINCFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$_DINCFLAGS</envar></link>">
<!ENTITY cv-link-DINCPREFIX "<link linkend='cv-DINCPREFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$DINCPREFIX</envar></link>">
@@ -766,6 +800,16 @@ THIS IS AN AUTOMATICALLY-GENERATED FILE. DO NOT EDIT.
<!ENTITY cv-link-F03PPCOM "<link linkend='cv-F03PPCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$F03PPCOM</envar></link>">
<!ENTITY cv-link-F03PPCOMSTR "<link linkend='cv-F03PPCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$F03PPCOMSTR</envar></link>">
<!ENTITY cv-link-F03PPFILESUFFIXES "<link linkend='cv-F03PPFILESUFFIXES' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$F03PPFILESUFFIXES</envar></link>">
+<!ENTITY cv-link-F08 "<link linkend='cv-F08' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$F08</envar></link>">
+<!ENTITY cv-link-F08COM "<link linkend='cv-F08COM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$F08COM</envar></link>">
+<!ENTITY cv-link-F08COMSTR "<link linkend='cv-F08COMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$F08COMSTR</envar></link>">
+<!ENTITY cv-link-F08FILESUFFIXES "<link linkend='cv-F08FILESUFFIXES' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$F08FILESUFFIXES</envar></link>">
+<!ENTITY cv-link-F08FLAGS "<link linkend='cv-F08FLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$F08FLAGS</envar></link>">
+<!ENTITY cv-link-_F08INCFLAGS "<link linkend='cv-_F08INCFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$_F08INCFLAGS</envar></link>">
+<!ENTITY cv-link-F08PATH "<link linkend='cv-F08PATH' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$F08PATH</envar></link>">
+<!ENTITY cv-link-F08PPCOM "<link linkend='cv-F08PPCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$F08PPCOM</envar></link>">
+<!ENTITY cv-link-F08PPCOMSTR "<link linkend='cv-F08PPCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$F08PPCOMSTR</envar></link>">
+<!ENTITY cv-link-F08PPFILESUFFIXES "<link linkend='cv-F08PPFILESUFFIXES' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$F08PPFILESUFFIXES</envar></link>">
<!ENTITY cv-link-F77 "<link linkend='cv-F77' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$F77</envar></link>">
<!ENTITY cv-link-F77COM "<link linkend='cv-F77COM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$F77COM</envar></link>">
<!ENTITY cv-link-F77COMSTR "<link linkend='cv-F77COMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$F77COMSTR</envar></link>">
@@ -828,6 +872,10 @@ THIS IS AN AUTOMATICALLY-GENERATED FILE. DO NOT EDIT.
<!ENTITY cv-link-HOST_ARCH "<link linkend='cv-HOST_ARCH' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$HOST_ARCH</envar></link>">
<!ENTITY cv-link-HOST_OS "<link linkend='cv-HOST_OS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$HOST_OS</envar></link>">
<!ENTITY cv-link-IDLSUFFIXES "<link linkend='cv-IDLSUFFIXES' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$IDLSUFFIXES</envar></link>">
+<!ENTITY cv-link-IMPLIBNOVERSIONSYMLINKS "<link linkend='cv-IMPLIBNOVERSIONSYMLINKS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$IMPLIBNOVERSIONSYMLINKS</envar></link>">
+<!ENTITY cv-link-IMPLIBPREFIX "<link linkend='cv-IMPLIBPREFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$IMPLIBPREFIX</envar></link>">
+<!ENTITY cv-link-IMPLIBSUFFIX "<link linkend='cv-IMPLIBSUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$IMPLIBSUFFIX</envar></link>">
+<!ENTITY cv-link-IMPLIBVERSION "<link linkend='cv-IMPLIBVERSION' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$IMPLIBVERSION</envar></link>">
<!ENTITY cv-link-IMPLICIT_COMMAND_DEPENDENCIES "<link linkend='cv-IMPLICIT_COMMAND_DEPENDENCIES' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$IMPLICIT_COMMAND_DEPENDENCIES</envar></link>">
<!ENTITY cv-link-INCPREFIX "<link linkend='cv-INCPREFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$INCPREFIX</envar></link>">
<!ENTITY cv-link-INCSUFFIX "<link linkend='cv-INCSUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$INCSUFFIX</envar></link>">
@@ -865,8 +913,13 @@ THIS IS AN AUTOMATICALLY-GENERATED FILE. DO NOT EDIT.
<!ENTITY cv-link-LDMODULECOM "<link linkend='cv-LDMODULECOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$LDMODULECOM</envar></link>">
<!ENTITY cv-link-LDMODULECOMSTR "<link linkend='cv-LDMODULECOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$LDMODULECOMSTR</envar></link>">
<!ENTITY cv-link-LDMODULEFLAGS "<link linkend='cv-LDMODULEFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$LDMODULEFLAGS</envar></link>">
+<!ENTITY cv-link-LDMODULENOVERSIONSYMLINKS "<link linkend='cv-LDMODULENOVERSIONSYMLINKS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$LDMODULENOVERSIONSYMLINKS</envar></link>">
<!ENTITY cv-link-LDMODULEPREFIX "<link linkend='cv-LDMODULEPREFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$LDMODULEPREFIX</envar></link>">
+<!ENTITY cv-link-_LDMODULESONAME "<link linkend='cv-_LDMODULESONAME' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$_LDMODULESONAME</envar></link>">
<!ENTITY cv-link-LDMODULESUFFIX "<link linkend='cv-LDMODULESUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$LDMODULESUFFIX</envar></link>">
+<!ENTITY cv-link-LDMODULEVERSION "<link linkend='cv-LDMODULEVERSION' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$LDMODULEVERSION</envar></link>">
+<!ENTITY cv-link-LDMODULEVERSIONFLAGS "<link linkend='cv-LDMODULEVERSIONFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$LDMODULEVERSIONFLAGS</envar></link>">
+<!ENTITY cv-link-_LDMODULEVERSIONFLAGS "<link linkend='cv-_LDMODULEVERSIONFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$_LDMODULEVERSIONFLAGS</envar></link>">
<!ENTITY cv-link-LEX "<link linkend='cv-LEX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$LEX</envar></link>">
<!ENTITY cv-link-LEXCOM "<link linkend='cv-LEXCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$LEXCOM</envar></link>">
<!ENTITY cv-link-LEXCOMSTR "<link linkend='cv-LEXCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$LEXCOMSTR</envar></link>">
@@ -1086,6 +1139,12 @@ THIS IS AN AUTOMATICALLY-GENERATED FILE. DO NOT EDIT.
<!ENTITY cv-link-SHF03FLAGS "<link linkend='cv-SHF03FLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHF03FLAGS</envar></link>">
<!ENTITY cv-link-SHF03PPCOM "<link linkend='cv-SHF03PPCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHF03PPCOM</envar></link>">
<!ENTITY cv-link-SHF03PPCOMSTR "<link linkend='cv-SHF03PPCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHF03PPCOMSTR</envar></link>">
+<!ENTITY cv-link-SHF08 "<link linkend='cv-SHF08' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHF08</envar></link>">
+<!ENTITY cv-link-SHF08COM "<link linkend='cv-SHF08COM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHF08COM</envar></link>">
+<!ENTITY cv-link-SHF08COMSTR "<link linkend='cv-SHF08COMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHF08COMSTR</envar></link>">
+<!ENTITY cv-link-SHF08FLAGS "<link linkend='cv-SHF08FLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHF08FLAGS</envar></link>">
+<!ENTITY cv-link-SHF08PPCOM "<link linkend='cv-SHF08PPCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHF08PPCOM</envar></link>">
+<!ENTITY cv-link-SHF08PPCOMSTR "<link linkend='cv-SHF08PPCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHF08PPCOMSTR</envar></link>">
<!ENTITY cv-link-SHF77 "<link linkend='cv-SHF77' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHF77</envar></link>">
<!ENTITY cv-link-SHF77COM "<link linkend='cv-SHF77COM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHF77COM</envar></link>">
<!ENTITY cv-link-SHF77COMSTR "<link linkend='cv-SHF77COMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHF77COMSTR</envar></link>">
@@ -1111,15 +1170,20 @@ THIS IS AN AUTOMATICALLY-GENERATED FILE. DO NOT EDIT.
<!ENTITY cv-link-SHFORTRANPPCOM "<link linkend='cv-SHFORTRANPPCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHFORTRANPPCOM</envar></link>">
<!ENTITY cv-link-SHFORTRANPPCOMSTR "<link linkend='cv-SHFORTRANPPCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHFORTRANPPCOMSTR</envar></link>">
<!ENTITY cv-link-SHLIBEMITTER "<link linkend='cv-SHLIBEMITTER' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHLIBEMITTER</envar></link>">
+<!ENTITY cv-link-SHLIBNOVERSIONSYMLINKS "<link linkend='cv-SHLIBNOVERSIONSYMLINKS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHLIBNOVERSIONSYMLINKS</envar></link>">
<!ENTITY cv-link-SHLIBPREFIX "<link linkend='cv-SHLIBPREFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHLIBPREFIX</envar></link>">
+<!ENTITY cv-link-_SHLIBSONAME "<link linkend='cv-_SHLIBSONAME' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$_SHLIBSONAME</envar></link>">
<!ENTITY cv-link-SHLIBSUFFIX "<link linkend='cv-SHLIBSUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHLIBSUFFIX</envar></link>">
<!ENTITY cv-link-SHLIBVERSION "<link linkend='cv-SHLIBVERSION' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHLIBVERSION</envar></link>">
+<!ENTITY cv-link-_SHLIBVERSIONFLAGS "<link linkend='cv-_SHLIBVERSIONFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$_SHLIBVERSIONFLAGS</envar></link>">
+<!ENTITY cv-link-SHLIBVERSIONFLAGS "<link linkend='cv-SHLIBVERSIONFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHLIBVERSIONFLAGS</envar></link>">
<!ENTITY cv-link-SHLINK "<link linkend='cv-SHLINK' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHLINK</envar></link>">
<!ENTITY cv-link-SHLINKCOM "<link linkend='cv-SHLINKCOM' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHLINKCOM</envar></link>">
<!ENTITY cv-link-SHLINKCOMSTR "<link linkend='cv-SHLINKCOMSTR' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHLINKCOMSTR</envar></link>">
<!ENTITY cv-link-SHLINKFLAGS "<link linkend='cv-SHLINKFLAGS' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHLINKFLAGS</envar></link>">
<!ENTITY cv-link-SHOBJPREFIX "<link linkend='cv-SHOBJPREFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHOBJPREFIX</envar></link>">
<!ENTITY cv-link-SHOBJSUFFIX "<link linkend='cv-SHOBJSUFFIX' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SHOBJSUFFIX</envar></link>">
+<!ENTITY cv-link-SONAME "<link linkend='cv-SONAME' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SONAME</envar></link>">
<!ENTITY cv-link-SOURCE "<link linkend='cv-SOURCE' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SOURCE</envar></link>">
<!ENTITY cv-link-SOURCE_URL "<link linkend='cv-SOURCE_URL' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SOURCE_URL</envar></link>">
<!ENTITY cv-link-SOURCES "<link linkend='cv-SOURCES' xmlns='http://www.scons.org/dbxsd/v1.0'><envar>$SOURCES</envar></link>">
diff --git a/doc/man/scons-time.xml b/doc/man/scons-time.xml
index a1ecadf7..e0fa6b17 100644
--- a/doc/man/scons-time.xml
+++ b/doc/man/scons-time.xml
@@ -32,7 +32,8 @@
<refmeta>
<refentrytitle>SCONS-TIME</refentrytitle>
<manvolnum>1</manvolnum>
-<refmiscinfo class='source'>__MONTH_YEAR__</refmiscinfo>
+<refmiscinfo class='source'>SCons __VERSION__</refmiscinfo>
+<refmiscinfo class='manual'>SCons __VERSION__</refmiscinfo>
</refmeta>
<refnamediv id='name'>
<refname>scons-time</refname>
diff --git a/doc/man/scons.xml b/doc/man/scons.xml
index 8d52c1e6..5c832c2a 100644
--- a/doc/man/scons.xml
+++ b/doc/man/scons.xml
@@ -54,10 +54,10 @@
<corpauthor>Steven Knight and the SCons Development Team</corpauthor>
- <pubdate>2004 - 2014</pubdate>
+ <pubdate>2004 - 2015</pubdate>
<copyright>
- <year>2004 - 2014</year>
+ <year>2004 - 2015</year>
<holder>The SCons Foundation</holder>
</copyright>
@@ -75,7 +75,8 @@
<refmeta>
<refentrytitle>SCONS</refentrytitle>
<manvolnum>1</manvolnum>
-<refmiscinfo class='source'>__MONTH_YEAR__</refmiscinfo>
+<refmiscinfo class='source'>SCons __VERSION__</refmiscinfo>
+<refmiscinfo class='manual'>SCons __VERSION__</refmiscinfo>
</refmeta>
<refnamediv id='name'>
<refname>scons</refname>
@@ -425,7 +426,7 @@ try to access a list member that
does not exist.</para>
<para><command>scons</command>
-requires Python version 2.4 or later.
+requires Python version 2.7 or later.
There should be no other dependencies or requirements to run
<emphasis role="bold">scons.</emphasis></para>
@@ -7039,7 +7040,7 @@ env.Program('MyApp', ['Foo.cpp', 'Bar.cpp'])
<para>For more information see the document for the PCH builder, and the PCH and
PCHSTOP construction variables. To learn about the details of precompiled
-headers consult the MSDN documention for /Yc, /Yu, and /Yp.</para>
+headers consult the MSDN documentation for /Yc, /Yu, and /Yp.</para>
</refsect2>
diff --git a/doc/man/sconsign.xml b/doc/man/sconsign.xml
index ca99db6c..44a1e5f1 100644
--- a/doc/man/sconsign.xml
+++ b/doc/man/sconsign.xml
@@ -32,7 +32,8 @@
<refmeta>
<refentrytitle>SCONSIGN</refentrytitle>
<manvolnum>1</manvolnum>
-<refmiscinfo class='source'>__MONTH_YEAR__</refmiscinfo>
+<refmiscinfo class='source'>SCons __VERSION__</refmiscinfo>
+<refmiscinfo class='manual'>SCons __VERSION__</refmiscinfo>
</refmeta>
<refnamediv id='name'>
<refname>sconsign</refname>
diff --git a/doc/man/titlepage/SConsBuildBricks_path.svg b/doc/man/titlepage/SConsBuildBricks_path.svg
index ed0c60d7..0d7f63e0 100644
--- a/doc/man/titlepage/SConsBuildBricks_path.svg
+++ b/doc/man/titlepage/SConsBuildBricks_path.svg
@@ -14,9 +14,9 @@
height="80.330002"
id="svg2"
sodipodi:version="0.32"
- inkscape:version="0.48.1 r9760"
+ inkscape:version="0.48.4 r9939"
version="1.0"
- sodipodi:docname="SConsBuildBricks.svg"
+ sodipodi:docname="SConsBuildBricks_path.svg"
inkscape:export-filename="Constructs-using-SCons.png"
inkscape:export-xdpi="100"
inkscape:export-ydpi="100">
@@ -77,24 +77,22 @@
</cc:Agent>
</dc:contributor>
<cc:license
- rdf:resource="http://creativecommons.org/licenses/by-nc-sa/2.0/" />
+ rdf:resource="http://creativecommons.org/licenses/by-sa/3.0/" />
</cc:Work>
<cc:License
- rdf:about="http://creativecommons.org/licenses/by-nc-sa/2.5/">
+ rdf:about="http://creativecommons.org/licenses/by-sa/3.0/">
<cc:permits
- rdf:resource="http://web.resource.org/cc/Reproduction" />
+ rdf:resource="http://creativecommons.org/ns#Reproduction" />
<cc:permits
- rdf:resource="http://web.resource.org/cc/Distribution" />
+ rdf:resource="http://creativecommons.org/ns#Distribution" />
<cc:requires
- rdf:resource="http://web.resource.org/cc/Notice" />
+ rdf:resource="http://creativecommons.org/ns#Notice" />
<cc:requires
- rdf:resource="http://web.resource.org/cc/Attribution" />
- <cc:prohibits
- rdf:resource="http://web.resource.org/cc/CommercialUse" />
+ rdf:resource="http://creativecommons.org/ns#Attribution" />
<cc:permits
- rdf:resource="http://web.resource.org/cc/DerivativeWorks" />
+ rdf:resource="http://creativecommons.org/ns#DerivativeWorks" />
<cc:requires
- rdf:resource="http://web.resource.org/cc/ShareAlike" />
+ rdf:resource="http://creativecommons.org/ns#ShareAlike" />
</cc:License>
</rdf:RDF>
</metadata>
diff --git a/doc/python10/process.xml b/doc/python10/process.xml
index 24645e61..6c790d0b 100644
--- a/doc/python10/process.xml
+++ b/doc/python10/process.xml
@@ -50,7 +50,7 @@
<listitem>
<para>
- &SCons; will be written to Python version 2.4 (to ensure
+ &SCons; will be written to Python version 2.7 (to ensure
usability by a wide install base).
</para>
@@ -296,7 +296,7 @@
</para>
<para>
-
+
In practice, simple tests only
need to initialize a test object, use the object to write some
input files, run &SCons;, and then check whatever criteria
diff --git a/doc/reference/titlepage/SConsBuildBricks_path.svg b/doc/reference/titlepage/SConsBuildBricks_path.svg
index ed0c60d7..0d7f63e0 100644
--- a/doc/reference/titlepage/SConsBuildBricks_path.svg
+++ b/doc/reference/titlepage/SConsBuildBricks_path.svg
@@ -14,9 +14,9 @@
height="80.330002"
id="svg2"
sodipodi:version="0.32"
- inkscape:version="0.48.1 r9760"
+ inkscape:version="0.48.4 r9939"
version="1.0"
- sodipodi:docname="SConsBuildBricks.svg"
+ sodipodi:docname="SConsBuildBricks_path.svg"
inkscape:export-filename="Constructs-using-SCons.png"
inkscape:export-xdpi="100"
inkscape:export-ydpi="100">
@@ -77,24 +77,22 @@
</cc:Agent>
</dc:contributor>
<cc:license
- rdf:resource="http://creativecommons.org/licenses/by-nc-sa/2.0/" />
+ rdf:resource="http://creativecommons.org/licenses/by-sa/3.0/" />
</cc:Work>
<cc:License
- rdf:about="http://creativecommons.org/licenses/by-nc-sa/2.5/">
+ rdf:about="http://creativecommons.org/licenses/by-sa/3.0/">
<cc:permits
- rdf:resource="http://web.resource.org/cc/Reproduction" />
+ rdf:resource="http://creativecommons.org/ns#Reproduction" />
<cc:permits
- rdf:resource="http://web.resource.org/cc/Distribution" />
+ rdf:resource="http://creativecommons.org/ns#Distribution" />
<cc:requires
- rdf:resource="http://web.resource.org/cc/Notice" />
+ rdf:resource="http://creativecommons.org/ns#Notice" />
<cc:requires
- rdf:resource="http://web.resource.org/cc/Attribution" />
- <cc:prohibits
- rdf:resource="http://web.resource.org/cc/CommercialUse" />
+ rdf:resource="http://creativecommons.org/ns#Attribution" />
<cc:permits
- rdf:resource="http://web.resource.org/cc/DerivativeWorks" />
+ rdf:resource="http://creativecommons.org/ns#DerivativeWorks" />
<cc:requires
- rdf:resource="http://web.resource.org/cc/ShareAlike" />
+ rdf:resource="http://creativecommons.org/ns#ShareAlike" />
</cc:License>
</rdf:RDF>
</metadata>
diff --git a/doc/scons.mod b/doc/scons.mod
index 72dc7ff2..8d640541 100644
--- a/doc/scons.mod
+++ b/doc/scons.mod
@@ -276,6 +276,7 @@
<!ENTITY CheckHeader "<function xmlns='http://www.scons.org/dbxsd/v1.0'>CheckHeader</function>">
<!ENTITY CheckLib "<function xmlns='http://www.scons.org/dbxsd/v1.0'>CheckLib</function>">
<!ENTITY CheckLibWithHeader "<function xmlns='http://www.scons.org/dbxsd/v1.0'>CheckLibWithHeader</function>">
+<!ENTITY CheckProg "<function xmlns='http://www.scons.org/dbxsd/v1.0'>CheckProg</function>">
<!ENTITY CheckType "<function xmlns='http://www.scons.org/dbxsd/v1.0'>CheckType</function>">
<!ENTITY CheckTypeSize "<function xmlns='http://www.scons.org/dbxsd/v1.0'>CheckTypeSize</function>">
<!ENTITY TryAction "<function xmlns='http://www.scons.org/dbxsd/v1.0'>TryAction</function>">
diff --git a/doc/user/build-install.xml b/doc/user/build-install.xml
index ca40b044..3e661720 100644
--- a/doc/user/build-install.xml
+++ b/doc/user/build-install.xml
@@ -6,7 +6,7 @@
<!ENTITY % scons SYSTEM "../scons.mod">
%scons;
-
+
<!ENTITY % builders-mod SYSTEM "../generated/builders.mod">
%builders-mod;
<!ENTITY % functions-mod SYSTEM "../generated/functions.mod">
@@ -15,7 +15,7 @@
%tools-mod;
<!ENTITY % variables-mod SYSTEM "../generated/variables.mod">
%variables-mod;
-
+
]>
<chapter id="chap-build-install"
@@ -79,7 +79,7 @@
to configure simple &SCons; builds without knowing Python,
so you can skip this section if you
want to dive in and pick up things
- by example- -or, of course, if you are
+ by example- -or, of course, if you are
already familiar with Python.
</para>
@@ -147,7 +147,7 @@ Python 2.5.1
<para>
- &SCons; will work with any 2.x version of Python from 2.4 on;
+ &SCons; will work with any 2.x version of Python from 2.7 on;
3.0 and later are not yet supported.
If you need to install Python and have a choice,
we recommend using the most recent 2.x Python version available.
@@ -209,7 +209,7 @@ Python 2.5.1
a specific &SCons; RPM file,
you can download and install from the
generic RPM provided by the &SCons; project.
- This will install the
+ This will install the
SCons script(s) in <filename>/usr/bin</filename>,
and the SCons library modules in
<filename>/usr/lib/scons</filename>.
@@ -231,7 +231,7 @@ Python 2.5.1
<para>
Or, you can use a graphical RPM package manager.
- See your package manager application's documention
+ See your package manager application's documentation
for specific instructions about
how to use it to install a downloaded RPM.
@@ -530,7 +530,7 @@ Python 2.5.1
This would
install the <application>scons</application> script in
<filename>/opt/scons/bin</filename>
- and the build engine in
+ and the build engine in
<filename>/opt/scons/lib/scons</filename>,
</para>
@@ -566,7 +566,7 @@ Python 2.5.1
relative to the user's <literal>$HOME</literal> directory,
the &scons; script in
<filename>$HOME/bin</filename>
- and the build engine in
+ and the build engine in
<filename>$HOME/lib/scons</filename>,
simply type:
@@ -719,7 +719,7 @@ $ <userinput>python setup.py install --prefix=$HOME</userinput>
while: statements look like
break statements look like
-
+
continue statements look like
</para>
diff --git a/doc/user/builders-writing.xml b/doc/user/builders-writing.xml
index f3713f2c..dec176a8 100644
--- a/doc/user/builders-writing.xml
+++ b/doc/user/builders-writing.xml
@@ -502,7 +502,7 @@ def build_function(target, source, env):
The builder function
may raise an exception
or return any non-zero value
- to indicate that the build is unsuccessful,
+ to indicate that the build is unsuccessful.
</para>
diff --git a/doc/user/less-simple.xml b/doc/user/less-simple.xml
index cca60333..9f27738e 100644
--- a/doc/user/less-simple.xml
+++ b/doc/user/less-simple.xml
@@ -257,6 +257,7 @@ Program('program', Glob('*.c'))
(see <xref linkend="chap-variants"></xref>, below)
and repositories
(see <xref linkend="chap-repositories"></xref>, below),
+ excluding some files
and returning strings rather than Nodes.
</para>
diff --git a/doc/user/libraries.xml b/doc/user/libraries.xml
index 626e9392..d7983c90 100644
--- a/doc/user/libraries.xml
+++ b/doc/user/libraries.xml
@@ -123,7 +123,7 @@ void f3() { printf("f3.c\n"); }
list of source files.
You can, however, also give the &b-link-Library; call
object files,
- and it will correctly realize
+ and it will correctly realize they are object files.
In fact, you can arbitrarily mix source code files
and object files in the source list:
diff --git a/doc/user/main.xml b/doc/user/main.xml
index a1657776..d2c4c183 100644
--- a/doc/user/main.xml
+++ b/doc/user/main.xml
@@ -74,10 +74,10 @@
<corpauthor>Steven Knight and the SCons Development Team</corpauthor>
- <pubdate>2004 - 2014</pubdate>
+ <pubdate>2004 - 2015</pubdate>
<copyright>
- <year>2004 - 2014</year>
+ <year>2004 - 2015</year>
<holder>The SCons Foundation</holder>
</copyright>
diff --git a/doc/user/misc.xml b/doc/user/misc.xml
index a71663f2..286963d2 100644
--- a/doc/user/misc.xml
+++ b/doc/user/misc.xml
@@ -2,7 +2,7 @@
<!DOCTYPE sconsdoc [
<!ENTITY % scons SYSTEM "../scons.mod">
%scons;
-
+
<!ENTITY % builders-mod SYSTEM "../generated/builders.mod">
%builders-mod;
<!ENTITY % functions-mod SYSTEM "../generated/functions.mod">
@@ -56,11 +56,10 @@
<para>
- Although the &SCons; code itself will run
- on any 2.x Python version 2.4 or later,
+ Although the &SCons; code itself will run
+ on any 2.x Python version 2.7 or later,
you are perfectly free to make use of
- Python syntax and modules from more modern versions
- (for example, Python 2.5 or 2.6)
+ Python syntax and modules from later versions
when writing your &SConscript; files
or your own local modules.
If you do this, it's usually helpful to
diff --git a/doc/user/output.xml b/doc/user/output.xml
index cdb28d75..78dcca49 100644
--- a/doc/user/output.xml
+++ b/doc/user/output.xml
@@ -83,6 +83,21 @@ Type: 'scons program' to build the production program,
<para>
+ Optionally, one can specify the append flag:
+
+ </para>
+
+ <scons_example name="output_ex1_a">
+ <file name="SConstruct" printme="1">
+Help("""
+Type: 'scons program' to build the production program,
+ 'scons debug' to build the debug version.
+""", append=True)
+ </file>
+ </scons_example>
+
+ <para>
+
(Note the above use of the Python triple-quote syntax,
which comes in very handy for
specifying multi-line strings like help text.)
@@ -120,6 +135,13 @@ Type: 'scons program' to build the production program,
<para>
+ When used with &AddOption; Help("text", append=False) will clobber any help output associated with AddOption().
+ To preserve the help output from AddOption(), set append=True.
+
+ </para>
+
+ <para>
+
Another use would be to make the help text conditional
on some variable.
For example, suppose you only want to display
diff --git a/doc/user/repositories.xml b/doc/user/repositories.xml
index 32a0b5b3..c91188e4 100644
--- a/doc/user/repositories.xml
+++ b/doc/user/repositories.xml
@@ -423,7 +423,7 @@ int main() { printf("Hello, world!\n"); }
<para>
Change all occurrences of <literal>#include "file.h"</literal>
- to <literal>#include &amp;lt;file.h&amp;gt;</literal>.
+ to <literal>#include &lt;file.h&gt;</literal>.
Use of <literal>#include</literal> with angle brackets
does not have the same behavior--the <literal>-I</literal>
directories are searched first
diff --git a/doc/user/sconf.xml b/doc/user/sconf.xml
index 214569db..fe933f12 100644
--- a/doc/user/sconf.xml
+++ b/doc/user/sconf.xml
@@ -275,7 +275,7 @@ env = conf.Finish()
<sconstruct>
env = Environment()
conf = Configure(env)
-if not conf.CheckType('off_t', '#include &amp;lt;sys/types.h&amp;gt;\n'):
+if not conf.CheckType('off_t', '#include &lt;sys/types.h&gt;\n'):
print 'Did not find off_t typedef, assuming int'
conf.env.Append(CCFLAGS = '-Doff_t=int')
env = conf.Finish()
@@ -304,6 +304,26 @@ scons: `.' is up to date.
</section>
<section>
+ <title>Checking for the Presence of a program</title>
+
+ <para>
+
+ Check for the presence of a program
+ by using the &CheckProg; method:
+
+ </para>
+
+ <sconstruct>
+env = Environment()
+conf = Configure(env)
+if not conf.CheckProg('foobar'):
+ print 'Unable to find the program foobar on the system'
+ Exit(1)
+env = conf.Finish()
+ </sconstruct>
+
+ </section>
+ <section>
<title>Adding Your Own Custom Checks</title>
<para>
@@ -324,7 +344,7 @@ scons: `.' is up to date.
<sconstruct>
mylib_test_source_file = """
-#include &amp;lt;mylib.h&amp;gt;
+#include &lt;mylib.h&gt;
int main(int argc, char **argv)
{
MyLibrary mylib(argc, argv);
@@ -401,7 +421,7 @@ conf = Configure(env, custom_tests = {'CheckMyLibrary' : CheckMyLibrary})
<sconstruct>
mylib_test_source_file = """
-#include &amp;lt;mylib.h&amp;gt;
+#include &lt;mylib.h&gt;
int main(int argc, char **argv)
{
MyLibrary mylib(argc, argv);
diff --git a/doc/user/tasks.xml b/doc/user/tasks.xml
index 0bdf6786..8026a536 100644
--- a/doc/user/tasks.xml
+++ b/doc/user/tasks.xml
@@ -96,8 +96,8 @@ filenames = [x for x in filenames if os.path.splitext(x)[1] in extensions]
<example>
<title>The "backtick function": run a shell command and capture the
output</title>
-<programlisting>import os
-output = os.popen(command).read()
+<programlisting>import subprocess
+output = subprocess.check_output(command)
</programlisting>
</example>
diff --git a/doc/user/titlepage/SConsBuildBricks_path.svg b/doc/user/titlepage/SConsBuildBricks_path.svg
index ed0c60d7..0d7f63e0 100644
--- a/doc/user/titlepage/SConsBuildBricks_path.svg
+++ b/doc/user/titlepage/SConsBuildBricks_path.svg
@@ -14,9 +14,9 @@
height="80.330002"
id="svg2"
sodipodi:version="0.32"
- inkscape:version="0.48.1 r9760"
+ inkscape:version="0.48.4 r9939"
version="1.0"
- sodipodi:docname="SConsBuildBricks.svg"
+ sodipodi:docname="SConsBuildBricks_path.svg"
inkscape:export-filename="Constructs-using-SCons.png"
inkscape:export-xdpi="100"
inkscape:export-ydpi="100">
@@ -77,24 +77,22 @@
</cc:Agent>
</dc:contributor>
<cc:license
- rdf:resource="http://creativecommons.org/licenses/by-nc-sa/2.0/" />
+ rdf:resource="http://creativecommons.org/licenses/by-sa/3.0/" />
</cc:Work>
<cc:License
- rdf:about="http://creativecommons.org/licenses/by-nc-sa/2.5/">
+ rdf:about="http://creativecommons.org/licenses/by-sa/3.0/">
<cc:permits
- rdf:resource="http://web.resource.org/cc/Reproduction" />
+ rdf:resource="http://creativecommons.org/ns#Reproduction" />
<cc:permits
- rdf:resource="http://web.resource.org/cc/Distribution" />
+ rdf:resource="http://creativecommons.org/ns#Distribution" />
<cc:requires
- rdf:resource="http://web.resource.org/cc/Notice" />
+ rdf:resource="http://creativecommons.org/ns#Notice" />
<cc:requires
- rdf:resource="http://web.resource.org/cc/Attribution" />
- <cc:prohibits
- rdf:resource="http://web.resource.org/cc/CommercialUse" />
+ rdf:resource="http://creativecommons.org/ns#Attribution" />
<cc:permits
- rdf:resource="http://web.resource.org/cc/DerivativeWorks" />
+ rdf:resource="http://creativecommons.org/ns#DerivativeWorks" />
<cc:requires
- rdf:resource="http://web.resource.org/cc/ShareAlike" />
+ rdf:resource="http://creativecommons.org/ns#ShareAlike" />
</cc:License>
</rdf:RDF>
</metadata>
diff --git a/doc/version.xml b/doc/version.xml
index f6eba1f3..172a9ec6 100644
--- a/doc/version.xml
+++ b/doc/version.xml
@@ -2,6 +2,6 @@
<!--
THIS IS AN AUTOMATICALLY-GENERATED FILE. DO NOT EDIT.
-->
-<!ENTITY builddate "2013-03-23">
-<!ENTITY buildversion "2.3.0">
+<!ENTITY builddate "2015-06-17">
+<!ENTITY buildversion "2.3.5">
<!ENTITY buildrevision "1">