ccache support for make buildworld/make release
Maxim Maximov
mcsi at mcsi.pp.ru
Wed Aug 25 12:58:58 PDT 2004
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
More information about the freebsd-current
mailing list