gnu: Add cl-sdl2-mixer.
authorSharlatan Hellseher <sharlatanus@gmail.com>
Fri, 24 Feb 2023 22:23:47 +0000 (22:23 +0000)
committerGuillaume Le Vaillant <glv@posteo.net>
Mon, 27 Feb 2023 12:51:23 +0000 (13:51 +0100)
* gnu/packages/lisp-xyz.scm (cl-sdl2-mixer, ecl-sdl2-mixer,
  sbcl-sdl2-mixer): New variables.

Signed-off-by: Guillaume Le Vaillant <glv@posteo.net>
gnu/packages/lisp-xyz.scm

index 4772be6..94abb1c 100644 (file)
@@ -20209,6 +20209,49 @@ C Library.")
 (define-public cl-sdl2-image
   (sbcl-package->cl-source-package sbcl-sdl2-image))
 
+(define-public sbcl-sdl2-mixer
+  (let ((commit "fdcc7ee7935dd01fd338e22690451db2cf126156")
+        (revision "1"))
+    (package
+      (name "sbcl-sdl2-mixer")
+      (version (git-version "1.0" revision commit))
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://github.com/lispgames/cl-sdl2-mixer")
+               (commit commit)))
+         (file-name (git-file-name "cl-sdl2-mixer" version))
+         (sha256
+          (base32 "0g6ywb3gqr0rif4z6kkz6m8vyv8nrr5wr1w9sc6d3zypbbnqgbp6"))))
+      (build-system asdf-build-system/sbcl)
+      (arguments
+       (list #:phases
+             #~(modify-phases %standard-phases
+                 (add-after 'unpack 'fix-paths
+                   (lambda* (#:key inputs #:allow-other-keys)
+                     (substitute* "src/library.lisp"
+                       (("libSDL2_mixer-2.0.so.0")
+                        (search-input-file inputs "/lib/libSDL2_mixer-2.0.so.0"))))))))
+      (inputs
+       (list sbcl-alexandria
+             sbcl-cl-autowrap
+             sbcl-sdl2
+             sbcl-trivial-garbage
+             sdl2-mixer))
+      (home-page "https://github.com/lispgames/cl-sdl2-mixer")
+      (synopsis "Bindings for sdl2_mixer using autowrap for Common Lisp")
+      (description
+       "This package provides a Common Lisp wrapper system for the SDL 2.0 Mixer C
+Library.")
+      (license license:expat))))
+
+(define-public ecl-sdl2-mixer
+  (sbcl-package->ecl-package sbcl-sdl2-mixer))
+
+(define-public cl-sdl2-mixer
+  (sbcl-package->cl-source-package sbcl-sdl2-mixer))
+
 (define-public sbcl-sdl2-ttf
   (let ((commit "6dd2df2fb3a79ec4f835e3bc882e60e8da039878")
         (revision "1"))