Subject: [bug#57654] [PATCH 13/16] gnu: Add cl-compatible-metaclasses.

From: jgart <[email-masked]>
Date: Wed, 7 Sep 2022 19:49:01 -0500

* gnu/packages/lisp-xyz.scm (cl-compatible-metaclasses,
ecl-compatible-metaclasses, sbcl-compatible-metaclasses): New variables.
---
 gnu/packages/lisp-xyz.scm | 32 ++++++++++++++++++++++++++++++++
 1 file changed, 32 insertions(+)

diff --git a/gnu/packages/lisp-xyz.scm b/gnu/packages/lisp-xyz.scm
index 45fd62d515..66c76ae832 100644
--- a/gnu/packages/lisp-xyz.scm
+++ b/gnu/packages/lisp-xyz.scm
@@ -23661,6 +23661,38 @@ (define-public cl-cesdi
 (define-public ecl-cesdi
   (sbcl-package->ecl-package sbcl-cesdi))
 
+(define-public sbcl-compatible-metaclasses
+  (package
+      (name "sbcl-compatible-metaclasses")
+      (version "1.0")
+      (source
+        (origin
+          (method git-fetch)
+          (uri (git-reference
+                (url "https://github.com/Hexstream/compatible-metaclasses")
+                (commit (string-append "v" version))))
+          (file-name (git-file-name name version))
+          (sha256
+           (base32 "17cf74j400cl6sjslfhkv13lir85k705v63mx3dd4y6dl5hvsdh6"))))
+      (build-system asdf-build-system/sbcl)
+      (native-inputs (list sbcl-parachute))
+      (inputs
+        (list sbcl-class-options
+              sbcl-enhanced-find-class
+              sbcl-closer-mop))
+      (home-page "https://www.hexstreamsoft.com/libraries/compatible-metaclasses/")
+      (synopsis "Simplifies class mixins by validating superclasses")
+      (description
+"Validates superclasses according to a simple substitution model,
+thereby greatly simplifying the definition of class mixins.")
+      (license license:unlicense)))
+
+(define-public cl-compatible-metaclasses
+  (sbcl-package->cl-source-package sbcl-compatible-metaclasses))
+
+(define-public ecl-compatible-metaclasses
+  (sbcl-package->ecl-package sbcl-compatible-metaclasses))
+
 (define-public sbcl-smug
   (let ((commit "647a2428df297e1dd183ba7c19574bdb1320ae79")
         (revision "0"))
-- 
2.37.2