Projekt Meson kiadta a verziót 1.11.0. A kiadás dátuma 2026. április 13. és továbbra is fejleszti az egyik legismertebb szabad build rendszert, amely számos Linux és keresztplatformos projektben használatos.
A Meson hagyományosan a nagy sebességre, az építési folyamatok kiszámítható leírására és az viszonylag egyszerű DSL-re helyezi a hangsúlyt, az új kiadás pedig főként gyakorlati fejlesztéseken összpontosít a valós fejlesztési forgatókönyvekhez.
A Meson 1.11.0 kulcsfontosságú változásai:
- a Cargo.toml felső szintű elemzése a workspace() segítségével a Rust modulban;
- link_args, add_project_link_arguments() és add_global_link_arguments() támogatás Rust-hoz;
- új compiler_target() metódus a Rust modulban;
- a Cython már nem igényli a C vagy C++ explicit beillesztését;
- új link_early_args argumentum a linker opciók korábbi átadásához;
- a meson dist támogatja a -j/—num-processes opciót;
- az install_man és install_headers most már támogatja az install_tag-t;
- OpenMP linker argumentumok deduplikálása;
- QT_DEBUG és QT_NO_DEBUG automatikus észlelése;
- javítások Windows környezetekhez és rc.exe-hez.
Az egyik legfigyelemreméltóbb változás a következőket érinti Rust. A Meson 1.11.0 megtanult elemezni a felső szintű Cargo.toml fájlokat a workspace() hívásakor a Rust modulban, amely lehetővé teszi, hogy a függőségek és funkcióflagok a Cargo munkaterület konfigurációjának megfelelően oldódjanak meg. Ez jelentősen érettebbé teszi az integrációt a Rust projektekkel: a visszaadott workspace objektum lehetővé teszi a függőségek és funkciók információinak megszerzését a Cargo alprojektjeihez, valamint a Cargo.toml-ban leírt célok összegyűjtését.
A fejlesztők a Rust kezelést a linking szakaszában is kibővítették a Mesonban. Az 1.11.0-ás verziótól kezdve a Rust-hoz támogatottá váltak az add_project_link_arguments(), add_global_link_arguments() és link_args, amelyeket a rustc-n keresztül -Clink-arg= csomaggal adnak át. Ezen kívül a Rust modulban megjelent egy compiler_target() metódus, amely a fordító cél tripletjét adja vissza, így megkönnyítve olyan forgatókönyvek portolását, amelyek korábban a TARGET és HOST Cargo változókra támaszkodtak.
Egy másik alkalmazás-orientált változás érinti Cython: most már nem szükséges explicit módon bevonni a nyelveket C vagy C++. A Meson hangsúlyozza, hogy ezek a nyelvek csak a Cython implementációjának belső részleteiként kerülnek be, nem pedig mint teljes értékű lehetőség a szokásos natív C/C++ célok párhuzamos összegyűjtésére. A felhasználók számára ez elsősorban az építési konfiguráció egyszerűsítését jelenti.
A kiadásba beépítésre került a hivatkozások és telepítések finomabb ellenőrzésére szolgáló fejlesztések. A hivatkozások teljesítéséhez új link_early_args argumentum került, amely lehetővé teszi a hivatkozási opciók átadását a objektumok és könyvtárak előtt — ez fontos olyan paraméterek esetében, mint a -u vagy a —defsym, amelyek sorrendre érzékenyek. Az install_man és install_headers is kapott telepítési címkét támogató install_tag opciót, így a telepített fájlokat rugalmasabban lehet kezelni a meson install —tags használatával.
Külön érdemes megemlíteni a build támogatási eszközök fejlődését. A meson dist csapata mostantól fogadja a -j és a —num-processes opciókat, amelyek lehetővé teszik a párhuzamos folyamatok számának kezelését a disztribúció ellenőrzésekor. Párhuzamosan a Meson elkezdte deduplikálni az OpenMP linker argumentumokat, mint például a -fopenmp és a -qopenmp, valamint a Qt modulok mostantól automatikusan meghatározzák a QT_DEBUG vagy QT_NO_DEBUG makrókat a build módjától függően, ami a qmake működéséhez közelebb hozza azt.
Változások tapasztalhatók a specifikus platform szcenáriókkal való kompatibilitásban is. A Windows external_project modul mostantól cygpath-ot használ, hogy megfelelően alakítsa Unix-szerű úttá az útvonalakat a configure szkriptek használatához olyan környezetekben, mint az MSYS2 és a Cygwin. Továbbá, a windows.compile_resources mostantól képes nyomon követni a fejlécfájlok módosításait az rc.exe használatakor, megkerülve e régi erőforrás-compiler korlátozását.
Általában Meson 1.11.0 Ez a kiadás első látásra nem tűnik nagy forradalomnak, de jelentős mérnöki fejlesztések sorát tartalmazza. A kiadás lényege, hogy a build rendszert kényelmesebbé tegye a modern mixed-language projektek számára, különösen ott, ahol a Rust, Cython, Qt és a hagyományos C/C++ komponensek együtt élnek. A fejlesztők számára ez inkább nem egy új infrastruktúra átkonvertálásának apropója, hanem egy gondos, de hasznos frissítése az eszköznek, amely már régóta a szabad szoftver napi stackjének része.
Forrás: linux.org.ru
