summary refs log tree commit diff
path: root/gnu/packages/lisp.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/lisp.scm')
-rw-r--r--gnu/packages/lisp.scm106
1 files changed, 30 insertions, 76 deletions
diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm
index 5d6cc1ce30..3ae8dab141 100644
--- a/gnu/packages/lisp.scm
+++ b/gnu/packages/lisp.scm
@@ -10,7 +10,7 @@
 ;;; Copyright © 2017, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright © 2018 Benjamin Slade <slade@jnanam.net>
 ;;; Copyright © 2018 Alex Vong <alexvong1995@gmail.com>
-;;; Copyright © 2018, 2019 Pierre Neidhardt <mail@ambrevar.xyz>
+;;; Copyright © 2018, 2019, 2020 Pierre Neidhardt <mail@ambrevar.xyz>
 ;;; Copyright © 2018, 2019 Pierre Langlois <pierre.langlois@gmx.com>
 ;;; Copyright © 2019, 2020 Katherine Cox-Buday <cox.katherine.e@gmail.com>
 ;;; Copyright © 2019 Jesse Gildersleve <jessejohngildersleve@protonmail.com>
@@ -569,8 +569,16 @@ statistical profiler, a code coverage tool, and many other extensions.")
   ;;     it, as is the case for SBCL, but I know of no attempt to do so."
   (package
     (name "ccl")
-    (version "1.11.5")
-    (source #f)
+    (version "1.12")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/Clozure/ccl/")
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name "ccl" version))
+              (sha256
+               (base32
+                "0kxr24d2fzsmpsilijpwwfl6g89y7fcrwb80kai5nx9pwgxmjbp3"))))
     (build-system gnu-build-system)
     ;; CCL consists of a "lisp kernel" and "heap image", both of which are
     ;; shipped in precompiled form in source tarballs.  The former is a C
