Meson build sistema rilaxx 1.0

Ġie ppubblikat ir-rilaxx tas-sistema tal-bini Meson 1.0.0, 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 1.0:

  • Il-modulu għall-proġetti tal-bini bil-lingwa Rust ġie ddikjarat stabbli. Dan il-modulu jintuża fil-proġett Mesa biex jinbnew komponenti miktuba bir-Rut.
  • Appoġġjata mill-biċċa l-kbira tal-funzjonijiet tal-iċċekkjar tal-kompilatur, l-għażla tal-prefiss timplimenta l-abbiltà li timmaniġġja arrays minbarra kordi. Pereżempju, issa tista' tispeċifika: cc.check_header('GL/wglew.h', prefiss : ['#include ', '#inkludi '])
  • Argument ġdid "--workdir" ġie miżjud biex jippermettilek li tegħleb id-direttorju tax-xogħol. Pereżempju, biex tuża d-direttorju attwali minflok id-direttorju tax-xogħol, tista 'taħdem: meson devenv -C builddir --workdir .
  • Operaturi ġodda "fi" u "mhux fi" huma proposti għad-determinazzjoni tal-okkorrenza ta 'substring fi string, simili għall-kontroll disponibbli qabel għall-okkorrenza ta' element f'array jew dizzjunarju. Pereżempju: fs = import('fs') if 'xi ħaġa' f'fs.read('somefile') # Veru endif
  • Miżjud "warning-level = kollox" għażla biex tixgħel l-output tat-twissijiet kollha tal-kompilaturi disponibbli (f'clang u MSVC juża -Weverything u /Wall, u fil-GCC twissijiet separati huma inklużi, bejn wieħed u ieħor li jikkorrispondu għall-mod -Weverything f'clang).
  • Il-metodu rust.bindgen jimplimenta l-abbiltà li jipproċessa l-argument "dipendenzi" biex jgħaddi mogħdijiet għal dipendenzi li għandhom jiġu pproċessati mill-kompilatur.
  • Il-funzjoni java.generate_native_headers ġiet deprecata u ssemmiet mill-ġdid għal java.native_headers biex taqbel mal-istil tal-ismijiet tal-funzjoni ġenerali ta' Meson.

Sors: opennet.ru

Żid kumment