Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 25 Sep 2008 01:45:20 +0100
From:      RW <fbsd06@mlists.homeunix.com>
To:        freebsd-questions@freebsd.org
Subject:   Re: ccache on amd64
Message-ID:  <20080925014520.3850bb00@gumby.homeunix.com.>
In-Reply-To: <200809250100.07383.fbsd.questions@rachie.is-a-geek.net>
References:  <48D7092B.1040503@brianwhalen.net> <200809241224.11455.fbsd.questions@rachie.is-a-geek.net> <48DA4E9C.8040905@brianwhalen.net> <200809250100.07383.fbsd.questions@rachie.is-a-geek.net>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, 25 Sep 2008 01:00:07 +0200
Mel <fbsd.questions@rachie.is-a-geek.net> wrote:


> Since it fails on the link, I wonder if the wrong linker is called by
> ccache. I'll see what I can find out when it quiets down, right now
> machine is under heavy load.
> 
> (It might just be the path you set in /etc/profile. I use only 
> the /etc/make.conf version, not set the path additionally and 
> make -f /usr/src/Makefile.inc1 -V LIB32WMAKE shows it's mangeling the
> path)
>

world-cc does this:

#!/bin/sh
unset CCACHE_PATH
export CCACHE_HASH_COMPILER
exec /usr/local/libexec/ccache/cc "$@"

So it unsets any ccache path variable set in /etc/profile.


For the benefit of anyone that didn't follow the previous thread, the
issue was that in building 32-bit libraries under amd64, extra
arguments get passed to the compiler inside the CC variable
definition, hence the problem with overriding CC/CXX. I doubt that those
updated make.conf settings have had much testing, they were just
something suggested in a thread.


BTW I would suggest CCACHE_HASH_COMPILER is set globally, otherwise
building world invalidates any cache object built with the default
compiler. Only having it on for world is the default, but it seems
perverse to me - I see most of the benefit of ccache on port building. 








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