diff options
author | Michał Górny <gentoo@mgorny.alt.pl> | 2010-04-22 17:43:59 +0000 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2010-04-29 16:51:48 -0700 |
commit | ef2024a33be93a256beef28c1423ba1fb706383d (patch) | |
tree | a1581fa88b7113338bbfd0ae4b545ec26a375f63 /bin/ebuild.sh | |
parent | 2cfb3e852ce4ce9e83690e8033f50d32f696f5bd (diff) | |
download | portage-ef2024a33be93a256beef28c1423ba1fb706383d.tar.gz portage-ef2024a33be93a256beef28c1423ba1fb706383d.tar.bz2 portage-ef2024a33be93a256beef28c1423ba1fb706383d.zip |
Support per-package bashrc files.
Support loading per-package bashrc files from the /etc/portage/env
directory. The invidual files should reside in a directory matching
${CATEGORY}, with names matching ${PN}, ${PN}:${SLOT}, ${P} and/or ${PF}
(which are applied in that order).
Diffstat (limited to 'bin/ebuild.sh')
-rwxr-xr-x | bin/ebuild.sh | 23 |
1 files changed, 13 insertions, 10 deletions
diff --git a/bin/ebuild.sh b/bin/ebuild.sh index 57ceb2848..968bf6bc5 100755 --- a/bin/ebuild.sh +++ b/bin/ebuild.sh @@ -1557,17 +1557,20 @@ source_all_bashrcs() { # We assume if people are changing shopts in their bashrc they do so at their # own peril. This is the ONLY non-portage bit of code that can change shopts # without a QA violation. - if [ -f "${PORTAGE_BASHRC}" ]; then - # If $- contains x, then tracing has already enabled elsewhere for some - # reason. We preserve it's state so as not to interfere. - if [ "$PORTAGE_DEBUG" != "1" ] || [ "${-/x/}" != "$-" ]; then - source "${PORTAGE_BASHRC}" - else - set -x - source "${PORTAGE_BASHRC}" - set +x + for x in "${PORTAGE_BASHRC}" "${PM_EBUILD_HOOK_DIR}"/${CATEGORY}/{${PN},${PN}:${SLOT},${P},${PF}}; do + if [ -r "${x}" ]; then + # If $- contains x, then tracing has already enabled elsewhere for some + # reason. We preserve it's state so as not to interfere. + if [ "$PORTAGE_DEBUG" != "1" ] || [ "${-/x/}" != "$-" ]; then + source "${x}" + else + set -x + source "${x}" + set +x + fi fi - fi + done + [ ! -z "${OCC}" ] && export CC="${OCC}" [ ! -z "${OCXX}" ] && export CXX="${OCXX}" } |