Source: binutils-m68hc1x Version: 1:2.18-3.3 Severity: wishlist Tags: patch User: reproducible-bui...@lists.alioth.debian.org Usertags: timestamps X-Debbugs-Cc: reproducible-bui...@lists.alioth.debian.org
Hi, While working on the "reproducible builds" effort [1], we have noticed that binutils-m68hc1x could not be built reproducibly. The attached patch removes timestamps from the build system. Once applied, binutils-m68hc1x can be built reproducibly in our current experimental framework. [1]: https://wiki.debian.org/ReproducibleBuilds Regards, -- ,''`. : :' : Chris Lamb `. `'` la...@debian.org / chris-lamb.co.uk `-
diff -urNad binutils-m68hc1x.orig/binutils-m68hc1x-2.18/debian/rules binutils-m68hc1x/binutils-m68hc1x-2.18/debian/rules --- binutils-m68hc1x.orig/binutils-m68hc1x-2.18/debian/rules 2015-02-07 10:59:56.074768521 +0000 +++ binutils-m68hc1x/binutils-m68hc1x-2.18/debian/rules 2015-02-07 11:47:23.096356525 +0000 @@ -5,6 +5,8 @@ # Uncomment this to turn on verbose mode. #export DH_VERBOSE=1 +BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date) + # These are used for cross-compiling and for saving the configure script # from having to guess our platform (since we know it already) DEB_BUILD_GNU_TYPE := $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) @@ -58,7 +60,8 @@ build-stamp: configure dh_testdir cd build && $(MAKE) - tar cfz $(CURDIR)/example.tar.gz example + find example -print0 | xargs -0r touch --date="$(BUILD_DATE)" + GZIP=-9n tar cfz $(CURDIR)/example.tar.gz example touch build-stamp install: build