Hoʻokuʻu ʻia ʻo Meson build system 0.52

paʻi ʻia kūkulu hoʻokuʻu ʻōnaehana Meson 0.52, i hoʻohana ʻia e kūkulu i nā papahana e like me X.Org Server, Mesa, Lighttpd, systemd, GStreamer, Wayland, GNOME a me GTK+. Ua kākau ʻia ka code Meson ma Python a hoʻolako ʻia laikini ma lalo o Apache 2.0.

ʻO ka pahuhopu nui o ka hoʻomohala ʻana o Meson ʻo ia ka hāʻawi ʻana i ka wikiwiki kiʻekiʻe o ke kaʻina hana hui i hui pū ʻia me ka maʻalahi a me ka maʻalahi o ka hoʻohana. Ma kahi o ka make utility, hoʻohana ka hale paʻamau i ka hāmeʻa Ninja, akā hiki nō ke hoʻohana i nā hope ʻē aʻe, e like me xcode a me VisualStudio. Loaʻa i ka ʻōnaehana kahi mea hoʻohana hilinaʻi multi-platform e hiki ai iā ʻoe ke hoʻohana iā Meson e kūkulu i nā pūʻolo no ka hāʻawi ʻana. Hōʻike ʻia nā lula hui ma kahi ʻōlelo kikoʻī domain maʻalahi, hiki ke heluhelu ʻia a hiki ke hoʻomaopopo ʻia e ka mea hoʻohana (e like me ka manaʻo o nā mea kākau, pono ka mea hoʻomohala e hoʻolilo i ka liʻiliʻi o ka manawa kākau i nā lula).

Kākoʻo ʻia cross-compile a kūkulu ʻia ma Linux, Illumos/Solaris, FreeBSD, NetBSD, DragonFly BSD, Haiku, macOS a me Windows me ka hoʻohana ʻana iā GCC, Clang, Visual Studio a me nā mea hoʻohui ʻē aʻe. Hiki ke kūkulu i nā papahana ma nā ʻōlelo papahana like ʻole, me C, C++, Fortran, Java a me Rust. Kākoʻo ʻia ke ʻano hana hoʻonui, kahi i kūkulu hou ʻia ai nā ʻāpana pili pono i nā loli i hana ʻia mai ka hana hope ʻana. Hiki ke hoʻohana ʻia ʻo Meson no ka hana ʻana i nā kūkulu hou ʻana, kahi e holo ai ke kūkulu ʻana i nā wahi like ʻole e hopena i ka hana ʻana o nā faila hiki ke hoʻokō ʻia.

