2013-05-06 15 views
8

Abbiamo la libreria ctemplate inclusa nel nostro progetto git-managed basato su GNU Autoconf.Quali file di un progetto autoconf inserire in .gitignore?

Vorrei mettere tutto ciò che viene generato da Autoconf nel file .gitignore per evitare conflitti se qualcuno accidentalmente commette i suoi file generati specifici della piattaforma.

Qualcuno può dirmi come capire l'elenco completo dei file che autoconf genera/modifica per tutte le piattaforme (Mac, Ubuntu, CentOS, ecc.)?

+0

Non una risposta alla domanda a fondo pagina - non ero io ... ma, sembra piuttosto banale 1) iniziare con i file che hai scritto e impegnarli, 2) lanciare 'autoconf' e guarda quali file esistono ora - nulla di nuovo è stato generato da autoconf - aggiungi quelli a '.gitignore' ... – twalberg

+0

Questo potrebbe funzionare per la tua macchina locale ma autoconf può anche generare roba solo su piattaforme specifiche. – Korbi

+0

Non assegnare privilegi di commit a chiunque voglia eseguire il commit di file generati da autotools :-P – ptomato

risposta

14

Ecco quello che ho nel mio varie .gitignore (su Debian testing):

Libreria condivisa: (libtool)

/Makefile 
/Makefile.in 
/aclocal.m4 
/autom4te.cache/ 
/config.* 
/configure 
/depcomp 
/install-sh 
/libtool 
/ltmain.sh 
/m4/ 
/missing 
/stamp-h? 
.deps/ 
.dirstamp 
.libs/ 
*.l[ao] 
*~ 

eseguibile:

/Makefile 
/Makefile.in 
/aclocal.m4 
/autom4te.cache/ 
/config.* 
/configure 
/m4/ 
/stamp-h? 
.deps/ 
.dirstamp 
*.o 
*~ 

È potrebbe voler adattarsi un po ', ma questo è il grosso di esso. make dist-clean seguito da commit, ricostruzione e infine git status potrebbe mostrarti nuovi file, a seconda di cosa genera esattamente la tua build.

+0

hm, sembra che alcuni dei file all'interno della directory m4/siano necessari. Ricevo configure.ac:65: errore: probabilmente una macro non definita: AC_COMPILER_CHARACTERISTICS – Korbi

+0

Stai usando prima "autoreconf --install"? Lo faccio, e rigenera la directory 'm4'. – syam

+1

Lavorerei da un 'make maintainer-clean' piuttosto che da' distclean'. –