Meson byggja kerfisútgáfu 0.52

birt smíða kerfisútgáfu Meson 0.52, sem er notað til að byggja upp verkefni eins og X.Org Server, Mesa, Lighttpd, systemd, GStreamer, Wayland, GNOME og GTK+. Meson kóðinn er skrifaður í Python og til staðar leyfi samkvæmt Apache 2.0.

Lykilmarkmið Meson þróunar er að veita háhraða í samsetningarferlinu ásamt þægindum og auðveldri notkun. Í stað þess að gera tólið notar sjálfgefna byggingin verkfærakistuna Ninja, en það er líka hægt að nota aðra bakenda, eins og xcode og VisualStudio. Kerfið er með innbyggðan fjölvettvangsfíkn sem gerir þér kleift að nota Meson til að smíða pakka fyrir dreifingar. Samsetningarreglur eru tilgreindar á einfölduðu lénssértæku tungumáli, eru mjög læsilegar og skiljanlegar fyrir notandann (eins og höfundarnir ætlast til, ætti verktaki að eyða að minnsta kosti tíma í að skrifa reglur).

Styður krosssamstilla og byggja á Linux, Illumos/Solaris, FreeBSD, NetBSD, DragonFly BSD, Haiku, macOS og Windows með GCC, Clang, Visual Studio og öðrum þýðendum. Hægt er að byggja verkefni á ýmsum forritunarmálum, þar á meðal C, C++, Fortran, Java og Rust. Stuðningur við stigvaxandi byggingu er studdur, þar sem aðeins íhlutir sem tengjast beint breytingum sem gerðar hafa verið frá síðustu byggingu eru endurbyggðir. Meson er hægt að nota til að búa til endurteknar byggingar, þar sem keyrsla á byggingunni í mismunandi umhverfi leiðir til myndunar alveg eins keyranlegra skráa.

Helstu nýjungar Meson 0.52:

  • Bætti við tilraunastuðningi fyrir Webassembly með því að nota Emscripten sem þýðanda;
  • Stuðningur við Illumos og Solaris pallana hefur verið verulega bættur og færður í gott ástand;
  • Tryggir að gettext-undirstaða alþjóðavæðingarforskriftir séu hunsaðar ef kerfið er ekki með gettext verkfærakistuna uppsett (áður birtist villa þegar i18n einingin var notuð á kerfum án gettext);
  • Bættur stuðningur við kyrrstæð bókasöfn. Mörg vandamál við notkun óuppsettra kyrrstæðra bókasöfn hafa verið leyst;
  • Bætti við möguleikanum á að nota orðabækur til að úthluta umhverfisbreytum. Þegar hringt er í umhverfi() er nú hægt að tilgreina fyrsta þáttinn sem orðabók þar sem umhverfisbreytur eru skilgreindar á lykla/gildi formi. Þessar breytur verða fluttar yfir á environment_object eins og þær væru stilltar fyrir sig með set() aðferðinni. Nú er einnig hægt að senda orðabækur í ýmsar aðgerðir sem styðja "env" rök;
  • Bætti við aðgerðinni „runtarget alias_target(target_name, dep1, ...)“ sem býr til nýtt fyrsta stigs byggingarmark sem hægt er að kalla með völdum byggingarbakenda (t.d. „ninja target_name“). Þetta smíðamark keyrir engar skipanir, en tryggir að allar ósjálfstæðir séu byggðar;
  • Virkjað sjálfvirka stillingu á PKG_CONFIG_SYSROOT_DIR umhverfisbreytunni við krosssamsetningu ef það er sys_root stilling í hlutanum „[eiginleikar]“;
  • Bætt við "--gdb-path" valmöguleika til að ákvarða slóðina að GDB aflúsara þegar tilgreindur er "--gdb testname" valmöguleikinn til að keyra GDB með tilgreindu prófunarforskriftinni;
  • Bætti við sjálfvirkri uppgötvun á klang-snyrtilegu byggingarmarkmiðinu til að keyra þennan linter með öllum upprunaskrám. Markmiðið er búið til ef clang-tidy er tiltækt í kerfinu og „.clang-tidy“ (eða „_clang-tidy“) skráin er skilgreind í verkefnisrótinni;
  • Bætt við ósjálfstæði ('blokkir') til notkunar í Clang viðbótinni Blokkir;
  • Tengi- og þýðandasýnin eru aðskilin, sem gerir kleift að nota mismunandi samsetningar þýðenda og tengiliða;
  • Bætti all_dependencies() aðferðinni við SourceSet hluti til viðbótar við all_sources() aðferðina;
  • Í run_project_tests.py hefur „--only“ valmöguleikanum verið bætt við til að keyra próf (til dæmis „python run_project_tests.py —only fortran python3“);
  • Find_program() aðgerðin hefur nú getu til að leita aðeins að nauðsynlegum útgáfum af forriti (útgáfan er ákvörðuð með því að keyra forritið með "-version" valkostinum);
  • Til að stjórna útflutningi tákna hefur vs_module_defs valmöguleikinn verið bætt við shared_module() fallið, svipað og shared_library();
  • Kconfig einingin hefur verið stækkuð til að styðja configure_file() til að tilgreina inntaksskrá;
  • Bætti við hæfileikanum til að tilgreina margar inntaksskrár fyrir „skipunar:“ meðhöndlara við configure_file();
  • „Dist“ skipunin til að búa til skjalasafn hefur verið færð í flokk fyrsta stigs skipana (áður var skipunin bundin við ninja). Bætt við "--snið" valmöguleika til að skilgreina tegundir skjalasafna sem á að búa til (td,
    "meson dist -formats=xztar,zip").

Heimild: opennet.ru

Bæta við athugasemd