buildworld not using proper build environment

Steve Hodgson steve at acidy.com
Mon Aug 22 16:18:17 GMT 2005


>ARGH! It was ccache that did me in! Even though I expressly typed "make
>-DNOCCACHE", ccache was sneaking in somewhere. I commented out all of
>the ccache section of make.conf and it fixed the problem.
>
>Sorry for the wasted bandwidth. If I get a little time, I may try to
>figure out why ccache did this, but it's not a high priority.
>
>Thanks very much for your time! 
>  
>
I thought I read earlier in this thread that ccache wasn't being used - 
my apologies for not butting in. I have the same problem, which is that 
the example ccache make.conf states that:

.if !defined(NOCCACHE)
.if ${.CURDIR:M/usr/src*}
CC=/usr/local/libexec/ccache/cc
CXX=/usr/local/libexec/ccache/c++
.else
CC=cc
CXX=c++
.endif
.else
CC=/usr/bin/cc
CXX=/usr/bin/c++
.endif

This means if you specify NOCCACHE you get the system gcc rather than 
the /usr/src gcc (since cc=/usr/bin/cc ignores the build environment 
PATH), hence the problem. What I've never figured out is why the check 
on line 2 doesn't work, because it doesn't for me - I always have to 
specify NOCCACHE to not use ccache, even when building world. I've 
changed the bottom of that section to read...

.else
CC=cc
CXX=c++
.endif

which means that specifying NOCCACHE still honours the mangled PATH from 
the build enviroment, and all works ok.

Steve


More information about the freebsd-current mailing list