From: Zac Medico Date: Mon, 6 Sep 2010 23:43:54 +0000 (-0700) Subject: Define EBUILD_MASTER_PID earlier in ebuild.sh, before $EBUILD is X-Git-Tag: v2.2_rc76 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=12c645c3bbae062d06e7e52ab1d03d23ec6b7e84;p=portage.git Define EBUILD_MASTER_PID earlier in ebuild.sh, before $EBUILD is sourced. --- 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