Package: lintian Version: 2.5.36 Severity: normal Tags: patch Hi!
The shared-lib-without-dependency-information tag has many overriden entries (1944 currently). Here's a patch which gets rid of many of them by ignoring kFreeBSD kernel modules, syslinux modules, and fixes the regex matching the dynamic linker when used with multiarch paths. I've tested the specific lines standalone, but not in lintian itself. Thanks, Guillem
From f87eb370c6842ccf5c0df59d55e3df5f0131f42b Mon Sep 17 00:00:00 2001 From: Guillem Jover <guil...@debian.org> Date: Sat, 5 Sep 2015 02:24:47 +0200 Subject: [PATCH] c/binaries: Improve shared-lib-without-dependency-information tag Ignore kFreeBSD kernel modules, syslinux modules, and fix the regex matching the dynamic linker when used with multiarch paths. Signed-off-by: Guillem Jover <guil...@debian.org> --- checks/binaries.pm | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/checks/binaries.pm b/checks/binaries.pm index 57ca2f0..0ca8d7c 100644 --- a/checks/binaries.pm +++ b/checks/binaries.pm @@ -479,13 +479,15 @@ sub run { # statically linked? if (!scalar(@{ $objdump->{NEEDED} })) { if ($fileinfo =~ m/shared object/o) { - # Some exceptions: kernel modules, detached debugging - # information and the dynamic loader (which itself has - # no dependencies). + # Some exceptions: kernel modules, syslinux modules, detached + # debugging information and the dynamic loader (which itself + # has no dependencies). + next if ($fname =~ m%^boot/modules/%); next if ($fname =~ m%^lib/modules/%); next if ($fname =~ m%^usr/lib/debug/%); + next if ($fname =~ m%\.(?:[ce]32|e64)$%); next - if ($fname =~ m%^lib(?:|32|64)/(?:[\w/]+/)?ld-[\d.]+\.so$%); + if ($fname =~ m%^lib(?:|32|x32|64)/(?:[-\w/]+/)?ld-[\d.]+\.so$%); tag 'shared-lib-without-dependency-information', $file; } else { # Some exceptions: files in /boot, /usr/lib/debug/*, -- 2.5.1