summaryrefslogtreecommitdiff
path: root/externals/CMakeLists.txt
diff options
context:
space:
mode:
authorGravatar Alexandre Bouvier2022-12-31 14:31:17 +0100
committerGravatar Alexandre Bouvier2023-01-02 02:43:38 +0100
commit306c791e67ca6c0f991490d6dd4d57b469f69677 (patch)
tree9b47b96bfb64165653f314b9248514026db81e96 /externals/CMakeLists.txt
parentMerge pull request #9538 from merryhime/char-concat (diff)
downloadyuzu-306c791e67ca6c0f991490d6dd4d57b469f69677.tar.gz
yuzu-306c791e67ca6c0f991490d6dd4d57b469f69677.tar.xz
yuzu-306c791e67ca6c0f991490d6dd4d57b469f69677.zip
cmake: allow options shadowing with normal variables
Diffstat (limited to 'externals/CMakeLists.txt')
-rw-r--r--externals/CMakeLists.txt17
1 files changed, 10 insertions, 7 deletions
diff --git a/externals/CMakeLists.txt b/externals/CMakeLists.txt
index 1b9ae0009..54e3d7c6d 100644
--- a/externals/CMakeLists.txt
+++ b/externals/CMakeLists.txt
@@ -1,6 +1,10 @@
1# SPDX-FileCopyrightText: 2016 Citra Emulator Project 1# SPDX-FileCopyrightText: 2016 Citra Emulator Project
2# SPDX-License-Identifier: GPL-2.0-or-later 2# SPDX-License-Identifier: GPL-2.0-or-later
3 3
4# Dynarmic has cmake_minimum_required(3.12) and we may want to override
5# some of its variables, which is only possible in 3.13+
6set(CMAKE_POLICY_DEFAULT_CMP0077 NEW)
7
4list(APPEND CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/CMakeModules") 8list(APPEND CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/CMakeModules")
5list(APPEND CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/externals/find-modules") 9list(APPEND CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/externals/find-modules")
6include(DownloadExternals) 10include(DownloadExternals)
@@ -12,8 +16,7 @@ endif()
12 16
13# Dynarmic 17# Dynarmic
14if ((ARCHITECTURE_x86_64 OR ARCHITECTURE_arm64) AND NOT TARGET dynarmic::dynarmic) 18if ((ARCHITECTURE_x86_64 OR ARCHITECTURE_arm64) AND NOT TARGET dynarmic::dynarmic)
15 set(DYNARMIC_NO_BUNDLED_FMT ON) 19 set(DYNARMIC_IGNORE_ASSERTS ON)
16 set(DYNARMIC_IGNORE_ASSERTS ON CACHE BOOL "" FORCE)
17 add_subdirectory(dynarmic EXCLUDE_FROM_ALL) 20 add_subdirectory(dynarmic EXCLUDE_FROM_ALL)
18 add_library(dynarmic::dynarmic ALIAS dynarmic) 21 add_library(dynarmic::dynarmic ALIAS dynarmic)
19endif() 22endif()
@@ -60,10 +63,10 @@ if (YUZU_USE_EXTERNAL_SDL2)
60 Locale Power Render) 63 Locale Power Render)
61 foreach(_SUB ${SDL_UNUSED_SUBSYSTEMS}) 64 foreach(_SUB ${SDL_UNUSED_SUBSYSTEMS})
62 string(TOUPPER ${_SUB} _OPT) 65 string(TOUPPER ${_SUB} _OPT)
63 option(SDL_${_OPT} "" OFF) 66 set(SDL_${_OPT} OFF)
64 endforeach() 67 endforeach()
65 68
66 option(HIDAPI "" ON) 69 set(HIDAPI ON)
67 endif() 70 endif()
68 set(SDL_STATIC ON) 71 set(SDL_STATIC ON)
69 set(SDL_SHARED OFF) 72 set(SDL_SHARED OFF)
@@ -83,7 +86,7 @@ endif()
83 86
84# Cubeb 87# Cubeb
85if (ENABLE_CUBEB AND NOT TARGET cubeb::cubeb) 88if (ENABLE_CUBEB AND NOT TARGET cubeb::cubeb)
86 set(BUILD_TESTS OFF CACHE BOOL "") 89 set(BUILD_TESTS OFF)
87 add_subdirectory(cubeb EXCLUDE_FROM_ALL) 90 add_subdirectory(cubeb EXCLUDE_FROM_ALL)
88 add_library(cubeb::cubeb ALIAS cubeb) 91 add_library(cubeb::cubeb ALIAS cubeb)
89endif() 92endif()
@@ -98,6 +101,7 @@ endif()
98# Sirit 101# Sirit
99add_subdirectory(sirit EXCLUDE_FROM_ALL) 102add_subdirectory(sirit EXCLUDE_FROM_ALL)
100 103
104# httplib
101if (ENABLE_WEB_SERVICE AND NOT TARGET httplib::httplib) 105if (ENABLE_WEB_SERVICE AND NOT TARGET httplib::httplib)
102 if (NOT WIN32) 106 if (NOT WIN32)
103 find_package(OpenSSL 1.1) 107 find_package(OpenSSL 1.1)
@@ -108,7 +112,7 @@ if (ENABLE_WEB_SERVICE AND NOT TARGET httplib::httplib)
108 112
109 if (WIN32 OR NOT OPENSSL_FOUND) 113 if (WIN32 OR NOT OPENSSL_FOUND)
110 # LibreSSL 114 # LibreSSL
111 set(LIBRESSL_SKIP_INSTALL ON CACHE BOOL "") 115 set(LIBRESSL_SKIP_INSTALL ON)
112 set(OPENSSLDIR "/etc/ssl/") 116 set(OPENSSLDIR "/etc/ssl/")
113 add_subdirectory(libressl EXCLUDE_FROM_ALL) 117 add_subdirectory(libressl EXCLUDE_FROM_ALL)
114 target_include_directories(ssl INTERFACE ./libressl/include) 118 target_include_directories(ssl INTERFACE ./libressl/include)
@@ -118,7 +122,6 @@ if (ENABLE_WEB_SERVICE AND NOT TARGET httplib::httplib)
118 DEFINITION OPENSSL_LIBS) 122 DEFINITION OPENSSL_LIBS)
119 endif() 123 endif()
120 124
121 # httplib
122 add_library(httplib INTERFACE) 125 add_library(httplib INTERFACE)
123 target_include_directories(httplib INTERFACE ./cpp-httplib) 126 target_include_directories(httplib INTERFACE ./cpp-httplib)
124 target_compile_definitions(httplib INTERFACE -DCPPHTTPLIB_OPENSSL_SUPPORT) 127 target_compile_definitions(httplib INTERFACE -DCPPHTTPLIB_OPENSSL_SUPPORT)