diff options
author | Michał Górny <mgorny@gentoo.org> | 2019-12-26 15:12:27 +0100 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2021-05-23 22:43:36 -0700 |
commit | 96f7e7870254d6f904d51a19e527541e6e3b6d61 (patch) | |
tree | a363965904a539eaee2f173f8fbea0efd1a130a7 /lib/_emerge | |
parent | Support selective fetch restriction in emirrordist (diff) | |
download | portage-96f7e7870254d6f904d51a19e527541e6e3b6d61.tar.gz portage-96f7e7870254d6f904d51a19e527541e6e3b6d61.tar.bz2 portage-96f7e7870254d6f904d51a19e527541e6e3b6d61.zip |
Initial IDEPEND support (for EAPI 8)
Signed-off-by: Michał Górny <mgorny@gentoo.org>
Signed-off-by: Zac Medico <zmedico@gentoo.org>
Diffstat (limited to 'lib/_emerge')
-rw-r--r-- | lib/_emerge/Package.py | 8 | ||||
-rw-r--r-- | lib/_emerge/actions.py | 3 | ||||
-rw-r--r-- | lib/_emerge/depgraph.py | 7 |
3 files changed, 12 insertions, 6 deletions
diff --git a/lib/_emerge/Package.py b/lib/_emerge/Package.py index 0ee25b90a..e8809a89d 100644 --- a/lib/_emerge/Package.py +++ b/lib/_emerge/Package.py @@ -1,4 +1,4 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 from itertools import chain @@ -32,15 +32,15 @@ class Package(Task): metadata_keys = [ "BDEPEND", "BUILD_ID", "BUILD_TIME", "CHOST", "COUNTER", "DEFINED_PHASES", - "DEPEND", "EAPI", "INHERITED", "IUSE", "KEYWORDS", + "DEPEND", "EAPI", "IDEPEND", "INHERITED", "IUSE", "KEYWORDS", "LICENSE", "MD5", "PDEPEND", "PROVIDES", "RDEPEND", "repository", "REQUIRED_USE", "PROPERTIES", "REQUIRES", "RESTRICT", "SIZE", "SLOT", "USE", "_mtime_"] - _dep_keys = ('BDEPEND', 'DEPEND', 'PDEPEND', 'RDEPEND') + _dep_keys = ('BDEPEND', 'DEPEND', 'IDEPEND', 'PDEPEND', 'RDEPEND') _buildtime_keys = ('BDEPEND', 'DEPEND') - _runtime_keys = ('PDEPEND', 'RDEPEND') + _runtime_keys = ('IDEPEND', 'PDEPEND', 'RDEPEND') _use_conditional_misc_keys = ('LICENSE', 'PROPERTIES', 'RESTRICT') UNKNOWN_REPO = _unknown_repo diff --git a/lib/_emerge/actions.py b/lib/_emerge/actions.py index c078e1ab3..1946f49df 100644 --- a/lib/_emerge/actions.py +++ b/lib/_emerge/actions.py @@ -1,4 +1,4 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 import collections @@ -1368,6 +1368,7 @@ def _calc_depclean(settings, trees, ldpath_mtimes, runtime_post = UnmergeDepPriority(runtime_post=True) buildtime = UnmergeDepPriority(buildtime=True) priority_map = { + "IDEPEND": runtime, "RDEPEND": runtime, "PDEPEND": runtime_post, "BDEPEND": buildtime, diff --git a/lib/_emerge/depgraph.py b/lib/_emerge/depgraph.py index 2bf04406f..0f47f00a6 100644 --- a/lib/_emerge/depgraph.py +++ b/lib/_emerge/depgraph.py @@ -1,4 +1,4 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 import errno @@ -3392,11 +3392,13 @@ class depgraph: "deep" not in self._dynamic_config.myparams: edepend["RDEPEND"] = "" edepend["PDEPEND"] = "" + edepend["IDEPEND"] = "" if pkg.onlydeps and \ self._frozen_config.myopts.get("--onlydeps-with-rdeps") == 'n': edepend["RDEPEND"] = "" edepend["PDEPEND"] = "" + edepend["IDEPEND"] = "" ignore_build_time_deps = False if pkg.built and not removal_action: @@ -3452,6 +3454,8 @@ class depgraph: deps = ( (myroot, edepend["RDEPEND"], self._priority(runtime=True)), + (self._frozen_config._running_root.root, edepend["IDEPEND"], + self._priority(runtime=True)), (myroot, edepend["PDEPEND"], self._priority(runtime_post=True)), (depend_root, edepend["DEPEND"], @@ -5156,6 +5160,7 @@ class depgraph: dep_strings.add(node._metadata[k]) if priority.runtime: dep_strings.add(node._metadata["RDEPEND"]) + dep_strings.add(node._metadata["IDEPEND"]) if priority.runtime_post: dep_strings.add(node._metadata["PDEPEND"]) |