O Fedora planeja fornecer a capacidade de construir pacotes em Clang em vez de GCC

Para implementação no Fedora 33 delineado mudar regras para utilização de compiladores na distribuição, segundo as quais o compilador para construção do pacote pode ser selecionado dependendo das recomendações e preferências do projeto principal (upstream). O Fedora atualmente impõe o uso do GCC para compilar todos os pacotes, a menos que o pacote só possa ser compilado em Clang/LLVM.

A razão para fornecer a capacidade de construir com Clang é que alguns projetos, por ex. Firefox и crômio, durante o desenvolvimento eles usam o Clang como o compilador principal e os assemblies baseados nele são melhor testados. Usar o Clang para esses pacotes evitará a detecção de erros que surgem durante a construção no GCC, bem como coordenará as correções para esses erros com o projeto principal. Construir com GCC tem um efeito positivo na manutenção da portabilidade do código desenvolvido usando Clang, mas cria uma carga maior para os mantenedores e atrasa a publicação de atualizações (por exemplo, Mozilla proíbe use a marca registrada Firefox ao aplicar patches de terceiros, então você deve primeiro garantir que os patches estão incluídos no fluxo principal e liberar a atualização somente depois que as correções aparecerem no upstream).

Observa-se que seria lógico usar Clang para pacotes para os quais este compilador é mais adequado e utilizado no projeto principal. Para tais pacotes, seria possível reduzir a carga de manutenção se os pacotes fossem preparados por representantes do projecto principal. Se um representante da comunidade estiver construindo o pacote, então a capacidade de escolher um compilador é proposta para ser dada ao mantenedor. Para pacotes cujos projetos principais não favorecem um ou outro compilador, é recomendado manter o status quo (construir no GCC como antes). O autor da proposta é Jeff Law da Red Hat, que é um dos mantenedores do GCC e do Binutils.

Fonte: opennet.ru

Adicionar um comentário