The branch, master has been updated via e847eabd3ceca1c46a8611e796fd387f54c105fb (commit) via d15b5133bb6dfc3e2af0aa44fdb6ed31f08f806b (commit) via 1331216d2b7803945c559d8caaa99bfe65d24f6c (commit) via 2c0c402c9d1c3a8ef9fe4c9951a4dcbe0c1b183e (commit) from 73d1da6222004348adf7810332651939a8380f9d (commit)
- Shortlog ------------------------------------------------------------ e847eab Switch perl programs to use the new Dpkg/ErrorHandling module d15b513 Dpkg/ErrorHandling.pm: Use Dpkg module instead of defining $progname 1331216 Dpkg/ErrorHandling.pm: Set $warnable_error to 1 to match controllib.pl 2c0c402 Use shipped perl modules when calling perl programs at build time Summary of changes: ChangeLog | 49 +++++++++++++++++++++++++++++++++++++ debian/changelog | 4 +++ m4/arch.m4 | 3 +- scripts/822-date.pl | 4 +-- scripts/Dpkg/ErrorHandling.pm | 21 +++++++++++++--- scripts/changelog/debian.pl | 1 + scripts/controllib.pl | 53 +--------------------------------------- scripts/dpkg-architecture.pl | 1 + scripts/dpkg-buildpackage.pl | 4 +- scripts/dpkg-checkbuilddeps.pl | 1 + scripts/dpkg-distaddfile.pl | 1 + scripts/dpkg-genchanges.pl | 2 + scripts/dpkg-gencontrol.pl | 2 + scripts/dpkg-gensymbols.pl | 1 + scripts/dpkg-parsechangelog.pl | 4 +-- scripts/dpkg-shlibdeps.pl | 3 +- scripts/dpkg-source.pl | 5 ++- 17 files changed, 90 insertions(+), 69 deletions(-) ----------------------------------------------------------------------- Details of changes: commit e847eabd3ceca1c46a8611e796fd387f54c105fb Author: Guillem Jover <[EMAIL PROTECTED]> Date: Thu Oct 11 04:14:42 2007 +0300 Switch perl programs to use the new Dpkg/ErrorHandling module diff --git a/ChangeLog b/ChangeLog index cb11987..53f5c89 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,36 @@ +2007-10-11 Guillem Jover <[EMAIL PROTECTED]> + + * scripts/controllib.pl ($warnable_error, $quiet_warnings): Remove + variable declarations. + (failure, syserr, error, internerr, warning, warnerror) + (subprocerr): Remove functions. + (unknown, usageerr): Move functions to ... + * scripts/Dpkg/ErrorHandling.pm: ... here. + (usageerr): Call usage from main::. + (@EXPORT_OK): Add usageerr and unknown. + + * scripts/822-date.pl: Use Dpkg::ErrorHandling. + * scripts/changelog/debian.pl: Likewise. + * scripts/controllib.pl: Likewise. + * scripts/dpkg-architecture.pl: Likewise. + * scripts/dpkg-buildpackage.pl: Likewise. + * scripts/dpkg-checkbuilddeps.pl: Likewise. + * scripts/dpkg-distaddfile.pl: Likewise. + * scripts/dpkg-genchanges.pl: Likewise. + * scripts/dpkg-gencontrol.pl: Likewise. + * scripts/dpkg-gensymbols.pl: Likewise. + * scripts/dpkg-parsechangelog.pl: Likewise. + * scripts/dpkg-shlibdeps.pl: Likewise. + * scripts/dpkg-source.pl: Likewise. + + * scripts/dpkg-buildpackage.pl ($warnable_error): Import from + Dpkg::ErrorHandling instead of declaring as our. + * scripts/dpkg-source.pl ($warnable_error, $quiet_warnings): Likewise. + + * scripts/822-date.pl: Do not require controllib.pl anymore. + * scripts/dpkg-parsechangelog.pl: Likewise. + * scripts/dpkg-shlibdeps.pl: Likewise. + 2007-10-10 Guillem Jover <[EMAIL PROTECTED]> * scripts/Dpkg/ErrorHandling.pm: Use Dpkg. diff --git a/debian/changelog b/debian/changelog index 7e22335..3b851c8 100644 --- a/debian/changelog +++ b/debian/changelog @@ -40,6 +40,7 @@ dpkg (1.14.8) UNRELEASED; urgency=low [ Guillem Jover ] * Use shipped perl modules when calling perl programs at build time. + * Switch perl programs to use the new Dpkg/ErrorHandling module. [ Updated dpkg translations ] * Polish (Robert Luberda). diff --git a/scripts/822-date.pl b/scripts/822-date.pl index aa83d2a..0a00124 100755 --- a/scripts/822-date.pl +++ b/scripts/822-date.pl @@ -5,12 +5,10 @@ use warnings; use Dpkg; use Dpkg::Gettext; +use Dpkg::ErrorHandling qw(warning); textdomain("dpkg-dev"); -push(@INC, $dpkglibdir); -require 'controllib.pl'; - @ARGV && die _g("Usage: 822-date")."\n"; warning(_g("This program is deprecated. Please use 'date -R' instead.")); diff --git a/scripts/Dpkg/ErrorHandling.pm b/scripts/Dpkg/ErrorHandling.pm index 8601eb5..663927a 100644 --- a/scripts/Dpkg/ErrorHandling.pm +++ b/scripts/Dpkg/ErrorHandling.pm @@ -4,8 +4,8 @@ use Dpkg; use Dpkg::Gettext; use base qw(Exporter); -our @EXPORT_OK = qw( failure syserr error internerr warning - warnerror subprocerr ); +our @EXPORT_OK = qw(warning warnerror error failure unknown syserr internerr + subprocerr usageerr $warnable_error $quiet_warnings); our $warnable_error = 1; our $quiet_warnings = 0; @@ -31,6 +31,12 @@ sub warnerror } } +sub unknown { + my $field = $_; + warning(sprintf(_g("unknown information field '%s' in input data in %s"), + $field, $_[0])); +} + sub subprocerr { my ($p) = @_; require POSIX; @@ -46,5 +52,12 @@ sub subprocerr { } } +sub usageerr +{ + printf(STDERR "%s: %s\n\n", $progname, "@_"); + # XXX: access to main namespace + main::usage(); + exit(2); +} 1; diff --git a/scripts/changelog/debian.pl b/scripts/changelog/debian.pl index a557009..85a0b2e 100755 --- a/scripts/changelog/debian.pl +++ b/scripts/changelog/debian.pl @@ -5,6 +5,7 @@ use warnings; use Dpkg; use Dpkg::Gettext; +use Dpkg::ErrorHandling qw(error internerr usageerr); push(@INC,$dpkglibdir); require 'controllib.pl'; diff --git a/scripts/controllib.pl b/scripts/controllib.pl index e7ef8ab..908455f 100755 --- a/scripts/controllib.pl +++ b/scripts/controllib.pl @@ -7,6 +7,7 @@ use English; use POSIX qw(:errno_h); use Dpkg; use Dpkg::Gettext; +use Dpkg::ErrorHandling qw(warning error failure internerr syserr subprocerr); textdomain("dpkg-dev"); @@ -29,9 +30,6 @@ our @pkg_dep_fields = qw(Pre-Depends Depends Recommends Suggests Enhances our @src_dep_fields = qw(Build-Depends Build-Depends-Indep Build-Conflicts Build-Conflicts-Indep); -our $warnable_error = 1; -our $quiet_warnings = 0; - sub getfowner { @@ -655,57 +653,8 @@ sub parsecdata { return $index; } -sub unknown { - my $field = $_; - warning(sprintf(_g("unknown information field '%s' in input data in %s"), - $field, $_[0])); -} - sub syntax { &error(sprintf(_g("syntax error in %s at line %d: %s"), $whatmsg, $., $_[0])); } -sub failure { die sprintf(_g("%s: failure: %s"), $progname, $_[0])."\n"; } -sub syserr { die sprintf(_g("%s: failure: %s: %s"), $progname, $_[0], $!)."\n"; } -sub error { die sprintf(_g("%s: error: %s"), $progname, $_[0])."\n"; } -sub internerr { die sprintf(_g("%s: internal error: %s"), $progname, $_[0])."\n"; } - -sub warning -{ - if (!$quiet_warnings) { - warn sprintf(_g("%s: warning: %s"), $progname, $_[0])."\n"; - } -} - -sub usageerr -{ - printf(STDERR "%s: %s\n\n", $progname, "@_"); - &usage; - exit(2); -} - -sub warnerror -{ - if ($warnable_error) { - warning(@_); - } else { - error(@_); - } -} - -sub subprocerr { - my ($p) = @_; - require POSIX; - if (POSIX::WIFEXITED($?)) { - die sprintf(_g("%s: failure: %s gave error exit status %s"), - $progname, $p, POSIX::WEXITSTATUS($?))."\n"; - } elsif (POSIX::WIFSIGNALED($?)) { - die sprintf(_g("%s: failure: %s died from signal %s"), - $progname, $p, POSIX::WTERMSIG($?))."\n"; - } else { - die sprintf(_g("%s: failure: %s failed with unknown exit code %d"), - $progname, $p, $?)."\n"; - } -} - 1; diff --git a/scripts/dpkg-architecture.pl b/scripts/dpkg-architecture.pl index 5588976..ae643d8 100755 --- a/scripts/dpkg-architecture.pl +++ b/scripts/dpkg-architecture.pl @@ -24,6 +24,7 @@ use warnings; use Dpkg; use Dpkg::Gettext; +use Dpkg::ErrorHandling qw(warning syserr usageerr); push(@INC,$dpkglibdir); require 'controllib.pl'; diff --git a/scripts/dpkg-buildpackage.pl b/scripts/dpkg-buildpackage.pl old mode 100644 new mode 100755 index 6e83741..579c198 --- a/scripts/dpkg-buildpackage.pl +++ b/scripts/dpkg-buildpackage.pl @@ -8,13 +8,13 @@ use File::Basename; use Dpkg; use Dpkg::Gettext; +use Dpkg::ErrorHandling qw(warning error failure syserr subprocerr usageerr + $warnable_error); use Dpkg::BuildOptions; push (@INC, $dpkglibdir); require 'controllib.pl'; -our $warnable_error; - textdomain("dpkg-dev"); sub showversion { diff --git a/scripts/dpkg-checkbuilddeps.pl b/scripts/dpkg-checkbuilddeps.pl index 9e30b84..6c14ba4 100755 --- a/scripts/dpkg-checkbuilddeps.pl +++ b/scripts/dpkg-checkbuilddeps.pl @@ -7,6 +7,7 @@ use warnings; use Getopt::Long; use Dpkg; use Dpkg::Gettext; +use Dpkg::ErrorHandling qw(error); push(@INC,$dpkglibdir); require 'controllib.pl'; diff --git a/scripts/dpkg-distaddfile.pl b/scripts/dpkg-distaddfile.pl index e7ebb32..584ac66 100755 --- a/scripts/dpkg-distaddfile.pl +++ b/scripts/dpkg-distaddfile.pl @@ -7,6 +7,7 @@ use POSIX; use POSIX qw(:errno_h :signal_h); use Dpkg; use Dpkg::Gettext; +use Dpkg::ErrorHandling qw(error syserr usageerr); push(@INC,$dpkglibdir); require 'controllib.pl'; diff --git a/scripts/dpkg-genchanges.pl b/scripts/dpkg-genchanges.pl index d17700b..ff76124 100755 --- a/scripts/dpkg-genchanges.pl +++ b/scripts/dpkg-genchanges.pl @@ -7,6 +7,8 @@ use POSIX; use POSIX qw(:errno_h :signal_h); use Dpkg; use Dpkg::Gettext; +use Dpkg::ErrorHandling qw(warning error failure unknown internerr syserr + subprocerr usageerr); push(@INC,$dpkglibdir); require 'controllib.pl'; diff --git a/scripts/dpkg-gencontrol.pl b/scripts/dpkg-gencontrol.pl index 140c3cc..caf40c8 100755 --- a/scripts/dpkg-gencontrol.pl +++ b/scripts/dpkg-gencontrol.pl @@ -7,6 +7,8 @@ use POSIX; use POSIX qw(:errno_h); use Dpkg; use Dpkg::Gettext; +use Dpkg::ErrorHandling qw(warning error failure unknown internerr syserr + subprocerr usageerr); push(@INC,$dpkglibdir); require 'controllib.pl'; diff --git a/scripts/dpkg-gensymbols.pl b/scripts/dpkg-gensymbols.pl index 7718955..ee51c80 100755 --- a/scripts/dpkg-gensymbols.pl +++ b/scripts/dpkg-gensymbols.pl @@ -8,6 +8,7 @@ use Dpkg::Shlibs qw(@librarypaths); use Dpkg::Shlibs::Objdump; use Dpkg::Shlibs::SymbolFile; use Dpkg::Gettext; +use Dpkg::ErrorHandling qw(warning error syserr usageerr); textdomain("dpkg-dev"); diff --git a/scripts/dpkg-parsechangelog.pl b/scripts/dpkg-parsechangelog.pl index 4a2e370..a95f213 100755 --- a/scripts/dpkg-parsechangelog.pl +++ b/scripts/dpkg-parsechangelog.pl @@ -7,9 +7,7 @@ use POSIX; use POSIX qw(:errno_h); use Dpkg; use Dpkg::Gettext; - -push(@INC,$dpkglibdir); -require 'controllib.pl'; +use Dpkg::ErrorHandling qw(warning error syserr subprocerr usageerr); textdomain("dpkg-dev"); diff --git a/scripts/dpkg-shlibdeps.pl b/scripts/dpkg-shlibdeps.pl index 15df7d7..ab1f9a2 100755 --- a/scripts/dpkg-shlibdeps.pl +++ b/scripts/dpkg-shlibdeps.pl @@ -7,6 +7,7 @@ use English; use POSIX qw(:errno_h :signal_h); use Dpkg; use Dpkg::Gettext; +use Dpkg::ErrorHandling qw(warning error failure syserr usageerr); use Dpkg::Path qw(relative_to_pkg_root); use Dpkg::Version qw(vercmp); use Dpkg::Shlibs qw(find_library); @@ -20,8 +21,6 @@ chomp $host_arch; my @depfields= qw(Suggests Recommends Depends Pre-Depends); my $i=0; my %depstrength = map { $_ => $i++ } @depfields; -push(@INC, $dpkglibdir); -require 'controllib.pl'; textdomain("dpkg-dev"); my $shlibsoverride= '/etc/dpkg/shlibs.override'; diff --git a/scripts/dpkg-source.pl b/scripts/dpkg-source.pl index afbd609..ad4bc04 100755 --- a/scripts/dpkg-source.pl +++ b/scripts/dpkg-source.pl @@ -5,6 +5,9 @@ use warnings; use Dpkg; use Dpkg::Gettext; +use Dpkg::ErrorHandling qw(warning warnerror error failure unknown + internerr syserr subprocerr usageerr + $warnable_error $quiet_warnings); my @filesinarchive; my %dirincluded; @@ -109,8 +112,6 @@ require 'controllib.pl'; our (%f, %fi); our $sourcepackage; -our $warnable_error; -our $quiet_warnings; our %substvar; our @src_dep_fields; commit d15b5133bb6dfc3e2af0aa44fdb6ed31f08f806b Author: Guillem Jover <[EMAIL PROTECTED]> Date: Wed Oct 10 04:10:26 2007 +0300 Dpkg/ErrorHandling.pm: Use Dpkg module instead of defining $progname diff --git a/ChangeLog b/ChangeLog index 95e4fd1..cb11987 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,10 @@ 2007-10-10 Guillem Jover <[EMAIL PROTECTED]> + * scripts/Dpkg/ErrorHandling.pm: Use Dpkg. + ($progname): Do not set nor declare it. + +2007-10-10 Guillem Jover <[EMAIL PROTECTED]> + * scripts/Dpkg/ErrorHandling.pm ($warnable_error): Set to 1 to match controllib.pl. diff --git a/scripts/Dpkg/ErrorHandling.pm b/scripts/Dpkg/ErrorHandling.pm index 3473ea4..8601eb5 100644 --- a/scripts/Dpkg/ErrorHandling.pm +++ b/scripts/Dpkg/ErrorHandling.pm @@ -1,5 +1,6 @@ package Dpkg::ErrorHandling; +use Dpkg; use Dpkg::Gettext; use base qw(Exporter); @@ -8,7 +9,6 @@ our @EXPORT_OK = qw( failure syserr error internerr warning our $warnable_error = 1; our $quiet_warnings = 0; -our $progname = "unknown"; sub failure { die sprintf(_g("%s: failure: %s"), $progname, $_[0])."\n"; } sub syserr { die sprintf(_g("%s: failure: %s: %s"), $progname, $_[0], $!)."\n"; } commit 1331216d2b7803945c559d8caaa99bfe65d24f6c Author: Guillem Jover <[EMAIL PROTECTED]> Date: Wed Oct 10 04:06:31 2007 +0300 Dpkg/ErrorHandling.pm: Set $warnable_error to 1 to match controllib.pl diff --git a/ChangeLog b/ChangeLog index a25b33f..95e4fd1 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,10 @@ 2007-10-10 Guillem Jover <[EMAIL PROTECTED]> + * scripts/Dpkg/ErrorHandling.pm ($warnable_error): Set to 1 to match + controllib.pl. + +2007-10-10 Guillem Jover <[EMAIL PROTECTED]> + * m4/arch.m4(_DPKG_ARCHITECTURE): Set PERL5LIB when calling dpkg-architecture.pl to use the shipped perl modules instead of the system ones. diff --git a/scripts/Dpkg/ErrorHandling.pm b/scripts/Dpkg/ErrorHandling.pm index 3cb4040..3473ea4 100644 --- a/scripts/Dpkg/ErrorHandling.pm +++ b/scripts/Dpkg/ErrorHandling.pm @@ -6,7 +6,7 @@ use base qw(Exporter); our @EXPORT_OK = qw( failure syserr error internerr warning warnerror subprocerr ); -our $warnable_error = 0; +our $warnable_error = 1; our $quiet_warnings = 0; our $progname = "unknown"; commit 2c0c402c9d1c3a8ef9fe4c9951a4dcbe0c1b183e Author: Guillem Jover <[EMAIL PROTECTED]> Date: Wed Oct 10 02:56:39 2007 +0300 Use shipped perl modules when calling perl programs at build time diff --git a/ChangeLog b/ChangeLog index 5cadbaf..a25b33f 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2007-10-10 Guillem Jover <[EMAIL PROTECTED]> + + * m4/arch.m4(_DPKG_ARCHITECTURE): Set PERL5LIB when calling + dpkg-architecture.pl to use the shipped perl modules instead of + the system ones. + 2007-10-09 Guillem Jover <[EMAIL PROTECTED]> * scripts/dpkg-gensymbols.pl: Use new Dpkg module. Do not declare diff --git a/debian/changelog b/debian/changelog index 8abbda3..7e22335 100644 --- a/debian/changelog +++ b/debian/changelog @@ -38,6 +38,9 @@ dpkg (1.14.8) UNRELEASED; urgency=low * Various small fixes to the manpages suggested by Helge Kreutzmann. Closes: #445858 + [ Guillem Jover ] + * Use shipped perl modules when calling perl programs at build time. + [ Updated dpkg translations ] * Polish (Robert Luberda). diff --git a/m4/arch.m4 b/m4/arch.m4 index 59c1364..e6f242a 100644 --- a/m4/arch.m4 +++ b/m4/arch.m4 @@ -4,7 +4,8 @@ # the target architecture, to avoid duplicating its logic. AC_DEFUN([_DPKG_ARCHITECTURE], [ AC_REQUIRE([AC_CANONICAL_SYSTEM])dnl -$2="`cd $srcdir/scripts; ./dpkg-architecture.pl -t$target -q$1 2>/dev/null`" +$2="`cd $srcdir/scripts; \ + PERL5LIB=$(pwd) ./dpkg-architecture.pl -t$target -q$1 2>/dev/null`" ])# _DPKG_ARCHITECURE # DPKG_CPU_TYPE -- dpkg's main repository -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]