From: David Abrahams (dave_at_[hidden])
Date: 2007-04-25 22:17:47
on Wed Apr 25 2007, Vladimir Prus <ghost-AT-cs.msu.su> wrote:
> On Wednesday 18 April 2007 10:13, David Abrahams wrote:
>> > 2. You claim that it's often desirable to express
>> > "select this alternative is either <feature1>value1 or ...
>> > ... or <featureN>valueN" is in properties.
>> Yes, especially in the presence of prebuilt libs.
> Okay, this claim is clear and indeed it's not possible to express
> "select this alternative is either <feature1>value1 OR .... OR
> <featureN>valueN is in requirements".
That's not all I want to express. I still want a best match
heuristic, so that the alternative with the most matching requirements
will be matched.
> However, I still at loss what real examples call for this behaviour. Would
> you mind providing some?
I already did; the python examples call for this behavior. To
abstract it a bit more:
lib a : : <name>a0 <threading>single <profiling>on ;
lib a : : <name>a1 <threading>single <liba-version>3.3 ;
lib a : : <name>a2 <threading>multi <liba-version>3.3 ;
bjam profiling=on # should select a0
bjam threading=multi # should select a2
bjam threading=single # should be ambiguous
bjam threading=single profiling=on # should select a0
bjam liba-version=3.3 # should select a1 if the default for
# <threading> is single, a2 otherwise
-- Dave Abrahams Boost Consulting http://www.boost-consulting.com Don't Miss BoostCon 2007! ==> http://www.boostcon.com
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