summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2008-08-11 19:50:57 +0000
committerZac Medico <zmedico@gentoo.org>2008-08-11 19:50:57 +0000
commit8785a08f1cf6845e6b84951f835d3fbb20acc0d3 (patch)
tree1688baff7d59c08e5335952f18419907597f1b30
parentd5cbfc067ed9a1ff30c4b40f4b9c7ab4ce16c173 (diff)
downloadportage-8785a08f1cf6845e6b84951f835d3fbb20acc0d3.tar.gz
portage-8785a08f1cf6845e6b84951f835d3fbb20acc0d3.tar.bz2
portage-8785a08f1cf6845e6b84951f835d3fbb20acc0d3.zip
Entirely disable the src_configure phase from the python side for EAPI values
for which it's not supported. This avoids pointless spawning of ebuild.sh and also avoids having bashrc called during an invalid phase as reported by Arfrever. svn path=/main/trunk/; revision=11398
-rwxr-xr-xbin/ebuild.sh1
-rw-r--r--pym/_emerge/__init__.py8
2 files changed, 7 insertions, 2 deletions
diff --git a/bin/ebuild.sh b/bin/ebuild.sh
index 7110c4257..8a0adf742 100755
--- a/bin/ebuild.sh
+++ b/bin/ebuild.sh
@@ -857,7 +857,6 @@ abort_install() {
}
dyn_configure() {
- hasq "$EAPI" 0 1 2_pre1 && return 0
if [[ $PORTAGE_BUILDDIR/.configured -nt $WORKDIR ]] ; then
vecho ">>> It appears that '$PF' is already configured; skipping."
diff --git a/pym/_emerge/__init__.py b/pym/_emerge/__init__.py
index 19e6b2719..e194f948f 100644
--- a/pym/_emerge/__init__.py
+++ b/pym/_emerge/__init__.py
@@ -2657,7 +2657,13 @@ class EbuildExecuter(CompositeTask):
ebuild_phases = TaskSequence(scheduler=self.scheduler)
- for phase in self._phases:
+ pkg = self.pkg
+ phases = self._phases
+ if pkg.metadata["EAPI"] in ("0", "1", "2_pre1"):
+ # skip src_configure
+ phases = phases[1:]
+
+ for phase in phases:
ebuild_phases.add(EbuildPhase(background=self.background,
pkg=self.pkg, phase=phase, scheduler=self.scheduler,
settings=self.settings, tree=self._tree))