tag 708624 patch thanks On Fri, May 17, 2013 at 01:27:21PM +0300, Niko Tyni wrote: > Package: perl-tk > Version: 1:804.030-1 > Severity: serious > Tags: sid > cc -c -I.. -I/usr/local/include -I/usr/include/freetype2 -D_REENTRANT > -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe > -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -g > -DVERSION=\"4.004\" -DXS_VERSION=\"804.03\" -fPIC "-I/usr/lib/perl/5.14/CORE" > -Wall -Wno-implicit-int -Wno-comment -Wno-unused -D__USE_FIXED_PROTOTYPES__ > PNG.c > make[2]: *** No rule to make target `zconf.h', needed by `imgPNG.o'. Stop.
> zlib (1:1.2.8.dfsg-1) unstable; urgency=low > [...] > * Install zconf.h in multiarch path (closes: #698648). > > It looks like Tk/MakeDepend.pm needs to look in multiarch include paths > (/usr/include/<triplet>). Possibly the right thing to do is to parse > 'cpp -v' output somewhere and feed that to Tk::MakeDepend::command_line(). > My half hearted attempts to override INC from debian/rules weren't > successful. Here's a much cruder patch that makes it build for me. Hope it helps a bit. However, I note this warning in the build log: dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/perl-tk/usr/lib/perl5/auto/Tk/PNG/PNG.so was not linked against libz.so.1 (it uses none of the library's symbols). so presumably the whole zlib stuff is only needed for the bundled libpng and we shouldn't need it at all? -- Niko Tyni nt...@debian.org
>From 9a4b2864d4dee36eced96e55e7eda99c3a81b658 Mon Sep 17 00:00:00 2001 From: Niko Tyni <nt...@debian.org> Date: Fri, 17 May 2013 13:57:27 +0300 Subject: [PATCH] * Fix build failure by passing the multiarch header path into the 'makedepend' phase. (Closes: #708624) --- debian/changelog | 8 ++++++++ debian/patches/30-multiarch-headers.patch | 26 ++++++++++++++++++++++++++ debian/patches/series | 1 + debian/rules | 2 ++ 4 files changed, 37 insertions(+) create mode 100644 debian/patches/30-multiarch-headers.patch diff --git a/debian/changelog b/debian/changelog index a3d4b3a..abc2b3c 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,11 @@ +perl-tk (1:804.030-1.1) UNRELEASED; urgency=low + + * Non-maintainer upload. + * Fix build failure by passing the multiarch header path into + the 'makedepend' phase. (Closes: #708624) + + -- Niko Tyni <nt...@debian.org> Fri, 17 May 2013 13:55:56 +0300 + perl-tk (1:804.030-1) unstable; urgency=low * Ack the NMUs diff --git a/debian/patches/30-multiarch-headers.patch b/debian/patches/30-multiarch-headers.patch new file mode 100644 index 0000000..4813e25 --- /dev/null +++ b/debian/patches/30-multiarch-headers.patch @@ -0,0 +1,26 @@ +From f5b1878137a090af4e770691606b99b3d5dcc100 Mon Sep 17 00:00:00 2001 +From: Niko Tyni <nt...@debian.org> +Date: Fri, 17 May 2013 13:53:38 +0300 +Subject: [PATCH] Support extra include directories in the 'makedepend' phase + +The extra directories are passed in the environment variable +EXTRAINC and must start with -I, e.g. -I/usr/include/x86_64-linux-gnu +--- + Tk/MMutil.pm | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/Tk/MMutil.pm b/Tk/MMutil.pm +index 1a69e56..30b233d 100644 +--- a/Tk/MMutil.pm ++++ b/Tk/MMutil.pm +@@ -250,6 +250,7 @@ sub perldepend + { + my $tk = installed_tk(); + my @inc = split(/\s+/,$self->{'INC'}); ++ @inc = (@inc, split(/\s+/,$ENV{EXTRAINC})) if defined $ENV{EXTRAINC}; + my @def = split(/\s+/,$self->{'DEFINE'}); + push(@def,qw(-DWIN32 -D__WIN32__)) if ($IsWin32); + if ($^O eq 'cygwin') +-- +1.7.10.4 + diff --git a/debian/patches/series b/debian/patches/series index 37b0dfd..ef18ee6 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1 +1,2 @@ 20-pngsuite-lic.patch +30-multiarch-headers.patch diff --git a/debian/rules b/debian/rules index bdedfb1..7f41958 100755 --- a/debian/rules +++ b/debian/rules @@ -6,6 +6,7 @@ PERL ?= /usr/bin/perl package := $(firstword $(shell dh_listpackages)) prefix := $(CURDIR)/debian/$(package) +DEB_HOST_MULTIARCH = $(shell dpkg-architecture -qDEB_HOST_MULTIARCH) version := $(shell dpkg-parsechangelog | \ sed -ne 's/^Version: *\([0-9]\+:\)*//p') @@ -19,6 +20,7 @@ endif config: config-stamp config-stamp: dh_testdir + EXTRAINC=-I/usr/include/$(DEB_HOST_MULTIARCH) \ $(PERL) Makefile.PL XFT=1 INSTALLDIRS=vendor PERL=$(PERL) touch $@ -- 1.7.10.4