Subject: [bug#56806] [PATCH 6/9] gnu: Add minimp3.

From: John Kehayias <[email-masked]>
Date: Thu, 28 Jul 2022 04:10:38 +0000

Empty Message

From 5b653ede7baa7afdf2a6ea226fbf4b130af61d0b Mon Sep 17 00:00:00 2001
From: John Kehayias <[email-masked]>
Date: Wed, 27 Jul 2022 23:32:54 -0400
Subject: [PATCH 6/9] gnu: Add minimp3.

* gnu/packages/mp3.scm (minimp3): New variable.
---
 gnu/packages/mp3.scm | 31 +++++++++++++++++++++++++++++++
 1 file changed, 31 insertions(+)

diff --git a/gnu/packages/mp3.scm b/gnu/packages/mp3.scm
index 4a8bdad711..275468d343 100644
--- a/gnu/packages/mp3.scm
+++ b/gnu/packages/mp3.scm
@@ -10,6 +10,7 @@
 ;;; Copyright © 2020 Michael Rohleder <[email-masked]>
 ;;; Copyright © 2021 Simon Streit <[email-masked]>
 ;;; Copyright © 2021 Guillaume Le Vaillant <[email-masked]>
+;;; Copyright © 2022 John Kehayias <[email-masked]>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -54,6 +55,7 @@ (define-module (gnu packages mp3)
   #:use-module (guix download)
   #:use-module (guix git-download)
   #:use-module (guix utils)
+  #:use-module (guix build-system copy)
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system python)
   #:use-module (guix build-system cmake))
@@ -247,6 +249,35 @@ (define-public taglib
     ;; Dual-licensed: user may choose between LGPLv2.1 or MPLv1.1.
     (license (list license:lgpl2.1 license:mpl1.1))))
 
+(define-public minimp3
+  ;; The latest commit is used as there is no release.
+  (let ((commit   "afb604c06bc8beb145fecd42c0ceb5bda8795144")
+        (revision "0"))
+    (package
+      (name "minimp3")
+      (version (git-version "0.0.0" revision commit))
+      (source (origin
+                (method git-fetch)
+                (uri (git-reference
+                      (url "https://github.com/lieff/minimp3")
+                      (commit commit)))
+                (file-name (git-file-name name version))
+                (sha256
+                 (base32
+                  "0brgrbij8swhp7lac21xnnrr5l0371lkr5vz6h9x0dbz1qq2xhsj"))))
+      ;; TODO: minimp3 has many more files for at least tests with scripts to
+      ;; run them, although it is unclear how to easily package them.
+      (build-system copy-build-system)
+      (arguments
+       '(#:install-plan
+         '(("minimp3.h" "include/")
+           ("minimp3_ex.h" "include/"))))
+      (home-page "https://github.com/lieff/minimp3")
+      (synopsis "Minimalistic MP3 decoder header library")
+      (description
+       "Minimp3 is a header-only MP3 decoder library.")
+      (license license:cc0))))
+
 (define-public mp3info
   (package
     (name "mp3info")
-- 
2.37.1