Projekt Meson välja antud versioon 1.11.0. Väljalaskmine toimus 13. aprill 2026 ja jätkab arendust ühe kõige silmapaistvama avatud ehitussüsteemi osas, mida kasutatakse mitmesugustes Linuxi ja platvormidevaheline projektides.
Meson paneb traditsiooniliselt rõhu kiirele, ettearvatavale ehituse kirjeldamisele ja suhteliselt lihtsale DSL-le, samas kui uus versioon keskendub peamiselt praktilistele täiustustele reaalses arendustegevuses.
Peamised muudatused Meson 1.11.0-s:
- toetust kõrgemat asemel Cargo.toml läbipaistvusega workspace() Rust-modulis;
- toetust link_args, add_project_link_arguments() ja add_global_link_arguments() Rusti jaoks;
- uus meetod compiler_target() Rust-modulis;
- Cython ei vaja enam C või C++ selget kaasamist;
- uus argument link_early_args, et edastada valikuid lingi koostamisele varem;
- meson dist sai toetuse -j/—num-processes;
- install_man ja install_headers toetavad nüüd install_tag;
- OpenMP linkimise argumentide de-duplikaatimine;
- QT_DEBUG ja QT_NO_DEBUG automaatne tuvastamine;
- parandusi Windowsi keskkondades ja rc.exe.
Üks kõige silmapaistvamaid muudatusi puudutab Rustis. Meson 1.11.0 õppis ülesehitama kõrgemat Cargo.toml, kui kutsutakse üles workspace() Rust-modulis, mistõttu sõltuvused ja funktsiooniflagid lahendatakse nüüd Cargo tööruumi konfiguratsiooniga. See muudab integreerimise Rust-projektidega oluliselt küpsemaks: tagastatav objekt workspace võimaldab saada teavet sõltuvuste ja funktsioonide kohta Cargo alaprojektide jaoks ning kokku panna eesmärke, mis on kirjeldatud Cargo.toml-is.
Arendajad on samuti laiendanud Mesoni koostööd Rustiga linkimise etapil. Alates versioonist 1.11.0 toetavad Rust add_project_link_arguments(), add_global_link_arguments() ja link_args, mis edastatakse rustc kaudu mähisega -Clink-arg=. Lisaks on Rust-modulis ilmunud meetod compiler_target(), mis tagastab kompilaatori sihtriple, mis hõlbustab varasemaid stsenaariume, mis olid seotud Cargo muutujatega nagu TARGET ja HOST.
Veel üks praktiline muudatus puudutab Cythoni: nüüd ei ole selle kasutamiseks enam vaja selgelt kaasata keeli C või C++. Sellega seoses rõhutab Meson, et sellised keeled lisatakse ainult Cythoni rakenduse sisemiste detailidena, mitte täieõiguslike võimalustena samal ajal tavapäraste native C/C++ sihtide kokku panemiseks. Kasutajatele tähendab see peamiselt ehituse konfiguratsiooni lihtsustamist.
Väljaanne sisaldab täiustusi, mis võimaldavad peenemat linkimise ja installimise kontrolli. Linkimise eesmärkidel on nüüd uus argument link_early_args, mis võimaldab edastada linkimisvalikuid enne objekte ja teeke – see on oluline selliste parameetrite jaoks nagu -u või --defsym, mis on järjestuse suhtes tundlikud. Samuti on install_man ja install_headers saanud install_tag toe, et installitud faile saaks paindlikumalt hallata, kasutades meson install --tags.
Tuleb eraldi märkida ehitustööriistade hooldamise arendust. Meson dist meeskond aktsepteerib nüüd -j ja --num-processes, mis võimaldab hallata samaaegsete protsesside arvu distributsiooni kontrollimisel. Samuti on Meson hakanud dedupeerima OpenMP linkimise argumente, nagu -fopenmp ja -qopenmp, ning Qt-moodulites määratakse automaatselt QT_DEBUG või QT_NO_DEBUG makrod vastavalt ehituse režiimile, mis viib käitumise qmake'i lähedale.
Muudatusi on ka spetsiifiliste platvormide stsenaariumite ühilduvuses. Windowsi external_project moodulis kasutatakse nüüd cygpath'i, et õigesti vormindada Unix-tüüpi teid.configure-skriptide töötlemisel keskkondades nagu MSYS2 ja Cygwin. Lisaks oskab windows.compile_resources nüüd jälgida pealkirjade muutusi, kasutades rc.exe-d, möödudes sellest ressursi kompilatori pikaajalisest piirangust.
Üldiselt Meson 1.11.0 Tundub, et tegemist on väljaandega, mis ei sisalda suuri revolutsioonilisi muudatusi, kuid hõlmab märkimisväärset arvu inseneritehniliselt olulisi täiustusi. Väljaande peamine eesmärk on muuta ehitussüsteem mugavamaks tänapäevaste segakeelsete projektide jaoks, eriti seal, kus elavad koos Rust, Cython, Qt ja traditsioonilised C/C++ komponendid. Arendajate jaoks on see pigem põhjus mitte infrastruktuuri ümber kirjutada, vaid hoolikas, kuid kasulik tööriista uuendus, mis on ammu saanud osa igapäevasest avatud lähtekoodiga tarkvara stekist.
Allikas: linux.org.ru
