Package: dh-make-perl
Version: 0.21
Severity: normal
Tags: patch
The --version option is simply ignored. The variable $version is set up by
GetOptions but then quickly overridden further down.
I've introduced a new variable $pkgversion to hold the user's requested package
version (which is what the --version option is documented to force) and if
the user doesn't specify --version, it defaults to "$version-1"; the version
extracted from the .tar.gz + "-1".
-- System Information:
Debian Release: testing/unstable
Architecture: i386 (i686)
Shell: /bin/sh linked to /bin/bash
Kernel: Linux 2.6.15.lyta
Locale: LANG=en_US, LC_CTYPE=en_US (charmap=ISO-8859-1)
Versions of packages dh-make-perl depends on:
ii debhelper 5.0.37.3 helper programs for debian/rules
ii dpkg-dev 1.13.21 package building tools for Debian
ii fakeroot 1.5.8 Gives a fake root environment
ii libmodule-depends-perl 0.10-1 identify the dependencies of a dis
ii libyaml-perl 0.57-2 YAML Ain't Markup Language (tm)
ii make 3.81-2 The GNU version of the "make" util
ii perl 5.8.8-4 Larry Wall's Practical Extraction
ii perl-modules [libpod-parser-p 5.8.8-4 Core Perl modules
Versions of packages dh-make-perl recommends:
ii apt-file 2.0.8 APT package searching utility -- c
pn libmodule-build-perl <none> (no description available)
-- no debconf information
--- /usr/bin/dh-make-perl 2006-03-08 21:21:50.000000000 +0100
+++ dh-make-perl 2006-08-08 15:02:53.000000000 +0200
@@ -156,7 +156,13 @@
my $datadir = '/usr/share/dh-make-perl';
my $homedir = "$ENV{HOME}/.dh-make-perl";
my ($perlname, $maindir, $modulepm, $meta);
-my ($pkgname, $srcname, $version, $desc, $longdesc, $copyright, $author);
+my ($pkgname, $srcname,
+ # $version is the version from the perl module itself
+ $version,
+ # $pkgversion is the resulting version of the package: User's
+ # --version=s or "$version-1"
+ $pkgversion,
+ $desc, $longdesc, $copyright, $author);
my ($extrasfields, $extrapfields);
my (@docs, $changelog, @args);
my ($cpanmodule, $cpanplusmodule, $cpanmirror, $build, $install, $dbflags,
@@ -173,7 +179,7 @@
"cpan-mirror=s" => \$cpanmirror,
"desc=s" => \$desc,
"arch=s" => \$arch,
- "version=s" => \$version,
+ "version=s" => \$pkgversion,
"help" => sub {die "\n"},
# disabled: see build_package()
"dbflags=s" => \$dbflags,
@@ -196,6 +202,9 @@
my $tarball = setup_dir();
$meta = process_meta("$maindir/META.yml") if (-f "$maindir/META.yml");
($pkgname, $version) = extract_basic();
+if (! defined $pkgversion) {
+ $pkgversion = $version . "-1";
+}
move ($tarball, dirname($tarball) . "/${pkgname}_${version}.orig.tar.gz") if
($tarball && $tarball =~ /(?:\.tar\.gz|\.tgz)$/);
my $module_build = (-f "$maindir/Build.PL") ? "Module-Build" : "MakeMaker";
$bdepends .= ', libmodule-build-perl' if ($module_build eq "Module-Build");
@@ -420,9 +429,9 @@
$name = $cpanplusmodule if ($name eq '__PACKAGE__' && $cpanplusmodule);
# Get the version
- if (defined $version) {
+ if (defined $pkgversion) {
# Explicitly specified
- $ver = $version;
+ $ver = $pkgversion;
} elsif ($file =~ /([\'\"]?)VERSION\1\s*(=>|,)\s*([\'\"]?)(\S+)\3/s) {
# Regular MakeMaker
@@ -669,7 +678,7 @@
sub create_changelog {
my ($file) = shift;
open(C, ">$file") || die "Cannot open $file: $!\n";
- print C "$srcname ($version-1) unstable; urgency=low\n";
+ print C "$srcname ($pkgversion) unstable; urgency=low\n";
print C "\n * Initial Release.\n\n";
print C " -- $maintainer $date\n\n";
#print C "Local variables:\nmode: debian-changelog\nEnd:\n";
@@ -801,7 +810,7 @@
$bdependsi = $val if (defined($val=get_override_val($data, $subkey,
'bdependsi')));
$desc = $val if (defined($val=get_override_val($data, $subkey,
'desc')));
$longdesc = $val if (defined($val=get_override_val($data, $subkey,
'longdesc')));
- $version = $val if (defined($val=get_override_val($data, $subkey,
'version')));
+ $pkgversion = $val if (defined($val=get_override_val($data, $subkey,
'version')));
$arch = $val if (defined($val=get_override_val($data, $subkey,
'arch')));
$changelog = $val if (defined($val=get_override_val($data, $subkey,
'changelog')));
@docs = split(/\s+/, $val) if (defined($val=get_override_val($data,
$subkey, 'docs')));
@@ -830,7 +839,7 @@
die "checkver not a function\n" unless (ref($checkver) eq
'CODE');
$subkey = &$checkver($maindir);
} else {
- $subkey = $version;
+ $subkey = $pkgversion;
}
return ($data, $subkey);
}