[xz-devel] Re: xz-utils: make the selected POSIX shell stable accross build environments

Ximin Luo infinity0 at debian.org
Wed Jun 28 17:10:00 UTC 2017


Ximin Luo:
> Lasse Collin:
>> posix-shell.m4 comes from gnulib
>>
>> [..]
>>
>> One can force the POSIX shell to a specific value on the configure
>> command line by passing, for example, "gl_cv_posix_shell=/bin/sh" as an
>> argument. It's not documented in the --help output but it's mentioned
>> in INSTALL section 3.1. That is an alternative to patching to get
>> reproducible builds.
>>
> 
> Hi Lasse,
> 
> Looks like the gnulib guys weren't willing to accept my patch so I'll go the gl_cv_posix_shell route. This is Debian-specific, so xz-utils won't need to make any changes.
> 
> Thanks for your time and your pointers!
> 
> @Debian maintainer, please see the attached patch.
> 

I've uploaded this to DELAYED/14. The debdiff is attached, it's the same patch as before just with a proper changelog entry.

X

-- 
GPG: ed25519/56034877E1F87C35
GPG: rsa4096/1318EFAC5FBBDBCE
https://github.com/infinity0/pubkeys.git
-------------- next part --------------
diff -Nru xz-utils-5.2.2/debian/changelog xz-utils-5.2.2/debian/changelog
--- xz-utils-5.2.2/debian/changelog	2016-10-08 15:11:19.000000000 +0200
+++ xz-utils-5.2.2/debian/changelog	2017-06-28 18:39:19.000000000 +0200
@@ -1,3 +1,11 @@
+xz-utils (5.2.2-1.3) unstable; urgency=medium
+
+  * Non-maintainer upload.
+  * Force a constant /bin/sh for installed scripts. This helps the build
+    be reproducible; /bin/sh on Debian is always POSIX. (Closes: #806331)
+
+ -- Ximin Luo <infinity0 at debian.org>  Wed, 28 Jun 2017 18:39:19 +0200
+
 xz-utils (5.2.2-1.2) unstable; urgency=medium
 
   * Non-maintainer upload.
diff -Nru xz-utils-5.2.2/debian/rules xz-utils-5.2.2/debian/rules
--- xz-utils-5.2.2/debian/rules	2016-10-08 15:01:46.000000000 +0200
+++ xz-utils-5.2.2/debian/rules	2017-06-28 18:11:21.000000000 +0200
@@ -66,12 +66,14 @@
 
 debian/normal-build/Makefile debian/normal-build/Doxyfile: $(configure_input)
 	dh_auto_configure --builddirectory debian/normal-build -- \
+		$(opt_reproduce) \
 		--enable-threads --disable-static \
 		$(opt_optimize) $(opt_quiet) \
 		--disable-xzdec --disable-lzmadec
 
 debian/static-build/Makefile: $(configure_input)
 	dh_auto_configure --builddirectory debian/static-build -- \
+		$(opt_reproduce) \
 		--disable-threads --disable-shared \
 		--enable-liblzma2-compat \
 		$(opt_optimize) $(opt_quiet) \
@@ -81,6 +83,7 @@
 
 debian/xzdec-build/Makefile: $(configure_input)
 	dh_auto_configure --builddirectory debian/xzdec-build -- \
+		$(opt_reproduce) \
 		--disable-shared --disable-nls --disable-encoders \
 		--enable-small --disable-threads \
 		--disable-liblzma2-compat \
@@ -97,6 +100,7 @@
 flags_cmd = dpkg-buildflags --export=configure
 opt_optimize = $(shell $(flags_cmd))
 opt_optimize_small = $(shell $(small_flags_env) $(flags_cmd))
+opt_reproduce = gl_cv_posix_shell=/bin/sh
 
 opt_no_act =
 opt_quiet =


More information about the Reproducible-builds mailing list