From 12c645c3bbae062d06e7e52ab1d03d23ec6b7e84 Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Mon, 6 Sep 2010 16:43:54 -0700 Subject: Define EBUILD_MASTER_PID earlier in ebuild.sh, before $EBUILD is sourced. --- bin/ebuild.sh | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/bin/ebuild.sh b/bin/ebuild.sh index bc4700e0b..e976bd114 100755 --- a/bin/ebuild.sh +++ b/bin/ebuild.sh @@ -1905,6 +1905,10 @@ if [[ -n ${QA_INTERCEPTORS} ]] ; then unset BIN_PATH BIN BODY FUNC_SRC fi +# Subshell/helper die support (must export for the die helper). +export EBUILD_MASTER_PID=$BASHPID +trap 'exit 1' SIGTERM + if ! hasq "$EBUILD_PHASE" clean cleanrm depend && \ [ -f "${T}"/environment ] ; then # The environment may have been extracted from environment.bz2 or @@ -2104,6 +2108,10 @@ fi ebuild_main() { # Subshell/helper die support (must export for the die helper). + # Since this function is typically executed in a subshell, + # setup EBUILD_MASTER_PID to refer to the current $BASHPID, + # which seems to give the best results when further + # nested subshells call die. export EBUILD_MASTER_PID=$BASHPID trap 'exit 1' SIGTERM @@ -2320,9 +2328,5 @@ elif [[ -n $EBUILD_SH_ARGS ]] ; then exit $? fi -# Subshell/helper die support (must export for the die helper). -export EBUILD_MASTER_PID=$BASHPID -trap 'exit 1' SIGTERM - # Do not exit when ebuild.sh is sourced by other scripts. true -- cgit v1.2.3-1-g7c22