Boost logo

Boost-Build :

Subject: Re: [Boost-build] Bug in [check-target-builds] rule?
From: Vladimir Prus (ghost_at_[hidden])
Date: 2010-08-19 03:47:52


On Tuesday 17 August 2010 20:07:04 John Maddock wrote:

> If I try and add a condition feature to the result of the
> check-target-builds rule I get errors from bjam as shown below, for example
> if I have:
>
> alias icu_options : : : : [ check-target-builds has_icu : $(ICU_OPTS)
> <toolset>msvc:<linkflags>/delayload:icuucd : ] ;
>
> Then I see:
>
> Performing configuration checks
>
> - has_icu builds : yes
> M:/data/boost/trunk/tools/build/v2/build\feature.jam:485: in
> validate-value-string from module feature
> error: "msvc:<linkflags>/delayload:icuucd" is not a known value of feature
> <toolset>
> error: legal values: "msvc" "intel" "gcc" "borland"
> M:/data/boost/trunk/tools/build/v2/build\feature.jam:358: in
> expand-subfeatures-aux from module feature
> M:/data/boost/trunk/tools/build/v2/build\feature.jam:419: in
> expand-subfeatures from module feature
> M:/data/boost/trunk/tools/build/v2/build\feature.jam:851: in feature.expand
> from module feature
> M:/data/boost/trunk/tools/build/v2/build\targets.jam:1027: in
> targets.evaluate-requirements from module targets
> M:/data/boost/trunk/tools/build/v2/build\targets.jam:1393: in
> basic-target.compute-usage-requirements from module
> object(alias-target-class)@473
> M:/data/boost/trunk/tools/build/v2/build\alias.jam:47: in
> compute-usage-requirements from module object(alias-target-class)@473
> M:/data/boost/trunk/tools/build/v2/build\targets.jam:1319: in
> object(alias-target-class)@473.generate from module
> object(alias-target-class)@473
> M:/data/boost/trunk/tools/build/v2/build\targets.jam:732: in generate-really
> from module object(main-target)@643
>
> Obviously, if I add <toolset>msvc:<linkflags>/delayload:icuucd directly to a
> target then everything works OK, it's just if it's inside the
> check-target-builds rule that it fails.
>
> Any ideas?

I've checked in a fix that works on my use case. Can you see if things
are better now?

Thanks,

--
Vladimir Prus
http://vladimir_prus.blogspot.com
Boost.Build: http://boost.org/boost-build2

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