2 # This makefile takes each "at*" file, extracts it's part name
3 # And compiles it into an ELF binary.
4 # It also disassembles it for debugging purposes.
6 # Copyright 2008-2012 Michel Pollet <buserror@gmail.com>
8 # This file is part of simavr.
10 # simavr is free software: you can redistribute it and/or modify
11 # it under the terms of the GNU General Public License as published by
12 # the Free Software Foundation, either version 3 of the License, or
13 # (at your option) any later version.
15 # simavr is distributed in the hope that it will be useful,
16 # but WITHOUT ANY WARRANTY; without even the implied warranty of
17 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 # GNU General Public License for more details.
20 # You should have received a copy of the GNU General Public License
21 # along with simavr. If not, see <http://www.gnu.org/licenses/>.
26 sources := $(wildcard at*.c)
29 IPATH += ${simavr}/include
30 IPATH += ${simavr}/simavr/sim
32 tests_src = ${wildcard test_*.c}
33 tests = ${patsubst %.c, ${OBJ}/%.tst, ${tests_src}}
37 include ../Makefile.common
41 axf: ${sources:.c=.axf}
44 ${OBJ}/%.tst: tests.c %.c
46 $(CC) -MMD ${CFLAGS} ${LFLAGS} -o $@ $^ $(LDFLAGS)
49 @$(CC) -MMD ${CFLAGS} ${LFLAGS} -o $@ $^ $(LDFLAGS)
53 @export LD_LIBRARY_PATH=${simavr}/simavr/${OBJ} ;\
56 for test in ${OBJ}/test_*.tst; do \
57 num_run=$$(($$num_run+1)) ;\
59 echo "$$test returned with exit value $$?." ;\
60 num_failed=$$(($$num_failed+1)) ;\
63 echo "Tests run: $$num_run Successes: $$(($$num_run-$num_failed)) Failures: $$num_failed"