summaryrefslogtreecommitdiffstats
path: root/bin/ebuild
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2007-12-28 14:40:13 +0000
committerZac Medico <zmedico@gentoo.org>2007-12-28 14:40:13 +0000
commita731c7d79183644e1bd1566b3677db66a8ca1b4e (patch)
treed3f036bd7169fdb311bf3a8da24f824b7b954957 /bin/ebuild
parent2384e53b022cd8923dac8fa5386f22700d433dce (diff)
downloadportage-a731c7d79183644e1bd1566b3677db66a8ca1b4e.tar.gz
portage-a731c7d79183644e1bd1566b3677db66a8ca1b4e.tar.bz2
portage-a731c7d79183644e1bd1566b3677db66a8ca1b4e.zip
Fixes for logic related to FEATURES=test to USE=test mapping:
* Add EBUILD_FORCE_TEST to the environment whitelist and filter it from the saved environment in save_ebuild_env(). * Tweak logic inside the ebuild command and config.regenerate() so that EBUILD_FORCE_TEST works even in odd cases like when USE=test is masked. * Only make FEATURES=test map to USE=test when "test" is actually in IUSE. * Remove USE=test from the set of implicit IUSE so that useq() calls in ebuild.sh properly generate a QA Notice when "test" is missing from IUSE. svn path=/main/trunk/; revision=9064
Diffstat (limited to 'bin/ebuild')
-rwxr-xr-xbin/ebuild14
1 files changed, 9 insertions, 5 deletions
diff --git a/bin/ebuild b/bin/ebuild
index d5e09dd97..7aebd8a36 100755
--- a/bin/ebuild
+++ b/bin/ebuild
@@ -130,13 +130,17 @@ def discard_digests(myebuild, mysettings, mydbapi):
portage._doebuild_manifest_exempt_depend -= 1
tmpsettings = portage.config(clone=portage.settings)
-if "test" in pargs and "test" not in tmpsettings.features:
- print "Forcing test."
+if "test" in pargs:
+ # This variable is a signal to config.regenerate() to
+ # indicate that the test phase should be enabled regardless
+ # of problems such as masked "test" USE flag.
tmpsettings["EBUILD_FORCE_TEST"] = "1"
tmpsettings.backup_changes("EBUILD_FORCE_TEST")
- tmpsettings.features.append("test")
- tmpsettings["FEATURES"] = " ".join(tmpsettings.features)
- tmpsettings.backup_changes("FEATURES")
+ if "test" not in tmpsettings.features:
+ tmpsettings.features.append("test")
+ tmpsettings.features.sort()
+ tmpsettings["FEATURES"] = " ".join(tmpsettings.features)
+ tmpsettings.backup_changes("FEATURES")
build_dir_phases = set(["setup", "unpack", "compile",
"test", "install", "package", "rpm"])