CMake 3.18 빌드 시스템 출시

도입 크로스 플랫폼 개방형 빌드 스크립트 생성기 출시 씨메이크 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 для указания файла со спецификацией ресурсов.

출처 : opennet.ru

코멘트를 추가