Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 25 Aug 2004 23:51:57 +0300
From:      Maxim Sobolev <sobomax@portaone.com>
To:        Maxim Maximov <mcsi@mcsi.pp.ru>
Cc:        Kris Kennaway <kris@obsecurity.org>
Subject:   Re: ccache support for make buildworld/make release
Message-ID:  <412CFBED.6030508@portaone.com>
In-Reply-To: <412CEF62.5010600@mcsi.pp.ru>
References:  <412CBC91.3070900@portaone.com> <412CD983.2040700@cronyx.ru> <20040825183342.GA81434@xor.obsecurity.org> <412CEF62.5010600@mcsi.pp.ru>

next in thread | previous in thread | raw e-mail | index | archive | help
Yeah, I've noticed that as well. Also, for some reason when I've re-run 
make world second time all objects built after buildtools miss the 
cache. Strange....

-Maxim

Maxim Maximov wrote:

> 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
> 
> 



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?412CFBED.6030508>