daily update
[external/binutils.git] / sim / testsuite / d10v-elf / Makefile.in
1 # Makefile for regression testing the GNU debugger.
2 # Copyright (C) 1992, 1993, 1994, 1995, 2007, 2008, 2009
3 # Free Software Foundation, Inc.
4
5 # This file is part of GDB.
6
7 # This program is free software; you can redistribute it and/or modify
8 # it under the terms of the GNU General Public License as published by
9 # the Free Software Foundation; either version 3 of the License, or
10 # (at your option) any later version.
11 #
12 # This program is distributed in the hope that it will be useful,
13 # but WITHOUT ANY WARRANTY; without even the implied warranty of
14 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15 # GNU General Public License for more details.
16 #
17 # You should have received a copy of the GNU General Public License
18 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
19
20 VPATH = @srcdir@
21 srcdir = @srcdir@
22 srcroot = $(srcdir)/..
23
24 prefix = @prefix@
25 exec_prefix = @exec_prefix@
26
27 host_alias = @host_alias@
28 target_alias = @target_alias@
29 program_transform_name = @program_transform_name@
30 build_canonical = @build@
31 host_canonical = @host@
32 target_canonical = @target@
33 target_cpu = @target_cpu@
34
35
36 SHELL = /bin/sh
37 SUBDIRS = @subdirs@
38 RPATH_ENVVAR = @RPATH_ENVVAR@
39
40 TESTS = \
41         exit47.ko \
42         hello.hi \
43         t-dbt.ok \
44         t-ld-st.ok \
45         t-mac.ok \
46         t-mvtac.ok \
47         t-mvtc.ok \
48         t-msbu.ok \
49         t-mulxu.ok \
50         t-rac.ok \
51         t-rachi.ok \
52         t-rdt.ok \
53         t-rep.ok \
54         t-rte.ok \
55         t-sac.ok \
56         t-sachi.ok \
57         t-sadd.ok \
58         t-slae.ok \
59         t-sp.ok \
60         t-sub2w.ok \
61         t-sub.ok \
62         t-subi.ok \
63         t-ae-ld-d.ok \
64         t-ae-ld-i.ok \
65         t-ae-ld-id.ok \
66         t-ae-ld-im.ok \
67         t-ae-ld-ip.ok \
68         t-ae-ld2w-d.ok \
69         t-ae-ld2w-i.ok \
70         t-ae-ld2w-id.ok \
71         t-ae-ld2w-im.ok \
72         t-ae-ld2w-ip.ok \
73         t-ae-st-d.ok \
74         t-ae-st-i.ok \
75         t-ae-st-id.ok \
76         t-ae-st-im.ok \
77         t-ae-st-ip.ok \
78         t-ae-st-is.ok \
79         t-ae-st2w-d.ok \
80         t-ae-st2w-i.ok \
81         t-ae-st2w-id.ok \
82         t-ae-st2w-im.ok \
83         t-ae-st2w-ip.ok \
84         t-ae-st2w-is.ok \
85         t-mod-ld-pre.ok \
86         t-rie-xx.ok \
87 #
88
89 AS_FOR_TARGET = `\
90   if [ -x ../../../gas/as-new ]; then \
91     echo ../../../gas/as-new ; \
92   else \
93     echo $(target_alias)-as ; \
94   fi`
95
96 LD_FOR_TARGET = `\
97   if [ -x ../../../ld/ld-new ]; then \
98     echo ../../../ld/ld-new ; \
99   else \
100     echo $(target_alias)-ld ; \
101   fi`
102
103 RUN_FOR_TARGET = `\
104   if [ -x ../../../sim/d10v/run ]; then \
105     echo ../../../sim/d10v/run ; \
106   else \
107     echo $(target_alias)-run ; \
108   fi`
109
110 # Force d10v into operating mode.
111 RUNFLAGS_FOR_TARGET=-o
112
113
114 check: sanity $(TESTS)
115 sanity:
116         @eval echo AS_FOR_TARGET=$(AS_FOR_TARGET)
117         @eval echo LD_FOR_TARGET=$(LD_FOR_TARGET)
118         @eval echo RUN_FOR_TARGET=$(RUN_FOR_TARGET)
119
120 clean:
121         rm -f $(TESTS)
122         rm -f *.run *.o
123         rm -f core *.core
124
125 # Rules for running the tests
126
127 .SUFFIXES: .ok .run .hi .ko .ti
128 .run.ok:
129         rm -f tmp-$* $*.hi
130         ulimit -t 5 ; \
131         $(RUN_FOR_TARGET) $(RUNFLAGS_FOR_TARGET) $*.run > tmp-$*
132         mv tmp-$* $*.ok
133 .run.hi:
134         rm -f tmp-$* $*.hi diff-$*
135         ulimit -t 5 ; \
136         $(RUN_FOR_TARGET) $(RUNFLAGS_FOR_TARGET) $*.run > tmp-$*
137         echo 'Hello World!' | diff - tmp-$* > diff-$*
138         cat tmp-$* diff-$* > $*.hi
139 .run.ko:
140         rm -f tmp-$* $*.ko
141         set +e ; \
142         ulimit -t 5 ; \
143         $(RUN_FOR_TARGET) $(RUNFLAGS_FOR_TARGET) $*.run > tmp-$* ; \
144         if [ $$? -eq 47 ] ; then \
145           exit 0 ; \
146         else \
147           exit 1 ; \
148         fi
149         mv tmp-$* $*.ko
150 .run.ti:
151         rm -f tmp-$* $*.ti
152         set +e ; \
153         ulimit -t 5 ; \
154         $(RUN_FOR_TARGET) $(RUNFLAGS_FOR_TARGET) $(INTFLAGS_FOR_TARGET) $*.run > tmp-$*
155         test `cat tmp-$* | wc -l` -eq 10 < /dev/null
156         test `grep Tick tmp-$* | wc -l` -eq 10 < /dev/null
157         mv tmp-$* $*.ti
158
159
160 # Rules for building the test
161 # Preference is for obtaining the executable (.run) from a prebuilt image
162
163 .SUFFIXES: .uue .s .S .run
164 .uue.run:
165         head $* | grep $*.run > /dev/null
166         uudecode $*.uue
167 .run.u:
168         uuencode < $*.run $*.run > $*.u
169 .o.run:
170         $(LD_FOR_TARGET) $(LDFLAGS_FOR_TARGET) -o $*.run $*.o
171 .s.o:
172         $(AS_FOR_TARGET) $(ASFLAGS_FOR_TARGET) -I$(srcdir) $(srcdir)/$*.s -o $*.o
173 .S.o:
174         $(AS_FOR_TARGET) $(ASFLAGS_FOR_TARGET) -I$(srcdir) $(srcdir)/$*.S -o $*.o
175
176
177 Makefile: Makefile.in config.status
178         $(SHELL) ./config.status
179
180 config.status: configure
181         $(SHELL) ./config.status --recheck