Новости и события » Hi-Tech » Релиз системы сборки CMake 3.11

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

Как сообщает opennet.ru доступен релиз кроссплатформенного открытого генератора сценариев сборки CMake 3.11, выступающего в качестве альтернативы Autotools и используемого в таких проектах, как KDE, LLVM/Clang, MySQL, MariaDB, ReactOS и Blender. Код CMake написан на языке C++ и распространяется под лицензией BSD.

CMake примечателен предоставлением простого языка сценариев, средствами расширения функциональности через модули, минимальным числом зависимостей (нет привязки к M4, Perl или Python), поддержкой кэширования, наличием инструментов для кросс-компиляции, поддержкой генерации файлов сборки для широкого спектра систем сборки и компиляторов, наличием утилит ctest и cpack для определения сценариев тестирования и сборки пакетов, утилитой cmake-gui для интерактивной настройки параметров сборки.

  • В генератор сборочных файлов Ninja добавлена поддержка компиляторов
  • В генераторах для Visual Studio появилась возможность использования условного выражения COMPILE_LANGUAGE при определении значений COMPILE_DEFINITIONS, INCLUDE_DIRECTORIES, COMPILE_OPTIONS и file(GENERATE). В генераторе Xcode поддержка условного выражения COMPILE_LANGUAGE обеспечена для COMPILE_DEFINITIONS и INCLUDE_DIRECTORIES (в COMPILE_OPTIONS и file(GENERATE) уже поддерживалась ранее);
  • Компанды add_library и и add_executable теперь могут вызываться без наличия исходных текстов с расчетом, что код будет добавлен позднее при помощи команды target_sources;
  • В команду target_compile_definitions добавлено свойство INTERFACE_COMPILE_DEFINITIONS, в команду target_compile_features - INTERFACE_COMPILE_FEATURES, в target_compile_options - INTERFACE_COMPILE_OPTIONS, в target_include_directories - INTERFACE_INCLUDE_DIRECTORIES, в target_sources - INTERFACE_SOURCES, в target_link_libraries - INTERFACE_LINK_LIBRARIES;
  • В свойстве исходных файлов "COMPILE_DEFINITIONS" добавлена поддержка выражений генератора;
  • Свойство исходных файлов COMPILE_OPTIONS добавлено в список опций, передаваемых компилятору;
  • При использовании свойств AUTOMOC или AUTOUIC, CMake теперь параллельно запускает несколько процессов moc или uic для сокращения времени сборки. Число процессов определяется через переменную CMAKE_AUTOGEN_PARALLEL и свойство AUTOGEN_PARALLEL (по умолчанию выставляются в значения, соответствующие числу CPU).

Доставка завтраков в Одессе от ресторана Рис : начните день...

Доставка завтраков в Одессе от ресторана "Рис": начните день правильно

Почему завтрак так важен и как ресторан "Рис" помогает его улучшить Завтрак считается одним из самых важных приемов пищи, так как он запускает метаболизм, восполняет запасы энергии и улучшает концентрацию и продуктивность на весь день. Ресторан...

сегодня 14:38

Свежие новости Украины на сегодня и последние события в мире экономики и политики, культуры и спорта, технологий, здоровья, происшествий, авто и мото

Вверх