diff --git a/boost_build_v2.html b/boost_build_v2.html index 5454b24fa..58152fd3b 100644 --- a/boost_build_v2.html +++ b/boost_build_v2.html @@ -4,13 +4,14 @@ + "HTML Tidy for Windows (vers 1st August 2002), see www.w3.org"> Boost.Build v2 user manual - + + - build request, build request expansion and directly requested targets + - conditional properties + -->

A subfeature is a feature which only exists in the presence of its parent feature, and whose identity can be derived (in the context - of its parent) from its value.

+ of its parent) from its value. A subfeature's parent can never be another + subfeature. Thus, features and their subfeatures form a two-level + hierarchy.

-

A value-string is a string of the form +

A value-string for a feature F is a string of the form value-subvalue1-subvalue2...-subvalueN, where - value is a feature value and - subvalue1...subvalueN are values of related - subfeatures. For example, the properties <toolset>gcc - <toolset-version>3.0.1 can be expressed more conscisely using - a value-string, as <toolset>gcc-3.0.1.

+ value is a legal value for F and + subvalue1...subvalueN are legal values of some of + F's subfeatures. For example, the properties + <toolset>gcc <toolset-version>3.0.1 can be expressed + more conscisely using a value-string, as + <toolset>gcc-3.0.1.

A property set is a set of properties (i.e. a collection without dublicates), for instance: <toolset>gcc @@ -614,7 +618,7 @@ boost-build /path/to/boost.build ;

TODO: document active features..

-

Feature Declaration

+

Feature Declaration

The low-level feature declaration interface is the feature rule from the feature module:
@@ -624,7 +628,7 @@ rule feature ( name : allowed-values * : attributes * )
     provide high-level rules which define features in terms of valid and
     useful combinations of attributes. 
 
-    

Build Variants

+

Build Variants

A build variant, or (simply variant) is a special kind of composite feature which automatically incorporates the default values of features that . Typically you'll want at least two separate variants: one for diff --git a/src/build/feature.jam b/src/build/feature.jam index f33c16dcf..239f00a9c 100644 --- a/src/build/feature.jam +++ b/src/build/feature.jam @@ -322,7 +322,9 @@ rule extend-subfeature ( feature # The feature whose subfeature is being extended value-string ? # If supplied, specifies a specific value of the - # main feature for which the subfeature values are valid + # main feature for which the new subfeature values + # are valid + : subfeature # The name of the subfeature : subvalues * # The additional values of the subfeature being defined. )