Hi, The ccache ebuild and portage consider the root directory to be /root. However on OS X (at least 10.2.x), the root is /var/root. ebuild.sh assumes that root is /root. Maybe this assumption is also at other places also. > grep -n /root /usr/sbin/ebuild.sh 1268: [ -z "${CCACHE_DIR}" ] && export CCACHE_DIR="/root/.ccache" > If ccache is installed and enabled but CCACHE_DIR is not defined in make.conf, the ccache does not work. (Behaves like if uninstalled/disabled). Also, I modified the ccache ebuild, see patch for ccache ebuild attached. David
Created attachment 39627 [details, diff] macos patch for ccache
I see a few ways to get around this. 1) we create a /root as a part of our baselayout virtual, or with our installer, etc. 2) we look into changing the portage internal code to be more forgiving. 3) we put CCACHE_DIR in our profile (is this OK?) If we can do (3) I think this is the easiest and most harmless to the rest of the tree. If we can do (2) I think that would probably be the more 'correct' way to do things. If we can do neither (3) nor (2), I would want to look into other alternatives rather than go ahead and do (1). ciaranm: advice on this? everyone: advice on this?
according to ferringb and carpaski on #gentoo-dev, (3) is the way to go.
Added CCACHE line to make.defaults in profiles/default-darwin/macos/. Keyworded dev-util/cache-2.3 ~ppc-macos - no patch required. Thanks!
Closing out bugs that've been resolved for a while now...