-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathMakefile
65 lines (50 loc) · 2.06 KB
/
Makefile
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
61
62
63
64
65
GREENFG = \e[32m
BLUEFG = \e[34m
REDFG = \e[31m
DEFFG = \e[39m
CHECKTAG = [$(BLUEFG)CHECK$(DEFFG)]
CHECKSTART = $(CHECKTAG) $(BLUEFG)START$(DEFFG)
CHECKSUCCESS = $(CHECKTAG) $(GREENFG)SUCCESS$(DEFFG)
CHECKFAILED = $(CHECKTAG) $(REDFG)FAILED$(DEFFG)
VETTAG = [$(BLUEFG)VET$(DEFFG)]
VETSTART = $(VETTAG) $(BLUEFG)START$(DEFFG)
VETSUCCESS = $(VETTAG) $(GREENFG)SUCCESS$(DEFFG)
VETFAILED = $(VETTAG) $(REDFG)FAILED$(DEFFG)
LINTTAG = [$(BLUEFG)LINT$(DEFFG)]
LINTSTART = $(LINTTAG) $(BLUEFG)START$(DEFFG)
LINTSUCCESS = $(LINTTAG) $(GREENFG)SUCCESS$(DEFFG)
LINTFAILED = $(LINTTAG) $(REDFG)FAILED$(DEFFG)
BUILDTAG = [$(BLUEFG)BUILDPKG$(DEFFG)]
BUILDSTART = $(BUILDTAG) $(BLUEFG)START$(DEFFG)
BUILDSUCCESS = $(BUILDTAG) $(GREENFG)SUCCESS$(DEFFG)
BUILDFAILED = $(BUILDTAG) $(REDFG)FAILED$(DEFFG)
DEMOTAG = [$(BLUEFG)DEMOBUILD$(DEFFG)]
DEMOSTART = $(DEMOTAG) $(BLUEFG)START$(DEFFG)
DEMOSUCCESS = $(DEMOTAG) $(GREENFG)SUCCESS$(DEFFG)
DEMOFAILED = $(DEMOTAG) $(REDFG)FAILED$(DEFFG)
CLEANTAG = [$(BLUEFG)CLEAN$(DEFFG)]
CLEANSUCCESS = $(CLEANTAG) $(GREENFG)SUCCESS$(DEFFG)
CLEANFAILED = $(CLEANTAG) $(REDFG)FAILED$(DEFFG)
default: build vet lint check demo
vet:
@echo -e "$(VETSTART)"
@GOOS=js GOARCH=wasm go vet \
&& (echo -e "$(VETSUCCESS)") || (echo -e "$(VETFAILED)" && false)
lint:
@echo -e "$(LINTSTART)"
@GOOS=js GOARCH=wasm golint \
&& (echo -e "$(LINTSUCCESS)") || (echo -e "$(LINTFAILED)" && false)
check:
@echo -e "$(CHECKSTART)"
@GOOS=js GOARCH=wasm go test -cover -exec="$$(go env GOROOT)/misc/wasm/go_js_wasm_exec" \
&& (echo -e "$(CHECKSUCCESS)") || (echo -e "$(CHECKFAILED)" && false)
build:
@echo -e "$(BUILDSTART)"
@GOOS=js GOARCH=wasm go build && (echo -e "$(BUILDSUCCESS)") || (echo -e "$(BUILDFAILED)" && false)
demo/main.wasm: demo/main.go *.go
@echo -e "$(DEMOSTART)"
@GOOS=js GOARCH=wasm go build -o demo/main.wasm demo/main.go \
&& (echo -e "$(DEMOSUCCESS)") || (echo -e "$(DEMOFAILED)" && false)
demo: demo/main.wasm
clean:
@rm -f demo/main.wasm && (echo -e "$(CLEANSUCCESS)") || (echo -e "$(CLEANFAILED)" && false)