Boost logo

Boost-Build :

From: David Abrahams (dave_at_[hidden])
Date: 2007-04-25 22:17:47

on Wed Apr 25 2007, Vladimir Prus <> 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:

         # prebuilt
         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
Don't Miss BoostCon 2007! ==>

Boost-Build list run by bdawes at, david.abrahams at, gregod at, cpdaniel at, john at