RFC: Precompiled Headers for Wine Build (GSoC?)
Kyle Auble
kyle.auble at zoho.com
Mon Feb 15 23:05:36 CST 2016
On 02/15/2016 04:19 PM, Francois Gouget wrote:
> On Sun, 14 Feb 2016, Kyle Auble wrote:
> [...]
>> It's been several months so I could be completely misremembering, but I want
>> to say ccache didn't seem to help even subsequent builds of wine on my system
>> (which has really old hardware). Just keeping the object files for make (which
>> is a no-go for final tests) seemed to make a much bigger difference.
> Not sure why keeping the object files would be a no-go (at least for
> preprocessor mode).
Oh, that's not to avoid a problem with ccache but for doing the build
from a clean directory.
> However, note that nowadays ccache has two modes:
> * 'Preprocessor mode' where where ccache runs the preprocessor on the
> source code and hashes the result to find the object file in its
> cache.
>
> * 'Direct mode' where ccache hashes the source code and include files
> directly which lets it skip the preprocessor step too. There's a
> catch in this mode which is that creating a new header file may
> change the code that would be compiled, without ccache detecting it.
>
> Direct mode should improve compilation times at least as much as
> precompiled headers.
That's true, I noticed in the ccache stats that I would get occasional
preprocess hits when building the linux kernel. The more I think about
it, I wonder if ccache might seem less effective for me because my
processor struggles some with the hashing. Since I don't remember
exactly how my stats turned out, I'd be willing to figure out the
precompiled headers, then test if they make a difference on top of
ccache. If they seem worth it and it's still an open issue, I can submit
the necessary patches; I just can't promise it will happen soon.
Kyle
More information about the wine-devel
mailing list