Состоялся (https://blog.kitware.com/cmake-3-13-0-available-for-download/) релиз кроссплатформенного открытого генератора сценариев сборки CMake 3.13 (http://www.cmake.org/), выступающего в качестве альтернативы Autotools и используемого в таких проектах, как KDE, LLVM/Clang, MySQL, MariaDB, ReactOS и Blender. Код CMake написан на языке C++ и распространяется под лицензией BSD.CMake примечателен предоставлением простого языка сценариев, средствами расширения функциональности через модули, минимальным числом зависимостей (нет привязки к M4, Perl или Python), поддержкой кэширования, наличием инструментов для кросс-компиляции, поддержкой генерации файлов сборки для широкого спектра систем сборки и компиляторов, наличием утилит ctest и cpack для определения сценариев тестирования и сборки пакетов, утилитой cmake-gui для интерактивной настройки параметров сборки.
Основные улучшения (https://cmake.org/cmake/help/v3.12/release/3.13.html):
- В команду cmake добавлены опции "-S source_dir" и "-B build_dir" для определения путей к каталогу с исходными текстами и каталогу для сборки;
- Добавлены новые команды "target_link_directories()", "target_link_options()" и "target_link_libraries()" для определения каталогов, опций и местоположения библиотек, используемых в операциях компоновки;
- В команду "install(TARGETS)" добавлена поддержка установки целевых файлов, созданных вне текущего каталога;
- В генератор "Green Hills MULTI" добавлена возможность выбора платформы, архитектуры и инструментария;
- В генераторы для Visual Studio 2010 и более новых версий добавлена опция "INTERPROCEDURAL_OPTIMIZATION" и связанный с ней модуль "CheckIPOSupported" для управления применением межпроцедурных оптимизаций. Добавлены свойства "VS_DEBUGGER_COMMAND_ARGUMENTS" и "VS_DEBUGGER_ENVIRONMENT" для определения аргументов командной строки и переменных окружения для управления отладочными режимами в генераторах для Visual Studio;
- На платформе Windows обеспечена возможность использования команды "cmake -E create_symlink";
- В команде "option()" теперь учитывается наличие нормальных переменных с тем же именем (они теперь не переопределяются в кэше и настройках);
- В команде "target_sources()" обработка относительных путей к исходным текстам теперь производится относительно текущего каталога с исходными текстами;
- Добавлено правило "CMP0076", определяющее требования к обеспечению обратной совместимости в случаях, когда необходимо сохранение старого поведения.
URL: https://blog.kitware.com/cmake-3-13-0-available-for-download/
Новость: https://www.opennet.ru/opennews/art.shtml?num=49642