tests: avoid two spurious failures on FreeBSD
[automake.git] / t / mkdirp-deprecation.sh
blob68ffa58198ac31c24f7900a932ec4d9fa8ab7d8a
1 #! /bin/sh
2 # Copyright (C) 2012 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 <http://www.gnu.org/licenses/>.
17 # Check that the AM_PROG_MKDIR_P macro is deprecated; it will be
18 # be removed in the next major Automake release. But also check
19 # that it still works as expected in the current release series.
21 . ./defs || exit 1
23 cat >> configure.ac << 'END'
24 AM_PROG_MKDIR_P
25 AC_CONFIG_FILES([sub/Makefile])
26 AC_OUTPUT
27 END
29 cat > Makefile.am << 'END'
30 SUBDIRS = sub
31 all-local:
32 $(mkdir_p) . dir1/a
33 @mkdir_p@ . dir2/b
34 check-local: all
35 test -d dir1/a
36 test -d dir2/b
37 test -d dir3/c
38 test -d dir3/d
39 END
41 mkdir sub
42 cat > sub/Makefile.am << 'END'
43 # '$(mkdir_p)' should continue to work even in subdir makefiles.
44 all-local:
45 $(mkdir_p) .. ../dir3/c
46 @mkdir_p@ .. ../dir3/d
47 END
49 grep_err ()
51 loc='^configure.ac:4:'
52 grep "$loc.*AM_PROG_MKDIR_P.*deprecated" stderr
53 grep "$loc.* use .*AC_PROG_MKDIR_P" stderr
54 grep "$loc.* use '\$(MKDIR_P)' instead of '\$(mkdir_p)'.*Makefile" stderr
57 $ACLOCAL
59 $AUTOCONF -Werror -Wobsolete 2>stderr && { cat stderr >&2; exit 1; }
60 cat stderr >&2
61 grep_err
63 $AUTOCONF -Werror -Wno-obsolete
65 AUTOMAKE_fails
66 grep_err
67 AUTOMAKE_fails --verbose -Wnone -Wobsolete
68 grep_err
70 $AUTOMAKE -Wno-obsolete
72 ./configure
73 $MAKE check-local
74 $MAKE distcheck