summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGuillaume Le Vaillant <glv@posteo.net>2022-07-03 10:08:47 +0200
committerGuillaume Le Vaillant <glv@posteo.net>2022-07-03 12:07:31 +0200
commite0d2f8164e6a1c15fdcae6f7dadb05c0c9e25352 (patch)
tree1f7c4e42823963aff32a829829da1c4704b13d81
parentf89b58114858cc80bb65f6d38dfe943e6783b9bf (diff)
gnu: sbcl: Disable SB-SIMD module.
SB-SIMD gets enabled only on x86_64 CPUs supporting AVX2 instructions, and some x86_64 CPUs don't. Fixes <https://issues.guix.gnu.org/56353>. Reported by Wensheng Xie <xiewensheng@hotmail.com>. * gnu/packages/lisp.scm (sbcl)[arguments]: Disable SB-SIMD in the 'build' and 'build-doc' phases.
-rw-r--r--gnu/packages/lisp.scm21
1 files changed, 11 insertions, 10 deletions
diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm
index af65d9327ff..72b6accc29e 100644
--- a/gnu/packages/lisp.scm
+++ b/gnu/packages/lisp.scm
@@ -567,7 +567,12 @@ an interpreter, a compiler, a debugger, and much more.")
567 (assoc-ref outputs "out")) 567 (assoc-ref outputs "out"))
568 "--dynamic-space-size=3072" 568 "--dynamic-space-size=3072"
569 "--with-sb-core-compression" 569 "--with-sb-core-compression"
570 "--with-sb-xref-for-internals"))) 570 "--with-sb-xref-for-internals"
571 ;; SB-SIMD will only be built on x86_64 CPUs supporting
572 ;; AVX2 instructions. Some x86_64 CPUs don't, so for reproducibility
573 ;; we disable it and we don't build its documentation (see the
574 ;; 'build-doc' phase).
575 "--without-sb-simd")))
571 (add-after 'build 'build-shared-library 576 (add-after 'build 'build-shared-library
572 (lambda* (#:key outputs #:allow-other-keys) 577 (lambda* (#:key outputs #:allow-other-keys)
573 (setenv "CC" "gcc") 578 (setenv "CC" "gcc")
@@ -577,15 +582,11 @@ an interpreter, a compiler, a debugger, and much more.")
577 (invoke "sh" "install.sh"))) 582 (invoke "sh" "install.sh")))
578 (add-after 'build 'build-doc 583 (add-after 'build 'build-doc
579 (lambda _ 584 (lambda _
580 ;; Building the documentation for SB-SIMD only works when SB-SIMD 585 ;; Don't build the documentation for SB-SIMD as it is disabled in
581 ;; is enabled, so far only on x86_64-linux. 586 ;; the 'build' phase.
582 ,@(match (%current-system) 587 (substitute* "doc/manual/generate-texinfo.lisp"
583 ("x86_64-linux" 588 (("exclude '\\(\"asdf\"\\)")
584 '()) 589 "exclude '(\"asdf\" \"sb-simd\")"))
585 (_
586 '((substitute* "doc/manual/generate-texinfo.lisp"
587 (("exclude '\\(\"asdf\"\\)")
588 "exclude '(\"asdf\" \"sb-simd\")")))))
589 (with-directory-excursion "doc/manual" 590 (with-directory-excursion "doc/manual"
590 (and (invoke "make" "info") 591 (and (invoke "make" "info")
591 (invoke "make" "dist"))))) 592 (invoke "make" "dist")))))