Boost logo

Boost-Build :

From: Vladimir Prus (ghost_at_[hidden])
Date: 2004-12-17 03:30:59


On Thursday 16 December 2004 23:08, Toon Knapen wrote:
> Vladimir Prus wrote:
> > I think it's a conflict between "explicit" and "convenient". No matter
> > what guidelines are there ("explicit is better than implicit", for
> > example), I often find that decision is not easy. In this case, Toon did
> > not like too explicit behaviour.
>
> AFAICT it's not about 'implicit' or 'explicit'. Generally I'm also for
> 'explicit'.
>
> But suppose library C uses library B which on its turn uses library A. I
> don't think the developer of library C (and thus which uses library B)
> should know that library B relies on library A. It's the developer of
> library B that states in his jamfile that B is dependent on A. C only
> uses B. Even more: Suppose library C is not changed but all of a sudden
> library B decides to add some dependency to libZ. This should certainly
> not induce a change to the build-specification (==Jamfile) of library C,
> only to the build-specification of library B.

Sure, before my change it was possible to use:

lib B : b.cpp : <use>A : : <use>A ;

to propagate usage requirements of "B" to its dependents. So, library C need
not be changed, no matter how dependencies of 'B' are changed.

The issue is if this extra <use>A is not confusing enough in itself.

- Volodya

 


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