diff --git a/docs/Deps.md b/docs/Deps.md
index 928f9b4d41..b58b6ee053 100644
--- a/docs/Deps.md
+++ b/docs/Deps.md
@@ -89,7 +89,7 @@ Click on the arrows to expand.
Arch Linux
```sh
-sudo pacman -Syu --needed base-devel boost catch2 cmake enet ffmpeg fmt git glslang libzip lz4 mbedtls ninja nlohmann-json openssl opus qt6-base qt6-multimedia sdl2 zlib zstd zip unzip zydis zycore vulkan-headers vulkan-utility-libraries libusb spirv-tools spirv-headers
+sudo pacman -Syu --needed base-devel boost catch2 cmake enet ffmpeg fmt git glslang libzip lz4 mbedtls ninja nlohmann-json openssl opus qt6-base qt6-multimedia sdl3 zlib zstd zip unzip zydis zycore vulkan-headers vulkan-utility-libraries libusb spirv-tools spirv-headers
```
* Building with QT Web Engine requires `qt6-webengine` as well.
@@ -129,7 +129,7 @@ sudo dnf install autoconf ccache cmake fmt-devel gcc{,-c++} glslang hidapi-devel
Install dependencies from **[Homebrew](https://brew.sh/)**
```sh
-brew install autoconf automake boost ffmpeg fmt glslang hidapi libtool libusb lz4 ninja nlohmann-json openssl pkg-config qt@6 sdl2 speexdsp zlib zstd cmake Catch2 molten-vk vulkan-loader spirv-tools
+brew install autoconf automake boost ffmpeg fmt glslang hidapi libtool libusb lz4 ninja nlohmann-json openssl pkg-config qt@6 sdl3 speexdsp zlib zstd cmake Catch2 molten-vk vulkan-loader spirv-tools
```
If you are compiling on Intel Mac, or are using a Rosetta Homebrew installation, you must replace all references of `/opt/homebrew` with `/usr/local`.
@@ -146,7 +146,7 @@ brew install molten-vk vulkan-loader
```
devel/cmake
-devel/sdl20
+devel/sdl30
devel/boost-libs
devel/catch2
devel/libfmt
@@ -180,7 +180,7 @@ If using FreeBSD 12 or prior, use `devel/pkg-config` instead.
```sh
pkg_add -u
-pkg_add cmake nasm git boost unzip--iconv autoconf-2.72p0 bash ffmpeg glslang gmake llvm-19.1.7p3 qt6 jq fmt nlohmann-json enet boost vulkan-utility-libraries vulkan-headers spirv-headers spirv-tools catch2 sdl2 libusb1.1.0.27
+pkg_add cmake nasm git boost unzip--iconv autoconf-2.72p0 bash ffmpeg glslang gmake llvm-19.1.7p3 qt6 jq fmt nlohmann-json enet boost vulkan-utility-libraries vulkan-headers spirv-headers spirv-tools catch2 sdl3 libusb1.1.0.27
```
@@ -194,7 +194,7 @@ Run the usual update + install of essential toolings: `sudo pkg update && sudo p
- **gcc**: `sudo pkg install developer/gcc-14`.
- **clang**: Version 20 is broken, use `sudo pkg install developer/clang-19`.
-Then install the libraries: `sudo pkg install qt6 boost glslang libzip library/lz4 nlohmann-json openssl opus sdl2 zlib compress/zstd unzip pkg-config nasm autoconf mesa library/libdrm header-drm developer/fmt`.
+Then install the libraries: `sudo pkg install qt6 boost glslang libzip library/lz4 nlohmann-json openssl opus sdl3 zlib compress/zstd unzip pkg-config nasm autoconf mesa library/libdrm header-drm developer/fmt`.
diff --git a/src/audio_core/CMakeLists.txt b/src/audio_core/CMakeLists.txt
index 77ac05c7a2..23ffe7f053 100644
--- a/src/audio_core/CMakeLists.txt
+++ b/src/audio_core/CMakeLists.txt
@@ -249,8 +249,8 @@ endif()
if (ENABLE_SDL3)
target_sources(audio_core PRIVATE
- sink/sdl2_sink.cpp
- sink/sdl2_sink.h
+ sink/sdl3_sink.cpp
+ sink/sdl3_sink.h
)
target_link_libraries(audio_core PRIVATE SDL3::SDL3)
diff --git a/src/audio_core/sink/sdl2_sink.cpp b/src/audio_core/sink/sdl3_sink.cpp
similarity index 99%
rename from src/audio_core/sink/sdl2_sink.cpp
rename to src/audio_core/sink/sdl3_sink.cpp
index 2d07a35c43..563fe0f0ce 100644
--- a/src/audio_core/sink/sdl2_sink.cpp
+++ b/src/audio_core/sink/sdl3_sink.cpp
@@ -11,7 +11,7 @@
#include
#include "audio_core/common/common.h"
-#include "audio_core/sink/sdl2_sink.h"
+#include "audio_core/sink/sdl3_sink.h"
#include "audio_core/sink/sink_stream.h"
#include "common/logging/log.h"
#include "core/core.h"
diff --git a/src/audio_core/sink/sdl2_sink.h b/src/audio_core/sink/sdl3_sink.h
similarity index 100%
rename from src/audio_core/sink/sdl2_sink.h
rename to src/audio_core/sink/sdl3_sink.h
diff --git a/src/audio_core/sink/sink_details.cpp b/src/audio_core/sink/sink_details.cpp
index 6076ed9eb0..3c2b3bf9c6 100644
--- a/src/audio_core/sink/sink_details.cpp
+++ b/src/audio_core/sink/sink_details.cpp
@@ -17,7 +17,7 @@
#include "audio_core/sink/cubeb_sink.h"
#endif
#ifdef HAVE_SDL3
-#include "audio_core/sink/sdl2_sink.h"
+#include "audio_core/sink/sdl3_sink.h"
#endif
#include "audio_core/sink/null_sink.h"
#include "common/logging/log.h"
@@ -73,7 +73,7 @@ constexpr SinkDetails sink_details[] = {
#endif
#ifdef HAVE_SDL3
SinkDetails{
- Settings::AudioEngine::Sdl2,
+ Settings::AudioEngine::Sdl3,
[](std::string_view device_id) -> std::unique_ptr {
return std::make_unique(device_id);
},
@@ -118,7 +118,7 @@ const SinkDetails& GetOutputSinkDetails(Settings::AudioEngine sink_id) {
#if defined(HAVE_CUBEB) && defined(HAVE_SDL3)
iter = find_backend(Settings::AudioEngine::Cubeb);
if (iter->latency() > TargetSampleCount * 3) {
- iter = find_backend(Settings::AudioEngine::Sdl2);
+ iter = find_backend(Settings::AudioEngine::Sdl3);
}
#else
iter = std::begin(sink_details);
diff --git a/src/common/settings_enums.h b/src/common/settings_enums.h
index 0e5a08d845..89fc83299c 100644
--- a/src/common/settings_enums.h
+++ b/src/common/settings_enums.h
@@ -92,11 +92,11 @@ struct EnumMetadata {
// AudioEngine must be specified discretely due to having existing but slightly different
// canonicalizations
// TODO (lat9nq): Remove explicit definition of AudioEngine/sink_id
-enum class AudioEngine : u32 { Auto, Cubeb, Sdl2, Null, Oboe, };
+enum class AudioEngine : u32 { Auto, Cubeb, Sdl3, Null, Oboe, };
template<>
inline std::vector> EnumMetadata::Canonicalizations() {
return {
- {"auto", AudioEngine::Auto}, {"cubeb", AudioEngine::Cubeb}, {"sdl2", AudioEngine::Sdl2},
+ {"auto", AudioEngine::Auto}, {"cubeb", AudioEngine::Cubeb}, {"sdl3", AudioEngine::Sdl3},
{"null", AudioEngine::Null}, {"oboe", AudioEngine::Oboe},
};
}
diff --git a/src/frontend_common/config.cpp b/src/frontend_common/config.cpp
index fa1383436e..a0b2af5c8c 100644
--- a/src/frontend_common/config.cpp
+++ b/src/frontend_common/config.cpp
@@ -51,7 +51,7 @@ void Config::Initialize(const std::string& config_name) {
void Config::Initialize(const std::optional config_path) {
const std::filesystem::path default_sdl_config_path =
- FS::GetEdenPath(FS::EdenPath::ConfigDir) / "sdl2-config.ini";
+ FS::GetEdenPath(FS::EdenPath::ConfigDir) / "sdl3-config.ini";
config_loc = config_path.value_or(FS::PathToUTF8String(default_sdl_config_path));
void(FS::CreateParentDir(config_loc));
SetUpIni();
diff --git a/src/yuzu_cmd/CMakeLists.txt b/src/yuzu_cmd/CMakeLists.txt
index 47e0f7e5e1..f62f4b49e3 100644
--- a/src/yuzu_cmd/CMakeLists.txt
+++ b/src/yuzu_cmd/CMakeLists.txt
@@ -16,14 +16,14 @@ function(create_resource file output filename)
endfunction()
add_executable(yuzu-cmd
- emu_window/emu_window_sdl2.cpp
- emu_window/emu_window_sdl2.h
- emu_window/emu_window_sdl2_gl.cpp
- emu_window/emu_window_sdl2_gl.h
- emu_window/emu_window_sdl2_null.cpp
- emu_window/emu_window_sdl2_null.h
- emu_window/emu_window_sdl2_vk.cpp
- emu_window/emu_window_sdl2_vk.h
+ emu_window/emu_window_sdl3.cpp
+ emu_window/emu_window_sdl3.h
+ emu_window/emu_window_sdl3_gl.cpp
+ emu_window/emu_window_sdl3_gl.h
+ emu_window/emu_window_sdl3_null.cpp
+ emu_window/emu_window_sdl3_null.h
+ emu_window/emu_window_sdl3_vk.cpp
+ emu_window/emu_window_sdl3_vk.h
precompiled_headers.h
sdl_config.cpp
sdl_config.h
diff --git a/src/yuzu_cmd/emu_window/emu_window_sdl2.cpp b/src/yuzu_cmd/emu_window/emu_window_sdl3.cpp
similarity index 99%
rename from src/yuzu_cmd/emu_window/emu_window_sdl2.cpp
rename to src/yuzu_cmd/emu_window/emu_window_sdl3.cpp
index 38754fe7f0..5988c130c0 100644
--- a/src/yuzu_cmd/emu_window/emu_window_sdl2.cpp
+++ b/src/yuzu_cmd/emu_window/emu_window_sdl3.cpp
@@ -16,7 +16,7 @@
#include "input_common/drivers/mouse.h"
#include "input_common/drivers/touch_screen.h"
#include "input_common/main.h"
-#include "yuzu_cmd/emu_window/emu_window_sdl2.h"
+#include "yuzu_cmd/emu_window/emu_window_sdl3.h"
#include "yuzu_cmd/yuzu_icon.h"
EmuWindow_SDL3::EmuWindow_SDL3(InputCommon::InputSubsystem* input_subsystem_, Core::System& system_)
diff --git a/src/yuzu_cmd/emu_window/emu_window_sdl2.h b/src/yuzu_cmd/emu_window/emu_window_sdl3.h
similarity index 100%
rename from src/yuzu_cmd/emu_window/emu_window_sdl2.h
rename to src/yuzu_cmd/emu_window/emu_window_sdl3.h
diff --git a/src/yuzu_cmd/emu_window/emu_window_sdl2_gl.cpp b/src/yuzu_cmd/emu_window/emu_window_sdl3_gl.cpp
similarity index 98%
rename from src/yuzu_cmd/emu_window/emu_window_sdl2_gl.cpp
rename to src/yuzu_cmd/emu_window/emu_window_sdl3_gl.cpp
index 4e00fa91a8..6eb9c1445c 100644
--- a/src/yuzu_cmd/emu_window/emu_window_sdl2_gl.cpp
+++ b/src/yuzu_cmd/emu_window/emu_window_sdl3_gl.cpp
@@ -18,7 +18,7 @@
#include "core/core.h"
#include "input_common/main.h"
#include "video_core/renderer_base.h"
-#include "yuzu_cmd/emu_window/emu_window_sdl2_gl.h"
+#include "yuzu_cmd/emu_window/emu_window_sdl3_gl.h"
class SDLGLContext : public Core::Frontend::GraphicsContext {
public:
diff --git a/src/yuzu_cmd/emu_window/emu_window_sdl2_gl.h b/src/yuzu_cmd/emu_window/emu_window_sdl3_gl.h
similarity index 95%
rename from src/yuzu_cmd/emu_window/emu_window_sdl2_gl.h
rename to src/yuzu_cmd/emu_window/emu_window_sdl3_gl.h
index 345ee17760..5b664d5314 100644
--- a/src/yuzu_cmd/emu_window/emu_window_sdl2_gl.h
+++ b/src/yuzu_cmd/emu_window/emu_window_sdl3_gl.h
@@ -6,7 +6,7 @@
#include
#include
#include "core/frontend/emu_window.h"
-#include "yuzu_cmd/emu_window/emu_window_sdl2.h"
+#include "yuzu_cmd/emu_window/emu_window_sdl3.h"
namespace Core {
class System;
diff --git a/src/yuzu_cmd/emu_window/emu_window_sdl2_null.cpp b/src/yuzu_cmd/emu_window/emu_window_sdl3_null.cpp
similarity index 96%
rename from src/yuzu_cmd/emu_window/emu_window_sdl2_null.cpp
rename to src/yuzu_cmd/emu_window/emu_window_sdl3_null.cpp
index 36f61bd6f1..0704862061 100644
--- a/src/yuzu_cmd/emu_window/emu_window_sdl2_null.cpp
+++ b/src/yuzu_cmd/emu_window/emu_window_sdl3_null.cpp
@@ -10,7 +10,7 @@
#include "common/logging/log.h"
#include "common/scm_rev.h"
#include "video_core/renderer_null/renderer_null.h"
-#include "yuzu_cmd/emu_window/emu_window_sdl2_null.h"
+#include "yuzu_cmd/emu_window/emu_window_sdl3_null.h"
#ifdef YUZU_USE_EXTERNAL_SDL3
// Include this before SDL.h to prevent the external from including a dummy
diff --git a/src/yuzu_cmd/emu_window/emu_window_sdl2_null.h b/src/yuzu_cmd/emu_window/emu_window_sdl3_null.h
similarity index 92%
rename from src/yuzu_cmd/emu_window/emu_window_sdl2_null.h
rename to src/yuzu_cmd/emu_window/emu_window_sdl3_null.h
index f194d137ae..6f43cc7997 100644
--- a/src/yuzu_cmd/emu_window/emu_window_sdl2_null.h
+++ b/src/yuzu_cmd/emu_window/emu_window_sdl3_null.h
@@ -6,7 +6,7 @@
#include
#include "core/frontend/emu_window.h"
-#include "yuzu_cmd/emu_window/emu_window_sdl2.h"
+#include "yuzu_cmd/emu_window/emu_window_sdl3.h"
namespace Core {
class System;
diff --git a/src/yuzu_cmd/emu_window/emu_window_sdl2_vk.cpp b/src/yuzu_cmd/emu_window/emu_window_sdl3_vk.cpp
similarity index 98%
rename from src/yuzu_cmd/emu_window/emu_window_sdl2_vk.cpp
rename to src/yuzu_cmd/emu_window/emu_window_sdl3_vk.cpp
index ee43f130ce..dada5d308e 100644
--- a/src/yuzu_cmd/emu_window/emu_window_sdl2_vk.cpp
+++ b/src/yuzu_cmd/emu_window/emu_window_sdl3_vk.cpp
@@ -9,7 +9,7 @@
#include "common/logging/log.h"
#include "common/scm_rev.h"
-#include "yuzu_cmd/emu_window/emu_window_sdl2_vk.h"
+#include "yuzu_cmd/emu_window/emu_window_sdl3_vk.h"
#include
diff --git a/src/yuzu_cmd/emu_window/emu_window_sdl2_vk.h b/src/yuzu_cmd/emu_window/emu_window_sdl3_vk.h
similarity index 92%
rename from src/yuzu_cmd/emu_window/emu_window_sdl2_vk.h
rename to src/yuzu_cmd/emu_window/emu_window_sdl3_vk.h
index 00cc406943..df6fc391ad 100644
--- a/src/yuzu_cmd/emu_window/emu_window_sdl2_vk.h
+++ b/src/yuzu_cmd/emu_window/emu_window_sdl3_vk.h
@@ -6,7 +6,7 @@
#include
#include "core/frontend/emu_window.h"
-#include "yuzu_cmd/emu_window/emu_window_sdl2.h"
+#include "yuzu_cmd/emu_window/emu_window_sdl3.h"
namespace Core {
class System;
diff --git a/src/yuzu_cmd/yuzu.cpp b/src/yuzu_cmd/yuzu.cpp
index 96689c49f6..68c1edeaed 100644
--- a/src/yuzu_cmd/yuzu.cpp
+++ b/src/yuzu_cmd/yuzu.cpp
@@ -34,10 +34,10 @@
#include "network/network.h"
#include "sdl_config.h"
#include "video_core/renderer_base.h"
-#include "yuzu_cmd/emu_window/emu_window_sdl2.h"
-#include "yuzu_cmd/emu_window/emu_window_sdl2_gl.h"
-#include "yuzu_cmd/emu_window/emu_window_sdl2_null.h"
-#include "yuzu_cmd/emu_window/emu_window_sdl2_vk.h"
+#include "yuzu_cmd/emu_window/emu_window_sdl3.h"
+#include "yuzu_cmd/emu_window/emu_window_sdl3_gl.h"
+#include "yuzu_cmd/emu_window/emu_window_sdl3_null.h"
+#include "yuzu_cmd/emu_window/emu_window_sdl3_vk.h"
#ifdef _WIN32
// windows.h needs to be included before shellapi.h