Boost logo

Boost-Build :

From: Jorge Suit Perez Ronda (josp_at_[hidden])
Date: 2006-05-12 12:28:10


I try this:

import feature : feature ;

feature variety
    : we wi he hi ii ce ci ti
    : optional composite link-incompatible ;

feature.compose <variety>we : <define>CONFIG_VAR_WE <define>NDEBUG ;
feature.compose <variety>wi : <define>CONFIG_VAR_WI <define>NDEBUG ;
feature.compose <variety>he : <define>CONFIG_VAR_HE <define>NDEBUG ;
feature.compose <variety>hi : <define>CONFIG_VAR_HI <define>NDEBUG ;
feature.compose <variety>ii : <define>CONFIG_VAR_II <define>NDEBUG ;
feature.compose <variety>ce : <define>CONFIG_VAR_CE ;
feature.compose <variety>ci : <define>CONFIG_VAR_CI ;
feature.compose <variety>ti : <define>CONFIG_VAR_TI ;

and after invoking

bjam mps link=static variety=ci

I got:

/usr/local/src/Build/boost-build/build/property.jam:265: in validate1
from module property
error: Invalid property '<variety>ci': unknown feature 'variety'.
/usr/local/src/Build/boost-build/build/property.jam:273: in
property.validate from module property
/usr/local/src/Build/boost-build/build/build-request.jam:176: in
convert-command-line-element from module build-request
/usr/local/src/Build/boost-build/build/build-request.jam:138: in
build-request.from-command-line from module build-request
/usr/local/src/Build/boost-build/build-system.jam:162: in load from
module build-system
/usr/local/src/Build/boost-build/kernel/modules.jam:261: in import from
module modules
/usr/local/src/Build/boost-build/kernel/bootstrap.jam:132: in
boost-build from module
/usr/local/src/Build/boost-build/boost-build.jam:1: in module scope from
module

any suggestion?

On Fri, 2006-05-12 at 11:59 -0400, Phillip Seaver wrote:
> Jorge Suit Perez Ronda wrote:
> > Hello, I want to create a new feature called variety. And depending on
> > the value of the variety I want that the output of the compilation will
> > be created in its own directory. For example if 'variety' can take the
> > values A, B or C then the output could be
> >
> [deleted tree]
> > the contens of A, B or C being the same as the default build structure
> > of BB2
> >
> > is it possible? any suggestion would be appreciated.
>
> I do something like that. I think to get it to have the exact structure
> you want, you'd have to change some of the internals of boost.build.
>
> import feature : feature ;
>
> feature variety : A B C : optional composite link-incompatible ;
> feature.compose <variety>A : <define>VARIETY_A ;
> feature.compose <variety>B : <define>VARIETY_B ;
> feature.compose <variety>C : <define>VARIETY_C ;
>
>
> You'd end up with something like bin/gcc/debug/variety-a,
> bin/gcc/release/variety-b, etc, though, instead of your example tree.
>
> Phillip
>
>
> _______________________________________________
> Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost-build


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