2010-11-27 1 views
2

Das nervt mich schon seit Jahren, aber ich habe es einfach ignoriert, so wie ich es bei allen anderen vermute.Wie kann ich autoconf sagen, nicht nach fortran, C++ etc. zu suchen, wenn mein Paket nur in C gebaut wird?

AM_INIT_AUTOMAKE([dist-bzip2]) 
AC_PROG_CC 
AC_PROG_LIBTOOL 
AC_C_INLINE 
AM_PROG_CC_C_O 

Mit der oben in meinem configure.ac Datei, gehen konfigurieren und mir einen C-Compiler finden, aber es geht dann weiter auf:

checking for g++... g++ 
checking whether we are using the GNU C++ compiler... yes 
checking whether g++ accepts -g... yes 
checking dependency style of g++... gcc3 
checking how to run the C++ preprocessor... g++ -E 
checking for g77... no 
checking for xlf... no 
checking for f77... no 
checking for frt... no 
checking for pgf77... no 
checking for cf77... no 
checking for fort77... no 
checking for fl32... no 
checking for af77... no 
checking for xlf90... no 
checking for f90... no 
checking for pgf90... no 
checking for pghpf... no 
checking for epcf90... no 
checking for gfortran... gfortran 
checking whether we are using the GNU Fortran 77 compiler... yes 
checking whether gfortran accepts -g... yes 
checking the maximum length of command line arguments... 1966080 

Das ist nicht wirklich etwas weh tut, es ist einfach fügt visuelles Rauschen hinzu und lässt die Dinge ein wenig länger laufen - auch das ist nicht wichtig, aber es nervt mich seit Jahren.

Ich habe versucht mit --with-tags = C, AC_LANG ([C]) und ein paar andere Tricks mit Shell-Variablen (definitiv fühlt sich wie der falsche Weg ...), um zu sehen, ob ich das drehen kann aus.

Kennt jemand die autoconf/automake/libtool gesegnete Möglichkeit, nur für C konfigurieren zu konfigurieren?

Antwort

6

Wenn Sie libtool 1.5 oder früher verwenden, müssen Sie auf einen schmutzigen Trick zurückgreifen. Setzen Sie diese in Ihrem configure.ac:

m4_defun([_LT_AC_LANG_CXX_CONFIG], [:]) 
m4_defun([_LT_AC_LANG_F77_CONFIG], [:]) 

Oder Sie könnten wechseln 2,2 bis libtool oder später, wird es automatisch (und intelligent) erkennt, was zu suchen Compiler.

+0

Ich werde die m4_defun als eine effektive und nicht zu schmutzig Trick akzeptieren; Vielen Dank! –

2

Wie Ptomato sagt, ist der richtige Weg, dies zu tun, ein modernes Libtool zu verwenden. In configure.ac:

# Set up libtool. The argument enables support for win32 DLLs 
# and replaces AC_LIBTOOL_WIN32_DLL. 
LT_INIT([win32-dll]) 
# Add C support to libtool 
AC_PROG_CC 
Verwandte Themen