[ccache] Preprocessor stdout regression since v2.4

Mike Crowe mac at mcrowe.com
Mon Feb 28 05:11:36 MST 2011


On 2011-02-15 13:51, Mike Crowe wrote:
>> It might not be expected for cpp to be a symlink to ccache but with
>> ccache-v2.4 it did used to work so I found it easier for our build
>> system just to symlink everything in the toolchain directory to ccache.
>> 
>> Unfortunately between v2.4 (Debian Lenny version) and v3.1.4 the
>> behaviour seems to have changed. When running the preprocessor ccache
>> doesn't seem to realise that it should write the output to stdout.
 
On Sun, Feb 20, 2011 at 03:22:05PM +0100, Joel Rosdahl wrote:
> Thanks for noting this.
> 
> The reason for the changed behaviour is that "ccache compiler header.h"
> is a supported invocation (meaning: build a precompiled header from
> header.h) in ccache 3.1 and higher, but it wasn't in ccache 2.4 (which
> fell back to running the real compiler, i.e. cpp in this case).
> 
> So, don't symlink cpp to ccache. :-)

Well, it's a bit of an anomaly. I always understood that ccache was
capable of being symlinked to from any name and it would just cope by
executing the correct program further down the path.  It seems rather
odd if there is one program for which it does not do this correctly,
particularly if that program is often found alongside the compiler.

But, since I'm not volunteering to fix it I can live with it. :)

Thanks.

Mike.


More information about the ccache mailing list