diff options
Diffstat (limited to 'gnu/packages/lisp.scm')
-rw-r--r-- | gnu/packages/lisp.scm | 67 |
1 files changed, 58 insertions, 9 deletions
diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm index 9753926d13..17d52995f6 100644 --- a/gnu/packages/lisp.scm +++ b/gnu/packages/lisp.scm @@ -17,6 +17,7 @@ ;;; Copyright © 2019, 2020 Guillaume Le Vaillant <glv@posteo.net> ;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2020 Zhu Zihao <all_but_last@163.com> +;;; Copyright © 2021 Sharlatan Hellseher <sharlatanus@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -220,7 +221,7 @@ interface to the Tk widget system.") (define-public ecl (package (name "ecl") - (version "20.4.24") + (version "21.2.1") (source (origin (method url-fetch) @@ -228,14 +229,20 @@ interface to the Tk widget system.") "https://common-lisp.net/project/ecl/static/files/release/" name "-" version ".tgz")) (sha256 - (base32 "01qgdmr54wkj854f69qdm9sybrvd6gd21dpx4askdaaqybnkh237")))) + (base32 "000906nnq25177bgsfndiw3iqqgrjc9spk10hzk653sbz3f7anmi")))) (build-system gnu-build-system) ;; src/configure uses 'which' to confirm the existence of 'gzip'. (native-inputs `(("cl-asdf" ,cl-asdf) ("which" ,which) ("texinfo" ,texinfo))) - (inputs + ;; When ECL is embedded in a program that wants to use Common Lisp as an + ;; extension language, libgmp, libatomic-ops, libgc and libffi must be + ;; present when compiling the program because they are required by ECL's + ;; header file. + ;; Therefore we put these libraries in 'propagated-inputs' instead + ;; of 'inputs'. + (propagated-inputs `(("gmp" ,gmp) ("libatomic-ops" ,libatomic-ops) ("libgc" ,libgc) @@ -393,14 +400,14 @@ an interpreter, a compiler, a debugger, and much more.") (define-public sbcl (package (name "sbcl") - (version "2.0.11") + (version "2.1.0") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/sbcl/sbcl/" version "/sbcl-" version "-source.tar.bz2")) (sha256 - (base32 "07cpswxh2f38b440xdn3fjk7b4r0ipj3sbwb3jd134phrr9smll7")))) + (base32 "0k12m2z60fnq64m8dgivprs2mvrsnmp7c5ipzx7jzkprcsymdvh5")))) (build-system gnu-build-system) (outputs '("out" "doc")) (native-inputs @@ -840,7 +847,7 @@ enough to play the original mainframe Zork all the way through.") (define-public txr (package (name "txr") - (version "245") + (version "246") (source (origin (method git-fetch) @@ -849,7 +856,7 @@ enough to play the original mainframe Zork all the way through.") (commit (string-append "txr-" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "1pnajvqhzjlw0rwwhhk4hyps5pbg9njh10iqhnmvl1xnah6ff94z")))) + (base32 "1ynkz0ss7nn1ssiaxagpq80iabknf085nk0pra9hn8y9hx7av0db")))) (build-system gnu-build-system) (arguments `(#:configure-flags @@ -1083,7 +1090,7 @@ assembler, PEG) is less than 1MB.") (define-public lisp-repl-core-dumper (package (name "lisp-repl-core-dumper") - (version "0.3.0") + (version "0.5.0") (source (origin (method git-fetch) @@ -1092,7 +1099,7 @@ assembler, PEG) is less than 1MB.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "1w7x7d7bnrdj0bd04vnjy7d7sngvcx1yjr4iw429hdd9lzlg8rbg")))) + (base32 "1hrilm9lxy7zdidn4wac4yfqryg3hfw0371nanhd7g9bcfjx7n1q")))) (build-system copy-build-system) (arguments '(#:install-plan @@ -1102,12 +1109,14 @@ assembler, PEG) is less than 1MB.") (add-before 'install 'fix-utils-path (lambda* (#:key inputs #:allow-other-keys) (let* ((coreutils (string-append (assoc-ref inputs "coreutils") "/bin/")) + (cat (string-append coreutils "cat")) (paste (string-append coreutils "paste")) (sort (string-append coreutils "sort")) (basename (string-append coreutils "basename")) (sed (string-append (assoc-ref inputs "sed") "/bin/sed"))) (substitute* "lisp-repl-core-dumper" (("\\$\\(basename") (string-append "$(" basename)) + (("\\<cat\\>") cat) (("\\<paste\\>") paste) (("\\<sed\\>") sed) (("\\<sort\\>") sort)))))))) @@ -1126,3 +1135,43 @@ and make for REPLs that start blazing fast. @item It allows you to include arbitrary libraries. @end itemize\n") (license license:gpl3+))) + +(define-public buildapp + (package + (name "buildapp") + (version "1.5.6") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/xach/buildapp") + (commit (string-append "release-" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "020ipjfqa3l8skd97cj5kq837wgpj28ygfxnkv64cnjrlbnzh161")))) + (build-system gnu-build-system) + (native-inputs + `(("sbcl" ,sbcl))) + (arguments + `(#:tests? #f + #:make-flags + (list (string-append "DESTDIR=" (assoc-ref %outputs "out"))) + #:strip-binaries? #f + #:phases + (modify-phases %standard-phases + (delete 'configure) + (add-after 'unpack 'set-home + (lambda _ + (setenv "HOME" "/tmp") + #t)) + (add-before 'install 'create-target-directory + (lambda* (#:key outputs #:allow-other-keys) + (let* ((bin (string-append (assoc-ref outputs "out") "/bin"))) + (mkdir-p bin) + #t)))))) + (home-page "https://www.xach.com/lisp/buildapp/") + (synopsis "Makes easy to build application executables with SBCL") + (description + "Buildapp is an application for SBCL or CCL that configures and saves an +executable Common Lisp image. It is similar to cl-launch and hu.dwim.build. ") + (license license:bsd-2))) |