Boost logo

Boost-Build :

Subject: Re: [Boost-build] feature, properties, variants, and all the rest
From: Steven Watanabe (watanabesj_at_[hidden])
Date: 2017-01-03 22:44:33


On 01/03/2017 08:31 PM, Stefan Seefeld wrote:
> I'm still trying to understand features and properties...
> On 23.12.2016 19:24, Steven Watanabe wrote:
>>>> In general, b2 --debug-build will explain in
>>>> detail which properties are used to build
>>>> each target.
>>> Thanks, I will try that.
> I have tried `--debug-build`, but not got any (additional) output

My mistake. It's --debug-building.

> <snip>
> What I'm in particular trying to understand is the merge process. As far
> as I understand, a typical target has two property-sets associated with
> it, called 'build-requirements' and 'usage-requirements'.
> 'Usage-requirements' of a prerequisite target are somehow merged into
> the 'build-requirements' of a dependent target, but exactly how isn't
> yet clear to me (d.h., what role the different feature attributes play
> is still a bit of a mystery).

Usage requirements are added very late,
and can only use free features.

> Is there any document that provides a
> listing of that, and is there some code that implements that merge
> process that I could look at (perhaps even run unit-tests against ?)

Property merging is implemented in property.refine.
There are some tests at the end of property.jam.

In Christ,
Steven Watanabe

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