I-Meson iyithuluzi lesofthiwe lokuzenzakalela ukwakhiwa kwesofthiwe. Ingumthombo wamahhala futhi ovulekile obhalwe ngePython.
Ukukhishwa kwenguqulo entsha yesistimu yokwakha ye-Meson 1.0.0 kumenyezelwe encwadini , eza nezici ezintsha, kanye nokuzinza kokuhlanganisa amaphrojekthi ku-Rust, phakathi kwezinye izinto.
Kulabo abangajwayelene neMeson, kubalulekile ukuqaphela ukuthi lolu hlelo lokwakha lusetshenziselwa ukuhlanganisa amaphrojekthi adumile njenge-X.Org Server, i-Mesa, i-Lighttpd, i-systemd, i-GStreamer, i-Wayland, i-GNOME, kanye ne-GTK.
Umgomo oyinhloko kaMeson wokuthuthukisa ukuhlinzeka ngenqubo yokuhlanganisa enesivinini esiphezulu ehlanganiswe nokuba lula kanye nokusetshenziswa kalula. Esikhundleni sokwenza, isakhiwo sisebenzisa i-Ninja Toolkit ngokuzenzakalelayo, kodwa ezinye izinto ezingemuva njenge-xcode ne-VisualStudio nazo zingasetshenziswa.
Uhlelo lune-cross-platform dependency manager eyakhelwe ngaphakathi evumela ukuthi usebenzise i-Meson ukudala amaphakheji okusabalalisa. Imithetho yokuhlanganisa ibhalwe ngolimi olulula, oluqondene nesizinda, okwenza kube lula ukuyifunda nokuqondakala kumsebenzisi (ngokombono wababhali, abathuthukisi kufanele bachithe isikhathi esincane bebhala imithetho).
Ukuhlanganiswa okuhlanganisiwe kusekelwa , kanye nokuhlanganiswa ku-Linux, Illumos/Solaris, FreeBSD, NetBSD, DragonFly BSD, Haiku, macOS, kanye ne-Windows kusetshenziswa i-GCC, Clang, Visual Studio, kanye nezinye izihlanganisi.
Kungenzeka ukwakha amaphrojekthi ngezilimi eziningana zokuhlela , okuhlanganisa i-C, i-C++, i-Fortran, i-Java, kanye ne-Rust. Imodi yokuhlanganisa eqhubekayo iyasekelwa, lapho kuphela izingxenye ezihlobene ngqo nezinguquko ezenziwe kusukela ekuhlanganisweni kokugcina ezakhiwa kabusha.
I-Meson ingasetshenziswa ukukhiqiza izakhiwo eziphindaphindwayo, lapho ukusebenzisa isakhiwo ezindaweni ezihlukene kuphumela ekuphunyezweni okufanayo ngokuphelele.
Amanoveli amakhulu we-Meson 1.0
Kulokhu kukhishwa okusha kwe-Meson 1.0 kugqanyiswe lokho Imojula yamaphrojekthi wokwakha ngolimi lwe-Rust imenyezelwe ukuthi izinzile. Le mojula isetshenziswa kuphrojekthi ye-Mesa ukwakha izingxenye ezibhalwe nge-Rust.
Isekelwe imisebenzi eminingi yokuhlola inhlanganisela, inketho yesiqalo isebenzisa amandla okuphatha amalungu afanayo ngaphandle kweyunithi yezinhlamvu.
Olunye ushintsho oluvelele kulokhu kukhishwa ukwethulwa kwama -opharetha amasha athi "in" kanye "not in" ukuze kunqunywe ukwenzeka kwe-substring ku-string, okufana nokuhlola okwakutholakala ngaphambilini kokwenzeka kwento ku-array noma kwisichazamazwi.
Ngaphezu kwalokho, singathola futhi ukuthi inketho ethi " warning-level=everything" ingeziwe ukuze kusebenze umphumela wazo zonke izixwayiso ze-compiler ezitholakalayo (ku-clang naku-MSVC isebenzisa i--Weeverything kanye ne-/Wall, futhi ku-GCC kufakwe izixwayiso ezihlukene, ezihambisana cishe nemodi ye--Weeverything ka-clang).
Kubalulekile futhi ukuqaphela ukuthi kune-agumenti entsha, ethi "--workdir", efakiwe ukuze ikuvumele ukuthi ubhale phansi i-working directory . Isibonelo, ukusebenzisa i-directory yamanje esikhundleni se-working directory.
Indlela ye-rust.bindgen isebenzisa ikhono lokucubungula i-agumenti "yokuncika" ukuze kudlule izindlela eziya kokuncikile okufanele zicutshungulwe umdidiyeli futhi umsebenzi we-java.generate_native_headers uhoxisiwe futhi waqanjwa kabusha ngokuthi java.native_headers ukuze ufane nesitayela sokuqamba esivamile somsebenzi sika-Meson.
Ngaphezu kwalokho, kuphinde kwashiwo ukuthi lapho kuhlanganiswa ndawonye, ​​indawo yonjiniyela manje isetha zonke iziguquguquko zemvelo zomshini we-host. Manje isetha futhi i-QEMU_LD_PREFIX kanye nenani le-sys_root lefayela eliphambene uma isici sichaziwe. Lokhu kusho ukuthi ama-executable ahlanganiswe ndawonye angasebenza ngokusobala emshinini wokuhlanganisa, isibonelo, lapho kuhlanganiswa ndawonye i-aarch64 Linux kusuka ku-x86_64 Linux.
Okokugcina, uma unesithakazelo sokufunda okwengeziwe, ungathola imininingwane kusixhumanisi esilandelayo.
Ungayifaka kanjani i-Meson ku-Linux?
Kulabo abanentshisekelo yokukwazi ukufaka lolu hlelo lokwakha ohlelweni lwabo, bangakwenza lokho ngokulandela imiyalo esibelana ngayo ngezansi.
Kufanele bazi ukuthi i-Meson iyatholakala ku-PyPi, ngakho-ke ingafakwa ngomyalo:
pip3 install meson
Njengenothi, kufanele wazi ukuthi umyalo oqondile wokuthayipha ukufaka ipayipi ungahluka phakathi kwezinhlelo, ngakho-ke kunconywa ukuthi usebenzise inguqulo ye-Python 3 yepayipi.