84622435ab9109b55e791ed7dc2f63a2b650cd19
[platform/upstream/automake.git] / tests / suffix9.test
1 #! /bin/sh
2 # Copyright (C) 2002  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 3, 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 echo AC_PROG_CC >>configure.in
25
26 #  x_ -> y -> c -> o
27 #   \________/
28 #
29 # Automake should follow the bottom route: x_ -> c -> o because
30 # it is shorter.
31 #
32 # It should not take the "-> y ->" route.  We use `y' here so that
33 # then Automake will complains that YACC is not defined and the test will
34 # fail when this happens.
35
36 cat >Makefile.am << 'END'
37 bin_PROGRAMS = foo
38 foo_SOURCES = foo.x_
39
40 .x_.y:
41         cp $< $@
42 .x_.c:
43         cp $< $@
44 END
45
46 $ACLOCAL
47 $AUTOMAKE -a
48
49 # Idem with the rules the another order.
50
51 cat >Makefile.am << 'END'
52 bin_PROGRAMS = foo
53 foo_SOURCES = foo.x_
54
55 .x_.c:
56         cp $< $@
57 .x_.y:
58         cp $< $@
59 END
60
61 $AUTOMAKE -a