-# Copyright 1999-2010 Gentoo Foundation
+# Copyright 1999-2011 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
from _emerge.DependencyArg import DependencyArg
+from _emerge.Package import Package
import portage
from portage._sets.base import InternalPackageSet
from portage.dep import _repo_separator
DependencyArg.__init__(self, **kwargs)
self.package = package
atom = "=" + package.cpv
- if package.type_name == 'ebuild':
+ if package.repo != Package.UNKNOWN_REPO:
atom += _repo_separator + package.repo
self.atom = portage.dep.Atom(atom, allow_repo=True)
self.pset = InternalPackageSet(initial_atoms=(self.atom,),
'KeywordsManager',
)
+from _emerge.Package import Package
from portage import os
from portage.dep import ExtendedAtomDict, _repo_separator, _slot_separator
from portage.localization import _
def getKeywords(self, cpv, slot, keywords, repo):
cp = cpv_getkey(cpv)
pkg = "".join((cpv, _slot_separator, slot))
- if repo:
+ if repo and repo != Package.UNKNOWN_REPO:
pkg = "".join((pkg, _repo_separator, repo))
keywords = [[x for x in keywords.split() if x != "-*"]]
for pkeywords_dict in self._pkeywords_list:
from portage.dep import ExtendedAtomDict, match_from_list, _repo_separator, _slot_separator
from portage.util import append_repo, grabfile_package, stack_lists
from portage.versions import cpv_getkey
+from _emerge.Package import Package
class MaskManager(object):
mask_atoms = self._pmaskdict.get(cp)
if mask_atoms:
pkg = "".join((cpv, _slot_separator, slot))
- if repo:
+ if repo and repo != Package.UNKNOWN_REPO:
pkg = "".join((pkg, _repo_separator, repo))
pkg_list = [pkg]
for x in mask_atoms:
-# Copyright 2010 Gentoo Foundation
+# Copyright 2010-2011 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
__all__ = (
'ordered_by_atom_specificity', 'prune_incremental',
)
+from _emerge.Package import Package
from portage.dep import best_match_to_list, _repo_separator
def ordered_by_atom_specificity(cpdict, pkg, repo=None):
order to achieve desired results (and thus corrupting
the ChangeLog like ordering of the file).
"""
- if repo is not None:
+ if repo and repo != Package.UNKNOWN_REPO:
pkg = pkg + _repo_separator + repo
results = []
profile_atoms = self.prevmaskdict.get(cp)
if profile_atoms:
pkg = "".join((cpv, _slot_separator, metadata["SLOT"]))
- if 'repository' in metadata:
- pkg = "".join((pkg, _repo_separator, metadata['repository']))
+ repo = metadata.get("repository")
+ if repo and repo != Package.UNKNOWN_REPO:
+ pkg = "".join((pkg, _repo_separator, repo))
pkg_list = [pkg]
for x in profile_atoms:
if match_from_list(x, pkg_list):
from portage.localization import _
from portage.package.ebuild.config import config
from portage.versions import catpkgsplit, cpv_getkey
+from _emerge.Package import Package
if sys.hexversion >= 0x3000000:
basestring = str
matches = False
if pkgdict:
pkg = "".join((mycpv, _slot_separator, metadata["SLOT"]))
- if 'repository' in metadata:
- pkg = "".join((pkg, _repo_separator, metadata['repository']))
+ if myrepo is None:
+ myrepo = metadata.get("repository")
+ if myrepo is not None and myrepo != Package.UNKNOWN_REPO:
+ pkg = "".join((pkg, _repo_separator, myrepo))
cpv_slot_list = [pkg]
for atom, pkgkeywords in pkgdict.items():
if match_from_list(atom, cpv_slot_list):