Boost logo

Boost-Build :

From: Frank Birbacher (bloodymir.crap_at_[hidden])
Date: 2008-05-25 13:49:26


Hi!

I'm using Boost through the Jamfiles directly (that is "use-project
boost : [ os.environ BOOST_ROOT ] ;"). When creating some libraries I
introduce features for its build variants:

feature usewide : no yes : propagated ;
lib foo : foo.cpp
        : <usewide>yes:<define>FOO_USE_WIDE
        :
        : <include>.
        ;

Now users of this lib and boost, like:

exe bar : foo /boost//system ;

they will force the feature "usewide" on boost as well. Boost will have
"usewide-no" in its build path, but boost will not be affected by the
<define> anyhow. Is there a way not to propagate the feature to boost?
With several libraries the features will make the path be too long and
additionally boost will be recompiled for each feature, needlessly.

I could imagine some "realm" for features, marking all targets where the
feature must affect the build path. And a way to propagate only
"upwards", meaning from the lib up to the exe, but not from the exe down
to boost.

Could that be useful to others?

Frank


Boost-Build list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk