Meson je softvérový nástroj na automatizáciu konštrukcie softvéru. Je to bezplatný a otvorený zdroj napísaný v Pythone.
Nedávno bolo oznámené vydanie novej verzie zostavovacieho systému Meson 1.4 . Táto verzia prichádza s vylepšenou podporou pre určité funkcie modulu FS, ako aj s vylepšeniami kompatibility, novými funkciami a ďalšími funkciami.
Pre tých, ktorí nepoznajú Meson, ide o systém zostavovania, ktorý používajú významné projekty ako X.Org Server, Mesa, Lighttpd, systemd, GStreamer, Wayland, GNOME a GTK. Jeho hlavným cieľom je poskytnúť rýchly a užívateľsky prívetivý proces zostavovania. Štandardne používa sadu nástrojov Ninja, ale je kompatibilný aj s inými backendmi, ako sú Xcode a Visual Studio.
Tento systém obsahuje integrovaného správcu závislostí pre rôzne platformy , ktorý zjednodušuje vytváranie balíkov pre distribúcie. Pravidlá kompilácie sú definované v špecifickom, čitateľnom jazyku, čím sa minimalizuje čas potrebný na ich napísanie.
Meson podporuje stavebné projekty vo viacerých jazykoch, ako sú C, C++, Fortran, Java a Rust, a ponúka režim prírastkového zostavovania, ktorý prestavuje iba komponenty ovplyvnené zmenami od poslednej zostavy. Okrem toho môže Meson generovať opakovateľné zostavy, čím zaisťuje, že spustenie zostavy v rôznych prostrediach produkuje úplne identické spustiteľné súbory.
Hlavné novinky Meson 1.4
Táto nová verzia Mesonu 1.4 zdôrazňuje pridanú podporu pre modul FS, ktorý teraz podporuje cieľové objekty kompilácie build_tgt a custom_tgt, ako aj index cieľa kompilácie (custom_idx) vo funkciách fs.name, fs.parent, fs.replace_suffix a fs.stem.
Ďalšou pozoruhodnou zmenou v tejto novej verzii je, že Meson teraz dokáže čítať verziu projektu z podprojektov založených na CMake. To zabezpečuje správne overenie obmedzení verzií pri prístupe k podprojektu CMake.
Okrem toho bol do funkcií `compile_ui`, `compile_moc` a predprocessing modulov `qt4`, `qt5` a `qt6` pridaný argument `preserve_paths`, ktorý umožňuje vybrať možnosť zostavenia adresárovej štruktúry pre zapisované súbory.
Za zmienku tiež stojí, že podpora Clang bola pridaná do stldebug, keď je povolené debugstl, do objektu env bola zavedená metóda unset() a do objektu File bola pridaná metóda full_path() na získanie úplnej cesty k súboru.
Ako nové vlastné závislosti bola pridaná podpora pre nástroj numpy-config a pkg-config . Táto funkcia je dostupná od verzie NumPy 2.0.0. Podpora pre numpy-config bude fungovať automaticky po nainštalovaní NumPy. Súbor pkg-config sa však nachádza v balíkoch Python site, čo znamená, že ho nemožno okamžite použiť bez konfigurácie PKG_CONFIG_PATH.
Medzi ďalšie významné zmeny v tejto novej verzii patria:
- Schopnosť kontrolovať kontroly tvrdení (GLIBCXX_ASSERTIONS) v C++ stdlib prostredníctvom konfigurácie ndebug.
- Do funkcií modulu qt bol pridaný argument kľúčového slova protect_pathsun
- Teraz je možné špecifikovať závislé ciele pomocou Depend: pre kompilátor.preprocess(). Tieto ciele musia byť skonštruované pred začatím predbežného spracovania.
- Generátor väzby bindgen teraz podporuje heuristiku Meson na určovanie hlavičkových súborov C++.
- Pridaná možnosť prepísať nastavenia jazyka pre bindgen.
- Testy teraz v predvolenom nastavení zlyhajú po tom, ako sa vyskytnú chyby pri spustení dezinfekčných prostriedkov, ako je MemorySanitizer.
- Pridaná podpora pre kompilátor Texas Instruments C/C++ pre rodinu CPU C6000.
Na záver, ak máte záujem dozvedieť sa viac, podrobnosti nájdete na nasledujúcom odkaze.
Ako nainštalovať Meson na Linux?
Pre tých, ktorí majú záujem o možnosť nainštalovať tento zostavovací systém do svojho systému, môžu tak urobiť podľa pokynov, ktoré zdieľame nižšie.
Mali by vedieť, že Meson je k dispozícii na PyPi, takže ho možno nainštalovať pomocou príkazu:
pip3 install meson
Ako poznámku by ste mali vedieť, že presný príkaz na inštaláciu pip sa môže medzi systémami líšiť, preto sa odporúča použiť verziu pip pre Python 3.