Don't process objdump sections after "Version References"
authorPanu Matilainen <pmatilai@redhat.com>
Thu, 13 Mar 2008 07:20:24 +0000 (09:20 +0200)
committerPanu Matilainen <pmatilai@redhat.com>
Thu, 13 Mar 2008 07:20:24 +0000 (09:20 +0200)
autodeps/linux.req expects the 'Version References' section to be
the very last section in objdump -p output and nothing else to follow
it, but at least on Linux/ARM, you can get output a la:

        Version References:
          required from ld-linux.so.3:
            0x0d696914 0x00 06 GLIBC_2.4
          required from libacl.so.1:
            0x05822450 0x00 05 ACL_1.0
          required from libgcc_s.so.1:
            0x0b792655 0x00 04 GCC_3.5
          required from librt.so.1:
            0x0d696914 0x00 03 GLIBC_2.4
          required from libc.so.6:
            0x0d696914 0x00 02 GLIBC_2.4
        private flags = 4000002: [Version4 EABI] [has entry point]

This causes the built package (if the external dep generator is
used) to end up with bogus dependencies.

Issue found by Rabeeh Khoury <rabeeh@marvell.com>

Signed-off-by: Lennert Buytenhek <buytenh@marvell.com>
autodeps/linux.req

index 6efa990..c0a0cc9 100644 (file)
@@ -113,6 +113,7 @@ for f in $liblist $exelist ; do
        (START==2) && (LIBNAME!="") && ($4!="") && (($4~/^GLIBC_*/) || ($4~/^GCC_*/)) {
            print LIBNAME "(" $4 ")'$lib64'";
        }
+       /^[A-Za-z]/ { START=3; }
     '
 done | sort -u