aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGuillaume Le Vaillant <glv@posteo.net>2020-12-04 10:48:41 +0100
committerGuillaume Le Vaillant <glv@posteo.net>2020-12-05 16:00:58 +0100
commitc32a7b348556532756615fc92bccf43bd0373c03 (patch)
treec75a6c4b4214a3246140e08569a67bf1594b0f05
parent623a98a9dcc5878dc16595b7716b8c44fc7bbef8 (diff)
downloadguix-c32a7b348556532756615fc92bccf43bd0373c03.tar.gz
guix-c32a7b348556532756615fc92bccf43bd0373c03.zip
gnu: clisp: Use system ASDF instead of bundled one.
* gnu/packages/lisp.scm (clisp)[native-inputs]: Add cl-asdf. [arguments]: Add 'replace-asdf' phase. [native-search-paths]: Add XDG_CONFIG_DIRS and XDG_DATA_DIRS.
-rw-r--r--gnu/packages/lisp.scm21
1 files changed, 20 insertions, 1 deletions
diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm
index a4cbc28ffc..2ec4da8fbb 100644
--- a/gnu/packages/lisp.scm
+++ b/gnu/packages/lisp.scm
@@ -322,6 +322,8 @@ supporting ASDF, Sockets, Gray streams, MOP, and other useful components.")
(sha256
(base32 "0k2dmgl0miz3767iks4p0mvp6xw0ysyxhjpklyh11j010rmh6hqb"))))
(build-system gnu-build-system)
+ (native-inputs
+ `(("cl-asdf" ,cl-asdf)))
(inputs `(("libffcall" ,libffcall)
("ncurses" ,ncurses)
("readline" ,readline)
@@ -356,7 +358,24 @@ supporting ASDF, Sockets, Gray streams, MOP, and other useful components.")
(("/bin/sh") "sh"))
(substitute* '("src/clisp-link.in")
(("/bin/pwd") "pwd"))
- #t)))))
+ #t))
+ (add-after 'unpack 'replace-asdf
+ ;; Use system ASDF instead of bundled one.
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let* ((cl-asdf (assoc-ref inputs "cl-asdf"))
+ (guix-asdf (string-append
+ cl-asdf
+ "/share/common-lisp/source/asdf/asdf.lisp"))
+ (contrib-asdf "modules/asdf/asdf.lisp"))
+ (delete-file contrib-asdf)
+ (copy-file guix-asdf contrib-asdf)))))))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "XDG_DATA_DIRS")
+ (files '("share")))
+ (search-path-specification
+ (variable "XDG_CONFIG_DIRS")
+ (files '("etc")))))
(home-page "https://clisp.sourceforge.io/")
(synopsis "A Common Lisp implementation")
(description