Source: perl-tk
Severity: normal
Tags: patch
User: reproducible-bui...@lists.alioth.debian.org
Usertags: usrmerge
X-Debbugs-Cc: reproducible-b...@lists.alioth.debian.org

The path for X11 libraries is probed at build time, resulting in
different hard-coded values in the package:

  
https://tests.reproducible-builds.org/debian/rb-pkg/bullseye/amd64/diffoscope-results/perl-tk.html

  ./usr/lib/x86_64-linux-gnu/perl5/5.32/Tk/Config.pm

  $xlib·=·'-L/usr/lib/x86_64-linux-gnu·-lXft';
  vs.
  $xlib·=·'-L/lib/x86_64-linux-gnu·-lXft';


The attached patch passes X11LIB to Makefile.PL to always use the X11LIB
paths in /usr/lib, which are present on both usrmerge and non-usrmerge
systems.

Applying this patch should make perl-tk reproducible on
tests.reproducible-builds.org again.


Alternately, it might be better long-term to explore runtime detection,
though I'm not sure what other implications that might have.


Thanks for maintaining perl-tk!


live well,
  vagrant
From 46ee46a258f8fda55e96d2dd602f0b29088e4915 Mon Sep 17 00:00:00 2001
From: Vagrant Cascadian <vagr...@reproducible-builds.org>
Date: Sun, 11 Jul 2021 00:14:09 +0000
Subject: [PATCH] debian/rules: Pass X11LIB to Makefile.PL to ensure correct
 path.

On a usrmerge system with a /lib -> /usr/lib symlink, the path to X11
libraries gets hardcoded to the /lib path, but X11 libraries are
typically installed in /usr/lib.
---
 debian/rules | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/debian/rules b/debian/rules
index ff16864..1ce2497 100755
--- a/debian/rules
+++ b/debian/rules
@@ -4,6 +4,7 @@
 
 DPKG_EXPORT_BUILDFLAGS = 1
 include /usr/share/dpkg/buildflags.mk
+include /usr/share/dpkg/architecture.mk
 
 PERL ?= /usr/bin/perl
 
@@ -22,7 +23,8 @@ endif
 config:	config-stamp
 config-stamp:
 	dh_testdir
-	$(PERL) Makefile.PL XFT=1 INSTALLDIRS=vendor PERL=$(PERL)
+	# Pass X11LIB to ensure the correct path even on a usrmerge system
+	$(PERL) Makefile.PL XFT=1 INSTALLDIRS=vendor X11LIB=/usr/lib/$(DEB_HOST_MULTIARCH) PERL=$(PERL)
 	touch $@
 
 build-arch: build
-- 
2.32.0

Attachment: signature.asc
Description: PGP signature

Reply via email to