[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

[Pkg-octave-devel] Bug#778458: please strip times from generated doc-cache



Package: octave-pkg-dev
Version: 1.1.3
Severity: wishlist
Tags: patch
User: reproducible-builds@lists.alioth.debian.org
Usertags: timestamps

Hi!

While working on Debian's “reproducible builds” effort [1], we have
noticed that none of the octave-* packages build reproducibly.
Octave, by default, writes a timestamp to (at least) the doc-cache
file output by the "pkg install" action.

The attached patch prevents this.

It will, however, change the output of all calls to the save function.
I do not know if this will be a problem, or if this matters in practice.

Possible alternative fixes:
 * Don't ship the doc-cache?  Octave recommend shipping it. #37542 [2]
 * Call save_header_format_string at a narrower scope, to ensure it only
      changes the doc-cache.
      install.m -> generate_lookfor_cache.m -> doc_cache_create.m.
 * Make it possible for packages to opt-in to this fix (environment
      variable, perhaps?)

Regards,
 Chris

 [1]: https://wiki.debian.org/ReproducibleBuilds
 [2]: https://savannah.gnu.org/bugs/?37542

--- a/octave-pkg.mk	2015-02-15 10:50:58.851375767 +0000
+++ b/octave-pkg.mk	2015-02-15 10:53:58.556258122 +0000
@@ -92,6 +92,8 @@
 		      [pwd(),'/$(debpkg)/$(bpath)']);			\
 		 pkg ('local_list', [pwd(),'/$(local_list)']);		\
 		 pkg ('global_list', [pwd(),'/$(global_list)']);	\
+		 save_header_format_string(				\
+		  '# Generated by Octave during Debian package build');	\
 		 if (exist ('PKG_ADD.bak') == 2),			\
 		     movefile ('PKG_ADD.bak', 'PKG_ADD');		\
 		 endif;							\

Reply to: