summaryrefslogtreecommitdiffstats
path: root/bin/ebuild.sh
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2007-12-28 15:47:26 +0000
committerZac Medico <zmedico@gentoo.org>2007-12-28 15:47:26 +0000
commite9e6eb58af5ce0794325daba124285c2b00b6d8f (patch)
tree7e208dde3acb8bdc15a489228ef6e7109d7e8397 /bin/ebuild.sh
parent2a3f1350437aab5004063e466052c4d4791fb09e (diff)
downloadportage-e9e6eb58af5ce0794325daba124285c2b00b6d8f.tar.gz
portage-e9e6eb58af5ce0794325daba124285c2b00b6d8f.tar.bz2
portage-e9e6eb58af5ce0794325daba124285c2b00b6d8f.zip
Bug #203239 - With FEATURES=noauto, always source ${EBUILD}.
This will load the ${T}/environment file if available and then source ${EBUILD} to overwrite any functions that have changed. (trunk r9051 and r9062) svn path=/main/branches/2.1.2/; revision=9068
Diffstat (limited to 'bin/ebuild.sh')
-rwxr-xr-xbin/ebuild.sh13
1 files changed, 9 insertions, 4 deletions
diff --git a/bin/ebuild.sh b/bin/ebuild.sh
index 27355a339..62a271752 100755
--- a/bin/ebuild.sh
+++ b/bin/ebuild.sh
@@ -1602,9 +1602,8 @@ if hasq "depend" "${EBUILD_SH_ARGS}"; then
unset BIN_PATH BIN BODY FUNC_SRC
fi
-if hasq ${EBUILD_SH_ARGS} clean ; then
- true
-elif ! hasq ${EBUILD_PHASE} depend && [ -f "${T}"/environment ] ; then
+if ! hasq ${EBUILD_PHASE} clean depend && \
+ [ -f "${T}"/environment ] ; then
# The environment may have been extracted from environment.bz2 or
# may have come from another version of ebuild.sh or something.
# In any case, preprocess it to prevent any potential interference.
@@ -1635,8 +1634,14 @@ elif ! hasq ${EBUILD_PHASE} depend && [ -f "${T}"/environment ] ; then
export SANDBOX_ON=${PORTAGE_SANDBOX_ON}
unset PORTAGE_SANDBOX_ON
source_all_bashrcs
-else
+fi
+if ! hasq ${EBUILD_PHASE} clean && \
+ (
+ hasq ${EBUILD_PHASE} depend || \
+ [ ! -f "${T}"/environment ] || \
+ hasq noauto ${FEATURES}
+ ) ; then
# The bashrcs get an opportunity here to set aliases that will be expanded
# during sourcing of ebuilds and eclasses.
source_all_bashrcs