From 21cf0d36db9f02b3da976088b5ab466822d16625 Mon Sep 17 00:00:00 2001 From: Mathieu Othacehe Date: Mon, 11 Jan 2021 11:29:00 +0100 Subject: gnu: guile: Fix tests on emulated architectures. The stack overflow test limits the virtual memory size using setrlimit with RLIMIT_AS argument. This is ignored when using QEMU transparent emulation, causing the test to crash. * gnu/packages/patches/guile-2.2-skip-so-test.patch: New file. * gnu/local.mk (dist_patch_DATA): Register it. * gnu/packages/guile.scm (guile-3.0-latest): Add it. --- gnu/local.mk | 1 + gnu/packages/guile.scm | 23 +++++++++++++---------- gnu/packages/patches/guile-2.2-skip-so-test.patch | 23 +++++++++++++++++++++++ 3 files changed, 37 insertions(+), 10 deletions(-) create mode 100644 gnu/packages/patches/guile-2.2-skip-so-test.patch diff --git a/gnu/local.mk b/gnu/local.mk index dea7b3a906..a41795d8aa 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1126,6 +1126,7 @@ dist_patch_DATA = \ %D%/packages/patches/gspell-dash-test.patch \ %D%/packages/patches/guile-1.8-cpp-4.5.patch \ %D%/packages/patches/guile-2.2-skip-oom-test.patch \ + %D%/packages/patches/guile-2.2-skip-so-test.patch \ %D%/packages/patches/guile-default-utf8.patch \ %D%/packages/patches/guile-2.2-default-utf8.patch \ %D%/packages/patches/guile-relocatable.patch \ diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm index 1c983e50eb..dfba797b79 100644 --- a/gnu/packages/guile.scm +++ b/gnu/packages/guile.scm @@ -310,16 +310,19 @@ without requiring the source code to be rewritten.") (define-public guile-3.0-latest ;; TODO: Make this 'guile-3.0' on the next rebuild cycle. - (package - (inherit guile-3.0) - (version "3.0.5") - (source (origin - (inherit (package-source guile-3.0)) - (uri (string-append "mirror://gnu/guile/guile-" - version ".tar.xz")) - (sha256 - (base32 - "1wah6fq1h8vmbpdadjych1mq8hyqkd7p015cbxm14ri37l1gnxid")))))) + (package-with-extra-patches + (package + (inherit guile-3.0) + (version "3.0.5") + (source (origin + (inherit (package-source guile-3.0)) + (uri (string-append "mirror://gnu/guile/guile-" + version ".tar.xz")) + (sha256 + (base32 + "1wah6fq1h8vmbpdadjych1mq8hyqkd7p015cbxm14ri37l1gnxid"))))) + ;; Remove on the next rebuild cycle. + (search-patches "guile-2.2-skip-so-test.patch"))) (define-public guile-next (deprecated-package "guile-next" guile-3.0)) diff --git a/gnu/packages/patches/guile-2.2-skip-so-test.patch b/gnu/packages/patches/guile-2.2-skip-so-test.patch new file mode 100644 index 0000000000..e7c2594e91 --- /dev/null +++ b/gnu/packages/patches/guile-2.2-skip-so-test.patch @@ -0,0 +1,23 @@ +Skip 'test-stack-overflow' that crashes when using QEMU transparent emulation. + +--- a/test-suite/standalone/Makefile.in 1970-01-01 01:00:01.000000000 +0100 ++++ b/test-suite/standalone/Makefile.in 2021-01-11 10:59:31.606269449 +0100 +@@ -102,8 +102,7 @@ + test-scm-to-latin1-string$(EXEEXT) test-scm-values$(EXEEXT) \ + test-scm-c-bind-keyword-arguments$(EXEEXT) \ + test-srfi-4$(EXEEXT) $(am__append_6) $(am__EXEEXT_1) \ +- test-smob-mark$(EXEEXT) test-smob-mark-race$(EXEEXT) \ +- test-stack-overflow ++ test-smob-mark$(EXEEXT) test-smob-mark-race$(EXEEXT) + check_PROGRAMS = test-num2integral$(EXEEXT) test-round$(EXEEXT) \ + test-foreign-object-c$(EXEEXT) test-list$(EXEEXT) \ + test-unwind$(EXEEXT) test-conversion$(EXEEXT) \ +@@ -1938,7 +1937,7 @@ + test-command-line-encoding test-command-line-encoding2 \ + test-language test-guild-compile $(am__append_3) \ + test-foreign-object-scm test-fast-slot-ref test-mb-regexp \ +- test-use-srfi $(am__append_5) test-stack-overflow ++ test-use-srfi $(am__append_5) + BUILT_SOURCES = $(am__append_2) + EXTRA_DIST = test-import-order-a.scm test-import-order-b.scm \ + test-import-order-c.scm test-import-order-d.scm \ -- cgit v1.2.3