From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: From: Alexey Tourbin To: ALT Devel discussion list Message-ID: <20051015223926.GH7934@solemn.turbinal.org> Mail-Followup-To: ALT Devel discussion list Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="TKDEsImF70pdVIl+" Content-Disposition: inline Cc: Subject: [devel] list of libraries within binaries [2] (for sale or rent!) X-BeenThere: devel@lists.altlinux.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: ALT Devel discussion list List-Id: ALT Devel discussion list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 15 Oct 2005 22:39:32 -0000 Date: Sat, 15 Oct 2005 22:39:32 -0000 X-Original-Date: Sun, 16 Oct 2005 02:39:26 +0400 X-List-Received-Date: Sat, 15 Oct 2005 22:39:32 -0000 Archived-At: List-Archive: List-Post: --TKDEsImF70pdVIl+ Content-Type: multipart/mixed; boundary="oyqLL/JqMvClXZi1" Content-Disposition: inline --oyqLL/JqMvClXZi1 Content-Type: text/plain; charset=koi8-r Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Sat, Oct 08, 2005 at 04:00:26PM +0400, Alexey Tourbin wrote: > =F4=C5=D0=C5=D2=D8 =CE=C9=DE=C5=C7=CF =CE=C5 =D3=D4=CF=C9=D4 =D0=CF=CC=D5= =DE=C9=D4=D8 =D3=D0=C9=D3=CF=CB =C2=C9=CE=C1=D2=C5=CA, =CB=CF=D4=CF=D2=D9= =C5 =D0=CF=C4=CF=DA=D2=C5=D7=C1=C0=D4=D3=D1 > =D7 =D4=CF=CD, =DE=D4=CF =D3=D4=C1=D4=C9=DE=C5=D3=CB=C9 =D3=CC=C9=CE=CB= =CF=D7=C1=CE=D9 =D3 =C2=C9=C2=CC=C9=CF=D4=C5=CB=C1=CD=C9. >=20 > $ cut -f2,4 product |sort |uniq -cd >suspect > $ du -hs suspect > 816K suspect > $ head suspect > 51 /lib/libaal-1.0.so.5.0.0 /lib/libaal-minimal.so.0.0.0 > 2 /lib/libaal-1.0.so.5.0.0 /usr/lib/libgift.so.0.0.0 > 2 /lib/libaal-1.0.so.5.0.0 /usr/lib/libmpfc-1.3.5.so > 51 /lib/libaal-minimal.so.0.0.0 /lib/libaal-1.0.so.5.0.0 > 4 /lib/libanl-2.3.5.so /usr/lib/debug/libanl-2.3.5.so > 12 /lib/libattr.so.1.1.0 /lib/libc-2.3.5.so > 12 /lib/libattr.so.1.1.0 /usr/lib/debug/libc-2.3.5.so > 2 /lib/libattr.so.1.1.0 /usr/lib/libncurses.so.5.4 > 24 /lib/libbz2.so.1.0.3 /usr/lib/R/bin/R.bin > 24 /lib/libbz2.so.1.0.3 /usr/lib/R/bin/libR.so > $ >=20 > =F7 =D0=C5=D2=D7=CF=CA =CB=CF=CC=CF=CE=CB=C5 =DA=C4=C5=D3=D8 =DE=C9=D3=CC= =CF =D3=CF=D7=D0=C1=C4=C1=C0=DD=C9=C8 =D3=C9=CD=D7=CF=CC=CF=D7, =CB=CF=D4= =CF=D2=D9=C5 =D0=D2=C5=C4=CF=D3=D4=C1=D7=CC=D1=C0=D4 > =C4=D7=C1 =DC=D4=C9 (=D7=CF =D7=D4=CF=D2=CF=CA =C9 =D4=C5=D2=D4=D8=C5=CA = =CB=CF=CC=CF=CE=CB=C5) =C2=C9=CE=C1=D2=D1. `uniq -d' =C9=D3=CB=CC=C0=DE=C1= =C5=D4 > =CF=C4=C9=CE=CF=DE=CE=D9=C5 =D3=CC=D5=DE=C1=CA=CE=D9=C5 =D3=CF=D7=D0=C1= =C4=C5=CE=C9=D1. =F0=CF=CC=D5=DE=C5=CE =D0=CF=CC=CE=D9=CA product (def x def). =EB=D4=CF = =D7 =D4=C1=CE=CB=C5, =CD=CF=D6=CE=CF =D3=CD=CF=D4=D2=C5=D4=D8: /raid/at/qa/qa-robot/dup_elf_symbols mash:~at/.qa-robot/dup_elf_symbols/product mash:~at/.qa-robot/dup_elf_symbols/suspect =F4=CF =C5=D3=D4=D8 =D4=C5=D0=C5=D2=D8 =CD=CF=D6=CE=CF =C9=D3=CB=C1=D4=D8 = =D3=CF=D7=D0=C1=C4=C5=CE=C9=D1 =D3=C9=CD=D7=CF=CC=CF=D7 =CD=C5=D6=C4=D5 =C4= =D7=D5=CD=D1 =D0=D2=CF=C9=DA=D7=CF=CC=D8=CE=CF =D7=DA=D1=D4=D9=CD=C9 elf'=C1=CD=C9 (=DA=C4=C5=D3=D8 =C5=D3=D4=D8 =CD=CE=CF= =C7=CF =D4=CF=CE=CB=CF=D3=D4=C5=CA, =CE=CF =D7 =C3=C5=CC=CF=CD =D5=D4=D7=C5= =D2=D6=C4=C5=CE=C9=C5 =D7=C5=D2=CE=CF). =E2=CF=CC=D8=DB=CF=C5 =DE=C9=D3=CC=CF =D3=CF=D7=D0=C1=C4= =C1=C0=DD=C9=C8 =D3=C9=CD=D7=CF=CC=CF=D7 =DE=C1=DD=C5 =D7=D3=C5=C7=CF =CF= =DA=CE=C1=DE=C1=C5=D4 =C4=D5=C2=CC=C9=D2=CF=D7=C1=CE=C9=C5 =CB=CF=C4=C1. --oyqLL/JqMvClXZi1 Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename=dup_elf_symbols #!/bin/sh -ef cd "${workdir:?}" rpmelfsym -ap >sym awk -F'\t' '$3~/[DT]/' sym >def sort -t$'\t' -k4 -o def def nelf=`sort -u -k2,2 def |wc -l` cut -f4 def |uniq -cd >freq awk -v n=$nelf '$1defsym sort -o defsym -u defsym join -t$'\t' -14 -21 -o '1.1 1.2 1.3 1.4' def defsym >xdef # product ::= pkg1 elf1 pkg2 elf2 symtype symname join -t$'\t' -j 4 -o '1.1 1.2 1.3 2.1 2.2 2.3 0' xdef xdef | awk -F'\t' 'function prio(f) { if (f~"^/lib/lib[^/]+[.]so[^/]*$") return 1 if (f~"^/usr/lib/lib[^/]+[.]so[^/]*$") return 2 if (f~"^/usr/X11R./lib/lib[^/]+[.]so[^/]*$") return 3 if (f~"lib/lib[^/]+[.]so[^/]*$") return 4 if (f~"/lib[^/]+[.]so[^/]*$") return 5 if (f~"[^/][.]so[^/]*$") return 6 return 9 } ($2<$5 && $3==$6) { OFS="\t" pd = prio($2)-prio($5) if (pd<0 || pd==0 && length($2)<=length($5)) print $1,$2,$4,$5,$6,$7 else print $4,$5,$1,$2,$6,$7 }' >product # suspect ::= pkg1 elf1 pkg2 elf2 symtype nsym cut -f-5 product |sort |uniq -cd |sed 's/^ *\([0-9]\+\) \+\(.\+\)$/\2\t\1/' >suspect sort -o suspect -u suspect cat suspect cd - --oyqLL/JqMvClXZi1-- --TKDEsImF70pdVIl+ Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.5 (GNU/Linux) iD8DBQFDUYUefBKgtDjnu0YRAuM6AKDJP8tmM4z9gNlRKsuK2ygHqJmarQCglnwS TXQRff0t3m6ttSdSLucfpjw= =GW2m -----END PGP SIGNATURE----- --TKDEsImF70pdVIl+--