commit:     0396facd8f27eee98893cfc68de03905d9b95892
Author:     Miroslav Šulc <fordfrog <AT> gentoo <DOT> org>
AuthorDate: Sat Aug  8 08:48:35 2020 +0000
Commit:     Miroslav Šulc <fordfrog <AT> gentoo <DOT> org>
CommitDate: Sat Aug  8 08:48:51 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0396facd

media-sound/milkytracker: fixes

1) added xdg
2) switched to virtual/jack
3) fixed compilation wrt rtmidi

Closes: https://bugs.gentoo.org/736306
Closes: https://bugs.gentoo.org/735916
Package-Manager: Portage-3.0.1, Repoman-2.3.23
Signed-off-by: Miroslav Šulc <fordfrog <AT> gentoo.org>

 ...ker-1.02.00-fix-hard-dependency-on-rtmidi.patch | 85 ++++++++++++++++++++++
 ...02.00.ebuild => milkytracker-1.02.00-r1.ebuild} |  9 ++-
 2 files changed, 92 insertions(+), 2 deletions(-)

diff --git 
a/media-sound/milkytracker/files/milkytracker-1.02.00-fix-hard-dependency-on-rtmidi.patch
 
b/media-sound/milkytracker/files/milkytracker-1.02.00-fix-hard-dependency-on-rtmidi.patch
new file mode 100644
index 00000000000..090e433b5fd
--- /dev/null
+++ 
b/media-sound/milkytracker/files/milkytracker-1.02.00-fix-hard-dependency-on-rtmidi.patch
@@ -0,0 +1,85 @@
+From f85f5336df72dc44e407ae756ed20a8f8422cb76 Mon Sep 17 00:00:00 2001
+From: Dale Whinham <[email protected]>
+Date: Sat, 11 Apr 2020 16:51:31 +0100
+Subject: [PATCH] Fix hard dependency on RtMidi
+
+It is perfectly reasonable for libasound to be installed, but not
+librtmidi, and so we should only enable the MIDI code if both are
+present.
+
+Fixes #207.
+---
+ src/tracker/CMakeLists.txt   |  1 +
+ src/tracker/sdl/SDL_Main.cpp | 12 ++++++------
+ 2 files changed, 7 insertions(+), 6 deletions(-)
+
+diff --git a/src/tracker/CMakeLists.txt b/src/tracker/CMakeLists.txt
+index 0a935330..f4243a0f 100644
+--- a/src/tracker/CMakeLists.txt
++++ b/src/tracker/CMakeLists.txt
+@@ -348,6 +348,7 @@ elseif(WIN32)
+     target_link_libraries(tracker midi)
+ else()
+     if(ALSA_FOUND AND RTMIDI_FOUND)
++        target_compile_definitions(tracker PRIVATE -DHAVE_LIBRTMIDI)
+         target_link_libraries(tracker midi)
+     endif()
+ endif()
+diff --git a/src/tracker/sdl/SDL_Main.cpp b/src/tracker/sdl/SDL_Main.cpp
+index 1a49fc12..75ffa1df 100644
+--- a/src/tracker/sdl/SDL_Main.cpp
++++ b/src/tracker/sdl/SDL_Main.cpp
+@@ -78,7 +78,7 @@
+ #include "PPSystem_POSIX.h"
+ #include "PPPath_POSIX.h"
+ 
+-#ifdef HAVE_LIBASOUND
++#ifdef HAVE_LIBRTMIDI
+ #include "../midi/posix/MidiReceiver_pthread.h"
+ #endif
+ // --------------------------------------------------------------------------
+@@ -89,7 +89,7 @@ static SDL_TimerID                   timer;
+ static PPScreen*                      myTrackerScreen         = NULL;
+ static Tracker*                               myTracker                       
= NULL;
+ static PPDisplayDevice*               myDisplayDevice         = NULL;
+-#ifdef HAVE_LIBASOUND
++#ifdef HAVE_LIBRTMIDI
+ static MidiReceiver*          myMidiReceiver          = NULL;
+ #endif
+ 
+@@ -223,7 +223,7 @@ static Uint32 SDLCALL timerCallback(Uint32 interval, void* 
param)
+       return interval;
+ }
+ 
+-#ifdef HAVE_LIBASOUND
++#ifdef HAVE_LIBRTMIDI
+ class MidiEventHandler : public MidiReceiver::MidiEventHandler
+ {
+ public:
+@@ -829,7 +829,7 @@ myDisplayDevice = new PPDisplayDeviceFB(windowSize.width, 
windowSize.height, sca
+       // Startup procedure
+       myTracker->startUp(noSplash);
+ 
+-#ifdef HAVE_LIBASOUND
++#ifdef HAVE_LIBRTMIDI
+       InitMidi();
+ #endif
+ 
+@@ -962,7 +962,7 @@ int main(int argc, char *argv[])
+       initTracker(defaultBPP, orientation, swapRedBlue, noSplash);
+       globalMutex->unlock();
+ 
+-#ifdef HAVE_LIBASOUND
++#ifdef HAVE_LIBRTMIDI
+       if (myMidiReceiver && recVelocity)
+       {
+               myMidiReceiver->setRecordVelocity(true);
+@@ -1036,7 +1036,7 @@ int main(int argc, char *argv[])
+       SDL_RemoveTimer(timer);
+ 
+       globalMutex->lock();
+-#ifdef HAVE_LIBASOUND
++#ifdef HAVE_LIBRTMIDI
+       delete myMidiReceiver;
+ #endif
+       delete myTracker;

diff --git a/media-sound/milkytracker/milkytracker-1.02.00.ebuild 
b/media-sound/milkytracker/milkytracker-1.02.00-r1.ebuild
similarity index 90%
rename from media-sound/milkytracker/milkytracker-1.02.00.ebuild
rename to media-sound/milkytracker/milkytracker-1.02.00-r1.ebuild
index d9dc64d7f6e..b27c6c5260b 100644
--- a/media-sound/milkytracker/milkytracker-1.02.00.ebuild
+++ b/media-sound/milkytracker/milkytracker-1.02.00-r1.ebuild
@@ -3,7 +3,7 @@
 
 EAPI=7
 
-inherit cmake desktop
+inherit cmake desktop xdg
 
 # This commit is needed so the milkytrace binary is linked properly, bug 711564
 # It is also ~40kb so it is better to fetch it rather than ship it in-tree
@@ -24,7 +24,7 @@ RDEPEND="
        media-libs/libsdl2[X]
        sys-libs/zlib
        alsa? ( media-libs/alsa-lib )
-       jack? ( media-sound/jack-audio-connection-kit )"
+       jack? ( virtual/jack )"
 DEPEND="${RDEPEND}"
 
 PATCHES=(
@@ -32,10 +32,15 @@ PATCHES=(
        "${FILESDIR}/${P}-CVE-2019-14464.patch"
        "${FILESDIR}/${P}-CVE-2019-1449x.patch"
        "${FILESDIR}/${P}-CVE-2020-15569.patch"
+       "${FILESDIR}/${P}-fix-hard-dependency-on-rtmidi.patch"
 )
 
 S="${WORKDIR}/MilkyTracker-${PV}"
 
+src_prepare() {
+       cmake_src_prepare
+}
+
 src_configure() {
        local mycmakeargs=(
                $(cmake_use_find_package alsa ALSA)

Reply via email to