Ҳадафи асосии таҳияи Meson таъмини суръати баланди раванди васлкунӣ дар якҷоягӣ бо роҳат ва осонии истифода мебошад. Ба ҷои утилитаи make, сохтани пешфарз маҷмӯаи абзорро истифода мебарад
асосӣ
- Дастгирии таҷрибавӣ барои Webassembly бо истифода аз Emscripten ҳамчун компилятор илова карда шуд;
- Дастгирии платформаҳои Illumos ва Solaris ба таври назаррас такмил дода шуда, ба ҳолати корӣ оварда шудааст;
- Кафолат медиҳад, ки скриптҳои байналмиллалии ба gettext асосёфта сарфи назар карда мешаванд, агар дар система асбобҳои gettext насб нашуда бошад (қаблан ҳангоми истифодаи модули i18n дар системаҳои бе gettext хатогӣ нишон дода мешуд);
- Дастгирии мукаммал барои китобхонаҳои статикӣ. Бисёр мушкилот ҳангоми истифодаи китобхонаҳои статикии насбнашуда ҳал карда шуданд;
- Имконияти истифодаи луғатҳо барои таъини тағирёбандаҳои муҳити зист илова карда шуд. Ҳангоми занг задани environment(), унсури аввалро акнун метавон ҳамчун луғат муайян кард, ки дар он тағирёбандаҳои муҳити зист дар шакли калид/арзиш муайян карда мешаванд. Ин тағирёбандаҳо ба муҳити_объект интиқол дода мешаванд, ки гӯё онҳо ба таври инфиродӣ тавассути усули set() муқаррар карда шудаанд. Луғатҳоро акнун метавон ба вазифаҳои гуногуне интиқол дод, ки далели "env"-ро дастгирӣ мекунанд;
- Функсияи иловашудаи "runtarget alias_target(target_name, dep1, ...)", ки ҳадафи нави сохтани сатҳи аввалро эҷод мекунад, ки онро бо пуштибонии интихобшуда даъват кардан мумкин аст (масалан, "номи ninja target_name"). Ин ҳадафи бунёдӣ ягон фармонро иҷро намекунад, балки кафолат медиҳад, ки ҳама вобастагӣ сохта шудаанд;
- Танзими худкори тағйирёбандаи муҳити PKG_CONFIG_SYSROOT_DIR ҳангоми байниҳамдигарӣ фаъол карда шуд, агар дар бахши "[хусусиятҳо]" танзимоти sys_root мавҷуд бошад;
- Опсияи "--gdb-path" барои муайян кардани роҳ ба ислоҳкунандаи GDB ҳангоми муайян кардани опсияи "--gdb testname" барои иҷро кардани GDB бо скрипти санҷишии мушаххас илова карда шуд;
- Муайянкунии автоматии ҳадафи сохтани ҷанҷол илова карда шуд, то ин линтерро бо ҳама файлҳои манбаъ иҷро кунад. Ҳадаф сохта мешавад, агар clang-tidy дар система дастрас бошад ва файли ".clang-tidy" (ё "_clang-tidy") дар решаи лоиҳа муайян карда шавад;
- Вобастагии иловашуда ('блокҳо') барои истифода дар тамдиди Clang
блокҳои ; - Намоишҳои пайвандкунанда ва компилятор аз ҳам ҷудо карда шудаанд, ки имкон медиҳанд, ки омезиши гуногуни компиляторҳо ва пайвандкунандагон истифода шаванд;
- Илова ба усули all_dependencies() ба объектҳои SourceSet илова ба all_sources() усули;
- Дар run_project_tests.py, имконоти "--only" барои интихобан иҷро кардани санҷишҳо илова карда шудааст (масалан, "python run_project_tests.py —танҳо fortran python3");
- Функсияи find_program() акнун имкони ҷустуҷӯи танҳо версияҳои лозимии барномаро дорад (версияи он тавассути иҷрои барнома бо опсияи "-version" муайян карда мешавад);
- Барои назорати содироти рамзҳо, опсияи vs_module_defs ба функсияи shared_module() илова карда шудааст, ки ба shared_library();
- Модули kconfig барои дастгирии configure_file () барои муайян кардани файли воридотӣ васеъ карда шудааст;
- Имконияти муайян кардани файлҳои вурудии сершумор барои коркардкунандагони "command:" ба configure_file();
- Фармони "dist" барои эҷоди бойгонӣ ба категорияи фармонҳои дараҷаи аввал гузаронида шуд (қаблан фармон ба ниндзя вобаста буд). Опсияи "--formats" барои муайян кардани навъҳои бойгониҳои сохташуда илова карда шуд (масалан,
"meson dist -formats=xztar,zip").
Манбаъ: opennet.ru