ipld-eth-server/vendor/github.com/vulcanize/eth-block-extractor/Makefile
2019-12-02 13:24:46 -06:00

64 lines
1.5 KiB
Makefile

BIN = $(GOPATH)/bin
BASE = $(GOPATH)/src/$(PACKAGE)
PKGS = go list ./... | grep -v "^vendor/"
default: build
GOVENDOR = $(BIN)/govendor
$(BIN)/govendor:
go get -u github.com/kardianos/govendor
GINKGO = $(BIN)/ginkgo
$(BIN)/ginkgo:
go get -u github.com/onsi/ginkgo/ginkgo
GX = $(BIN)/gx
$(BIN)/gx:
go get -v -u github.com/whyrusleeping/gx
$(GX) install --global
LINT = $(BIN)/golint
$(BIN)/golint:
go get github.com/golang/lint/golint
METALINT = $(BIN)/gometalinter.v2
$(BIN)/gometalinter.v2:
go get -u gopkg.in/alecthomas/gometalinter.v2
$(METALINT) --install
.PHONY: installtools
installtools: | $(LINT) $(GINKGO) $(GX) $(GOVENDOR)
echo "Installing tools"
.PHONY: metalint
metalint: | $(METALINT)
$(METALINT) ./... --vendor \
--fast \
--exclude="exported (function)|(var)|(method)|(type).*should have comment or be unexported" \
--format="{{.Path.Abs}}:{{.Line}}:{{if .Col}}{{.Col}}{{end}}:{{.Severity}}: {{.Message}} ({{.Linter}})"
.PHONY: lint
lint:
$(LINT) $$($(PKGS)) | grep -v -E "exported (function)|(var)|(method)|(type).*should have comment or be unexported"
.PHONY: test
test: | $(GINKGO) $(LINT)
go vet ./...
go fmt ./...
$(GINKGO) -r
.PHONY: govendor
dep: | $(GOVENDOR)
$(GOVENDOR) fetch -v +missing
build: govendor fixlibcrypto
go fmt ./...
go build
.PHONY: fixlibcrypto
fixlibcrypto:
mkdir tmp-go-ethereum
git clone https://github.com/ethereum/go-ethereum.git tmp-go-ethereum
cp -r "tmp-go-ethereum/crypto/secp256k1/libsecp256k1" "vendor/github.com/ethereum/go-ethereum/crypto/secp256k1/"
rm -rf "tmp-go-ethereum"