Control: tags 748657 + patch
Control: tags 748657 + pending

Dear maintainer,

I've prepared an NMU for make-dfsg (versioned as 4.0-8.1).

Testing fopen is machine-dependent and reliant on local ulimit values.
The previous patch to simply timeout based on the (unknown) value of
the current ulimit is inherently unreliable and machine-dependent.

It would not seem sensible for a package like make to test the machine
running the build instead of the code built by that machine.

Calls to ulimit are not supportable within perl due to
architecture-specific limitations and calling ulimit from a child
process would not affect the ulimit of the calling perl process. So,
overall, the only option as far as I see it is to simply skip this
misguided test.

This replaces a meaningless fopen "result" with:
misc/fopen-fail ......................................... N/A

I will upload to DELAYED/4 - let me know if you want it delayed longer.

Regards.
diff -Nru make-dfsg-4.0/debian/changelog make-dfsg-4.0/debian/changelog
--- make-dfsg-4.0/debian/changelog	2014-06-14 00:13:45.000000000 +0100
+++ make-dfsg-4.0/debian/changelog	2015-01-17 18:30:55.000000000 +0000
@@ -1,3 +1,12 @@
+make-dfsg (4.0-8.1) unstable; urgency=medium
+
+  * Non-maintainer upload.
+  * Skip the work/misc/fopen-fail.mk as it is testing the underlying
+    machine, not the built code from the package and is machine-dependent.
+    (Closes: #748657)
+
+ -- Neil Williams <codeh...@debian.org>  Sat, 17 Jan 2015 18:30:17 +0000
+
 make-dfsg (4.0-8) unstable; urgency=high
 
   * Update the timeout for the fopen fail test to 300 seconds, since the
diff -Nru make-dfsg-4.0/debian/patches/series make-dfsg-4.0/debian/patches/series
--- make-dfsg-4.0/debian/patches/series	2014-06-14 00:13:45.000000000 +0100
+++ make-dfsg-4.0/debian/patches/series	2015-01-17 18:31:16.000000000 +0000
@@ -10,3 +10,4 @@
 0009-handle_excessive_command_length-Patch-to-fix-large-c.patch
 0010-makeint.h-STOP_SET-SV-40371-Cast-to-unsigned-char.patch
 0011-test-fopenfail-timeout-fix-Set-fopen-fail-timeout-to.patch
+skip-fopen-fail.patch
diff -Nru make-dfsg-4.0/debian/patches/skip-fopen-fail.patch make-dfsg-4.0/debian/patches/skip-fopen-fail.patch
--- make-dfsg-4.0/debian/patches/skip-fopen-fail.patch	1970-01-01 01:00:00.000000000 +0100
+++ make-dfsg-4.0/debian/patches/skip-fopen-fail.patch	2015-01-17 18:32:29.000000000 +0000
@@ -0,0 +1,40 @@
+Description: Drop test based on ulimit
+ Testing ulimit settings is machine dependent and unreliable
+ as a test of the built code. Skip this test and drop previous
+ code which tried to timeout instead.
+ .
+ make-dfsg (4.0-8.1) unstable; urgency=medium
+ .
+   * Non-maintainer upload.
+   * Skip the work/misc/fopen-fail.mk as it is testing the underlying
+     machine, not the built code from the package and is machine-dependent.
+     (Closes: #748657)
+Author: Neil Williams <codeh...@debian.org>
+Bug-Debian: https://bugs.debian.org/748657
+
+---
+
+--- make-dfsg-4.0.orig/tests/test_driver.pl
++++ make-dfsg-4.0/tests/test_driver.pl
+@@ -464,14 +464,14 @@ sub run_all_tests
+         $tests_run = 0;
+         $tests_passed = 0;
+ 
+-	if ($testname =~ m{misc/fopen-fail}msx) { $test_timeout = 300; }
+-        # Run the test!
+-        $code = do $perl_testname;
+-
+-        ++$categories_run;
+-        $total_tests_run += $tests_run;
+-        $total_tests_passed += $tests_passed;
++        if ($testname =~ m{misc/fopen-fail}msx) { $code = -1; } else {
++            # Run the test!
++            $code = do $perl_testname;
+ 
++            ++$categories_run;
++            $total_tests_run += $tests_run;
++            $total_tests_passed += $tests_passed;
++        }
+         # How did it go?
+         if (!defined($code)) {
+             # Failed to parse or called die

Reply via email to