Package: pyopencl
Version: 2015.1-1
Severity: wishlist
Tags: patch
User: reproducible-builds@lists.alioth.debian.org
Usertags: timestamps

Hi!

While working on the "reproducible builds" effort [1], we have noticed
that pyopencl could not be built reproducibly.

The attached patch removes extra timestamps from the build system.
Once applied, pyopencl can be built reproducibly in our current experimental
framework.

 [1]: https://wiki.debian.org/ReproducibleBuilds
diff -urNp pyopencl-2015.1.old/debian/rules pyopencl-2015.1/debian/rules
--- pyopencl-2015.1.old/debian/rules	2015-06-09 18:08:24.000000000 -0300
+++ pyopencl-2015.1/debian/rules	2015-06-11 12:26:35.960143776 -0300
@@ -12,6 +12,8 @@ endif
 
 LAST_CHANGE=$(shell dpkg-parsechangelog -S Date)
 BUILD_DATE=$(shell LC_ALL=C date -u "+%B %d, %Y" -d "$(LAST_CHANGE)")
+SPHINXOPTS:=-D today=\"$(BUILD_DATE)\"
+SPHINXOPTS+=-D html_last_updated_fmt=\"$(BUILD_DATE)\"
 
 %:
 	dh $@ --with python2,python3,sphinxdoc
@@ -50,7 +52,7 @@ override_dh_auto_install:
 override_dh_installdocs:
 # Required to build PyOpenCL symbols for documentation
 	cp -Ri pyopencl.egg-info build/lib.*-*-$(firstword $(PYTHON2))/
-	PYTHONPATH=../$$(ls -d build/lib.*-*-$(firstword $(PYTHON2)))/ $(MAKE) -C doc html SPHINXOPTS='-D today="$(BUILD_DATE)"'
+	PYTHONPATH=../$$(ls -d build/lib.*-*-$(firstword $(PYTHON2)))/ $(MAKE) -C doc html SPHINXOPTS="$(SPHINXOPTS)"
 	rm -rf build/lib.*-*-$(firstword $(PYTHON2))/pyopencl.egg-info 
 	dh_installdocs
 
_______________________________________________
Reproducible-builds mailing list
Reproducible-builds@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/reproducible-builds

Reply via email to