Package: dpkg-dev Version: 1.16.1.2 Severity: minor I have always found this messages to be grammatically confusing:
dependency on %s could be avoided if \"%s\" were not uselessly linked against it (they use none of its symbols). The second %s is most often a single item, which makes the references to "they" and "it" in the parentheses very confusing. I propose the attached patch to make the messages clearer and properly pluralized using the translation framework that you are already using. I also removed the quotes and converted the item into a comma-separated list. The new wordings would be: dependency on %s could be avoided if %s was not uselessly linked against it (it uses none of the library's symbols). dependency on %s could be avoided if %s were not uselessly linked against it (they use none of the library's symbols).
diff -Nru dpkg-1.16.1.2/debian/changelog dpkg-1.16.1.2+nmu1/debian/changelog --- dpkg-1.16.1.2/debian/changelog +++ dpkg-1.16.1.2+nmu1/debian/changelog @@ -1,3 +1,9 @@ +dpkg (1.16.1.2+nmu1) UNRELEASED; urgency=low + + * Improve message of dpkg-shlibdeps about useless libraries + + -- Peter Eisentraut <pet...@debian.org> Mon, 16 Jan 2012 20:00:13 +0200 + dpkg (1.16.1.2) unstable; urgency=medium [ Raphaƫl Hertzog ] diff -Nru dpkg-1.16.1.2/scripts/dpkg-shlibdeps.pl dpkg-1.16.1.2+nmu1/scripts/dpkg-shlibdeps.pl --- dpkg-1.16.1.2/scripts/dpkg-shlibdeps.pl +++ dpkg-1.16.1.2+nmu1/scripts/dpkg-shlibdeps.pl @@ -406,7 +406,7 @@ next if ($soname =~ /^libm\.so\.\d+$/ and scalar grep(/^libstdc\+\+\.so\.\d+/, @sonames)); next unless ($warnings & WARN_NOT_NEEDED); - warning(_g("%s shouldn't be linked with %s (it uses none of its " . + warning(_g("%s shouldn't be linked with %s (it uses none of the library's " . "symbols)."), $file, $soname); } } @@ -419,10 +419,11 @@ next if ($soname =~ /^libm\.so\.\d+$/ and scalar( grep(/^libstdc\+\+\.so\.\d+/, keys %global_soname_needed))); next unless ($warnings & WARN_DEP_AVOIDABLE); - warning(_g("dependency on %s could be avoided if \"%s\" were not " . - "uselessly linked against it (they use none of its " . - "symbols)."), $soname, - join(" ", @{$global_soname_needed{$soname}})); + warning(P_("dependency on %s could be avoided if %s was not uselessly linked against it (it uses none of the library's symbols).", + "dependency on %s could be avoided if %s were not uselessly linked against it (they use none of the library's symbols).", + scalar @{$global_soname_needed{$soname}}), + $soname, + join(", ", @{$global_soname_needed{$soname}})); } }