Релиз системы сборки CMake 3.28

Опубликован релиз кроссплатформенного открытого генератора сценариев сборки CMake 3.28, выступающего в качестве альтернативы Autotools и используемого в таких проектах, как KDE, LLVM/Clang, MySQL, MariaDB, ReactOS и Blender. CMake примечателен предоставлением простого языка сценариев, средствами расширения функциональности через модули, поддержкой кэширования, наличием инструментов для кросс-компиляции, поддержкой генерации файлов сборки для широкого спектра систем сборки и компиляторов, наличием утилит ctest и cpack для определения сценариев тестирования и сборки пакетов, утилитой cmake-gui для интерактивной настройки параметров сборки. Код CMake написан на языке C++ и распространяется под лицензией BSD.

Основные улучшения:

  • В генераторы сборочных сценариев для Visual Studio и Ninja добавлена поддержка модулей, определённых в спецификации C++ 20. Поддержка модулей доступна при наличии LLVM/Clang 16, GCC 14-dev или MSVC 14.34.

  • Реализована возможности компиляции для GPU NVIDIA кода на языке HIP, используя компилятор NVCC (NVIDIA CUDA Compiler). Добавлена переменная CMAKE_HIP_PLATFORM для выбора платформы GPU для HIP («amd» или «nvidia»).

  • На платформах Apple обеспечена поддержка каталогов ».xcframework».

  • Удалена команда «exec_program ()», объявленная устаревшей в выпуске 3.0. Для запуска процессов следует использовать команду «execute_process ()».

  • Файлы, сгенерированные с использованием режима «FILE_SET», теперь обрабатываются по умолчанию как приватные, что позволяет формировать более эффективный сборочный граф в генераторах Ninja.
  • В командах find_library (), find_path () и find_file () отключён поиск в установочных каталогах, полученных из переменной окружения PATH.



Источник: http://www.opennet.ru/opennews/art.shtml? num=60267

© OpenNet