Re: ccache support for make buildworld/make release

From: Maxim Maximov <mcsi_at_mcsi.pp.ru>
Date: Wed, 25 Aug 2004 23:58:26 +0400
Kris Kennaway wrote:
> On Wed, Aug 25, 2004 at 10:25:07PM +0400, Roman Kurakin wrote:
> 
>>Maxim Sobolev wrote:
>>
>>
>>>Folks,
>>>
>>>I wonder if anyone considered adding ccache support for 
>>>buildworld/release targets. ccache is a tool, which wraps around gcc, 
>>>allowing to cache object files generated by the compiler to greatly 
>>>speed-up compilation of the same code over and over 
>>>(http://ccache.samba.org/).
>>>
>>>It acts as a caching pre-processor to C/C++ compilers, using the -E 
>>>compiler switch and a hash to detect when a compilation can be 
>>>satisfied from cache.  This often results in a 5 to 10 times speedup.
>>
>>Hm. It seems that this is very cool tool. I would glad to see it in FreeBSD.
>>Since I've 5 branch compiles tooooo long and fast systems for compilation
>>does not always available/possible to use while development.
>>
>>I volonteer to test this if needed.
> 
> 
> BTW, I don't think there's anything to set up..you just set
> CC="ccache cc" or similar.
> 
> Kris

The command

env CC="/usr/local/bin/ccache cc" make buildworld

failed with today's CURRENT in libc compilation. Either there's a bug in 
ccache or something in FreeBSD's build enviroment needs to be tweaked 
for using ccache:

/usr/local/bin/ccache cc -O -pipe  -I/usr/src/lib/libc/include 
-I/usr/src/lib/libc/../../include -I/usr/src/lib/libc/i386 
-D__DBINTERFACE_PRIVATE -I/usr/src/lib/libc/../../contrib/gdtoa -DINET6 
-I/usr/obj/usr/src/lib/libc -DPOSIX_MISTAKE -I/usr/src/lib/libc/locale 
-DBROKEN_DES -DPORTMAP -DDES_BUILTIN -I/usr/src/lib/libc/rpc -DYP 
-DHESIOD -Wsystem-headers -Werror -Wall -Wno-format-y2k 
-Wno-uninitialized -c /usr/src/lib/libc/rpc/des_crypt.c
/usr/local/bin/ccache cc -O -pipe  -I/usr/src/lib/libc/include 
-I/usr/src/lib/libc/../../include -I/usr/src/lib/libc/i386 
-D__DBINTERFACE_PRIVATE -I/usr/src/lib/libc/../../contrib/gdtoa -DINET6 
-I/usr/obj/usr/src/lib/libc -DPOSIX_MISTAKE -I/usr/src/lib/libc/locale 
-DBROKEN_DES -DPORTMAP -DDES_BUILTIN -I/usr/src/lib/libc/rpc -DYP 
-DHESIOD -Wsystem-headers -Werror -Wall -Wno-format-y2k 
-Wno-uninitialized -c /usr/src/lib/libc/rpc/des_soft.c
/usr/local/bin/ccache cc -O -pipe  -I/usr/src/lib/libc/include 
-I/usr/src/lib/libc/../../include -I/usr/src/lib/libc/i386 
-D__DBINTERFACE_PRIVATE -I/usr/src/lib/libc/../../contrib/gdtoa -DINET6 
-I/usr/obj/usr/src/lib/libc -DPOSIX_MISTAKE -I/usr/src/lib/libc/locale 
-DBROKEN_DES -DPORTMAP -DDES_BUILTIN -I/usr/src/lib/libc/rpc -DYP 
-DHESIOD -Wsystem-headers -Werror -Wall -Wno-format-y2k 
-Wno-uninitialized -c /usr/src/lib/libc/rpc/crypt_client.c
/usr/local/bin/ccache cc -O -pipe  -I/usr/src/lib/libc/include 
-I/usr/src/lib/libc/../../include -I/usr/src/lib/libc/i386 
-D__DBINTERFACE_PRIVATE -I/usr/src/lib/libc/../../contrib/gdtoa -DINET6 
-I/usr/obj/usr/src/lib/libc -DPOSIX_MISTAKE -I/usr/src/lib/libc/locale 
-DBROKEN_DES -DPORTMAP -DDES_BUILTIN -I/usr/src/lib/libc/rpc -DYP 
-DHESIOD -Wsystem-headers -Werror -Wall -Wno-format-y2k 
-Wno-uninitialized -c /usr/src/lib/libc/rpc/key_call.c
/usr/src/lib/libc/rpc/key_call.c:33:10: extra tokens at end of #ident 
directive
*** Error code 1

Stop in /usr/src/lib/libc.
*** Error code 1

Stop in /usr/src/lib.
*** Error code 1

Stop in /usr/src.
*** Error code 1

Stop in /usr/src.
*** Error code 1

Stop in /usr/src.
*** Error code 1

Stop in /usr/src.
Exit 1


-- 
Maxim Maximov
Received on Wed Aug 25 2004 - 17:58:58 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:38:08 UTC