Boost logo

Boost-Build :

From: Vladimir Prus (ghost_at_[hidden])
Date: 2006-12-16 17:21:32


On Sunday 17 December 2006 01:04, David Abrahams wrote:
> Roland Schwarz <roland.schwarz_at_[hidden]> writes:
>
> > The test library specifies in its requirements:
> >
> > <toolset>msvc:<asynch-exceptions>on
> >
> > Now when I try to put this also into the usage-requirements, and try to
> > build something that uses the test library Boost.Build complains with:
> >
> > error: usage-requirements <toolset>msvc:<asynch-exceptions>on have
> > non-free properties <asynch-exceptions>on
>
> That is rather baffling. I can't see why usage-requirements should be
> limited to free properties.

Because if you allow non-free usage requirements, then in:
        
        exe a : a.cpp lib1 lib2 ;

usage requirements brought by lib1 might well affect some conditional requirements
in lib2, and in order to figure out the final properties for all targets you potentially need
to take multiple passed though all targets, re-computing usage requirements and propagating
all the way up and down. I never had time or motivation to spell down such an algorithm.

- 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