diff options
author | Zac Medico <zmedico@gentoo.org> | 2011-11-09 19:11:35 -0800 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2011-11-09 19:11:35 -0800 |
commit | 68e467790f02ea8330a8efd5e3b55ebac3dd3462 (patch) | |
tree | bcdf109ce9c8279fedd9ac0df713d0e2eea45063 | |
parent | f75d02eb630c5595127faded4a048268ff59ac17 (diff) | |
download | portage-68e467790f02ea8330a8efd5e3b55ebac3dd3462.tar.gz portage-68e467790f02ea8330a8efd5e3b55ebac3dd3462.tar.bz2 portage-68e467790f02ea8330a8efd5e3b55ebac3dd3462.zip |
Move ccache/distcc PATH code to doebuild_env.v2.2.0_alpha73
-rwxr-xr-x | bin/ebuild.sh | 10 | ||||
-rw-r--r-- | pym/portage/package/ebuild/doebuild.py | 20 |
2 files changed, 20 insertions, 10 deletions
diff --git a/bin/ebuild.sh b/bin/ebuild.sh index 226b9f6e5..f39e5362a 100755 --- a/bin/ebuild.sh +++ b/bin/ebuild.sh @@ -578,19 +578,11 @@ if ! has "$EBUILD_PHASE" clean cleanrm ; then if [[ $EBUILD_PHASE != depend ]] ; then - _eprefix=${EPREFIX} - case "$EAPI" in 0|1|2) _eprefix= ;; esac - # Use default ABI libdir in accordance with bug #355283. - x=LIBDIR_${DEFAULT_ABI} - [[ -n $DEFAULT_ABI && -n ${!x} ]] && x=${!x} || x=lib - if has distcc $FEATURES ; then - PATH="${_eprefix}/usr/$x/distcc/bin:$PATH" [[ -n $DISTCC_LOG ]] && addwrite "${DISTCC_LOG%/*}" fi if has ccache $FEATURES ; then - PATH="${_eprefix}/usr/$x/ccache/bin:$PATH" if [[ -n $CCACHE_DIR ]] ; then addread "$CCACHE_DIR" @@ -600,8 +592,6 @@ if ! has "$EBUILD_PHASE" clean cleanrm ; then [[ -n $CCACHE_SIZE ]] && ccache -M $CCACHE_SIZE &> /dev/null fi - unset x _eprefix - if [[ -n $QA_PREBUILT ]] ; then # these ones support fnmatch patterns diff --git a/pym/portage/package/ebuild/doebuild.py b/pym/portage/package/ebuild/doebuild.py index 3b728074b..bdfcbcc35 100644 --- a/pym/portage/package/ebuild/doebuild.py +++ b/pym/portage/package/ebuild/doebuild.py @@ -372,6 +372,26 @@ def doebuild_environment(myebuild, mydo, myroot=None, settings=None, _doebuild_path(mysettings, eapi=eapi) + if mydo != "depend": + ccache = "ccache" in mysettings.features + distcc = "distcc" in mysettings.features + if ccache or distcc: + # Use default ABI libdir in accordance with bug #355283. + libdir = None + default_abi = mysettings.get("DEFAULT_ABI") + if default_abi: + libdir = mysettings.get("LIBDIR_" + default_abi) + if not libdir: + libdir = "lib" + + if distcc: + mysettings["PATH"] = os.path.join(os.sep, eprefix_lstrip, + "usr", libdir, "distcc", "bin") + ":" + mysettings["PATH"] + + if ccache: + mysettings["PATH"] = os.path.join(os.sep, eprefix_lstrip, + "usr", libdir, "ccache", "bin") + ":" + mysettings["PATH"] + if not eapi_exports_KV(eapi): # Discard KV for EAPIs that don't support it. Cache KV is restored # from the backupenv whenever config.reset() is called. |