1# Makefile for CLISP regression tests
2# ifneq/else/endif requires GNU Make, so we cannot use them
3
4# build directory (with [back]slash appended)
5BD=../
6# executable extension (.exe on win32, .run everywhere else)
7LEXE=.run
8
9# ensure that all messages are in English
10LISP = LC_MESSAGES=en_US $(BD)lisp$(LEXE) -E utf-8 -norc -B $(BD) -N $(BD)locale -M $(BD)lispinit.mem -m 30MW -L english
11# LISP=../clisp -norc
12# LISP=clisp -norc
13
14RM = rm -f
15
16all : clean tests compare
17
18clean : force
19	$(RM) *.erg
20
21tests.fas: tests.lisp
22	$(LISP) -c tests
23
24tests : force tests.fas
25	$(LISP) -i tests -x "(time (run-all-tests))"
26
27complete : force tests.fas
28	$(LISP) -i tests -x "(time (run-all-tests :disable-risky nil))"
29
30parallel: force tests.fas
31	$(LISP) -i tests -x "(time (run-all-tests-parallel))"
32
33compare : force
34	(echo *.erg | grep '*' >/dev/null) || (echo "Test failed:" ; ls -l *erg; echo "To see which tests failed, type" ; echo "    cat "`pwd`"/*.erg" ; exit 1)
35	echo "Test passed."
36
37%.erg : %.tst
38	$(LISP) -i tests -x '(run-test "$<")'
39
40force :
41
42