Source: pidgin-blinklight Severity: normal Tags: patch User: reproducible-bui...@lists.alioth.debian.org Usertags: buildpath X-Debbugs-Cc: reproducible-b...@lists.alioth.debian.org
The build path is embedded in /usr/lib/purple-2/pidgin-blinklight.so and /usr/lib/pidgin-blinklight/blinklight-fixperm: https://tests.reproducible-builds.org/debian/rb-pkg/unstable/amd64/diffoscope-results/pidgin-blinklight.html /build/1st/pidgin-blinklight-0.11.1/src/blinklight-fixperm.c:17 vs. /build/2/pidgin-blinklight-0.11.1/2nd/src/blinklight-fixperm.c:17 The attached patch fixes this by updating to use debhelper compat level 13 and switching to use "dh" in debian/rules. This passes the default CFLAGS from dpkg-buildflags, which includes the -ffile-prefix-map argument to avoid embedding the absolute path in compiled files. As a bonus, it should also fix https://bugs.debian.org/999100 With this patch applied, pidgin-blinklight should build reproducibly on tests.reproducible-builds.org! live well, vagrant
From f91a7064d8c34845db9495563a156c43e18ce3cc Mon Sep 17 00:00:00 2001 From: Vagrant Cascadian <vagr...@reproducible-builds.org> Date: Wed, 11 May 2022 21:24:28 +0000 Subject: [PATCH 1/3] Convert to dh and debhelper-compat 13. (Closes: #999100) --- debian/compat | 1 - debian/control | 2 +- debian/rules | 99 +++++--------------------------------------------- 3 files changed, 10 insertions(+), 92 deletions(-) delete mode 100644 debian/compat diff --git a/debian/compat b/debian/compat deleted file mode 100644 index 7f8f011..0000000 --- a/debian/compat +++ /dev/null @@ -1 +0,0 @@ -7 diff --git a/debian/control b/debian/control index 0d76a65..78b995b 100644 --- a/debian/control +++ b/debian/control @@ -2,7 +2,7 @@ Source: pidgin-blinklight Section: net Priority: optional Maintainer: Debian QA Group <packa...@qa.debian.org> -Build-Depends: debhelper (>= 7), autotools-dev, pidgin-dev, pkg-config +Build-Depends: debhelper-compat (= 13), pidgin-dev, pkg-config Standards-Version: 3.8.3 Vcs-Darcs: http://darcs.nomeata.de/pidgin-blinklight.debian Vcs-Browser: http://darcs.nomeata.de/cgi-bin/darcsweb.cgi?r=pidgin-blinklight.debian;a=summary diff --git a/debian/rules b/debian/rules index 7aa7503..a094b85 100755 --- a/debian/rules +++ b/debian/rules @@ -1,103 +1,22 @@ #! /usr/bin/make -f # -*- makefile -*- -# Sample debian/rules that uses debhelper. -# This file was originally written by Joey Hess and Craig Small. -# As a special exception, when this file is copied by dh-make into a -# dh-make output file, you may use that output file without restriction. -# This special exception was added by Craig Small in version 0.37 of dh-make. -# Uncomment this to turn on verbose mode. -#export DH_VERBOSE=1 +%: + dh $@ +override_dh_auto_configure: + dh_auto_configure -- CFLAGS="$(CFLAGS)" CC="$(CC)" CXX="$(CXX)" --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) --prefix=/usr --mandir=\$${prefix}/share/man --infodir=\$${prefix}/share/info --libexecdir=\$${prefix}/lib/pidgin-blinklight -# These are used for cross-compiling and for saving the configure script -# from having to guess our platform (since we know it already) -DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) -DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) -CFLAGS = -Wall -g - -ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) - CFLAGS += -O0 -else - CFLAGS += -O2 -endif - -ifeq (ccache,$(findstring ccache,$(DEB_BUILD_OPTIONS))) -CC:=ccache $(CC) -CXX:=ccache $(CXX) -endif - -config.status: configure - dh_testdir - dh_autotools-dev_updateconfig - # Add here commands to configure the package. - CFLAGS="$(CFLAGS)" ./configure CC="$(CC)" CXX="$(CXX)" --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) --prefix=/usr --mandir=\$${prefix}/share/man --infodir=\$${prefix}/share/info --libexecdir=\$${prefix}/lib/pidgin-blinklight - - -build: build-stamp -build-stamp: config.status - dh_testdir - - # Add here commands to compile the package. - $(MAKE) - - touch build-stamp - -clean: - dh_testdir - dh_testroot - rm -f build-stamp - - # Add here commands to clean up after the build process. - [ ! -f Makefile ] || $(MAKE) distclean +override_dh_auto_clean: + dh_auto_clean -rm -f po/*gmo po/stamp-po - dh_autotools-dev_restoreconfig - dh_clean -install: build - dh_testdir - dh_testroot - dh_prep - dh_installdirs - - $(MAKE) install DESTDIR=$(CURDIR)/debian/pidgin-blinklight +override_dh_auto_install: + dh_auto_install rm -f $(CURDIR)/debian/pidgin-blinklight/usr/lib/purple-2/pidgin-blinklight.la - -# Build architecture-independent files here. -binary-indep: build install -# We have nothing to do by default. - -# Build architecture-dependent files here. -binary-arch: build install - dh_testdir - dh_testroot - dh_installchangelogs ChangeLog - dh_installdocs - dh_installexamples -# dh_install -# dh_installmenu -# dh_installdebconf -# dh_installlogrotate -# dh_installemacsen -# dh_installpam -# dh_installmime -# dh_installinit -# dh_installcron -# dh_installinfo - dh_installman - dh_link - dh_strip - dh_compress +override_dh_fixperms: dh_fixperms chmod u+s $(CURDIR)/debian/pidgin-blinklight/usr/lib/pidgin-blinklight/blinklight-fixperm dh_pidgin -ppidgin-blinklight - dh_installdeb - dh_shlibdeps - dh_gencontrol - dh_md5sums - dh_builddeb - -binary: binary-indep binary-arch -.PHONY: build clean binary-indep binary-arch binary install -- 2.30.2
signature.asc
Description: PGP signature