11# 3.5 is actually available almost everywhere.
22# 3.30 as the upper policy limit avoids CMake deprecation warnings.
3- cmake_minimum_required (VERSION 3.5...3.30)
4-
5- # enable MSVC_RUNTIME_LIBRARY target property
6- # see https://cmake.org/cmake/help/latest/policy/CMP0091.html
7- if (POLICY CMP0091)
8- cmake_policy (SET CMP0091 NEW)
9- endif ()
3+ cmake_minimum_required (VERSION 3.15...4.0)
104
115project (YAML_CPP VERSION 0.8.0 LANGUAGES CXX)
126
@@ -63,10 +57,8 @@ endif()
6357
6458set (contrib-pattern "src/contrib/*.cpp" )
6559set (src-pattern "src/*.cpp" )
66- if (CMAKE_VERSION VERSION_GREATER 3.12)
67- list (INSERT contrib-pattern 0 CONFIGURE_DEPENDS)
68- list (INSERT src-pattern 0 CONFIGURE_DEPENDS)
69- endif ()
60+ list (INSERT contrib-pattern 0 CONFIGURE_DEPENDS)
61+ list (INSERT src-pattern 0 CONFIGURE_DEPENDS)
7062
7163file (GLOB yaml-cpp-contrib-sources ${contrib-pattern})
7264file (GLOB yaml-cpp-sources ${src-pattern})
@@ -79,8 +71,6 @@ set(msvc-rt-mt-static $<STREQUAL:${msvc-rt},MultiThreaded>)
7971set (msvc -rt-mtd-dll $<STREQUAL :${msvc -rt},MultiThreadedDebugDLL>)
8072set (msvc -rt-mt-dll $<STREQUAL :${msvc -rt},MultiThreadedDLL>)
8173
82- set (backport-msvc -runtime $<VERSION_LESS :${CMAKE_VERSION} ,3.15>)
83-
8474add_library (yaml-cpp ${yaml-cpp-type } "" )
8575add_library (yaml-cpp::yaml-cpp ALIAS yaml-cpp)
8676
@@ -117,11 +107,6 @@ endif()
117107
118108target_compile_options (yaml-cpp
119109 PRIVATE
120- $<$<AND :${backport-msvc -runtime},${msvc -rt-mtd-static }>:-MTd>
121- $<$<AND :${backport-msvc -runtime},${msvc -rt-mt-static }>:-MT>
122- $<$<AND :${backport-msvc -runtime},${msvc -rt-mtd-dll}>:-MDd>
123- $<$<AND :${backport-msvc -runtime},${msvc -rt-mt-dll}>:-MD >
124-
125110 # /wd4127 = disable warning C4127 "conditional expression is constant"
126111 # http://msdn.microsoft.com/en-us/library/6t66728h.aspx
127112 # /wd4355 = disable warning C4355 "'this' : used in base member initializer list
0 commit comments