diff options
Diffstat (limited to '')
| -rw-r--r-- | CMakeLists.txt | 28 | ||||
| -rw-r--r-- | externals/CMakeLists.txt | 4 | ||||
| -rw-r--r-- | src/CMakeLists.txt | 5 | ||||
| -rw-r--r-- | src/audio_core/CMakeLists.txt | 19 | ||||
| -rw-r--r-- | src/input_common/CMakeLists.txt | 15 | ||||
| -rw-r--r-- | src/input_common/main.cpp | 24 |
6 files changed, 71 insertions, 24 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index f71a8b3e3..55fdf8fcc 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt | |||
| @@ -22,6 +22,8 @@ CMAKE_DEPENDENT_OPTION(YUZU_USE_BUNDLED_SDL2 "Download bundled SDL2 binaries" ON | |||
| 22 | # On Linux system SDL2 is likely to be lacking HIDAPI support which have drawbacks but is needed for SDL motion | 22 | # On Linux system SDL2 is likely to be lacking HIDAPI support which have drawbacks but is needed for SDL motion |
| 23 | CMAKE_DEPENDENT_OPTION(YUZU_USE_EXTERNAL_SDL2 "Compile external SDL2" ON "ENABLE_SDL2;NOT MSVC" OFF) | 23 | CMAKE_DEPENDENT_OPTION(YUZU_USE_EXTERNAL_SDL2 "Compile external SDL2" ON "ENABLE_SDL2;NOT MSVC" OFF) |
| 24 | 24 | ||
| 25 | option(ENABLE_LIBUSB "Enable the use of LibUSB" ON) | ||
| 26 | |||
| 25 | option(ENABLE_OPENGL "Enable OpenGL" ON) | 27 | option(ENABLE_OPENGL "Enable OpenGL" ON) |
| 26 | mark_as_advanced(FORCE ENABLE_OPENGL) | 28 | mark_as_advanced(FORCE ENABLE_OPENGL) |
| 27 | option(ENABLE_QT "Enable the Qt frontend" ON) | 29 | option(ENABLE_QT "Enable the Qt frontend" ON) |
| @@ -35,6 +37,8 @@ option(ENABLE_WEB_SERVICE "Enable web services (telemetry, etc.)" ON) | |||
| 35 | 37 | ||
| 36 | option(YUZU_USE_BUNDLED_FFMPEG "Download/Build bundled FFmpeg" "${WIN32}") | 38 | option(YUZU_USE_BUNDLED_FFMPEG "Download/Build bundled FFmpeg" "${WIN32}") |
| 37 | 39 | ||
| 40 | option(YUZU_USE_EXTERNAL_VULKAN_HEADERS "Use Vulkan-Headers from externals" ON) | ||
| 41 | |||
| 38 | option(YUZU_USE_QT_MULTIMEDIA "Use QtMultimedia for Camera" OFF) | 42 | option(YUZU_USE_QT_MULTIMEDIA "Use QtMultimedia for Camera" OFF) |
| 39 | 43 | ||
| 40 | option(YUZU_USE_QT_WEB_ENGINE "Use QtWebEngine for web applet implementation" OFF) | 44 | option(YUZU_USE_QT_WEB_ENGINE "Use QtWebEngine for web applet implementation" OFF) |
| @@ -47,6 +51,8 @@ option(YUZU_TESTS "Compile tests" ON) | |||
| 47 | 51 | ||
| 48 | option(YUZU_USE_PRECOMPILED_HEADERS "Use precompiled headers" ON) | 52 | option(YUZU_USE_PRECOMPILED_HEADERS "Use precompiled headers" ON) |
| 49 | 53 | ||
| 54 | option(YUZU_ROOM "Compile LDN room server" ON) | ||
| 55 | |||
| 50 | CMAKE_DEPENDENT_OPTION(YUZU_CRASH_DUMPS "Compile Windows crash dump (Minidump) support" OFF "WIN32" OFF) | 56 | CMAKE_DEPENDENT_OPTION(YUZU_CRASH_DUMPS "Compile Windows crash dump (Minidump) support" OFF "WIN32" OFF) |
| 51 | 57 | ||
| 52 | option(YUZU_USE_BUNDLED_VCPKG "Use vcpkg for yuzu dependencies" "${MSVC}") | 58 | option(YUZU_USE_BUNDLED_VCPKG "Use vcpkg for yuzu dependencies" "${MSVC}") |
| @@ -204,33 +210,39 @@ set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/bin) | |||
| 204 | find_package(enet 1.3) | 210 | find_package(enet 1.3) |
| 205 | find_package(fmt 9 REQUIRED) | 211 | find_package(fmt 9 REQUIRED) |
| 206 | find_package(inih) | 212 | find_package(inih) |
| 207 | find_package(libusb 1.0.24) | ||
| 208 | find_package(lz4 REQUIRED) | 213 | find_package(lz4 REQUIRED) |
| 209 | find_package(nlohmann_json 3.8 REQUIRED) | 214 | find_package(nlohmann_json 3.8 REQUIRED) |
| 210 | find_package(Opus 1.3) | 215 | find_package(Opus 1.3) |
| 211 | find_package(Vulkan 1.3.238) | ||
| 212 | find_package(ZLIB 1.2 REQUIRED) | 216 | find_package(ZLIB 1.2 REQUIRED) |
| 213 | find_package(zstd 1.5 REQUIRED) | 217 | find_package(zstd 1.5 REQUIRED) |
| 214 | 218 | ||
| 219 | if (NOT YUZU_USE_EXTERNAL_VULKAN_HEADERS) | ||
| 220 | find_package(Vulkan 1.3.238) | ||
| 221 | endif() | ||
| 222 | |||
| 223 | if (ENABLE_LIBUSB) | ||
| 224 | find_package(libusb 1.0.24) | ||
| 225 | endif() | ||
| 226 | |||
| 215 | if (ARCHITECTURE_x86 OR ARCHITECTURE_x86_64) | 227 | if (ARCHITECTURE_x86 OR ARCHITECTURE_x86_64) |
| 216 | find_package(xbyak 6) | 228 | find_package(xbyak 6 QUIET) |
| 217 | endif() | 229 | endif() |
| 218 | 230 | ||
| 219 | if (ARCHITECTURE_x86_64 OR ARCHITECTURE_arm64) | 231 | if (ARCHITECTURE_x86_64 OR ARCHITECTURE_arm64) |
| 220 | find_package(dynarmic 6.4.0) | 232 | find_package(dynarmic 6.4.0 QUIET) |
| 221 | endif() | 233 | endif() |
| 222 | 234 | ||
| 223 | if (ENABLE_CUBEB) | 235 | if (ENABLE_CUBEB) |
| 224 | find_package(cubeb) | 236 | find_package(cubeb QUIET) |
| 225 | endif() | 237 | endif() |
| 226 | 238 | ||
| 227 | if (USE_DISCORD_PRESENCE) | 239 | if (USE_DISCORD_PRESENCE) |
| 228 | find_package(DiscordRPC) | 240 | find_package(DiscordRPC QUIET) |
| 229 | endif() | 241 | endif() |
| 230 | 242 | ||
| 231 | if (ENABLE_WEB_SERVICE) | 243 | if (ENABLE_WEB_SERVICE) |
| 232 | find_package(cpp-jwt 1.4) | 244 | find_package(cpp-jwt 1.4 QUIET) |
| 233 | find_package(httplib 0.11) | 245 | find_package(httplib 0.11 QUIET) |
| 234 | endif() | 246 | endif() |
| 235 | 247 | ||
| 236 | if (YUZU_TESTS) | 248 | if (YUZU_TESTS) |
diff --git a/externals/CMakeLists.txt b/externals/CMakeLists.txt index 4ffafd18c..1b9ae0009 100644 --- a/externals/CMakeLists.txt +++ b/externals/CMakeLists.txt | |||
| @@ -45,7 +45,7 @@ if (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL "12" AND CMAKE_CXX_COMPILER | |||
| 45 | endif() | 45 | endif() |
| 46 | 46 | ||
| 47 | # libusb | 47 | # libusb |
| 48 | if (NOT TARGET libusb::usb) | 48 | if (ENABLE_LIBUSB AND NOT TARGET libusb::usb) |
| 49 | add_subdirectory(libusb EXCLUDE_FROM_ALL) | 49 | add_subdirectory(libusb EXCLUDE_FROM_ALL) |
| 50 | endif() | 50 | endif() |
| 51 | 51 | ||
| @@ -152,6 +152,6 @@ if (YUZU_USE_BUNDLED_FFMPEG) | |||
| 152 | endif() | 152 | endif() |
| 153 | 153 | ||
| 154 | # Vulkan-Headers | 154 | # Vulkan-Headers |
| 155 | if (NOT TARGET Vulkan::Headers) | 155 | if (YUZU_USE_EXTERNAL_VULKAN_HEADERS) |
| 156 | add_subdirectory(Vulkan-Headers EXCLUDE_FROM_ALL) | 156 | add_subdirectory(Vulkan-Headers EXCLUDE_FROM_ALL) |
| 157 | endif() | 157 | endif() |
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 140415474..c7283e82c 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt | |||
| @@ -161,7 +161,10 @@ add_subdirectory(video_core) | |||
| 161 | add_subdirectory(network) | 161 | add_subdirectory(network) |
| 162 | add_subdirectory(input_common) | 162 | add_subdirectory(input_common) |
| 163 | add_subdirectory(shader_recompiler) | 163 | add_subdirectory(shader_recompiler) |
| 164 | add_subdirectory(dedicated_room) | 164 | |
| 165 | if (YUZU_ROOM) | ||
| 166 | add_subdirectory(dedicated_room) | ||
| 167 | endif() | ||
| 165 | 168 | ||
| 166 | if (YUZU_TESTS) | 169 | if (YUZU_TESTS) |
| 167 | add_subdirectory(tests) | 170 | add_subdirectory(tests) |
diff --git a/src/audio_core/CMakeLists.txt b/src/audio_core/CMakeLists.txt index 420ba62e0..e7b595459 100644 --- a/src/audio_core/CMakeLists.txt +++ b/src/audio_core/CMakeLists.txt | |||
| @@ -187,11 +187,7 @@ add_library(audio_core STATIC | |||
| 187 | renderer/voice/voice_info.cpp | 187 | renderer/voice/voice_info.cpp |
| 188 | renderer/voice/voice_info.h | 188 | renderer/voice/voice_info.h |
| 189 | renderer/voice/voice_state.h | 189 | renderer/voice/voice_state.h |
| 190 | sink/cubeb_sink.cpp | ||
| 191 | sink/cubeb_sink.h | ||
| 192 | sink/null_sink.h | 190 | sink/null_sink.h |
| 193 | sink/sdl2_sink.cpp | ||
| 194 | sink/sdl2_sink.h | ||
| 195 | sink/sink.h | 191 | sink/sink.h |
| 196 | sink/sink_details.cpp | 192 | sink/sink_details.cpp |
| 197 | sink/sink_details.h | 193 | sink/sink_details.h |
| @@ -222,11 +218,22 @@ if (ARCHITECTURE_x86_64 OR ARCHITECTURE_arm64) | |||
| 222 | target_link_libraries(audio_core PRIVATE dynarmic::dynarmic) | 218 | target_link_libraries(audio_core PRIVATE dynarmic::dynarmic) |
| 223 | endif() | 219 | endif() |
| 224 | 220 | ||
| 225 | if(ENABLE_CUBEB) | 221 | if (ENABLE_CUBEB) |
| 222 | target_sources(audio_core PRIVATE | ||
| 223 | sink/cubeb_sink.cpp | ||
| 224 | sink/cubeb_sink.h | ||
| 225 | ) | ||
| 226 | |||
| 226 | target_link_libraries(audio_core PRIVATE cubeb::cubeb) | 227 | target_link_libraries(audio_core PRIVATE cubeb::cubeb) |
| 227 | target_compile_definitions(audio_core PRIVATE -DHAVE_CUBEB=1) | 228 | target_compile_definitions(audio_core PRIVATE -DHAVE_CUBEB=1) |
| 228 | endif() | 229 | endif() |
| 229 | if(ENABLE_SDL2) | 230 | |
| 231 | if (ENABLE_SDL2) | ||
| 232 | target_sources(audio_core PRIVATE | ||
| 233 | sink/sdl2_sink.cpp | ||
| 234 | sink/sdl2_sink.h | ||
| 235 | ) | ||
| 236 | |||
| 230 | target_link_libraries(audio_core PRIVATE SDL2::SDL2) | 237 | target_link_libraries(audio_core PRIVATE SDL2::SDL2) |
| 231 | target_compile_definitions(audio_core PRIVATE HAVE_SDL2) | 238 | target_compile_definitions(audio_core PRIVATE HAVE_SDL2) |
| 232 | endif() | 239 | endif() |
diff --git a/src/input_common/CMakeLists.txt b/src/input_common/CMakeLists.txt index f24c89b04..cef2c4d52 100644 --- a/src/input_common/CMakeLists.txt +++ b/src/input_common/CMakeLists.txt | |||
| @@ -4,14 +4,10 @@ | |||
| 4 | add_library(input_common STATIC | 4 | add_library(input_common STATIC |
| 5 | drivers/camera.cpp | 5 | drivers/camera.cpp |
| 6 | drivers/camera.h | 6 | drivers/camera.h |
| 7 | drivers/gc_adapter.cpp | ||
| 8 | drivers/gc_adapter.h | ||
| 9 | drivers/keyboard.cpp | 7 | drivers/keyboard.cpp |
| 10 | drivers/keyboard.h | 8 | drivers/keyboard.h |
| 11 | drivers/mouse.cpp | 9 | drivers/mouse.cpp |
| 12 | drivers/mouse.h | 10 | drivers/mouse.h |
| 13 | drivers/sdl_driver.cpp | ||
| 14 | drivers/sdl_driver.h | ||
| 15 | drivers/tas_input.cpp | 11 | drivers/tas_input.cpp |
| 16 | drivers/tas_input.h | 12 | drivers/tas_input.h |
| 17 | drivers/touch_screen.cpp | 13 | drivers/touch_screen.cpp |
| @@ -62,8 +58,17 @@ if (ENABLE_SDL2) | |||
| 62 | target_compile_definitions(input_common PRIVATE HAVE_SDL2) | 58 | target_compile_definitions(input_common PRIVATE HAVE_SDL2) |
| 63 | endif() | 59 | endif() |
| 64 | 60 | ||
| 61 | if (ENABLE_LIBUSB) | ||
| 62 | target_sources(input_common PRIVATE | ||
| 63 | drivers/gc_adapter.cpp | ||
| 64 | drivers/gc_adapter.h | ||
| 65 | ) | ||
| 66 | target_link_libraries(input_common PRIVATE libusb::usb) | ||
| 67 | target_compile_definitions(input_common PRIVATE HAVE_LIBUSB) | ||
| 68 | endif() | ||
| 69 | |||
| 65 | create_target_directory_groups(input_common) | 70 | create_target_directory_groups(input_common) |
| 66 | target_link_libraries(input_common PUBLIC core PRIVATE common Boost::boost libusb::usb) | 71 | target_link_libraries(input_common PUBLIC core PRIVATE common Boost::boost) |
| 67 | 72 | ||
| 68 | if (YUZU_USE_PRECOMPILED_HEADERS) | 73 | if (YUZU_USE_PRECOMPILED_HEADERS) |
| 69 | target_precompile_headers(input_common PRIVATE precompiled_headers.h) | 74 | target_precompile_headers(input_common PRIVATE precompiled_headers.h) |
diff --git a/src/input_common/main.cpp b/src/input_common/main.cpp index 86deb4c7c..4dc92f482 100644 --- a/src/input_common/main.cpp +++ b/src/input_common/main.cpp | |||
| @@ -5,7 +5,6 @@ | |||
| 5 | #include "common/input.h" | 5 | #include "common/input.h" |
| 6 | #include "common/param_package.h" | 6 | #include "common/param_package.h" |
| 7 | #include "input_common/drivers/camera.h" | 7 | #include "input_common/drivers/camera.h" |
| 8 | #include "input_common/drivers/gc_adapter.h" | ||
| 9 | #include "input_common/drivers/keyboard.h" | 8 | #include "input_common/drivers/keyboard.h" |
| 10 | #include "input_common/drivers/mouse.h" | 9 | #include "input_common/drivers/mouse.h" |
| 11 | #include "input_common/drivers/tas_input.h" | 10 | #include "input_common/drivers/tas_input.h" |
| @@ -19,6 +18,10 @@ | |||
| 19 | #include "input_common/input_mapping.h" | 18 | #include "input_common/input_mapping.h" |
| 20 | #include "input_common/input_poller.h" | 19 | #include "input_common/input_poller.h" |
| 21 | #include "input_common/main.h" | 20 | #include "input_common/main.h" |
| 21 | |||
| 22 | #ifdef HAVE_LIBUSB | ||
| 23 | #include "input_common/drivers/gc_adapter.h" | ||
| 24 | #endif | ||
| 22 | #ifdef HAVE_SDL2 | 25 | #ifdef HAVE_SDL2 |
| 23 | #include "input_common/drivers/sdl_driver.h" | 26 | #include "input_common/drivers/sdl_driver.h" |
| 24 | #endif | 27 | #endif |
| @@ -45,7 +48,9 @@ struct InputSubsystem::Impl { | |||
| 45 | RegisterEngine("keyboard", keyboard); | 48 | RegisterEngine("keyboard", keyboard); |
| 46 | RegisterEngine("mouse", mouse); | 49 | RegisterEngine("mouse", mouse); |
| 47 | RegisterEngine("touch", touch_screen); | 50 | RegisterEngine("touch", touch_screen); |
| 51 | #ifdef HAVE_LIBUSB | ||
| 48 | RegisterEngine("gcpad", gcadapter); | 52 | RegisterEngine("gcpad", gcadapter); |
| 53 | #endif | ||
| 49 | RegisterEngine("cemuhookudp", udp_client); | 54 | RegisterEngine("cemuhookudp", udp_client); |
| 50 | RegisterEngine("tas", tas_input); | 55 | RegisterEngine("tas", tas_input); |
| 51 | RegisterEngine("camera", camera); | 56 | RegisterEngine("camera", camera); |
| @@ -72,7 +77,9 @@ struct InputSubsystem::Impl { | |||
| 72 | UnregisterEngine(keyboard); | 77 | UnregisterEngine(keyboard); |
| 73 | UnregisterEngine(mouse); | 78 | UnregisterEngine(mouse); |
| 74 | UnregisterEngine(touch_screen); | 79 | UnregisterEngine(touch_screen); |
| 80 | #ifdef HAVE_LIBUSB | ||
| 75 | UnregisterEngine(gcadapter); | 81 | UnregisterEngine(gcadapter); |
| 82 | #endif | ||
| 76 | UnregisterEngine(udp_client); | 83 | UnregisterEngine(udp_client); |
| 77 | UnregisterEngine(tas_input); | 84 | UnregisterEngine(tas_input); |
| 78 | UnregisterEngine(camera); | 85 | UnregisterEngine(camera); |
| @@ -95,8 +102,10 @@ struct InputSubsystem::Impl { | |||
| 95 | devices.insert(devices.end(), keyboard_devices.begin(), keyboard_devices.end()); | 102 | devices.insert(devices.end(), keyboard_devices.begin(), keyboard_devices.end()); |
| 96 | auto mouse_devices = mouse->GetInputDevices(); | 103 | auto mouse_devices = mouse->GetInputDevices(); |
| 97 | devices.insert(devices.end(), mouse_devices.begin(), mouse_devices.end()); | 104 | devices.insert(devices.end(), mouse_devices.begin(), mouse_devices.end()); |
| 105 | #ifdef HAVE_LIBUSB | ||
| 98 | auto gcadapter_devices = gcadapter->GetInputDevices(); | 106 | auto gcadapter_devices = gcadapter->GetInputDevices(); |
| 99 | devices.insert(devices.end(), gcadapter_devices.begin(), gcadapter_devices.end()); | 107 | devices.insert(devices.end(), gcadapter_devices.begin(), gcadapter_devices.end()); |
| 108 | #endif | ||
| 100 | auto udp_devices = udp_client->GetInputDevices(); | 109 | auto udp_devices = udp_client->GetInputDevices(); |
| 101 | devices.insert(devices.end(), udp_devices.begin(), udp_devices.end()); | 110 | devices.insert(devices.end(), udp_devices.begin(), udp_devices.end()); |
| 102 | #ifdef HAVE_SDL2 | 111 | #ifdef HAVE_SDL2 |
| @@ -119,9 +128,11 @@ struct InputSubsystem::Impl { | |||
| 119 | if (engine == mouse->GetEngineName()) { | 128 | if (engine == mouse->GetEngineName()) { |
| 120 | return mouse; | 129 | return mouse; |
| 121 | } | 130 | } |
| 131 | #ifdef HAVE_LIBUSB | ||
| 122 | if (engine == gcadapter->GetEngineName()) { | 132 | if (engine == gcadapter->GetEngineName()) { |
| 123 | return gcadapter; | 133 | return gcadapter; |
| 124 | } | 134 | } |
| 135 | #endif | ||
| 125 | if (engine == udp_client->GetEngineName()) { | 136 | if (engine == udp_client->GetEngineName()) { |
| 126 | return udp_client; | 137 | return udp_client; |
| 127 | } | 138 | } |
| @@ -194,9 +205,11 @@ struct InputSubsystem::Impl { | |||
| 194 | if (engine == mouse->GetEngineName()) { | 205 | if (engine == mouse->GetEngineName()) { |
| 195 | return true; | 206 | return true; |
| 196 | } | 207 | } |
| 208 | #ifdef HAVE_LIBUSB | ||
| 197 | if (engine == gcadapter->GetEngineName()) { | 209 | if (engine == gcadapter->GetEngineName()) { |
| 198 | return true; | 210 | return true; |
| 199 | } | 211 | } |
| 212 | #endif | ||
| 200 | if (engine == udp_client->GetEngineName()) { | 213 | if (engine == udp_client->GetEngineName()) { |
| 201 | return true; | 214 | return true; |
| 202 | } | 215 | } |
| @@ -217,7 +230,9 @@ struct InputSubsystem::Impl { | |||
| 217 | void BeginConfiguration() { | 230 | void BeginConfiguration() { |
| 218 | keyboard->BeginConfiguration(); | 231 | keyboard->BeginConfiguration(); |
| 219 | mouse->BeginConfiguration(); | 232 | mouse->BeginConfiguration(); |
| 233 | #ifdef HAVE_LIBUSB | ||
| 220 | gcadapter->BeginConfiguration(); | 234 | gcadapter->BeginConfiguration(); |
| 235 | #endif | ||
| 221 | udp_client->BeginConfiguration(); | 236 | udp_client->BeginConfiguration(); |
| 222 | #ifdef HAVE_SDL2 | 237 | #ifdef HAVE_SDL2 |
| 223 | sdl->BeginConfiguration(); | 238 | sdl->BeginConfiguration(); |
| @@ -227,7 +242,9 @@ struct InputSubsystem::Impl { | |||
| 227 | void EndConfiguration() { | 242 | void EndConfiguration() { |
| 228 | keyboard->EndConfiguration(); | 243 | keyboard->EndConfiguration(); |
| 229 | mouse->EndConfiguration(); | 244 | mouse->EndConfiguration(); |
| 245 | #ifdef HAVE_LIBUSB | ||
| 230 | gcadapter->EndConfiguration(); | 246 | gcadapter->EndConfiguration(); |
| 247 | #endif | ||
| 231 | udp_client->EndConfiguration(); | 248 | udp_client->EndConfiguration(); |
| 232 | #ifdef HAVE_SDL2 | 249 | #ifdef HAVE_SDL2 |
| 233 | sdl->EndConfiguration(); | 250 | sdl->EndConfiguration(); |
| @@ -248,7 +265,6 @@ struct InputSubsystem::Impl { | |||
| 248 | 265 | ||
| 249 | std::shared_ptr<Keyboard> keyboard; | 266 | std::shared_ptr<Keyboard> keyboard; |
| 250 | std::shared_ptr<Mouse> mouse; | 267 | std::shared_ptr<Mouse> mouse; |
| 251 | std::shared_ptr<GCAdapter> gcadapter; | ||
| 252 | std::shared_ptr<TouchScreen> touch_screen; | 268 | std::shared_ptr<TouchScreen> touch_screen; |
| 253 | std::shared_ptr<TasInput::Tas> tas_input; | 269 | std::shared_ptr<TasInput::Tas> tas_input; |
| 254 | std::shared_ptr<CemuhookUDP::UDPClient> udp_client; | 270 | std::shared_ptr<CemuhookUDP::UDPClient> udp_client; |
| @@ -256,6 +272,10 @@ struct InputSubsystem::Impl { | |||
| 256 | std::shared_ptr<VirtualAmiibo> virtual_amiibo; | 272 | std::shared_ptr<VirtualAmiibo> virtual_amiibo; |
| 257 | std::shared_ptr<VirtualGamepad> virtual_gamepad; | 273 | std::shared_ptr<VirtualGamepad> virtual_gamepad; |
| 258 | 274 | ||
| 275 | #ifdef HAVE_LIBUSB | ||
| 276 | std::shared_ptr<GCAdapter> gcadapter; | ||
| 277 | #endif | ||
| 278 | |||
| 259 | #ifdef HAVE_SDL2 | 279 | #ifdef HAVE_SDL2 |
| 260 | std::shared_ptr<SDLDriver> sdl; | 280 | std::shared_ptr<SDLDriver> sdl; |
| 261 | #endif | 281 | #endif |