Boost logo

Boost-Build :

From: Ali Azarbayejani (ali_at_[hidden])
Date: 2003-03-21 17:56:50


Vladimir Prus wrote:
>

> Second, how do you find the list of dependency libraries. If 'l' is
> virtual-target object corresponding to a library (that's what is stored in
> "libraries" variable above), then you can do:
>
> local a = [ $(l).action ] ;
> local p = [ $(a).properties-ps ] ;
> local other-libraries =
> [ feature.get-values <library> : [ $(p).raw ] ] ;
> ECHO [ $(l).str ] " : depends on " $(other-libraries) ;
>
> If you remove the girst (i.e. $(other-libraries:G=), you'll get the list of
> virtual targets for other libraries that this one depend on.

This strategy works fine for getting the dependencies of regular
libraries (that are "file-targets"), including dependencies on "prebuilt
libraries" i.e. "searched-lib-targets".

However, in the above code, if $(l) is a searched-lib-target, the
returned action $(a) is empty, so I can't get properties for it using
this method. Therefore, it is impossible to handle the case of one
system lib depending on another. For example, you might want Xt -> X11
and would like to specify

lib X11 : : <name>X11 ;
lib Xt : : <name>Xt <dependency>X11 ;

Any thoughts on this?
--Ali

 


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