diff options
Diffstat (limited to 'media-sound')
-rw-r--r-- | media-sound/milkytracker/files/milkytracker-1.02.00-fix-hard-dependency-on-rtmidi.patch | 85 | ||||
-rw-r--r-- | media-sound/milkytracker/milkytracker-1.02.00-r1.ebuild (renamed from media-sound/milkytracker/milkytracker-1.02.00.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 000000000000..090e433b5fdc --- /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 <daleyo@gmail.com> +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 index d9dc64d7f6ee..b27c6c5260b4 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) |