Lançamento do GNU Mes 0.23, um kit de ferramentas para construção de distribuição independente

Após um ano de desenvolvimento, o kit de ferramentas GNU Mes 0.23 foi lançado, fornecendo um processo de inicialização para o GCC e permitindo um ciclo fechado de reconstrução a partir do código-fonte. O kit de ferramentas resolve o problema de montagem inicial verificada do compilador em distribuições, quebrando a cadeia de reconstrução cíclica (construir um compilador requer arquivos executáveis ​​​​de um compilador já construído, e montagens de compilador binário são uma fonte potencial de marcadores ocultos, o que não permite garantir totalmente a integridade dos assemblies dos códigos-fonte de referência).

GNU Mes oferece um intérprete auto-hospedado para a linguagem Scheme, escrito na linguagem C, e um compilador simples para a linguagem C (MesCC), escrito na linguagem Scheme. Ambos os componentes são intermontáveis. O interpretador Scheme torna possível construir o compilador MesCC C, que então permite construir uma versão simplificada do compilador TinyCC (tcc), cujos recursos já são suficientes para construir o GCC.

O interpretador da linguagem Scheme é bastante compacto, ocupa cerca de 5000 linhas de código no subconjunto mais simples da linguagem C e pode ser convertido em um arquivo executável usando o tradutor universal M2-Planet ou um compilador C simples montado usando o hex0 automontado. assembler, que não requer dependências externas. Ao mesmo tempo, o interpretador inclui um coletor de lixo completo e fornece uma biblioteca de módulos carregáveis.

A nova versão inclui suporte para a arquitetura ARM (armhf-linux e aarch-linux). Adicionada a capacidade de usar Mes junto com um conjunto reduzido de arquivos de bootstrap do projeto GNU Guix (GNU Guix Reduced Binary Seed). Implementado suporte para construção de Mes e da biblioteca Mes C usando GCC 10.x. O compilador MesCC agora vem com sua própria biblioteca libmescc.a (-lmescc) e, ao compilar com GCC, "-lgcc" agora é especificado. Forneceu suporte para construção de MesCC com Guile 3.0.x.

Fonte: opennet.ru

Adicionar um comentário