Subject: [PATCH 6/9] gnu: rubberband: Update to 3.2.1.

From: 'Brendan Tildesley <[email-masked]>
Date: Tue, 11 Apr 2023 18:09:52 +1000

From: Brendan Tildesley <[email-masked]>

* gnu/packages/audio.scm (rubberband): Update to 3.2.1
[origin]: Use current upstream repository location.
[arguments]: Use libsamplerate over builtin resampler.
Use guix fftw over bundled version.
[inputs]: Add lv2 plugin support. Add fftw.
[native-search-paths]: Add lv2 nad ladspa search paths.
---
 gnu/packages/audio.scm | 46 ++++++++++++++++++++++++------------------
 1 file changed, 26 insertions(+), 20 deletions(-)

diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm
index e2d788bfeb..7d62617667 100644
--- a/gnu/packages/audio.scm
+++ b/gnu/packages/audio.scm
@@ -143,6 +143,7 @@ (define-module (gnu packages audio)
   #:use-module (guix build-system trivial)
   #:use-module (guix build-system waf)
   #:use-module (guix download)
+  #:use-module (guix hg-download)
   #:use-module (guix git-download)
   #:use-module (guix gexp)
   #:use-module ((guix licenses) #:prefix license:)
@@ -3663,33 +3664,38 @@ (define-public resample
 (define-public rubberband
   (package
     (name "rubberband")
-    (version "1.8.2")
+    (version "3.2.1")
     (source (origin
-              (method url-fetch)
-              (uri
-               (string-append "https://bitbucket.org/breakfastquay/rubberband/get/v"
-                              version
-                              ".tar.bz2"))
-              (file-name (string-append name "-" version ".tar.bz2"))
+              (method hg-fetch)
+              (uri (hg-reference
+                    (url "https://hg.sr.ht/~breakfastquay/rubberband")
+                    (changeset (string-append "v" version))))
+              (file-name (hg-file-name name version))
               (sha256
                (base32
-                "0462fmjnfqpv2qi0s6ny42drqarkr0xy9lw8frjmfgzyzl5n9294"))))
-    (build-system gnu-build-system)
+                "0zxq4d4i89s83r95vrb0h4zpkpqbsy2y2vralg30x57z3y2w702i"))))
+    (build-system meson-build-system)
     (arguments
-     `(#:tests? #f                      ; no check target
-       #:phases
-       (modify-phases %standard-phases
-         (add-after 'unpack 'skip-jni-installation
-           ;; ‘make install’ unconditionally installs librubberband-jni.so,
-           ;; which is never built by ‘make all’.  Skip it.
-           (lambda _
-             (substitute* "Makefile.in"
-               ((".*cp -f \\$\\(JNI_TARGET\\).*") ""))
-             #t)))))
+     '(#:tests? #f ; missing boost unit test library
+       #:configure-flags
+       '("-Dresampler=libsamplerate"
+         "-Dfft=fftw" ; To avoid using bundled version
+         "-Ddefault_library=shared"))) ; Don't build static library
     (inputs
-     (list ladspa libsamplerate vamp))
+     (list ladspa
+           libsamplerate
+           vamp
+           lv2
+           fftw))
     (native-inputs
      (list pkg-config))
+    (native-search-paths
+     (list (search-path-specification
+            (variable "LV2_PATH")
+            (files '("lib/lv2")))
+           (search-path-specification
+            (variable "LADSPA_PATH")
+            (files '("lib/ladspa")))))
     (home-page "https://breakfastquay.com/rubberband/")
     (synopsis "Audio time-stretching and pitch-shifting library")
     (description
-- 
2.39.2