Boost logo

Boost-Build :

Subject: Re: [Boost-build] feature, properties, variants, and all the rest
From: Stefan Seefeld (stefan_at_[hidden])
Date: 2017-01-13 12:39:58

On 03.01.2017 22:44, Steven Watanabe wrote:
> 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.

That works, thanks !
However, it looks a bit incomplete to me. Consider this:

  lib l : l.cpp : <link>shared ;
  exe hello : hello.cpp l ;

(I'd like to trace how the fact that 'l' is compiled as a shared lib
results in the 'l.cpp' source to be compiled with -fPIC.
While I can see the 'setup-fpic' rule in 'gcc.jam' taking care of this
in the code, I'd like to understand the flow of information in more
formal terms, i.e. the properties of 'l' affecting the properties of
'l.o'. But the --debug-building flag doesn't even report the 'l.o'
target at all. It looks like the 'l' target is considered a black box.

Is there a way to trace the generator logic, i.e. see how a toolset is
picked based on the property set, and how the 'inner' targets are
generated ?


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

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