|
|
@@ -43,6 +43,8 @@ option(YUZU_USE_BUNDLED_OPUS "Compile bundled opus" ON)
|
|
|
|
|
|
option(YUZU_TESTS "Compile tests" ON)
|
|
|
|
|
|
+option(YUZU_USE_PRECOMPILED_HEADERS "Use precompiled headers" ON)
|
|
|
+
|
|
|
CMAKE_DEPENDENT_OPTION(YUZU_CRASH_DUMPS "Compile Windows crash dump (Minidump) support" OFF "WIN32" OFF)
|
|
|
|
|
|
option(YUZU_USE_BUNDLED_VCPKG "Use vcpkg for yuzu dependencies" "${MSVC}")
|
|
|
@@ -64,6 +66,20 @@ elseif(NOT "$ENV{VCPKG_TOOLCHAIN_FILE}" STREQUAL "")
|
|
|
include("$ENV{VCPKG_TOOLCHAIN_FILE}")
|
|
|
endif()
|
|
|
|
|
|
+if (YUZU_USE_PRECOMPILED_HEADERS)
|
|
|
+ if (MSVC AND CCACHE)
|
|
|
+ # buildcache does not properly cache PCH files, leading to compilation errors.
|
|
|
+ # See https://github.com/mbitsnbites/buildcache/discussions/230
|
|
|
+ message(WARNING "buildcache does not properly support Precompiled Headers. Disabling PCH")
|
|
|
+ set(YUZU_USE_PRECOMPILED_HEADERS OFF)
|
|
|
+ endif()
|
|
|
+endif()
|
|
|
+if (YUZU_USE_PRECOMPILED_HEADERS)
|
|
|
+ message(STATUS "Using Precompiled Headers.")
|
|
|
+ set(CMAKE_PCH_INSTANTIATE_TEMPLATES ON)
|
|
|
+endif()
|
|
|
+
|
|
|
+
|
|
|
# Default to a Release build
|
|
|
get_property(IS_MULTI_CONFIG GLOBAL PROPERTY GENERATOR_IS_MULTI_CONFIG)
|
|
|
if (NOT IS_MULTI_CONFIG AND NOT CMAKE_BUILD_TYPE)
|