[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#1010871: dvbtune: reproducible-builds: embedded build paths in various binaries



Source: dvbtune
Severity: normal
Tags: patch
User: reproducible-builds@lists.alioth.debian.org
Usertags: buildpath
X-Debbugs-Cc: reproducible-bugs@lists.alioth.debian.org

The build path is embedded in /usr/bin/dvbtune and /usr/bin/xml2vdr:

  https://tests.reproducible-builds.org/debian/rb-pkg/unstable/amd64/diffoscope-results/dvbtune.html

  /build/1st/dvbtune-0.5.ds/dvbtune.c:140
  vs.
  /build/2/dvbtune-0.5.ds/2nd/dvbtune.c:140

The attached patches fix this by modifying the upstream Makefile to
append EXTRA_CFLAGS to CFLAGS, and passing EXTRA_CFLAGS in debian/rules
in the dh_auto_build phase. This passes the default CFLAGS from
dpkg-buildflags, which includes the -ffile-prefix-map argument to avoid
embedding the absolute path in compiled files.


With these patches applied, dvbtune should build reproducibly on
tests.reproducible-builds.org!


live well,
  vagrant
From c041172edf70e46071bcff23ea35baa1688ea219 Mon Sep 17 00:00:00 2001
From: Vagrant Cascadian <vagrant@reproducible-builds.org>
Date: Thu, 12 May 2022 00:38:57 +0000
Subject: [PATCH 1/3] debian/patches: Allow passing additional CFLAGS via
 EXTRA_CFLAGS to Makefile.

---
 ...kefile-allow-passing-additional-cflags.patch | 17 +++++++++++++++++
 debian/patches/series                           |  1 +
 2 files changed, 18 insertions(+)
 create mode 100644 debian/patches/makefile-allow-passing-additional-cflags.patch

diff --git a/debian/patches/makefile-allow-passing-additional-cflags.patch b/debian/patches/makefile-allow-passing-additional-cflags.patch
new file mode 100644
index 0000000..5f569d7
--- /dev/null
+++ b/debian/patches/makefile-allow-passing-additional-cflags.patch
@@ -0,0 +1,17 @@
+From: Vagrant Cascadian <vagrant@reproducible-builds.org>
+Date: Thu, 12 May 2022 00:34:59 +0000
+X-Dgit-Generated: 0.5.ds-4~20220512~0 b5ac71a0203370a76a210e7897ff0f70090741c4
+Subject: Makefile: Allow passing additional CFLAGS via EXTRA_CFLAGS.
+
+
+---
+
+--- dvbtune-0.5.ds.orig/Makefile
++++ dvbtune-0.5.ds/Makefile
+@@ -1,5 +1,5 @@
+ INCS=-I /usr/include/libxml2
+-CFLAGS= -g -Wall $(INCS) -DVERSION=\"$(VERSION)\"
++CFLAGS= -g -Wall $(INCS) -DVERSION=\"$(VERSION)\" $(EXTRA_CFLAGS)
+ CC=gcc
+ all: dvbtune
+ 
diff --git a/debian/patches/series b/debian/patches/series
index b5bb219..ebd13ad 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -2,3 +2,4 @@
 10_options.patch
 30_stdint.patch
 fix_debugbuild.patch
+makefile-allow-passing-additional-cflags.patch
-- 
2.30.2

From a89d2ffd48dfedaffaeeb96ce83520f59845a44e Mon Sep 17 00:00:00 2001
From: Vagrant Cascadian <vagrant@reproducible-builds.org>
Date: Thu, 12 May 2022 00:35:32 +0000
Subject: [PATCH 2/3] debian/rules: Pass CFLAGS as EXTRA_CFLAGS to
 dh_auto_build.

---
 debian/rules | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/debian/rules b/debian/rules
index 3e0c521..c675009 100755
--- a/debian/rules
+++ b/debian/rules
@@ -7,8 +7,8 @@ VERSION=0.5
 
 override_dh_auto_build:
 	dh_testdir
-	dh_auto_build -- VERSION=$(VERSION)
-	dh_auto_build -- VERSION=$(VERSION) xml2vdr
+	dh_auto_build -- VERSION=$(VERSION) EXTRA_CFLAGS="$(CFLAGS)"
+	dh_auto_build -- VERSION=$(VERSION) EXTRA_CFLAGS="$(CFLAGS)" xml2vdr
 	#rm -rf $(BUILD_DIR)/scripts/CVS
 	docbook-to-man debian/dvbtune.sgml > dvbtune.1
 	docbook-to-man debian/xml2vdr.sgml > xml2vdr.1
-- 
2.30.2

Attachment: signature.asc
Description: PGP signature


Reply to: