Bug#949271: libtool: Embeded build path in libtool man page

2020-01-18 Thread Vagrant Cascadian
Control: user reproducible-bui...@lists.alioth.debian.org
Control: usertag 949271 + buildpath
Control: usertag 949271 - usrmerge environment

Fix up reproducible-builds usertags; it's really just build path issue.

live well,
  vagrant


signature.asc
Description: PGP signature


Bug#949271: libtool: Embeded build path in libtool man page

2020-01-18 Thread Vagrant Cascadian
Package: libtool
Version: 2.4.6-11
Severity: normal
Tags: patch
User: reproducible-bui...@lists.alioth.debian.org
Usertags: usrmerge environment
X-Debbugs-Cc: reproducible-b...@lists.alioth.debian.org

The libtool.1 man page embeds the build path as it includes the compiler
flags, -fdebug-prefix-map (which is used by default in dpkg) or
-ffile-prefix-map (an optional dpkg feature, enabled in
tests.reproducible-builds.org for testing packages from unstable and
experimental), and both pass the full build path as part of their
arguments, resulting in a differing build dependding on the build path.

The attached patch removes the -fdebug-prefix-map and -ffile-prefix-map
arguments from the libtool.1 man page.


Thanks for maintaining libtool!


With this patch and the patch just submitted in #949270, this
should be reproducible in tests.reproducible-builds.org!


live well,
  vagrant

p.s. The most recent versions of libtool uploaded to the archive are not
present in the salsa git repository; it would be nice to fix that.

From 91880aa1b55d258dbe6f0a8ac7d02907b2522806 Mon Sep 17 00:00:00 2001
From: Vagrant Cascadian 
Date: Sat, 18 Jan 2020 13:48:00 -0800
Subject: [PATCH 2/2] debian/rules: Remove file-prefix-map/debug-prefix-map
 arguments from the libtool.1 manpage, which results in an unreproducible
 package when the build path varies.

---
 debian/rules | 6 ++
 1 file changed, 6 insertions(+)

diff --git a/debian/rules b/debian/rules
index 99080e1..e2137a8 100755
--- a/debian/rules
+++ b/debian/rules
@@ -148,6 +148,12 @@ install: build
 
 	$(MAKE) prefix=$(CURDIR)/debian/tmp/usr install
 	rm -f debian/tmp/usr/share/info/dir
+	# The file-prefix-map/debug-prefix-map contain the build path,
+	# which results in unreproducible builds. Strip these arguments
+	# out of the manpage.
+	sed -i -e "s, -fdebug.-prefix.-map=.*=\. , ,g" \
+		-e "s, -ffile.-prefix.-map=.*=\. , ,g" \
+		debian/tmp/usr/share/man/man1/libtool.1
 
 	dh_install --fail-missing --sourcedir=debian/tmp
 
-- 
2.20.1



signature.asc
Description: PGP signature