From: Pedro Ferreira (pedro.ferreira_at_[hidden])
Date: 2003-12-02 12:34:03
> I'm trying to make the final optimization pass on generated headers. As
> know, when constructing "exe", V2 adds implicit -I paths to all target
> so that #includes of generated headers work.
> This was optimized recently, but still, those extra includes cause
> problems. For example, for Boost regression tests, I bet that <boost/
> config.hpp> is scanned once for *each tested library*, since when each
> library is compiled it has additional -I option, which is different for
> library. So, scanner has no choice but to rescan header several times with
> those different extra include paths.
> I think I know a good solution. Now, the action class which compiles cpp
> just adds <include> properties for targets in the same main target. Why
> we find only targets which type is derived from "H", and add paths of
> So, if no headers are generated, you get no extra include paths, and
> no penalty to pay.
> I even implemented this solution. All tests pass and for regression tests
> get 2x speedup over current code (and besides, over v1, too).
> Anybody sees any serious problems with the above?
Not really - it looks like a good solution.
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