control: tag -1 + patch

On 2015-08-03 23:04, Aurelien Jarno wrote:
> On 2015-04-17 11:28, Edmund Grimley Evans wrote:
> > Source: make-dfsg
> > Version: 4.0-8.1
> > 
> > When building with binutils 2.25-6, the version currently in unstable,
> > it fails to build. The output is:
> > 
> > features/archives ....................................... FAILED (3/10 
> > passed)
> > 
> > It's clear what's happening here. This entry in the changelog for
> > binutils (2.25-6) explains it:
> > 
> >   * Configure with --enable-deterministic-archives. Closes: #774429.
> > 
> > Files are added to archives with a zero timestamp so make then adds
> > them again, unexpectedly.
> > 
> > However, I'm not sure how you'll want to fix this. Weaken the test
> > somehow?
> 
> I have just noted that ar has the 'U' option to disable deterministic
> archives. This would allow to still test this part of make.
> 
> Unfortunately ar doesn't take arguments, but rather a list of modifiers
> which need to be in the same argument, so we can't use an alias to force
> this. We could also have done that using a shell function, but POSIX
> shells do not provide a way to export shell functions. We can still do
> it by using a wrapper called ar and changing PATH to point first to
> the directory containing the wrapper. That's a bit more ugly though.

You'll find below a patch using this approach. I would like to see this
longstanding issue fixed soon, so I offer to do an NMU in a few days,
unless someone opposes.

diff -Nru make-dfsg-4.0/debian/changelog make-dfsg-4.0/debian/changelog
--- make-dfsg-4.0/debian/changelog      2015-01-17 18:30:55.000000000 +0000
+++ make-dfsg-4.0/debian/changelog      2015-08-22 09:40:52.000000000 +0000
@@ -1,3 +1,11 @@
+make-dfsg (4.0-8.2) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Use a wrapper in the testsuite for ar to force it to not run in
+    deterministic mode (Closes: #782750).
+
+ -- Aurelien Jarno <aure...@debian.org>  Sat, 22 Aug 2015 09:22:54 +0000
+
 make-dfsg (4.0-8.1) unstable; urgency=medium
 
   * Non-maintainer upload.
diff -Nru make-dfsg-4.0/debian/rules make-dfsg-4.0/debian/rules
--- make-dfsg-4.0/debian/rules  2014-06-13 23:13:45.000000000 +0000
+++ make-dfsg-4.0/debian/rules  2015-08-22 09:24:45.000000000 +0000
@@ -45,10 +45,10 @@
 
 override_dh_auto_test:
 ifneq (,$(filter make-guile, $(shell dh_listpackages)))
-       dh_auto_test --parallel -B$(BUILDDIR_GUILE)
+       PATH=$(CURDIR)/debian/wrappers:$$PATH dh_auto_test --parallel 
-B$(BUILDDIR_GUILE)
 endif
 ifneq (,$(filter make, $(shell dh_listpackages)))
-       dh_auto_test --parallel -B$(BUILDDIR_NORMAL)
+       PATH=$(CURDIR)/debian/wrappers:$$PATH dh_auto_test --parallel 
-B$(BUILDDIR_NORMAL)
 endif
 
 override_dh_auto_install:
diff -Nru make-dfsg-4.0/debian/wrappers/ar make-dfsg-4.0/debian/wrappers/ar
--- make-dfsg-4.0/debian/wrappers/ar    1970-01-01 00:00:00.000000000 +0000
+++ make-dfsg-4.0/debian/wrappers/ar    2015-08-22 09:27:38.000000000 +0000
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+# Force ar to not run in deterministic mode, as the testsuite relies
+# on UID, GID, timestamp and file mode values to be correctly stored.
+
+exec /usr/bin/ar U$@

-- 
Aurelien Jarno                          GPG: 4096R/1DDD8C9B
aurel...@aurel32.net                 http://www.aurel32.net

Reply via email to