Ukukhishwa kohlelo lokuhlanganisa lwe-Meson 0.58. Iphrojekthi yokudala ukusetshenziswa kwe-Meson ngolimi C

Isistimu yokwakha ye-Meson 0.58 isikhishiwe, esetshenziselwa ukwakha amaphrojekthi afana ne-X.Org Server, Mesa, Lighttpd, systemd, GStreamer, Wayland, GNOME kanye ne-GTK. Ikhodi ye-Meson ibhalwe nge-Python futhi ilayisensi ngaphansi kwelayisensi ye-Apache 2.0.

Umgomo oyinhloko wokuthuthukiswa kwe-Meson ukuhlinzeka ngesivinini esiphezulu senqubo yokuhlanganisa kuhlanganiswe nokunethezeka nokusebenziseka kalula. Esikhundleni se-make utility, ikhithi yamathuluzi ye-Ninja isetshenziswa ngokuzenzakalelayo uma yakha, kodwa ezinye izinto ezingemuva njenge-xcode ne-VisualStudio nazo zingasetshenziswa. Uhlelo lunesibambi sokuncika sezingxenyekazi eziningi esakhelwe ngaphakathi esikuvumela ukuthi usebenzise i-Meson ukuze wakhe amaphakheji okusabalalisa. Imithetho yomhlangano icaciswe ngolimi olwenziwe lula oluqondene nesizinda, ifundeka kakhulu futhi iqondakala kumsebenzisi (njengoba kuhloswe ababhali, umthuthukisi kufanele asebenzise ubuncane besikhathi ebhala imithetho).

Isekela ukuhlanganiswa nokwakhiwa kwe-Linux, i-Illumos/Solaris, i-FreeBSD, i-NetBSD, i-DragonFly BSD, i-Haiku, i-macOS ne-Windows isebenzisa i-GCC, i-Clang, i-Visual Studio nezinye izihlanganisi. Kungenzeka ukwakha amaphrojekthi ngezilimi ezihlukahlukene zokuhlela, okuhlanganisa i-C, C++, Fortran, Java neRust. Imodi yokwakha ekhuphukayo iyasekelwa, lapho kuphela izingxenye ezihlobene ngokuqondile nezinguquko ezenziwe kusukela ekwakhiweni kokugcina zakhiwa kabusha. I-Meson ingasetshenziswa ukukhiqiza izakhiwo eziphindaphindwayo, lapho ukusebenzisa isakhiwo ezindaweni ezihlukene kubangela ukukhiqizwa kwamafayela asebenzisekayo afana ngokuphelele.

Ukuqanjwa okuyinhloko kwe-Meson 0.58:

  • I-Meson inemisebenzi yokufometha yeyunithi yezinhlamvu eyakhelwe ngaphakathi. Esikhundleni sokubiza indlela yefomethi, manje usungakwazi ukufaka amanani esikhundleni ngokuqondile, isibonelo, esikhundleni sokuthi β€œ'Iyunithi yezinhlamvu @0@ ezofomethwa @1@'.format(n, m)" ungacacisa ngokushesha okuthi β€œf' Iyunithi yezinhlamvu ethi @n@ ezofomethwa @ m@'".
  • Indlela "yokubuyisela" yengezwe ezintweni zeyunithi yezinhlamvu ukuze kwenziwe umsebenzi wokushintsha uchungechunge oluncane olulodwa lufake olunye, isibonelo, "s = s.replace('aaa', 'bbb')."
  • Kwengezwe umsebenzi othi "ububanzi(qala, misa[, isinyathelo])" ukuze kubuyiselwe into engasetshenziswa ku-loop yangaphambili, njengokuthi "foreach i : range(15)".
  • Indlela ye-meson.add_devenv() isetshenzisiwe, ekuvumela ukuthi wengeze into yemvelo() ukuze usethe okuguquguqukayo kwendawo lapho usebenzisa umyalo we-"meson devenv", isibonelo, ukusetha okuguquguqukayo kwemvelo ngendlela eya kuhla lwemibhalo lwama-plugin.
  • Ezindaweni zokuthuthukiswa, kuhlongozwa umyalo omusha: β€œmeson devenv -C builddir [], okwenza kube nokwenzeka ukusebenzisa umyalo endaweni elungiselelwe ukwethula amaphrojekthi kusuka kuhla lwemibhalo yokwakha (ngaphandle kokufakwa).
  • Ngokuzenzakalelayo, inketho ethi "-pipe" iyekwa ukudluliswa lapho kusetshenziswa bonke abahlanganisi abasekelwayo.
  • Ukushayela i-meson.add_dist_script() kusuka kumaphrojekthi angaphansi kuvunyelwe.
  • Kunikezwe amandla okusebenzisa izindlela ze-append() kanye ne-prepend() izikhathi eziningi endaweni efanayo() entweni.
  • Iphutha() umsebenzi uvumela ukungqubuzana okungaphezu kweyodwa, kuhlukaniswe yisikhala (esifana nesixwayiso() kanye nomlayezo()).
  • Kwengezwe inketho ethi "--skip-subprojects" ukuze weqe ukufakwa kwamaphrojekthi angaphansi.

Ngokwehlukana, singaqaphela iphrojekthi ye-Boson, ehloselwe ukudala ukuqaliswa okuphathekayo nokulula kolimi lweskripthi somhlangano we-Meson, olubhalwe ngo-C esikhundleni sePython. Iphrojekthi isesigabeni sokuqala sokuthuthuka futhi ayikakalungeli ukuhlanganiswa okuphelele kwamaphrojekthi asebenzayo. Ikhodi ilayisensi ngaphansi kwe-GPLv3 (i-Python Meson yasekuqaleni ilayisensi ngaphansi kwelayisensi ye-Apache 2.0).

Source: opennet.ru

Engeza amazwana