Sgaoileadh siostam togail Meson 1.3

Chaidh siostam togail Meson 1.3.0 a leigeil ma sgaoil, a tha air a chleachdadh gus pròiseactan a thogail leithid X.Org Server, Mesa, Lighttpd, systemd, GStreamer, Wayland, GNOME agus GTK. Tha còd Meson sgrìobhte ann am Python agus tha e ceadaichte fo chead Apache 2.0.

Is e prìomh amas leasachadh Meson astar àrd a thoirt don phròiseas cruinneachaidh còmhla ri goireasachd agus furasta a chleachdadh. An àite a bhith a’ dèanamh goireas, bidh an inneal Ninja air a chleachdadh gu bunaiteach nuair a thathar a’ togail, ach faodar backends eile leithid xcode agus VisualStudio a chleachdadh cuideachd. Tha inneal-làimhseachaidh eisimeileachd ioma-àrd-ùrlar togte aig an t-siostam a leigeas leat Meson a chleachdadh gus pasganan a thogail airson sgaoilidhean. Tha riaghailtean co-chruinneachaidh air an sònrachadh ann an cànan nas sìmplidhe a tha sònraichte don raon, a tha gu math furasta a leughadh agus furasta a thuigsinn don neach-cleachdaidh (mar a tha na h-ùghdaran an dùil, bu chòir don leasaiche ùine a chaitheamh a’ sgrìobhadh riaghailtean).

A’ toirt taic do thar-chruinneachadh agus togail air Linux, Illumos / Solaris, FreeBSD, NetBSD, DragonFly BSD, Haiku, macOS agus Windows a’ cleachdadh GCC, Clang, Visual Studio agus luchd-cruinneachaidh eile. Tha e comasach pròiseactan a thogail ann an grunn chànanan prògramaidh, nam measg C, C ++, Fortran, Java agus Rust. Thathas a’ toirt taic do mhodh togail mean air mhean, anns nach tèid ach pàirtean co-cheangailte gu dìreach ri atharrachaidhean a chaidh a dhèanamh bhon togail mu dheireadh ath-thogail. Faodar Meson a chleachdadh gus togalaichean ath-aithris a ghineadh, anns am bi ruith an togail ann an àrainneachdan eadar-dhealaichte a’ leantainn gu bhith a’ gineadh faidhlichean a ghabhas coileanadh gu tur co-ionann.

Prìomh innleachdan Meson 1.3:

  • Chuir sinn an roghainn “werror: true” ris na dòighean sgrùdaidh compiler compiler.compiles(), compiler.links() agus compiler.run(), a bhios a’ làimhseachadh rabhaidhean cruinneachaidh mar mhearachdan (faodar a chleachdadh gus dèanamh cinnteach gu bheil an còd air a thogail às aonais rabhaidhean ).
  • Modh has_define air a chur ris gus sgrùdadh a dhèanamh air mìneachadh samhla le preprocessor.
  • Chaidh am paramadair macro_name a chuir ris a’ ghnìomh configure_file (), a’ cur dìon macro airson ceanglaichean dùbailte tro “#include” (“cuir a-steach geàrdan”), air a dhealbhadh ann an stoidhle macros sa chànan C (a’ sìmpleachadh cruthachadh faidhlichean rèiteachaidh le fiùghantach ainmean macro).
  • Chaidh cruth toraidh ùr a chuir ri configure_file () - JSON (“output_format: json”).
  • Chuir sinn ris a’ chomas liostaichean de luachan a chleachdadh ris na paramadairean c_std agus cpp_std (mar eisimpleir, “default_options: ‘c_std=gnu11,c11′’).
  • Ann am modalan a bhios a’ cleachdadh CustomTarget gus faidhlichean a phròiseasadh, chaidh an comas toradh teachdaireachdan a ghnàthachadh leis a’ ghoireas ninja a chur ris.
  • Cha deach an “jar” build_target a mholadh agus thathas a’ moladh a’ ghairm “jar()” na àite.
  • Chaidh am paramadair 'env' a chur ris an dòigh gineadair.
  • Nuair a bhios tu a’ sònrachadh ainmean targaid togail co-cheangailte ri executables, tha cead aig iar-leasachain leithid “executable (‘foo’, ‘main.c’, name_suffix: ‘bar’)” gnìomhan a bharrachd a ghineadh san aon eòlaire.
  • Chuir sinn am paramadair “vs_module_defs” ris a’ ghnìomh so-ghnìomhaichte () gus faidhle def a chleachdadh a mhìnicheas liosta nan gnìomhan a chaidh a chur gu shared_module().
  • Chuir sinn paramadair ‘default_options’ ris a’ ghnìomh find_program() gus na roghainnean bunaiteach a shuidheachadh airson fo-phròiseact tuiteam air ais.
  • Modh fs.relative_to() air a chur ris, a thilleas an t-slighe dàimheach airson a’ chiad argamaid, an coimeas ris an dàrna fear, ma tha a’ chiad shlighe ann. Mar eisimpleir, "fs.relative_to ('/ ro-leasachan/lib', '/ ro-leasachan/bin') == '../lib')".
  • Chaidh am paramadair following_symlinks a chur ris na gnìomhan install_data(), install_headers() agus install_subdir(); nuair a thèid a shuidheachadh, leanar ceanglaichean samhlachail.
  • Chaidh paramadair “lìonadh” a chuir ris an dòigh int.to_string () gus an sreang a lìonadh mean air mhean le prìomh neamhan. Mar eisimpleir, le bhith a’ gairm teachdaireachd (n.to_string (lìonadh: 3)) airson n=4 bheir sin an sreang “004”.
  • Chaidh targaid ùr a chur ris, clang-tidy-fix, a tha a’ sònrachadh ruith a’ ghoireas clang-tidy leis a’ bhratach “-fix”.
  • Chaidh an comas an iar-leasachan (TARGET_SUFFIX) den targaid cruinneachaidh ([PATH_TO_TARGET/]TARGET_NAME.TARGET_SUFFIX[:TARGET_TYPE]) a chur ris an àithne cruinneachaidh.
  • Caochladair àrainneachd air a chur ris MESON_PACKAGE_CACHE_DIR gus faighinn thairis air an t-slighe gu tasgadan a’ phacaid (subprojects/packagecache), mar eisimpleir, a’ leigeil leat tasgadan co-roinnte a chleachdadh ann an grunn phròiseactan.
  • Chaidh òrdugh “meson setup --clearcache” a chur ris gus an tasgadan leantainneach a ghlanadh.
  • Chaidh taic airson am prìomh fhacal “riatanach” a chur ris a h-uile modh sgrùdaidh cruinneachaidh “has_*”, mar eisimpleir, an àite “sert (cc.has_function (‘some_function’))" faodaidh tu a-nis “cc.has_function (‘some_function’ a shònrachadh , a dhìth: fìor)”.
  • Chaidh prìomh fhacal ùr, rust_abi, a chur ris na gnìomhan shared_library(), static_library(), library(), agus shared_module(), a bu chòir a chleachdadh an àite an rust_crate_type nach deach a mholadh.

Source: fosgailtenet.ru

Cuir beachd ann