diff --git a/.ci/windows/build.sh b/.ci/windows/build.sh index d554e00e1b..c0e46d219f 100644 --- a/.ci/windows/build.sh +++ b/.ci/windows/build.sh @@ -24,7 +24,7 @@ cmake .. -G Ninja \ -DCMAKE_BUILD_TYPE="${BUILD_TYPE:-Release}" \ -DENABLE_QT_TRANSLATION=ON \ -DUSE_DISCORD_PRESENCE=ON \ - -DYUZU_USE_BUNDLED_SDL2=ON \ + -DYUZU_USE_BUNDLED_SDL3=ON \ -DBUILD_TESTING=OFF \ -DYUZU_TESTS=OFF \ -DDYNARMIC_TESTS=OFF \ diff --git a/docs/Caveats.md b/docs/Caveats.md index 7bc2428bab..b60cfd4ea9 100644 --- a/docs/Caveats.md +++ b/docs/Caveats.md @@ -38,7 +38,7 @@ export LIBGL_ALWAYS_SOFTWARE=1 ``` - Modify the generated ffmpeg.make (in build dir) if using multiple threads (base system `make` doesn't use `-j4`, so change for `gmake`). -- If using OpenIndiana, due to a bug in SDL2's CMake configuration, audio driver defaults to SunOS ``, which does not exist on OpenIndiana. Using external or bundled SDL2 may solve this. +- If using OpenIndiana, due to a bug in SDL3's CMake configuration, audio driver defaults to SunOS ``, which does not exist on OpenIndiana. Using external or bundled SDL3 may solve this. - System OpenSSL generally does not work. Instead, use `-DYUZU_USE_BUNDLED_OPENSSL=ON` to use a bundled static OpenSSL, or build a system dependency from source. ## OpenBSD diff --git a/docs/Deps.md b/docs/Deps.md index b8a1be66d2..28a2cef57f 100644 --- a/docs/Deps.md +++ b/docs/Deps.md @@ -32,7 +32,7 @@ If you are on Windows and NOT building with MSYS2, you may go [back home](Build. The following are handled by Eden's externals: * [FFmpeg](https://ffmpeg.org/) (should use `-DYUZU_USE_EXTERNAL_FFMPEG=ON`) -* [SDL2](https://www.libsdl.org/download-2.0.php) 2.0.18+ (should use `-DYUZU_USE_EXTERNAL_SDL2=ON` OR `-DYUZU_USE_BUNDLED_SDL2=ON` to reduce compile time) +* [SDL3](https://github.com/libsdl-org/SDL/releases) 2.0.18+ (should use `-DYUZU_USE_EXTERNAL_SDL3=ON` OR `-DYUZU_USE_BUNDLED_SDL3=ON` to reduce compile time) All other dependencies will be downloaded and built by [CPM](https://github.com/cpm-cmake/CPM.cmake/) if `YUZU_USE_CPM` is on, but will always use system dependencies if available (UNIX-like only): @@ -117,7 +117,7 @@ sudo dnf install autoconf ccache cmake fmt-devel gcc{,-c++} glslang hidapi-devel ``` * Force system libraries via CMake arguments: - * SDL2: `-DYUZU_USE_BUNDLED_SDL2=OFF -DYUZU_USE_EXTERNAL_SDL2=OFF` + * SDL3: `-DYUZU_USE_BUNDLED_SDL3=OFF -DYUZU_USE_EXTERNAL_SDL3=OFF` * FFmpeg: `-DYUZU_USE_EXTERNAL_FFMPEG=OFF` * [RPM Fusion](https://rpmfusion.org/) is required for `ffmpeg-devel` * Fedora 32 or later is required. @@ -203,7 +203,7 @@ Then install the libraries: `sudo pkg install qt6 boost glslang libzip library/l * Open the `MSYS2 MinGW 64-bit` shell (`mingw64.exe`) * Download and install all dependencies using: - * `pacman -Syu git make mingw-w64-x86_64-SDL2 mingw-w64-x86_64-cmake mingw-w64-x86_64-python-pip mingw-w64-x86_64-qt6 mingw-w64-x86_64-toolchain autoconf libtool automake-wrapper` + * `pacman -Syu git make mingw-w64-x86_64-SDL3 mingw-w64-x86_64-cmake mingw-w64-x86_64-python-pip mingw-w64-x86_64-qt6 mingw-w64-x86_64-toolchain autoconf libtool automake-wrapper` * Add MinGW binaries to the PATH: * `echo 'PATH=/mingw64/bin:$PATH' >> ~/.bashrc` * Add VulkanSDK to the PATH: diff --git a/docs/Options.md b/docs/Options.md index dc73fecd3e..7323fdc4a3 100644 --- a/docs/Options.md +++ b/docs/Options.md @@ -40,10 +40,10 @@ Notes: * Unavailable on OpenBSD The following options are desktop only: -- `ENABLE_SDL3` (ON) Enable the SDL2 desktop, audio, and input frontend (HIGHLY RECOMMENDED!) +- `ENABLE_SDL3` (ON) Enable the SDL3 desktop, audio, and input frontend (HIGHLY RECOMMENDED!) * Unavailable on Android -- `YUZU_USE_EXTERNAL_SDL2` (ON for non-UNIX) Compiles SDL2 from source -- `YUZU_USE_BUNDLED_SDL2` (ON for MSVC) Download a prebuilt SDL2 +- `YUZU_USE_EXTERNAL_SDL3` (ON for non-UNIX) Compiles SDL3 from source +- `YUZU_USE_BUNDLED_SDL3` (ON for MSVC) Download a prebuilt SDL3 * Unavailable on OpenBSD * Only enabled if YUZU_USE_CPM and ENABLE_SDL3 are both ON - `ENABLE_LIBUSB` (ON) Enable the use of the libusb input frontend (HIGHLY RECOMMENDED) @@ -62,7 +62,7 @@ The following options are desktop only: - `YUZU_ROOM` (ON) Enable dedicated room functionality - `YUZU_ROOM_STANDALONE` (ON) Enable standalone room executable (eden-room) * Requires `YUZU_ROOM` -- `YUZU_CMD` (ON) Compile the SDL2 frontend (eden-cli) - requires SDL2 +- `YUZU_CMD` (ON) Compile the SDL3 frontend (eden-cli) - requires SDL3 - `YUZU_CRASH_DUMPS` Compile crash dump (Minidump) support" * Currently only available on Windows and Linux diff --git a/externals/gamemode/gamemode_client.h b/externals/gamemode/gamemode_client.h index b9f64fe460..5bda6d26f8 100644 --- a/externals/gamemode/gamemode_client.h +++ b/externals/gamemode/gamemode_client.h @@ -89,7 +89,7 @@ static char internal_gamemode_client_error_string[512] = { 0 }; /** * Load libgamemode dynamically to dislodge us from most dependencies. * This allows clients to link and/or use this regardless of runtime. - * See SDL2 for an example of the reasoning behind this in terms of + * See SDL3 for an example of the reasoning behind this in terms of * dynamic versioning as well. */ static volatile int internal_libgamemode_loaded = 1;