Пусна се новата актуализация на генератора на скриптове CMake 3.15

cmake

Преди няколко дни Пуснат е межплатформен генератор на скриптове с отворен код CMake 3.15 който действа като алтернатива на Autotools и се използва в проекти като KDE, LLVM / Clang, MySQL, MariaDB, ReactOS и Blender.

CMake е многоплатформен инструмент за генериране или автоматизация на код. Името е съкращение за "cross platform make" (make cross platform, освен използването на "make" в името, CMake е отделен пакет и по-високо ниво от общата система за създаване на Unix, като е подобен на autotools.

Относно CMake

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

Помощните програми ctest и cpack за дефиниране на тестови сценарии и създаване на пакети, с помощната програма cmake-gui за интерактивно конфигуриране на параметрите на изграждане.

CMake се използва за управление на процеса на компилиране на софтуера, като се използват прости и независими конфигурационни файлове от платформата. Cmake генерира собствени makefile и работни пространства, които могат да се използват в желаната среда за разработка.

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

За разлика от системата за изграждане на GNU, която е ограничена до платформи на Unix, CMake поддържа генерирането на файлове за различни операционни системи, което улеснява поддръжката и елиминира необходимостта да има множество набори от файлове за всяка платформа.

Процесът на изграждане се контролира чрез създаване на един или повече CMakeLists.txt файлове във всяка директория (включително поддиректории).

Кодът на CMake е написан на C ++ и се разпространява под лиценза BSD.

Основни нови функции на CMake 3.15

Тази нова версия подчертано от пристигането на първоначална поддръжка на генератор за езика Swift Разработено от Apple е добавено към генератора на скриптове за сглобяване на Ninja Toolkit.

Освен това, поддръжка също пристига за опцията на компилатора Clang за Windows, който е изграден с ABI MSVC, но използва опциите на командния ред в стил GNU.

Разработчиците подчертават, че променливите CMAKE_MSVC_RUNTIME_LIBRARY y MSVC_RUNTIME_LIBRARY се добавят, за да изберат библиотеките по време на изпълнение, използвани от компилаторите ABI MSVC (MS VisualStudio).

За компилатори като MSVCВ CMAKE__FLAGSПо подразбиране списъкът с предупредителни знамена за контрол като "/ W3" е спрян.

От другите подобрения, които са подчертани в съобщението за пускането на тази нова версия, намираме следното:

  • Добавен е генериращият израз 'COMPILE_LANG_AND_ID: »За дефиниране на опциите на компилатора за целеви файлове, които използват променливи CMAKE__COMPILER_ID y LANGUAGE за всеки кодов файл
  • Изрази на генератора C_COMPILER_ID, CXX_COMPILER_ID, CUDA_COMPILER_ID, Fortran_COMPILER_ID, COMPILE_LANGUAGE, COMPILE_LANG_AND_ID y PLATFORM_ID добавете поддръжка за съвпадение на стойност към списък, елементи, разделени със запетая
  • Добавена е променливата CMAKE_FIND_PACKAGE_PREFER_CONFIG, при което извикването на find_package () първо ще търси конфигурационния файл на пакета, дори ако модулът за търсене е наличен
  • За библиотеките на интерфейса е добавена поддръжка за задаване на свойства PUBLIC_HEADER y PRIVATE_HEADER, чиито заглавки могат да бъдат конфигурирани чрез командата за инсталиране (TARGETS), предаваща аргументите PUBLIC_HEADER y PRIVATE_HEADER
  • Добавена е променливата CMAKE_VS_JUST_MY_CODE_DEBUGGING и целевия имот VS_JUST_MY_CODE_DEBUGGING за да активирате режима "Just My Code" в дебъгера на Visual Studio при компилиране с помощта на MSVC cl 19.05 и по-нови версии.
  • Модулът FindBoost е преработен, който сега се работи по-пълно в конфигурацията и режимите на модула с присъствието на други модули за търсене
  • Към командата message () е добавена поддръжка за типове NOTICE, VERBOSE, DEBUG и TRACE
  • Командата "export (PACKAGE)" вече не прави нищо, докато не бъде изрично активирана чрез променливата CMAKE_EXPORT_PACKAGE_REGISTRY.

Ако искате да научите повече за това, можете да се консултирате следната връзка.


Бъдете първите, които коментират

Оставете вашия коментар

Вашият имейл адрес няма да бъде публикуван. Задължителните полета са отбелязани с *

*

*

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