>From 2ed90c88dfac1abe7403acc9c0939cc882940bda Mon Sep 17 00:00:00 2001
From: Andy Beverley <[email protected]>
Date: Sun, 28 Dec 2014 08:40:12 +0000
Subject: [PATCH 6/6] Allow built core modules to overwrite files from perl
package
---
lib/DhMakePerl/Command/make.pm | 17 +++++++++++++++++
1 file changed, 17 insertions(+)
diff --git a/lib/DhMakePerl/Command/make.pm b/lib/DhMakePerl/Command/make.pm
index 64a067f..05f2a82 100644
--- a/lib/DhMakePerl/Command/make.pm
+++ b/lib/DhMakePerl/Command/make.pm
@@ -136,6 +136,23 @@ sub execute {
$bin->Depends->add( $self->cfg->depends )
if $self->cfg->depends;
+ # If it's a module that would otherwise be part of core, then
+ # tell dpkg that this is allowed to overwrite files from
+ # the core perl package. We'll have only got this far if
+ # --core-ok has been specified.
+ if (is_core_module $self->cfg->cpan)
+ {
+ # Look up installed Perl version in apt cache
+ if (my $apt_cache = apt_cache()) {
+ my $pkg = $apt_cache->{perl};
+ if ( my $available = $pkg->{VersionList} ) {
+ my $target_perl_version = pop @$available;
+ my $depends = Debian::Dependency->new("perl (<=$target_perl_version)");
+ $bin->Replaces->add( $depends );
+ }
+ }
+ }
+
$src->Build_Depends->add( $self->cfg->bdepends )
if $self->cfg->bdepends;
--
1.7.10.4