Merge branch 'msvc' into maint
[platform/upstream/automake.git] / tests / distcheck-hook2.test
1 #! /bin/sh
2 # Copyright (C) 2011 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 # Check that no 'distcheck-hook' target is created automatically by
18 # Automake, and that a used-defined 'distcheck-hook' is *not* honored
19 # in a subpackage Makefile.am.
20
21 . ./defs || Exit 1
22
23 set -e
24
25 cat >> configure.in << 'END'
26 AC_CONFIG_SUBDIRS([subpkg])
27 AC_OUTPUT
28 END
29
30 mkdir subpkg
31
32 cat > subpkg/configure.in << 'END'
33 AC_INIT([subpkg], [1.0])
34 AM_INIT_AUTOMAKE
35 AC_CONFIG_FILES([Makefile])
36 AC_OUTPUT
37 END
38
39 cat > Makefile.am <<'END'
40 distcheck-hook:
41         ls -l $(distdir)
42         chmod u+w $(distdir)
43         : > $(distdir)/dc-hook-has-run
44         chmod a-w $(distdir)
45 check-local:
46         ls -l $(srcdir)
47         test -f $(srcdir)/dc-hook-has-run
48 END
49
50 cat > subpkg/Makefile.am <<'END'
51 check-local:
52         ls -l $(srcdir)
53         test ! -r $(srcdir)/dc-hook-has-run
54 END
55
56 $ACLOCAL
57 $AUTOMAKE
58 $AUTOCONF
59 cd subpkg
60 $ACLOCAL
61 $AUTOMAKE
62 $AUTOCONF
63 cd ..
64
65 # For debugging.
66 $FGREP 'distcheck-hook' Makefile.in subpkg/Makefile.in
67
68 $FGREP 'distcheck-hook' subpkg/Makefile.in && Exit 1
69 $FGREP '$(MAKE) $(AM_MAKEFLAGS) distcheck-hook' Makefile.in
70 grep '^distcheck-hook:' Makefile.in
71
72 ./configure
73
74 $MAKE
75 $MAKE check && Exit 1
76 cd subpkg
77 $MAKE check
78 cd ..
79 $MAKE distcheck
80
81 :