summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPierre Neidhardt <mail@ambrevar.xyz>2020-08-07 15:57:54 +0200
committerPierre Neidhardt <mail@ambrevar.xyz>2020-08-07 15:58:16 +0200
commitec3c3aa7ec0c2fe8584c92334cc6b3188ae28da3 (patch)
tree1e297958fe3cbc655ffcb67f8cd485bc65bd6e6e
parent89a3fec558e07434e8370896248bc272c9b4ece5 (diff)
gnu: Add hu.dwim.defclass-star.
* gnu/packages/lisp-xyz.scm (cl-hu.dwim.defclass-star, ecl-hu.dwim.defclass-star, sbcl-hu.dwim.defclass-star): New variables.
-rw-r--r--gnu/packages/lisp-xyz.scm50
1 files changed, 50 insertions, 0 deletions
diff --git a/gnu/packages/lisp-xyz.scm b/gnu/packages/lisp-xyz.scm
index 23037490ba..b8216b04e1 100644
--- a/gnu/packages/lisp-xyz.scm
+++ b/gnu/packages/lisp-xyz.scm
@@ -13459,3 +13459,53 @@ package that includes a number of renames and shadows. ")
(define-public ecl-hu.dwim.common
(sbcl-package->ecl-package sbcl-hu.dwim.common))
+
+(define-public sbcl-hu.dwim.defclass-star
+ (package
+ (name "sbcl-hu.dwim.defclass-star")
+ (version "2015-07-09")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "http://beta.quicklisp.org/archive/hu.dwim.defclass-star/"
+ version "/hu.dwim.defclass-star-"
+ (string-replace-substring version "-" "")
+ "-darcs.tgz"))
+ (sha256
+ (base32 "032982lyp0hm0ssxlyh572whi2hr4j1nqkyqlllaj373v0dbs3vs"))))
+ (build-system asdf-build-system/sbcl)
+ (native-inputs
+ `(;; These 2 inputs are only needed tests which are disabled, see below.
+ ;; ("hu.dwim.common" ,sbcl-hu.dwim.common)
+ ;; Need cl- package for the :hu.dwim.stefil+hu.dwim.def+swank system.
+ ;; ("hu.dwim.stefil" ,cl-hu.dwim.stefil)
+ ("hu.dwim.asdf" ,sbcl-hu.dwim.asdf)))
+ (arguments
+ `(#:test-asd-file "hu.dwim.defclass-star.test.asd"
+ ;; Tests require a circular dependency: hu.dwim.stefil -> hu.dwim.def
+ ;; -> hu.dwim.util -> hu.dwim.defclass-star.
+ #:tests? #f))
+ (home-page "http://dwim.hu/?_x=dfxn&_f=mRIMfonK")
+ (synopsis "Simplify definitions with defclass* and friends in Common Lisp")
+ (description "@code{defclass-star} provides defclass* and defcondition* to
+simplify class and condition declarations. Features include:
+
+@itemize
+@item Automatically export all or select slots at compile time.
+@item Define the @code{:initarg} and @code{:accesor} automatically.
+@item Specify a name transformer for both the @code{:initarg} and
+@code{:accessor}, etc.
+@item Specify the @code{:initform} as second slot value.
+@end itemize
+
+See
+@url{https://common-lisp.net/project/defclass-star/configuration.lisp.html}
+for an example.")
+ (license license:public-domain)))
+
+(define-public cl-hu.dwim.defclass-star
+ (sbcl-package->cl-source-package sbcl-hu.dwim.defclass-star))
+
+(define-public ecl-hu.dwim.defclass-star
+ (sbcl-package->ecl-package sbcl-hu.dwim.defclass-star))