Meson Build System Verëffentlechung 1.0

D'Verëffentlechung vum Meson 1.0.0 Build System gouf publizéiert, wat benotzt gëtt fir Projeten wéi X.Org Server, Mesa, Lighttpd, systemd, GStreamer, Wayland, GNOME a GTK ze bauen. De Meson Code ass am Python geschriwwen an ass ënner der Apache 2.0 Lizenz lizenzéiert.

De Schlësselentwécklungsziel vu Meson ass e High-Speed-Versammlungsprozess kombinéiert mat Komfort an einfacher Benotzung. Amplaz ze maachen, benotzt de Build den Ninja Toolkit als Standard, awer aner Backends wéi xcode a VisualStudio kënnen och benotzt ginn. De System huet en agebaute Multi-Plattform Ofhängegkeet Handler deen Iech erlaabt Meson ze benotzen fir Packagen fir Verdeelungen ze bauen. Assemblée Regelen sinn an enger vereinfacht Domain-spezifesch Sprooch gesat, si gutt liesbar a verständlech fir de Benotzer (no der Iddi vun den Auteuren, soll den Entwéckler e Minimum vun Zäit Schreiwen Regelen verbréngen).

Cross-compiling a bauen op Linux, Illumos/Solaris, FreeBSD, NetBSD, DragonFly BSD, Haiku, macOS a Windows mat GCC, Clang, Visual Studio an aner Compilere gëtt ënnerstëtzt. Et ass méiglech Projeten a verschiddene Programméierungssproochen ze bauen, dorënner C, C++, Fortran, Java a Rust. En inkrementelle Baumodus gëtt ënnerstëtzt, an deem nëmme Komponenten, déi direkt mat Ännerungen, déi zënter dem leschte Bau gemaach goufen, opgebaut ginn. Meson ka benotzt ginn fir widderhuelend Builds ze generéieren, wou de Build a verschiddenen Ëmfeld laafen komplett identesch Ausféierbar resultéiert.

Haaptinnovatiounen vum Meson 1.0:

  • E Modul fir Bauprojeten an der Rust Sprooch gouf stabil deklaréiert. Dëse Modul gëtt am Mesa Projet benotzt fir Komponenten ze bauen déi a Rust geschriwwe sinn.
  • D'Präfixoptioun, ënnerstëtzt an de meeschte Compiler Kontrollfunktiounen, bitt d'Fäegkeet fir Arrays zousätzlech zu Strings ze handhaben. Zum Beispill kënnt Dir elo uginn: cc.check_header('GL/wglew.h', Präfix: ['#include ', '# enthalen '])
  • Nei Argument "--workdir" bäigefüügt fir den Aarbechtsverzeechnes z'iwwerschreiden. Zum Beispill, fir den aktuellen Verzeechnes amplaz vum Aarbechtsverzeechnes ze benotzen, kënnt Dir lafen: meson devenv -C builddir --workdir .
  • Nei Bedreiwer "an" an "net an" goufen proposéiert fir d'Optriede vun engem Substring an enger String ze bestëmmen, ähnlech wéi déi virdru verfügbare Scheck fir d'Optriede vun engem Element an engem Array oder Wierderbuch. Zum Beispill: fs = import('fs') wann 'eppes' an fs.read('somefile') # True endif
  • D'Optioun "Warnungsniveau = alles" bäigefüügt, déi den Ausgang vun all verfügbare Compiler Warnungen ausschalt (am Clang an MSVC benotzt et -Weverything an /Wall, an am GCC Warnungen sinn separat abegraff, ongeféier entspriechend dem -Weverything Modus am Klang).
  • D'rust.bindgen Method implementéiert d'Fäegkeet fir d'Argument "Ofhängegkeeten" ze handhaben fir Weeër un Ofhängegkeeten ze passéieren déi vum Compiler veraarbecht ginn.
  • D'Java.generate_native_headers Funktioun gouf ofgeschaaft an ëmbenannt op java.native_headers fir dem Meson säi gemeinsame Funktiounbenennungsstil ze konforméieren.

Source: opennet.ru

Setzt e Commentaire