tag 759891 patch
thanks

On Sat, Aug 30, 2014 at 12:57:50PM -0700, Lucas Nussbaum wrote:
> Source: golly
> Version: 2.6-1
> Severity: serious
> Tags: jessie sid
> User: debian...@lists.debian.org
> Usertags: qa-ftbfs-20140830 qa-ftbfs
> Justification: FTBFS on amd64

> During a rebuild of all packages in sid, your package failed to build on
> amd64.

> > configure: error: could not determine Perl shared library name
> > dh_auto_configure: ../gui-wx/configure/configure --build=x86_64-linux-gnu 
> > --prefix=/usr --includedir=${prefix}/include --mandir=${prefix}/share/man 
> > --infodir=${prefix}/share/info --sysconfdir=/etc --localstatedir=/var 
> > --libdir=${prefix}/lib/x86_64-linux-gnu 
> > --libexecdir=${prefix}/lib/x86_64-linux-gnu --disable-maintainer-mode 
> > --disable-dependency-tracking --with-perl-shlib= returned exit code 1

Hi, this is clearly caused by the recent Perl 5.20 transition.
Apologies for the lack of prior notification. 

I made quite a few test rebuilds of affected packages, but it looks
like I chose the tested packages based on runtime dependencies (Depends:
libperl5.18) rather than build dependencies (Build-Depends: libperl-dev),
so this package didn't get tested.

The problem, of course, is that libperl.so moved from /usr/lib/libperl.so
to /usr/lib/<triplet>/libperl.so, so it looks like debian/rules needs
to be updated accordingly. Patch attached, this makes it build for me.

I do wonder about the missing runtime dependency. Comments in
gui-wx/configure/configure.ac indicate libperl gets loaded dynamically
at runtime. Is it intentional to not even Recommend libperl5.20, or is
that left out because it's non-trivial to do? (See #611573 for a similar
issue with the vim source package.)

I see you're currently parsing the output of the 'ls -l' command to get
the symlink target of libperl.so in libperl-dev. I can see why that's
necessary, but please note that I've just filed #759989 against perl to
make it possible to use $Config{libperl} in the future for this.
-- 
Niko Tyni   nt...@debian.org
>From b1c6ca7c23eb0d5f3a22e69b17854f4f6917d76b Mon Sep 17 00:00:00 2001
From: Niko Tyni <nt...@debian.org>
Date: Sat, 30 Aug 2014 15:30:25 -0700
Subject: [PATCH] Fix the location of the Perl shared library

As of Perl 5.20, libperl.so has moved into /usr/lib/<triplet>,
so update the path in debian/rules accordingly.

Bug-Debian: https://bugs.debian.org/759891
---
 debian/rules | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/debian/rules b/debian/rules
index de36aab..4b6d211 100755
--- a/debian/rules
+++ b/debian/rules
@@ -1,7 +1,8 @@
 #!/usr/bin/make -f
 # -*- makefile -*-
 
-PERL_SHLIB=$(shell ls -l /usr/lib/libperl.so | sed 's/^.* -> \(.*\)$$/\1/')
+TRIPLET=$(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
+PERL_SHLIB=$(shell ls -l /usr/lib/$(TRIPLET)/libperl.so | sed 's/^.* -> \(.*\)$$/\1/')
 export DH_OPTIONS
 
 %:
-- 
2.1.0

Reply via email to