blob: 3c1ab00246ee8595c9a87525bd2d9bb4a9366413 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
|
DIR=general
BINDIR=bin
ASMDIR=asm
TESTNAMES=simple call branch for forvar forvarl branchz branchzu
CCOMP=../../ccomp
#TESTS=$(addprefix $(DIR)/,$(TESTNAMES))
ELF=$(addprefix $(DIR)/$(BINDIR)/,$(addsuffix .bin,$(TESTNAMES)))
TOK=$(addprefix $(DIR)/$(BINDIR)/,$(addsuffix .tok,$(TESTNAMES)))
ASM=$(addprefix $(DIR)/$(ASMDIR)/,$(addsuffix .s,$(TESTNAMES)))
DEBUG:=$(if $(DEBUG),"-dall",)
all: $(ELF)
nobin: $(ASM)
$(DIR)/$(BINDIR)/%.bin: $(DIR)/$(ASMDIR)/%.s
@mkdir -p $(@D)
k1-gcc $< -o $@
.SECONDARY:
$(DIR)/$(ASMDIR)/%.s: $(DIR)/%.c $(CCOMP)
@mkdir -p $(@D)
ccomp $(DEBUG) -O0 -v -S $< -o $@
$(DIR)/$(BINDIR)/%.tok: $(DIR)/$(BINDIR)/%.bin $(DIR)/output/%.bin.exp
@mkdir -p $(@D)
@bash check.sh $< $@
$(DIR)/output/%.bin.exp: $(DIR)/%.c
@bash generate.sh $< $@
.PHONY: FORCE
FORCE:
.PHONY:
check: $(TOK) sort
.PHONY:
sort: FORCE
(cd sort && make compc-check)
.PHONY:
clean:
rm -f $(DIR)/*.alloctrace
rm -f $(DIR)/*.cm
rm -f $(DIR)/*.compcert.c
rm -f $(DIR)/*.i
rm -f $(DIR)/*.light.c
rm -f $(DIR)/*.ltl
rm -f $(DIR)/*.mach
rm -f $(DIR)/*.parsed.c
rm -f $(DIR)/*.rtl.?
rm -f $(DIR)/$(ASMDIR)/*.s
rm -f $(DIR)/$(BINDIR)/*.bin
rm -f $(DIR)/$(BINDIR)/*.tok
rm -f $(DIR)/output/*.out
rm -f $(DIR)/output/*.exp
rm -rf $(DIR)/profile/
rm -f $(ELF)
|