Author: jeroen
Date: 2006-03-18 02:38:38 +0100 (Sat, 18 Mar 2006)
New Revision: 583

Added:
   trunk/testset/libbaz/debian/lib.shlibs
Modified:
   trunk/checks/shared-libs
   trunk/debian/changelog
   trunk/testset/libbaz/debian/rules
   trunk/testset/tags.libbaz
Log:
* checks/shared-libs:
  + [JvW] Implement checks for "udeb:" lines in shlibs files
    (Closes: #357541)


Modified: trunk/checks/shared-libs
===================================================================
--- trunk/checks/shared-libs    2006-03-16 18:16:57 UTC (rev 582)
+++ trunk/checks/shared-libs    2006-03-18 01:38:38 UTC (rev 583)
@@ -271,11 +271,13 @@
        while (<SHLIBS>) {
            chop;
            next if m/^\s*$/ or /^#/;
+           my $udeb="";
+           $udeb = "udeb: " if s/^udeb:\s+//o;
            @words = split(/\s+/o,$_);
-           if ($shlibs_control{$words[0]}) {
-               tag "duplicate-entry-in-shlibs-control-file", "$words[0]";
+           if ($shlibs_control{$udeb.$words[0]}) {
+               tag "duplicate-entry-in-shlibs-control-file", "$udeb$words[0]";
            } else {
-               $shlibs_control{$words[0]} = 1;
+               $shlibs_control{$udeb.$words[0]} = 1;
            }
        }
        close(SHLIBS);
@@ -289,10 +291,9 @@
            } elsif ($shlib_name =~ m/(.+)\-\w[\w\.]*\.so$/) {
                $shlib_name = $1;
            }
-           if (exists $shlibs_control{$shlib_name}) {
-               # ok, have entry in shlibs control file
-               $shlibs_control_used{$shlib_name} = 1;
-           } else {
+           $shlibs_control_used{$shlib_name} = 1;
+           $shlibs_control_used{"udeb: ".$shlib_name} = 1;
+           unless (exists $shlibs_control{$shlib_name}) {
                # skip it if it's not a public shared library
                next unless defined $ldso_dir{dirname($shlib)};
                # no!!

Modified: trunk/debian/changelog
===================================================================
--- trunk/debian/changelog      2006-03-16 18:16:57 UTC (rev 582)
+++ trunk/debian/changelog      2006-03-18 01:38:38 UTC (rev 583)
@@ -67,6 +67,8 @@
   * checks/shared-libs:
     + [JvW] Fix postinst-must-call-ldconfig to also get emitted when there is
       no postinst at all, instead of just one lacking a ldconfig call
+    + [JvW] Implement checks for "udeb:" lines in shlibs files
+      (Closes: #357541)
 
   * debian/{control,copyright}:
     + [RA] Add Russ Allbery to Uploaders and copyright.
@@ -88,7 +90,7 @@
   * testset/runtests:
     + [RA] Filter out dpkg-source warnings about unsigned source packages.
 
- -- Russ Allbery <[EMAIL PROTECTED]>  Thu,  9 Feb 2006 11:27:55 -0800
+ -- Russ Allbery <[EMAIL PROTECTED]>  Sat, 18 Mar 2006 02:35:14 +0100
 
 lintian (1.23.15) unstable; urgency=low
   

Added: trunk/testset/libbaz/debian/lib.shlibs
===================================================================
--- trunk/testset/libbaz/debian/lib.shlibs      2006-03-16 18:16:57 UTC (rev 
582)
+++ trunk/testset/libbaz/debian/lib.shlibs      2006-03-18 01:38:38 UTC (rev 
583)
@@ -0,0 +1,4 @@
+libdoesntexist2 1.0 libbaz2
+libdoesntexist2 1.0 libbaz2
+udeb: libdoesntexist2 1.0 libbaz2
+udeb: libdoesntexist2 1.0 libbaz2

Modified: trunk/testset/libbaz/debian/rules
===================================================================
--- trunk/testset/libbaz/debian/rules   2006-03-16 18:16:57 UTC (rev 582)
+++ trunk/testset/libbaz/debian/rules   2006-03-18 01:38:38 UTC (rev 583)
@@ -38,6 +38,7 @@
 
        # and again, regular packaging stuff
        dh_installdeb -plibbaz2 -plibbaz2-dev
+       echo udeb: libbaz2 1.0 libbaz2 >> debian/libbaz2/DEBIAN/shlibs
        dh_gencontrol -plibbaz2 -plibbaz2-dev
        dh_builddeb -plibbaz2 -plibbaz2-dev
 
@@ -68,6 +69,7 @@
        install -m 755 debian/lib.prerm $(lib_tmp)/DEBIAN/prerm
        touch $(lib_tmp)/usr/share/doc/README.Debian
        #dpkg-shlibdeps $(lib_tmp)/usr/lib/libbaz.so.1.0
+       install -m 755 debian/lib.shlibs $(lib_tmp)/DEBIAN/shlibs
        dpkg-gencontrol -isp -p$(LIB) -P$(lib_tmp)
        dpkg --build $(lib_tmp) ..
 

Modified: trunk/testset/tags.libbaz
===================================================================
--- trunk/testset/tags.libbaz   2006-03-16 18:16:57 UTC (rev 582)
+++ trunk/testset/tags.libbaz   2006-03-18 01:38:38 UTC (rev 583)
@@ -1,9 +1,12 @@
+E: libbaz1: control-file-has-bad-permissions shlibs 0755 != 0644
+E: libbaz1: duplicate-entry-in-shlibs-control-file libdoesntexist2
+E: libbaz1: duplicate-entry-in-shlibs-control-file udeb: libdoesntexist2
 E: libbaz1: file-directly-in-usr-share-doc usr/share/doc/README.Debian
 E: libbaz1: ldconfig-symlink-missing-for-shlib usr/lib/libbaz2.so.1.0 
usr/lib/libfoo2.so.1.0.3b libbaz2.so.1.0
 E: libbaz1: maintainer-shell-script-fails-syntax-check postinst
-E: libbaz1: no-shlibs-control-file usr/lib/libfoo2.so.1.0.3b
 E: libbaz1: postinst-must-call-ldconfig usr/lib/libfoo2.so.1.0.3b
 E: libbaz1: sharedobject-in-library-directory-not-actually-a-shlib 
usr/lib/libbaz1.so.1.0.3b
+E: libbaz1: shlib-missing-in-control-file libbaz2 usr/lib/libfoo2.so.1.0.3b
 E: libbaz1: shlib-with-executable-bit usr/lib/libfoo2.so.1.0.3b 0755
 E: libbaz1: shlib-with-non-pic-code usr/lib/libbaz1.so.1.0.3b
 E: libbaz1: unstripped-binary-or-object ./usr/lib/libbaz1.so.1.0.3b
@@ -18,5 +21,7 @@
 W: libbaz1: missing-depends-line
 W: libbaz1: package-name-doesnt-match-sonames libbaz2-1.0
 W: libbaz1: postinst-should-not-set-usr-doc-link
+W: libbaz1: unused-shlib-entry-in-control-file libdoesntexist2
+W: libbaz1: unused-shlib-entry-in-control-file udeb: libdoesntexist2
 W: libbaz1: zero-byte-file-in-doc-directory usr/share/doc/README.Debian
 W: libbaz2: package-name-doesnt-match-sonames libbaz2-1.0


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to