Meson 1.4 lançado com melhorias, novas funções, e muito mais

E foi lançado Meson 1.4 com melhorias, novas funções, e muito mais. Confira as novidades dessa atualização e veja como instalar no Linux.

Meson é um projeto para criar o melhor sistema de construção possível da próxima geração. O código do Meson é escrito em Python e está licenciado sob a licença Apache 2.0

O principal objetivo de desenvolvimento da Meson é fornecer um processo de compilação de alta velocidade combinado com conveniência e facilidade de uso.

Em vez disso, a compilação usa o Ninja Toolkit por padrão, mas outros back-ends como xcode e VisualStudio podem ser usados.

O sistema possui um driver de dependência de plataforma cruzada integrado que permite usar o Meson para criar pacotes para distribuições.

As regras de compilação são escritas em uma linguagem específica de domínio simplificada, são bem legíveis e compreensíveis para o usuário (de acordo com a ideia dos autores, o desenvolvedor deve gastar um mínimo de tempo escrevendo regras).

A compilação cruzada e a compilação em um grande número de sistemas e outros compiladores são suportadas. Os projetos podem ser construídos em várias linguagens de programação, incluindo C, C++, Fortran, Java e Rust.

Notavelmente, ele oferece suporte a um modo de compilação incremental, no qual apenas os componentes diretamente relacionados às alterações feitas desde a última compilação são reconstruídos.

O Meson pode ser usado para gerar compilações repetíveis, onde a execução da compilação em diferentes ambientes resulta na geração de executáveis ​​completamente idênticos.

Agora, foi anunciado o lançamento da nova versão do sistema de compilação Meson 1.4, que é usado para compilar vários projetos populares, como X.Org, Mesa, systemd, Wayland, GNOME, entre outros.

Novidades do Meson 1.4

Meson 1.4 lançado com melhorias, novas funções, e muito mais
Meson 1.4 lançado com melhorias, novas funções, e muito mais

Meson 1.4 chegou com melhorias de suporte para certas funções do módulo FS, e também com melhorias de compatibilidade, novas funções e muito mais.

No Meson 1.4 destaca-se o suporte adicionado ao módulo FS, o que agora suporta objetos de destino de compilação build_tgt e custom_tgt, bem como um índice de destino de compilação (custom_idx) nas funções fs.name , fs.parent, fs.replace_suffix e fs.stem.

Outra das mudanças que se destacam nesta nova versão é que agora Meson conta a capacidade de ler a versão do projeto a partir de subprojetos baseados no CMake. Isso permite que as restrições de versão sejam verificadas corretamente ao recorrer a um subprojeto de cmake

Além disso, agora nas funções compile_ui, compile_moc e pré-processamento dos módulos qt4, qt5 e qt6, foi agregado o argumento preserve_paths para selecionar a opção para construir a estrutura de diretórios para os arquivos que você está escrevendo.

Também se destaca que a compatibilidade com Clang foi agregada ao stldebug quando o debugstl está habilitado, o método unset() foi introduzido no objeto env e o método full_path() adicionado ao objeto Arquivo para obter a rota completa do arquivo.

Foi adicionado suporte para a ferramenta numpy-config e o suporte para pkg-config como novas dependências personalizadas. Isso está disponível a partir do NumPy 2.0.0. A compatibilidade com numpy-config funcionará automaticamente assim que o NumPy for instalado.

Por outro lado, o arquivo pkg-config está localizado dentro dos pacotes do site do Python, o que significa que não é possível usá-lo imediatamente sem configurar PKG_CONFIG_PATH.

Das demais mudanças que se destacam no Meson 1.4, temos:

  • Capacidade de controlar verificações de asserção (GLIBCXX_ASSERTIONS) em C++ stdlib por meio da configuração ndebug.
  • Adicionado argumento de palavra-chave preserve_pathsun às funções do módulo qt
  • Agora é possível especificar alvos dependentes com depende: para compiler.preprocess(). Esses destinos devem ser construídos antes do início do pré-processamento.
  • O gerador de ligação bindgen agora oferece suporte à heurística Meson para determinar arquivos de cabeçalho C++.
  • Adicionada a capacidade de substituir as configurações de idioma para bindgen.
  • Os testes agora falham por padrão após encontrar erros ao executar desinfetantes como MemorySanitizer.
  • Adicionado suporte para o compilador Texas Instruments C/C++ para a família de CPU C6000.

Para saber mais sobre essa versão do Meson, acesse a nota de lançamento.

Como instalar ou atualizar o Meson

Para aqueles interessados ​​em obter o Meson, você deve saber que ele está disponível no PyPi, para que possa ser instalado com o pip3 install meson.

Deve-se observar que o comando exato a ser digitado para instalar o pip pode variar entre os sistemas, portanto, certifique-se de usar a versão Python 3 do pip.

Embora, se desejar, você possa instalá-lo localmente com o comando Python padrão:
python3 -m pip install meson

Sobre o Edivaldo Brito

Edivaldo Brito é analista de sistemas, gestor de TI, blogueiro e também um grande fã de sistemas operacionais, banco de dados, software livre, redes, programação, dispositivos móveis e tudo mais que envolve tecnologia.