From 0c4b5326b8e919734ee3f6a66aba51596749570c Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Thu, 4 Feb 2021 01:32:23 +0000 Subject: [PATCH 1/2] gnu: Add specialization-store * gnu/packages/lisp-xyz.scm (specialization-store, cl-specialization-store, ecl-specialization-store): New variables --- gnu/packages/lisp-xyz.scm | 44 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) diff --git a/gnu/packages/lisp-xyz.scm b/gnu/packages/lisp-xyz.scm index bc607f2e54..5cf066af0f 100644 --- a/gnu/packages/lisp-xyz.scm +++ b/gnu/packages/lisp-xyz.scm @@ -6693,6 +6693,50 @@ ability to store all Common Lisp data types into streams.") (define-public ecl-cl-store (sbcl-package->ecl-package sbcl-cl-store)) +(define-public sbcl-specialization-store + (let ((commit "8d39a866a6f24986aad3cc52349e9cb2653496f3") + (revision "1")) + (package + (name "sbcl-specialization-store") + (version (git-version "0.0.5" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/markcox80/specialization-store") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0r0bgb46q4gy72l78s7djkxq8ibb4bb3yh9brsry5lih7br8lhi0")))) + (build-system asdf-build-system/sbcl) + (arguments + `(#:asd-systems + '("specialization-store" + "specialization-store-features"))) + (inputs + `(("alexandria" ,sbcl-alexandria) + ("introspect-environment" ,sbcl-introspect-environment))) + (home-page "https://github.com/markcox80/specialization-store") + (synopsis "Different type of generic function for Common Lisp") + (description + "SPECIALIZATION-STORE system provides a new kind of function, called +a store function, whose behavior depends on the types of objects passed to the +function. + + This package provides 2 systems: @code{SPECIALIZATION-STORE} +@code{SPECIALIZATION-STORE-FEATURES}") + (license license:bsd-3)))) + +(define-public ecl-specialization-store + (package + (inherit (sbcl-package->ecl-package sbcl-specialization-store)) + (arguments + ;; TODO: Find why the tests get stuck forever; disable them for now. + `(#:tests? #f)))) + +(define-public cl-specialization-store + (sbcl-package->cl-source-package sbcl-specialization-store)) + (define-public sbcl-cl-gobject-introspection (let ((commit "d0136c8d9ade2560123af1fc55bbf70d2e3db539") (revision "1")) -- 2.30.0