diff options
author | Ricardo Wurmus <rekado@elephly.net> | 2020-07-10 17:48:06 +0200 |
---|---|---|
committer | Ricardo Wurmus <rekado@elephly.net> | 2020-07-16 10:07:57 +0200 |
commit | f5340e004590d3775157b335efa8a1525605a55c (patch) | |
tree | 2f8dd7714c3db5c16bec0b7b5834c2bafed67d5b /gnu/packages/audio.scm | |
parent | 03f9a8c35be387f37badcd2c830ac7414ac17225 (diff) |
gnu: Add tao.
* gnu/packages/patches/tao-add-missing-headers.patch,
gnu/packages/patches/tao-fix-parser-types.patch: New files.
* gnu/local.mk (dist_patch_DATA): Add them.
* gnu/packages/audio.scm (tao): New variable.
Diffstat (limited to 'gnu/packages/audio.scm')
-rw-r--r-- | gnu/packages/audio.scm | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm index 736b934d79..e3085b8a7f 100644 --- a/gnu/packages/audio.scm +++ b/gnu/packages/audio.scm @@ -70,6 +70,7 @@ #:use-module (gnu packages fontutils) #:use-module (gnu packages gcc) #:use-module (gnu packages gettext) + #:use-module (gnu packages gl) #:use-module (gnu packages glib) #:use-module (gnu packages gnome) #:use-module (gnu packages gnunet) ; libmicrohttpd @@ -861,6 +862,76 @@ flanger), ringmodulator, distortion, filters, pitchshift, oscillators, emulation (valve, tape), bit fiddling (decimator, pointer-cast), etc.") (license license:gpl3+))) +(define-public tao + (package + (name "tao") + (version "1.0-beta-10May2006") + (source (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/taopm/Tao/" + "tao-" version "/" + "tao-" version ".tar.gz")) + (sha256 + (base32 + "156py3g6mmglldfd0j76bn7n242hdwf49diaprjpj7crp8vgf2pz")) + (patches + (search-patches "tao-add-missing-headers.patch" + "tao-fix-parser-types.patch")) + (modules '((guix build utils))) + (snippet + '(begin + (substitute* "configure" + (("SHELL=/bin/sh") "")) + #t)))) + (build-system gnu-build-system) + (arguments + '(#:configure-flags '("TAO_RELEASE=-beta") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-references + (lambda* (#:key outputs #:allow-other-keys) + (substitute* "user-scripts/tao.in" + (("taoparse") + (string-append (assoc-ref outputs "out") "/bin/taoparse")) + (("grep") (which "grep")) + (("sed -f \\$distdir/user-scripts/") + (string-append (which "sed") " -f $distdir/")) + (("distdir=.*") + (string-append "distdir=" + (assoc-ref outputs "out") "/share/tao"))) + #t)) + (add-after 'install 'install-extra-files + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (share (string-append out "/share/tao/")) + (inc (string-append out "/include/tao/"))) + (mkdir-p share) + (mkdir-p inc) + (install-file "user-scripts/error.parse" share) + (copy-recursively "examples" (string-append share "examples")) + (for-each (lambda (file) (install-file file inc)) + (find-files "include" "\\.h")) + #t)))))) + (inputs + `(("audiofile" ,audiofile) + ("libxi" ,libxi) + ("libxmu" ,libxmu) + ("mesa" ,mesa) + ("glut" ,freeglut) + ("flex" ,flex) + ("bison" ,bison) + ("sed" ,sed) + ("grep" ,grep))) + (home-page "http://taopm.sourceforge.net/") + (synopsis "Sound Synthesis with Physical Models") + (description "Tao is a software package for sound synthesis using physical +models. It provides a virtual acoustic material constructed from masses and +springs which can be used as the basis for building quite complex virtual +musical instruments. Tao comes with a synthesis language for creating and +playing instruments and a C++ API for those who would like to use it as an +object library.") + (license license:gpl2+))) + (define-public csound (package (name "csound") |