summaryrefslogtreecommitdiffstats
path: root/src/engine/SCons/Scanner
diff options
context:
space:
mode:
authorSteven Knight <knight@baldmt.com>2010-07-21 16:42:26 (GMT)
committerSteven Knight <knight@baldmt.com>2010-07-21 16:42:26 (GMT)
commitf47c9af3748b0eb9c6f0b1d0f8aeec1dd9a0bfa1 (patch)
tree571c2f903cc940142c5abfc7a56ed48f4b547bdc /src/engine/SCons/Scanner
parent324f4aa55703916b94e7660f7f65d29f4bc9c1e5 (diff)
downloadSCons-f47c9af3748b0eb9c6f0b1d0f8aeec1dd9a0bfa1.zip
SCons-f47c9af3748b0eb9c6f0b1d0f8aeec1dd9a0bfa1.tar.gz
SCons-f47c9af3748b0eb9c6f0b1d0f8aeec1dd9a0bfa1.tar.bz2
Move the authoritative source for functions from the man page to various
.xml files (some new, some updated) next to the modules that implement them. Generate the man page using the output generated from the .xml file by bin/scons-proc.py.
Diffstat (limited to 'src/engine/SCons/Scanner')
-rw-r--r--src/engine/SCons/Scanner/__init__.xml64
1 files changed, 64 insertions, 0 deletions
diff --git a/src/engine/SCons/Scanner/__init__.xml b/src/engine/SCons/Scanner/__init__.xml
new file mode 100644
index 0000000..f5f7c7b
--- /dev/null
+++ b/src/engine/SCons/Scanner/__init__.xml
@@ -0,0 +1,64 @@
+<!--
+__COPYRIGHT__
+
+This file is processed by the bin/SConsDoc.py module.
+See its __doc__ string for a discussion of the format.
+-->
+
+<scons_function name="FindPathDirs">
+<arguments signature="global">
+(variable)
+</arguments>
+<summary>
+Returns a function
+(actually a callable Python object)
+intended to be used as the
+<varname>path_function</varname>
+of a Scanner object.
+The returned object will look up the specified
+<varname>variable</varname>
+in a construction environment
+and treat the construction variable's value as a list of
+directory paths that should be searched
+(like
+&cv-link-CPPPATH;,
+&cv-link-LIBPATH;,
+etc.).
+
+Note that use of
+&f-FindPathDirs;
+is generally preferable to
+writing your own
+<varname>path_function</varname>
+for the following reasons:
+1) The returned list will contain all appropriate directories
+found in source trees
+(when
+&f-link-VariantDir;
+is used)
+or in code repositories
+(when
+&f-Repository;
+or the
+<option>-Y</option>
+option are used).
+2) scons will identify expansions of
+<varname>variable</varname>
+that evaluate to the same list of directories as,
+in fact, the same list,
+and avoid re-scanning the directories for files,
+when possible.
+
+Example:
+
+<example>
+def my_scan(node, env, path, arg):
+ # Code to scan file contents goes here...
+ return include_files
+
+scanner = Scanner(name = 'myscanner',
+ function = my_scan,
+ path_function = FindPathDirs('MYPATH'))
+</example>
+</summary>
+</scons_function>