From: Vladimir Prus (ghost_at_[hidden])
Date: 2005-06-15 07:07:22
On Wednesday 08 June 2005 21:52, Phillip Seaver wrote:
> It would be nice (from my perspective, of course :-) ) if this worked
> such that the link requirement would be propagated and building d would
> use the include for e, but the include didn't get propagated. This is
> with static linking, BTW.
> exe a : a.cpp b ;
> lib b : b.cpp c ;
> lib c : c.cpp d ;
> obj d : d.cpp e ;
> lib e : e.cpp : : : <include>. ;
> The reason is that d uses e, but the users of c (and the rest of the c
> library) don't use e directly, so they have no need for e's headers.
> What do you think?
I recall it used to work this way, but lead to user complaints. The behaviour
was then changed so that usage requirements are propagated all the way up,
not only to direct dependents. Of course we can introduce a syntax to
propagate usage requirements only to direct dependents, but I don't see this
as too important.
-- 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