From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from pigeon.gentoo.org ([208.92.234.80] helo=lists.gentoo.org) by finch.gentoo.org with esmtp (Exim 4.60) (envelope-from <gentoo-commits+bounces-393257-garchives=archives.gentoo.org@lists.gentoo.org>) id 1RFuS5-0004pu-9p for garchives@archives.gentoo.org; Mon, 17 Oct 2011 21:10:29 +0000 Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 5E49C21C145; Mon, 17 Oct 2011 21:09:42 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) by pigeon.gentoo.org (Postfix) with ESMTP id 1BE3D21C137 for <gentoo-commits@lists.gentoo.org>; Mon, 17 Oct 2011 21:09:42 +0000 (UTC) Received: from pelican.gentoo.org (unknown [66.219.59.40]) (using TLSv1 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 8FB091B4019 for <gentoo-commits@lists.gentoo.org>; Mon, 17 Oct 2011 21:09:41 +0000 (UTC) Received: from localhost.localdomain (localhost [127.0.0.1]) by pelican.gentoo.org (Postfix) with ESMTP id 675E780051 for <gentoo-commits@lists.gentoo.org>; Mon, 17 Oct 2011 21:09:40 +0000 (UTC) From: "Anthony G. Basile" <blueness@gentoo.org> To: gentoo-commits@lists.gentoo.org Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Anthony G. Basile" <blueness@gentoo.org> Message-ID: <fa17b2980b8c20d095c357f122315d6df24c764d.blueness@gentoo> Subject: [gentoo-commits] proj/elfix:elfix-0.2.x commit in: scripts/ X-VCS-Repository: proj/elfix X-VCS-Files: scripts/revdep-pax X-VCS-Directories: scripts/ X-VCS-Committer: blueness X-VCS-Committer-Name: Anthony G. Basile X-VCS-Revision: fa17b2980b8c20d095c357f122315d6df24c764d Date: Mon, 17 Oct 2011 21:09:40 +0000 (UTC) Precedence: bulk List-Post: <mailto:gentoo-commits@lists.gentoo.org> List-Help: <mailto:gentoo-commits+help@lists.gentoo.org> List-Unsubscribe: <mailto:gentoo-commits+unsubscribe@lists.gentoo.org> List-Subscribe: <mailto:gentoo-commits+subscribe@lists.gentoo.org> List-Id: Gentoo Linux mail <gentoo-commits.gentoo.org> X-BeenThere: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: quoted-printable X-Archives-Salt: X-Archives-Hash: 17eb15af59ea31e7b1f094dc45e70cf9 commit: fa17b2980b8c20d095c357f122315d6df24c764d Author: Anthony G. Basile <blueness <AT> gentoo <DOT> org> AuthorDate: Thu Oct 13 04:36:09 2011 +0000 Commit: Anthony G. Basile <blueness <AT> gentoo <DOT> org> CommitDate: Mon Oct 17 21:03:36 2011 +0000 URL: http://git.overlays.gentoo.org/gitweb/?p=3Dproj/elfix.git;a=3D= commit;h=3Dfa17b298 scripts/revdep-pax: add search by full library path --- scripts/revdep-pax | 32 ++++++++++++++++++++++++++++---- 1 files changed, 28 insertions(+), 4 deletions(-) diff --git a/scripts/revdep-pax b/scripts/revdep-pax index dd359db..0fcb8e6 100755 --- a/scripts/revdep-pax +++ b/scripts/revdep-pax @@ -215,12 +215,14 @@ def run_usage(): def run_forward(verbose): ( forward_linkings, so2library_mappings ) =3D get_forward_linkings() print_forward_linkings( forward_linkings, so2library_mappings, verbose) + print =20 =20 def run_reverse(verbose): ( forward_linkings, so2library_mappings ) =3D get_forward_linkings() reverse_linkings =3D invert_linkings( forward_linkings ) print_reverse_linkings( reverse_linkings, so2library_mappings, verbose = ) + print =20 =20 def run_binary(binary, verbose): @@ -253,9 +255,23 @@ def run_binary(binary, verbose): print =20 =20 -def run_soname(soname, verbose): +def invert_so2library_mappings( so2library_mappings ): + library2soname_mappings =3D {} + for soname, library in so2library_mappings.iteritems(): + library2soname_mappings[library] =3D soname + return library2soname_mappings + + +def run_soname(name, verbose, use_soname): ( forward_linkings, so2library_mappings ) =3D get_forward_linkings() reverse_linkings =3D invert_linkings( forward_linkings ) + + if use_soname: + soname =3D name + else: + library2soname_mappings =3D invert_so2library_mappings(so2library_mapp= ings) + soname =3D library2soname_mappings[name] + linkings =3D reverse_linkings[soname] library =3D so2library_mappings[soname] =20 @@ -284,9 +300,10 @@ def run_soname(soname, verbose): print '\tMismatches' print =20 + def main(): try: - opts, args =3D getopt.getopt(sys.argv[1:], 'hfrb:s:v') + opts, args =3D getopt.getopt(sys.argv[1:], 'hfrb:s:l:v') except getopt.GetoptError, err: print str(err) # will print something like 'option -a not recognized' run_usage() @@ -302,6 +319,7 @@ def main(): =20 binary =3D None soname =3D None + library =3D None =20 verbose =3D False =20 @@ -316,6 +334,8 @@ def main(): binary =3D a elif o =3D=3D '-s': soname =3D a + elif o =3D=3D '-l': + library =3D a elif o =3D=3D '-v': verbose =3D True else: @@ -337,8 +357,12 @@ def main(): if binary !=3D None: run_binary(binary, verbose) =20 - if soname !=3DNone: - run_soname(soname, verbose) + if soname !=3D None: + run_soname(soname, verbose, True) + + if library !=3D None: + library =3D os.path.realpath(library) + run_soname(library, verbose, False) =20 if __name__ =3D=3D '__main__': main()