Boost logo

Boost-Build :

Subject: [Boost-build] Bug in [check-target-builds] rule?
From: John Maddock (boost.regex_at_[hidden])
Date: 2010-08-17 12:07:04


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?

Thanks, John.


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