From d964e92c4da5d7b515e298454a22d54b37ff57b9 Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Mon, 4 Aug 2008 17:54:12 +0000 Subject: Bug #233735 - Add support for src_configure and default_* functions with new EAPI=2_pre2. Thanks to Arfrever Frehtes Taifersar Arahesis for the initial patch which I've made a few adjustments to. svn path=/main/trunk/; revision=11327 --- pym/_emerge/__init__.py | 2 +- pym/portage/__init__.py | 25 +++++++++++++++---------- pym/portage/const.py | 3 ++- 3 files changed, 18 insertions(+), 12 deletions(-) (limited to 'pym') diff --git a/pym/_emerge/__init__.py b/pym/_emerge/__init__.py index 1d86b0f14..b00dc5b30 100644 --- a/pym/_emerge/__init__.py +++ b/pym/_emerge/__init__.py @@ -2587,7 +2587,7 @@ class EbuildExecuter(CompositeTask): __slots__ = ("pkg", "scheduler", "settings") + ("_tree",) - _phases = ("compile", "test", "install") + _phases = ("configure", "compile", "test", "install") _live_eclasses = frozenset([ "cvs", diff --git a/pym/portage/__init__.py b/pym/portage/__init__.py index f7abfe6c1..95b8bd56f 100644 --- a/pym/portage/__init__.py +++ b/pym/portage/__init__.py @@ -4544,8 +4544,10 @@ def _spawn_misc_sh(mysettings, commands, **kwargs): def eapi_is_supported(eapi): eapi = str(eapi).strip() - if eapi == "2_pre1": + + if eapi in ("2_pre2", "2_pre1"): return True + try: eapi = int(eapi) except ValueError: @@ -5042,7 +5044,8 @@ def doebuild(myebuild, mydo, myroot, mysettings, debug=0, listonly=0, actionmap_deps={ "setup": [], "unpack": ["setup"], - "compile":["unpack"], + "configure": ["unpack"], + "compile":["configure"], "test": ["compile"], "install":["test"], "rpm": ["install"], @@ -5063,7 +5066,8 @@ def doebuild(myebuild, mydo, myroot, mysettings, debug=0, listonly=0, validcommands = ["help","clean","prerm","postrm","cleanrm","preinst","postinst", "config", "info", "setup", "depend", "fetch", "fetchall", "digest", - "unpack","compile","test","install","rpm","qmerge","merge", + "unpack", "configure", "compile", "test", + "install", "rpm", "qmerge", "merge", "package","unmerge", "manifest"] if mydo not in validcommands: @@ -5617,13 +5621,14 @@ def doebuild(myebuild, mydo, myroot, mysettings, debug=0, listonly=0, # args are for the to spawn function actionmap = { -"setup": {"cmd":ebuild_sh, "args":{"droppriv":0, "free":1, "sesandbox":0, "fakeroot":0}}, -"unpack": {"cmd":ebuild_sh, "args":{"droppriv":droppriv, "free":0, "sesandbox":sesandbox, "fakeroot":0}}, -"compile":{"cmd":ebuild_sh, "args":{"droppriv":droppriv, "free":nosandbox, "sesandbox":sesandbox, "fakeroot":0}}, -"test": {"cmd":ebuild_sh, "args":{"droppriv":droppriv, "free":nosandbox, "sesandbox":sesandbox, "fakeroot":0}}, -"install":{"cmd":ebuild_sh, "args":{"droppriv":0, "free":0, "sesandbox":sesandbox, "fakeroot":fakeroot}}, -"rpm": {"cmd":misc_sh, "args":{"droppriv":0, "free":0, "sesandbox":0, "fakeroot":fakeroot}}, -"package":{"cmd":misc_sh, "args":{"droppriv":0, "free":0, "sesandbox":0, "fakeroot":fakeroot}}, +"setup": {"cmd":ebuild_sh, "args":{"droppriv":0, "free":1, "sesandbox":0, "fakeroot":0}}, +"unpack": {"cmd":ebuild_sh, "args":{"droppriv":droppriv, "free":0, "sesandbox":sesandbox, "fakeroot":0}}, +"configure":{"cmd":ebuild_sh, "args":{"droppriv":droppriv, "free":nosandbox, "sesandbox":sesandbox, "fakeroot":0}}, +"compile": {"cmd":ebuild_sh, "args":{"droppriv":droppriv, "free":nosandbox, "sesandbox":sesandbox, "fakeroot":0}}, +"test": {"cmd":ebuild_sh, "args":{"droppriv":droppriv, "free":nosandbox, "sesandbox":sesandbox, "fakeroot":0}}, +"install": {"cmd":ebuild_sh, "args":{"droppriv":0, "free":0, "sesandbox":sesandbox, "fakeroot":fakeroot}}, +"rpm": {"cmd":misc_sh, "args":{"droppriv":0, "free":0, "sesandbox":0, "fakeroot":fakeroot}}, +"package": {"cmd":misc_sh, "args":{"droppriv":0, "free":0, "sesandbox":0, "fakeroot":fakeroot}}, } # merge the deps in so we have again a 'full' actionmap diff --git a/pym/portage/const.py b/pym/portage/const.py index 26eddd596..19d858b11 100644 --- a/pym/portage/const.py +++ b/pym/portage/const.py @@ -55,7 +55,8 @@ INCREMENTALS = ["USE", "USE_EXPAND", "USE_EXPAND_HIDDEN", "FEATURES", "ACCEPT_KEYWORDS", "ACCEPT_LICENSE", "CONFIG_PROTECT_MASK", "CONFIG_PROTECT", "PRELINK_PATH", "PRELINK_PATH_MASK", "PROFILE_ONLY_VARIABLES"] -EBUILD_PHASES = ["setup", "unpack", "compile", "test", "install", +EBUILD_PHASES = ["setup", "unpack", "configure", + "compile", "test", "install", "package", "preinst", "postinst","prerm", "postrm", "other"] -- cgit v1.2.3-1-g7c22