From 9344ace078cb87fa9872097b95e89613a81bb729 Mon Sep 17 00:00:00 2001 From: Vladimir Prus Date: Sat, 6 Jan 2007 10:25:40 +0000 Subject: [PATCH] Merge docs for builtin target and utility rules in one section, and remove some duplication. [SVN r36596] --- doc/src/reference.xml | 166 ++++++++++++++++++------------------------ 1 file changed, 72 insertions(+), 94 deletions(-) diff --git a/doc/src/reference.xml b/doc/src/reference.xml index 03b4cf22f..cd9dabc80 100644 --- a/doc/src/reference.xml +++ b/doc/src/reference.xml @@ -235,10 +235,11 @@ target1 debug gcc/runtime-link=dynamic,static
- Builtin targets + Builtin rules - This section contains the list of all target types defined - in Boost.Build. + This section contains the list of all rules that + can be used in Jamfile—both rules that define new + targets and auxiliary rules. @@ -283,23 +284,6 @@ target1 debug gcc/runtime-link=dynamic,static file must be compiled with special properties. - - -
- - -
- Utility Rules - - The following table describes utility rules that can be - used in Jamfiles. Detailed information for any of these rules can - be obtained by running: - -bjam --help project.rulename - - - - glob @@ -313,84 +297,78 @@ lib tools : [ glob *.cpp ] ; - lib + project - Creates an library file. See - . + Declares project id and attributes, including + project requirements. See . + + + + use-project + + Assigns a symbolic project ID to a project at + a given path. This rule must be better documented! + + + + + explicit + + The explicit rule takes a single + parameter—a list of target names. The named targets will + be marked explicit, and will be built only if they are explicitly + requested on the command line, or if their dependents are built. + Compare this to ordinary targets, that are built implicitly when + their containing project is built. + + + + constant + + Sets project-wide constant. Takes two + parameters: variable name and a value and makes the specified + variable name accessible in this Jamfile and any child Jamfiles. + For example: + +constant VERSION : 1.34.0 ; + + + + + + path-constant + + Same as constant except that + the value is treated as path relative to Jamfile location. For example, + if bjam is invoked in the current directory, + and Jamfile in helper subdirectory has: + +path-constant DATA : data/a.txt ; + + then the variable DATA will be set to + helper/data/a.txt, and if bjam + is invoked from the helper directory, then + the variable DATA will be set to + data/a.txt. + + + + + build-project + + Cause some other project to be built. This rule + takes a single parameter—a directory name relative to + the containing Jamfile. When the containing Jamfile is built, + the project located at that directory will be built as well. + At the moment, the parameter to this rule should be a directory + name. Project ID or general target references are not allowed. + + + - - - <tgroup cols="2"> - <thead> - <row> - <entry>Rule</entry> - - <entry>Semantics</entry> - </row> - </thead> - - <tbody> - <row> - <entry><link linkend= - "bbv2.advanced.projects.attributes.projectrule">project</link> - </entry> - - <entry>Define this project's symbolic ID or attributes.</entry> - </row> - - <row> - <entry><xref linkend= - "bbv2.advanced.projects.relationships.useprojectrule">use-project</xref></entry> - - <entry>Make another project known so that it can be referred to by symbolic ID.</entry> - </row> - - <row> - <entry><xref linkend= - "bbv2.advanced.projects.relationships.buildprojectrule">build-project</xref></entry> - - <entry>Cause another project to be built when this one is built.</entry> - </row> - - <row> - <entry><xref linkend= - "bbv2.reference.buildprocess.explict">explicit</xref></entry> - - <entry>State that a target should be built only by explicit - request.</entry> - </row> - - <row> - <entry>glob</entry> - - <entry>Translate a list of shell-style wildcards into a - corresponding list of files.</entry> - </row> - - <row> - <entry>constant</entry> - - <entry>Injects a variable setting into this project's - Jamfile module and those of all its subprojects.</entry> - </row> - - <row> - <entry>path-constant</entry> - - <entry>Injects a variable set to a path value into - this project's Jamfile module and those of all its subprojects. - If the value is a relative path it will be adjusted for - each subproject so that it refers to the same - directory.</entry> - </row> - - - </tbody> - </tgroup> - </table> - </section> + </section> <section id="bbv2.reference.tools"> <title>Builtin tools