gnu: findutils: Fix bootstrap on aarch64-linux and armhf-linux.

* gnu/packages/patches/findutils-test-rwlock-threads.patch: New file.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
* gnu/packages/base.scm (findutils)[source](patches): Add it.
This commit is contained in:
Marius Bakke 2020-01-14 17:56:24 +01:00
parent 0bcc1b14fc
commit f87b68a186
No known key found for this signature in database
GPG key ID: A2A06DF2A33A54FA
3 changed files with 41 additions and 1 deletions

View file

@ -854,6 +854,7 @@ dist_patch_DATA = \
%D%/packages/patches/fifo-map-remove-catch.hpp.patch \
%D%/packages/patches/file-CVE-2019-18218.patch \
%D%/packages/patches/findutils-localstatedir.patch \
%D%/packages/patches/findutils-test-rwlock-threads.patch \
%D%/packages/patches/flann-cmake-3.11.patch \
%D%/packages/patches/flint-ldconfig.patch \
%D%/packages/patches/foomatic-filters-CVE-2015-8327.patch \

View file

@ -261,7 +261,8 @@ (define-public findutils
(sha256
(base32
"16kqz9yz98dasmj70jwf5py7jk558w96w0vgp3zf9xsqk3gzpzn5"))
(patches (search-patches "findutils-localstatedir.patch"))))
(patches (search-patches "findutils-localstatedir.patch"
"findutils-test-rwlock-threads.patch"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags (list

View file

@ -0,0 +1,38 @@
Skip "test-rwlock1" when multithreading is disabled, which is the case
during bootstrapping on architectures not supported by GNU Mes.
Taken from upstream gnulib:
https://git.savannah.gnu.org/cgit/gnulib.git/commit/?id=fdff8bd09a7f053381f8bdb107ab5280b7c95959
diff --git a/gnulib-tests/test-rwlock1.c b/gnulib-tests/test-rwlock1.c
--- a/gnulib-tests/test-rwlock1.c
+++ b/gnulib-tests/test-rwlock1.c
@@ -21,6 +21,8 @@
#include <config.h>
+#if USE_ISOC_THREADS || USE_POSIX_THREADS || USE_ISOC_AND_POSIX_THREADS || USE_WINDOWS_THREADS
+
#include "glthread/lock.h"
#include <errno.h>
@@ -151,3 +153,18 @@ main ()
sleep (1);
}
}
+
+#else
+
+/* No multithreading available. */
+
+#include <stdio.h>
+
+int
+main ()
+{
+ fputs ("Skipping test: multithreading not enabled\n", stderr);
+ return 77;
+}
+
+#endif