-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMakefile
More file actions
57 lines (41 loc) · 677 Bytes
/
Makefile
File metadata and controls
57 lines (41 loc) · 677 Bytes
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
.SUFFIXES:
.ONESHELL:
EMPTY=
SPACE=$(EMPTY) $(EMPTY)
ifdef ENV
PRECMD=@echo$(SPACE)
run: env
else
PRECMD=@
endif
ifdef DMD
DC?=$(shell which dmd)
OPT=-O
FINAL=-version=FINAL
else
DC?=$(shell which ldc2)
OPT=-O3
FINAL=--d-version=FINAL
endif
BIN:=.
MAIN:=range_test
DFILES+=$(addsuffix .d,$(MAIN))
DFLAGS+=-preview=dip1000
run-final-o: DFLAGS+=$(OPT)
run-final: DFLAGS+=$(FINAL)
run-o: DFLAGS+=$(OPT)
run-final-o: run-final
run-final: run
run-o: run
all:
$(PRECMD)$(DC) $(DFLAGS) $(DFILES)
run: all
$(PRECMD)echo
$(PRECMD)$(DC) --version|head -1
$(PRECMD)$(BIN)/$(MAIN)
env:
@echo DFILES=$(DFILES)
@echo DFLAGS=$(DFLAGS)
clean:
@rm -f $(MAIN)
@rm -f *.o