Представлен релиз кроссплатформенного открытого генератора сценариев сборки CMake 3.22, выступающего в качестве альтернативы Autotools и используемого в таких проектах, как KDE, LLVM/Clang, MySQL, MariaDB, ReactOS и Blender. Код CMake написан на языке C++ и распространяется под лицензией BSD.
CMake është i njohur për ofrimin e një gjuhe skenari të thjeshtë, mjeteve për zgjerimin e funksionalitetit përmes moduleve, një numri minimal të varësive (nuk ka varësi nga M4, Perl ose Python), mbështetje për pamjen e cache-it, disponimin e mjeteve për ndërkompilim, mbështetje për gjenerimin e skedave të ndërtimit për një gamë të gjerë sistemesh ndërtimi dhe kompilatorësh, mjeteve ctest dhe cpack për përcaktimin e skenarëve të testeve dhe ndërtimit të pakove, si dhe mjeteve cmake-gui për konfigurimin interaktiv të parametrave të ndërtimit.
Përmirësimet kryesore:
- В средствах для настройки параметров компилятора (Compile Features) предоставлена возможность включения и отключения расширений компилятора без указания уровня поддержки стандарта, а также исключена установка лишних флагов с уровнем стандарта языка, если выбранные настойки подпадают под установленные по умолчанию параметры компилятора.
- В команде cmake_host_system_information() добавлена возможность запроса идентификатора операционной системы, хранимого в файле /etc/os-release.
- Добавлены переменные окружения CMAKE_BUILD_TYPE и CMAKE_CONFIGURATION_TYPES, через которую можно выставить значение по умолчанию одноимённых переменных CMake.
- Добавлена переменная «CMAKE_REQUIRE_FIND_PACKAGE_<PackageName>» переводящая вызов функции find_package() для обнаружения указанного пакета в разряд обязательных.
- Добавлена переменная окружения «CMAKE_INSTALL_MODE» для установки символических ссылок место копирования файлов при вызове «install()».
- Добавлен флаг «CMAKE_<LANG>_LINK_WHAT_YOU_USE_FLAG» и переменная «CMAKE_LINK_WHAT_YOU_USE_CHECK» для выставления и проверки флагов компоновщика.
- В модуле FetchContent обеспечена передача выставленных переменных «CMAKE_TLS_VERIFY», «CMAKE_TLS_CAINFO», «CMAKE_NETRC» и «CMAKE_NETRC_FILE» в сценарии сборки внешних проектов (ранее данные параметры игнорировались).
- В предоставляемый модулем «CMakeDependentOption» макрос «cmake_dependent_option()» добавлена полная поддержка синтаксиса условных выражений.
- Модули «FindJasper» и «FindMatlab» теперь предоставляют импортируемые цели.
- В свойстве «VS_SETTINGS» реализована поддержка всех типов файлов с исходными текстами.
- Объявлен устаревшим и будет удалён в одном из следующих выпусков генератор «Visual Studio 10 2010».
Burimi: opennet.ru
