diff --git a/3rdparty/CMakeLists.txt b/3rdparty/CMakeLists.txt index 26b87b84c..2f224bc9d 100644 --- a/3rdparty/CMakeLists.txt +++ b/3rdparty/CMakeLists.txt @@ -378,7 +378,12 @@ endif() add_subdirectory(miniupnp EXCLUDE_FROM_ALL) # RTMIDI -add_subdirectory(rtmidi EXCLUDE_FROM_ALL) +if(NOT ANDROID) + add_subdirectory(rtmidi EXCLUDE_FROM_ALL) +else() + add_library(rtmidi INTERFACE) + target_compile_definitions(rtmidi INTERFACE WITHOUT_RTMIDI) +endif() # OPENCV add_subdirectory(opencv EXCLUDE_FROM_ALL) diff --git a/rpcs3/Emu/Cell/lv2/sys_usbd.cpp b/rpcs3/Emu/Cell/lv2/sys_usbd.cpp index cb0f15afa..e7dc92beb 100644 --- a/rpcs3/Emu/Cell/lv2/sys_usbd.cpp +++ b/rpcs3/Emu/Cell/lv2/sys_usbd.cpp @@ -537,6 +537,7 @@ usb_handler_thread::usb_handler_thread() usb_devices.push_back(std::make_shared(usb_info, get_new_location())); } +#ifndef WITHOUT_RTMIDI const std::vector devices_list = fmt::split(g_cfg.io.midi_devices.to_string(), {"@@@"}); for (usz index = 0; index < std::min(max_midi_devices, devices_list.size()); index++) { @@ -569,6 +570,7 @@ usb_handler_thread::usb_handler_thread() break; } } +#endif } usb_handler_thread::~usb_handler_thread() diff --git a/rpcs3/Emu/Io/RB3MidiDrums.cpp b/rpcs3/Emu/Io/RB3MidiDrums.cpp index 999182ae0..d21efe528 100644 --- a/rpcs3/Emu/Io/RB3MidiDrums.cpp +++ b/rpcs3/Emu/Io/RB3MidiDrums.cpp @@ -1,6 +1,8 @@ // Rock Band 3 MIDI Pro Adapter Emulator (drums Mode) #include "stdafx.h" + +#ifndef WITHOUT_RTMIDI #include "RB3MidiDrums.h" #include "Emu/Cell/lv2/sys_usbd.h" #include "Emu/Io/rb3drums_config.h" @@ -838,3 +840,5 @@ std::optional usb_device_rb3_midi_drums::ComboTracker::take_ } return {}; } + +#endif diff --git a/rpcs3/Emu/Io/RB3MidiDrums.h b/rpcs3/Emu/Io/RB3MidiDrums.h index 60a2874ce..147a9a768 100644 --- a/rpcs3/Emu/Io/RB3MidiDrums.h +++ b/rpcs3/Emu/Io/RB3MidiDrums.h @@ -1,5 +1,7 @@ #pragma once +#ifndef WITHOUT_RTMIDI + #include "Emu/Io/usb_device.h" #include @@ -155,3 +157,5 @@ private: bool is_midi_cc(u8 id, u8 value); void write_state(u8* buf, const rb3drums::KitState&); }; + +#endif diff --git a/rpcs3/Emu/Io/RB3MidiGuitar.cpp b/rpcs3/Emu/Io/RB3MidiGuitar.cpp index 54654c24c..c98701c75 100644 --- a/rpcs3/Emu/Io/RB3MidiGuitar.cpp +++ b/rpcs3/Emu/Io/RB3MidiGuitar.cpp @@ -1,6 +1,9 @@ // Rock Band 3 MIDI Pro Adapter Emulator (Guitar Mode) #include "stdafx.h" + +#ifndef WITHOUT_RTMIDI + #include "RB3MidiGuitar.h" #include "Emu/Cell/lv2/sys_usbd.h" @@ -370,3 +373,5 @@ void usb_device_rb3_midi_guitar::write_state(u8* buf) buf[2] = button_state.dpad; } + +#endif diff --git a/rpcs3/Emu/Io/RB3MidiGuitar.h b/rpcs3/Emu/Io/RB3MidiGuitar.h index 3a93f95d6..85474a023 100644 --- a/rpcs3/Emu/Io/RB3MidiGuitar.h +++ b/rpcs3/Emu/Io/RB3MidiGuitar.h @@ -1,5 +1,7 @@ #pragma once +#ifndef WITHOUT_RTMIDI + #include "Emu/Io/usb_device.h" #include @@ -42,3 +44,5 @@ public: void control_transfer(u8 bmRequestType, u8 bRequest, u16 wValue, u16 wIndex, u16 wLength, u32 buf_size, u8* buf, UsbTransfer* transfer) override; void interrupt_transfer(u32 buf_size, u8* buf, u32 endpoint, UsbTransfer* transfer) override; }; + +#endif diff --git a/rpcs3/Emu/Io/RB3MidiKeyboard.cpp b/rpcs3/Emu/Io/RB3MidiKeyboard.cpp index ccfc2dbdc..0a1bfcf6b 100644 --- a/rpcs3/Emu/Io/RB3MidiKeyboard.cpp +++ b/rpcs3/Emu/Io/RB3MidiKeyboard.cpp @@ -1,6 +1,7 @@ // Rock Band 3 MIDI Pro Adapter Emulator (Keyboard Mode) - #include "stdafx.h" + +#ifndef WITHOUT_RTMIDI #include "RB3MidiKeyboard.h" #include "Emu/Cell/lv2/sys_usbd.h" @@ -355,3 +356,5 @@ void usb_device_rb3_midi_keyboard::write_state(u8* buf) buf[15] = std::min(std::max(0x5, wheel_pos), 0x75); } } + +#endif diff --git a/rpcs3/Emu/Io/RB3MidiKeyboard.h b/rpcs3/Emu/Io/RB3MidiKeyboard.h index c5042af23..e642831e3 100644 --- a/rpcs3/Emu/Io/RB3MidiKeyboard.h +++ b/rpcs3/Emu/Io/RB3MidiKeyboard.h @@ -1,5 +1,7 @@ #pragma once +#ifndef WITHOUT_RTMIDI + #include "Emu/Io/usb_device.h" #include @@ -47,3 +49,4 @@ public: void control_transfer(u8 bmRequestType, u8 bRequest, u16 wValue, u16 wIndex, u16 wLength, u32 buf_size, u8* buf, UsbTransfer* transfer) override; void interrupt_transfer(u32 buf_size, u8* buf, u32 endpoint, UsbTransfer* transfer) override; }; +#endif