summaryrefslogtreecommitdiffstats
path: root/bin/emerge
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2008-04-10 20:46:56 +0000
committerZac Medico <zmedico@gentoo.org>2008-04-10 20:46:56 +0000
commite8da72a911815b217148b9034d56ba43dca457f4 (patch)
tree2b6079aab6dbc963ade21df18525721fc44f5841 /bin/emerge
parenta3736fb3ea872892b02ecdaf4b6453e27d92afcf (diff)
downloadportage-e8da72a911815b217148b9034d56ba43dca457f4.tar.gz
portage-e8da72a911815b217148b9034d56ba43dca457f4.tar.bz2
portage-e8da72a911815b217148b9034d56ba43dca457f4.zip
Make the CHOST visibility check tolerant of missing CHOST metadata.
(trunk r9817) svn path=/main/branches/2.1.2/; revision=9818
Diffstat (limited to 'bin/emerge')
-rwxr-xr-xbin/emerge16
1 files changed, 9 insertions, 7 deletions
diff --git a/bin/emerge b/bin/emerge
index 26061908c..1e445aed7 100755
--- a/bin/emerge
+++ b/bin/emerge
@@ -1257,9 +1257,10 @@ def visible(pkgsettings, pkg):
"""
if not pkg.metadata["SLOT"]:
return False
- if pkg.built and not pkg.installed and \
- pkg.metadata["CHOST"] != pkgsettings["CHOST"]:
- return False
+ if pkg.built and not pkg.installed:
+ pkg_chost = pkg.metadata.get("CHOST")
+ if pkg_chost and pkg_chost != pkgsettings["CHOST"]:
+ return False
if not portage.eapi_is_supported(pkg.metadata["EAPI"]):
return False
if not pkg.installed and \
@@ -1277,10 +1278,11 @@ def get_masking_status(pkg, pkgsettings, root_config):
pkg, settings=pkgsettings,
portdb=root_config.trees["porttree"].dbapi)
- if pkg.built and not pkg.installed and \
- pkg.metadata["CHOST"] != root_config.settings["CHOST"]:
- mreasons.append("CHOST: %s" % \
- pkg.metadata["CHOST"])
+ if pkg.built and not pkg.installed:
+ pkg_chost = pkg.metadata.get("CHOST")
+ if pkg_chost and pkg_chost != pkgsettings["CHOST"]:
+ mreasons.append("CHOST: %s" % \
+ pkg.metadata["CHOST"])
if not pkg.metadata["SLOT"]:
mreasons.append("invalid: SLOT is undefined")