Boost logo

Boost-Build :

From: Vladimir Prus (ghost_at_[hidden])
Date: 2005-09-19 05:12:25


Hi Bojan,

> Thanks, this indeed solves this problem.
>
> I have been thinking of the problem a bit more, and I was wondering
> if a more general solution might be possible. For example, developing
> addins for third-party
> products usually requires defining some symbols, specifying
> third-party include and lib directories, additional libraries, and
> sometimes even running special tools after the build is done. It would
> be convenient if all that could be wrapped ina different target type,
> so that, for example:
>
> foo-addin bar : [ glob *.cpp ] : <include>. ;
>
> would have the same effect as something along the lines of:
>
> exe bar : [ glob *.cpp ] /foo//lib : <include>. <include>/foo/include ;
> notfile bar_post : @foo-post : bar ;
> actions foo-post
> {
> /foo/bin/post $(>)
> }

Did you seen:
http://boost.org/boost-build2/doc/html/bbv2/extending/rules.html

In particular, it suggests that you can put a rule definition in your Jamroot,
say:

rule foo-adding ( name : sources * )
{
exe $(name) : $(sources) : <include>whatever ;
# Whatever else you want.
}

> Now that I am writing about this, it seems to me that the python
> extension support implements something like this. I will have a closer
> look at that.

Yes, that can give some ideas.

- Volodya

-- 
Vladimir Prus
http://vladimir_prus.blogspot.com
Boost.Build V2: 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