summary refs log tree commit diff
diff options
context:
space:
mode:
authorEfraim Flashner <efraim@flashner.co.il>2018-11-29 11:54:57 +0200
committerEfraim Flashner <efraim@flashner.co.il>2018-11-29 11:55:11 +0200
commit76d520facb54f4f86977683fd21bf1d4ac5ba45d (patch)
treeed729693f78c39d378ecd089bda904eb5e49f737
parent1e20c25ec5273680f92beafd6e996def99193765 (diff)
downloadguix-76d520facb54f4f86977683fd21bf1d4ac5ba45d.tar.gz
gnu: sbcl: bootstrap with clisp on non-Intel machines.
* gnu/packages/lisp.scm (sbcl)[native-inputs]: If the current system is
not x86_64-linux or i686-linux, use clisp in place of ccl.
[arguments]: In the custom build phase, use the correct bootstrap lisp.
-rw-r--r--gnu/packages/lisp.scm18
1 files changed, 13 insertions, 5 deletions
diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm
index 87ba39b986..90b57efe74 100644
--- a/gnu/packages/lisp.scm
+++ b/gnu/packages/lisp.scm
@@ -333,7 +333,6 @@ an interpreter, a compiler, a debugger, and much more.")
            #t))))
     (build-system gnu-build-system)
     (outputs '("out" "doc"))
-    ;; Bootstrap with CLISP.
     (native-inputs
      ;; From INSTALL:
      ;;     Supported build hosts are:
@@ -343,15 +342,20 @@ an interpreter, a compiler, a debugger, and much more.")
      ;;       ABCL (recent versions only)
      ;;       CLISP (only some versions: 2.44.1 is OK, 2.47 is not)
      ;;       XCL
-     ;; CCL seems ideal then.
-     `(("ccl" ,ccl)
+     ;; CCL seems ideal then, but it unfortunately only builds reliably
+     ;; on some architectures.
+     `(,@(match (%current-system)
+           ((or "x86_64-linux" "i686-linux")
+            `(("ccl" ,ccl)))
+           (_
+            `(("clisp" ,clisp))))
        ("which" ,which)
        ("inetutils" ,inetutils)         ;for hostname(1)
        ("ed" ,ed)
        ("texlive" ,(texlive-union (list texlive-tex-texinfo)))
        ("texinfo" ,texinfo)))
     (arguments
-     '(#:modules ((guix build gnu-build-system)
+     `(#:modules ((guix build gnu-build-system)
                   (guix build utils)
                   (srfi srfi-1))
        #:phases
@@ -410,7 +414,11 @@ an interpreter, a compiler, a debugger, and much more.")
          (replace 'build
            (lambda* (#:key outputs #:allow-other-keys)
              (setenv "CC" "gcc")
-             (invoke "sh" "make.sh" "ccl"
+             (invoke "sh" "make.sh" ,@(match (%current-system)
+                                        ((or "x86_64-linux" "i686-linux")
+                                         `("ccl"))
+                                        (_
+                                         `("clisp")))
                      (string-append "--prefix="
                                     (assoc-ref outputs "out")))))
          (replace 'install