CMake 3.17.0 поставляется с новым генератором сценариев Ninja, улучшениями и многим другим.

Запуск новая версия кроссплатформенного генератора скриптов с открытым кодом CMake 3.17, в котором разработчики работали добавить новый генератор скриптов под названием "Ninja Multi-Config", улучшения в генераторе сценариев Visual Studio, общие оптимизации и многое другое.

Для тех, кто не знает CMake, они должны знать, что это мультиплатформенный инструмент генерации кода или автоматизации который действует как альтернатива Autotools и используется в таких проектах, как KDE, LLVM / Clang, MySQL, MariaDB, ReactOS и Blender.

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

Эта утилита используется для управления процессом компиляции программного обеспечения с использованием простых и независимых от платформы файлов конфигурации. Создает собственные make-файлы и рабочие области, которые можно использовать в желаемой среде разработки.

Это сопоставимо с системой сборки GNU Unix, в котором процесс управляется файлами конфигурации, в случае CMake называется CMakeLists.txt.

Что нового в CMake 3.17.0

Как упоминалось в начале, одной из главных новинок, которые выделяются в этой новой версии CMake 3.17.0, является добавление нового генератора скриптов сборки на базе инструментов Ninja, имеющей название «Мультиконфигурация ниндзя«, Который отличается от предыдущего генератора, потому что этот новый генератор предоставляет возможность обрабатывать несколько конфигураций сборки одновременно.

Между тем, в генераторе скриптов сборки Для Visual Studio теперь вы можете определять исходные файлы, прикрепленные к каждому параметру.

Возможность установки метапараметров для CUDA («Cuda_std_03», «cuda_std_14» и т. Д.) был добавлен в инструменты для настройки функций компилятора (Функции компиляции).

Кроме того, в объявлении упоминается, что были добавлены переменные «CMAKE_CUDA_RUNTIME_LIBRARY«И»CUDA_RUNTIME_LIBRARY»Для выбора типа библиотек времени выполнения при использовании CUDA, а также модуля« FindCUDAToolkit »для определения инструментов CUDA, доступных в системе, без включения языка CUDA.

В CMake 3.17.0 команда «–Debug-find»Добавлено отображение дополнительной удобочитаемой диагностики при поиске. Для аналогичных целей переменная CMAKE_FIND_DEBUG_MODE.

Добавлено поддержка поиска CURL-инструментов в модуле «FindCURL» используя файлы конфигурации «CURLConfig.cmake», созданные cmake. Чтобы отключить это поведение, предоставляется переменная CURL_NO_CURL_CMAKE.

Модуль FindPython добавляет возможность поиска компонентов Python в виртуальных средах, управляемых «Conda».

Добавлено вариант «–No-tests = [ошибка | игнорировать]»К утилите ctest для определять поведение при отсутствии доказательств и «–repeat», чтобы указать условия для перезапуска тестов (пока они не пройдут, после тайм-аута).

Из других изменений, упомянутых в анонсе:

  • Построить целевые свойства ИНТЕРФЕЙС_LINK_ОПЦИИ, INTERFACE_LINK_DIRECTORIES e INTERFACE_LINK_DEPENDS они передавались между внутренними зависимостями статически собранных библиотек.
  • При использовании инструментария MinGW поиск DLL-файлов с помощью команды find_library по умолчанию он отключен (вместо этого делается попытка импортировать библиотеки ".dll.a").
  • Логика выбора утилиты ниндзя в генераторе ниндзя теперь не зависит от имени исполняемого файла - используется первая утилита ниндзя-билд, ниндзя o Саму found, который находится в путях, определенных переменной среды PATH.
  • Команда "-Э-э-э»Добавлена ​​утилита cmake, с помощью которой можно удалять файлы и каталоги вместо отдельных команд«-E удалить«И»-E удалить_каталог».

В конце концов если вы хотите узнать об этом больше, вы можете проверить анонс этой новой версии в по следующей ссылке.


Оставьте свой комментарий

Ваш электронный адрес не будет опубликован. Обязательные для заполнения поля помечены *

*

*

  1. Ответственный за данные: Мигель Анхель Гатон
  2. Назначение данных: контроль спама, управление комментариями.
  3. Легитимация: ваше согласие
  4. Передача данных: данные не будут переданы третьим лицам, кроме как по закону.
  5. Хранение данных: база данных, размещенная в Occentus Networks (ЕС)
  6. Права: в любое время вы можете ограничить, восстановить и удалить свою информацию.