Релиз системы сборки CMake 3.8
CMake примечателен предоставлением простого языка сценариев, средствами расширения функциональности через модули, минимальным числом зависимостей (нет привязки к M4, Perl или Python), поддержкой кэширования, наличием инструментов для кросс-компиляции, поддержкой генерации файлов сборки для широкого спектра систем сборки и компиляторов, наличием утилит ctest и cpack для определения сценариев тестирования и сборки пакетов, утилитой cmake-gui для интерактивной настройки параметров сборки.
Основные улучшения:
- Добавлена поддержка сборки проектов на языке CUDA через генераторы Makefile и Ninja для Linux, macOS и Windows;
- Добавлена поддержка сборки проектов на языке C# через генератор сценариев сборки для Visual Studio;
- В средствах для настройки параметров компилятора (Compile Features) реализована возможность определения мета-флагов, которые изменяют режим работы компилятора в привязке к специфичным языковым стандартам, например, "cxx_std_11" для C++ 11;
- "Compile Features" теперь учитывает особенности стандарта C++ 17, но набор мета-флагов "cxx_std_17" для него пока остаётся пустым;
- В "Compile Features" добавлена поддержка особенностей компиляторов Intel C++ версий с 12.1 по 17.0 для UNIX и Windows;
- В генераторы сценариев сборки для Visual Studio 2013+ в блок "CMAKE_GENERATOR_TOOLSET" добавлена поддержка опции "host=x64" для указания использования 64-разрядного инструментария на 64-разрядных системах;
- В генераторах для Visual Studio обеспечен импорт в генерируемый проект файлов MSBuild через передачу в target_link_libraries() файлов с расширением .targets;
- В команду try_compile() добавлена опция для выбора языкового стандарта, который будет использоваться в генерируемом тестовом проекте. В try_compile() также теперь учитывается переменная окружения CMAKE_CXX_STANDARD;
- Добавлено свойство "BUILD_RPATH" и связанная с ним переменная "CMAKE_BUILD_RPATH", позволяющие указать собственный путь RPATH для сохранения исполняемых файлов в процессе сборки;
- Добавлено новое выражение генератора "$‹IF:cond,true-value,false-value ›", возвращающее значение "true-value", если условие "cond" истинно (1) или "false-value" - ложно (0);
- В свойство "COMPILE_FLAGS" добавлена поддержка выражений генератора.
Источник: http://www.opennet.ru/opennews/art.shtml?num=46363
|
0 | Tweet | Нравится |
|