Entirely disable the src_configure phase from the python side for EAPI values
authorZac Medico <zmedico@gentoo.org>
Mon, 11 Aug 2008 19:50:57 +0000 (19:50 -0000)
committerZac Medico <zmedico@gentoo.org>
Mon, 11 Aug 2008 19:50:57 +0000 (19:50 -0000)
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

bin/ebuild.sh
pym/_emerge/__init__.py

index 7110c42570d0a0e1f1244e00b1a9338ea7e5eda4..8a0adf742a6e225d33395ed0569d982e6f0536ca 100755 (executable)
@@ -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."
index 19e6b27197f5346daf08422c180dc5e377e2fd5f..e194f948ffa82f6d74a7eac4672141b5e96be337 100644 (file)
@@ -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))