Meson 1.0 koostesĂŒsteemi vĂ€ljalase

On vĂ€lja antud Meson 1.0.0 koostamisĂŒsteemi versioon, mida kasutatakse selliste projektide, nagu X.Org Server, Mesa, Lighttpd, systemd, GStreamer, Wayland, GNOME ja GTK, koostamiseks. Mesoni kood on kirjutatud Pythonis ja see on litsentseeritud Apache 2.0 all.

Mesoni arengu peamine eesmĂ€rk on tagada kiire kogumise protsess koos mugavuse ja lihtsusega. Vaikimisi kasutatakse kogumise jaoks make'i asemel Ninja tööriistu, kuid on vĂ”imalik kasutada ka muid tagaplaneeringuid, nagu xcode ja VisualStudio. SĂŒsteemis on integreeritud mitme platvormi sĂ”ltuvuste haldur, mis vĂ”imaldab Mesonit kasutada distributsioonide paketide koostamiseks. Koostamisreeglid on mÀÀratud lihtsustatud ainealases keeles, mis on hea loetavusega ja arusaadav kasutajale (autoritelt on kavandatud, et arendaja peaks reeglite kirjutamiseks vĂ”imalikult vĂ€he aega kulutama).

Toetatakse ristkompileerimist ja ehitamist Linuxis, Illumos/Solaris, FreeBSD, NetBSD, DragonFly BSD, Haiku, macOS ja Windowsis, kasutades GCC, Clang, Visual Studio ja teisi kompilaatoreid. Erinevate programmeerimiskeelte, sealhulgas C, C++, Fortran, Java ja Rust projektide ehitamine on vĂ”imalik. Toetatakse inkrementaalset ehitusreĆŸiimi, kus uuesti ehitatakse ainult need komponendid, mis on otseselt seotud muudatustega, mis on tehtud alates eelmisest ehitusest. Mesonit saab kasutada reprodutseeritavate ehituste loomiseks, kus ehituse kĂ€ivitamine erinevates keskkondades toob kaasa tĂ€ielikult identsete kĂ€ivitatavate failide genereerimise.

Meson 1.0 peamised uudised:

  • On kuulutatud vĂ€lja stabiilne moodul projektide koostamiseks Rust keeles. Seda moodulit kasutatakse Mesa projektis Rust keeles kirjutatud komponentide koostamiseks.
  • Kompleksse kontrolli funktsioonis prefix, mida toetavad enamiku kompilaatori kontrollide funktsioonid, on rakendatud massiivide töötlemise vĂ”imalus lisaks stringidele. NĂ€iteks on nĂŒĂŒd vĂ”imalik mÀÀrata: cc.check_header(‘GL/wglew.h’, prefix : [‘#include ’, ‘#include ’])
  • On lisatud uus argument «—workdir», mis vĂ”imaldab uuendada töökatalooge. NĂ€iteks, et kasutada praegust katalooge tööka ĂŒlesandena, vĂ”ite kĂ€ivitada: meson devenv -C builddir —workdir .
  • Uued operaatorid «in» ja «not in» on ette nĂ€htud stringis alamhulga olemasolu mÀÀramiseks, sarnanedes varem saadaval olnud elemendi leidmise kontrollile massiivis vĂ”i sĂ”nastikus. NĂ€iteks: fs = import(‘fs’) if ‘something’ in fs.read(‘somefile’) # True endif
  • Lisatud valik «warning-level=everything», mis sisaldab kĂ”igi olemasolevate kompilaatori hoiatusete vĂ€ljastamist (clangis ja MSVC-s kasutatakse -Weverything ja /Wall, GCC-s on eraldi aktiveeritud hoiatused, mis ligikaudselt vastavad -Weverything reĆŸiimile clangis).
  • meetodis rust.bindgen on rakendatud argumentide «dependencies» töötlemise vĂ”imalus sĂ”ltuvuste teede edastamiseks, milles peab kompilaator töötama.
  • Funktsiooni java.generate_native_headers kuulutati vananenuks ning see on ĂŒmber nimetatud java.native_headers, et vastata Mesonis kasutatavale nimekonventsioonide ĂŒldisele stiilile.

Allikas: opennet.ru

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