From 47b133c0b8364f5f79a5d44332523f2e9b9985d0 Mon Sep 17 00:00:00 2001 From: lat9nq <22451773+lat9nq@users.noreply.github.com> Date: Mon, 28 Nov 2022 22:48:49 -0500 Subject: [PATCH 1/2] CMakeLists: Bump minimum required CMake version to 3.22 --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 2d2761ec1..05bffe68e 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,7 +1,7 @@ # SPDX-FileCopyrightText: 2018 yuzu Emulator Project # SPDX-License-Identifier: GPL-2.0-or-later -cmake_minimum_required(VERSION 3.15) +cmake_minimum_required(VERSION 3.22) list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/CMakeModules") list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/externals/cmake-modules") From 0941ae0b617839a724a62c0a69914686e81f053f Mon Sep 17 00:00:00 2001 From: lat9nq <22451773+lat9nq@users.noreply.github.com> Date: Mon, 28 Nov 2022 23:20:04 -0500 Subject: [PATCH 2/2] CMake: Directly link to SDL2-static when appropriate Trying to be lazy and alias SDL2 to SDL2-static causes issues in later versions of CMake. Just use the same condition to tell which one to use. --- externals/CMakeLists.txt | 1 - src/audio_core/CMakeLists.txt | 6 +++++- src/input_common/CMakeLists.txt | 6 +++++- src/yuzu/CMakeLists.txt | 6 +++++- 4 files changed, 15 insertions(+), 4 deletions(-) diff --git a/externals/CMakeLists.txt b/externals/CMakeLists.txt index d807ef65f..9740e017c 100644 --- a/externals/CMakeLists.txt +++ b/externals/CMakeLists.txt @@ -69,7 +69,6 @@ if (YUZU_USE_EXTERNAL_SDL2) set(SDL_SHARED OFF) add_subdirectory(SDL EXCLUDE_FROM_ALL) - add_library(SDL2 ALIAS SDL2-static) endif() # ENet diff --git a/src/audio_core/CMakeLists.txt b/src/audio_core/CMakeLists.txt index 8e3a8f5a8..75416c53a 100644 --- a/src/audio_core/CMakeLists.txt +++ b/src/audio_core/CMakeLists.txt @@ -226,6 +226,10 @@ if(ENABLE_CUBEB) target_compile_definitions(audio_core PRIVATE -DHAVE_CUBEB=1) endif() if(ENABLE_SDL2) - target_link_libraries(audio_core PRIVATE SDL2) + if (YUZU_USE_EXTERNAL_SDL2) + target_link_libraries(audio_core PRIVATE SDL2-static) + else() + target_link_libraries(audio_core PRIVATE SDL2) + endif() target_compile_definitions(audio_core PRIVATE HAVE_SDL2) endif() diff --git a/src/input_common/CMakeLists.txt b/src/input_common/CMakeLists.txt index cc6f0ffc0..193127d0a 100644 --- a/src/input_common/CMakeLists.txt +++ b/src/input_common/CMakeLists.txt @@ -55,7 +55,11 @@ if (ENABLE_SDL2) drivers/sdl_driver.cpp drivers/sdl_driver.h ) - target_link_libraries(input_common PRIVATE SDL2) + if (YUZU_USE_EXTERNAL_SDL2) + target_link_libraries(input_common PRIVATE SDL2-static) + else() + target_link_libraries(input_common PRIVATE SDL2) + endif() target_compile_definitions(input_common PRIVATE HAVE_SDL2) endif() diff --git a/src/yuzu/CMakeLists.txt b/src/yuzu/CMakeLists.txt index 0aa109dd3..060de0259 100644 --- a/src/yuzu/CMakeLists.txt +++ b/src/yuzu/CMakeLists.txt @@ -387,7 +387,11 @@ if (YUZU_USE_BUNDLED_QT AND QT_VERSION VERSION_LESS 6) endif() if (ENABLE_SDL2) - target_link_libraries(yuzu PRIVATE SDL2) + if (YUZU_USE_EXTERNAL_SDL2) + target_link_libraries(yuzu PRIVATE SDL2-static) + else() + target_link_libraries(yuzu PRIVATE SDL2) + endif() target_compile_definitions(yuzu PRIVATE HAVE_SDL2) endif()