tests: cosmetic changes in t/extra-sources.sh
[platform/upstream/automake.git] / t / man6.sh
1 #! /bin/sh
2 # Copyright (C) 2010-2013 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 # Ensure 'make distcheck' passes when help2man generates man pages,
18 # even if the 'missing' script is involved.
19
20 required=help2man
21 . test-init.sh
22
23 # Avoid a spurious failure due to a known FreeBSD make incompatibility.
24 useless_vpath_rebuild \
25   && skip_ "VPATH useless rebuild detected (see bug#7884)"
26
27 cat > Makefile.am << 'END'
28 dist_man_MANS = $(srcdir)/foobar.1 bazquux.1 zardoz.1
29 dist_bin_SCRIPTS = foobar bazquux zardoz
30 $(srcdir)/foobar.1:
31         $(HELP2MAN) --output=$@ $(srcdir)/foobar
32 bazquux.1:
33         $(HELP2MAN) --output=$@ $(srcdir)/bazquux
34 zardoz.1:
35         $(HELP2MAN) --output=$(srcdir)/zardoz.1 $(srcdir)/zardoz
36 END
37
38 cat >> configure.ac <<'END'
39 AM_MISSING_PROG([HELP2MAN], [help2man])
40 AC_OUTPUT
41 END
42
43 cat > foobar <<'END'
44 #! /bin/sh
45 while test $# -gt 0; do
46   case $1 in
47     -h | --help) echo "usage: $0 [OPTIONS]..."; exit 0;;
48     -v | --version) echo "$0 1.0"; exit 0;;
49   esac
50   shift
51 done
52 END
53
54 cp foobar bazquux
55 cp foobar zardoz
56
57 chmod +x foobar bazquux zardoz
58
59 $ACLOCAL
60 $AUTOMAKE
61 $AUTOCONF
62
63 mkdir build
64 cd build
65
66 ../configure
67 # Sanity check.
68 grep '^HELP2MAN *=.*/missing help2man' Makefile
69
70 $MAKE
71 $FGREP foobar ../foobar.1
72 $FGREP bazquux ./bazquux.1
73 $FGREP zardoz ../zardoz.1
74
75 $MAKE distdir
76 $FGREP foobar  $me-1.0/foobar.1
77 $FGREP bazquux $me-1.0/bazquux.1
78 $FGREP zardoz  $me-1.0/zardoz.1
79
80 $MAKE distcheck
81
82 cd ..
83 rm -f *.1 # Remove leftover generated manpages.
84
85 ./configure
86 # Sanity check.
87 grep '^HELP2MAN *=.*/missing help2man' Makefile
88
89 $MAKE
90 $FGREP foobar  foobar.1
91 $FGREP bazquux bazquux.1
92 $FGREP zardoz  zardoz.1
93
94 $MAKE distdir
95 $FGREP foobar  $me-1.0/foobar.1
96 $FGREP bazquux $me-1.0/bazquux.1
97 $FGREP zardoz  $me-1.0/zardoz.1
98
99 $MAKE distcheck
100
101 :