Subject: Re: [Boost-build] feature, properties, variants, and all the rest
From: Steven Watanabe (watanabesj_at_[hidden])
Date: 2017-07-29 00:39:48
On 07/28/2017 06:00 PM, Stefan Seefeld via Boost-build wrote:
> Indeed. I'm still not entirely sure the semantics are fully unambiguous.
> Consider this use-case:
> Target A is a config check, which (conditionally) defines property a.
> Target B, depending on A, defines property b. Target C depends on A and B...
> So, a is evaluated in the context of an empty property-set, while b is
> evaluated in the property-set consisting of a. The result is then passed
> on to C.
> What happens if B does not depend on A ? That would mean that that
> property b is evaluated in an empty property-set (just as a itself),
> rather than in the context of a, and thus might lead to a different
> property-set passed on to C.
> Correct ?
> This is just slightly surprising, as 'B depends on A' merely seems to
> imply an order of execution (A before B), while, if the above is
> correct, this actually influences the property-set seen by C.
I'm not sure that I follow. When you say
that target A defines property a, do you
mean that a is in the usage requirements of A?
Or do you mean that B uses A inside check-target-builds?
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