$include_dir="/home/hyper-archives/boost-build/include"; include("$include_dir/msg-header.inc") ?>
Subject: Re: [Boost-build] return of check-target-builds rule
From: Steven Watanabe (watanabesj_at_[hidden])
Date: 2016-05-27 20:31:44
AMDG
On 05/27/2016 06:02 PM, Edward Diener wrote:
> If the rule check-target-builds is called as:
>
> local ctbres = [ check-target-builds some_metatarget some_message :
> some_true_property : some_false_property ] ;
>
> and, let's say, 'some_metatarget' builds, the value of 'cbtres' is not
> 'some_true_property'. Instead the value of 'cbtres; is something like:
>
> <conditional>@object(check-target-builds-worker)@2270.check
>
> Therefore is there a way to subsequently test 'cbtres' to see which
> value was actually chosen, whether 'some_true_property' or
> 'some_false_property' in my example, from the return value of the rule ?
>
The check is only evaluated later as
it can depend on the properties that you
are using to build. There are a number
of ways that you can deal with this.
- You can add your own <conditional> that
does further processing based on the
results of check-target-builds. (I
doubt this gains you anything as a
conditional needs to return a list of
properties and you might as well just
list the properties that you want in
the call to check-target-builds.)
- Use the properties to select a target
alternative.
- Instead of using check-target-builds,
just run [ SHELL "some-program -arguments" ]
in the Jamfile and use the result to do
whatever you want.
Probably more, but it's hard to say without
knowing what you're trying to achieve here.
In Christ,
Steven Watanabe