r37837 - in /trunk/dh-make-perl: lib/DhMakePerl.pm t/perl-deps.t
dmn at users.alioth.debian.org
dmn at users.alioth.debian.org
Mon Jun 8 04:35:33 UTC 2009
Author: dmn
Date: Mon Jun 8 04:35:28 2009
New Revision: 37837
URL: http://svn.debian.org/wsvn/pkg-perl/?sc=1&rev=37837
Log:
DhMakePerl: delegate pruning of (build-) dependencies on perl/-base/-modules to Control::FromCPAN
Added:
trunk/dh-make-perl/t/perl-deps.t (with props)
Modified:
trunk/dh-make-perl/lib/DhMakePerl.pm
Modified: trunk/dh-make-perl/lib/DhMakePerl.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/dh-make-perl/lib/DhMakePerl.pm?rev=37837&op=diff
==============================================================================
--- trunk/dh-make-perl/lib/DhMakePerl.pm (original)
+++ trunk/dh-make-perl/lib/DhMakePerl.pm Mon Jun 8 04:35:28 2009
@@ -238,30 +238,7 @@
warn "Dependencies not updated.\n";
}
- # remove build-depending/conflicting on ancient perl versions
- for my $pkg ( qw( perl perl-base perl-modules ) ) {
- for ( qw( Build_Depends Build_Depends_Indep ) ) {
- $control->source->$_->add("$pkg (>= $min_perl_version)")
- if $control->source->$_->has($pkg);
- }
- $control->source->Build_Conflicts->remove(
- "$pkg (<< $oldest_perl_version)"
- );
- $control->source->Build_Conflicts_Indep->remove(
- "$pkg (<< $oldest_perl_version)"
- );
- }
-
- # remove depending/conflicting on ancient perl versions
- for my $perl ( qw( perl perl-base perl-modules ) ) {
- for my $pkg ( $control->binary->Values ) {
- for my $dep ( qw(Depends Recommends Suggests) ) {
- $pkg->$dep->add("$perl (>= $min_perl_version)")
- if $pkg->$dep->has($perl);
- }
- $pkg->Conflicts->remove("$perl (<< $oldest_perl_version)");
- }
- }
+ $control->prune_perl_deps();
copy( "$debiandir/control", "$debiandir/control.bak" )
if $self->cfg->backups;
Added: trunk/dh-make-perl/t/perl-deps.t
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/dh-make-perl/t/perl-deps.t?rev=37837&op=file
==============================================================================
--- trunk/dh-make-perl/t/perl-deps.t (added)
+++ trunk/dh-make-perl/t/perl-deps.t Mon Jun 8 04:35:28 2009
@@ -1,0 +1,33 @@
+#!/usr/bin/perl -w
+
+use strict;
+use warnings;
+
+use Test::More tests => 10;
+use Test::Exception;
+
+BEGIN {
+ use_ok('Debian::Control::FromCPAN');
+ use_ok('Debian::Dependency');
+};
+
+my $ctl = 'Debian::Control::FromCPAN';
+my $dep = 'Debian::Dependency';
+
+dies_ok {
+ $ctl->prune_simple_perl_dep( $dep->new('perl|perl-modules') )
+} 'prune_simple_perl_dep croaks on alternatives';
+
+is( $ctl->prune_perl_dep( $dep->new('perl-modules') ), 'perl', 'perl-modules is converted to perl' );
+
+is( $ctl->prune_perl_dep( $dep->new('perl-modules|foo') ), 'perl | foo', 'perl-modules is converted to perl in alternatives' );
+
+is( $ctl->prune_perl_dep( $dep->new('perl-base') ), undef, 'plain dependency on perl-base is redundant' );
+
+is( $ctl->prune_perl_dep( $dep->new('perl-modules'), 1 ), undef, 'perl-modules is build-essential' );
+
+is( $ctl->prune_perl_dep( $dep->new('foo|perl-modules'), 1 ), undef, 'redundant alternative makes redundand the whole' );
+
+is( $ctl->prune_perl_dep( $dep->new('perl (>= 5.8.0)'), 1 ), undef, 'perl 5.8.0 is ancient' );
+
+is( $ctl->prune_perl_dep( $dep->new('perl (= 5.8.0)'), 1 ), 'perl (= 5.8.0)', 'perl =5.8.0 is left intact' );
Propchange: trunk/dh-make-perl/t/perl-deps.t
------------------------------------------------------------------------------
svn:executable = *
More information about the Pkg-perl-cvs-commits
mailing list