1 # Regression test specification for the z80 target running with uCsim
6 UCZ80 = $(SDCC_BIN_PATH)/sz80
8 AS_Z80 = $(SDCC_BIN_PATH)/as-z80
10 SZ80A = $(top_builddir)/sim/ucsim/z80.src/sz80
11 SZ80B = $(top_builddir)/bin/sz80
13 UCZ80 = $(shell if [ -f $(SZ80A) ]; then echo $(SZ80A); else echo $(SZ80B); fi)
15 AS_Z80 = $(top_builddir)/bin/as-z80
17 SDCCFLAGS += --nostdinc
18 LINKFLAGS += --nostdlib -L $(top_builddir)/device/lib/build/z80
21 SDCCFLAGS +=-mz80 --less-pedantic --profile -DREENTRANT= -I$(top_srcdir)
22 #SDCCFLAGS +=--less-pedantic -DREENTRANT=reentrant
28 EXTRAS = $(PORT_CASES_DIR)/testfwk$(OBJEXT) $(PORT_CASES_DIR)/support$(OBJEXT)
30 # Rule to link into .ihx
32 $(SDCC) $(SDCCFLAGS) $(LINKFLAGS) $(EXTRAS) $< -o $@
34 $(PORT_CASES_DIR)/%$(OBJEXT): $(PORTS_DIR)/$(PORT)/%.asm
35 $(AS_Z80) -plosgff $@ $<
38 $(SDCC) $(SDCCFLAGS) -c $< -o $@
40 $(PORT_CASES_DIR)/%$(OBJEXT): $(PORTS_DIR)/$(PORT)/%.c
41 $(SDCC) $(SDCCFLAGS) -c $< -o $@
43 $(PORT_CASES_DIR)/%$(OBJEXT): fwk/lib/%.c
44 $(SDCC) $(SDCCFLAGS) -c $< -o $@
46 # run simulator with 10 seconds timeout
47 %.out: %$(EXEEXT) $(CASES_DIR)/timeout
49 -$(CASES_DIR)/timeout 10 $(UCZ80) $< < $(PORTS_DIR)/$(PORT)/uCsim.cmd > $@ \
50 || echo -e --- FAIL: \"timeout, simulation killed\" in $(<:$(EXEEXT)=.c)"\n"--- Summary: 1/1/1: timeout >> $@
51 python $(srcdir)/get_ticks.py < $@ >> $@
52 -grep -n FAIL $@ /dev/null || true
54 $(CASES_DIR)/timeout: fwk/lib/timeout.c
55 $(CC) $(CFLAGS) $< -o $@