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

paʻi ʻia kūkulu hoʻokuʻu ʻōnaehana Meson 0.51, 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 ka hui ʻana a me ke kūkulu ʻana ma Linux, 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ā hale hana hou, kahi e holo ai ke kūkulu ʻana i nā ʻano like ʻole e hopena i ka hana ʻana o nā faila hiki ke hoʻokō like.

ka papa kuhikuhiE nā mea hou Meson 0.51:

  • Hoʻohui ʻia ke kākoʻo no ke kūkulu ʻana i nā papahana i kēia manawa e hoʻohana ana i nā palapala kūkulu CMake. Hiki iā Meson ke kūkulu pololei i nā papahana maʻalahi (e like me nā hale waihona puke hoʻokahi) me ka hoʻohana ʻana i ka module CMake, e like me nā subprojects maʻamau (me nā subprojects CMake hiki ke waiho ʻia ma ka papa kuhikuhi subprojects);
  • No nā mea hoʻopili i hoʻohana ʻia, hoʻokomo ʻia ka hoʻāʻo mua ma o ka hui ʻana a me ka hoʻokō ʻana i nā faila hoʻāʻo maʻalahi (ka nānā pono), ʻaʻole i kaupalena ʻia i ka hoʻāʻo ʻana i nā hae i kuhikuhi ʻia e ka mea hoʻohana no nā cross-compilers (mai kēia manawa, ʻike pū ʻia nā mea hōʻuluʻulu ʻōiwi i ka paepae o kēia manawa) .
  • Hoʻohui i ka hiki ke wehewehe i nā koho laina kauoha i hoʻohana ʻia i ka wā o ka hui ʻana, me ka hoʻopaʻa ʻana ma ke kuhikuhi ʻana i kahi prefix platform ma mua o ke koho. Ma mua, ua uhi wale nā ​​koho laina kauoha i nā kūkulu ʻōiwi a ʻaʻole hiki ke kuhikuhi ʻia no ka hui ʻana. Hoʻohana ʻia nā koho laina kauoha me ka nānā ʻole ʻana inā paha ʻoe e kūkulu maoli ana a i ʻole hoʻopili kea, e hōʻoia ana i ka hana ʻana i nā hopena like;
  • Hoʻohui i ka hiki ke kuhikuhi i ka hae "--cross-file" ma mua o hoʻokahi manawa ma ka laina kauoha e papa inoa i nā faila keʻa he nui;
  • Hoʻohui i ke kākoʻo no ka ICL compiler (Intel C/C++ Compiler) no ka Windows platform (ICL.EXE a me ifort);
  • Hoʻohui ʻia ke kākoʻo hāmeʻa mua no CPU Xtensa (xt-xcc, xt-xc++, xt-nm);
  • Ua hoʻohui ʻia ke ʻano "get_variable" i ka mea "dependency", e hiki ai iā ʻoe ke kiʻi i ka waiwai o kahi hoʻololi me ka nānā ʻole ʻana i ke ʻano o ka hilinaʻi o kēia manawa (e laʻa, dep.get_variable(pkg-config : 'var- inoa', cmake : 'COP_VAR_NAME));
  • Hoʻohui ʻia kahi manaʻo hoʻopaʻapaʻa koho hui hou, "link_language", e wehewehe pono i ka ʻōlelo i hoʻohana ʻia i ke kāhea ʻana i ka loulou. No ka laʻana, hiki i kahi polokalamu Fortran nui ke kāhea i ke code C/C++, nāna e koho iā C/C++ i ka wā e hoʻohana ʻia ai ka loulou Fortran;
  • Ua hoʻololi ʻia ka lawelawe ʻana i nā hae preprocessor CPPFLAGS. ʻOiai ua mālama ʻo Meson i ka CPPFLAGS a me nā hae hōʻuluʻulu ʻōlelo (CFLAGS, CXXFLAGS) i kahi kaʻawale, ua hoʻokaʻawale ʻia lākou i kēia manawa a ua hoʻohana ʻia nā hae i helu ʻia ma CPPFLAGS i kumu ʻē aʻe o nā hae hōʻuluʻulu no nā ʻōlelo e kākoʻo ana iā lākou;
  • Hiki ke hoʻohana 'ia ka hoʻopuka o custom_target a me custom_target [i] ma ke ʻano he hoʻopaʻapaʻa ma ka hana link_with a me link_whole;
  • Hiki i nā mea hana ke kuhikuhi i nā hilinaʻi hou me ka hoʻohana ʻana i ke koho "depends" (no ka laʻana, generator(program_runner, output: ['@[pale ʻia ka leka uila]'], pili: exe));
  • Hoʻohui i kahi koho static i find_library e ʻae i ka ʻimi e hoʻokomo i nā hale waihona puke pili statically wale nō;
  • No ka python.find_installation, ua hoʻohui ʻia ka hiki ke hoʻoholo i ke ʻano o kahi module Python i hāʻawi ʻia no kahi mana kikoʻī o Python;
  • Hoʻohui hou i ka unstable-kconfig hou no ka hoʻopau ʻana i nā faila kconfig;
  • Hoʻohui i kahi kauoha hou "subprojects foreach", e lawe i kahi kauoha me nā hoʻopaʻapaʻa a holo ia i nā papa kuhikuhi subproject āpau;

Source: opennet.ru

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