1
- cmake_minimum_required (VERSION 3.8.0 )
1
+ cmake_minimum_required (VERSION 3.9 )
2
2
project (openafis CXX)
3
3
4
4
set (CMAKE_CXX_STANDARD 17)
@@ -7,6 +7,13 @@ set(CMAKE_CXX_EXTENSIONS NO)
7
7
8
8
list (APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR} /cmake/Modules" )
9
9
list (APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR} /cmake" )
10
+
11
+ include (CheckIPOSupported)
12
+ check_ipo_supported(RESULT result)
13
+ if (result)
14
+ set (CMAKE_INTERPROCEDURAL_OPTIMIZATION ON )
15
+ endif ()
16
+
10
17
include (CheckCXXCompilerFlag)
11
18
include (AddCXXCompilerFlag)
12
19
@@ -20,7 +27,6 @@ if (MSVC)
20
27
add_cxx_compiler_flag(/Ot)
21
28
add_cxx_compiler_flag(/Oy)
22
29
add_cxx_compiler_flag(/GT)
23
- add_cxx_compiler_flag(/GL)
24
30
add_cxx_compiler_flag(/Zc:__cplusplus)
25
31
26
32
if (NOT "${CMAKE_CXX_COMPILER_ID} " MATCHES "Clang" )
@@ -38,11 +44,6 @@ if (MSVC)
38
44
add_definitions (-D_HAS_EXCEPTIONS=0)
39
45
add_definitions (-D_ITERATOR_DEBUG_LEVEL=0)
40
46
add_definitions (-D_CRT_SECURE_NO_WARNINGS)
41
-
42
- if (NOT "${CMAKE_CXX_COMPILER_ID} " MATCHES "Clang" )
43
- set (CMAKE_STATIC_LINKER_FLAGS_RELEASE "${CMAKE_STATIC_LINKER_FLAGS_RELEASE} /LTCG" )
44
- set (CMAKE_EXE_LINKER_FLAGS_RELEASE "${CMAKE_EXE_LINKER_FLAGS_RELEASE} /LTCG" )
45
- endif ()
46
47
else ()
47
48
add_cxx_compiler_flag(-O3)
48
49
add_cxx_compiler_flag(-march=native)
58
59
add_cxx_compiler_flag(-Wno-deprecated)
59
60
add_cxx_compiler_flag(-fno-exceptions)
60
61
add_cxx_compiler_flag(-Wthread-safety)
61
- add_cxx_compiler_flag(-flto)
62
-
62
+
63
63
if ("${CMAKE_CXX_COMPILER_ID} " STREQUAL "GNU" )
64
64
find_program (GCC_AR gcc-ar)
65
65
if (GCC_AR)
0 commit comments