gnu: rtmidi: Update to 4.0.0.

* gnu/packages/audio.scm (rtmidi): Update to 4.0.0.
[source]: Download tarball from upstream URL rather than the powertab github
fork.
[arguments]: Enable tests.  Remove 'build and 'install phases and add a new
'noconfigure phase to prevent the bootstrap script from invoking configure.
[home-page]: Update homepage to upstream URL.
* gnu/packages/music.scm (powertabeditor)[arguments]: Add phase that substitutes
the rtmidi #include directive to find the header.

Signed-off-by: Mathieu Othacehe <m.othacehe@gmail.com>
This commit is contained in:
Pierre Langlois 2019-11-15 09:31:11 +00:00 committed by Mathieu Othacehe
parent ae5525c591
commit bcdf11d6ff
No known key found for this signature in database
GPG key ID: 8354763531769CA6
2 changed files with 18 additions and 21 deletions

View file

@ -2341,33 +2341,22 @@ (define-public rubberband
(define-public rtmidi
(package
(name "rtmidi")
(version "2.1.0")
(version "4.0.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/powertab/rtmidi.git")
(commit version)))
(file-name (git-file-name name version))
(method url-fetch)
(uri (string-append "https://www.music.mcgill.ca/~gary/rtmidi"
"/release/rtmidi-" version ".tar.gz"))
(file-name (string-append "rtmidi-" version ".tar.gz"))
(sha256
(base32
"106v177y3nrjv2l1yskch4phpqd8h97b67zj0jiq9pc3c69jr1ay"))))
"1k962ljpnwyjw9jjiky2372khhri1wqvrj5qsalfpys31xqzw31p"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ;no "check" target
#:phases
`(#:phases
(modify-phases %standard-phases
(add-before 'build 'fix-makefile
(add-before 'bootstrap 'noconfigure
(lambda _
(substitute* "Makefile"
(("/bin/ln") "ln")
(("RtMidi.h RtError.h") "RtMidi.h"))
#t))
(add-before 'install 'make-target-dirs
(lambda _
(let ((out (assoc-ref %outputs "out")))
(mkdir-p (string-append out "/bin"))
(mkdir (string-append out "/lib"))
(mkdir (string-append out "/include")))
(setenv "NOCONFIGURE" "yes")
#t)))))
(inputs
`(("jack" ,jack-1)
@ -2377,7 +2366,7 @@ (define-public rtmidi
("automake" ,automake)
("libtool" ,libtool)
("pkg-config" ,pkg-config)))
(home-page "https://github.com/powertab/rtmidi")
(home-page "https://www.music.mcgill.ca/~gary/rtmidi")
(synopsis "Cross-platform MIDI library for C++")
(description
"RtMidi is a set of C++ classes (RtMidiIn, RtMidiOut, and API specific

View file

@ -1284,6 +1284,14 @@ (define-public powertabeditor
(("#include <QWidget>" m)
(string-append m "\n#include <QButtonGroup>\n#include <QAction>")))
#t))
;; FIXME: Finding RtMidi was fixed upstream so we should be able to
;; remove this hack when a release is made.
;; See https://github.com/powertab/powertabeditor/issues/255
(add-after 'unpack 'fix-rtmidi-header
(lambda _
(substitute* "source/audio/midioutputdevice.cpp"
(("#include <RtMidi.h>") "#include <rtmidi/RtMidi.h>"))
#t))
(add-before 'configure 'remove-third-party-libs
(lambda* (#:key inputs #:allow-other-keys)
;; Link with required static libraries, because we're not