diff mbox series

[bug#73488,3/7] gnu: Add jgrf.

Message ID 200f974ddce1a4f44b1940ee94997e6a761dbc45.1727320201.git.maxim.cournoyer@gmail.com
State New
Headers show
Series [bug#73488,1/7] gnu: bsnes: Remove input labels and use gexps. | expand

Commit Message

Maxim Cournoyer Sept. 26, 2024, 3:09 a.m. UTC
* gnu/packages/emulators.scm (jgrf): New variable.

Change-Id: I0cf706e66977ceb96902dcd54f9175031e129445
---

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

Comments

Maxim Cournoyer Sept. 26, 2024, 3:31 a.m. UTC | #1
Hi,

Maxim Cournoyer <maxim.cournoyer@gmail.com> writes:

[...]

> +    (build-system gnu-build-system)
> +    (arguments
> +     (list #:tests? #f                  ;no test suite
> +           #:make-flags
> +           #~(list (string-append "AR=" #$(ar-for-target))
> +                   (string-append "CC=" #$(cc-for-target))
> +                   (string-append "CXX=" #$(cxx-for-target))
> +                   (string-append "PREFIX=" #$output))
> +           #:phases #~(modify-phases %standard-phases
> +                        (delete 'configure))))
> +    (native-inputs (list jg-api pkg-config))
> +    (inputs
> +     (list libepoxy
> +           libsamplerate
> +           miniz
> +           soxr
> +           speexdsp
> +           flac
> +           lzo
> +           sdl2
> +           zlib
> +           `(,zstd "lib")))

I've noticed these inputs were not sorted; now fixed in a v2 that I'll
keep locally in case there are other things to fix.
diff mbox series

Patch

diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm
index 09e722b4f4..6a5ff6cc19 100644
--- a/gnu/packages/emulators.scm
+++ b/gnu/packages/emulators.scm
@@ -2286,6 +2286,65 @@  (define-public jg-api
 Programming Interface} for emulators.")
     (license license:zlib)))
 
+(define-public jgrf
+  (package
+    (name "jgrf")
+    (version "1.1.0")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://gitlab.com/jgemu/jgrf")
+                    (commit version)))
+              (file-name (git-file-name name version))
+              (modules '((guix build utils)))
+              (snippet '(begin
+                          ;; TODO: Package md5.h and md5.c from
+                          ;; http://openwall.info/wiki/people/solar/software
+                          ;; /public-domain-source-code/md5,
+                          ;; remove these bundled files and set the
+                          ;; USE_EXTERNAL_MD5 Make flag to 1.
+                          ;; (delete-file "deps/md5.h")
+                          ;; (delete-file "deps/md5.c")
+                          (delete-file-recursively "deps/miniz")))
+              (sha256
+               (base32
+                "19n6h8l3vy5g2bqvxhxwqxlg070hjz22384yisadzwl3gjkkgpxk"))))
+    (build-system gnu-build-system)
+    (arguments
+     (list #:tests? #f                  ;no test suite
+           #:make-flags
+           #~(list (string-append "AR=" #$(ar-for-target))
+                   (string-append "CC=" #$(cc-for-target))
+                   (string-append "CXX=" #$(cxx-for-target))
+                   (string-append "PREFIX=" #$output))
+           #:phases #~(modify-phases %standard-phases
+                        (delete 'configure))))
+    (native-inputs (list jg-api pkg-config))
+    (inputs
+     (list libepoxy
+           libsamplerate
+           miniz
+           soxr
+           speexdsp
+           flac
+           lzo
+           sdl2
+           zlib
+           `(,zstd "lib")))
+    (home-page "https://gitlab.com/jgemu/jgrf")
+    (synopsis "Jolly Good Reference Frontend")
+    (description "The Jolly Good Reference Frontend (accessible via the
+@command{jollygood} command) is the simplest possible frontend to The Jolly
+Good API.  It may be used to run emulators built as shared objects, or as a
+\"white-label\" frontend for statically linked standalone emulators.")
+    ;; The main license is BSD-3; the bundled source licenses are also listed
+    ;; below.
+    (license (list license:bsd-3 ;this software, gltext.h, lodepng.c, lodepng.h
+                   license:expat ;ezmenu.h source, musl_memmem.c,
+                                        ;parson.h, parson.c, tconfig.h, tconfig.c
+                   license:public-domain ;md5.h, md5.c, parg.h, parg.c
+                   license:cc0))))
+
 (define-public zsnes
   (package
     (name "zsnes")