Ir izlaists jaunais CMake 3.15 skriptu ģeneratora atjauninājums

cmmake

Pirms dažām dienām Izlaists CMake 3.15 starpplatformu atvērtā koda skriptu ģenerators kas darbojas kā alternatīva Autotools un tiek izmantots tādos projektos kā KDE, LLVM / Clang, MySQL, MariaDB, ReactOS un Blender.

CMake ir daudzplatformu kodu ģenerēšanas vai automatizācijas rīks. Nosaukums ir saīsinājums no "cross platform make" (make cross platform, papildus nosaukuma "make" lietošanai, CMake ir atsevišķs komplekts un augstāks līmenis nekā kopējā make sistēma Unix, līdzīgi kā autotools.

Par CMake

CMake ir ievērojams ar vienkāršas skriptu valodas nodrošināšanu, rīki funkcionalitātes paplašināšanai starp moduļiem, minimāls atkarību skaits (bez saistīšanas ar M4, Perl vai Python), kešatmiņas atbalsts, rīku pieejamība savstarpējai kompilēšanai, montāžas failu ģenerēšanas atbalsts plaša spektra kompilatoru sistēmām un kompilatoriem.

Ctest un cpack utilītas testa scenāriju noteikšanai un pakotņu izveidei ar cmake-gui utilītu, lai interaktīvi konfigurētu būvēšanas parametrus.

CMake tiek izmantots programmatūras kompilēšanas procesa kontrolei, izmantojot vienkāršus un neatkarīgus konfigurācijas failus platformas. Cmake ģenerē vietējos makefailus un darbvietas, kuras var izmantot vēlamajā izstrādes vidē.

Tas ir salīdzināms ar Unix GNU būvēšanas sistēmu, jo procesu kontrolē konfigurācijas faili, CMake gadījumā sauc CMakeLists.txt.

Atšķirībā no GNU veidošanas sistēmas, kas ir ierobežots ar Unix platformām, CMake atbalsta failu ģenerēšanu dažādām operētājsistēmām, kas atvieglo apkopi un novērš vajadzību pēc vairāku failu kopu katrai platformai.

Izveides procesu kontrolē, katrā direktorijā (ieskaitot apakšdirektorijus) izveidojot vienu vai vairākus failus CMakeLists.txt.

CMake kods ir rakstīts C ++ un tiek izplatīts saskaņā ar BSD licenci.

Galvenās jaunās CMake 3.15 iespējas

Šī jaunā versija ko izceļ sākotnējā ģeneratora atbalsta saņemšana Swift valodai Apple izstrādātais Ninja Toolkit montāžas skriptu ģenerators ir pievienots.

Bez tam, nāk arī atbalsts Clang kompilatora opcijai operētājsistēmai Windows, kas veidota ar ABI MSVC, bet izmanto GNU stila komandrindas opcijas.

Izstrādātāji uzsver, ka mainīgie CMAKE_MSVC_RUNTIME_LIBRARY y MSVC_RUNTIME_LIBRARY tiek pievienoti, lai atlasītu izpildlaika bibliotēkas, kuras izmanto kompilatori ABI MSVC (MS VisualStudio).

Sastādītājiem patīk MSVCuz CMAKE__FLAGSPēc noklusējuma brīdinājuma vadības karodziņu, piemēram, "/ W3", saraksts tiek apturēts.

Starp citiem uzlabojumiem, kas ir uzsvērti paziņojumā par šīs jaunās versijas izlaišanu, mēs atrodam sekojošo:

  • Pievienots ģenerējošais izteiciens 'COMPILE_LANG_AND_ID: »Lai definētu kompilatora opcijas mērķa failiem, kas izmanto mainīgos CMAKE__COMPILER_ID y LANGUAGE katram koda failam
  • Ģeneratora izteiksmes C_COMPILER_ID, CXX_COMPILER_ID, CUDA_COMPILER_ID, Fortran_COMPILER_ID, COMPILE_LANGUAGE, COMPILE_LANG_AND_ID y PLATFORM_ID pievienojiet atbalstu vērtību pielāgošanai sarakstam ar komatiem atdalītiem vienumiem
  • Mainīgais tika pievienots CMAKE_FIND_PACKAGE_PREFER_CONFIG, kurā zvans find_package () vispirms meklēs pakotnes konfigurācijas failu, pat ja meklēšanas modulis ir pieejams
  • Interfeisa bibliotēkām ir pievienots atbalsts rekvizītu iestatīšanai PUBLIC_HEADER y PRIVATE_HEADER, kura galvenes var konfigurēt, izmantojot komandu install (TARGETS), nododot argumentus PUBLIC_HEADER y PRIVATE_HEADER
  • Mainīgais tika pievienots CMAKE_VS_JUST_MY_CODE_DEBUGGING un galamērķa īpašums VS_JUST_MY_CODE_DEBUGGING lai iespējotu režīmu "Just My Code" Visual Studio atkļūdotājā, sastādot, izmantojot MSVC cl 19.05 un jaunākas versijas.
  • FindBoost modulis ir pārstrādāts, kas tagad tiek pilnīgāk strādāts konfigurācijas un moduļu režīmos ar citu meklēšanas moduļu klātbūtni
  • Ziņojumam () ir pievienots paziņojumu, VERBOSE, DEBUG un TRACE tipu atbalsts.
  • Komanda "eksportēt (PACKAGE)" tagad neko nedara, kamēr tā nav skaidri iespējota, izmantojot mainīgo CMAKE_EXPORT_PACKAGE_REGISTRY.

Ja vēlaties uzzināt vairāk par to, varat konsultēties šo saiti.


Atstājiet savu komentāru

Jūsu e-pasta adrese netiks publicēta. Obligātie lauki ir atzīmēti ar *

*

*

  1. Atbildīgais par datiem: Migels Ángels Gatóns
  2. Datu mērķis: SPAM kontrole, komentāru pārvaldība.
  3. Legitimācija: jūsu piekrišana
  4. Datu paziņošana: Dati netiks paziņoti trešām personām, izņemot juridiskus pienākumus.
  5. Datu glabāšana: datu bāze, ko mitina Occentus Networks (ES)
  6. Tiesības: jebkurā laikā varat ierobežot, atjaunot un dzēst savu informāciju.