Hi, This error message aclocal.m4:14: error: this file was generated for autoconf 2.61. You have another version of autoconf. is causing a major regression in the functioning of automake and the GNU build system. Namely, a change in Makefile.am does not cause a corresponding change to Makefile.in to happen during "make", in many circumstances. Before automake-1.10, for ten years, you could make modifications to Makefile.am, then type "make", and Makefile.in was updated, provided that you had installed reasonably up-to-date versions of automake, autoconf, m4 and perl. This is no longer the case. It does not work any more if the version of autoconf that you have installed is not *precisely* the same version as was used to generate the configure and Makefile.in. And since there are 3 current releases of autoconf (2.59, 2.60, 2.61), you have a 2/3 chance of failing this criterion. To reproduce: my system has $ automake --version automake (GNU automake) 1.10 $ autoconf --version autoconf (GNU Autoconf) 2.61b Download http://josefsson.org/libidn/releases/libidn-0.6.14.tar.gz, unpack it, and do "./configure" and "make". I'm not the author of this package, but I need to try a modification to its Makefile.am. So I change it like this: --- lib/Makefile.am.bak 2007-05-31 12:31:00.000000000 +0200 +++ lib/Makefile.am 2007-06-21 00:40:53.000000000 +0200 @@ -37,7 +37,7 @@ idn-int.h: if test -n "$(STDINT_H)"; then \ - cp gl/stdint.h idn-int.h; \ + sed -e s/include_next/include/ gl/stdint.h > idn-int.h; \ else \ echo '#include <stdint.h>' > idn-int.h; \ fi Then: $ rm lib/idn-int.h $ make What I expected, is that the new command for creating lib/idn-int.h gets executed. Instead, the old command gets executed: $ make make all-recursive make[1]: Entering directory `/build/libidn-0.6.14' Making all in gl make[2]: Entering directory `/build/libidn-0.6.14/gl' cd .. && /bin/sh ./config.status gl/Makefile depfiles config.status: creating gl/Makefile config.status: executing depfiles commands make[2]: Leaving directory `/build/libidn-0.6.14/gl' make[2]: Entering directory `/build/libidn-0.6.14/gl' make all-am make[3]: Entering directory `/build/libidn-0.6.14/gl' make[3]: Nothing to be done for `all-am'. make[3]: Leaving directory `/build/libidn-0.6.14/gl' make[2]: Leaving directory `/build/libidn-0.6.14/gl' Making all in lib/gl make[2]: Entering directory `/build/libidn-0.6.14/lib/gl' cd ../.. && /bin/sh ./config.status lib/gl/Makefile depfiles config.status: creating lib/gl/Makefile config.status: executing depfiles commands make[2]: Leaving directory `/build/libidn-0.6.14/lib/gl' make[2]: Entering directory `/build/libidn-0.6.14/lib/gl' make all-am make[3]: Entering directory `/build/libidn-0.6.14/lib/gl' make[3]: Nothing to be done for `all-am'. make[3]: Leaving directory `/build/libidn-0.6.14/lib/gl' make[2]: Leaving directory `/build/libidn-0.6.14/lib/gl' Making all in lib make[2]: Entering directory `/build/libidn-0.6.14/lib' cd .. && /bin/sh /build/libidn-0.6.14/build-aux/missing --run automake-1.10 --gnits lib/Makefile aclocal.m4:14: error: this file was generated for autoconf 2.61. You have another version of autoconf. If you want to use that, you should regenerate the build system entirely. aclocal.m4:14: the top level autom4te: /packages/gnu/bin/m4 failed with exit status: 63 automake-1.10: autoconf failed with exit status: 63 WARNING: `automake-1.10' is probably too old. You should only need it if you modified `Makefile.am', `acinclude.m4' or `configure.ac'. You might want to install the `Automake' and `Perl' packages. Grab them from any GNU archive site. cd .. && /bin/sh ./config.status lib/Makefile depfiles config.status: creating lib/Makefile config.status: executing depfiles commands make[2]: Leaving directory `/build/libidn-0.6.14/lib' make[2]: Entering directory `/build/libidn-0.6.14/lib' if test -n "stdint.h"; then \ cp gl/stdint.h idn-int.h; \ else \ echo '#include <stdint.h>' > idn-int.h; \ fi make all-am make[3]: Entering directory `/build/libidn-0.6.14/lib' /bin/sh ../libtool --tag=CC --mode=compile gcc -DLOCALEDIR=\"/usr/local/share/locale\" -DHAVE_CONFIG_H -I. -I.. -I./gl -Igl -g -O2 -MT nfkc.lo -MD -MP -MF .deps/nfkc.Tpo -c -o nfkc.lo nfkc.c ... Are we now supposed to edit Makefile.in by hand each time we modify Makefile.am? Or are we supposed to have each autoconf release installed in a separate directory, and before digging into a package, first look into the header of the aclocal.m4 of that package for the version of autoconf being used, and then set our PATH so as to have an autoconf from precisely that version available in PATH? Or is there an "obvious" workaround that I'm not seeing? Bruno _______________________________________________ Autoconf mailing list Autoconf@xxxxxxx http://lists.gnu.org/mailman/listinfo/autoconf