Merge branch 'msvc' into maint
[platform/upstream/automake.git] / tests / suffix9.test
1 #! /bin/sh
2 # Copyright (C) 2002, 2010 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 # Make sure that Automake choose the shorter route between suffixes
18 # (related to PR/37)
19
20 . ./defs || Exit 1
21
22 set -e
23
24 cat >>configure.in << 'END'
25 AC_PROG_CC
26 END
27
28 $ACLOCAL
29
30 #  x_ -> y -> c -> o
31 #   \________/
32 #
33 # Automake should follow the bottom route: x_ -> c -> o because
34 # it is shorter.
35 #
36 # It should not take the "-> y ->" route.  We use `y' here so that
37 # then Automake will complains that YACC is not defined and the test will
38 # fail when this happens.
39
40 cat >Makefile.am << 'END'
41 bin_PROGRAMS = foo
42 foo_SOURCES = foo.x_
43
44 .x_.y:
45         cp $< $@
46 .x_.c:
47         cp $< $@
48 END
49
50 $AUTOMAKE -a
51
52 # Idem with the rules the another order.
53
54 cat >Makefile.am << 'END'
55 bin_PROGRAMS = foo
56 foo_SOURCES = foo.x_
57
58 .x_.c:
59         cp $< $@
60 .x_.y:
61         cp $< $@
62 END
63
64 $AUTOMAKE -a
65
66 :