Boost logo

Boost-Build :

Subject: [Boost-build] Conditional Requirements for Library targets
From: Douglas Capeci (doug_capeci_at_[hidden])
Date: 2017-03-19 19:34:58


I have defined in my jamfile a library target that I want to include some extra source requirements when it is built as a shared library than when built as a static archive. To do this, I would like to utilize the conditional requirement capability of Boost build on the <link> feature as follows:

lib util : $(utils-source) : <link>shared : <source>$(shlib-source) <source>/external//libz ;

However, this does not work. The rule is not invoked for building a static version of the library. It is only invoked for building a shared library. Here are some questions:

How do I know what features can be utilized as conditional requirements?

Is it possible to have a single rule for a library target that is conditional based on feature <link>?

Note that the current Boost Build documentation provides an example of this in the section "Declaring Targets", but it does not seem to work for me.

I am currently utilizing Boost Jam version 2015.07. OS=linux.

Many thanks and with regards,


Boost-Build list run by bdawes at, david.abrahams at, gregod at, cpdaniel at, john at