CMake 3.18 ビルド システムのリリース

から提出された クロスプラットフォームのオープン ビルド スクリプト ジェネレーターのリリース CMake 3.18、Autotools の代替として機能し、KDE、LLVM/Clang、MySQL、MariaDB、ReactOS、Blender などのプロジェクトで使用されます。 CMake コードは C++ で記述され、BSD ライセンスに基づいて配布されます。

CMake は、シンプルなスクリプト言語、モジュールを介して機能を拡張する手段、最小限の依存関係 (M4、Perl、または Python へのバインドなし)、キャッシュのサポート、クロスコンパイル用のツールの存在、ビルドの生成のサポートを提供することで有名です。幅広いビルド システムとコンパイラ用のファイル、テスト スクリプトを定義してパッケージを構築するための ctest ユーティリティと cpack ユーティリティ、ビルド パラメータを対話的に設定するための cmake-gui ユーティリティ。

メイン 改善:

  • Для языка CUDA обеспечена возможность сборки при помощи Clang на платформах, отличных от Windows. Раздельная компиляция CUDA пока не поддерживается ни на одной платформе.
  • Добавлена поддержка профилирования сценариев CMake, используя опции «—profiling-output» и «—profiling-format».
  • В команды add_library() и add_executable() добавлена поддержка создания целей-псевдонимов (Alias Targets), ссылающихся на неглобальные импортированные цели.
  • Добавлена команда cmake_language() для мета-операций над скриптованными или встроенными командами.
  • Добавлена подкоманда file(CONFIGURE), аналогичная по функциональности команде configure_file(), но с передачей содержимого в форме строки, а не ссылки на файл.
  • В команды find_program(), find_library(), find_path() и find_file() добавлена опция REQUIRED, предписывающая остановить обработку с ошибкой, если ничего не было найдено.
  • Добавлена переменная «CMAKE_CUDA_ARCHITECTURES» для указания архитектуры CUDA (устанавливается автоматически, если переменная «CMAKE_CUDA_COMPILER_ID» принимает значение «NVIDIA»).
  • Добавлено свойство «UNITY_BUILD_MODE» для выбора в генераторах алгоритма группировки включаемых исходных файлов (BATCH, GROUP).
  • Добавлен модуль CheckLinkerFlag для проверки корректности флагов компоновки.
  • Добавлены выражения генератора $<DEVICE_LINK:…>, $<HOST_LINK:…>, $<LINK_LANGUAGE:…> и $<LINK_LANG_AND_ID:…>.
  • В утилиту ctest добавлена переменная CTEST_RESOURCE_SPEC_FILE для указания файла со спецификацией ресурсов.

出所: オープンネット.ru

コメントを追加します