don't let profile.env overwrite variables that are already set; bug 130229
authorSimon Stelling <blubb@gentoo.org>
Mon, 1 May 2006 22:41:19 +0000 (22:41 -0000)
committerSimon Stelling <blubb@gentoo.org>
Mon, 1 May 2006 22:41:19 +0000 (22:41 -0000)
svn path=/main/trunk/; revision=3300

bin/ebuild.sh

index 1453827cf6bbf89665c7f6929c7de9ebcfde6872..e1851da04d055b29a6f8916c2a0b70d045d56836 100755 (executable)
@@ -44,7 +44,12 @@ alias restore_IFS='if [ "${old_IFS:-unset}" != "unset" ]; then IFS="${old_IFS}";
 
 OCC="$CC"
 OCXX="$CXX"
+
+env_dump=$(export -p | egrep -v "( EBUILD_PHASE=| PORTAGE_BIN_PATH=| PORTAGE_PYM_PATH=)")
 source /etc/profile.env &>/dev/null
+eval "${env_dump}"
+unset env_dump
+
 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.