aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEfraim Flashner <efraim@flashner.co.il>2022-07-12 20:07:34 +0300
committerEfraim Flashner <efraim@flashner.co.il>2022-07-12 21:37:09 +0300
commit40095549f4ee69b6c3314dc03ae4464c5f0b44f3 (patch)
tree8e63f5aefb9a92d73ddc5a80f7ca4ffdd4efe5dc
parentf0c8abe85787a0018c0adeb0bc4a6672d46686e4 (diff)
downloadguix-40095549f4ee69b6c3314dc03ae4464c5f0b44f3.tar.gz
guix-40095549f4ee69b6c3314dc03ae4464c5f0b44f3.zip
gnu: sbcl: Fix building on powerpc-linux.
* gnu/packages/lisp.scm (sbcl)[native-inputs]: Remove clisp, add ecl. [arguments]: In custom 'build phase replace 'clisp' with 'ecl' for powerpc-linux and adjust the dynamic-space-size to closer to the maximum RAM for the architecture.
-rw-r--r--gnu/packages/lisp.scm17
1 files changed, 10 insertions, 7 deletions
diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm
index 2906c50646..8e59ec956b 100644
--- a/gnu/packages/lisp.scm
+++ b/gnu/packages/lisp.scm
@@ -441,13 +441,13 @@ an interpreter, a compiler, a debugger, and much more.")
;; ECL too. As of 2020-07-01, ECL was last updated in 2020 while CLISP
;; was last updated in 2010, and both take about the same time to build SBCL.
;;
- ;; For now we stick to CLISP for all systems. We keep the `match' here
- ;; to make it easier to change the host compiler for various
+ ;; For now we stick to CLISP as the default for all systems. In any event, keep
+ ;; the `match' here to make it easier to change the host compiler for various
;; architectures. Consider switching to ECL if it gets faster than CLISP
;; (maybe post 2020 release).
(list (match (%current-system)
- ((or "x86_64-linux" "i686-linux")
- clisp)
+ ("powerpc-linux" ; CLISP fails to build, needs investigating.
+ ecl)
(_
clisp))
cl-asdf
@@ -566,13 +566,16 @@ an interpreter, a compiler, a debugger, and much more.")
(lambda* (#:key outputs #:allow-other-keys)
(setenv "CC" "gcc")
(invoke "sh" "make.sh" ,@(match (%current-system)
- ((or "x86_64-linux" "i686-linux")
- `("clisp"))
+ ("powerpc-linux"
+ `("ecl"))
(_
`("clisp")))
(string-append "--prefix="
(assoc-ref outputs "out"))
- "--dynamic-space-size=3072"
+ ,@(if (target-ppc32?)
+ ;; 3072 is too much for this architecture.
+ `("--dynamic-space-size=2048")
+ `("--dynamic-space-size=3072"))
"--with-sb-core-compression"
"--with-sb-xref-for-internals"
;; SB-SIMD will only be built on x86_64 CPUs supporting