Variables exported in parent environment override variables set in /etc/make.conf, but don't override variables set in /etc/portage/env. Example: VARIABLE="value" emerge ${package}
Is this about package.env or /etc/portage/env bashrc? I ask since there's nothing that we can do about bashrc, since bashrc is always supposed to override everything else.
set_unless_changed() and unset_unless_changed() helper functions have been added (after a discussion in IRC): http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commitdiff;h=81354e43b5acf25cadc42f6c093d52acf8f832fb
Minor improvements: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commitdiff;h=693681562c7795473efd0caaa05b8d52b28f75db
This is fixed in 2.1.9.47 and 2.2.0_alpha31.
*** Bug 368901 has been marked as a duplicate of this bug. ***