maint: Update HACKING
[automake.git] / t / aclocal-autoconf-version-check.sh
blob00f68b02bb8803ad17e034a1c1a54c38cfef84b5
1 #! /bin/sh
2 # Copyright (C) 2008-2017 Free Software Foundation, Inc.
4 # This program is free software; you can redistribute it and/or modify
5 # it under the terms of the GNU General Public License as published by
6 # the Free Software Foundation; either version 2, or (at your option)
7 # any later version.
9 # This program is distributed in the hope that it will be useful,
10 # but WITHOUT ANY WARRANTY; without even the implied warranty of
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 # GNU General Public License for more details.
14 # You should have received a copy of the GNU General Public License
15 # along with this program. If not, see <https://www.gnu.org/licenses/>.
17 # Make sure autoconf version checks in aclocal.m4 are robust.
19 am_create_testdirs=empty
20 . test-init.sh
22 cat > configure.ac <<END
23 m4_define([AC_AUTOCONF_VERSION], [9999a])
24 dnl!! m4_define([a], [oops])
25 AC_INIT([$me], [1.0])
26 AM_INIT_AUTOMAKE
27 AC_CONFIG_FILES([Makefile])
28 AC_OUTPUT
29 END
31 : > Makefile.am
33 $ACLOCAL
34 $AUTOCONF 2>stderr || { cat stderr >&2; exit 1; }
35 cat stderr >&2
36 grep 'You have another version of autoconf' stderr
37 grep 'aclocal.m4:.*this file was generated for' stderr
38 $AUTOMAKE -a
39 ./configure
40 $MAKE
42 sed 's/^dnl!! //' < configure.ac > configure.tmp
43 cmp configure.ac configure.tmp && fatal_ 'failed to edit configure.ac'
44 mv -f configure.tmp configure.ac
46 run_make -E
47 grep 'You have another version of autoconf' stderr
48 grep 'aclocal.m4:.*this file was generated for autoconf 9999a' stderr