O plano de substituir em novembro o compilador default do FreeBSD pelo compilador livre Clang foi colocado em prática, e agora o clang é o default em sistemas x86.

O compilador é uma ferramenta fundamental do sistema, e são esperados alguns solavancos na mudança para alguns usuários, e uma transição suave para a maioria deles. Eu lembro bem de ter enfrentado efeitos indesejados em algumas mudanças de impacto similar nas distribuições Linux (como a versão “estranha” do GCC no Red Hat Linux 7, no finalzinho do século XX, ou a transição entre os formatos executáveis a.out e ELF, ou entre libc/glibc, 2 décadas atrás). Desejo uma transição mais suave ao FreeBSD! (via osnews.com – “clang now default compiler on FreeBSD x86”)

O texto enviado pelo Nícolas Wildner[Ironmaniaco] (nicolasgauchoΘgmail·com) tem mais detalhes:

“Em um anúncio na lista de discussão freebsd-current, o desenvolvedor Brooks Davis anunciou o sucesso da adoção do clang como alternativa funcional de compilador para o FreeBSD.

A discussão sobre tornar llvm a infraestrutura básica de compiladores do FreeBSD existe há tempo, e diversas são as motivações como licença, pois o FreeBSD mantem a última versão GPL2 da gcc, a quantidade de patches para contornar esta situação de licenca e evitar a adoção da GPL3, e o melhor gerenciamento de erros e desempenho obtidos na e após a compilação através do clang.

No email em questão, Davis afirmou que a transição para a clang será suave. Testes foram feitos com sucesso nas plataformas x86 e a opção WITH_CLANG_IS_CC será ativada por default (caso queira usar a gcc, use WITHOUT_CLANG_IS_CC), e que a opção IPFIREWALL_FORWARD será suprimida do kernel, sendo compilada por default.

O commit/revisão r242624 possui a seguinte descrição: Após anos de trabalho duro de muitos desenvolvedores da LLVM e do FreeBSD, eles tornaram clang o compilador default para sistemas i386 e amd64.

Sucesso ao pessoal do FreeBSD, depois desta conquista.” [referência: lists.freebsd.org]