Meson 1.11.0

Proyecto Meson ha lanzado una versión 1.11.0. La publicación tuvo lugar el 13 de abril de 2026 y continúa el desarrollo de uno de los sistemas de construcción libres más destacados, utilizado en muchos proyectos de Linux y multiplataforma.

Meson tradicionalmente se enfoca en velocidad alta, una descripción de construcción predecible y un DSL relativamente simple, y la nueva versión se centra principalmente en mejoras prácticas para escenarios reales de desarrollo.

Cambios clave en Meson 1.11.0:

  • soporte para analizar el archivo Cargo.toml de nivel superior a través de workspace() en el módulo Rust;
  • soporte para link_args, add_project_link_arguments() y add_global_link_arguments() para Rust;
  • nuevo método compiler_target() en el módulo Rust;
  • Cython ya no requiere la inclusión explícita de C o C++;
  • nuevo argumento link_early_args para pasar opciones al enlazador más temprano;
  • meson dist ahora soporta -j/—num-processes;
  • install_man e install_headers ahora soportan install_tag;
  • deduplicación de argumentos de enlace OpenMP;
  • determinación automática de QT_DEBUG y QT_NO_DEBUG;
  • mejoras para entornos de Windows y rc.exe.

Uno de los cambios más destacados se refiere a Rust. Meson 1.11.0 ahora puede analizar archivos Cargo.toml de nivel superior al invocar workspace() en el módulo Rust, lo que permite resolver dependencias y banderas de características de acuerdo con la configuración del espacio de trabajo de Cargo. Esto hace que la integración con proyectos Rust sea notablemente más madura: el objeto workspace devuelto permite obtener información sobre dependencias y características para subproyectos de Cargo, así como compilar objetivos descritos en Cargo.toml.

Los desarrolladores también han ampliado el trabajo de Meson con Rust en la etapa de enlace. A partir de la versión 1.11.0, Rust soporta add_project_link_arguments(), add_global_link_arguments() y link_args, que se pasan a través de rustc con el prefijo -Clink-arg=. Además, en el módulo Rust aparece un método compiler_target(), que devuelve el triplete de destino del compilador, lo que facilita la portación de scripts que antes dependían de variables de Cargo como TARGET y HOST.

Otro cambio práctico afecta a Cython: ahora no se requiere incluir explícitamente los lenguajes C o C++. Al hacerlo, Meson aclara que esos lenguajes se añaden solo como un detalle interno de la implementación de Cython, y no como una posibilidad completa de compilar simultáneamente objetivos nativos C/C++. Para los usuarios, esto implica principalmente una simplificación de la configuración de la construcción.

La versión incluye mejoras diseñadas para un control más fino de la vinculación e instalación. Los objetivos que realizan la vinculación ahora tienen un nuevo argumento link_early_args, que permite pasar opciones al vincular antes de los objetos y bibliotecas, lo cual es importante para parámetros como -u o —defsym, que son sensibles al orden. Además, install_man e install_headers han agregado soporte para install_tag, lo que permite gestionar los archivos instalados de manera más flexible a través de meson install —tags.

Es importante destacar el desarrollo de herramientas para el soporte de compilación. El equipo de meson dist ahora acepta -j y —num-processes, lo que permite gestionar el número de procesos paralelos al verificar el paquete. Paralelamente, Meson ha comenzado a deduplicar los argumentos del enlazador OpenMP, como -fopenmp y -qopenmp, y en los módulos de Qt ahora se definen automáticamente los macros QT_DEBUG o QT_NO_DEBUG según el modo de compilación, lo que acerca el comportamiento a qmake.

También hay cambios en la compatibilidad con escenarios específicos de plataformas. En el módulo external_project para Windows, ahora se utiliza cygpath para convertir correctamente las rutas a un formato Unix al trabajar con scripts de configuración en entornos como MSYS2 y Cygwin. Además, windows.compile_resources ahora puede rastrear cambios en los encabezados al usar rc.exe, superando una limitación antigua de este compilador de recursos.

En general Meson 1.11.0 Aparentemente, parece un lanzamiento sin grandes revoluciones, pero con una cantidad notable de mejoras ingeniadas. El sentido principal de la versión es hacer que el sistema de compilación sea más conveniente para proyectos de lenguajes mixtos modernos, especialmente donde coexisten Rust, Cython, Qt y componentes tradicionales de C/C++. Para los desarrolladores, esto no es tanto un motivo para reescribir la infraestructura, sino una actualización cuidadosa pero útil de la herramienta, que ya forma parte del stack cotidiano de software libre.

Fuente: linux.org.ru

Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS 🔥 Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS | ProHoster