Umgomo oyinhloko wokuthuthukiswa kwe-Meson ukuhlinzeka ngesivinini esiphezulu senqubo yokuhlanganisa kuhlanganiswe nokunethezeka nokusebenziseka kalula. Esikhundleni se-make utility, isakhiwo esizenzakalelayo sisebenzisa ikhithi yamathuluzi
main
- Kwengezwe ukusekelwa kokuhlola kwe-Webassembly kusetshenziswa i-Emscripten njengomhlanganisi;
- Ukusekelwa kwamapulatifomu e-Illumos kanye ne-Solaris kuye kwathuthukiswa kakhulu futhi kwalethwa esimweni sokusebenza;
- Iqinisekisa ukuthi izikripthi ze-gettext-based internationalization azinakwa uma isistimu ingenayo i-gettext toolkit efakiwe (ngaphambilini, iphutha lalibonisiwe ngenkathi kusetshenziswa imojula ye-i18n kumasistimu ngaphandle kwe-gettext);
- Usekelo oluthuthukisiwe lwamalabhulali amile. Izinkinga eziningi lapho kusetshenziswa imitapo yolwazi emile engakhishiwe sezixazululiwe;
- Kwengezwe ikhono lokusebenzisa izichazamazwi ukwabela okuguquguqukayo kwendawo. Lapho ubiza indawo (), into yokuqala manje ingacaciswa njengesichazamazwi lapho okuguquguqukayo kwendawo kuchazwa kufomu lokhiye/inani. Lezi ziguquko zizodluliselwa ku-evironmental_object njengokungathi zisethwe ngazodwana ngendlela ye-set(). Izichazamazwi manje zingadluliselwa emisebenzini ehlukahlukene esekela impikiswano ethi "env";
- Umsebenzi owengeziwe othi "runtarget alias_target(target_name, dep1, ...)" odala ithagethi yokwakha entsha yezinga lokuqala engabizwa ngesingemuva sokwakha esikhethiwe (isb. "igama_le-ninja target"). Le thagethi yokwakha ayisebenzisi noma yimiphi imiyalo, kodwa iqinisekisa ukuthi konke ukuncika kuyakhiwa;
- Ukusetha okuzenzakalelayo okunikwe amandla kwe-PKG_CONFIG_SYSROOT_DIR okuguquguqukayo kwemvelo ngesikhathi sokuhlanganisa uma kukhona ukulungiselelwa kwe-sys_root kusigaba esithi "[properties]";
- Kwengezwe inketho ethi "--gdb-path" ukuze kunqunywe indlela eya kusilungisi sephutha se-GDB lapho kucaciswa "--gdb testname" inketho yokusebenzisa i-GDB ngombhalo wokuhlola oshiwo;
- Kwengezwe ukutholwa okuzenzakalelayo kwethagethi yokwakha ye-clang-tidy ukuze kuqalise le linter ngawo wonke amafayela omthombo. Okuqondiwe kwakhiwa uma i-clang-tidy itholakala ohlelweni futhi ifayela elithi “.clang-tidy” (noma “_clang-tidy”) lichazwa kumsuka wephrojekthi;
- Kwengezwe ukuncika('blocks') ukuze kusetshenziswe kusandiso se-Clang
Blocks ; - Ukubuka kokuxhumanisa nokuhlanganisa kuhlukanisiwe, okuvumela inhlanganisela ehlukene yabahlanganisi nezixhumi ukuthi zisetshenziswe;
- Kwengezwe all_dependencies() indlela ku-SourceSet ezintweni ngaphezu kwendlela yonke_yemithombo();
- Ku-run_project_tests.py, inketho ethi “--only” yengezwe ekwenzeni ukuhlola okukhethiwe (isibonelo, “python run_project_tests.py —only fortran python3”);
- Umsebenzi we-find_program() manje unamandla okusesha kuphela izinguqulo ezidingekayo zohlelo (inguqulo inqunywa ngokuqalisa uhlelo ngenketho ethi "-version");
- Ukuze ulawule ukuthunyelwa kwezimpawu, inketho vs_module_defs yengezwe kumsebenzi we-shared_module(), ofana ne-shared_library();
- Imojuli ye-kconfig inwetshiwe ukuze isekele configure_file() ukuze kucaciswe ifayela lokufaka;
- Kwengezwe ikhono lokucacisa amafayela okufaka amaningi ezibambi ze-“command:" to configure_file();
- Umyalo othi "dist" wokudala ingobo yomlando uhanjiswe esigabeni semiyalo yezinga lokuqala (ngaphambilini umyalo wawuboshelwe ku-ninja). Kwengezwe inketho ethi "--amafomethi" ukuze kuchazwe izinhlobo zezingobo zomlando ezizokwakhiwa (isibonelo,
"meson dist -amafomethi=xztar,zip").
Source: opennet.ru