65 lines
1.9 KiB
Makefile
65 lines
1.9 KiB
Makefile
|
DIFFER := $(GOPATH)/bin/differ
|
||
|
MEGACHECK := $(GOPATH)/bin/megacheck
|
||
|
RELEASE := $(GOPATH)/bin/github-release
|
||
|
WRITE_MAILMAP := $(GOPATH)/bin/write_mailmap
|
||
|
|
||
|
all:
|
||
|
$(MAKE) -C testdata
|
||
|
|
||
|
$(DIFFER):
|
||
|
go get -u github.com/kevinburke/differ
|
||
|
|
||
|
diff-testdata: | $(DIFFER)
|
||
|
$(DIFFER) $(MAKE) -C testdata
|
||
|
$(DIFFER) go fmt ./testdata/out/...
|
||
|
|
||
|
$(MEGACHECK):
|
||
|
go get honnef.co/go/tools/cmd/megacheck
|
||
|
|
||
|
lint: | $(MEGACHECK)
|
||
|
go vet ./...
|
||
|
$(MEGACHECK) ./...
|
||
|
|
||
|
go-test:
|
||
|
go test ./...
|
||
|
|
||
|
go-race-test:
|
||
|
go test -race ./...
|
||
|
|
||
|
test: go-test
|
||
|
$(MAKE) -C testdata
|
||
|
|
||
|
race-test: lint go-race-test
|
||
|
$(MAKE) -C testdata
|
||
|
|
||
|
$(WRITE_MAILMAP):
|
||
|
go get -u github.com/kevinburke/write_mailmap
|
||
|
|
||
|
force: ;
|
||
|
|
||
|
AUTHORS.txt: force | $(WRITE_MAILMAP)
|
||
|
$(WRITE_MAILMAP) > AUTHORS.txt
|
||
|
|
||
|
authors: AUTHORS.txt
|
||
|
|
||
|
ci: go-race-test diff-testdata
|
||
|
|
||
|
release: | $(RELEASE) race-test diff-testdata
|
||
|
ifndef version
|
||
|
@echo "Please provide a version"
|
||
|
exit 1
|
||
|
endif
|
||
|
ifndef GITHUB_TOKEN
|
||
|
@echo "Please set GITHUB_TOKEN in the environment"
|
||
|
exit 1
|
||
|
endif
|
||
|
mkdir -p releases/$(version)
|
||
|
GOOS=linux GOARCH=amd64 go build -o releases/$(version)/go-bindata-linux-amd64 ./go-bindata
|
||
|
GOOS=darwin GOARCH=amd64 go build -o releases/$(version)/go-bindata-darwin-amd64 ./go-bindata
|
||
|
GOOS=windows GOARCH=amd64 go build -o releases/$(version)/go-bindata-windows-amd64 ./go-bindata
|
||
|
# these commands are not idempotent so ignore failures if an upload repeats
|
||
|
$(RELEASE) release --user kevinburke --repo go-bindata --tag $(version) || true
|
||
|
$(RELEASE) upload --user kevinburke --repo go-bindata --tag $(version) --name go-bindata-linux-amd64 --file releases/$(version)/go-bindata-linux-amd64 || true
|
||
|
$(RELEASE) upload --user kevinburke --repo go-bindata --tag $(version) --name go-bindata-darwin-amd64 --file releases/$(version)/go-bindata-darwin-amd64 || true
|
||
|
$(RELEASE) upload --user kevinburke --repo go-bindata --tag $(version) --name go-bindata-windows-amd64 --file releases/$(version)/go-bindata-windows-amd64 || true
|