summaryrefslogtreecommitdiff
path: root/pym
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2009-03-27 04:16:04 +0000
committerZac Medico <zmedico@gentoo.org>2009-03-27 04:16:04 +0000
commit4ae5d2c33867348026f69f9f21418012d6967fac (patch)
treee8d0bdb7a8314a56e7e66676304d409af4a3f77a /pym
parentAdd support for FEATURES=parse-eapi-ebuild-head, which is similar to GLEP 55 (diff)
downloadportage-multirepo-4ae5d2c33867348026f69f9f21418012d6967fac.tar.gz
portage-multirepo-4ae5d2c33867348026f69f9f21418012d6967fac.tar.bz2
portage-multirepo-4ae5d2c33867348026f69f9f21418012d6967fac.zip
If a package is masked by EAPI then don't show any other masking reasons.
(trunk r13174) svn path=/main/branches/2.1.6/; revision=13204
Diffstat (limited to 'pym')
-rw-r--r--pym/_emerge/__init__.py12
1 files changed, 9 insertions, 3 deletions
diff --git a/pym/_emerge/__init__.py b/pym/_emerge/__init__.py
index c9480d3d..86667a79 100644
--- a/pym/_emerge/__init__.py
+++ b/pym/_emerge/__init__.py
@@ -1422,9 +1422,15 @@ def get_mask_info(root_config, cpv, pkgsettings,
if metadata is None:
mreasons = ["corruption"]
else:
- pkg = Package(type_name=pkg_type, root_config=root_config,
- cpv=cpv, built=built, installed=installed, metadata=metadata)
- mreasons = get_masking_status(pkg, pkgsettings, root_config)
+ eapi = metadata['EAPI']
+ if eapi[:1] == '-':
+ eapi = eapi[1:]
+ if not portage.eapi_is_supported(eapi):
+ mreasons = ['EAPI %s' % eapi]
+ else:
+ pkg = Package(type_name=pkg_type, root_config=root_config,
+ cpv=cpv, built=built, installed=installed, metadata=metadata)
+ mreasons = get_masking_status(pkg, pkgsettings, root_config)
return metadata, mreasons
def show_masked_packages(masked_packages):