Commit | Line | Data |
---|---|---|
4a71579b PC |
1 | # |
2 | # Copyright 2012-2019 Free Software Foundation, Inc. | |
3 | # | |
4 | # This file is part of GNU lightning. | |
5 | # | |
6 | # GNU lightning is free software; you can redistribute it and/or modify it | |
7 | # under the terms of the GNU Lesser General Public License as published | |
8 | # by the Free Software Foundation; either version 3, or (at your option) | |
9 | # any later version. | |
10 | # | |
11 | # GNU lightning is distributed in the hope that it will be useful, but | |
12 | # WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY | |
13 | # or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public | |
14 | # License for more details. | |
15 | # | |
16 | ||
519a9ea1 | 17 | AM_CFLAGS = -I$(top_builddir)/include -I$(top_srcdir)/include -D_GNU_SOURCE |
4a71579b PC |
18 | |
19 | check_PROGRAMS = lightning ccall self setcode nodata ctramp carg cva_list | |
20 | ||
21 | lightning_LDADD = $(top_builddir)/lib/liblightning.la -lm $(SHLIB) | |
22 | lightning_SOURCES = lightning.c | |
23 | ||
24 | ccall_LDADD = $(top_builddir)/lib/liblightning.la -lm $(SHLIB) | |
25 | ccall_SOURCES = ccall.c | |
26 | ||
27 | self_LDADD = $(top_builddir)/lib/liblightning.la -lm $(SHLIB) | |
28 | self_SOURCES = self.c | |
29 | ||
30 | setcode_LDADD = $(top_builddir)/lib/liblightning.la -lm $(SHLIB) | |
31 | setcode_SOURCES = setcode.c | |
32 | ||
33 | nodata_LDADD = $(top_builddir)/lib/liblightning.la -lm $(SHLIB) | |
34 | nodata_SOURCES = nodata.c | |
35 | ||
36 | ctramp_LDADD = $(top_builddir)/lib/liblightning.la -lm $(SHLIB) | |
37 | ctramp_SOURCES = ctramp.c | |
38 | ||
39 | carg_LDADD = $(top_builddir)/lib/liblightning.la -lm $(SHLIB) | |
40 | carg_SOURCES = carg.c | |
41 | ||
42 | cva_list_LDADD = $(top_builddir)/lib/liblightning.la -lm $(SHLIB) | |
43 | cva_list_SOURCES = cva_list.c | |
44 | ||
45 | $(top_builddir)/lib/liblightning.la: | |
46 | cd $(top_builddir)/lib; $(MAKE) $(AM_MAKEFLAGS) liblightning.la | |
47 | ||
48 | EXTRA_DIST = \ | |
49 | 3to2.tst 3to2.ok \ | |
50 | add.tst add.ok \ | |
51 | align.tst align.ok \ | |
52 | allocai.tst allocai.ok \ | |
53 | allocar.tst allocar.ok \ | |
54 | bp.tst bp.ok \ | |
55 | divi.tst divi.ok \ | |
56 | fib.tst fib.ok \ | |
57 | rpn.tst rpn.ok \ | |
58 | ldst.inc \ | |
59 | ldstr.tst ldstr.ok \ | |
60 | ldsti.tst ldsti.ok \ | |
61 | ldstxr.tst ldstxr.ok \ | |
62 | ldstxi.tst ldstxi.ok \ | |
63 | ldstr-c.tst ldstr-c.ok \ | |
64 | ldstxr-c.tst ldstxr-c.ok \ | |
65 | ldstxi-c.tst ldstxi-c.ok \ | |
66 | cvt.tst cvt.ok \ | |
67 | hton.tst hton.ok \ | |
68 | branch.tst branch.ok \ | |
69 | alu.inc \ | |
70 | alu_add.tst alu_add.ok \ | |
71 | alux_add.tst alux_add.ok \ | |
72 | alu_sub.tst alu_sub.ok \ | |
73 | alux_sub.tst alux_sub.ok \ | |
74 | alu_rsb.tst alu_rsb.ok \ | |
75 | alu_mul.tst alu_mul.ok \ | |
76 | alu_div.tst alu_div.ok \ | |
77 | alu_rem.tst alu_rem.ok \ | |
78 | alu_and.tst alu_and.ok \ | |
79 | alu_or.tst alu_or.ok \ | |
80 | alu_xor.tst alu_xor.ok \ | |
81 | alu_lsh.tst alu_lsh.ok \ | |
82 | alu_rsh.tst alu_rsh.ok \ | |
83 | alu_com.tst alu_com.ok \ | |
84 | alu_neg.tst alu_neg.ok \ | |
e0659411 | 85 | movzr.tst movzr.ok \ |
4a71579b PC |
86 | fop_abs.tst fop_abs.ok \ |
87 | fop_sqrt.tst fop_sqrt.ok \ | |
88 | varargs.tst varargs.ok \ | |
89 | stack.tst stack.ok \ | |
90 | clobber.tst clobber.ok \ | |
91 | carry.tst carry.ok \ | |
92 | call.tst call.ok \ | |
93 | float.tst float.ok \ | |
94 | jmpr.tst jmpr.ok \ | |
519a9ea1 | 95 | live.tst live.ok \ |
4a71579b PC |
96 | put.tst put.ok \ |
97 | qalu.inc \ | |
98 | qalu_mul.tst qalu_mul.ok \ | |
99 | qalu_div.tst qalu_div.ok \ | |
100 | range.tst range.ok \ | |
101 | ranger.tst ranger.ok \ | |
102 | ret.tst ret.ok \ | |
103 | tramp.tst tramp.ok \ | |
104 | va_list.tst va_list.ok \ | |
105 | check.sh \ | |
106 | check.x87.sh \ | |
107 | check.arm.sh check.swf.sh \ | |
108 | check.arm.swf.sh \ | |
109 | check.arm4.swf.sh \ | |
110 | check.nodata.sh \ | |
111 | check.x87.nodata.sh \ | |
112 | run-test all.tst | |
113 | ||
114 | base_TESTS = \ | |
115 | 3to2 add align allocai \ | |
116 | allocar bp divi fib rpn \ | |
117 | ldstr ldsti \ | |
118 | ldstxr ldstxi \ | |
119 | ldstr-c ldstxr-c ldstxi-c \ | |
120 | cvt hton branch \ | |
121 | alu_add alux_add \ | |
122 | alu_sub alux_sub alu_rsb \ | |
123 | alu_mul alu_div alu_rem \ | |
124 | alu_and alu_or alu_xor \ | |
125 | alu_lsh alu_rsh \ | |
126 | alu_com alu_neg \ | |
e0659411 | 127 | movzr \ |
4a71579b PC |
128 | fop_abs fop_sqrt \ |
129 | varargs stack \ | |
130 | clobber carry call \ | |
519a9ea1 | 131 | float jmpr live put \ |
4a71579b PC |
132 | qalu_mul qalu_div \ |
133 | range ranger ret tramp \ | |
134 | va_list | |
135 | ||
136 | $(base_TESTS): check.sh | |
137 | $(LN_S) $(srcdir)/check.sh $@ | |
138 | ||
139 | TESTS = $(base_TESTS) | |
140 | ||
141 | if test_x86_x87 | |
142 | #x87_TESTS = $(addsuffix .x87, $(base_TESTS)) | |
143 | x87_TESTS = \ | |
144 | 3to2.x87 add.x87 allocai.x87 \ | |
145 | allocar.x87 bp.x87 divi.x87 fib.x87 \ | |
146 | rpn.x87 ldstr.x87 ldsti.x87 \ | |
147 | ldstxr.x87 ldstxi.x87 \ | |
148 | ldstr-c.x87 ldstxr-c.x87 ldstxi-c.x87 \ | |
149 | cvt.x87 branch.x87 \ | |
150 | alu_add.x87 alux_add.x87 \ | |
151 | alu_sub.x87 alux_sub.x87 alu_rsb.x87 \ | |
152 | alu_mul.x87 alu_div.x87 alu_rem.x87 \ | |
153 | alu_and.x87 alu_or.x87 alu_xor.x87 \ | |
154 | alu_lsh.x87 alu_rsh.x87 \ | |
155 | alu_com.x87 alu_neg.x87 \ | |
e0659411 | 156 | movzr.x87 \ |
4a71579b PC |
157 | fop_abs.x87 fop_sqrt.x87 \ |
158 | varargs.x87 stack.x87 \ | |
159 | clobber.x87 carry.x87 call.x87 \ | |
160 | float.x87 jmpr.x87 put.x87 \ | |
161 | va_list.x87 | |
162 | $(x87_TESTS): check.x87.sh | |
163 | $(LN_S) $(srcdir)/check.x87.sh $@ | |
164 | TESTS += $(x87_TESTS) | |
165 | ||
166 | #x87_nodata_TESTS = $(addsuffix .x87.nodata, $(base_TESTS)) | |
167 | x87_nodata_TESTS = \ | |
168 | 3to2.x87.nodata add.x87.nodata allocai.x87.nodata \ | |
169 | allocar.x87.nodata bp.x87.nodata divi.x87.nodata fib.x87.nodata \ | |
170 | rpn.x87.nodata ldstr.x87.nodata ldsti.x87.nodata \ | |
171 | ldstxr.x87.nodata ldstxi.x87.nodata \ | |
172 | ldstr-c.x87.nodata ldstxr-c.x87.nodata ldstxi-c.x87.nodata \ | |
173 | cvt.x87.nodata branch.x87.nodata \ | |
174 | alu_add.x87.nodata alux_add.x87.nodata \ | |
175 | alu_sub.x87.nodata alux_sub.x87.nodata alu_rsb.x87.nodata \ | |
176 | alu_mul.x87.nodata alu_div.x87.nodata alu_rem.x87.nodata \ | |
177 | alu_and.x87.nodata alu_or.x87.nodata alu_xor.x87.nodata \ | |
178 | alu_lsh.x87.nodata alu_rsh.x87.nodata \ | |
179 | alu_com.x87.nodata alu_neg.x87.nodata \ | |
e0659411 | 180 | movzr.x87.nodata \ |
4a71579b PC |
181 | fop_abs.x87.nodata fop_sqrt.x87.nodata \ |
182 | varargs.x87.nodata stack.x87.nodata \ | |
183 | clobber.x87.nodata carry.x87.nodata call.x87.nodata \ | |
184 | float.x87.nodata jmpr.x87.nodata put.x87.nodata \ | |
185 | va_list.x87.nodata | |
186 | $(x87_nodata_TESTS): check.x87.nodata.sh | |
187 | $(LN_S) $(srcdir)/check.x87.nodata.sh $@ | |
188 | TESTS += $(x87_nodata_TESTS) | |
189 | endif | |
190 | ||
191 | if test_arm_arm | |
192 | #arm_TESTS = $(addsuffix .arm, $(base_TESTS)) | |
193 | arm_TESTS = \ | |
194 | 3to2.arm add.arm align.arm allocai.arm \ | |
195 | allocar.arm bp.arm divi.arm fib.arm \ | |
196 | rpn.arm ldstr.arm ldsti.arm \ | |
197 | ldstxr.arm ldstxi.arm \ | |
198 | ldstr-c.arm ldstxr-c.arm ldstxi-c.arm \ | |
199 | cvt.arm hton.arm branch.arm \ | |
200 | alu_add.arm alux_add.arm \ | |
201 | alu_sub.arm alux_sub.arm alu_rsb.arm \ | |
202 | alu_mul.arm alu_div.arm alu_rem.arm \ | |
203 | alu_and.arm alu_or.arm alu_xor.arm \ | |
204 | alu_lsh.arm alu_rsh.arm \ | |
205 | alu_com.arm alu_neg.arm \ | |
e0659411 | 206 | movzr.arm \ |
4a71579b PC |
207 | fop_abs.arm fop_sqrt.arm \ |
208 | varargs.arm stack.arm \ | |
209 | clobber.arm carry.arm call.arm \ | |
210 | float.arm jmpr.arm tramp.arm range.arm \ | |
211 | ranger.arm put.arm va_list.arm | |
212 | $(arm_TESTS): check.arm.sh | |
213 | $(LN_S) $(srcdir)/check.arm.sh $@ | |
214 | TESTS += $(arm_TESTS) | |
215 | endif | |
216 | ||
217 | if test_arm_swf | |
218 | #swf_TESTS = $(addsuffix .swf, $(base_TESTS)) | |
219 | swf_TESTS = \ | |
220 | 3to2.swf add.swf allocai.swf \ | |
221 | allocar.swf bp.swf divi.swf fib.swf \ | |
222 | rpn.swf ldstr.swf ldsti.swf \ | |
223 | ldstxr.swf ldstxi.swf \ | |
224 | ldstr-c.swf ldstxr-c.swf ldstxi-c.swf \ | |
225 | cvt.swf hton.swf branch.swf \ | |
226 | alu_add.swf alux_add.swf \ | |
227 | alu_sub.swf alux_sub.swf alu_rsb.swf \ | |
228 | alu_mul.swf alu_div.swf alu_rem.swf \ | |
229 | alu_and.swf alu_or.swf alu_xor.swf \ | |
230 | alu_lsh.swf alu_rsh.swf \ | |
231 | alu_com.swf alu_neg.swf \ | |
e0659411 | 232 | movzr.swf \ |
4a71579b PC |
233 | fop_abs.swf fop_sqrt.swf \ |
234 | varargs.swf stack.swf \ | |
235 | clobber.swf carry.swf call.swf \ | |
236 | float.swf jmpr.swf tramp.swf range.swf \ | |
237 | ranger.swf put.swf va_list.swf | |
238 | $(swf_TESTS): check.swf.sh | |
239 | $(LN_S) $(srcdir)/check.swf.sh $@ | |
240 | TESTS += $(swf_TESTS) | |
241 | if test_arm_arm | |
242 | #arm_swf_TESTS = $(addsuffix .arm.swf, $(base_TESTS)) | |
243 | arm_swf_TESTS = \ | |
244 | 3to2.arm.swf add.arm.swf allocai.arm.swf \ | |
245 | allocar.arm.swf bp.arm.swf divi.arm.swf fib.arm.swf \ | |
246 | rpn.arm.swf ldstr.arm.swf ldsti.arm.swf \ | |
247 | ldstxr.arm.swf ldstxi.arm.swf \ | |
248 | ldstr-c.arm.swf ldstxr-c.arm.swf ldstxi-c.arm.swf \ | |
249 | cvt.arm.swf hton.arm.swf branch.arm.swf \ | |
250 | alu_add.arm.swf alux_add.arm.swf \ | |
251 | alu_sub.arm.swf alux_sub.arm.swf alu_rsb.arm.swf \ | |
252 | alu_mul.arm.swf alu_div.arm.swf alu_rem.arm.swf \ | |
253 | alu_and.arm.swf alu_or.arm.swf alu_xor.arm.swf \ | |
254 | alu_lsh.arm.swf alu_rsh.arm.swf \ | |
255 | alu_com.arm.swf alu_neg.arm.swf \ | |
e0659411 | 256 | movzr.arm.swf \ |
4a71579b PC |
257 | fop_abs.arm.swf fop_sqrt.arm.swf \ |
258 | varargs.arm.swf stack.arm.swf \ | |
259 | clobber.arm.swf carry.arm.swf call.arm.swf \ | |
260 | float.arm.swf jmpr.arm.swf tramp.arm.swf range.arm.swf \ | |
261 | ranger.arm.swf put.arm.swf va_list.arm.swf | |
262 | $(arm_swf_TESTS): check.arm.swf.sh | |
263 | $(LN_S) $(srcdir)/check.arm.swf.sh $@ | |
264 | TESTS += $(arm_swf_TESTS) | |
265 | endif | |
266 | if test_arm_arm | |
267 | #arm4_swf_TESTS = $(addsuffix .arm4.swf, $(base_TESTS)) | |
268 | arm4_swf_TESTS = \ | |
269 | 3to2.arm4.swf add.arm4.swf allocai.arm4.swf \ | |
270 | allocar.arm4.swf bp.arm4.swf divi.arm4.swf fib.arm4.swf \ | |
271 | rpn.arm4.swf ldstr.arm4.swf ldsti.arm4.swf \ | |
272 | ldstxr.arm4.swf ldstxi.arm4.swf \ | |
273 | ldstr-c.arm4.swf ldstxr-c.arm4.swf ldstxi-c.arm4.swf \ | |
274 | cvt.arm4.swf hton.arm4.swf branch.arm4.swf \ | |
275 | alu_add.arm4.swf alux_add.arm4.swf \ | |
276 | alu_sub.arm4.swf alux_sub.arm4.swf alu_rsb.arm4.swf \ | |
277 | alu_mul.arm4.swf alu_div.arm4.swf alu_rem.arm4.swf \ | |
278 | alu_and.arm4.swf alu_or.arm4.swf alu_xor.arm4.swf \ | |
279 | alu_lsh.arm4.swf alu_rsh.arm4.swf \ | |
280 | alu_com.arm4.swf alu_neg.arm4.swf \ | |
e0659411 | 281 | movzr.arm4.swf \ |
4a71579b PC |
282 | fop_abs.arm4.swf fop_sqrt.arm4.swf \ |
283 | varargs.arm4.swf stack.arm4.swf \ | |
284 | clobber.arm4.swf carry.arm4.swf call.arm4.swf \ | |
285 | float.arm4.swf jmpr.arm4.swf tramp.arm4.swf \ | |
286 | range.arm4.swf ranger.arm4.swf put.arm4.swf \ | |
287 | va_list.arm4.swf | |
288 | $(arm4_swf_TESTS): check.arm4.swf.sh | |
289 | $(LN_S) $(srcdir)/check.arm4.swf.sh $@ | |
290 | TESTS += $(arm4_swf_TESTS) | |
291 | endif | |
292 | endif | |
293 | ||
294 | if test_nodata | |
295 | #nodata_TESTS = $(addsuffix .nodata, $(base_TESTS)) | |
296 | nodata_TESTS = \ | |
297 | 3to2.nodata add.nodata allocai.nodata \ | |
298 | allocar.nodata bp.nodata divi.nodata fib.nodata \ | |
299 | rpn.nodata ldstr.nodata ldsti.nodata \ | |
300 | ldstxr.nodata ldstxi.nodata \ | |
301 | ldstr-c.nodata ldstxr-c.nodata ldstxi-c.nodata \ | |
302 | cvt.nodata branch.nodata \ | |
303 | alu_add.nodata alux_add.nodata \ | |
304 | alu_sub.nodata alux_sub.nodata alu_rsb.nodata \ | |
305 | alu_mul.nodata alu_div.nodata alu_rem.nodata \ | |
306 | alu_and.nodata alu_or.nodata alu_xor.nodata \ | |
307 | alu_lsh.nodata alu_rsh.nodata \ | |
308 | alu_com.nodata alu_neg.nodata \ | |
e0659411 | 309 | movzr.nodata \ |
4a71579b PC |
310 | fop_abs.nodata fop_sqrt.nodata \ |
311 | varargs.nodata stack.nodata \ | |
312 | clobber.nodata carry.nodata call.nodata \ | |
313 | float.nodata jmpr.nodata tramp.nodata \ | |
314 | range.nodata ranger.nodata put.nodata \ | |
315 | va_list.nodata | |
316 | $(nodata_TESTS): check.nodata.sh | |
317 | $(LN_S) $(srcdir)/check.nodata.sh $@ | |
318 | TESTS += $(nodata_TESTS) | |
319 | endif | |
320 | ||
321 | TESTS += ccall self setcode nodata ctramp carg cva_list | |
322 | CLEANFILES = $(TESTS) | |
323 | ||
324 | #TESTS_ENVIRONMENT=$(srcdir)/run-test; | |
325 | ||
326 | debug: lightning | |
327 | $(LIBTOOL) --mode=execute gdb lightning |