In gettext's autogen.sh, we use "automake --add-missing --copy" in order to fetch missing Automake infrastructure.
But there is a pitfall: Once you have added the file to the git checkout of your package, it will *not* be upgraded when new automake releases are installed. Witness: I made a GNU gettext checkout in January 2016, probably with Automake 1.13 or so. The timestamps of the files are: build-aux/ar-lib:scriptversion=2012-01-30.22; # UTC build-aux/compile:scriptversion=2012-01-04.17; # UTC build-aux/depcomp:scriptversion=2011-12-04.11; # UTC build-aux/elisp-comp:scriptversion=2010-02-06.18; # UTC build-aux/install-sh:scriptversion=2011-01-19.21; # UTC build-aux/mdate-sh:scriptversion=2010-08-21.06; # UTC build-aux/missing:scriptversion=2012-01-06.13; # UTC build-aux/mkinstalldirs:scriptversion=2005-06-29.22 build-aux/test-driver:scriptversion=2013-07-13.22; # UTC build-aux/ylwrap:scriptversion=2011-08-25.18; # UTC After running "./autogen.sh" with Automake 1.15, they are unchanged! In libiconv or libsigsegv, this way, I got script files that were 7 years old. The 'missing' program was complaining about invalid arguments, and so on. Here's the fix: Remove the files before running "automake --add-missing --copy". diff --git a/autogen.sh b/autogen.sh index f1a13a5..178371a 100755 --- a/autogen.sh +++ b/autogen.sh @@ -432,6 +432,9 @@ if ! test -f gettext-tools/misc/archive.dir.tar; then test $retval -eq 0 || exit $retval fi +## Make sure we get new versions of files brought in by automake. +#(cd build-aux && rm -f ar-lib compile depcomp install-sh mdate-sh missing test-driver) + # Generate configure script in each subdirectories. dir0=`pwd`