Būvsistēmas CMake 3.21 un Meson 0.59 izlaišana

Tiek prezentēts starpplatformu atvērtā veidošanas skriptu ģeneratora CMake 3.21 izlaidums, kas darbojas kā alternatīva Autotools un tiek izmantots tādos projektos kā KDE, LLVM/Clang, MySQL, MariaDB, ReactOS un Blender. CMake kods ir rakstīts C++ valodā un tiek izplatīts saskaņā ar BSD licenci.

CMake ir ievērojama ar vienkāršu skriptu valodas nodrošināšanu, līdzekli funkcionalitātes paplašināšanai, izmantojot moduļus, minimālu atkarību skaitu (nav saistīšanas ar M4, Perl vai Python), kešatmiņas atbalstu, savstarpējās kompilācijas rīku klātbūtni, atbalstu būvējuma ģenerēšanai. faili plašam veidošanas sistēmu un kompilatoru klāstam, klātbūtnes ctest un cpack utilītas testa skriptu un veidošanas pakotņu definēšanai, cmake-gui utilīta interaktīvai būvēšanas parametru iestatīšanai.

Galvenie uzlabojumi:

  • Pievienots pilnīgs atbalsts Heterogeneous-Computing Interface for Portability (HIP) programmēšanas valodai, C++ valodas dialektam, kura mērķis ir atvieglot CUDA lietojumprogrammu pārveidošanu pārnēsājamā C++ kodā.
  • Programmai Visual Studio 17 2022 ir pievienots būvēšanas skriptu ģenerators, kura pamatā ir Visual Studio 2022 priekšskatījums 1.1.
  • Makefile un Ninja veidošanas skriptu ģeneratori ir pievienojuši rekvizītus C_LINKER_LAUNCHER un CXX_LINKER_LAUNCHER, ko var izmantot, lai palaistu palīgutilītas, kas palaiž saiti, piemēram, statiskos analizatorus. Ģenerators palaidīs norādītās utilītas, nododot tām linkera nosaukumu un tā argumentus.
  • Rekvizītos “C_STANDARD” un “OBJC_STANDARD”, kā arī kompilatora parametru iestatīšanas rīkos (Compile Features) ir pievienots atbalsts C17 un C23 specifikācijām.
  • Opcija “— toolchain” ir pievienota utilītai cmake > lai noteiktu ceļu uz rīku komplektu.
  • Terminālī parādītie ziņojumu veidi ir izcelti.
  • Pievienots Fujitsu kompilatora atbalsts.
  • Komanda "foreach()" nodrošina, ka cilpas mainīgie tiek izolēti cilpas ietvaros.

Turklāt mēs varam atzīmēt Meson 0.59 būvēšanas sistēmas izlaišanu, kas tiek izmantota, lai izveidotu tādus projektus kā X.Org Server, Mesa, Lighttpd, systemd, GStreamer, Wayland, GNOME un GTK. Meson kods ir rakstīts Python un ir licencēts saskaņā ar Apache 2.0 licenci. Atbalsta savstarpēju kompilāciju un veidošanu operētājsistēmās Linux, Illumos/Solaris, FreeBSD, NetBSD, DragonFly BSD, Haiku, macOS un Windows, izmantojot GCC, Clang, Visual Studio un citus kompilatorus. Ir iespējams veidot projektus dažādās programmēšanas valodās, tostarp C, C++, Fortran, Java un Rust. Veidojot utilītu make, pēc noklusējuma tiek izmantots rīkkopa Ninja, taču var izmantot arī citas aizmugursistēmas, piemēram, xcode un VisualStudio.

Sistēmai ir iebūvēts vairāku platformu atkarības apstrādātājs, kas ļauj izmantot Meson, lai izveidotu pakotnes izplatīšanai. Montāžas noteikumi ir norādīti vienkāršotā domēna valodā, ir viegli lasāmi un lietotājam saprotami (kā to ir iecerējuši autori, izstrādātājam ir jāpavada minimāls laiks noteikumu rakstīšanai). Tiek atbalstīts pakāpenisks veidošanas režīms, kurā tiek pārbūvēti tikai tie komponenti, kas ir tieši saistīti ar izmaiņām, kas veiktas kopš pēdējās būvēšanas. Meson var izmantot, lai ģenerētu atkārtojamus būvējumus, kuros, palaižot būvējumu dažādās vidēs, tiek ģenerēti pilnīgi identiski izpildāmie faili.

Galvenie Meson 0.59 jauninājumi:

  • Pievienots atbalsts Cython valodai (uzlabotā Python versija, kuras mērķis ir vienkāršot integrāciju ar C kodu).
  • Pievienoti atslēgvārdi "unescaped_variables" un "unescaped_uninstalled_variables", lai definētu mainīgos pkgconfig bez atstarpēm ar rakstzīmi "\".
  • Pievienots atbalsts wrc (Wine Resource Compiler).
  • Ir ieviesta iespēja ģenerēt projektus Visual Studio 2012 un Visual Studio 2013.
  • Visas ar apakšprojektu saistītās komandas tagad pēc noklusējuma palaiž katru apakšprojektu paralēli. Paralēlo procesu skaitu nosaka parametrs “--num-processes”.

Avots: opennet.ru

Pievieno komentāru