5d243c81d3c44fe715e5508a2a422020f810f8db
[fw/sdcc] / support / regression / ports / host / spec.mk
1 # Port specification for compiling on the host machines version of gcc
2 SDCC = $(shell ( sh -c "gcc --version" 2>&1 ) > /dev/null  && echo gcc || echo cc)
3 SDCCFLAGS = -DPORT_HOST=1 -Wall -fsigned-char -fpack-struct -DREENTRANT=
4
5 EXEEXT = .bin
6 OBJEXT = .o
7 INC_DIR = .
8
9 # otherwise `make` deletes it and `make -j`will fail
10 .PRECIOUS: ports/$(PORT)/testfwk$(OBJEXT)
11
12 # Required extras
13 EXTRAS = ports/$(PORT)/testfwk$(OBJEXT) ports/$(PORT)/support$(OBJEXT)
14
15 %.out: %$(EXEEXT)
16         mkdir -p `dirname $@`
17         -$< > $@
18         -grep -n FAIL $@ /dev/null || true
19
20 %$(EXEEXT): %$(OBJEXT) $(EXTRAS)
21         $(SDCC) $(SDCCFLAGS) -o $@ $< $(EXTRAS) -lm
22
23 %$(OBJEXT): %.c
24         $(SDCC) $(SDCCFLAGS) -c $< -o $@
25
26 ports/$(PORT)/%$(OBJEXT): fwk/lib/%.c
27         $(SDCC) $(SDCCFLAGS) -c $< -o $@
28
29 _clean:
30         rm -f ports/$(PORT)/support.o ports/$(PORT)/testfwk$(OBJEXT)
31