2 TEST_PROG=../interpreter/mint
3 JITTEST_PROG=../mini/mono
4 RUNTIME_ARGS=--config tests-config --optimize=all
7 CSC=mcs --unsafe -nowarn:0162
9 BENCHSRC=fib.cs random.cs nested-loops.cs ackermann.cs tight-loop.cs sieve.cs
44 valuetype-gettype.cs \
45 static-constructor.cs \
117 appdomain-client.cs \
171 # These only compile with MS CSC
187 TESTSI_CS=$(TEST_CS_SRC:.cs=.exe)
188 TESTSI_IL=$(TEST_IL_SRC:.il=.exe)
189 TESTBS=$(BENCHSRC:.cs=.exe)
191 EXTRA_DIST=test-driver $(TEST_CS_SRC) $(TEST_IL_SRC)
196 %.exe: %.cs TestDriver.dll
197 $(CSC) -r TestDriver.dll -out:$@ $<
202 $(CSC) -target:library -o $@ $(srcdir)/../mini/TestDriver.cs
204 test_cs: $(TEST_PROG) $(TESTSI_CS) libtest.la
207 export LD_LIBRARY_PATH="`pwd`/.libs:$${LD_LIBRARY_PATH}"; \
208 for i in $(TESTSI_CS); do \
209 if $(srcdir)/test-driver $(TEST_PROG) $$i $(RUNTIME_ARGS); \
211 passed=`expr $${passed} + 1`; \
213 if [ $$? = 2 ]; then break; fi; \
214 failed=`expr $${failed} + 1`; \
217 echo; echo ".cs: $${passed} test(s) passed. $${failed} test(s) failed."; echo
219 test_il: $(TEST_PROG) $(TESTSI_IL) libtest.la
222 export LD_LIBRARY_PATH="`pwd`/.libs:$${LD_LIBRARY_PATH}"; \
223 for i in $(TESTSI_IL); do \
224 if $(srcdir)/test-driver $(TEST_PROG) $$i $(RUNTIME_ARGS); \
226 passed=`expr $${passed} + 1`; \
228 if [ $$? = 2 ]; then break; fi; \
229 failed=`expr $${failed} + 1`; \
232 echo; echo ".il: $${passed} test(s) passed. $${failed} test(s) failed."; echo
234 testb: $(TEST_PROG) $(TESTBS)
235 for i in $(TESTBS); do \
236 $(srcdir)/test-driver $(TEST_PROG) $$i $(RUNTIME_ARGS); \
239 testjit: $(TESTSI_CS) $(TESTBS) libtest.la
243 export LD_LIBRARY_PATH="`pwd`/.libs:$${LD_LIBRARY_PATH}"; \
244 for i in $(TESTSI_CS) $(TESTBS); do \
246 if $(srcdir)/test-driver $(JITTEST_PROG) $$i $(RUNTIME_ARGS); \
248 passed=`expr $${passed} + 1`; \
250 if [ $$? = 2 ]; then break; fi; \
251 failed=`expr $${failed} + 1`; \
252 failed_tests="$${failed_tests} $$i"; \
255 echo "$${passed} test(s) passed. $${failed} test(s) failed."; \
256 if [ $$failed > 0 ]; then echo -e "\nFailed tests:\n"; for i in $${failed_tests}; do echo $${i}; done; fi;
258 testaot: $(TESTSI_CS) $(TESTBS) libtest.la
262 export LD_LIBRARY_PATH="`pwd`/.libs:$${LD_LIBRARY_PATH}"; \
263 for i in $(TESTSI_CS) $(TESTBS); do \
265 $(JITTEST_PROG) --aot $${i} > /dev/null; \
266 if $(srcdir)/test-driver $(JITTEST_PROG) $$i $(RUNTIME_ARGS); \
268 passed=`expr $${passed} + 1`; \
270 if [ $$? = 2 ]; then break; fi; \
271 failed=`expr $${failed} + 1`; \
272 failed_tests="$${failed_tests} $$i"; \
275 echo "$${passed} test(s) passed. $${failed} test(s) failed."; \
276 if [ $$failed > 0 ]; then echo -e "\nFailed tests:\n"; for i in $${failed_tests}; do echo $${i}; done; fi;
278 testinterp: $(TESTSI_CS) libtest.la
282 export LD_LIBRARY_PATH="`pwd`/.libs:$${LD_LIBRARY_PATH}"; \
283 for i in $(TESTSI_CS) $(TESTSI_IL); do \
284 if $(srcdir)/test-driver $(TEST_PROG) $$i $(RUNTIME_ARGS); \
286 passed=`expr $${passed} + 1`; \
288 if [ $$? = 2 ]; then break; fi; \
289 failed=`expr $${failed} + 1`; \
290 failed_tests="$${failed_tests} $$i"; \
293 echo "$${passed} test(s) passed. $${failed} test(s) failed."; \
294 if [ $$failed > 0 ]; then echo -e "\nFailed tests:\n"; for i in $${failed_tests}; do echo $${i}; done; fi ;
296 testjitspeed: $(JITTEST_PROG) $(TESTBS)
297 for i in $(TESTBS); do \
299 time $(JITTEST_PROG) $$i; \
305 noinst_LTLIBRARIES = libtest.la
307 INCLUDES = $(GLIB_CFLAGS)
309 libtest_la_LDFLAGS = -rpath `pwd`
310 libtest_la_SOURCES = libtest.c
312 CLEANFILES = $(TESTSI_CS) $(TESTSI_IL) TestDriver.dll