Boost logo

Boost-Build :

Subject: Re: [Boost-build] feature, properties, variants, and all the rest
From: Stefan Seefeld (stefan_at_[hidden])
Date: 2017-01-03 22:31:07


Hi,

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
whatsoever. I have then used `-dN` with different values for N (much
larger than '2', which I use regularly), which produced so much output
that I could hardly get any information out of it. (I suppose that's
more a tool for developers that already understand the internals and
simply want to debug.)

So I'm asking again: what is the best way to trace properties as they
are defined, passed around, merged, and applied to build actions ?

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). 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 ?)

Thanks,
        Stefan

-- 
      ...ich hab' noch einen Koffer in Berlin...

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