aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSughosha <sughosha@proton.me>2022-11-13 17:26:19 +0100
committerRicardo Wurmus <rekado@elephly.net>2022-11-13 19:28:47 +0100
commit6737fdc1c822c5c35bff68b6491e52895d9e014f (patch)
tree4716e673fb34e56fc00077eb7c3371d7cc626882
parent9a8c256cae816b8798ad228fd94c4beb467fbdcf (diff)
downloadguix-6737fdc1c822c5c35bff68b6491e52895d9e014f.tar
guix-6737fdc1c822c5c35bff68b6491e52895d9e014f.tar.gz
gnu: Add qm-dsp.
* gnu/packages/audio.scm (qm-dsp): New variable. Co-authored-by: Ricardo Wurmus <rekado@elephly.net>
-rw-r--r--gnu/packages/audio.scm52
1 files changed, 51 insertions, 1 deletions
diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm
index bba35dcb39..11d654e85f 100644
--- a/gnu/packages/audio.scm
+++ b/gnu/packages/audio.scm
@@ -145,7 +145,8 @@
#:use-module (guix packages)
#:use-module (guix utils)
#:use-module (srfi srfi-1)
- #:use-module (srfi srfi-26))
+ #:use-module (srfi srfi-26)
+ #:use-module (ice-9 match))
(define-public opensles
(package
@@ -614,6 +615,55 @@ attacks, performing pitch detection, tapping the beat and producing MIDI
streams from live audio.")
(license license:gpl3+)))
+(define-public qm-dsp
+ (package
+ (name "qm-dsp")
+ (version "1.7.1")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/c4dm/qm-dsp")
+ (commit (string-append "v" version))))
+ (sha256
+ (base32
+ "1vkb1xr2hjcaw88gig7rknlwsx01lm0w94d2z0rk5vz9ih4fslvv"))))
+ (build-system gnu-build-system)
+ (arguments
+ (list
+ #:make-flags
+ #~(list #$(string-append "-f" "build/"
+ (match (or (%current-target-system)
+ (%current-system))
+ ("x86_64-linux" "linux/Makefile.linux64")
+ ("i686-linux" "linux/Makefile.linux32")
+ (target
+ (if (string-suffix? "-mingw32" target)
+ "mingw32/Makefile.mingw32"
+ "general/Makefile.inc"))))
+ (string-append "CC=" #$(cc-for-target)))
+ #:phases
+ #~(modify-phases %standard-phases
+ (delete 'configure) ;no configure script
+ (replace 'install
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((lib (string-append #$output "/lib"))
+ (include (string-append #$output "/include")))
+ (install-file "libqm-dsp.a" lib)
+ (mkdir-p include)
+ (for-each (lambda (file)
+ (unless (or (string-prefix? "./build" file)
+ (string-prefix? "./include" file))
+ (install-file file (string-append include "/"
+ (dirname file)))))
+ (find-files "." "\\.h$"))))))
+ #:test-target "tests"))
+ (home-page "https://code.soundsoftware.ac.uk/projects/qm-dsp")
+ (synopsis "C++ library of functions for DSP and Music Informatics purposes")
+ (description
+ "QM-DSP is a C++ library of functions for DSP and Music Informatics
+purposes developed at Queen Mary, University of London.")
+ (license license:gpl2+)))
+
(define (ardour-rpath-phase major-version)
`(lambda* (#:key outputs #:allow-other-keys)
(let ((libdir (string-append (assoc-ref outputs "out")