Boost logo

Boost-Build :

Subject: Re: [Boost-build] feature, properties, variants, and all the rest
From: Chambers, Matthew (matt.chambers42_at_[hidden])
Date: 2017-08-14 16:11:27


On 8/13/2017 11:51 PM, Steven Watanabe via Boost-build wrote:
> AMDG
>
> On 08/13/2017 03:14 PM, Stefan Seefeld via Boost-build wrote:
>> >From the above list, it looks like most of them could actually be global
>> settings (e.g., toolset, threading, rtti, exception-handling), while for
>> others I'd actually expect to have full control so I can apply them to
>> specific targets without propagation (profiling, inlining, optimization).
>>
> That's basically right. They aren't global because
> Boost.Build supports multiple build configurations
> in parallel.
I'm not sure about <inlining> and <profiling>, but <optimization> certainly is not safe to apply to some targets and not to others, if these
targets are interlinked. And if they're not interlinked, then propagated wouldn't have an effect.

lib z : z.cpp ;
lib a : a.cpp z ;

exe b : b.cpp : <library>a.cpp <optimization>speed ;
exe c : c.cpp : <library>a.cpp <optimization>off ;

This will cause libs a and z to be built with both <optimization>speed and off depending on which target they are linking with. This capability is absolutely essential for me; does Faber provide that (even if it doesn't call it propagated)?

-Matt


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