Boost logo

Boost-Build :

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


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