Meson 1.11.0

Progetto Meson ha rilasciato una versione 1.11.0. Il rilascio è avvenuto 13 aprile 2026 e continua a sviluppare uno dei più noti sistemi di build open source, utilizzato in molti progetti Linux e cross-platform.

Meson punta tradizionalmente su alta velocità, descrizione di build prevedibile e un linguaggio DSL relativamente semplice, e il nuovo rilascio si concentra principalmente su miglioramenti pratici per scenari di sviluppo reali.

Le modifiche principali in Meson 1.11.0:

  • supporto per l'analisi dell'alto livello Cargo.toml tramite workspace() nel modulo Rust;
  • supporto per link_args, add_project_link_arguments() e add_global_link_arguments() per Rust;
  • nuovo metodo compiler_target() nel modulo Rust;
  • Cython non richiede più l'inclusione esplicita di C o C++;
  • nuovo argomento link_early_args per la trasmissione anticipata delle opzioni al linker;
  • meson dist ha ottenuto supporto per -j/—num-processes;
  • install_man e install_headers ora supportano install_tag;
  • deduplicazione degli argomenti del linker OpenMP;
  • determinazione automatica di QT_DEBUG e QT_NO_DEBUG;
  • miglioramenti per ambienti Windows e rc.exe.

Una delle modifiche più significative riguarda Rust. Meson 1.11.0 è stato in grado di analizzare Cargo.toml a livello alto durante la chiamata di workspace() nel modulo Rust, permettendo ora alle dipendenze e ai flag delle feature di essere risolti secondo la configurazione dello spazio di lavoro di Cargo. Questo rende l'integrazione con i progetti Rust notevolmente più matura: l'oggetto restituito workspace consente di ottenere informazioni su dipendenze e feature per i sottomoduli Cargo, nonché di compilare obiettivi descritti in Cargo.toml.

Gli sviluppatori hanno anche ampliato il supporto di Meson per Rust nella fase di linking. A partire dalla versione 1.11.0, per Rust sono supportati add_project_link_arguments(), add_global_link_arguments() e link_args, che vengono passati tramite rustc con un wrapper -Clink-arg=. Inoltre, nel modulo Rust è stato aggiunto il metodo compiler_target(), che restituisce il target triple del compilatore, semplificando il porting di scenari precedentemente legati a variabili Cargo come TARGET e HOST.

Un'altra modifica applicativa riguarda Cython: ora non è più necessario includere esplicitamente i linguaggi C o C++. In questo modo, Meson precisa che tali linguaggi vengono aggiunti solo come dettaglio interno dell'implementazione di Cython e non come una funzionalità a pieno titolo per costruire parallelamente obiettivi nativi C/C++. Per gli utenti, questo significa principalmente semplificare la configurazione della build.

Il rilascio include anche miglioramenti progettati per un controllo più preciso del collegamento e dell'installazione. Gli obiettivi che eseguono il collegamento hanno ora un nuovo argomento link_early_args, che consente di passare opzioni al linker prima degli oggetti e delle librerie; questo è importante per parametri come -u o —defsym, che sono sensibili all'ordine. Inoltre, install_man e install_headers hanno ottenuto supporto per install_tag, in modo che i file installati possano essere gestiti più flessibilmente tramite meson install —tags.

Vale la pena notare lo sviluppo degli strumenti di accompagnamento per la build. Il comando meson dist ora accetta -j e —num-processes, permettendo di gestire il numero di processi paralleli durante il controllo del pacchetto. Parallelamente, Meson ha iniziato a deduplicare gli argomenti del linker OpenMP, come -fopenmp e -qopenmp, mentre nei moduli Qt ora vengono automaticamente determinati i macro QT_DEBUG o QT_NO_DEBUG a seconda della modalità di build, avvicinando il comportamento a qmake.

Ci sono cambiamenti anche nella compatibilità con scenari specifici della piattaforma. Nel modulo external_project per Windows, ora viene utilizzato cygpath per convertire correttamente i percorsi in stile Unix quando si lavora con script configure in ambienti come MSYS2 e Cygwin. Inoltre, windows.compile_resources ora può tenere traccia delle modifiche ai file header utilizzando rc.exe, superando un limite di lunga data di questo compilatore di risorse.

In generale Meson 1.11.0 Apparentemente, si tratta di un rilascio senza grandi rivoluzioni, ma con un numero significativo di miglioramenti ingegneristici. Il principale obiettivo dell'uscita è rendere il sistema di compilazione più comodo per i moderni progetti multi-lingua, specialmente dove convivono Rust, Cython, Qt e componenti tradizionali C/C++. Per gli sviluppatori, non si tratta tanto di un'opportunità per riscrivere l'infrastruttura, quanto di un aggiornamento curato ma utile di uno strumento che è già da tempo parte del quotidiano stack di software libero.

Fonte: linux.org.ru

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster