diff options
author | Zac Medico <zmedico@gentoo.org> | 2009-10-14 05:07:03 +0000 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2009-10-14 05:07:03 +0000 |
commit | bffaa1aee41647cc274d70c840366ac9a171db86 (patch) | |
tree | e60a90ec8767fbe0a201d19bc80055e4f08a81f4 | |
parent | 85ca42405c1114111defb777cfd4f94725708b28 (diff) | |
download | portage-bffaa1aee41647cc274d70c840366ac9a171db86.tar.gz portage-bffaa1aee41647cc274d70c840366ac9a171db86.tar.bz2 portage-bffaa1aee41647cc274d70c840366ac9a171db86.zip |
When --depclean pulls in the provider of a library because of installed
consumers, display the soname(s) of the consumed libraries.
svn path=/main/trunk/; revision=14599
-rw-r--r-- | pym/_emerge/actions.py | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/pym/_emerge/actions.py b/pym/_emerge/actions.py index 9788c0857..78d477945 100644 --- a/pym/_emerge/actions.py +++ b/pym/_emerge/actions.py @@ -1032,13 +1032,20 @@ def calc_depclean(settings, trees, ldpath_mtimes, msg = [] for pkg in sorted(consumer_map, key=cmp_sort_key(cmp_pkg_cpv)): consumers = consumer_map[pkg] + consumer_libs = {} + for lib, lib_consumers in consumers.items(): + for consumer in lib_consumers: + consumer_libs.setdefault( + consumer.mycpv, set()).add(linkmap.getSoname(lib)) unique_consumers = set(chain(*consumers.values())) unique_consumers = sorted(consumer.mycpv \ for consumer in unique_consumers) msg.append("") msg.append(" %s pulled in by:" % (pkg.cpv,)) for consumer in unique_consumers: - msg.append(" %s" % (consumer,)) + libs = consumer_libs[consumer] + msg.append(" %s needs %s" % \ + (consumer, ', '.join(sorted(libs)))) msg.append("") writemsg_level("".join(prefix + "%s\n" % line for line in msg), level=logging.WARNING, noiselevel=-1) |