ka papa kuhikuhiE nā mea hou Meson 0.52:

  • Hoʻohui i ke kākoʻo hoʻokolohua no Webassembly me ka hoʻohana ʻana iā Emscripten ma ke ʻano he mea hōʻuluʻulu;
  • Ua hoʻomaikaʻi maikaʻi ʻia ke kākoʻo no nā kahua Illumos a me Solaris a lawe ʻia i ke kūlana hana;
  • E hōʻoia i ka mālama ʻole ʻia ʻana o nā palapala hoʻopaʻa honua e pili ana i ka gettext inā ʻaʻole i hoʻokomo ʻia ka hāmeʻa gettext i ka ʻōnaehana (ma mua, ua hōʻike ʻia kahi hewa i ka wā e hoʻohana ai i ka module i18n ma nā ʻōnaehana me ka ʻole gettext);
  • Hoʻomaikaʻi i ke kākoʻo no nā hale waihona puke paʻa. Ua hoʻoholo ʻia nā pilikia he nui i ka wā e hoʻohana ai i nā waihona static uninstalled;
  • Hoʻohui ʻia ka hiki ke hoʻohana i nā puke wehewehe ʻōlelo no ka hāʻawi ʻana i nā ʻano like ʻole. Ke kāhea ʻia ʻo environment(), hiki ke kuhikuhi ʻia ka mea mua ma ke ʻano he puke wehewehe ʻōlelo kahi e wehewehe ʻia ai nā ʻano hoʻololi kaiapuni ma ke ʻano kī/waiwai. E hoʻoneʻe ʻia kēia mau mea hoʻololi i environment_object me he mea lā ua hoʻonohonoho ʻia lākou ma o ke ʻano set(). Hiki ke hāʻawi ʻia nā puke wehewehe ʻōlelo i nā hana like ʻole e kākoʻo ana i kahi hoʻopaʻapaʻa "env";
  • Hoʻohui ʻia ka hana "runtarget alias_target(target_name, dep1, ...)" e hana i kahi pahuhopu kūkulu pae mua hou e hiki ke kapa ʻia me ka backend kūkulu i koho ʻia (e laʻa, "ninja target_name"). ʻAʻole holo kēia pahuhopu i nā kauoha, akā e hōʻoia i ka kūkulu ʻia ʻana o nā hilinaʻi āpau;
  • Hoʻohana ʻia ka hoʻonohonoho ʻakomi o ka PKG_CONFIG_SYSROOT_DIR hoʻololi kaiapuni i ka wā o ka hui ʻana inā loaʻa kahi hoʻonohonoho sys_root ma ka ʻāpana "[properties]";
  • Hoʻohui ʻia ke koho "--gdb-path" e hoʻoholo i ke ala i ka GDB debugger i ka wā e kuhikuhi ana i ka koho "--gdb testname" e holo i ka GDB me ka palapala hōʻike hōʻike ʻia;
  • Hoʻohui ʻia ka ʻike ʻakomi o ka clang-tidy build target e holo i kēia linter me nā faila kumu āpau. Hoʻokumu ʻia ka pahuhopu inā loaʻa ka clang-tidy i ka ʻōnaehana a ua wehewehe ʻia ka faila ".clang-tidy" (a i ʻole "_clang-tidy") ma ke kumu o ka papahana;
  • Hoʻohui ʻia ka hilinaʻi ('blocks') no ka hoʻohana ʻana i ka hoʻonui Clang ālai ';
  • Hoʻokaʻawale ʻia nā manaʻo linker a me nā mea hoʻohui, e ʻae i nā hui like ʻole o nā mea hoʻohui a me nā mea hoʻopili e hoʻohana ʻia;
  • Hoʻohui ʻia ke ʻano all_dependencies() i nā mea SourceSet me ka ʻano all_sources();
  • I ka run_project_tests.py, ua hoʻohui ʻia ke koho "--wale" i nā hoʻokolohua koho (e laʻa, "python run_project_tests.py —only fortran python3");
  • Loaʻa i ka hana find_program() ka hiki ke ʻimi wale i nā mana i makemake ʻia o kahi papahana (ua hoʻoholo ʻia ka mana ma ka holo ʻana i ka papahana me ke koho "-version");
  • No ka mālama ʻana i ka lawe ʻana aku i nā hōʻailona, ​​ua hoʻohui ʻia ke koho vs_module_defs i ka hana shared_module (), e like me shared_library ();
  • Ua hoʻonui ʻia ka kconfig module e kākoʻo i ka configure_file () no ka wehewehe ʻana i kahi faila hoʻokomo;
  • Hoʻohui i ka hiki ke kuhikuhi i nā faila hoʻokomo he nui no nā mea hoʻohana "kauoha:" e configure_file ();
  • Ua hoʻoneʻe ʻia ke kauoha "dist" no ka hana ʻana i kahi waihona i ka ʻāpana o nā kauoha pae mua (ua nakinaki ʻia ke kauoha i ka ninja). Hoʻohui ʻia ke koho "--formats" e wehewehe i nā ʻano waihona e hana ʻia (no ka laʻana,
    "meson dist -formats=xztar,zip").

Source: opennet.ru

Pākuʻi i ka manaʻo hoʻopuka