Boost logo

Boost-Build :

Subject: Re: [Boost-build] Better caching of configure checks
From: Steven Watanabe (watanabesj_at_[hidden])
Date: 2012-10-14 10:23:43


AMDG

On 10/14/2012 06:10 AM, Lars Viklund wrote:
> On Sat, Oct 13, 2012 at 06:12:26PM -0700, Steven Watanabe wrote:
>> The attached patch implements a cache that
>> stores the results of all configure checks.
>> This reduces the no-op build time
>> for msvc-11.0 in BOOST_ROOT with no extra
>> options from 8 seconds to 3 seconds for me.
>
> What implications will this have for end users out of the box?
>
> What kind of things will this cache in a typical build of the Boost
> project?
>

Right now, it stores everything that appears with

Running Configuration Checks:
  - ...

I'd also like to extend it to cache anything that
requires a SHELL invocation while configuring toolsets.
The implication of this is that if you have
using gcc ;
and you upgrade gcc, you'll have to clear the cache.

> Will I have to constantly obliterate this file as I change toolsets and
> options in the same build dir,

Changing toolsets should be fine. The
cache stores the same information that
Boost.Build does. Boost.Build supports
the use of multiple toolsets, so the
cache can also store information about
multiple toolsets.

> or when I change something around with
> optional dependencies like the MPI library, whether ICU exists or not,
> and suchlike?
>

What happens now is that the existence of ICU is
cached if it exists, but not if it doesn't exist.
Part of the reason for this patch is that I didn't
like the asymmetry.

> If this has any of the above implications, I hope it's violently
> mentioned and documented on the site, lest a bajillion build scripts
> will stop working.
>

In Christ,
Steven Watanabe


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