Subject: [PATCH games-team 14/14] gnu: Add libretro-bsnes-jg.

From: Maxim Cournoyer <[email-masked]>
Date: Sun, 6 Oct 2024 14:32:10 +0900

* gnu/packages/emulators.scm (libretro-bsnes-jg): New variable.

Change-Id: I24e74c38c44d03e028d270beb184ab85af0394ba
---

 gnu/packages/emulators.scm | 38 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 38 insertions(+)

diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm
index 0cf7619147..33c115e380 100644
--- a/gnu/packages/emulators.scm
+++ b/gnu/packages/emulators.scm
@@ -3350,6 +3350,44 @@ (define-public jg-bsnes
                    license:isc          ;libco
                    license:lgpl2.1+))))
 
+(define-public libretro-bsnes-jg
+  ;; There aren't any release yet; use the latest commit.
+  (let ((commit "0d42dea0cb20aba8bfec05b928e4aed2b295352a")
+        (revision "0"))
+    (package
+      (inherit jg-bsnes)
+      (name "libretro-bsnes-jg")
+      (version (git-version "0" revision commit))
+      (source (origin
+                (inherit (package-source jg-bsnes))
+                (uri (git-reference
+                      (url "https://git.libretro.com/libretro/bsnes-jg")
+                      (commit commit)))
+                (file-name (git-file-name name version))
+                (sha256
+                 (base32
+                  "1dq2ypf4g4karayc9sgqn74bfnnsq2f4b3r615xyczchdaf2mi1n"))))
+      (arguments
+       (substitute-keyword-arguments (package-arguments jg-bsnes)
+         ((#:make-flags flags)
+          #~(cons* #$(string-append "GIT_VERSION=" version)
+                   (string-append "prefix=" #$output)
+                   #$flags))
+         ((#:phases phases)
+          #~(modify-phases #$phases
+              (add-after 'unpack 'chdir
+                (lambda _
+                  (chdir "libretro")))
+              (add-after 'chdir 'unbundle-libsamplerate
+                (lambda _
+                  (substitute* "Makefile.common"
+                    (("LIBS \\+= -lm")
+                     "LIBS += -lm -lsamplerate")
+                    ((".*\\$\\(CORE_DIR)/deps/libsamplerate/.*")
+                     ""))))))))
+      (home-page "https://git.libretro.com/libretro/bsnes-jg")
+      (synopsis "libretro port of bsnes-jg"))))
+
 (define-public jg-nestopia
   (package
     (name "jg-nestopia")
-- 
2.46.0