From a5a956924fa92a6fb801834223aa8d727e9a8e51 Mon Sep 17 00:00:00 2001 From: Fabian Groffen Date: Thu, 11 Feb 2010 19:05:09 +0000 Subject: [PATCH] Merged from trunk -r15336 and -r15339 | 15336 | Ignore blockers in DEPEND of built packages when | | zmedico | --with-bdeps is enabled. | | 15339 | Make previous commit use eerror for logging. | | zmedico | | svn path=/main/branches/prefix/; revision=15340 --- pym/_emerge/depgraph.py | 22 ++++++++++++++++------ pym/portage/dbapi/vartree.py | 5 ++--- 2 files changed, 18 insertions(+), 9 deletions(-) diff --git a/pym/_emerge/depgraph.py b/pym/_emerge/depgraph.py index 766b188fd..eb7463a92 100644 --- a/pym/_emerge/depgraph.py +++ b/pym/_emerge/depgraph.py @@ -1140,9 +1140,14 @@ class depgraph(object): deps = ( (bdeps_root, edepend["DEPEND"], self._priority(buildtime=(not bdeps_optional), - optional=bdeps_optional)), - (myroot, edepend["RDEPEND"], self._priority(runtime=True)), - (myroot, edepend["PDEPEND"], self._priority(runtime_post=True)) + optional=bdeps_optional), + pkg.built), + (myroot, edepend["RDEPEND"], + self._priority(runtime=True), + False), + (myroot, edepend["PDEPEND"], + self._priority(runtime_post=True), + False) ) debug = "--debug" in self._frozen_config.myopts @@ -1151,7 +1156,7 @@ class depgraph(object): if not strict: portage.dep._dep_check_strict = False - for dep_root, dep_string, dep_priority in deps: + for dep_root, dep_string, dep_priority, ignore_blockers in deps: if not dep_string: continue if debug: @@ -1186,7 +1191,7 @@ class depgraph(object): if not self._add_pkg_dep_string( pkg, dep_root, dep_priority, dep_string, - allow_unsatisfied): + allow_unsatisfied, ignore_blockers=ignore_blockers): return 0 except portage.exception.AmbiguousPackageName as e: @@ -1213,7 +1218,7 @@ class depgraph(object): return 1 def _add_pkg_dep_string(self, pkg, dep_root, dep_priority, dep_string, - allow_unsatisfied): + allow_unsatisfied, ignore_blockers=False): depth = pkg.depth + 1 debug = "--debug" in self._frozen_config.myopts strict = pkg.type_name != "installed" @@ -1248,6 +1253,11 @@ class depgraph(object): for atom, child in self._minimize_children( pkg, dep_priority, root_config, selected_atoms[pkg]): + if ignore_blockers and atom.blocker: + # For --with-bdeps, ignore build-time only blockers + # that originate from built packages. + continue + mypriority = dep_priority.copy() if not atom.blocker and vardb.match(atom): mypriority.satisfied = True diff --git a/pym/portage/dbapi/vartree.py b/pym/portage/dbapi/vartree.py index f82fc0374..89df6e73f 100644 --- a/pym/portage/dbapi/vartree.py +++ b/pym/portage/dbapi/vartree.py @@ -3454,9 +3454,8 @@ class dblink(object): # in a totally undefined state, hence we just bleed # like hell and continue to hopefully finish all our # administrative and pkg_postinst stuff. - showMessage(colorize("WARN", _("WARNING:")) - + " Could not chmod or unlink %s: %s\n" % (file_name, ose), - level=logging.WARN, noiselevel=-1) + self._eerror("postrm", + "Could not chmod or unlink '%s': %s\n" % (file_name, ose)) finally: if bsd_chflags and pflags != 0: # Restore the parent flags we saved before unlinking -- 2.26.2