Eu tenho um projeto que usa as ferramentas automáticas do GNU para se construir. Estou tentando modificar para que as ferramentas automáticas gerem todos os arquivos de controle sem versão em um diretório separado, para que eu possa manter a árvore de origem limpa dos arquivos temporários. Alguém tem alguma idéia de como fazer isso?
10
Respostas:
O pacote autotools possui muitos caminhos e nomes relativos codificados por um bom motivo. Sua melhor opção é resumir a saída e identificá-la como ignorada em seu controle de revisão, por exemplo
.cvsignore
, em.hgignore
ou comosvn:ignore
atributo. Alguns RCS permitem especificar recursivamente curingas.fonte
Solução: faça uma compilação fora da fonte
Exemplo com verificação automatizada
Por exemplo, isso buscará e criará o hello GNU e verificará se a árvore de origem não foi alterada nem um pouquinho.
Preparação da árvore de origem
Esta parte busca e prepara os diretórios.
Parte genérica: reutilize isso no seu projeto
Esta parte pode ser usada com outros projetos baseados em autoconf. Basta entrar no seu projeto antes de executar. Cuidado: isso funciona
rm
, se jogar com variantes tenha cuidado, você é responsável em qualquer caso.Verificar parte
Isso verifica se a compilação está perfeitamente fora da fonte.
Aqui ele mostra isso:
Bônus: instalação não raiz
A
--prefix="${MYPREFIX?}"
parte acima é opcional. Ele permite fazer um "make install" local à sua conta. Se você quiser o "sudo make install" tradicional em todo o sistema, poderá removê-lo--prefix="${MYPREFIX?}"
.fonte