Source: libsyncml Version: 0.5.4-2.2 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 libsyncml could not be built reproducibly since it suffers from timestamps in manpages generated by doxygen [2]. The reproducible builds team is building packages using a version of doxygen which has been patched to honour the environment variable $SOURCE_DATE_EPOCH [3]. This results in doxygen using the last date in debian/changelog as the timestamp for its man page output which causes packages to become reproducible [4]. During our tests $SOURCE_DATE_EPOCH is exported by the debhelper from our experimental git repository which we have patched such that packages using dh (debhelper >= 9) in debian/rules become automatically reproducible. This unfortunately does not make the package libsyncml reproducible because it does not use dh in debian/rules but instead classic debhelper. There are two solutions for libsyncml: 1. To rewrite debian/rules to use dh 2. To implement the attached patch which exports $SOURCE_DATE_EPOCH in debian/rules. Kind Regards, akira [1] https://wiki.debian.org/ReproducibleBuilds/About [2] https://reproducible.debian.net/issues/unstable/timestamps_in_manpages_generated_by_doxygen_issue.html [3] https://wiki.debian.org/ReproducibleBuilds/TimestampsProposal [4] https://wiki.debian.org/ReproducibleBuilds/ExperimentalToolchain#doxygen Cheers, akira
diff -u libsyncml-0.5.4/debian/changelog libsyncml-0.5.4/debian/changelog --- libsyncml-0.5.4/debian/changelog +++ libsyncml-0.5.4/debian/changelog @@ -1,3 +1,11 @@ +libsyncml (0.5.4-2.3) UNRELEASED; urgency=medium + + * Non-maintainer upload. + * Export environment variable $SOURCE_DATE_EPOCH to produce reproducible + timestamps in manpage output + + -- akira <marival...@gmail.com> Fri, 31 Jul 2015 11:21:17 +0200 + libsyncml (0.5.4-2.2) unstable; urgency=medium * Non-maintainer upload. diff -u libsyncml-0.5.4/debian/rules libsyncml-0.5.4/debian/rules --- libsyncml-0.5.4/debian/rules +++ libsyncml-0.5.4/debian/rules @@ -11,6 +11,8 @@ DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) +export SOURCE_DATE_EPOCH = $(shell date -d "$$(dpkg-parsechangelog --count 1 -SDate)" +%s) + CFLAGS = -Wall -g ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) CFLAGS += -O0
signature.asc
Description: OpenPGP digital signature
_______________________________________________ Reproducible-builds mailing list Reproducible-builds@lists.alioth.debian.org http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds