Bug #303567 - Merge libc asap, in order to account for implicit dependencies.
authorZac Medico <zmedico@gentoo.org>
Wed, 17 Feb 2010 03:50:39 +0000 (03:50 -0000)
committerZac Medico <zmedico@gentoo.org>
Wed, 17 Feb 2010 03:50:39 +0000 (03:50 -0000)
svn path=/main/trunk/; revision=15362

pym/_emerge/depgraph.py
pym/portage/const.py

index fd9fe12bdb6888eaf4ee2116e236a4bf43a407f0..7a4872424757d2cf801fcc69a5b35404d52b3d9c 100644 (file)
@@ -3335,6 +3335,15 @@ class depgraph(object):
                                runtime_deps.update(atom for atom in atoms \
                                        if not atom.blocker)
 
+               # Merge libc asap, in order to account for implicit
+               # dependencies. See bug #303567.
+               libc_pkg = self._dynamic_config.mydbapi[running_root].match_pkgs(
+                       portage.const.LIBC_PACKAGE_ATOM)
+               if libc_pkg:
+                       libc_pkg = libc_pkg[0]
+                       if libc_pkg.operation == 'merge':
+                               asap_nodes.append(libc_pkg)
+
                def gather_deps(ignore_priority, mergeable_nodes,
                        selected_nodes, node):
                        """
index 8d06bb31adc077cff8019043eac22b920cad6fd2..95ea76cb90a1910232097e3cf333b7caf76a486b 100644 (file)
@@ -71,6 +71,7 @@ REPO_NAME_FILE           = "repo_name"
 REPO_NAME_LOC            = "profiles" + "/" + REPO_NAME_FILE
 
 PORTAGE_PACKAGE_ATOM     = "sys-apps/portage"
+LIBC_PACKAGE_ATOM        = "virtual/libc"
 
 INCREMENTALS             = ("USE", "USE_EXPAND", "USE_EXPAND_HIDDEN",
                            "FEATURES", "ACCEPT_KEYWORDS",