]> err.no Git - dpkg/commitdiff
Dpkg::Shlibs::*: Code cleanup
authorFrank Lichtenheld <djpig@debian.org>
Sun, 8 Jul 2007 22:12:49 +0000 (22:12 +0000)
committerFrank Lichtenheld <djpig@debian.org>
Sun, 8 Jul 2007 22:12:49 +0000 (22:12 +0000)
Use the new Dpkg::* utility modules

scripts/Dpkg/Shlibs/Objdump.pm
scripts/Dpkg/Shlibs/SymbolFile.pm
scripts/dpkg-shlibdeps.pl
scripts/t/200_Dpkg_Shlibs.t

index b28c82ddaf3b7fcd3ce6e8bda812b00bd2d48cd2..a389a645f1a122d0b91212d62d5f5d5b07bd494b 100644 (file)
@@ -16,7 +16,9 @@
 
 package Dpkg::Shlibs::Objdump;
 
-require 'dpkg-gettext.pl';
+use Dpkg::Gettext;
+use Dpkg::ErrorHandling qw(syserr subprocerr warning);
+textdomain("dpkg-dev");
 
 sub new {
     my $this = shift;
@@ -30,7 +32,7 @@ sub parse {
     my ($self, $file) = @_;
     local $ENV{LC_ALL} = 'C';
     open(OBJDUMP, "-|", "objdump", "-w", "-p", "-T", $file) ||
-           syserr(sprintf(_g("Can't execute objdump: %s"), $!));
+       syserr(sprintf(_g("Can't execute objdump: %s"), $!));
     my $obj = Dpkg::Shlibs::Objdump::Object->new($file);
     my $section = "none";
     while (defined($_ = <OBJDUMP>)) {
@@ -141,7 +143,7 @@ sub parse_dynamic_symbol {
     } elsif ($line =~ /^[0-9a-f]+ (.{7})\s+(\S+)\s+[0-9a-f]+/) {
        # Same start but no version and no symbol ... just ignore
     } else {
-       main::warning(sprintf(_g("Couldn't parse one line of objdump's output: %s"), $line));
+       warning(sprintf(_g("Couldn't parse one line of objdump's output: %s"), $line));
     }
 }
 
@@ -173,7 +175,8 @@ sub get_object {
            return $format{$file};
        } else {
            local $ENV{LC_ALL} = "C";
-           open(P, "objdump -a -- $file |") || syserr(_g("cannot fork for objdump"));
+           open(P, "-|", "objdump", "-a", "--", $file)
+               || syserr(_g("cannot fork for objdump"));
            while (<P>) {
                chomp;
                if (/^\s*\S+:\s*file\s+format\s+(\S+)\s*$/) {
@@ -181,14 +184,15 @@ sub get_object {
                    return $format{$file};
                }
            }
-           close(P) or main::subprocerr(sprintf(_g("objdump on \`%s'"), $file));
+           close(P) or subprocerr(sprintf(_g("objdump on \`%s'"), $file));
        }
     }
 }
 
 sub is_elf {
     my ($file) = @_;
-    open(FILE, "<", $file) || main::syserr(sprintf(_g("Can't open %s for test: %s"), $file, $!));
+    open(FILE, "<", $file) ||
+       syserr(sprintf(_g("Can't open %s for test: %s"), $file, $!));
     my ($header, $result) = ("", 0);
     if (read(FILE, $header, 4) == 4) {
        $result = 1 if ($header =~ /^\177ELF$/);
index 43c17e1e4eb2819c74269190316532c44c502299..fb776486ea7a51a8321291c5728dd0e8f908af94 100644 (file)
 
 package Dpkg::Shlibs::SymbolFile;
 
-require 'dpkg-gettext.pl';
-
+use Dpkg::Gettext;
+use Dpkg::ErrorHandling qw(syserr warning);
 use Dpkg::Version qw(vercmp);
+textdomain("dpkg-dev");
 
 sub new {
     my $this = shift;
@@ -50,7 +51,8 @@ sub clear_except {
 sub load {
     my ($self, $file) = @_;
     $self->{file} = $file;
-    open(SYM_FILE, "<", $file) || main::syserr(sprintf(_g("Can't open %s: %s"), $file));
+    open(SYM_FILE, "<", $file)
+       || syserr(sprintf(_g("Can't open %s: %s"), $file));
     my ($object);
     while (defined($_ = <SYM_FILE>)) {
        chomp($_);
@@ -80,7 +82,7 @@ sub load {
                'deps' => [ "$2" ]
            };
        } else {
-           main::warning(sprintf(_g("Failed to parse a line in %s: %s"), $file, $_));
+           warning(sprintf(_g("Failed to parse a line in %s: %s"), $file, $_));
        }
     }
     close(SYM_FILE);
@@ -93,7 +95,8 @@ sub save {
     if ($file eq "-") {
        $fh = \*STDOUT;
     } else {
-       open(SYM_FILE, "> $file") || main::syserr(sprintf(_g("Can't open %s for writing: %s"), $file, $!));
+       open(SYM_FILE, "> $file")
+           || syserr(sprintf(_g("Can't open %s for writing: %s"), $file, $!));
        $fh = \*SYM_FILE;
     }
     $self->dump($fh);
index 28087dfd6e525b898722d14ee4765c403d33f927..df5c89d2169fc155e06d51a276de5cdd395a489c 100755 (executable)
@@ -12,7 +12,7 @@ my $admindir = "/var/lib/dpkg";
 
 BEGIN {
     $version="1.14.4"; # This line modified by Makefile
-    $dpkglibdir="/usr/lib/dpkg"; # This line modified by Makefile
+    $dpkglibdir="."; # This line modified by Makefile
     push(@INC,$dpkglibdir);
 }
 
index ec74b7eb3fe1ce6d64289e8da57f2d1881001224..81b39159bb3c9e5e0d522f77648be378d6ed13b5 100644 (file)
@@ -1,9 +1,9 @@
 # -*- mode: cperl;-*-
 
-use Test::More tests => 2;
+use Test::More tests => 4;
 
-use warnings;
 use strict;
+use warnings;
 
 use_ok('Dpkg::Shlibs');
 
@@ -16,3 +16,6 @@ use Data::Dumper;
 is_deeply([qw(/nonexistant32 /nonexistant/lib64
             /usr/local/lib /nonexistant/lib128 )],
          \@Dpkg::Shlibs::librarypaths, "parsed library paths");
+
+use_ok('Dpkg::Shlibs::Objdump');
+use_ok('Dpkg::Shlibs::SymbolFile');