mirror of
https://github.com/cuberite/cuberite.git
synced 2025-01-05 10:27:10 +08:00
Updated LTO Check to new standard. (#5476)
The due to LTO the Release build didn't link. The official cmake page suggest it to do it like this https://cmake.org/cmake/help/latest/module/CheckIPOSupported.html
This commit is contained in:
parent
d9aed92fb4
commit
a4668c000c
@ -33,13 +33,6 @@ set(CMAKE_CXX_STANDARD 17)
|
||||
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||
set(CMAKE_CXX_EXTENSIONS OFF)
|
||||
|
||||
# The need for speed (in Release):
|
||||
if(WHOLE_PROGRAM_OPTIMISATION)
|
||||
include(CheckIPOSupported)
|
||||
check_ipo_supported(RESULT IPO_SUPPORTED)
|
||||
set(CMAKE_INTERPROCEDURAL_OPTIMIZATION_RELEASE ${IPO_SUPPORTED})
|
||||
endif()
|
||||
|
||||
# Static CRT:
|
||||
set(CMAKE_MSVC_RUNTIME_LIBRARY "MultiThreaded$<$<CONFIG:Debug>:Debug>")
|
||||
|
||||
@ -99,6 +92,17 @@ if(SELF_TEST)
|
||||
add_subdirectory(tests)
|
||||
endif()
|
||||
|
||||
# The need for speed (in Release):
|
||||
if(WHOLE_PROGRAM_OPTIMISATION)
|
||||
include(CheckIPOSupported)
|
||||
check_ipo_supported(RESULT IPO_SUPPORTED OUTPUT IPO_CHECK_OUTPUT)
|
||||
if(IPO_SUPPORTED)
|
||||
set_property(TARGET ${CMAKE_PROJECT_NAME} PROPERTY INTERPROCEDURAL_OPTIMIZATION TRUE)
|
||||
else()
|
||||
message(WARNING "IPO is not supported: ${IPO_CHECK_OUTPUT}")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
emit_fixups()
|
||||
group_sources()
|
||||
enable_bindings_generation()
|
||||
|
Loading…
Reference in New Issue
Block a user