maint: Update HACKING
[automake.git] / t / substtarg.sh
blobb117a9c39e13caac6bd303f59cb357ae08da5f74
1 #! /bin/sh
2 # Copyright (C) 2001-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 # Test that substitutions in variables work.
18 # From Lars J. Aas.
20 . test-init.sh
22 cat >> configure.ac << 'END'
23 AC_CONFIG_SOURCE([fakelib.c])
24 AC_PROG_CC
25 AM_PROG_AR
26 RANLIB=:
27 AC_SUBST([RANLIB])
28 SUBST=hei
29 AC_SUBST([SUBST])
30 AC_OUTPUT
31 END
33 cat > Makefile.am << 'END'
34 noinst_LIBRARIES = libfake@SUBST@.a
36 libfake@SUBST@_a_SOURCES = abra.c kadabra.c
38 # Then we override the target rule:
39 libfake@SUBST@.a: Makefile $(libfake@SUBST@_a_OBJECTS) $(libfake@SUBST@_a_DEPENDENCIES)
40 @echo here we do some custom stuff, instead of invoking the linker
41 END
43 : > ar-lib
45 $ACLOCAL
46 AUTOMAKE_fails
47 grep 'overrid.*libfake@SUBST@.a' stderr
48 $AUTOMAKE -Wno-override
49 test $(grep -c '^libfake@SUBST@.a:' Makefile.in) -eq 1