[PATCH] gnu: rtmidi: Update to 4.0.0.

  • Done
  • quality assurance status badge
Details
2 participants
  • Mathieu Othacehe
  • Pierre Langlois
Owner
unassigned
Submitted by
Pierre Langlois
Severity
normal

Debbugs page

Pierre Langlois wrote 5 years ago
(address . guix-patches@gnu.org)(name . Pierre Langlois)(address . pierre.langlois@gmx.com)
878sohwko0.fsf@gmx.com
Hello Guix!

Here's an update for the rtmidi package. I've had to fix the
powertabeditor package to be able to find the RtMidi.h header which has
now moved into a subdirectory. It looks like the issue is fixed upstream
in the build system but no release have been made yet so I've added a
TODO to remove the hack later.

WDYT?

Thanks,
Pierre
From ca890314f2a5d05d97c5bee39e0e571cf9344ba2 Mon Sep 17 00:00:00 2001
From: Pierre Langlois <pierre.langlois@gmx.com>
Date: Fri, 15 Nov 2019 09:23:16 +0000
Subject: [PATCH] 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.
---
gnu/packages/audio.scm | 31 ++++++++++---------------------
gnu/packages/music.scm | 8 ++++++++
2 files changed, 18 insertions(+), 21 deletions(-)

Toggle diff (75 lines)
diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm
index 15ba454edd..66ef787dcc 100644
--- a/gnu/packages/audio.scm
+++ b/gnu/packages/audio.scm
@@ -2341,33 +2341,22 @@ tempo and pitch of an audio recording independently of one another.")
(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
- (lambda _
- (substitute* "Makefile"
- (("/bin/ln") "ln")
- (("RtMidi.h RtError.h") "RtMidi.h"))
- #t))
- (add-before 'install 'make-target-dirs
+ (add-before 'bootstrap 'noconfigure
(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 @@ tempo and pitch of an audio recording independently of one another.")
("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
diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index 3373b4c0a3..241ede58d8 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -1284,6 +1284,14 @@ add_library( rapidjson INTERFACE IMPORTED )"))
(("#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
--
2.24.0
Mathieu Othacehe wrote 5 years ago
(address . guix-patches@gnu.org)
87lfshtne7.fsf@gmail.com
Hello Pierre,

Toggle quote (8 lines)
> Here's an update for the rtmidi package. I've had to fix the
> powertabeditor package to be able to find the RtMidi.h header which has
> now moved into a subdirectory. It looks like the issue is fixed upstream
> in the build system but no release have been made yet so I've added a
> TODO to remove the hack later.
>
> WDYT?

This patch LTGM! I have an error when closing powertabeditor but this
might be unrelated to this patch:

Toggle snippet (31 lines)
Unhandled exception: Parse error at offset 18446744073709551615: The document is empty.
/gnu/store/4pj5nbb1j5s6049h6jjk580v6rp21wc3-powertabeditor-2.0.0-alpha10/bin/powertabeditor [???]
/gnu/store/4pj5nbb1j5s6049h6jjk580v6rp21wc3-powertabeditor-2.0.0-alpha10/bin/powertabeditor [???]
/gnu/store/2plcy91lypnbbysb18ymnhaw3zwk8pg1-gcc-7.4.0-lib/lib/libstdc++.so.6 [???]
/gnu/store/2plcy91lypnbbysb18ymnhaw3zwk8pg1-gcc-7.4.0-lib/lib/libstdc++.so.6 [???]
/gnu/store/2plcy91lypnbbysb18ymnhaw3zwk8pg1-gcc-7.4.0-lib/lib/libstdc++.so.6 [???]
/gnu/store/4pj5nbb1j5s6049h6jjk580v6rp21wc3-powertabeditor-2.0.0-alpha10/bin/powertabeditor [TuningDictionary::ensureLoaded]
/gnu/store/4pj5nbb1j5s6049h6jjk580v6rp21wc3-powertabeditor-2.0.0-alpha10/bin/powertabeditor [TuningDictionary::save]
/gnu/store/4pj5nbb1j5s6049h6jjk580v6rp21wc3-powertabeditor-2.0.0-alpha10/bin/powertabeditor [PowerTabEditor::closeEvent]
/gnu/store/gl2mzs7ybzzfmy2yparzhrb6k0yqhxw2-qtbase-5.11.3/lib/libQt5Widgets.so.5 [QWidget::event]
/gnu/store/gl2mzs7ybzzfmy2yparzhrb6k0yqhxw2-qtbase-5.11.3/lib/libQt5Widgets.so.5 [QMainWindow::event]
/gnu/store/gl2mzs7ybzzfmy2yparzhrb6k0yqhxw2-qtbase-5.11.3/lib/libQt5Widgets.so.5 [QApplicationPrivate::notify_helper]
/gnu/store/gl2mzs7ybzzfmy2yparzhrb6k0yqhxw2-qtbase-5.11.3/lib/libQt5Widgets.so.5 [QApplication::notify]
/gnu/store/gl2mzs7ybzzfmy2yparzhrb6k0yqhxw2-qtbase-5.11.3/lib/libQt5Core.so.5 [QCoreApplication::notifyInternal2]
/gnu/store/gl2mzs7ybzzfmy2yparzhrb6k0yqhxw2-qtbase-5.11.3/lib/libQt5Widgets.so.5 [QWidgetPrivate::close_helper]
/gnu/store/gl2mzs7ybzzfmy2yparzhrb6k0yqhxw2-qtbase-5.11.3/lib/libQt5Widgets.so.5 [???]
/gnu/store/gl2mzs7ybzzfmy2yparzhrb6k0yqhxw2-qtbase-5.11.3/lib/libQt5Widgets.so.5 [???]
/gnu/store/gl2mzs7ybzzfmy2yparzhrb6k0yqhxw2-qtbase-5.11.3/lib/libQt5Widgets.so.5 [QApplicationPrivate::notify_helper]
/gnu/store/gl2mzs7ybzzfmy2yparzhrb6k0yqhxw2-qtbase-5.11.3/lib/libQt5Widgets.so.5 [QApplication::notify]
/gnu/store/gl2mzs7ybzzfmy2yparzhrb6k0yqhxw2-qtbase-5.11.3/lib/libQt5Core.so.5 [QCoreApplication::notifyInternal2]
/gnu/store/gl2mzs7ybzzfmy2yparzhrb6k0yqhxw2-qtbase-5.11.3/lib/libQt5Gui.so.5 [QGuiApplicationPrivate::processCloseEvent]
/gnu/store/gl2mzs7ybzzfmy2yparzhrb6k0yqhxw2-qtbase-5.11.3/lib/libQt5Gui.so.5 [QGuiApplicationPrivate::processWindowSystemEvent]
/gnu/store/gl2mzs7ybzzfmy2yparzhrb6k0yqhxw2-qtbase-5.11.3/lib/libQt5Gui.so.5 [QWindowSystemInterface::sendWindowSystemEvents]
/gnu/store/gl2mzs7ybzzfmy2yparzhrb6k0yqhxw2-qtbase-5.11.3/lib/qt5/plugins/platforms/../../../libQt5XcbQpa.so.5 [???]
/gnu/store/gl2mzs7ybzzfmy2yparzhrb6k0yqhxw2-qtbase-5.11.3/lib/libQt5Core.so.5 [QEventLoop::exec]
/gnu/store/gl2mzs7ybzzfmy2yparzhrb6k0yqhxw2-qtbase-5.11.3/lib/libQt5Core.so.5 [QCoreApplication::exec]
/gnu/store/4pj5nbb1j5s6049h6jjk580v6rp21wc3-powertabeditor-2.0.0-alpha10/bin/powertabeditor [main]
/gnu/store/ahqgl4h89xqj695lgqvsaf6zh2nhy4pj-glibc-2.29/lib/libc.so.6 [__libc_start_main]
/gnu/store/4pj5nbb1j5s6049h6jjk580v6rp21wc3-powertabeditor-2.0.0-alpha10/bin/powertabeditor [_start]

Mathieu
Pierre Langlois wrote 5 years ago
(name . Mathieu Othacehe)(address . m.othacehe@gmail.com)
877e41w9v7.fsf@gmx.com
Hi Mathieu,

Mathieu Othacehe writes:

Toggle quote (45 lines)
> Hello Pierre,
>
>> Here's an update for the rtmidi package. I've had to fix the
>> powertabeditor package to be able to find the RtMidi.h header which has
>> now moved into a subdirectory. It looks like the issue is fixed upstream
>> in the build system but no release have been made yet so I've added a
>> TODO to remove the hack later.
>>
>> WDYT?
>
> This patch LTGM! I have an error when closing powertabeditor but this
> might be unrelated to this patch:
>
> --8<---------------cut here---------------start------------->8---
> Unhandled exception: Parse error at offset 18446744073709551615: The document is empty.
> /gnu/store/4pj5nbb1j5s6049h6jjk580v6rp21wc3-powertabeditor-2.0.0-alpha10/bin/powertabeditor [???]
> /gnu/store/4pj5nbb1j5s6049h6jjk580v6rp21wc3-powertabeditor-2.0.0-alpha10/bin/powertabeditor [???]
> /gnu/store/2plcy91lypnbbysb18ymnhaw3zwk8pg1-gcc-7.4.0-lib/lib/libstdc++.so.6 [???]
> /gnu/store/2plcy91lypnbbysb18ymnhaw3zwk8pg1-gcc-7.4.0-lib/lib/libstdc++.so.6 [???]
> /gnu/store/2plcy91lypnbbysb18ymnhaw3zwk8pg1-gcc-7.4.0-lib/lib/libstdc++.so.6 [???]
> /gnu/store/4pj5nbb1j5s6049h6jjk580v6rp21wc3-powertabeditor-2.0.0-alpha10/bin/powertabeditor [TuningDictionary::ensureLoaded]
> /gnu/store/4pj5nbb1j5s6049h6jjk580v6rp21wc3-powertabeditor-2.0.0-alpha10/bin/powertabeditor [TuningDictionary::save]
> /gnu/store/4pj5nbb1j5s6049h6jjk580v6rp21wc3-powertabeditor-2.0.0-alpha10/bin/powertabeditor [PowerTabEditor::closeEvent]
> /gnu/store/gl2mzs7ybzzfmy2yparzhrb6k0yqhxw2-qtbase-5.11.3/lib/libQt5Widgets.so.5 [QWidget::event]
> /gnu/store/gl2mzs7ybzzfmy2yparzhrb6k0yqhxw2-qtbase-5.11.3/lib/libQt5Widgets.so.5 [QMainWindow::event]
> /gnu/store/gl2mzs7ybzzfmy2yparzhrb6k0yqhxw2-qtbase-5.11.3/lib/libQt5Widgets.so.5 [QApplicationPrivate::notify_helper]
> /gnu/store/gl2mzs7ybzzfmy2yparzhrb6k0yqhxw2-qtbase-5.11.3/lib/libQt5Widgets.so.5 [QApplication::notify]
> /gnu/store/gl2mzs7ybzzfmy2yparzhrb6k0yqhxw2-qtbase-5.11.3/lib/libQt5Core.so.5 [QCoreApplication::notifyInternal2]
> /gnu/store/gl2mzs7ybzzfmy2yparzhrb6k0yqhxw2-qtbase-5.11.3/lib/libQt5Widgets.so.5 [QWidgetPrivate::close_helper]
> /gnu/store/gl2mzs7ybzzfmy2yparzhrb6k0yqhxw2-qtbase-5.11.3/lib/libQt5Widgets.so.5 [???]
> /gnu/store/gl2mzs7ybzzfmy2yparzhrb6k0yqhxw2-qtbase-5.11.3/lib/libQt5Widgets.so.5 [???]
> /gnu/store/gl2mzs7ybzzfmy2yparzhrb6k0yqhxw2-qtbase-5.11.3/lib/libQt5Widgets.so.5 [QApplicationPrivate::notify_helper]
> /gnu/store/gl2mzs7ybzzfmy2yparzhrb6k0yqhxw2-qtbase-5.11.3/lib/libQt5Widgets.so.5 [QApplication::notify]
> /gnu/store/gl2mzs7ybzzfmy2yparzhrb6k0yqhxw2-qtbase-5.11.3/lib/libQt5Core.so.5 [QCoreApplication::notifyInternal2]
> /gnu/store/gl2mzs7ybzzfmy2yparzhrb6k0yqhxw2-qtbase-5.11.3/lib/libQt5Gui.so.5 [QGuiApplicationPrivate::processCloseEvent]
> /gnu/store/gl2mzs7ybzzfmy2yparzhrb6k0yqhxw2-qtbase-5.11.3/lib/libQt5Gui.so.5 [QGuiApplicationPrivate::processWindowSystemEvent]
> /gnu/store/gl2mzs7ybzzfmy2yparzhrb6k0yqhxw2-qtbase-5.11.3/lib/libQt5Gui.so.5 [QWindowSystemInterface::sendWindowSystemEvents]
> /gnu/store/gl2mzs7ybzzfmy2yparzhrb6k0yqhxw2-qtbase-5.11.3/lib/qt5/plugins/platforms/../../../libQt5XcbQpa.so.5 [???]
> /gnu/store/gl2mzs7ybzzfmy2yparzhrb6k0yqhxw2-qtbase-5.11.3/lib/libQt5Core.so.5 [QEventLoop::exec]
> /gnu/store/gl2mzs7ybzzfmy2yparzhrb6k0yqhxw2-qtbase-5.11.3/lib/libQt5Core.so.5 [QCoreApplication::exec]
> /gnu/store/4pj5nbb1j5s6049h6jjk580v6rp21wc3-powertabeditor-2.0.0-alpha10/bin/powertabeditor [main]
> /gnu/store/ahqgl4h89xqj695lgqvsaf6zh2nhy4pj-glibc-2.29/lib/libc.so.6 [__libc_start_main]
> /gnu/store/4pj5nbb1j5s6049h6jjk580v6rp21wc3-powertabeditor-2.0.0-alpha10/bin/powertabeditor [_start]
> --8<---------------cut here---------------end--------------->8---

Oh thanks for trying it out!

I'm also seeing this error on master so I guess we should be OK with
this patch. Funny thing is, I see this error as a GUI pop-up when
running it under GDB, but on its own I just get an abort, not sure what
that's about. I've only tested it with `guix environment --ad-hoc
powertabeditor gdb` though.

The issue seems harmless as it just happens when you close the it, but
I don't personally use powertabeditor so I can't be sure.

Thanks,
Pierre
Mathieu Othacehe wrote 5 years ago
(name . Pierre Langlois)(address . pierre.langlois@gmx.com)(address . 38217-done@debbugs.gnu.org)
87h835feov.fsf@gmail.com
Toggle quote (3 lines)
> The issue seems harmless as it just happens when you close the it, but
> I don't personally use powertabeditor so I can't be sure.

Ok, I pushed it then.

Thanks,

Mathieu
Closed
?
Your comment

This issue is archived.

To comment on this conversation send an email to 38217@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 38217
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch
You may also tag this issue. See list of standard tags. For example, to set the confirmed and easy tags
mumi command -t +confirmed -t +easy
Or, remove the moreinfo tag and set the help tag
mumi command -t -moreinfo -t +help