diff mbox series

[bug#51153] gnu: Add cl-readline

Message ID PU1PR01MB21551D57D1A7CFF6794B1D0E8DB69@PU1PR01MB2155.apcprd01.prod.exchangelabs.com
State Accepted
Headers show
Series [bug#51153] gnu: Add cl-readline | expand

Checks

Context Check Description
cbaines/comparison success View comparision
cbaines/git branch success View Git branch
cbaines/applying patch success View Laminar job
cbaines/issue success View issue

Commit Message

Foo Chuan Wei Oct. 12, 2021, 7:48 a.m. UTC
* gnu/packages/lisp-xyz.scm (sbcl-readline, cl-readline, ecl-readline):
  New variables.
---
 gnu/packages/lisp-xyz.scm | 46 +++++++++++++++++++++++++++++++++++++++
 1 file changed, 46 insertions(+)


base-commit: 35aaf1fe10488ae9ed732fb2c383d09a70c109c0

Comments

Guillaume Le Vaillant Oct. 13, 2021, 8:52 a.m. UTC | #1
Patch pushed as f0c8cdb56519371432ed8b62c8eff446d8c5be6f with a few
modifications.
Thanks.
diff mbox series

Patch

diff --git a/gnu/packages/lisp-xyz.scm b/gnu/packages/lisp-xyz.scm
index 5d9db448d0..24a409f78c 100644
--- a/gnu/packages/lisp-xyz.scm
+++ b/gnu/packages/lisp-xyz.scm
@@ -84,6 +84,7 @@ 
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages python)
   #:use-module (gnu packages python-xyz)
+  #:use-module (gnu packages readline)
   #:use-module (gnu packages sdl)
   #:use-module (gnu packages sqlite)
   #:use-module (gnu packages tcl)
@@ -18841,3 +18842,48 @@  formats within this framework.")
 
 (define-public cl-feeder
   (sbcl-package->cl-source-package sbcl-feeder))
+
+(define-public sbcl-readline
+  (let ((commit "8438c9ebd92ccc95ebab9cc9cbe6c72d44fccc58")
+        (revision "1"))
+    (package
+      (name "sbcl-readline")
+      (version (git-version "0.0.0" revision commit))
+      (source (origin
+                (method git-fetch)
+                (uri (git-reference
+                       (url "https://github.com/vindarel/cl-readline")
+                       (commit commit)))
+                (sha256
+                  (base32
+                    "14iskvqfw71ssaav483vmqw62lrpznysjs800gjjppxs785p1fa0"))))
+      (build-system asdf-build-system/sbcl)
+      (inputs `(("alexandria" ,sbcl-alexandria)
+                ("cffi" ,sbcl-cffi)
+                ("readline" ,readline)))
+      (arguments '(#:asd-systems '("cl-readline")
+                   #:phases
+                   (modify-phases %standard-phases
+                     (add-after 'unpack 'fix-paths
+                       (lambda* (#:key inputs #:allow-other-keys)
+                         (substitute* "cl-readline.lisp"
+                           (("libreadline.so")
+                            (string-append (assoc-ref inputs "readline")
+                                           "/lib/libreadline.so")))
+                         #t)))))
+      (home-page "https://github.com/vindarel/cl-readline")
+      (synopsis "Common Lisp bindings to the GNU Readline library")
+      (description
+        "The Readline library provides a set of functions for use by
+applications that allow users to edit command lines as they are typed in. Both
+Emacs and vi editing modes are available. The Readline library includes
+additional functions to maintain a list of previously-entered command lines, to
+recall and perhaps reedit those lines, and perform csh-like history expansion on
+previous commands.")
+      (license license:gpl3))))
+
+(define-public cl-readline
+  (sbcl-package->cl-source-package sbcl-readline))
+
+(define-public ecl-readline
+  (sbcl-package->ecl-package sbcl-readline))