detectar se configure / make foi executado em um diretório de origem

0

Eu tenho um script que instala um software. O script tem respostas preparadas com antecedência para alimentar checkinstallcom elas. checkinstallsolicita diferentemente quando a fonte já foi configurada / fabricada ou não.
Como posso saber se configure/ make/ make installfoi executado no diretório de origem?

Dor
fonte
Você está usando make simples ou ferramentas automáticas?
Benjamin Bannier
Estou executando ./configure, makee checkinstall. Mas checkinstallé essencialmente make install.
Dor

Respostas:

1

Não sei ao certo como é sua configuração, mas ao usar as ferramentas automáticas (como você parece fazer), os arquivos são criados a partir dos arquivos de modelo das ferramentas automáticas, como configure.ine Makefile.am.

As diferentes etapas produzem vários arquivos no diretório de construção que você pode verificar.

  • ./configurecria, por exemplo, Makefileeconfig.status
  • makecria, por exemplo, arquivos abaixo .depse.libs
  • make install não deixa rastros no diretório de construção, mas copia os arquivos para os locais de instalação.

Para verificar se make installfoi executado, você pode complementar as regras de instalação padrão, por exemplo, adicionar ao seuMakefile.am

install-data-local:
        @touch .installed

e depois verifique .installed.

Como ao usar as ferramentas automáticas, não haverá Makefileantes da execução, ./configurevocê teria que lidar com esse caso de maneira diferente.

Benjamin Bannier
fonte