Ko te tuku punaha hanga a Meson 0.52

whakaputaina hanga tuku pūnaha Meson 0.52, ka whakamahia hei hanga kaupapa penei i te X.Org Server, Mesa, Lighttpd, systemd, GStreamer, Wayland, GNOME me GTK+. Ko te waehere Meson kua tuhia ki te Python me tukua kua raihanatia i raro i te Apache 2.0.

Ko te whainga matua o te whanaketanga Meson ko te whakarato i te tere tere o te tukanga huihuinga me te waatea me te ngawari o te whakamahi. Engari i te taputapu hanga, ka whakamahia e te hanga taunoa te kete taputapu Ninja, engari ka taea ano te whakamahi i etahi atu tuara, penei i te xcode me te VisualStudio. Kei roto i te punaha he kaikawe ti'aturi i roto i te papa-maha ka taea e koe te whakamahi i a Meson ki te hanga kete mo nga tohatoha. Ko nga ture huihuinga kua tohua i roto i te reo-a-rohe kua ngawari, he tino panui me te maarama ki te kaiwhakamahi (i runga i te whakaaro o nga kaituhi, me noho te kaiwhakawhanake i te wa iti ki te tuhi ture).

Tautokona whakawhiti-whakahiato me te hanga i runga i te Linux, Illumos/Solaris, FreeBSD, NetBSD, DragonFly BSD, Haiku, macOS me Windows ma te whakamahi i te GCC, Clang, Visual Studio me etahi atu kaitoi. Ka taea te hanga kaupapa i roto i nga reo maha, tae atu ki te C, C++, Fortran, Java me Rust. Ka tautokohia te aratau hanga taapiri, ko nga waahanga anake e pa ana ki nga huringa i mahia mai i te hanganga whakamutunga ka hangaia ano. Ka taea te whakamahi i a Meson ki te whakaputa i nga hanga tukurua, na te whakahaere i te hanga i roto i nga taiao rereke ka puta te whakaputanga o nga konae mahi rite tonu.

Main nga mahi auaha Meson 0.52:

  • Kua taapirihia he tautoko whakamatautau mo te Webassembly ma te whakamahi i a Emscripten hei kaikohi;
  • Ko te tautoko mo nga papaaho Illumos me Solaris kua tino pai ake me te kawe ki te ahua mahi;
  • Ka whakarite kia waihotia nga tuhinga whaka-a-ao-ao-a-pukapuka ki te kore e whakauruhia e te punaha te kete taputapu gettext (i mua, i whakaatu he hapa i te wa e whakamahi ana i te waahanga i18n ki nga punaha kaore he gettext);
  • Kua pai ake te tautoko mo nga whare pukapuka pateko. He maha nga raruraru i te wa e whakamahi ana i nga whare pukapuka pateko kua whakakorehia kua whakatauhia;
  • Kua taapirihia te kaha ki te whakamahi papakupu ki te tautapa i nga taurangi taiao. I te wa e karanga ana i te taiao(), ka taea te tohu i te huānga tuatahi hei papakupu e tautuhia ai nga taurangi taiao ki te puka matua/uara. Ka whakawhitia enei taurangi ki te environment_object me te mea i whakaritea takitahi ma te tikanga huinga(). Ka taea hoki te tuku papakupu inaianei ki nga momo mahi e tautoko ana i te tohenga "env";
  • He mahi taapiri "runtarget alias_target(target_name, dep1, ...)" ka waihanga i te taumata hanga taumata tuatahi hou ka taea te karanga me te tuara hanga kua tohua (hei tauira "ninja target_name"). Ko tenei whaainga hanga kaore e whakahaere i nga whakahau, engari ka whakarite kia hangaia nga whakawhirinakitanga katoa;
  • Whakahohehia te tautuhinga aunoa o te taurangi taiao PKG_CONFIG_SYSROOT_DIR i te wa o te whakahiato-whakahiato mehemea he tautuhinga sys_root kei roto i te waahanga "[ahuatanga]";
  • Kua taapirihia te whiringa "--gdb-path" hei whakatau i te ara ki te kaiwhakairo GDB ina tohua te "--gdb testname" hei whakahaere i te GDB me te tuhinga whakamatautau kua tohua;
  • Kua taapirihia te kitenga aunoa o te whainga hanga clang-tidy ki te whakahaere i tenei rarangi me nga konae puna katoa. Ka waihangahia te whaainga mena kei te waatea te clang-tidy i roto i te punaha me te konae ".clang-tidy" (ranei "_clang-tidy") kua tautuhia ki te pakiaka kaupapa;
  • Kua taapirihia te whakawhirinakitanga('poraka') hei whakamahi i te toronga Clang poraka;
  • Ko nga tirohanga hono me te whakahiato kua wehea, ka taea te whakamahi i nga huinga rereke o nga kaitoro me nga hononga;
  • Kua taapirihia te tikanga katoa_dependencies() ki nga ahanoa TautuhiMaori hei taapiri atu ki te tikanga_punapuna() katoa;
  • I roto i te run_project_tests.py, kua taapirihia te "--anake" hei whakahaere i nga whakamatautau (hei tauira, "python run_project_tests.py —only fortran python3");
  • Ko te mahi find_program() inaianei kua whai mana ki te rapu mo nga putanga e hiahiatia ana o tetahi papatono (ka whakatauhia te putanga ma te whakahaere i te papatono me te "-putanga" kōwhiringa);
  • Hei whakahaere i te kaweake o nga tohu, kua taapirihia te whiringa vs_module_defs ki te mahi shared_module(), he rite ki te shared_library();
  • Kua whakawhānuihia te kōwae kconfig hei tautoko i te configure_file() mo te tautuhi i te konae whakauru;
  • Kua taapirihia te kaha ki te tautuhi i nga konae whakauru maha mo nga kaihautu "whakahau:" ki te configure_file();
  • Ko te whakahau "dist" mo te hanga purongo kua nekehia ki te waahanga o nga whakahau taumata tuatahi (i mua i herea te whakahau ki te ninja). Kua taapirihia te whiringa "--formats" hei tautuhi i nga momo purongo ka mahia (hei tauira,
    "meson dist -formats=xztar,zip").

Source: opennet.ru

Tāpiri i te kōrero