Uus CMake 3.15 skriptigeneraatori värskendus on välja antud

cmmake

Mõni päev tagasi CMake 3.15 platvormidevaheline avatud lähtekoodiga skriptigeneraator vabastati mis toimib Autotoolsi alternatiivina ja mida kasutatakse sellistes projektides nagu KDE, LLVM / Clang, MySQL, MariaDB, ReactOS ja Blender.

CMake on mitmeplatvormiline koodi genereerimise või automatiseerimise tööriist. See nimi on lühend "cross platform make" (tee ristplatvorm, lisaks nimes "make" kasutamisele, CMake on eraldi komplekt ja kõrgem tase kui tavaline margisüsteem Unixist, sarnanedes autotööriistadega.

CMake'i kohta

CMake on märkimisväärne lihtsa skriptikeele pakkumise tõttu, tööriistad funktsionaalsuse laiendamiseks moodulite vahel, minimaalne arv sõltuvusi (ei seondu M4, Perli ega Pythoniga), vahemälu tugi, ristkompileerimise tööriistade kättesaadavus, tugi monteerimisfailide loomiseks laia valiku kompilaatorisüsteemide ja kompilaatorite jaoks.

Ctest ja cpack utiliidid teststsenaariumide määratlemiseks ja paketi loomiseks koos cmake-gui utiliidiga ehitusparameetrite interaktiivseks konfigureerimiseks.

CMake'i kasutatakse tarkvara kompileerimisprotsessi juhtimiseks lihtsate ja sõltumatute konfiguratsioonifailide abil platvormi. Cmake genereerib kohalikud makefailid ja tööruumid, mida saab kasutada soovitud arenduskeskkonnas.

See on võrreldav Unixi GNU loomise süsteemiga selle poolest, et protsessi juhivad konfiguratsioonifailid, CMake puhul nimega CMakeLists.txt.

Erinevalt GNU ehitussüsteemist, mis on piiratud Unixi platvormidega, CMake toetab failide genereerimist erinevate opsüsteemide jaoks, mis hõlbustab hooldust ja välistab vajaduse, et iga platvormi jaoks oleks mitu failikomplekti.

Ehitamisprotsessi kontrollitakse, luues igasse kataloogi (sh alamkataloogidesse) ühe või mitu CMakeLists.txt-faili.

CMake kood on kirjutatud C ++ keeles ja seda levitatakse BSD litsentsi alusel.

CMake 3.15 peamised uued funktsioonid

See uus versioon mida tõi esile Swifti keele esialgse generaatori toe saabumine Apple'i poolt välja töötatud on lisatud Ninja Toolkiti koosteskriptide generaatorisse.

Lisaks sellele Samuti tuleb toetada Clangi kompilaatori valikut Windowsi jaoks, mis on ehitatud ABI MSVC-ga, kuid kasutab GNU-stiilis käsureavalikuid.

Arendajad rõhutavad, et muutujad CMAKE_MSVC_RUNTIME_LIBRARY y MSVC_RUNTIME_LIBRARY lisatakse kompilaatorite kasutatavate käitamisraamatukogude valimiseks ABI MSVC (MS VisualStudio).

Koostajatele nagu MSVCsisse CMAKE__FLAGSVaikimisi peatatakse hoiatavate juhtlippude loend nagu "/ W3".

Muudest täiustustest, mida selle uue versiooni väljaandmise teates esile tõstetakse, leiame järgmise:

  • Lisati genereeriv avaldis 'COMPILE_LANG_AND_ID: »Muutujaid kasutavate sihtfailide kompilaatori suvandite määratlemiseks CMAKE__COMPILER_ID y LANGUAGE iga koodifaili jaoks
  • Generaatori avaldised C_COMPILER_ID, CXX_COMPILER_ID, CUDA_COMPILER_ID, Fortran_COMPILER_ID, COMPILE_LANGUAGE, COMPILE_LANG_AND_ID y PLATFORM_ID lisage loendi väärtuste sobitamiseks toega komadega eraldatud üksused
  • Muutuja lisati CMAKE_FIND_PACKAGE_PREFER_CONFIG, milles kõne find_package () otsib kõigepealt paketi konfiguratsioonifaili, isegi kui otsingumoodul on saadaval
  • Liidese teekide jaoks on lisatud atribuutide seadistamise tugi PUBLIC_HEADER y PRIVATE_HEADER, mille päiseid saab konfigureerida käsku install (TARGETS), edastades argumendid PUBLIC_HEADER y PRIVATE_HEADER
  • Muutuja lisati CMAKE_VS_JUST_MY_CODE_DEBUGGING ja sihtkoha vara VS_JUST_MY_CODE_DEBUGGING MSVC cl 19.05 ja uuemate versioonide kasutamisel kompileerimisel Visual Studio siluris režiimi "Just My Code" lubamine.
  • FindBoost moodul on ümber töötatud, mida töötatakse nüüd täielikumalt konfiguratsiooni ja mooduli režiimides koos teiste otsingumoodulite olemasoluga
  • Teatiste NOTICE, VERBOSE, DEBUG ja TRACE tugi on lisatud käsule message ()
  • Käsk "eksport (PAKETT)" ei tee nüüd midagi enne, kui see on muutuja kaudu selgesõnaliselt lubatud CMAKE_EXPORT_PACKAGE_REGISTRY.

Kui soovite selle kohta rohkem teada saada, võite pöörduda järgmine link.


Jäta oma kommentaar

Sinu e-postiaadressi ei avaldata. Kohustuslikud väljad on tähistatud *

*

*

  1. Andmete eest vastutab: Miguel Ángel Gatón
  2. Andmete eesmärk: Rämpsposti kontrollimine, kommentaaride haldamine.
  3. Seadustamine: teie nõusolek
  4. Andmete edastamine: andmeid ei edastata kolmandatele isikutele, välja arvatud juriidilise kohustuse alusel.
  5. Andmete salvestamine: andmebaas, mida haldab Occentus Networks (EL)
  6. Õigused: igal ajal saate oma teavet piirata, taastada ja kustutada.