Boost logo

Boost-Build :

From: Vladimir Prus (ghost_at_[hidden])
Date: 2005-09-28 03:38:26


Hi Kevin,
> > Please go to Boost's top Jamfile.v2 find the "install" or
> > "install-headers" target (depends on Boost version), locate the
> >
> > [ glob $(dirs)/$(patterns) ]
> >
> > in the target definition and remove that text. Then try again and report
> > the time.

> yep, I think that is certainly the bulk of the time - without doing
> exhaustive repeat runs, there is not much difference between removing
> that line, and my own version it. It's the glob that talkes all the
> time (>60s). This is running on a local NTFS filesystem,

Not laptop, by chance?

> So does that mean that some form of 'glob caching' is needed? Perhaps
> checking on the time stamps of the directories involved and rebuilding
> the glob when its updated, or a lazy evaluation of it, in that I'm not
> interested for instance in installing unless I explicitly ask to do
> so.
>
> I'd certainly find it a pain not using the glob feature, having to
> list all my unit tests separately for instance.

The problem there is that 'glob' looks for *all* Boost headers, and it's a lot
of them.

One approach is to make glob lazy, so globbing is only done when installing
Boost. Another approach is to use some recursive copy program. It's known
issue, but I'll take to devote some time to it.

In either case, using glob for your own target should be have such bad effect,
as you'll be globbing for much less files.

- Volodya

-- 
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