summary refs log tree commit diff
path: root/distro/patches/m4-readlink-EINVAL.patch
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2012-08-22 17:24:38 +0200
committerLudovic Courtès <ludo@gnu.org>2012-08-22 17:25:43 +0200
commit800cdeef31ccc92c9f54b62ec5276985d7b157b1 (patch)
tree81381bff713789d149aad1ebc354b42849ecebad /distro/patches/m4-readlink-EINVAL.patch
parentaf5521ca019a81d1efc4428cec242bb4f9d77a05 (diff)
downloadguix-800cdeef31ccc92c9f54b62ec5276985d7b157b1.tar.gz
distro: Move patches to their own directory.
* Makefile.am (nobase_dist_guilemodule_DATA): Keep only $(MODULES).
  (patchdir): New variable.
  (dist_patch_DATA): New variable.  Patch files formerly
  in $(nobase_dist_guilemodule_DATA).
  (.scm.go): Define `DISTRO_PATCH_DIRECTORY' and
  `DISTRO_INSTALLED_PATCH_DIRECTORY'.
  (TESTS_ENVIRONMENT): Define `DISTRO_PATCH_DIRECTORY'.

* distro.scm (%patch-directory): New variable.
  (search-patch): New procedure.
* distro/base.scm: Use `search-patch' instead of `(search-path
  %load-path ...)'.

* distro/findutils-absolute-paths.patch, distro/guile-1.8-cpp-4.5.patch,
  distro/m4-readlink-EINVAL.patch, distro/m4-s_isdir.patch,
  distro/make-impure-dirs.patch: Move to `distro/patches'.
Diffstat (limited to 'distro/patches/m4-readlink-EINVAL.patch')
-rw-r--r--distro/patches/m4-readlink-EINVAL.patch18
1 files changed, 18 insertions, 0 deletions
diff --git a/distro/patches/m4-readlink-EINVAL.patch b/distro/patches/m4-readlink-EINVAL.patch
new file mode 100644
index 0000000000..dd371584a7
--- /dev/null
+++ b/distro/patches/m4-readlink-EINVAL.patch
@@ -0,0 +1,18 @@
+Newer Linux kernels would return EINVAL instead of ENOENT.
+The patch below, taken from Gnulib, allows the test to pass when
+these Linux versions are in use:
+https://lists.gnu.org/archive/html/bug-gnulib/2011-03/msg00308.html .
+
+diff --git a/tests/test-readlink.h b/tests/test-readlink.h
+index 08d5662..7247fc4 100644
+--- a/tests/test-readlink.h
++++ b/tests/test-readlink.h
+@@ -38,7 +38,7 @@ test_readlink (ssize_t (*func) (char const *, char *, size_t), bool print)
+   ASSERT (errno == ENOENT);
+   errno = 0;
+   ASSERT (func ("", buf, sizeof buf) == -1);
+-  ASSERT (errno == ENOENT);
++  ASSERT (errno == ENOENT || errno == EINVAL);
+   errno = 0;
+   ASSERT (func (".", buf, sizeof buf) == -1);
+   ASSERT (errno == EINVAL);