github.com/chrislusf/greenpack@v3.7.1-0.20170911073826-ad5bd10b7c47+incompatible/Makefile (about) 1 2 # NOTE: This Makefile is only necessary if you 3 # plan on developing the msgp tool and library. 4 # Installation can still be performed with a 5 # normal `go install`. 6 7 8 # generated integration test files 9 GGEN = ./_generated/generated.go ./_generated/generated_test.go 10 # generated unit test files 11 12 MGEN = ./msgp/defgen_test.go ./msgp/nestedgen_test.go 13 14 # generated green layer above msgp 15 ZGEN = ./green/green_gen.go 16 17 SHELL := /bin/bash 18 19 BIN = $(GOBIN)/greenpack 20 21 .PHONY: clean wipe install get-deps bench all dev 22 23 dev: clean install test 24 25 $(BIN): */*.go *.go 26 @go install && (cd ./cmd/addzid && make) 27 28 install: 29 /bin/echo "package main" > gitcommit.go 30 /bin/echo "func init() { LAST_GIT_COMMIT_HASH = \"$(shell git rev-parse HEAD)\"; NEAREST_GIT_TAG= \"$(shell git describe --abbrev=0 --tags)\"; GIT_BRANCH=\"$(shell git rev-parse --abbrev-ref HEAD)\"; GO_VERSION=\"$(shell go version)\";}" >> gitcommit.go 31 go install && (cd ./cmd/addzid && make) 32 33 $(GGEN): ./_generated/def.go 34 go generate ./_generated 35 36 $(MGEN): ./msgp/defs_test.go 37 go generate ./msgp 38 39 $(ZGEN): ./green/green.go 40 go install 41 go generate ./green 42 43 test: all 44 go test -v ./parse 45 go test -v ./msgp 46 go test -v ./_generated 47 go test -v ./green 48 # and test addzid 49 go test -v ./cmd/addzid 50 # build and run on testdata/ 51 go build -o ./greenpack 52 cd testdata && go generate && go test -v 53 ./greenpack -file testdata/my.go && go test -v ./testdata/my_gen_test.go ./testdata/my.go ./testdata/my_gen.go 54 ./greenpack -file testdata/my.go -o testdata/my_msgp_gen.go -method-prefix=MSGP -tests=false -io=false # test the -method-prefix flag 55 56 57 bench: all 58 go test -bench . ./msgp 59 go test -bench . ./_generated 60 61 clean: 62 $(RM) $(GGEN) $(MGEN) ./greenpack 63 64 wipe: clean 65 $(RM) $(BIN) 66 67 get-deps: 68 go get -d -t ./... 69 70 all: install $(GGEN) $(MGEN) $(ZGEN) 71 72 # travis CI enters here 73 travis: 74 go get -d -t ./... 75 go build -o "$${GOPATH%%:*}/bin/msgp" . 76 go generate ./msgp 77 go generate ./_generated 78 go test ./msgp 79 go test ./_generated