Subproperty valiidity

Edward Diener via Boost-build <[email protected]> Sat, 27 Jul 2019 09:18:00 -0400
Newsgroups gmane.comp.lib.boost.build
Message-ID <[email protected]>
In the Boost Build manual it states in section 5.8.2:

"Subproperty validity may be restricted so that certain values are valid 
only in the presence of certain other subproperties. For example, it is 
possible to specify that the <gcc-target>mingw property is only valid in 
the presence of <gcc-version>2.95.2."

However it does not explain how to specify, or enforce, such subproperty 
validity. How can this be done in Boost Build ?

As a practical example if I have:

feature.subfeature toolset gcc : std : c03 c11 c14 c17 : optional 
composite propagated ;

feature.compose <toolset-gcc:std>c03 : <cxxflags>-std=c++03 ;
feature.compose <toolset-gcc:std>c11 : <cxxflags>-std=c++11 ;
feature.compose <toolset-gcc:std>c14 : <cxxflags>-std=c++14 ;
feature.compose <toolset-gcc:std>c17 : <cxxflags>-std=c++1z ;

I might want to allow:

b2 toolset=gcc-8.3-c17

but I might not want to allow:

b2 toolset=gcc-4.8-c17

Is there a way of enforcing this by some jam code in my user-configf.jam 
file ?


_______________________________________________
Unsubscribe & other changes: https://lists.boost.org/mailman/listinfo.cgi/boost-build