guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

05/07: gnu: Add alure.


From: guix-commits
Subject: 05/07: gnu: Add alure.
Date: Mon, 18 Sep 2023 17:43:18 -0400 (EDT)

civodul pushed a commit to branch master
in repository guix.

commit 1fa438fd1caa7429b3a576b6beb6abaf85080df2
Author: Hendursaga <hendursaga@aol.com>
AuthorDate: Fri Sep 8 12:29:08 2023 -0400

    gnu: Add alure.
    
    * gnu/packages/audio.scm (alure): New variable.
    
    Co-authored-by: Ludovic Courtès <ludo@gnu.org>
---
 gnu/local.mk                            |  1 +
 gnu/packages/audio.scm                  | 32 ++++++++++++++++++++++++++++++++
 gnu/packages/patches/alure-dumb-2.patch | 30 ++++++++++++++++++++++++++++++
 3 files changed, 63 insertions(+)

diff --git a/gnu/local.mk b/gnu/local.mk
index de3cb0332c..e05f687467 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -902,6 +902,7 @@ dist_patch_DATA =                                           
\
   %D%/packages/patches/akonadi-not-relocatable.patch           \
   %D%/packages/patches/akonadi-timestamps.patch                \
   %D%/packages/patches/allegro-mesa-18.2.5-and-later.patch     \
+  %D%/packages/patches/alure-dumb-2.patch                      \
   %D%/packages/patches/ibus-anthy-fix-tests.patch              \
   %D%/packages/patches/ibus-table-paths.patch                  \
   %D%/packages/patches/anki-mpv-args.patch                     \
diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm
index 3ab496bcdf..5136d5c9cf 100644
--- a/gnu/packages/audio.scm
+++ b/gnu/packages/audio.scm
@@ -3330,6 +3330,38 @@ buffers, and audio capture.")
     (home-page "https://kcat.strangesoft.net/openal.html";)
     (license license:lgpl2.0)))
 
+(define-public alure
+  (package
+    (name "alure")
+    (version "1.2")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://kcat.tomasu.net/alure-releases/";
+                                  "alure-" version ".tar.bz2"))
+              (sha256
+               (base32
+                "0w8gsyqki21s1qb2s5ac1kj08i6nc937c0rr08xbw9w9wvd6lpj6"))
+              (patches (search-patches "alure-dumb-2.patch"))))
+    (build-system cmake-build-system)
+    (arguments
+     `(#:tests? #f ;no tests
+       #:configure-flags '("-DMODPLUG=ON")))
+    (native-inputs (list pkg-config))
+    (inputs (list dumb
+                  flac
+                  mpg123
+                  libmodplug
+                  libsndfile
+                  libvorbis
+                  openal))
+    (home-page "https://kcat.tomasu.net/alure.html";)
+    (synopsis "OpenAL utility library")
+    (description
+     "ALURE is a utility library to help manage common tasks with OpenAL 
applications.
+This includes device enumeration and initialization, file loading, and
+streaming.")
+    (license license:expat)))
+
 (define-public patchage
   (package
     (name "patchage")
diff --git a/gnu/packages/patches/alure-dumb-2.patch 
b/gnu/packages/patches/alure-dumb-2.patch
new file mode 100644
index 0000000000..60d18f8570
--- /dev/null
+++ b/gnu/packages/patches/alure-dumb-2.patch
@@ -0,0 +1,30 @@
+Source: 
https://gitlab.archlinux.org/archlinux/packaging/packages/alure/-/blob/main/dumb-2.patch
+
+diff -Naur a/src/codec_dumb.cpp b/src/codec_dumb.cpp
+--- a/src/codec_dumb.cpp       2011-07-29 09:37:48.000000000 +0100
++++ b/src/codec_dumb.cpp       2020-05-10 15:59:48.502632496 +0100
+@@ -272,7 +272,11 @@
+ 
+ private:
+     // DUMBFILE iostream callbacks
++#if DUMB_VERSION >= 2*10000
++    static int skip(void *user_data, dumb_off_t offset)
++#else
+     static int skip(void *user_data, long offset)
++#endif
+     {
+         std::istream *stream = static_cast<dumbStream*>(user_data)->fstream;
+         stream->clear();
+@@ -282,7 +286,11 @@
+         return -1;
+     }
+ 
++#if DUMB_VERSION >= 2*10000
++    static dumb_ssize_t read(char *ptr, size_t size, void *user_data)
++#else
+     static long read(char *ptr, long size, void *user_data)
++#endif
+     {
+         std::istream *stream = static_cast<dumbStream*>(user_data)->fstream;
+         stream->clear();
+



reply via email to

[Prev in Thread] Current Thread [Next in Thread]