On Sat, 31 May 2014 20:33:48 +0300, Niko Tyni wrote:
> Following #748380 (perl-policy: @INC changes for multiarch), we need
> to add stricter dependencies on perl-base to the few non-binary module
> packages currently using /usr/lib/perl5. Otherwise partial upgrades will
> be problematic. While we can make perl-base Break the current versions
> of such module packages with the old @INC, nothing prevents upgrading
> the module packages before the perl core packages.
>
> The affected packages are
> libalien-wxwidgets-perl
> libanyevent-perl
> libcommon-sense-perl
> libgtk2-perl-doc
> libjcode-perl (arch:all oversight, see #749541)
> libpar-packer-perl
>
> Two of these (libcommon-sense-perl and libpar-packer-perl) already have
> a binNMU'able dependency on the current perl upstream version. This is
> almost enough, but doesn't cover the future possibility of changing
> $Config{vendorarch} without a major Perl version bump. Extending the
> perlapi-* requirement seems a more robust solution, as per the attached
> patch.
I've tried this for libcommon-sense-perl now, with the idea taken from dh_perl(1):
#v+
diff --git a/debian/rules b/debian/rules
index f368b5a..2ebf630 100755
--- a/debian/rules
+++ b/debian/rules
@@ -8,6 +8,7 @@ TMP = $(CURDIR)/debian/$(PACKAGE)
PERL_CURRENT := $(shell perl -MConfig -e 'print "$$Config{revision}.$$Config{patchlevel}.$$Config{subversion}"')
PERL_NEXT := $(shell perl -MConfig -e 'print "$$Config{revision}.$$Config{patchlevel}." . ($$Config{subversion} + 1)')
ARCHLIB := $(shell perl -MConfig -e 'print $$Config{vendorarch}')
+PERLAPI := $(shell perl -MConfig -e 'print ($$Config{debian_abi} || $$Config{version})')
%:
dh $@
@@ -19,4 +20,4 @@ override_dh_auto_install:
$(TMP)/usr/share/man/man3/common::sense.3pm
override_dh_gencontrol:
- dh_gencontrol -- -V'sameperl:Depends=perl (>= $(PERL_CURRENT)~), perl (<< $(PERL_NEXT)~)'
+ dh_gencontrol -- -V'sameperl:Depends=perl (>= $(PERL_CURRENT)~), perl (<< $(PERL_NEXT)~), perlapi-$(PERLAPI)'
#v-
Does this look correct?
(For perl 5.18.2 in sid we get as expected:
Depends: perl (>= 5.18.2~), perl (<< 5.18.3~), perlapi-5.18.2
And for perl 5.20.0:
Depends: perl (>= 5.20.0~), perl (<< 5.20.1~), perlapi-5.20.0-exp1
(and the files end up in ./usr/lib/x86_64-linux-gnu/perl5/5.20/).
)
Cheers,
gregor
--
.''`. Homepage: http://info.comodo.priv.at/ - OpenPGP key 0xBB3A68018649AA06
: :' : Debian GNU/Linux user, admin, and developer - http://www.debian.org/
`. `' Member of VIBE!AT & SPI, fellow of the Free Software Foundation Europe
`- NP: Bob Dylan: Forever Young
Attachment:
signature.asc
Description: Digital Signature