1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
|
https://bugs.gentoo.org/951679
https://github.com/google/cctz/commit/f62d7b7
From f62d7b778289959fa117c13ce190387690400611 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Christoph=20Gr=C3=BCninger?= <foss@grueninger.de>
Date: Mon, 8 Jul 2024 16:07:59 +0200
Subject: [PATCH] [cmake] Require CMake 3.16 (#292)
Follow Google's OSS policy.
Remove other code specific for CMake < 3.16
---
CMakeLists.txt | 28 +++++++---------------------
1 file changed, 7 insertions(+), 21 deletions(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index c0f2c58..0bf696b 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,8 +1,6 @@
-cmake_minimum_required(VERSION 2.8.12)
-
-if (POLICY CMP0025)
- cmake_policy(SET CMP0025 NEW)
-endif()
+# https://github.com/google/oss-policies-info/blob/main/foundational-cxx-support-matrix.md
+# As of 2024-07-01, CMake 3.16 is the minimum supported version.
+cmake_minimum_required(VERSION 3.16)
project(cctz)
@@ -51,20 +49,12 @@ if (BUILD_TESTING)
)
endif()
-# Starting from CMake >= 3.1, if a specific standard is required,
+# If a specific standard is required,
# it can be set from the command line with:
-# cmake -DCMAKE_CXX_STANDARD=[11|14|17]
+# cmake -DCMAKE_CXX_STANDARD=[11|14|17|20|23]
function(cctz_target_set_cxx_standard target)
set(cxx_standard 11)
- if (CMAKE_VERSION VERSION_LESS "3.1")
- if (CMAKE_CXX_COMPILER_ID MATCHES "GNU|Clang")
- target_compile_options(${target} PRIVATE -std=c++${cxx_standard})
- endif()
- elseif (CMAKE_VERSION VERSION_LESS "3.8")
- set_property(TARGET ${target} PROPERTY CXX_STANDARD ${cxx_standard})
- else()
- target_compile_features(${target} PUBLIC cxx_std_${cxx_standard})
- endif()
+ target_compile_features(${target} PUBLIC cxx_std_${cxx_standard})
endfunction()
if(APPLE)
@@ -191,10 +181,6 @@ install(FILES cmake/${PROJECT_NAME}-config.cmake
DESTINATION ${CMAKE_INSTALL_CONFIGDIR}
)
-if (CMAKE_VERSION VERSION_LESS "3.8")
- set(quiet_on_empty "")
-else()
- set(quiet_on_empty QUIET_ON_EMPTY)
-endif()
+set(quiet_on_empty QUIET_ON_EMPTY)
feature_summary(WHAT ALL FATAL_ON_MISSING_REQUIRED_PACKAGES ${quiet_on_empty})
|