Mesoni koostamissĂŒsteemi vĂ€ljalase 1.12.0

Avalikustatud on Meson 1.12.0 versioon, mida kasutatakse projektide nagu X.Org Server, Mesa, QEMU, Lighttpd, systemd, GStreamer, Wayland, GNOME ja GTK koostamiseks. Mesoni kood on kirjutatud Pythonis ja see on litsenseeritud Apache 2.0 alla.

Mesoni arendamise peamine eesmĂ€rk on tagada ehitusprotsessi kĂ”rge kiirus koos mugavuse ja lihtsusega. Vaikimisi kasutatakse ehitamiseks make tööriista asemel Ninja tööriista, kuid on vĂ”imalik kasutada ka teisi taustsĂŒsteeme, nagu Xcode ja Visual Studio. SĂŒsteem sisaldab nelja platvormi sĂ”ltuvuste töötlejat, vĂ”imaldades Mesonit kasutada pakettide koostamiseks distributsioonide jaoks. Ehitusreeglid mÀÀratakse lihtsustatud valdkonnapĂ”hises keeles, mis on hĂ€sti loetavad ja arusaadavad kasutajatele (autorite ideede kohaselt peaks arendaja kulutama nende reeglite kirjutamisele minimaalselt aega).

Kross-compile'imine ja ehitamine Linuxis, Illumos/Solaris, FreeBSD, NetBSD, DragonFly BSD, Haiku, macOS ja Windowsis on toetatud kasutades GCC, Clang, Visual Studio ja teisi kompilaatorite. Projektide kompileerimine erinevates programmeerimiskeeltes, sealhulgas C, C++, Fortran, Java, D ja Rust, on vĂ”imalik. Toetatakse inkrementaalset ehitusreĆŸiimi, kus uuendatakse ainult komponente, mis on otseselt seotud muudatustega, mis tehti alates viimasest ehitusest. Mesoni saab kasutada korduvate ehituste loomiseks, kus ehituse kĂ€ivitamine erinevates keskkondades toob kaasa tĂ€iesti identsed tĂ€idetavad failid.

Meson 1.12 peamised uuendused:

  • Lisatud on CACHEDIR.TAG faili tugi, mis asub koostamiskaustas, et vĂ€ltida ajutiste failide kaasamist varukoopiatesse.
  • Lisatud on koostamise eesmĂ€rk clippy-json, mis kĂ€ivitab Clippy lintimise tööriista ja genereerib Rust-analyzatori jaoks hoiatuste ja vigade teavet JSON formaadis.
  • Lisatud objekt ja funktsioon default(), mis on mĂ”eldud nimeliste argumentide lĂ€htestamiseks vaikevÀÀrtustele.
  • Generator.process() meetodisse on lisatud 'depends' argument, mis vĂ”imaldab otse siduda genereeritud failid teiste koostamise eesmĂ€rkidega.
  • Objekti 'include_directories' jaoks on lisatud meetod to_list(), mis vĂ€ljastab ĂŒhendatud kaustade absoluutsete teede nimekirja.
  • Lisatud on funktsioonid stringide konverteerimiseks tĂ€isarvudeks ja vastupidi — str.to_int() ja int.to_string().
  • KĂ€sku 'meson format' on lisatud valik '--subprojects', mida saab kasutada koos '--recursive' valikuga alaprojektide rekursiivseks analĂŒĂŒsimiseks.
  • Lisatud on OpenHarmony ja HarmonyOS (OHOS) platvormide tugi, mida töödeldakse nagu Androidi.
  • Oma koostamise eesmĂ€rke ja teste mÀÀrates on lubatud kasutada vĂ€liseid programme nimeliste argumentide 'input' ja 'depends' sisestamiseks.
  • Alaprojektide eraldi koostamine on vĂ”imalik koostamiskasutaja ja sihtplatvormi jaoks, mĂ€rkides subproject() ja meson.override_find_program() nimega argumendi 'native'.
  • KĂ€sku 'meson test' on lisatud valik '--exclude', mis vĂ”imaldab teatud teste vahele jĂ€tta.
  • Toetuse lĂ”petamine Python 3.7, 3.8 ja 3.9 jaoks.

Allikas: opennet.ru

Osta usaldusvÀÀrne veebihosting DDoS kaitsega, VPS VDS serverid đŸ”„ Osta usaldusvÀÀrne veebihosting DDoS kaitsega, VPS VDS serverid | ProHoster