set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD_REQUIRED TRUE) if (OPTIMIZE_LINK_TIME) include(CheckIPOSupported) check_ipo_supported(RESULT ipo_supported_result LANGUAGES C CXX) if (ipo_supported_result) set(CMAKE_INTERPROCEDURAL_OPTIMIZATION TRUE) message(STATUS "Using link-time optimization") else() message(FATAL_ERROR "Compiler does not support link-time optimization") endif() endif()