From f87eb370c6842ccf5c0df59d55e3df5f0131f42b Mon Sep 17 00:00:00 2001
From: Guillem Jover <guillem@debian.org>
Date: Sat, 5 Sep 2015 02:24:47 +0200
Subject: [PATCH] c/binaries: Improve shared-lib-without-dependency-information
 tag
Debbug: 798063
Status: applied

Ignore kFreeBSD kernel modules, syslinux modules, and fix the regex
matching the dynamic linker when used with multiarch paths.

Signed-off-by: Guillem Jover <guillem@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

