Merge branch 'maint'
[platform/upstream/automake.git] / t / werror4.sh
1 #! /bin/sh
2 # Copyright (C) 2010-2012 Free Software Foundation, Inc.
3 #
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.
8 #
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.
13 #
14 # You should have received a copy of the GNU General Public License
15 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
16
17 # -Werror and local -Werror settings should be flagged for the user.
18
19 . ./defs || exit 1
20
21 cat >>configure.ac <<\END
22 AC_CONFIG_FILES([sub/Makefile])
23 AC_OUTPUT
24 END
25
26 mkdir sub
27 cat >sub/Makefile.am <<\END
28 AUTOMAKE_OPTIONS = -Werror
29 SUB = foo
30 SUB = bar
31 END
32 cat >Makefile.am <<\END
33 AUTOMAKE_OPTIONS = -Werror
34 VAR = foo
35 VAR = bar
36 END
37
38 $ACLOCAL
39
40 AUTOMAKE_fails -Wno-error
41 grep 'VAR multiply defined' stderr
42 grep 'SUB multiply defined' stderr
43 test $(grep -c 'warnings are treated as errors' stderr) -eq 1
44
45 sed '/AUTOMAKE_OPTIONS/d' sub/Makefile.am > t
46 mv -f t sub/Makefile.am
47
48 AUTOMAKE_fails -Wno-error
49 grep 'VAR multiply defined' stderr
50 grep 'SUB multiply defined' stderr
51 test $(grep -c 'warnings are treated as errors' stderr) -eq 1
52
53 sed '/AUTOMAKE_OPTIONS/d' Makefile.am > t
54 mv -f t Makefile.am
55
56 AUTOMAKE_fails -Werror
57 grep 'VAR multiply defined' stderr
58 grep 'SUB multiply defined' stderr
59 test $(grep -c 'warnings are treated as errors' stderr) -eq 1
60
61 AUTOMAKE_run -Wno-error
62 grep 'VAR multiply defined' stderr
63 grep 'SUB multiply defined' stderr
64 grep 'warnings are treated as errors' stderr && exit 1
65
66 :