summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2010-03-09 21:09:34 +0000
committerZac Medico <zmedico@gentoo.org>2010-03-09 21:09:34 +0000
commitb0070b9eef8ab713632c9341942082ee994af0a6 (patch)
tree3ffdd745bc8f46c34d36c6f8222dd1bbac2bdb7f
parent2ffbd895023cb0316c826e5ed85a13f37555e6ab (diff)
downloadportage-b0070b9eef8ab713632c9341942082ee994af0a6.tar.gz
portage-b0070b9eef8ab713632c9341942082ee994af0a6.tar.bz2
portage-b0070b9eef8ab713632c9341942082ee994af0a6.zip
Disable implicit libc deps for ROOT != "/" since it's probably not needed.
svn path=/main/trunk/; revision=15809
-rw-r--r--pym/_emerge/Scheduler.py7
-rw-r--r--pym/_emerge/depgraph.py2
2 files changed, 6 insertions, 3 deletions
diff --git a/pym/_emerge/Scheduler.py b/pym/_emerge/Scheduler.py
index c35c2eaba..46767e47b 100644
--- a/pym/_emerge/Scheduler.py
+++ b/pym/_emerge/Scheduler.py
@@ -425,6 +425,7 @@ class Scheduler(PollScheduler):
list contains both a new-style virtual and an old-style PROVIDE
virtual, the new-style virtual is used.
"""
+ implicit_libc_roots = set([self._running_root.root])
libc_set = InternalPackageSet([LIBC_PACKAGE_ATOM])
norm_libc_pkgs = {}
virt_libc_pkgs = {}
@@ -434,7 +435,8 @@ class Scheduler(PollScheduler):
continue
if pkg.installed:
continue
- if pkg.operation == 'merge':
+ if pkg.root in implicit_libc_roots and \
+ pkg.operation == 'merge':
if libc_set.findAtomForPackage(pkg):
if pkg.category == 'virtual':
d = virt_libc_pkgs
@@ -458,7 +460,8 @@ class Scheduler(PollScheduler):
continue
if pkg.installed:
continue
- if pkg.operation == 'merge':
+ if pkg.root in implicit_libc_roots and \
+ pkg.operation == 'merge':
if pkg in libc_pkgs:
earlier_libc_pkgs.add(pkg)
else:
diff --git a/pym/_emerge/depgraph.py b/pym/_emerge/depgraph.py
index e34d6d021..d096c4358 100644
--- a/pym/_emerge/depgraph.py
+++ b/pym/_emerge/depgraph.py
@@ -3363,7 +3363,7 @@ class depgraph(object):
# Merge libc asap, in order to account for implicit
# dependencies. See bug #303567.
- for root in self._dynamic_config.mydbapi:
+ for root in (running_root,):
libc_pkg = self._dynamic_config.mydbapi[root].match_pkgs(
portage.const.LIBC_PACKAGE_ATOM)
if libc_pkg: