Rilaxx tas-sistema ta 'assemblaġġ Meson 0.58. Proġett biex tinħoloq implimentazzjoni ta 'Meson fil-lingwa Ċ

Ġie ppubblikat ir-rilaxx tas-sistema tal-bini Meson 0.58, li tintuża biex jinbnew proġetti bħal X.Org Server, Mesa, Lighttpd, systemd, GStreamer, Wayland, GNOME u GTK. Il-kodiċi Meson huwa miktub f'Python u huwa liċenzjat taħt il-liċenzja Apache 2.0.

L-għan ewlieni ta 'żvilupp ta' Meson huwa li jipprovdi proċess ta 'assemblaġġ ta' veloċità għolja flimkien ma 'konvenjenza u faċilità ta' użu. Minflok tagħmel, il-bini juża l-għodda Ninja awtomatikament, iżda backends oħra bħal xcode u VisualStudio jistgħu jintużaw ukoll. Is-sistema għandha mmaniġġjar tad-dipendenza multi-pjattaforma mibni li jippermettilek tuża Meson biex tibni pakketti għad-distribuzzjonijiet. Ir-regoli tal-assemblaġġ huma stabbiliti f'lingwa simplifikata speċifika għad-dominju, jinqraw tajjeb u jinftiehmu mill-utent (skond l-idea tal-awturi, l-iżviluppatur għandu jqatta 'minimu ta' ħin jikteb ir-regoli).

Il-kumpilazzjoni inkroċjata u l-bini fuq Linux, Illumos/Solaris, FreeBSD, NetBSD, DragonFly BSD, Haiku, macOS u Windows bl-użu ta 'GCC, Clang, Visual Studio u kompilaturi oħra huma appoġġjati. Huwa possibbli li jinbnew proġetti f'diversi lingwi ta' programmar, inklużi C, C++, Fortran, Java u Rust. Modalità ta 'bini inkrementali hija appoġġjata, li fiha biss komponenti li huma direttament relatati mal-bidliet li saru mill-aħħar bini huma mibnija mill-ġdid. Meson jista 'jintuża biex jiġġenera bini ripetibbli, fejn it-tħaddim tal-bini f'ambjenti differenti jirriżulta f'eżekutibbli kompletament identiċi.

Innovazzjonijiet ewlenin ta 'Meson 0.58:

  • Meson għandu operazzjonijiet ta 'ifformattjar ta' string inkorporati. Minflok ma ssejjaħ il-metodu tal-format, issa tista' tissostitwixxi l-valuri direttament, pereżempju, minflok "'String @0@ li għandha tiġi fformattjata @1@'.format(n, m)" tista' immedjatament tispeċifika "f' Stringa @n@ għandha tiġi fformattjata @ m@'".
  • Ġie miżjud metodu ta’ “sostituzzjoni” ma’ oġġetti string biex iwettaq l-operazzjoni ta’ sostituzzjoni ta’ substring ma’ ieħor, pereżempju, “s = s.replace(‘aaa’, ‘bbb’).”
  • Miżjud il-funzjoni "range(start, stop[, step])" biex tirritorna oġġett li jista' jintuża f'foreach loop, bħal "foreach i : range(15)".
  • Il-metodu meson.add_devenv() ġie implimentat, li jippermettilek li żżid oġġett ambjentali() biex tissettja varjabbli tal-ambjent meta tuża l-kmand "meson devenv", pereżempju, biex tissettja varjabbli tal-ambjent bit-triq għad-direttorju tal-plugins.
  • Għal ambjenti ta 'żvilupp, ġie propost kmand ġdid: “meson devenv -C builddir [], li jagħmilha possibbli li titħaddem il-kmand f'ambjent konfigurat biex iniedi proġetti mid-direttorju tal-bini (mingħajr installazzjoni).
  • B'mod awtomatiku, l-għażla "-pipe" titwaqqaf meta tħaddem il-kompilaturi kollha appoġġjati.
  • Is-sejħa ta' meson.add_dist_script() minn sottoproġetti hija permessa.
  • Ipprovda l-abbiltà li tħaddem il-metodi append() u prepend() diversi drabi fuq l-istess oġġett ambjentali().
  • Il-funzjoni error() tippermetti aktar minn argument wieħed, separati bi spazju (simili għal warning() u message()).
  • Miżjud għażla "--skip-subprojects" biex taqbeż b'mod selettiv l-installazzjoni tas-sottoproġetti.

Separatament, nistgħu ninnotaw il-proġett Boson, immirat lejn il-ħolqien ta 'implimentazzjoni portabbli u sempliċi tal-lingwa tal-kitba tal-assemblaġġ Meson, miktuba f'C minflok Python. Il-proġett għadu fl-istadju inizjali ta 'żvilupp u għadu mhux lest għall-assemblaġġ sħiħ ta' proġetti ta 'ħidma. Il-kodiċi huwa liċenzjat taħt GPLv3 (il-Python Meson oriġinali huwa liċenzjat taħt il-liċenzja Apache 2.0).

Sors: opennet.ru

Żid kumment