summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMathieu Othacehe <othacehe@gnu.org>2021-01-11 11:29:00 +0100
committerMathieu Othacehe <othacehe@gnu.org>2021-01-11 12:06:12 +0100
commit21cf0d36db9f02b3da976088b5ab466822d16625 (patch)
tree913e347c63bdf5d3c578d4be0d0ed8b166a7d339
parentb54b3f5419849286611279231d8a2c61d3e935b4 (diff)
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.
-rw-r--r--gnu/local.mk1
-rw-r--r--gnu/packages/guile.scm23
-rw-r--r--gnu/packages/patches/guile-2.2-skip-so-test.patch23
3 files changed, 37 insertions, 10 deletions
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 \