Meson 1.11.0

Projekt Meson väljendas versiooni 1.11.0. Väljalase toimus 13. aprill 2026 ja jätkab arendamist ühe kõige silmapaistvama vabavaralise ehitussüsteemi osas, mida kasutatakse paljude Linuxi ja platvormidevaheliste projektide raames.

Meson paneb traditsiooniliselt rõhku kõrgele kiirusel, etteennustatavale ehituse kirjeldamisele ja suhteliselt lihtsale DSL-le, samas kui uus väljaanne keskendub peamiselt praktilistele parandustele reaalses arendustegevuses.

Meson 1.11.0 peamised muutused:

  • ülemise tasandi Cargo.toml analüüsi tugi workspace() Rust-modulis;
  • tugi 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++-failide käsitsi lisamist;
  • uus argumendi link_early_args varajaseks edastamiseks linkeri valikutele;
  • meson dist sai tugi -j/—num-processes;
  • install_man ja install_headers toetavad nüüd install_tag;
  • OpenMP linkeri argumendi dedupeerimine;
  • QT_DEBUG ja QT_NO_DEBUG automaatne tuvastamine;
  • parandused Windowsi keskkondade ja rc.exe jaoks.

Üks kõige märgatavamaid muudatusi puudutab Rust. Meson 1.11.0 õppis Rusti moodulis workspace() kutsumise käigus ülemise taseme Cargo.toml'i analüüsima, mis võimaldab sõltuvuste ja feature-lippude lahendamist vastavalt Cargo tööruumi konfigureerimisele. See muudab integreerimise Rusti projektidega märgatavalt küpsemaks: tagastatud objekt workspace annab teavet sõltuvuste ja features'ite kohta Cargo alaprojektide jaoks ning võimaldab koguda sihte, mis on kirjeldatud Cargo.toml-is.

Arendajad on samuti laiendanud Mesoni koostööd Rustiga linkimise etapis. Alates versioonist 1.11.0 toetavad Rusti puhul add_project_link_arguments(), add_global_link_arguments() ja link_args, mis edastatakse rustc kaudu -Clink-arg= mähisega. Lisaks on Rusti moodulis lisatud meetod compiler_target(), mis tagastab kompilatsiooni sihttripli, muudab varasemate Cargo muutujate nagu TARGET ja HOST põhjal loodud skriptide üleviimise lihtsamaks.

Veel üks praktiline muudatus puudutab Cython: nüüd ei ole selle kasutamiseks enam vaja keeli selgelt lubada C või C++. Sellega seoses täpsustab Meson, et sellised keeled lisatakse ainult Cythoni rakendamise sisemiseks detailiks, mitte täielikuks võimaluseks paralleelselt tavaliste native C/C++ sihtmärkide koostamiseks. Kasutajate jaoks tähendab see eelkõige koostamiskonfiguratsiooni lihtsustamist.

Väljaandest leidub ka täiustusi, mis on suunatud täpsemale linkimise ja installimise kontrollimisele. Linkimisele suunatud sihtmärkidel on nüüd uus argument link_early_args, mis võimaldab edastada linkimissuvandeid enne objekte ja raamatukogusid — see on oluline selliste parameetrite jaoks nagu -u või —defsym, mis on järjekorra suhtes tundlikud. Samuti on install_man ja install_headers saanud toetuse install_tag, et installed faile oleks võimalik tööriista meson install —tags kaudu paindlikumalt hallata.

Eraldi tasub märkida koostamisvahendite arengut. Meson dist meeskond aktsepteerib nüüd -j ja —num-processes, mis võimaldab hallata paralellsete protsesside arvu distributsiooni kontrollimisel. Samal ajal on Meson hakanud dedupreerima linkija argumendid OpenMP, nagu -fopenmp ja -qopenmp, ja Qt-modulites määratakse nüüd automaatselt makrod QT_DEBUG või QT_NO_DEBUG vastavalt koostamisrežiimile, mis viib käitumise lähemale qmake'ile.

Muudatusi on ka spetsiifiliste platvormide stsenaariumide ühilduvuses. Windowsi external_project moodulis kasutatakse nüüd cygpath'i, et korrektselt muuta Unix-sarnaseid teid configuratsiooni skriptide töötlemisel keskkondades nagu MSYS2 ja Cygwin. Lisaks suudab windows.compile_resources nüüd jälgida pealkirjade muudatusi rc.exe kasutamisel, kõrvalehoidudes selle ressursikomplektori pikaajalisest piirangust.

Üldiselt Meson 1.11.0 Tundub, et väljalaskmine ei too suurt revolutsiooni, kuid sisaldab märkimisväärset arvu inseneritegevusega seotud täiendusi. Väljalaske peamine mõte on muuta ehitussüsteem mugavamaks kaasaegsetele segakeeltele projektides, kus elavad kõrvuti Rust, Cython, Qt ja traditsioonilised C/C++ komponentsed. Arendajatele on see pigem põhjus mitte infrastruktuuri ümber kirjutamiseks, vaid hoolikas, kuid kasulik uuendus tööriistale, mis on juba pikka aega olnud osa igapäevasest vabavarast.

Allikas: linux.org.ru

Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid 🔥 Osta usaldusväärne veebihosting DDoS kaitsega, VPS VDS serverid | ProHoster