Source: beav Version: 1:1.40-18 Severity: wishlist Tags: patch User: reproducible-builds@lists.alioth.debian.org Usertags: timestamps X-Debbugs-Cc: reproducible-builds@lists.alioth.debian.org
Hi! While working on the “reproducible builds” effort [1], we have noticed that beav could not be built reproducibly. The attached patch sets the mtimes of all files which are modified during the built to the date of the last changelog entry in order to produce files with reproducible metadata. Cheers, akira [1]: https://wiki.debian.org/ReproducibleBuilds
diff -u beav-1.40/debian/rules beav-1.40/debian/rules --- beav-1.40/debian/rules +++ beav-1.40/debian/rules @@ -7,6 +7,8 @@ ARCH = $(shell dpkg --print-installation-architecture) STRIP=strip --strip-unneeded --remove-section=.note --remove-section=.comment +BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date) + build: # Builds the binary package. make CFLAGS="$(CFLAGS)" LDFLAGS="$(LDFLAGS)" @@ -40,6 +42,8 @@ dpkg-gencontrol -isp chown -R root.root debian/tmp chmod -R g-ws debian/tmp + find debian/tmp -newermt '$(BUILD_DATE)' -print0 | \ + xargs -0r touch --no-dereference --date='$(BUILD_DATE)' dpkg --build debian/tmp .. binary: binary-indep binary-arch diff -u beav-1.40/debian/changelog beav-1.40/debian/changelog --- beav-1.40/debian/changelog +++ beav-1.40/debian/changelog @@ -1,3 +1,10 @@ +beav (1:1.40-18.1) UNRELEASED; urgency=medium + + * Non-maintainer upload. + * Fix mtimes before building binary packages to produce reproducible output + + -- akira <marival...@gmail.com> Thu, 16 Jul 2015 20:58:48 +0200 + beav (1:1.40-18) unstable; urgency=low * Repackaged with the original 1.40 source so that we get a proper diff.gz.
_______________________________________________ Reproducible-builds mailing list Reproducible-builds@lists.alioth.debian.org http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds