E foi lançado Meson 1.1 com muitas melhorias e novidades. Confira as novidades desse importante 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.1.0, que é usado para compilar vários projetos populares, como X.Org, Mesa, systemd, Wayland, GNOME, entre outros.
Novidades do Meson 1.1
No Meson 1.1, executar “sudo meson install” garante que os privilégios sejam restaurados durante a reconstrução das plataformas de destino.
Outra mudança que se destaca é que o comando “meson install” oferece a possibilidade de especificar um driver separado para obter permissões de root (por exemplo, você pode selecionar polkit, sudo, opendoas ou $MESON_ROOT_CMD), além de executar “meson install” no modo não interativo não tenta mais elevar privilégios.
Além disso, vale ressaltar também que foi adicionado um novo backend “none” (--backend=none
) para criar projetos que possuem apenas regras de instalação e não regras de compilação, bem como uma nova dependência pybind11 para fazer a dependência ( ‘pybind11’) funciona com pkg-config e cmake sem usar o script pybind11-config.
Das mudanças mais importantes que se destacam nesta nova versão, são as seguintes:
- Um novo argumento “objects:” foi adicionado a declare_dependency() para anexar objetos diretamente a executáveis como dependências internas que não requerem link_who.
- Redirecionamento fornecido ao stderr a partir da saída de informações sobre o andamento da introspecção.
- Adicionada uma opção ao comando ” meson devenv –dump ” para especificar um arquivo para gravar variáveis de ambiente, em vez de enviá-lo para a saída padrão.
- Adicionados os métodos FeatureOption.enable_if e FeatureOption.disable_if para facilitar a criação de condicionais em preparação para passar parâmetros para a função dependency(), opt = get_option(‘feature’).disable_if(not foo, error_message: ‘Não é possível ativar a função quando foo não está ativado’)
dep = dependency(‘foo’, obrigatório : opt) - É permitido passar objetos gerados como argumentos “objects:”.
- A função de projeto suporta a instalação de arquivos com informações de licença do projeto.
- Adicionado suporte para opções de leitura do arquivo meson.options em vez de meson_options.txt.
- As opções “ –reconfigure” e “–wipe” ( meson setup –reconfigure builddir e meson setup –wipe builddir ) são permitidas com um builddir vazio.
- Meson.add_install_script() adicionou suporte para a palavra-chave dry_run , que permite que você execute seus próprios scripts de instalação chamando ” meson install –dry-run “.
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