From 8785a08f1cf6845e6b84951f835d3fbb20acc0d3 Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Mon, 11 Aug 2008 19:50:57 +0000 Subject: [PATCH] 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 --- bin/ebuild.sh | 1 - pym/_emerge/__init__.py | 8 +++++++- 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)) -- 2.26.2