/
niceSOFT
/
cmake
Обзор
Документация
Войти
/
niceSOFT
/
cmake
Код
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
Help/guide/tutorial/Step11/TutorialProject/CMakeLists.txt
60 строк
1 KB
Vito Gamberini
Tutorial: Update IPO example in Step 6
16 окт 2025, 16:09
16 окт 2025, 16:09
058511c
Код
Авторство
О чём код?
cmake_minimum_required(VERSION 3.23) project(Tutorial VERSION 1.0.0 ) option(TUTORIAL_BUILD_UTILITIES "Build the Tutorial executable" ON) option(TUTORIAL_USE_STD_SQRT "Use std::sqrt" OFF) option(TUTORIAL_ENABLE_IPO "Check for and use IPO support" ON) option(BUILD_TESTING "Enable testing and build tests" ON) if(TUTORIAL_ENABLE_IPO) include(CheckIPOSupported) check_ipo_supported(RESULT result OUTPUT output) if(result) message("IPO is supported, enabling IPO") set(CMAKE_INTERPROCEDURAL_OPTIMIZATION ON) else() message(WARNING "IPO is not supported: ${output}") endif() endif() if(TUTORIAL_BUILD_UTILITIES) add_subdirectory(Tutorial) endif() if(BUILD_TESTING) enable_testing() add_subdirectory(Tests) endif() add_subdirectory(MathFunctions) include(GNUInstallDirs) install( TARGETS MathFunctions OpAdd OpMul OpSub MathLogger SqrtTable EXPORT TutorialTargets FILE_SET HEADERS ) install( EXPORT TutorialTargets DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/Tutorial NAMESPACE Tutorial:: ) include(CMakePackageConfigHelpers) write_basic_package_version_file( ${CMAKE_CURRENT_BINARY_DIR}/TutorialConfigVersion.cmake COMPATIBILITY ExactVersion ) install( FILES cmake/TutorialConfig.cmake ${CMAKE_CURRENT_BINARY_DIR}/TutorialConfigVersion.cmake DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/Tutorial )