diff --git a/CMakeLists.txt b/CMakeLists.txt index f02ec661..0409563c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -2,6 +2,8 @@ cmake_minimum_required(VERSION 3.10) +cmake_policy(SET CMP0091 NEW) + # --------------------------------------------------------------------------------------- # Start spdlog project # --------------------------------------------------------------------------------------- @@ -87,6 +89,7 @@ endif() if(WIN32) option(SPDLOG_WCHAR_SUPPORT "Support wchar api" OFF) option(SPDLOG_WCHAR_FILENAMES "Support wchar filenames" OFF) + option(SPDLOG_STATIC_VCRT "Force /MT for static VC runtimes" OFF) endif() if(${CMAKE_SYSTEM_NAME} STREQUAL "Linux") option(SPDLOG_CLOCK_COARSE @@ -124,6 +127,10 @@ if(NOT SPDLOG_FMT_EXTERNAL AND NOT SPDLOG_FMT_EXTERNAL_HO) list(APPEND SPDLOG_SRCS src/fmt.cpp) endif() +if(MSVC AND SPDLOG_STATIC_VCRT) + set(CMAKE_MSVC_RUNTIME_LIBRARY "MultiThreaded$<$:Debug>") +endif() + if(SPDLOG_BUILD_SHARED OR BUILD_SHARED_LIBS) if(WIN32) configure_file(${CMAKE_CURRENT_SOURCE_DIR}/cmake/version.rc.in ${CMAKE_CURRENT_BINARY_DIR}/version.rc @ONLY)