1.DEFAULT_GOAL = all
2
3numcpus := $(shell cat /proc/cpuinfo | grep '^processor\s*:' | wc -l)
4version := $(shell git rev-list --count HEAD).$(shell git rev-parse --short HEAD)
5
6name := uarand
7package := github.com/corpix/$(name)
8
9.PHONY: all
10all:: dependencies
11
12.PHONY: tools
13tools::
14 @if [ ! -e "$(GOPATH)"/bin/glide ]; then go get github.com/Masterminds/glide; fi
15 @if [ ! -e "$(GOPATH)"/bin/glide-cleanup ]; then go get github.com/ngdinhtoan/glide-cleanup; fi
16 @if [ ! -e "$(GOPATH)"/bin/glide-vc ]; then go get github.com/sgotti/glide-vc; fi
17 @if [ ! -e "$(GOPATH)"/bin/godef ]; then go get github.com/rogpeppe/godef; fi
18 @if [ ! -e "$(GOPATH)"/bin/gocode ]; then go get github.com/nsf/gocode; fi
19 @if [ ! -e "$(GOPATH)"/bin/gometalinter ]; then go get github.com/alecthomas/gometalinter && gometalinter --install; fi
20 @if [ ! -e "$(GOPATH)"/src/github.com/stretchr/testify/assert ]; then go get github.com/stretchr/testify/assert; fi
21
22.PHONY: dependencies
23dependencies:: tools
24 glide install
25
26.PHONY: clean
27clean:: tools
28 glide cache-clear
29
30.PHONY: test
31test:: dependencies
32 go test -v \
33 $(shell glide novendor)
34
35.PHONY: bench
36bench:: dependencies
37 go test \
38 -bench=. -v \
39 $(shell glide novendor)
40
41.PHONY: lint
42lint:: dependencies
43 go vet $(shell glide novendor)
44 gometalinter \
45 --deadline=5m \
46 --concurrency=$(numcpus) \
47 $(shell glide novendor)
48
49.PHONY: check
50check:: lint test
51
52include useragents.mk