summaryrefslogtreecommitdiffstats
path: root/pym
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2011-01-30 15:08:22 -0800
committerZac Medico <zmedico@gentoo.org>2011-01-30 15:08:22 -0800
commita512ab7996d7346dc4d058ba49f8442dc5c0e705 (patch)
tree7296fb6e2979d72dfc49d280650835fdb3c45539 /pym
parentea8827f3893cc8324adbac03c6fa63398598ab01 (diff)
downloadportage-a512ab7996d7346dc4d058ba49f8442dc5c0e705.tar.gz
portage-a512ab7996d7346dc4d058ba49f8442dc5c0e705.tar.bz2
portage-a512ab7996d7346dc4d058ba49f8442dc5c0e705.zip
Fix keywords breakage from last 2 commits.
Diffstat (limited to 'pym')
-rw-r--r--pym/portage/package/ebuild/_config/KeywordsManager.py16
-rw-r--r--pym/portage/package/ebuild/config.py7
2 files changed, 21 insertions, 2 deletions
diff --git a/pym/portage/package/ebuild/_config/KeywordsManager.py b/pym/portage/package/ebuild/_config/KeywordsManager.py
index 8a6b4bd6e..b01604e66 100644
--- a/pym/portage/package/ebuild/_config/KeywordsManager.py
+++ b/pym/portage/package/ebuild/_config/KeywordsManager.py
@@ -1,4 +1,4 @@
-# Copyright 2010 Gentoo Foundation
+# Copyright 2010-2011 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
__all__ = (
@@ -130,6 +130,20 @@ class KeywordsManager(object):
egroups = self._getEgroups(backuped_accept_keywords)
pgroups.extend(egroups)
+ if unmaskgroups or egroups:
+ inc_pgroups = set()
+ for x in pgroups:
+ if x[:1] == "-":
+ if x == "-*":
+ inc_pgroups.clear()
+ else:
+ inc_pgroups.discard(x[1:])
+ else:
+ inc_pgroups.add(x)
+ pgroups = inc_pgroups
+ else:
+ pgroups = set(pgroups)
+
return self._getMissingKeywords(cpv, pgroups, mygroups)
diff --git a/pym/portage/package/ebuild/config.py b/pym/portage/package/ebuild/config.py
index 2cb63c19d..74dcb3dc4 100644
--- a/pym/portage/package/ebuild/config.py
+++ b/pym/portage/package/ebuild/config.py
@@ -1,4 +1,4 @@
-# Copyright 2010 Gentoo Foundation
+# Copyright 2010-2011 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
__all__ = [
@@ -1476,6 +1476,11 @@ class config(object):
metadata.get("KEYWORDS", ""), metadata.get('repository'), \
self["ARCH"], backuped_accept_keywords)
+ def _getPKeywords(self, cpv, metadata):
+ global_accept_keywords = self.get("ACCEPT_KEYWORDS", "")
+
+ return self._keywords_manager.getPKeywords(cpv, metadata["SLOT"], \
+ metadata.get('repository'), global_accept_keywords)
def _getMissingLicenses(self, cpv, metadata):
"""