@@ -578,12 +586,11 @@ statistical profiler, a code coverage tool, and many other extensions.")
     ;; generated without an already working copy of CCL, and is platform
     ;; dependent, so we need to fetch the correct tarball for the platform.
     (inputs
-     `(("ccl"
+     `(("ccl-bootstrap"
         ,(origin
            (method url-fetch)
            (uri (string-append
-                 "https://github.com/Clozure/ccl/releases/download/v" version
-                 "/ccl-" version "-"
+                 "https://github.com/Clozure/ccl/releases/download/v" version "/"
                  (match (%current-system)
                    ((or "i686-linux" "x86_64-linux") "linuxx86")
                    ("armhf-linux" "linuxarm")
@@ -595,13 +602,12 @@ statistical profiler, a code coverage tool, and many other extensions.")
             (base32
              (match (%current-system)
                ((or "i686-linux" "x86_64-linux")
-                "0hs1f3z7crgzvinpj990kv9gvbsipxvcvwbmk54n51nasvc5025q")
+                "15l7cfa4a7jkfwdzsfm4q3n22jnb57imxahpql3h77xin57v1gbz")
                ("armhf-linux"
-                "0p0l1dzsygb6i1xxgbipjpxkn46xhq3jm41a34ga1qqp4x8lkr62")
+                "0x4bjx6cxsjvxyagijhlvmc7jkyxifdvz5q5zvz37028va65243c")
                (_ ""))))))))
     (native-inputs
-     `(("m4" ,m4)
-       ("subversion" ,subversion)))
+     `(("m4" ,m4)))
     (arguments
      `(#:tests? #f                      ;no 'check' target
        #:modules ((srfi srfi-26)
@@ -609,11 +615,9 @@ statistical profiler, a code coverage tool, and many other extensions.")
                   (guix build gnu-build-system))
        #:phases
        (modify-phases %standard-phases
-         (replace 'unpack
+         (add-after 'unpack 'unpack-image
            (lambda* (#:key inputs #:allow-other-keys)
-             (invoke "tar" "xzvf" (assoc-ref inputs "ccl"))
-             (chdir "ccl")
-             #t))
+             (invoke "tar" "xzvf" (assoc-ref inputs "ccl-bootstrap"))))
          (delete 'configure)
          (add-before 'build 'pre-build
            ;; Enter the source directory for the current platform's lisp
@@ -624,13 +628,13 @@ statistical profiler, a code coverage tool, and many other extensions.")
              (chdir (string-append
                      "lisp-kernel/"
                      ,(match (or (%current-target-system) (%current-system))
-                        ("i686-linux"   "linuxx8632")
+                        ("i686-linux" "linuxx8632")
                         ("x86_64-linux" "linuxx8664")
-                        ("armhf-linux"  "linuxarm")
+                        ("armhf-linux" "linuxarm")
                         ;; Prevent errors when querying this package
                         ;; on unsupported platforms, e.g. when running
                         ;; "guix package --search="
-                        (_              "UNSUPPORTED"))))
+                        (_ "UNSUPPORTED"))))
              (substitute* '("Makefile")
                (("/bin/rm") "rm"))
              (setenv "CC" "gcc")
@@ -650,24 +654,24 @@ statistical profiler, a code coverage tool, and many other extensions.")
                     (bash (assoc-ref inputs "bash"))
                     (kernel
                      ,(match (or (%current-target-system) (%current-system))
-                        ("i686-linux"   "lx86cl")
+                        ("i686-linux" "lx86cl")
                         ("x86_64-linux" "lx86cl64")
-                        ("armhf-linux"  "armcl")
+                        ("armhf-linux" "armcl")
                         ;; Prevent errors when querying this package
                         ;; on unsupported platforms, e.g. when running
                         ;; "guix package --search="
-                        (_              "UNSUPPORTED")))
+                        (_ "UNSUPPORTED")))
                     (heap (string-append kernel ".image")))
                (install-file kernel libdir)
                (install-file heap libdir)
 
                (let ((dirs '("lib" "library" "examples" "tools" "objc-bridge"
                              ,@(match (%current-system)
-                                ("x86_64-linux"
-                                 '("x86-headers64"))
-                                ("i686-linux"
-                                 '("x86-headers"))
-                                (_ '())))))
+                                 ("x86_64-linux"
+                                  '("x86-headers64"))
+                                 ("i686-linux"
+                                  '("x86-headers"))
+                                 (_ '())))))
                  (for-each copy-recursively
                            dirs
                            (map (cut string-append libdir <>) dirs)))
@@ -689,57 +693,7 @@ statistical profiler, a code coverage tool, and many other extensions.")
 implementation featuring fast compilation speed, native threads, a precise,
 generational, compacting garbage collector, and a convenient foreign-function
 interface.")
-    ;; See file doc/LICENSE for clarifications it makes regarding how the LGPL
-    ;; applies to Lisp code according to them.
-    (license (list license:lgpl2.1
-                   license:clarified-artistic)))) ;TRIVIAL-LDAP package
-
-(define-public ccl-1.12
-  ;; This is a development snapshot.  The last stable version is from November
-  ;; 2017 and does not support package-local-nicknames, which prevents CCL
-  ;; from compiling some third-party packages.
-  ;; The main drawback of 1.12 is that ARM is not supported for now.
-  (package
-    (inherit ccl)
-    (version "1.12-dev.5")
-    (source (origin
-              (method git-fetch)
-              (uri (git-reference
-                    (url "https://github.com/Clozure/ccl/")
-                    (commit (string-append "v" version))))
-              (file-name (git-file-name "ccl" version))
-              (sha256
-               (base32
-                "1za5j4ll4hk1vi1i7v1bmqhaqbsgc16izn46qmry7dnbig0rdqm0"))))
-    ;; CCL consists of a "lisp kernel" and "heap image".
-    ;; See comment in `ccl' package.
-    (inputs
-     `(("ccl-bootstrap"
-        ,(origin
-           (method url-fetch)
-           (uri (string-append
-                 "https://github.com/Clozure/ccl/releases/download/v" version "/"
-                 (match (%current-system)
-                   ((or "i686-linux" "x86_64-linux") "linuxx86")
-                   ;; Prevent errors when querying this package on unsupported
-                   ;; platforms, e.g. when running "guix package --search="
-                   (_ "UNSUPPORTED"))
-                 ".tar.gz"))
-           (sha256
-            (base32
-             (match (%current-system)
-               ((or "i686-linux" "x86_64-linux")
-                "1pqiybxxv4wx5zlp1i60nim3njaczwl5321bdwq6frjsl3s95xmb")
-               (_ ""))))))))
-    (arguments
-     (substitute-keyword-arguments (package-arguments ccl)
-       ((#:phases phases)
-        `(modify-phases ,phases
-           (replace 'unpack (assoc-ref %standard-phases 'unpack))
-           (add-after 'unpack 'unpack-image
-             (lambda* (#:key inputs #:allow-other-keys)
-               (invoke "tar" "xzvf" (assoc-ref inputs "ccl-bootstrap"))))))))
-    (supported-systems '("i686-linux" "x86_64-linux"))))
+    (license license:asl2.0)))
 
 (define-public lush2
   (package