O Fedora 43, já em fase ativa de planejamento, poderá trazer uma mudança estratégica para desenvolvedores: tornar o Ninja o gerador padrão do CMake no lugar do tradicional GNU Make. A proposta foi oficialmente registrada na página de mudanças do Fedora Wiki, e busca modernizar o processo de compilação da distribuição.
Por que mudar o gerador padrão?
O CMake é uma das ferramentas de construção de software mais utilizadas no ecossistema Linux, permitindo que desenvolvedores configurem projetos multiplataforma com facilidade. O gerador padrão atualmente é o Make, mas muitos desenvolvedores já migraram para o Ninja, que oferece desempenho significativamente superior.
O novo plano propõe alterar a macro %cmake
do Fedora para usar Ninja como gerador principal, o que promete reduzir o tempo de compilação, melhorar a integração com módulos C++ e garantir uma experiência de build mais moderna e eficiente.
Impacto nos pacotes e compatibilidade
De acordo com a proposta, cerca de 310 dos 2.359 pacotes avaliados já foram identificados como afetados e precisarão de ajustes mínimos. Para os pacotes que usam macros genéricas como %cmake_build
e %cmake_install
, a transição deve ser transparente. Já para casos específicos que ainda utilizam %make_install
, será necessário adaptar os arquivos .spec
.
Aqueles que precisarem permanecer com Make poderão optar por ele explicitamente, adicionando a linha %global cmake_generator make
antes da execução da macro %cmake
.
Vantagens esperadas com a adoção do Ninja
- Compilações mais rápidas, aproveitando melhor os recursos de paralelismo;
- Melhor compatibilidade com recursos modernos do CMake, como módulos em C++;
- Uniformização com as boas práticas já adotadas em diversos pacotes do Fedora.
A proposta ainda precisa ser aprovada oficialmente pelo Fedora Engineering and Steering Committee (FESCo), mas não há impacto previsto sobre usuários finais e nenhuma quebra de compatibilidade com versões anteriores do Fedora.
Confira o plano completo de mudança no Fedora Wiki.