diff options
Diffstat (limited to 'doc/html/bbv2/reference.html')
-rw-r--r-- | doc/html/bbv2/reference.html | 228 |
1 files changed, 114 insertions, 114 deletions
diff --git a/doc/html/bbv2/reference.html b/doc/html/bbv2/reference.html index 8807c60090..7d3f1c7fbe 100644 --- a/doc/html/bbv2/reference.html +++ b/doc/html/bbv2/reference.html @@ -260,7 +260,7 @@ path-constant DATA : data/a.txt ; <p>This section documents the features that are built-in into Boost.Build. For features with a fixed set of values, that set is provided, with the default value listed first.</p> -<a class="indexterm" name="idp618300944"></a><div class="variablelist"><dl class="variablelist"> +<a class="indexterm" name="idp637154064"></a><div class="variablelist"><dl class="variablelist"> <dt><span class="term"><code class="literal">variant</code></span></dt> <dd> <p> @@ -605,7 +605,7 @@ path-constant DATA : data/a.txt ; </dd> <dt><span class="term"><code class="literal">embed-manifest</code></span></dt> <dd> -<a class="indexterm" name="idp618460112"></a><a class="indexterm" name="idp618461216"></a><p> +<a class="indexterm" name="idp637313328"></a><a class="indexterm" name="idp637314432"></a><p> <span class="bold"><strong>Allowed values:</strong></span> on, off. </p> <p>This feature is specific to the msvc toolset (see @@ -618,7 +618,7 @@ path-constant DATA : data/a.txt ; </dd> <dt><span class="term"><code class="literal">embed-manifest-file</code></span></dt> <dd> -<a class="indexterm" name="idp618469440"></a><a class="indexterm" name="idp618470544"></a><p>This feature is specific to the msvc toolset (see +<a class="indexterm" name="idp637322672"></a><a class="indexterm" name="idp637323776"></a><p>This feature is specific to the msvc toolset (see <a class="xref" href="reference.html#bbv2.reference.tools.compiler.msvc" title="Microsoft Visual C++">the section called “Microsoft Visual C++”</a>), and controls which manifest files should be embedded inside executables and shared libraries. This @@ -633,8 +633,8 @@ path-constant DATA : data/a.txt ; <a name="bbv2.reference.tools"></a>Builtin tools</h3></div></div></div> <div class="toc"><dl class="toc"> <dt><span class="section"><a href="reference.html#bbv2.reference.tools.compilers">C++ Compilers</a></span></dt> -<dt><span class="section"><a href="reference.html#idp618798016">Third-party libraries</a></span></dt> -<dt><span class="section"><a href="reference.html#idp618857712">Documentation tools</a></span></dt> +<dt><span class="section"><a href="reference.html#idp637651312">Third-party libraries</a></span></dt> +<dt><span class="section"><a href="reference.html#idp637711072">Documentation tools</a></span></dt> </dl></div> <p>Boost.Build comes with support for a large number of C++ compilers, and other tools. This section documents how to use those tools.</p> @@ -735,7 +735,7 @@ using gcc : [<span class="optional"><em class="replaceable"><code>version</code> be either <code class="computeroutput">windres</code> for msvc resource compiler, or <code class="computeroutput">rc</code> for borland's resource compiler.</p></dd> </dl></div> -<a class="indexterm" name="idp618522624"></a> +<a class="indexterm" name="idp637375856"></a> In order to compile 64-bit applications, you have to specify <code class="computeroutput">address-model=64</code>, and the <code class="computeroutput">instruction-set</code> @@ -752,7 +752,7 @@ using gcc : [<span class="optional"><em class="replaceable"><code>version</code> to that of the gcc module. </p> <p> - <a class="indexterm" name="idp618531152"></a> + <a class="indexterm" name="idp637384320"></a> The darwin toolset can generate so called "fat" binaries—binaries that can run support more than one architecture, or address mode. To build a binary that can run both @@ -875,7 +875,7 @@ using msvc : [<span class="optional"><em class="replaceable"><code>version</code <div class="section"> <div class="titlepage"><div><div><h6 class="title"> <a name="v2.reference.tools.compiler.msvc.64"></a>64-bit support</h6></div></div></div> -<a class="indexterm" name="idp618590496"></a><p>Starting with version 8.0, Microsoft Visual Studio can +<a class="indexterm" name="idp637443664"></a><p>Starting with version 8.0, Microsoft Visual Studio can generate binaries for 64-bit processor, both 64-bit flavours of x86 (codenamed AMD64/EM64T), and Itanium (codenamed IA64). In addition, compilers that are itself run in 64-bit mode, for better @@ -922,7 +922,7 @@ using msvc : [<span class="optional"><em class="replaceable"><code>version</code <div class="section"> <div class="titlepage"><div><div><h6 class="title"> <a name="v2.reference.tools.compiler.msvc.winrt"></a>Windows Runtime support</h6></div></div></div> -<a class="indexterm" name="idp618606560"></a><p> +<a class="indexterm" name="idp637459792"></a><p> Starting with version 11.0, Microsoft Visual Studio can produce binaries for Windows Store and Phone in addition to traditional Win32 desktop. To specify which Windows API set @@ -1251,7 +1251,7 @@ using sun : [<span class="optional"><em class="replaceable"><code>version</code> <dd><p>Specifies additional command line options that will be passed to the linker.</p></dd> </dl></div> -<a class="indexterm" name="idp618788800"></a> +<a class="indexterm" name="idp637642096"></a> Starting with Sun Studio 12, you can create 64-bit applications by using the <code class="computeroutput">address-model=64</code> property. @@ -1276,7 +1276,7 @@ using vacpp ;</pre> </div> <div class="section"> <div class="titlepage"><div><div><h4 class="title"> -<a name="idp618798016"></a>Third-party libraries</h4></div></div></div> +<a name="idp637651312"></a>Third-party libraries</h4></div></div></div> <div class="toc"><dl class="toc"> <dt><span class="section"><a href="reference.html#bbv2.reference.tools.libraries.stlport">STLport library</a></span></dt> <dt><span class="section"><a href="reference.html#bbv2.reference.tools.libraries.zlib">zlib</a></span></dt> @@ -1287,7 +1287,7 @@ using vacpp ;</pre> <div class="section"> <div class="titlepage"><div><div><h5 class="title"> <a name="bbv2.reference.tools.libraries.stlport"></a>STLport library</h5></div></div></div> -<a class="indexterm" name="idp618800416"></a><p>The <a href="http://stlport.org" target="_top">STLport</a> library +<a class="indexterm" name="idp637653712"></a><p>The <a href="http://stlport.org" target="_top">STLport</a> library is an alternative implementation of C++ runtime library. Boost.Build supports using that library on Windows platform. Linux is hampered by different naming of libraries in each STLport @@ -1316,7 +1316,7 @@ using stlport : [<span class="optional"><em class="replaceable"><code>version</c <div class="section"> <div class="titlepage"><div><div><h5 class="title"> <a name="bbv2.reference.tools.libraries.zlib"></a>zlib</h5></div></div></div> -<a class="indexterm" name="idp618811440"></a><p>Provides support for the +<a class="indexterm" name="idp637664736"></a><p>Provides support for the <a href="http://www.zlib.net" target="_top">zlib</a> library. zlib can be configured either to use precompiled binaries or to build the library from source.</p> @@ -1366,7 +1366,7 @@ using zlib : 1.2.7 : : <toolset>gcc ; <div class="section"> <div class="titlepage"><div><div><h5 class="title"> <a name="bbv2.reference.tools.libraries.bzip2"></a>bzip2</h5></div></div></div> -<a class="indexterm" name="idp618835136"></a><p>Provides support for the +<a class="indexterm" name="idp637688496"></a><p>Provides support for the <a href="http://www.bzip.org" target="_top">bzip2</a> library. bzip2 can be configured either to use precompiled binaries or to build the library from source.</p> @@ -1416,7 +1416,7 @@ using bzip2 : 1.0.6 : : <toolset>gcc ; </div> <div class="section"> <div class="titlepage"><div><div><h4 class="title"> -<a name="idp618857712"></a>Documentation tools</h4></div></div></div> +<a name="idp637711072"></a>Documentation tools</h4></div></div></div> <div class="toc"><dl class="toc"> <dt><span class="section"><a href="reference.html#bbv2.reference.tools.doc.xsltproc">xsltproc</a></span></dt> <dt><span class="section"><a href="reference.html#bbv2.reference.tools.doc.boostbook">boostbook</a></span></dt> @@ -1430,7 +1430,7 @@ using bzip2 : 1.0.6 : : <toolset>gcc ; <div class="section"> <div class="titlepage"><div><div><h5 class="title"> <a name="bbv2.reference.tools.doc.xsltproc"></a>xsltproc</h5></div></div></div> -<a class="indexterm" name="idp618860064"></a><p>To use xsltproc, you first need to configure it using the following syntax:</p> +<a class="indexterm" name="idp637713424"></a><p>To use xsltproc, you first need to configure it using the following syntax:</p> <pre class="programlisting"> using xsltproc : [<span class="optional"><em class="replaceable"><code>xsltproc</code></em></span>] ; </pre> @@ -1478,7 +1478,7 @@ rule xslt-dir ( target : source stylesheet : properties * : dirname ) <div class="section"> <div class="titlepage"><div><div><h5 class="title"> <a name="bbv2.reference.tools.doc.boostbook"></a>boostbook</h5></div></div></div> -<a class="indexterm" name="idp618886000"></a><p>To use boostbook, you first need to configure it using the following syntax:</p> +<a class="indexterm" name="idp637739424"></a><p>To use boostbook, you first need to configure it using the following syntax:</p> <pre class="programlisting"> using boostbook : [<span class="optional"><em class="replaceable"><code>docbook-xsl-dir</code></em></span>] : [<span class="optional"><em class="replaceable"><code>docbook-dtd-dir</code></em></span>] : [<span class="optional"><em class="replaceable"><code>boostbook-dir</code></em></span>] ; </pre> @@ -1532,7 +1532,7 @@ rule boostbook ( target-name : sources * : requirements * : default-build * ) <div class="section"> <div class="titlepage"><div><div><h5 class="title"> <a name="bbv2.reference.tools.doc.doxygen"></a>doxygen</h5></div></div></div> -<a class="indexterm" name="idp618921456"></a><p>To use doxygen, you first need to configure it using the following syntax:</p> +<a class="indexterm" name="idp637774880"></a><p>To use doxygen, you first need to configure it using the following syntax:</p> <pre class="programlisting"> using doxygen : [<span class="optional"><em class="replaceable"><code>name</code></em></span>] ; </pre> @@ -1591,7 +1591,7 @@ rule doxygen ( target : sources * : requirements * : default-build * : usage-req <div class="section"> <div class="titlepage"><div><div><h5 class="title"> <a name="bbv2.reference.tools.doc.quickbook"></a>quickbook</h5></div></div></div> -<a class="indexterm" name="idp618946960"></a><p>The quickbook module provides a generator to convert from +<a class="indexterm" name="idp637800448"></a><p>The quickbook module provides a generator to convert from Quickbook to BoostBook XML.</p> <p>To use quickbook, you first need to configure it using the following syntax:</p> <pre class="programlisting"> @@ -1607,7 +1607,7 @@ using quickbook : [<span class="optional"><em class="replaceable"><code>command< <div class="section"> <div class="titlepage"><div><div><h5 class="title"> <a name="bbv2.reference.tools.doc.fop"></a>fop</h5></div></div></div> -<a class="indexterm" name="idp618952304"></a><p>The fop module provides generators to convert from +<a class="indexterm" name="idp637805792"></a><p>The fop module provides generators to convert from XSL formatting objects to Postscript and PDF.</p> <p>To use fop, you first need to configure it using the following syntax:</p> <pre class="programlisting"> @@ -1644,7 +1644,7 @@ using fop : [<span class="optional"><em class="replaceable"><code>fop-command</c <div class="section"> <div class="titlepage"><div><div><h4 class="title"> <a name="bbv2.reference.modules.modules"></a>modules</h4></div></div></div> -<a class="indexterm" name="idp618962032"></a><p> +<a class="indexterm" name="idp637815520"></a><p> The <code class="computeroutput">modules</code> module defines basic functionality for handling modules. </p> @@ -1694,7 +1694,7 @@ using fop : [<span class="optional"><em class="replaceable"><code>fop-command</c </p> <div class="orderedlist"><ol class="orderedlist" type="1"> <li class="listitem"> -<a name="bbv2.reference.modules.modules.binding"></a><a class="indexterm" name="idp618971792"></a><code class="computeroutput"><span class="keyword">rule</span> binding <span class="special">(</span> module-name <span class="special">)</span></code><p>Returns the filesystem binding of the given module.</p> +<a name="bbv2.reference.modules.modules.binding"></a><a class="indexterm" name="idp637825360"></a><code class="computeroutput"><span class="keyword">rule</span> binding <span class="special">(</span> module-name <span class="special">)</span></code><p>Returns the filesystem binding of the given module.</p> <p>For example, a module can get its own location with: </p> <pre class="programlisting">me <span class="special">=</span> <span class="special">[</span> modules.binding $(__name__) <span class="special">]</span> <span class="special">;</span></pre> @@ -1702,7 +1702,7 @@ using fop : [<span class="optional"><em class="replaceable"><code>fop-command</c </p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.modules.poke"></a><a class="indexterm" name="idp618980672"></a><code class="computeroutput"><span class="keyword">rule</span> poke <span class="special">(</span> module-name ? <span class="special">:</span> variables + <span class="special">:</span> value * <span class="special">)</span></code><p>Sets the module-local value of a variable.</p> +<a name="bbv2.reference.modules.modules.poke"></a><a class="indexterm" name="idp637834240"></a><code class="computeroutput"><span class="keyword">rule</span> poke <span class="special">(</span> module-name ? <span class="special">:</span> variables + <span class="special">:</span> value * <span class="special">)</span></code><p>Sets the module-local value of a variable.</p> <p>For example, to set a variable in the global module: </p> <pre class="programlisting">modules.poke <span class="special">:</span> ZLIB_INCLUDE <span class="special">:</span> /usr/local/include <span class="special">;</span></pre> @@ -1710,7 +1710,7 @@ using fop : [<span class="optional"><em class="replaceable"><code>fop-command</c </p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.modules.peek"></a><a class="indexterm" name="idp618990272"></a><code class="computeroutput"><span class="keyword">rule</span> peek <span class="special">(</span> module-name ? <span class="special">:</span> variables + <span class="special">)</span></code><p>Returns the module-local value of a variable.</p> +<a name="bbv2.reference.modules.modules.peek"></a><a class="indexterm" name="idp637843712"></a><code class="computeroutput"><span class="keyword">rule</span> peek <span class="special">(</span> module-name ? <span class="special">:</span> variables + <span class="special">)</span></code><p>Returns the module-local value of a variable.</p> <p> For example, to read a variable from the global module: </p> @@ -1719,7 +1719,7 @@ using fop : [<span class="optional"><em class="replaceable"><code>fop-command</c </p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.modules.call-in"></a><a class="indexterm" name="idp619001024"></a><code class="computeroutput"><span class="keyword">rule</span> call-in <span class="special">(</span> module-name ? <span class="special">:</span> rule-name args * <span class="special">:</span> * <span class="special">)</span> </code><p>Call the given rule locally in the given module. Use +<a name="bbv2.reference.modules.modules.call-in"></a><a class="indexterm" name="idp637854512"></a><code class="computeroutput"><span class="keyword">rule</span> call-in <span class="special">(</span> module-name ? <span class="special">:</span> rule-name args * <span class="special">:</span> * <span class="special">)</span> </code><p>Call the given rule locally in the given module. Use this for rules accepting rule names as arguments, so that the passed rule may be invoked in the context of the rule's caller (for example, if the rule accesses module globals or @@ -1754,7 +1754,7 @@ using fop : [<span class="optional"><em class="replaceable"><code>fop-command</c </p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.modules.load"></a><a class="indexterm" name="idp619027760"></a><code class="computeroutput"><span class="keyword">rule</span> load <span class="special">(</span> module-name <span class="special">:</span> filename ? <span class="special">:</span> search * <span class="special">)</span></code><p>Load the indicated module if it is not already loaded.</p> +<a name="bbv2.reference.modules.modules.load"></a><a class="indexterm" name="idp637881248"></a><code class="computeroutput"><span class="keyword">rule</span> load <span class="special">(</span> module-name <span class="special">:</span> filename ? <span class="special">:</span> search * <span class="special">)</span></code><p>Load the indicated module if it is not already loaded.</p> <div class="variablelist"><dl class="variablelist"> <dt><span class="term"><code class="literal">module-name</code></span></dt> <dd><p>Name of module to load.</p></dd> @@ -1770,7 +1770,7 @@ using fop : [<span class="optional"><em class="replaceable"><code>fop-command</c </dl></div> </li> <li class="listitem"> -<a name="bbv2.reference.modules.modules.import"></a><a class="indexterm" name="idp619041952"></a><code class="computeroutput"><span class="keyword">rule</span> import <span class="special">(</span> module-names + <span class="special">:</span> rules-opt * <span class="special">:</span> rename-opt * <span class="special">)</span></code><p>Load the indicated module and import rule names into the +<a name="bbv2.reference.modules.modules.import"></a><a class="indexterm" name="idp637895504"></a><code class="computeroutput"><span class="keyword">rule</span> import <span class="special">(</span> module-names + <span class="special">:</span> rules-opt * <span class="special">:</span> rename-opt * <span class="special">)</span></code><p>Load the indicated module and import rule names into the current module. Any members of <code class="computeroutput">rules-opt</code> will be available without qualification in the caller's module. Any members of <code class="computeroutput">rename-opt</code> will be taken as the names @@ -1799,7 +1799,7 @@ import path <span class="special">:</span> native make <span class="special">:</ </p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.modules.clone-rules"></a><a class="indexterm" name="idp619060224"></a><code class="computeroutput"><span class="keyword">rule</span> clone-rules <span class="special">(</span> source-module target-module <span class="special">)</span></code><p>Define exported copies in <code class="computeroutput">$(target-module)</code> +<a name="bbv2.reference.modules.modules.clone-rules"></a><a class="indexterm" name="idp637913840"></a><code class="computeroutput"><span class="keyword">rule</span> clone-rules <span class="special">(</span> source-module target-module <span class="special">)</span></code><p>Define exported copies in <code class="computeroutput">$(target-module)</code> of all rules exported from <code class="computeroutput">$(source-module)</code>. Also make them available in the global module with qualification, so that it is just as though the rules were defined originally @@ -1810,7 +1810,7 @@ import path <span class="special">:</span> native make <span class="special">:</ <div class="section"> <div class="titlepage"><div><div><h4 class="title"> <a name="bbv2.reference.modules.path"></a>path</h4></div></div></div> -<a class="indexterm" name="idp619068304"></a><p> +<a class="indexterm" name="idp637921984"></a><p> Performs various path manipulations. Paths are always in a 'normalized' representation. In it, a path may be either: @@ -1829,25 +1829,25 @@ import path <span class="special">:</span> native make <span class="special">:</ </p> <div class="orderedlist"><ol class="orderedlist" type="1"> <li class="listitem"> -<a name="bbv2.reference.modules.path.make"></a><a class="indexterm" name="idp619075728"></a><code class="computeroutput"><span class="keyword">rule</span> make <span class="special">(</span> native <span class="special">)</span></code><p>Converts the native path into normalized form.</p> +<a name="bbv2.reference.modules.path.make"></a><a class="indexterm" name="idp637929408"></a><code class="computeroutput"><span class="keyword">rule</span> make <span class="special">(</span> native <span class="special">)</span></code><p>Converts the native path into normalized form.</p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.path.native"></a><a class="indexterm" name="idp619081504"></a><code class="computeroutput"><span class="keyword">rule</span> native <span class="special">(</span> path <span class="special">)</span></code><p>Builds the native representation of the path.</p> +<a name="bbv2.reference.modules.path.native"></a><a class="indexterm" name="idp637935120"></a><code class="computeroutput"><span class="keyword">rule</span> native <span class="special">(</span> path <span class="special">)</span></code><p>Builds the native representation of the path.</p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.path.is-rooted"></a><a class="indexterm" name="idp619086928"></a><code class="computeroutput"><span class="keyword">rule</span> is-rooted <span class="special">(</span> path <span class="special">)</span></code><p>Tests if a path is rooted.</p> +<a name="bbv2.reference.modules.path.is-rooted"></a><a class="indexterm" name="idp637940544"></a><code class="computeroutput"><span class="keyword">rule</span> is-rooted <span class="special">(</span> path <span class="special">)</span></code><p>Tests if a path is rooted.</p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.path.has-parent"></a><a class="indexterm" name="idp619092336"></a><code class="computeroutput"><span class="keyword">rule</span> has-parent <span class="special">(</span> path <span class="special">)</span></code><p>Tests if a path has a parent.</p> +<a name="bbv2.reference.modules.path.has-parent"></a><a class="indexterm" name="idp637945952"></a><code class="computeroutput"><span class="keyword">rule</span> has-parent <span class="special">(</span> path <span class="special">)</span></code><p>Tests if a path has a parent.</p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.path.basename"></a><a class="indexterm" name="idp619097744"></a><code class="computeroutput"><span class="keyword">rule</span> basename <span class="special">(</span> path <span class="special">)</span></code><p>Returns the path without any directory components.</p> +<a name="bbv2.reference.modules.path.basename"></a><a class="indexterm" name="idp637951360"></a><code class="computeroutput"><span class="keyword">rule</span> basename <span class="special">(</span> path <span class="special">)</span></code><p>Returns the path without any directory components.</p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.path.parent"></a><a class="indexterm" name="idp619103168"></a><code class="computeroutput"><span class="keyword">rule</span> parent <span class="special">(</span> path <span class="special">)</span></code><p>Returns the parent directory of the path. If no parent exists, an error is issued.</p> +<a name="bbv2.reference.modules.path.parent"></a><a class="indexterm" name="idp637956784"></a><code class="computeroutput"><span class="keyword">rule</span> parent <span class="special">(</span> path <span class="special">)</span></code><p>Returns the parent directory of the path. If no parent exists, an error is issued.</p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.path.reverse"></a><a class="indexterm" name="idp619108624"></a><code class="computeroutput"><span class="keyword">rule</span> reverse <span class="special">(</span> path <span class="special">)</span></code><p> +<a name="bbv2.reference.modules.path.reverse"></a><a class="indexterm" name="idp637962240"></a><code class="computeroutput"><span class="keyword">rule</span> reverse <span class="special">(</span> path <span class="special">)</span></code><p> Returns <code class="computeroutput">path2</code> such that <code class="computeroutput"><span class="special">[</span> join path path2 <span class="special">]</span> <span class="special">=</span> "."</code>. The path may not contain <code class="computeroutput">".."</code> @@ -1855,23 +1855,23 @@ import path <span class="special">:</span> native make <span class="special">:</ </p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.path.join"></a><a class="indexterm" name="idp619118080"></a><code class="computeroutput"><span class="keyword">rule</span> join <span class="special">(</span> elements + <span class="special">)</span></code><p> +<a name="bbv2.reference.modules.path.join"></a><a class="indexterm" name="idp637971696"></a><code class="computeroutput"><span class="keyword">rule</span> join <span class="special">(</span> elements + <span class="special">)</span></code><p> Concatenates the passed path elements. Generates an error if any element other than the first one is rooted. Skips any empty or undefined path elements. </p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.path.root"></a><a class="indexterm" name="idp619123584"></a><code class="computeroutput"><span class="keyword">rule</span> root <span class="special">(</span> path root <span class="special">)</span></code><p> +<a name="bbv2.reference.modules.path.root"></a><a class="indexterm" name="idp637977200"></a><code class="computeroutput"><span class="keyword">rule</span> root <span class="special">(</span> path root <span class="special">)</span></code><p> If <code class="computeroutput">path</code> is relative, it is rooted at <code class="computeroutput">root</code>. Otherwise, it is unchanged. </p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.path.pwd"></a><a class="indexterm" name="idp619130384"></a><code class="computeroutput"><span class="keyword">rule</span> pwd <span class="special">(</span> <span class="special">)</span></code><p>Returns the current working directory.</p> +<a name="bbv2.reference.modules.path.pwd"></a><a class="indexterm" name="idp637984000"></a><code class="computeroutput"><span class="keyword">rule</span> pwd <span class="special">(</span> <span class="special">)</span></code><p>Returns the current working directory.</p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.path.glob"></a><a class="indexterm" name="idp619135648"></a><code class="computeroutput"><span class="keyword">rule</span> glob <span class="special">(</span> dirs * <span class="special">:</span> patterns + <span class="special">:</span> exclude-patterns * <span class="special">)</span></code><p> +<a name="bbv2.reference.modules.path.glob"></a><a class="indexterm" name="idp637989392"></a><code class="computeroutput"><span class="keyword">rule</span> glob <span class="special">(</span> dirs * <span class="special">:</span> patterns + <span class="special">:</span> exclude-patterns * <span class="special">)</span></code><p> Returns the list of files matching the given pattern in the specified directory. Both directories and patterns are supplied as portable paths. Each pattern should be a non-absolute path, and can't contain "." or ".." elements. @@ -1896,7 +1896,7 @@ import path <span class="special">:</span> native make <span class="special">:</ </p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.path.glob-tree"></a><a class="indexterm" name="idp619149712"></a><code class="computeroutput"><span class="keyword">rule</span> glob-tree <span class="special">(</span> roots * <span class="special">:</span> patterns + <span class="special">:</span> exclude-patterns * <span class="special">)</span></code><p> +<a name="bbv2.reference.modules.path.glob-tree"></a><a class="indexterm" name="idp638003392"></a><code class="computeroutput"><span class="keyword">rule</span> glob-tree <span class="special">(</span> roots * <span class="special">:</span> patterns + <span class="special">:</span> exclude-patterns * <span class="special">)</span></code><p> Recursive version of <a class="link" href="reference.html#bbv2.reference.modules.path.glob">glob</a>. Builds the glob of files while also searching in the subdirectories of the given roots. An optional set of exclusion patterns @@ -1906,10 +1906,10 @@ import path <span class="special">:</span> native make <span class="special">:</ </p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.path.exists"></a><a class="indexterm" name="idp619157648"></a><code class="computeroutput"><span class="keyword">rule</span> exists <span class="special">(</span> file <span class="special">)</span></code><p>Returns true if the specified file exists.</p> +<a name="bbv2.reference.modules.path.exists"></a><a class="indexterm" name="idp638011392"></a><code class="computeroutput"><span class="keyword">rule</span> exists <span class="special">(</span> file <span class="special">)</span></code><p>Returns true if the specified file exists.</p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.path.all-parents"></a><a class="indexterm" name="idp619163072"></a><code class="computeroutput"><span class="keyword">rule</span> all-parents <span class="special">(</span> path <span class="special">:</span> upper_limit ? <span class="special">:</span> cwd ? <span class="special">)</span></code><p> +<a name="bbv2.reference.modules.path.all-parents"></a><a class="indexterm" name="idp638016816"></a><code class="computeroutput"><span class="keyword">rule</span> all-parents <span class="special">(</span> path <span class="special">:</span> upper_limit ? <span class="special">:</span> cwd ? <span class="special">)</span></code><p> Find out the absolute name of path and return the list of all the parents, starting with the immediate one. Parents are returned as relative names. If <code class="computeroutput">upper_limit</code> is specified, directories above it @@ -1917,7 +1917,7 @@ import path <span class="special">:</span> native make <span class="special">:</ </p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.path.glob-in-parents"></a><a class="indexterm" name="idp619170752"></a><code class="computeroutput"><span class="keyword">rule</span> glob-in-parents <span class="special">(</span> dir <span class="special">:</span> patterns + <span class="special">:</span> upper-limit ? <span class="special">)</span></code><p> +<a name="bbv2.reference.modules.path.glob-in-parents"></a><a class="indexterm" name="idp638024560"></a><code class="computeroutput"><span class="keyword">rule</span> glob-in-parents <span class="special">(</span> dir <span class="special">:</span> patterns + <span class="special">:</span> upper-limit ? <span class="special">)</span></code><p> Search for <code class="computeroutput">patterns</code> in parent directories of <code class="computeroutput">dir</code>, up to and including <code class="computeroutput">upper_limit</code>, if it is specified, or @@ -1925,23 +1925,23 @@ import path <span class="special">:</span> native make <span class="special">:</ </p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.path.relative"></a><a class="indexterm" name="idp619179760"></a><code class="computeroutput"><span class="keyword">rule</span> relative <span class="special">(</span> child parent <span class="special">:</span> no-error ? <span class="special">)</span></code><p> +<a name="bbv2.reference.modules.path.relative"></a><a class="indexterm" name="idp638033568"></a><code class="computeroutput"><span class="keyword">rule</span> relative <span class="special">(</span> child parent <span class="special">:</span> no-error ? <span class="special">)</span></code><p> Assuming <code class="computeroutput">child</code> is a subdirectory of <code class="computeroutput">parent</code>, return the relative path from <code class="computeroutput">parent</code> to <code class="computeroutput">child</code>. </p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.path.relative-to"></a><a class="indexterm" name="idp619188768"></a><code class="computeroutput"><span class="keyword">rule</span> relative-to <span class="special">(</span> path1 path2 <span class="special">)</span></code><p>Returns the minimal path to path2 that is relative path1.</p> +<a name="bbv2.reference.modules.path.relative-to"></a><a class="indexterm" name="idp638042512"></a><code class="computeroutput"><span class="keyword">rule</span> relative-to <span class="special">(</span> path1 path2 <span class="special">)</span></code><p>Returns the minimal path to path2 that is relative path1.</p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.path.programs-path"></a><a class="indexterm" name="idp619194192"></a><code class="computeroutput"><span class="keyword">rule</span> programs-path <span class="special">(</span> <span class="special">)</span></code><p> +<a name="bbv2.reference.modules.path.programs-path"></a><a class="indexterm" name="idp638048000"></a><code class="computeroutput"><span class="keyword">rule</span> programs-path <span class="special">(</span> <span class="special">)</span></code><p> Returns the list of paths which are used by the operating system for looking up programs. </p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.path.mkdirs"></a><a class="indexterm" name="idp619199600"></a><code class="computeroutput"><span class="keyword">rule</span> makedirs <span class="special">(</span> path <span class="special">)</span></code><p> +<a name="bbv2.reference.modules.path.mkdirs"></a><a class="indexterm" name="idp638053408"></a><code class="computeroutput"><span class="keyword">rule</span> makedirs <span class="special">(</span> path <span class="special">)</span></code><p> Creates a directory and all parent directories that do not already exist. </p> @@ -1951,7 +1951,7 @@ import path <span class="special">:</span> native make <span class="special">:</ <div class="section"> <div class="titlepage"><div><div><h4 class="title"> <a name="bbv2.reference.modules.regex"></a>regex</h4></div></div></div> -<a class="indexterm" name="idp619205616"></a><p> +<a class="indexterm" name="idp638059552"></a><p> Contains rules for string processing using regular expressions. </p> <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "> @@ -2000,7 +2000,7 @@ import path <span class="special">:</span> native make <span class="special">:</ </ul></div> <div class="orderedlist"><ol class="orderedlist" type="1"> <li class="listitem"> -<a name="bbv2.reference.modules.regex.split"></a><a class="indexterm" name="idp619232608"></a><code class="computeroutput"><span class="keyword">rule</span> split <span class="special">(</span> string separator <span class="special">)</span></code><p>Returns a list of the following substrings: +<a name="bbv2.reference.modules.regex.split"></a><a class="indexterm" name="idp638086544"></a><code class="computeroutput"><span class="keyword">rule</span> split <span class="special">(</span> string separator <span class="special">)</span></code><p>Returns a list of the following substrings: </p> <div class="orderedlist"><ol class="orderedlist" type="a"> <li class="listitem"><p>from beginning till the first occurrence of @@ -2018,34 +2018,34 @@ import path <span class="special">:</span> native make <span class="special">:</ </p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.regex.split-list"></a><a class="indexterm" name="idp619243360"></a><code class="computeroutput"><span class="keyword">rule</span> split-list <span class="special">(</span> list * <span class="special">:</span> separator <span class="special">)</span></code><p>Returns the concatenated results of applying +<a name="bbv2.reference.modules.regex.split-list"></a><a class="indexterm" name="idp638097232"></a><code class="computeroutput"><span class="keyword">rule</span> split-list <span class="special">(</span> list * <span class="special">:</span> separator <span class="special">)</span></code><p>Returns the concatenated results of applying <a class="link" href="reference.html#bbv2.reference.modules.regex.split">regex.split</a> to every element of the list using the separator pattern.</p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.regex.match"></a><a class="indexterm" name="idp619250736"></a><code class="computeroutput"><span class="keyword">rule</span> match <span class="special">(</span> pattern <span class="special">:</span> string <span class="special">:</span> indices * <span class="special">)</span></code><p>Match <code class="computeroutput">string</code> against +<a name="bbv2.reference.modules.regex.match"></a><a class="indexterm" name="idp638104608"></a><code class="computeroutput"><span class="keyword">rule</span> match <span class="special">(</span> pattern <span class="special">:</span> string <span class="special">:</span> indices * <span class="special">)</span></code><p>Match <code class="computeroutput">string</code> against <code class="computeroutput">pattern</code>, and return the elements indicated by <code class="computeroutput">indices</code>. </p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.regex.transform"></a><a class="indexterm" name="idp619260048"></a><code class="computeroutput"><span class="keyword">rule</span> transform <span class="special">(</span> list * <span class="special">:</span> pattern <span class="special">:</span> indices * <span class="special">)</span></code><p>Matches all elements of <code class="computeroutput">list</code> against +<a name="bbv2.reference.modules.regex.transform"></a><a class="indexterm" name="idp638113984"></a><code class="computeroutput"><span class="keyword">rule</span> transform <span class="special">(</span> list * <span class="special">:</span> pattern <span class="special">:</span> indices * <span class="special">)</span></code><p>Matches all elements of <code class="computeroutput">list</code> against the <code class="computeroutput">pattern</code> and returns a list of elements indicated by <code class="computeroutput">indices</code> of all successful matches. If <code class="computeroutput">indices</code> is omitted returns a list of first parenthesized groups of all successful matches.</p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.regex.escape"></a><a class="indexterm" name="idp619270208"></a><code class="computeroutput"><span class="keyword">rule</span> escape <span class="special">(</span> string <span class="special">:</span> symbols <span class="special">:</span> escape-symbol <span class="special">)</span></code><p>Escapes all of the characters in <code class="computeroutput">symbols</code> +<a name="bbv2.reference.modules.regex.escape"></a><a class="indexterm" name="idp638124192"></a><code class="computeroutput"><span class="keyword">rule</span> escape <span class="special">(</span> string <span class="special">:</span> symbols <span class="special">:</span> escape-symbol <span class="special">)</span></code><p>Escapes all of the characters in <code class="computeroutput">symbols</code> using the escape symbol <code class="computeroutput">escape-symbol</code> for the given string, and returns the escaped string.</p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.regex.replace"></a><a class="indexterm" name="idp619278848"></a><code class="computeroutput"><span class="keyword">rule</span> replace <span class="special">(</span> string match replacement <span class="special">)</span></code><p>Replaces occurrences of a match string in a given string and +<a name="bbv2.reference.modules.regex.replace"></a><a class="indexterm" name="idp638132896"></a><code class="computeroutput"><span class="keyword">rule</span> replace <span class="special">(</span> string match replacement <span class="special">)</span></code><p>Replaces occurrences of a match string in a given string and returns the new string. The match string can be a regex expression.</p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.regex.replace-list"></a><a class="indexterm" name="idp619284832"></a><code class="computeroutput"><span class="keyword">rule</span> replace-list <span class="special">(</span> list * <span class="special">:</span> match <span class="special">:</span> replacement <span class="special">)</span></code><p>Replaces occurrences of a match string in a given list of strings +<a name="bbv2.reference.modules.regex.replace-list"></a><a class="indexterm" name="idp638138880"></a><code class="computeroutput"><span class="keyword">rule</span> replace-list <span class="special">(</span> list * <span class="special">:</span> match <span class="special">:</span> replacement <span class="special">)</span></code><p>Replaces occurrences of a match string in a given list of strings and returns a list of new strings. The match string can be a regex expression. </p> @@ -2056,7 +2056,7 @@ import path <span class="special">:</span> native make <span class="special">:</ <div class="section"> <div class="titlepage"><div><div><h4 class="title"> <a name="bbv2.reference.modules.sequence"></a>sequence</h4></div></div></div> -<a class="indexterm" name="idp619294048"></a><p> +<a class="indexterm" name="idp638148224"></a><p> Various useful list functions. Note that algorithms in this module execute largely in the caller's module namespace, so that local rules can be used as function objects. Also note that most predicates @@ -2066,50 +2066,50 @@ import path <span class="special">:</span> native make <span class="special">:</ </p> <div class="orderedlist"><ol class="orderedlist" type="1"> <li class="listitem"> -<a name="bbv2.reference.modules.sequence.filter"></a><a class="indexterm" name="idp619297888"></a><code class="computeroutput"><span class="keyword">rule</span> filter <span class="special">(</span> predicate + <span class="special">:</span> sequence * <span class="special">)</span></code><p>Return the elements <code class="computeroutput">e</code> of +<a name="bbv2.reference.modules.sequence.filter"></a><a class="indexterm" name="idp638152064"></a><code class="computeroutput"><span class="keyword">rule</span> filter <span class="special">(</span> predicate + <span class="special">:</span> sequence * <span class="special">)</span></code><p>Return the elements <code class="computeroutput">e</code> of <code class="computeroutput">$(sequence)</code> for which <code class="computeroutput"><span class="special">[</span> $(predicate) e <span class="special">]</span></code> has a non-null value. </p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.sequence.transform"></a><a class="indexterm" name="idp619307568"></a><code class="computeroutput"><span class="keyword">rule</span> transform <span class="special">(</span> function + <span class="special">:</span> sequence * <span class="special">)</span></code><p>Return a new sequence consisting of +<a name="bbv2.reference.modules.sequence.transform"></a><a class="indexterm" name="idp638161744"></a><code class="computeroutput"><span class="keyword">rule</span> transform <span class="special">(</span> function + <span class="special">:</span> sequence * <span class="special">)</span></code><p>Return a new sequence consisting of <code class="computeroutput"><span class="special">[</span> $(function) $(e) <span class="special">]</span></code> for each element <code class="computeroutput">e</code> of <code class="computeroutput">$(sequence)</code>. </p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.sequence.reverse"></a><a class="indexterm" name="idp619317248"></a><code class="computeroutput"><span class="keyword">rule</span> reverse <span class="special">(</span> s * <span class="special">)</span></code><p>Returns the elements of <code class="computeroutput">s</code> in +<a name="bbv2.reference.modules.sequence.reverse"></a><a class="indexterm" name="idp638171424"></a><code class="computeroutput"><span class="keyword">rule</span> reverse <span class="special">(</span> s * <span class="special">)</span></code><p>Returns the elements of <code class="computeroutput">s</code> in reverse order.</p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.sequence.insertion-sort"></a><a class="indexterm" name="idp619323824"></a><code class="computeroutput"><span class="keyword">rule</span> insertion-sort <span class="special">(</span> s * <span class="special">:</span> ordered * <span class="special">)</span></code><p>Insertion-sort <code class="computeroutput">s</code> using the +<a name="bbv2.reference.modules.sequence.insertion-sort"></a><a class="indexterm" name="idp638177936"></a><code class="computeroutput"><span class="keyword">rule</span> insertion-sort <span class="special">(</span> s * <span class="special">:</span> ordered * <span class="special">)</span></code><p>Insertion-sort <code class="computeroutput">s</code> using the BinaryPredicate <code class="computeroutput">ordered</code>.</p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.sequence.merge"></a><a class="indexterm" name="idp619331728"></a><code class="computeroutput"><span class="keyword">rule</span> merge <span class="special">(</span> s1 * <span class="special">:</span> s2 * <span class="special">:</span> ordered * <span class="special">)</span></code><p>Merge two ordered sequences using the BinaryPredicate +<a name="bbv2.reference.modules.sequence.merge"></a><a class="indexterm" name="idp638185776"></a><code class="computeroutput"><span class="keyword">rule</span> merge <span class="special">(</span> s1 * <span class="special">:</span> s2 * <span class="special">:</span> ordered * <span class="special">)</span></code><p>Merge two ordered sequences using the BinaryPredicate <code class="computeroutput">ordered</code>.</p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.sequence.join"></a><a class="indexterm" name="idp619339648"></a><code class="computeroutput"><span class="keyword">rule</span> join <span class="special">(</span> s * <span class="special">:</span> joint ? <span class="special">)</span></code><p>Join the elements of <code class="computeroutput">s</code> into one +<a name="bbv2.reference.modules.sequence.join"></a><a class="indexterm" name="idp638193632"></a><code class="computeroutput"><span class="keyword">rule</span> join <span class="special">(</span> s * <span class="special">:</span> joint ? <span class="special">)</span></code><p>Join the elements of <code class="computeroutput">s</code> into one long string. If <code class="computeroutput">joint</code> is supplied, it is used as a separator.</p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.sequence.length"></a><a class="indexterm" name="idp619347472"></a><code class="computeroutput"><span class="keyword">rule</span> length <span class="special">(</span> s * <span class="special">)</span></code><p>Find the length of any sequence.</p> +<a name="bbv2.reference.modules.sequence.length"></a><a class="indexterm" name="idp638201584"></a><code class="computeroutput"><span class="keyword">rule</span> length <span class="special">(</span> s * <span class="special">)</span></code><p>Find the length of any sequence.</p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.sequence.unique"></a><a class="indexterm" name="idp619353232"></a><code class="computeroutput"><span class="keyword">rule</span> unique <span class="special">(</span> list * <span class="special">:</span> stable ? <span class="special">)</span></code><p>Removes duplicates from <code class="computeroutput">list</code>. +<a name="bbv2.reference.modules.sequence.unique"></a><a class="indexterm" name="idp638207408"></a><code class="computeroutput"><span class="keyword">rule</span> unique <span class="special">(</span> list * <span class="special">:</span> stable ? <span class="special">)</span></code><p>Removes duplicates from <code class="computeroutput">list</code>. If <code class="computeroutput">stable</code> is passed, then the order of the elements will be unchanged.</p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.sequence.max-element"></a><a class="indexterm" name="idp619361216"></a><code class="computeroutput"><span class="keyword">rule</span> max-element <span class="special">(</span> elements + <span class="special">:</span> ordered ? <span class="special">)</span></code><p>Returns the maximum number in <code class="computeroutput">elements</code>. +<a name="bbv2.reference.modules.sequence.max-element"></a><a class="indexterm" name="idp638215392"></a><code class="computeroutput"><span class="keyword">rule</span> max-element <span class="special">(</span> elements + <span class="special">:</span> ordered ? <span class="special">)</span></code><p>Returns the maximum number in <code class="computeroutput">elements</code>. Uses <code class="computeroutput">ordered</code> for comparisons or <a class="link" href="../">numbers.less</a> if none is provided.</p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.sequence.select-highest-ranked"></a><a class="indexterm" name="idp619370240"></a><code class="computeroutput"><span class="keyword">rule</span> select-highest-ranked <span class="special">(</span> elements * <span class="special">:</span> ranks * <span class="special">)</span></code><p>Returns all of <code class="computeroutput">elements</code> for which +<a name="bbv2.reference.modules.sequence.select-highest-ranked"></a><a class="indexterm" name="idp638224480"></a><code class="computeroutput"><span class="keyword">rule</span> select-highest-ranked <span class="special">(</span> elements * <span class="special">:</span> ranks * <span class="special">)</span></code><p>Returns all of <code class="computeroutput">elements</code> for which the corresponding element in the parallel list <code class="computeroutput">rank</code> is equal to the maximum value in <code class="computeroutput">rank</code>.</p> @@ -2119,13 +2119,13 @@ import path <span class="special">:</span> native make <span class="special">:</ <div class="section"> <div class="titlepage"><div><div><h4 class="title"> <a name="bbv2.reference.modules.type"></a>type</h4></div></div></div> -<a class="indexterm" name="idp619379632"></a><p> +<a class="indexterm" name="idp638233872"></a><p> Deals with target type declaration and defines target class which supports typed targets. </p> <div class="orderedlist"><ol class="orderedlist" type="1"> <li class="listitem"> -<a name="bbv2.reference.modules.type.register"></a><a class="indexterm" name="idp619383184"></a><code class="computeroutput"><span class="keyword">rule</span> register <span class="special">(</span> type <span class="special">:</span> suffixes * <span class="special">:</span> base-type ? <span class="special">)</span></code><p> +<a name="bbv2.reference.modules.type.register"></a><a class="indexterm" name="idp638237424"></a><code class="computeroutput"><span class="keyword">rule</span> register <span class="special">(</span> type <span class="special">:</span> suffixes * <span class="special">:</span> base-type ? <span class="special">)</span></code><p> Registers a target type, possible derived from a <code class="computeroutput">base-type</code>. Providing a list of suffixes here is a shortcut for separately calling the @@ -2136,7 +2136,7 @@ import path <span class="special">:</span> native make <span class="special">:</ </p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.type.register-suffixes"></a><a class="indexterm" name="idp619393376"></a><code class="computeroutput"><span class="keyword">rule</span> register-suffixes <span class="special">(</span> suffixes + <span class="special">:</span> type <span class="special">)</span></code><p> +<a name="bbv2.reference.modules.type.register-suffixes"></a><a class="indexterm" name="idp638247616"></a><code class="computeroutput"><span class="keyword">rule</span> register-suffixes <span class="special">(</span> suffixes + <span class="special">:</span> type <span class="special">)</span></code><p> Specifies that files with suffix from <code class="computeroutput">suffixes</code> be recognized as targets of type <code class="computeroutput">type</code>. Issues an error if a different type is already specified for any @@ -2144,47 +2144,47 @@ import path <span class="special">:</span> native make <span class="special">:</ </p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.type.registered"></a><a class="indexterm" name="idp619400880"></a><code class="computeroutput"><span class="keyword">rule</span> registered <span class="special">(</span> type <span class="special">)</span></code><p>Returns true iff type has been registered.</p> +<a name="bbv2.reference.modules.type.registered"></a><a class="indexterm" name="idp638255184"></a><code class="computeroutput"><span class="keyword">rule</span> registered <span class="special">(</span> type <span class="special">)</span></code><p>Returns true iff type has been registered.</p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.type.validate"></a><a class="indexterm" name="idp619406304"></a><code class="computeroutput"><span class="keyword">rule</span> validate <span class="special">(</span> type <span class="special">)</span></code><p>Issues an error if <code class="computeroutput">type</code> is unknown.</p> +<a name="bbv2.reference.modules.type.validate"></a><a class="indexterm" name="idp638260608"></a><code class="computeroutput"><span class="keyword">rule</span> validate <span class="special">(</span> type <span class="special">)</span></code><p>Issues an error if <code class="computeroutput">type</code> is unknown.</p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.type.set-scanner"></a><a class="indexterm" name="idp619412288"></a><code class="computeroutput"><span class="keyword">rule</span> set-scanner <span class="special">(</span> type <span class="special">:</span> scanner <span class="special">)</span></code><p>Sets a scanner class that will be used for this type.</p> +<a name="bbv2.reference.modules.type.set-scanner"></a><a class="indexterm" name="idp638266720"></a><code class="computeroutput"><span class="keyword">rule</span> set-scanner <span class="special">(</span> type <span class="special">:</span> scanner <span class="special">)</span></code><p>Sets a scanner class that will be used for this type.</p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.type.get-scanner"></a><a class="indexterm" name="idp619418336"></a><code class="computeroutput"><span class="keyword">rule</span> get-scanner <span class="special">(</span> type <span class="special">:</span> property-set <span class="special">)</span></code><p> +<a name="bbv2.reference.modules.type.get-scanner"></a><a class="indexterm" name="idp638272768"></a><code class="computeroutput"><span class="keyword">rule</span> get-scanner <span class="special">(</span> type <span class="special">:</span> property-set <span class="special">)</span></code><p> Returns a scanner instance appropriate to <code class="computeroutput">type</code> and <code class="computeroutput">property-set</code>. </p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.type.base"></a><a class="indexterm" name="idp619425824"></a><code class="computeroutput"><span class="keyword">rule</span> base <span class="special">(</span> type <span class="special">)</span></code><p> +<a name="bbv2.reference.modules.type.base"></a><a class="indexterm" name="idp638280320"></a><code class="computeroutput"><span class="keyword">rule</span> base <span class="special">(</span> type <span class="special">)</span></code><p> Returns a base type for the given type or nothing in case the given type is not derived. </p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.type.all-bases"></a><a class="indexterm" name="idp619431312"></a><code class="computeroutput"><span class="keyword">rule</span> all-bases <span class="special">(</span> type <span class="special">)</span></code><p> +<a name="bbv2.reference.modules.type.all-bases"></a><a class="indexterm" name="idp638285808"></a><code class="computeroutput"><span class="keyword">rule</span> all-bases <span class="special">(</span> type <span class="special">)</span></code><p> Returns the given type and all of its base types in order of their distance from type. </p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.type.all-derived"></a><a class="indexterm" name="idp619436800"></a><code class="computeroutput"><span class="keyword">rule</span> all-derived <span class="special">(</span> type <span class="special">)</span></code><p> +<a name="bbv2.reference.modules.type.all-derived"></a><a class="indexterm" name="idp638291296"></a><code class="computeroutput"><span class="keyword">rule</span> all-derived <span class="special">(</span> type <span class="special">)</span></code><p> Returns the given type and all of its derived types in order of their distance from type. </p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.type.is-derived"></a><a class="indexterm" name="idp619442288"></a><code class="computeroutput"><span class="keyword">rule</span> is-derived <span class="special">(</span> type base <span class="special">)</span></code><p> +<a name="bbv2.reference.modules.type.is-derived"></a><a class="indexterm" name="idp638296784"></a><code class="computeroutput"><span class="keyword">rule</span> is-derived <span class="special">(</span> type base <span class="special">)</span></code><p> Returns true if <code class="computeroutput">type</code> is equal to <code class="computeroutput">base</code> or has <code class="computeroutput">base</code> as its direct or indirect base. </p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.type.set-generated-target-suffix"></a><a class="indexterm" name="idp619449888"></a><code class="computeroutput"><span class="keyword">rule</span> set-generated-target-suffix <span class="special">(</span> type <span class="special">:</span> properties * <span class="special">:</span> suffix <span class="special">)</span></code><p> +<a name="bbv2.reference.modules.type.set-generated-target-suffix"></a><a class="indexterm" name="idp638304384"></a><code class="computeroutput"><span class="keyword">rule</span> set-generated-target-suffix <span class="special">(</span> type <span class="special">:</span> properties * <span class="special">:</span> suffix <span class="special">)</span></code><p> Sets a file suffix to be used when generating a target of <code class="computeroutput">type</code> with the specified properties. Can be called with no properties if no suffix has already been specified for the <code class="computeroutput">type</code>. The <code class="computeroutput">suffix</code> parameter can be an empty @@ -2201,19 +2201,19 @@ import path <span class="special">:</span> native make <span class="special">:</ </p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.type.change-generated-target-suffix"></a><a class="indexterm" name="idp619462768"></a><code class="computeroutput"><span class="keyword">rule</span> change-generated-target-suffix <span class="special">(</span> type <span class="special">:</span> properties * <span class="special">:</span> suffix <span class="special">)</span></code><p> +<a name="bbv2.reference.modules.type.change-generated-target-suffix"></a><a class="indexterm" name="idp638317264"></a><code class="computeroutput"><span class="keyword">rule</span> change-generated-target-suffix <span class="special">(</span> type <span class="special">:</span> properties * <span class="special">:</span> suffix <span class="special">)</span></code><p> Change the suffix previously registered for this type/properties combination. If suffix is not yet specified, sets it. </p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.type.generated-target-suffix"></a><a class="indexterm" name="idp619469792"></a><code class="computeroutput"><span class="keyword">rule</span> generated-target-suffix <span class="special">(</span> type <span class="special">:</span> property-set <span class="special">)</span></code><p> +<a name="bbv2.reference.modules.type.generated-target-suffix"></a><a class="indexterm" name="idp638324352"></a><code class="computeroutput"><span class="keyword">rule</span> generated-target-suffix <span class="special">(</span> type <span class="special">:</span> property-set <span class="special">)</span></code><p> Returns the suffix used when generating a file of <code class="computeroutput">type</code> with the given properties. </p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.type.set-generated-target-prefix"></a><a class="indexterm" name="idp619476656"></a><code class="computeroutput"><span class="keyword">rule</span> set-generated-target-prefix <span class="special">(</span> type <span class="special">:</span> properties * <span class="special">:</span> prefix <span class="special">)</span></code><p> +<a name="bbv2.reference.modules.type.set-generated-target-prefix"></a><a class="indexterm" name="idp638331216"></a><code class="computeroutput"><span class="keyword">rule</span> set-generated-target-prefix <span class="special">(</span> type <span class="special">:</span> properties * <span class="special">:</span> prefix <span class="special">)</span></code><p> Sets a target prefix that should be used when generating targets of <code class="computeroutput">type</code> with the specified properties. Can be called with empty properties if no prefix for @@ -2230,19 +2230,19 @@ import path <span class="special">:</span> native make <span class="special">:</ </p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.type.change-generated-target-prefix"></a><a class="indexterm" name="idp619488256"></a><code class="computeroutput"><span class="keyword">rule</span> change-generated-target-prefix <span class="special">(</span> type <span class="special">:</span> properties * <span class="special">:</span> prefix <span class="special">)</span></code><p> +<a name="bbv2.reference.modules.type.change-generated-target-prefix"></a><a class="indexterm" name="idp638342752"></a><code class="computeroutput"><span class="keyword">rule</span> change-generated-target-prefix <span class="special">(</span> type <span class="special">:</span> properties * <span class="special">:</span> prefix <span class="special">)</span></code><p> Change the prefix previously registered for this type/properties combination. If prefix is not yet specified, sets it. </p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.type.generated-target-prefix"></a><a class="indexterm" name="idp619495344"></a><code class="computeroutput"><span class="keyword">rule</span> generated-target-prefix <span class="special">(</span> type <span class="special">:</span> property-set <span class="special">)</span></code><p> +<a name="bbv2.reference.modules.type.generated-target-prefix"></a><a class="indexterm" name="idp638349840"></a><code class="computeroutput"><span class="keyword">rule</span> generated-target-prefix <span class="special">(</span> type <span class="special">:</span> property-set <span class="special">)</span></code><p> Returns the prefix used when generating a file of <code class="computeroutput">type</code> with the given properties. </p> </li> <li class="listitem"> -<a name="bbv2.reference.modules.type.type"></a><a class="indexterm" name="idp619502096"></a><code class="computeroutput"><span class="keyword">rule</span> type <span class="special">(</span> filename <span class="special">)</span></code><p> +<a name="bbv2.reference.modules.type.type"></a><a class="indexterm" name="idp638356608"></a><code class="computeroutput"><span class="keyword">rule</span> type <span class="special">(</span> filename <span class="special">)</span></code><p> Returns file type given its name. If there are several dots in filename, tries each suffix. E.g. for name of "file.so.1.2" suffixes "2", "1", and "so" will be tried. @@ -2265,7 +2265,7 @@ import path <span class="special">:</span> native make <span class="special">:</ <div class="section"> <div class="titlepage"><div><div><h4 class="title"> <a name="bbv2.reference.class.abstract-target"></a>Class abstract-target</h4></div></div></div> -<a class="indexterm" name="idp619509968"></a><p> +<a class="indexterm" name="idp638364416"></a><p> Base class for all abstract targets. </p> <pre class="programlisting"> @@ -2302,19 +2302,19 @@ import path <span class="special">:</span> native make <span class="special">:</ </p> </li> <li class="listitem"> -<a name="bbv2.reference.class.abstract-target.name"></a><a class="indexterm" name="idp619549936"></a><code class="computeroutput"><span class="keyword">rule</span> name <span class="special">(</span> <span class="special">)</span></code><p>Returns the name of this target.</p> +<a name="bbv2.reference.class.abstract-target.name"></a><a class="indexterm" name="idp638404448"></a><code class="computeroutput"><span class="keyword">rule</span> name <span class="special">(</span> <span class="special">)</span></code><p>Returns the name of this target.</p> </li> <li class="listitem"> -<a name="bbv2.reference.class.abstract-target.project"></a><a class="indexterm" name="idp619555616"></a><code class="computeroutput"><span class="keyword">rule</span> project <span class="special">(</span> <span class="special">)</span></code><p>Returns the <a class="link" href="reference.html#bbv2.reference.class.project-target" title="Class project-target">project</a> for this target.</p> +<a name="bbv2.reference.class.abstract-target.project"></a><a class="indexterm" name="idp638410128"></a><code class="computeroutput"><span class="keyword">rule</span> project <span class="special">(</span> <span class="special">)</span></code><p>Returns the <a class="link" href="reference.html#bbv2.reference.class.project-target" title="Class project-target">project</a> for this target.</p> </li> <li class="listitem"> -<a name="bbv2.reference.class.abstract-target.location"></a><a class="indexterm" name="idp619562192"></a><code class="computeroutput"><span class="keyword">rule</span> location <span class="special">(</span> <span class="special">)</span></code><p>Returns the location where the target was declared.</p> +<a name="bbv2.reference.class.abstract-target.location"></a><a class="indexterm" name="idp638416704"></a><code class="computeroutput"><span class="keyword">rule</span> location <span class="special">(</span> <span class="special">)</span></code><p>Returns the location where the target was declared.</p> </li> <li class="listitem"> -<a name="bbv2.reference.class.abstract-target.full-name"></a><a class="indexterm" name="idp619567840"></a><code class="computeroutput"><span class="keyword">rule</span> full-name <span class="special">(</span> <span class="special">)</span></code><p>Returns a user-readable name for this target.</p> +<a name="bbv2.reference.class.abstract-target.full-name"></a><a class="indexterm" name="idp638422352"></a><code class="computeroutput"><span class="keyword">rule</span> full-name <span class="special">(</span> <span class="special">)</span></code><p>Returns a user-readable name for this target.</p> </li> <li class="listitem"> -<a name="bbv2.reference.class.abstract-target.generate"></a><a class="indexterm" name="idp619573584"></a><code class="computeroutput"><span class="keyword">rule</span> generate <span class="special">(</span> property-set <span class="special">)</span></code><p> +<a name="bbv2.reference.class.abstract-target.generate"></a><a class="indexterm" name="idp638428096"></a><code class="computeroutput"><span class="keyword">rule</span> generate <span class="special">(</span> property-set <span class="special">)</span></code><p> Generates virtual targets for this abstract target using the specified properties, unless a different value of some feature is required by the target. This is an abstract method which must be overriden by derived @@ -2337,7 +2337,7 @@ import path <span class="special">:</span> native make <span class="special">:</ <div class="section"> <div class="titlepage"><div><div><h4 class="title"> <a name="bbv2.reference.class.project-target"></a>Class project-target</h4></div></div></div> -<a class="indexterm" name="idp619582720"></a><pre class="programlisting"> +<a class="indexterm" name="idp638437296"></a><pre class="programlisting"> <span class="keyword">class</span> project-target <span class="special">:</span> <a class="link" href="reference.html#bbv2.reference.class.abstract-target" title="Class abstract-target">abstract-target</a> <span class="special">{</span> <span class="keyword">rule</span> <a class="link" href="reference.html#bbv2.reference.class.project-target.generate">generate</a> <span class="special">(</span> property-set <span class="special">)</span> <span class="keyword">rule</span> <a class="link" href="reference.html#bbv2.reference.class.project-target.build-dir">build-dir</a> <span class="special">(</span> <span class="special">)</span> @@ -2362,7 +2362,7 @@ import path <span class="special">:</span> native make <span class="special">:</ </p> <div class="orderedlist"><ol class="orderedlist" type="1"> <li class="listitem"> -<a name="bbv2.reference.class.project-target.generate"></a><a class="indexterm" name="idp619620016"></a><code class="computeroutput"><span class="keyword">rule</span> generate <span class="special">(</span> property-set <span class="special">)</span></code><p> +<a name="bbv2.reference.class.project-target.generate"></a><a class="indexterm" name="idp638474592"></a><code class="computeroutput"><span class="keyword">rule</span> generate <span class="special">(</span> property-set <span class="special">)</span></code><p> Overrides <a class="link" href="reference.html#bbv2.reference.class.abstract-target.generate">abstract-target.generate</a>. @@ -2379,26 +2379,26 @@ import path <span class="special">:</span> native make <span class="special">:</ </p> </li> <li class="listitem"> -<a name="bbv2.reference.class.project-target.build-dir"></a><a class="indexterm" name="idp619628448"></a><code class="computeroutput"><span class="keyword">rule</span> build-dir <span class="special">(</span> <span class="special">)</span></code><p> +<a name="bbv2.reference.class.project-target.build-dir"></a><a class="indexterm" name="idp638482960"></a><code class="computeroutput"><span class="keyword">rule</span> build-dir <span class="special">(</span> <span class="special">)</span></code><p> Returns the root build directory of the project. </p> </li> <li class="listitem"> -<a name="bbv2.reference.class.project-target.main-target"></a><a class="indexterm" name="idp619634160"></a><code class="computeroutput"><span class="keyword">rule</span> main-target <span class="special">(</span> name <span class="special">)</span></code><p> +<a name="bbv2.reference.class.project-target.main-target"></a><a class="indexterm" name="idp638488672"></a><code class="computeroutput"><span class="keyword">rule</span> main-target <span class="special">(</span> name <span class="special">)</span></code><p> Returns a <a class="link" href="reference.html#bbv2.reference.class.main-target" title="Class main-target">main-target</a> class instance corresponding to <code class="literal">name</code>. Can only be called after the project has been fully loaded. </p> </li> <li class="listitem"> -<a name="bbv2.reference.class.project-target.has-main-target"></a><a class="indexterm" name="idp619641584"></a><code class="computeroutput"><span class="keyword">rule</span> has-main-target <span class="special">(</span> name <span class="special">)</span></code><p> +<a name="bbv2.reference.class.project-target.has-main-target"></a><a class="indexterm" name="idp638496096"></a><code class="computeroutput"><span class="keyword">rule</span> has-main-target <span class="special">(</span> name <span class="special">)</span></code><p> Returns whether a <a class="link" href="reference.html#bbv2.reference.class.main-target" title="Class main-target">main-target</a> with the specified name exists. Can only be called after the project has been fully loaded. </p> </li> <li class="listitem"> -<a name="bbv2.reference.class.project-target.find"></a><a class="indexterm" name="idp619648256"></a><code class="computeroutput"><span class="keyword">rule</span> find <span class="special">(</span> id <span class="special">:</span> no-error ? <span class="special">)</span></code><p> +<a name="bbv2.reference.class.project-target.find"></a><a class="indexterm" name="idp638502768"></a><code class="computeroutput"><span class="keyword">rule</span> find <span class="special">(</span> id <span class="special">:</span> no-error ? <span class="special">)</span></code><p> Find and return the target with the specified id, treated relative to self. Id may specify either a target or a file name with the target taking priority. May report an error or return nothing if the target is not found @@ -2410,7 +2410,7 @@ import path <span class="special">:</span> native make <span class="special">:</ <div class="section"> <div class="titlepage"><div><div><h4 class="title"> <a name="bbv2.reference.class.main-target"></a>Class main-target</h4></div></div></div> -<a class="indexterm" name="idp619656240"></a><pre class="programlisting"> +<a class="indexterm" name="idp638510752"></a><pre class="programlisting"> <span class="keyword">class</span> main-target <span class="special">:</span> <a class="link" href="reference.html#bbv2.reference.class.abstract-target" title="Class abstract-target">abstract-target</a> <span class="special">{</span> <span class="keyword">rule</span> <a class="link" href="reference.html#bbv2.reference.class.main-target.generate">generate</a> <span class="special">(</span> property-set <span class="special">)</span> @@ -2426,7 +2426,7 @@ import path <span class="special">:</span> native make <span class="special">:</ represents a named top-level target in a Jamfile. </p> <div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"> -<a name="bbv2.reference.class.main-target.generate"></a><a class="indexterm" name="idp619680368"></a><code class="computeroutput"><span class="keyword">rule</span> generate <span class="special">(</span> property-set <span class="special">)</span></code><p> +<a name="bbv2.reference.class.main-target.generate"></a><a class="indexterm" name="idp638534880"></a><code class="computeroutput"><span class="keyword">rule</span> generate <span class="special">(</span> property-set <span class="special">)</span></code><p> Overrides <a class="link" href="reference.html#bbv2.reference.class.abstract-target.generate">abstract-target.generate</a>. @@ -2450,7 +2450,7 @@ import path <span class="special">:</span> native make <span class="special">:</ <div class="section"> <div class="titlepage"><div><div><h4 class="title"> <a name="bbv2.reference.class.basic-target"></a>Class basic-target</h4></div></div></div> -<a class="indexterm" name="idp619691344"></a><pre class="programlisting"> +<a class="indexterm" name="idp638545856"></a><pre class="programlisting"> <span class="keyword">class</span> basic-target <span class="special">:</span> <a class="link" href="reference.html#bbv2.reference.class.abstract-target" title="Class abstract-target">abstract-target</a> <span class="special">{</span> <span class="keyword">rule</span> <a class="link" href="reference.html#bbv2.reference.class.basic-target.__init__">__init__</a> <span class="special">(</span> name <span class="special">:</span> project <span class="special">:</span> sources * <span class="special">:</span> requirements * <span class="special">:</span> default-build * <span class="special">:</span> usage-requirements * <span class="special">)</span> <span class="keyword">rule</span> <a class="link" href="reference.html#bbv2.reference.class.basic-target.generate">generate</a> <span class="special">(</span> property-set <span class="special">)</span> @@ -2486,7 +2486,7 @@ import path <span class="special">:</span> native make <span class="special">:</ </p> </li> <li class="listitem"> -<a name="bbv2.reference.class.basic-target.generate"></a><a class="indexterm" name="idp619737696"></a><code class="computeroutput"><span class="keyword">rule</span> generate <span class="special">(</span> property-set <span class="special">)</span></code><p> +<a name="bbv2.reference.class.basic-target.generate"></a><a class="indexterm" name="idp638592208"></a><code class="computeroutput"><span class="keyword">rule</span> generate <span class="special">(</span> property-set <span class="special">)</span></code><p> Overrides <a class="link" href="reference.html#bbv2.reference.class.abstract-target.generate">abstract-target.generate</a>. @@ -2505,7 +2505,7 @@ import path <span class="special">:</span> native make <span class="special">:</ </p> </li> <li class="listitem"> -<a name="bbv2.reference.class.basic-target.construct"></a><a class="indexterm" name="idp619746992"></a><code class="computeroutput"><span class="keyword">rule</span> construct <span class="special">(</span> name <span class="special">:</span> source-targets * <span class="special">:</span> property-set <span class="special">)</span></code><p> +<a name="bbv2.reference.class.basic-target.construct"></a><a class="indexterm" name="idp638601504"></a><code class="computeroutput"><span class="keyword">rule</span> construct <span class="special">(</span> name <span class="special">:</span> source-targets * <span class="special">:</span> property-set <span class="special">)</span></code><p> Constructs virtual targets for this abstract target. Returns a usage-requirements property-set and a list of virtual targets. Should be overriden in derived classes. @@ -2516,7 +2516,7 @@ import path <span class="special">:</span> native make <span class="special">:</ <div class="section"> <div class="titlepage"><div><div><h4 class="title"> <a name="bbv2.reference.class.typed-target"></a>Class typed-target</h4></div></div></div> -<a class="indexterm" name="idp619754912"></a><pre class="programlisting"> +<a class="indexterm" name="idp638609424"></a><pre class="programlisting"> <span class="keyword">class</span> typed-target <span class="special">:</span> <a class="link" href="reference.html#bbv2.reference.class.basic-target" title="Class basic-target">basic-target</a> <span class="special">{</span> <span class="keyword">rule</span> <a class="link" href="reference.html#bbv2.reference.class.typed-target.__init__">__init__</a> <span class="special">(</span> name <span class="special">:</span> project <span class="special">:</span> type <span class="special">:</span> sources * <span class="special">:</span> requirements * <span class="special">:</span> default-build * <span class="special">:</span> usage-requirements * <span class="special">)</span> <span class="keyword">rule</span> <a class="link" href="reference.html#bbv2.reference.class.typed-target.type">type</a> <span class="special">(</span> <span class="special">)</span> @@ -2559,13 +2559,13 @@ import path <span class="special">:</span> native make <span class="special">:</ </p> </li> <li class="listitem"> -<a name="bbv2.reference.class.typed-target.type"></a><a class="indexterm" name="idp619810944"></a><code class="computeroutput"><span class="keyword">rule</span> type <span class="special">(</span> <span class="special">)</span></code><p> +<a name="bbv2.reference.class.typed-target.type"></a><a class="indexterm" name="idp638665424"></a><code class="computeroutput"><span class="keyword">rule</span> type <span class="special">(</span> <span class="special">)</span></code><p> Returns the <a class="link" href="reference.html#bbv2.reference.modules.type" title="type">type</a> of the target. </p> </li> <li class="listitem"> -<a name="bbv2.reference.class.typed-target.construct"></a><a class="indexterm" name="idp619817472"></a><code class="computeroutput"><span class="keyword">rule</span> construct <span class="special">(</span> name <span class="special">:</span> source-targets * <span class="special">:</span> property-set <span class="special">)</span></code><p> +<a name="bbv2.reference.class.typed-target.construct"></a><a class="indexterm" name="idp638671888"></a><code class="computeroutput"><span class="keyword">rule</span> construct <span class="special">(</span> name <span class="special">:</span> source-targets * <span class="special">:</span> property-set <span class="special">)</span></code><p> Implements <a class="link" href="reference.html#bbv2.reference.class.basic-target.construct"> basic-target.construct</a>. Attempts to create a target of the correct type using generators appropriate for the given @@ -2594,7 +2594,7 @@ import path <span class="special">:</span> native make <span class="special">:</ <div class="section"> <div class="titlepage"><div><div><h4 class="title"> <a name="bbv2.reference.class.property-set"></a>Class property-set</h4></div></div></div> -<a class="indexterm" name="idp619829952"></a><p>Class for storing a set of properties.</p> +<a class="indexterm" name="idp638684304"></a><p>Class for storing a set of properties.</p> <pre class="programlisting"> <span class="keyword">class</span> property-set <span class="special">{</span> <span class="keyword">rule</span> <a class="link" href="reference.html#bbv2.reference.class.property-set.raw">raw</a> <span class="special">(</span> <span class="special">)</span> @@ -2613,20 +2613,20 @@ import path <span class="special">:</span> native make <span class="special">:</ </p> <div class="orderedlist"><ol class="orderedlist" type="1"> <li class="listitem"> -<a name="bbv2.reference.class.property-set.raw"></a><a class="indexterm" name="idp619857584"></a><code class="computeroutput"><span class="keyword">rule</span> raw <span class="special">(</span> <span class="special">)</span></code><p>Returns a Jam list of the stored properties.</p> +<a name="bbv2.reference.class.property-set.raw"></a><a class="indexterm" name="idp638712000"></a><code class="computeroutput"><span class="keyword">rule</span> raw <span class="special">(</span> <span class="special">)</span></code><p>Returns a Jam list of the stored properties.</p> </li> <li class="listitem"> -<a name="bbv2.reference.class.property-set.str"></a><a class="indexterm" name="idp619863184"></a><code class="computeroutput"><span class="keyword">rule</span> str <span class="special">(</span> <span class="special">)</span></code><p>Returns the string repesentation of the stored properties.</p> +<a name="bbv2.reference.class.property-set.str"></a><a class="indexterm" name="idp638717600"></a><code class="computeroutput"><span class="keyword">rule</span> str <span class="special">(</span> <span class="special">)</span></code><p>Returns the string repesentation of the stored properties.</p> </li> <li class="listitem"> -<a name="bbv2.reference.class.property-set.propagated"></a><a class="indexterm" name="idp619868896"></a><code class="computeroutput"><span class="keyword">rule</span> propagated <span class="special">(</span> <span class="special">)</span></code><p> +<a name="bbv2.reference.class.property-set.propagated"></a><a class="indexterm" name="idp638723248"></a><code class="computeroutput"><span class="keyword">rule</span> propagated <span class="special">(</span> <span class="special">)</span></code><p> Returns a <a class="link" href="reference.html#bbv2.reference.class.property-set" title="Class property-set">property-set</a> containing all the <a class="link" href="reference.html#bbv2.reference.features.attributes.propagated">propagated</a> properties in this <a class="link" href="reference.html#bbv2.reference.class.property-set" title="Class property-set">property-set</a>. </p> </li> <li class="listitem"> -<a name="bbv2.reference.class.property-set.add"></a><a class="indexterm" name="idp619877056"></a><code class="computeroutput"><span class="keyword">rule</span> add <span class="special">(</span> ps <span class="special">)</span></code><p> +<a name="bbv2.reference.class.property-set.add"></a><a class="indexterm" name="idp638731408"></a><code class="computeroutput"><span class="keyword">rule</span> add <span class="special">(</span> ps <span class="special">)</span></code><p> Returns a new <a class="link" href="reference.html#bbv2.reference.class.property-set" title="Class property-set"> property-set</a> containing the union of the properties in this <a class="link" href="reference.html#bbv2.reference.class.property-set" title="Class property-set"> @@ -2648,7 +2648,7 @@ import path <span class="special">:</span> native make <span class="special">:</ </p> </li> <li class="listitem"> -<a name="bbv2.reference.class.property-set.add-raw"></a><a class="indexterm" name="idp619887648"></a><code class="computeroutput"><span class="keyword">rule</span> add-raw <span class="special">(</span> properties * <span class="special">)</span></code><p> +<a name="bbv2.reference.class.property-set.add-raw"></a><a class="indexterm" name="idp638741936"></a><code class="computeroutput"><span class="keyword">rule</span> add-raw <span class="special">(</span> properties * <span class="special">)</span></code><p> Link <a class="link" href="reference.html#bbv2.reference.class.property-set.add"> add</a>, except that it takes a list of properties instead of a <a class="link" href="reference.html#bbv2.reference.class.property-set" title="Class property-set"> @@ -2656,7 +2656,7 @@ import path <span class="special">:</span> native make <span class="special">:</ </p> </li> <li class="listitem"> -<a name="bbv2.reference.class.property-set.refine"></a><a class="indexterm" name="idp619895168"></a><code class="computeroutput"><span class="keyword">rule</span> refine <span class="special">(</span> ps <span class="special">)</span></code><p> +<a name="bbv2.reference.class.property-set.refine"></a><a class="indexterm" name="idp638749456"></a><code class="computeroutput"><span class="keyword">rule</span> refine <span class="special">(</span> ps <span class="special">)</span></code><p> Refines properties by overriding any non-free and non-conditional properties for which a different value is specified in <code class="literal">ps</code>. Returns the resulting @@ -2664,7 +2664,7 @@ import path <span class="special">:</span> native make <span class="special">:</ </p> </li> <li class="listitem"> -<a name="bbv2.reference.class.property-set.get"></a><a class="indexterm" name="idp619902464"></a><code class="computeroutput"><span class="keyword">rule</span> get <span class="special">(</span> feature <span class="special">)</span></code><p> +<a name="bbv2.reference.class.property-set.get"></a><a class="indexterm" name="idp638756752"></a><code class="computeroutput"><span class="keyword">rule</span> get <span class="special">(</span> feature <span class="special">)</span></code><p> Returns all the values of <code class="literal">feature</code>. </p> </li> @@ -2776,7 +2776,7 @@ exe a : a.cpp <div class="section"> <div class="titlepage"><div><div><h4 class="title"> <a name="bbv2.reference.buildprocess.targetpath"></a>Target Paths</h4></div></div></div> -<a class="indexterm" name="idp619933072"></a><p>Several factors determine the location of a concrete +<a class="indexterm" name="idp638787360"></a><p>Several factors determine the location of a concrete file target. All files in a project are built under the directory bin unless this is overridden by the build-dir project attribute. Under bin is a path that depends on the properties |