]> git.sur5r.net Git - cc65/blob - test/err/Makefile
Ignore return values only with CMD.EXE.
[cc65] / test / err / Makefile
1
2 # makefile for the tests that MUST NOT compile
3
4 ifneq ($(shell echo),)
5   CMD_EXE := 1
6 endif
7
8 ifdef CMD_EXE
9   M := -
10   NOT := - # Hack
11   DEL = del /f $(subst /,\,$1)
12 else
13   M :=
14   NOT := !
15   DEL = $(RM) $1
16 endif
17
18 CC65FLAGS := -t sim6502
19
20 CL65 := $(if $(wildcard ../../bin/cl65*),../../bin/cl65,cl65)
21
22 WORKDIR := ../../testwrk
23
24 .PHONY: all clean
25
26 SOURCES := $(wildcard *.c)
27 TESTS := $(foreach option,. .o. .os. .osi. .osir. .oi. .oir. .or.,$(SOURCES:%.c=$(WORKDIR)/%$(option)prg))
28
29 all: $(TESTS)
30
31 $(WORKDIR)/%.prg: %.c
32         $(NOT) $(CL65) $(CC65FLAGS) $< -o $@
33 $(WORKDIR)/%.o.prg: %.c
34         $(NOT) $(CL65) -O $(CC65FLAGS) $< -o $@
35 $(WORKDIR)/%.os.prg: %.c
36         $(NOT) $(CL65) -Os $(CC65FLAGS) $< -o $@
37 $(WORKDIR)/%.osi.prg: %.c
38         $(NOT) $(CL65) -Osi $(CC65FLAGS) $< -o $@
39 $(WORKDIR)/%.osir.prg: %.c
40         $(NOT) $(CL65) -Osir $(CC65FLAGS) $< -o $@
41 $(WORKDIR)/%.oi.prg: %.c
42         $(NOT) $(CL65) -Oi $(CC65FLAGS) $< -o $@
43 $(WORKDIR)/%.oir.prg: %.c
44         $(NOT) $(CL65) -Oir $(CC65FLAGS) $< -o $@
45 $(WORKDIR)/%.or.prg: %.c
46         $(NOT) $(CL65) -Or $(CC65FLAGS) $< -o $@
47
48 clean:
49         $M@$(call DEL,$(TESTS))
50         $M@$(call DEL,$(SOURCES:.c=.o))