Boost logo

Boost-Build :

From: David Abrahams (dave_at_[hidden])
Date: 2002-10-09 09:15:22


Vladimir Prus <ghost_at_[hidden]> writes:

> David Abrahams wrote:
> > Vladimir Prus <ghost_at_[hidden]> writes:
> >
> >
> >>I'm currently about to implement "use-requirements", which are
> >>requirements propagated to targets that use one which specifies
> >>"use-requirements".
> >
> >
> > That last phrase makes no sense to me. Can you show an example of
> > where those requirements are propagated to, say, in conjunction with
> > the code below?
>
> I'll use more concrete example. Boost.date_time requires that any code
> that uses it set DATE_TIME_INLINE defines. This might be conveniently
> implemented this way:
>
> lib date_time : ..... : use-requirements <define>DATE_TIME_INLINE ;
>
> if somebody writes:
>
> exe calendar : calendar.cpp @/boost/date_time/date_time ;
>
> then <define>DATE_TIME_INCLUDE will be applied when compiling calendar.cpp

OK, that's what I expected. I think the name use-requirements is too
close to sounding like "use these requirements", which is too close to
"requirements", which means something completely different.

How about "dependent-requirements"?

And, what kind of dependents do these requirements get propagated to?
All of them? Certain target types only?

Direct and indirect, or just direct dependents? What about a test
target that depends on the exe which depends on the lib?

P.S. The example in your previous message showed an exe with
use-requirements, which was doubly confusing.

-- 
David Abrahams * Boost Consulting
dave_at_[hidden] * http://www.boost-consulting.com
 

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