makefile improvements

This commit is contained in:
Murat Kabilov
2017-05-12 11:37:07 +02:00
parent 6b0c104d05
commit 75e6bfa55c
9 changed files with 49 additions and 35 deletions
+24 -4
View File
@@ -1,7 +1,12 @@
.PHONY: clean local linux macos docker push scm-source.json
ifeq ($(RACE),1)
GOFLAGS=-race
endif
BINARY ?= postgres-operator
BUILD_FLAGS ?= -i
BUILD_FLAGS ?= -i -v
LDFLAGS ?= -X=main.version=$(VERSION)
DOCKERFILE = docker/Dockerfile
IMAGE ?= pierone.example.com/acid/$(BINARY)
TAG ?= $(VERSION)
@@ -11,6 +16,8 @@ GITSTATUS = $(shell git status --porcelain || echo "no changes")
SOURCES = cmd/main.go
VERSION ?= $(shell git describe --tags --always --dirty)
IMAGE ?= pierone.example.com/acid/$(BINARY)
DIRS := cmd pkg
PKG := `go list ./... | grep -v /vendor/`
default: local
@@ -22,13 +29,13 @@ linux: build/linux/${BINARY}
macos: build/macos/${BINARY}
build/${BINARY}: ${SOURCES}
go build -o $@ $(BUILD_FLAGS) $^
go build -o $@ $(BUILD_FLAGS) -ldflags "$(LDFLAGS)" $^
build/linux/${BINARY}: ${SOURCES}
GOOS=linux GOARCH=amd64 go build -o $@ ${BUILD_FLAGS} $^
GOOS=linux GOARCH=amd64 go build -o $@ ${BUILD_FLAGS} -ldflags "$(LDFLAGS)" $^
build/macos/${BINARY}: ${SOURCES}
GOOS=darwin GOARCH=amd64 go build -o $@ ${BUILD_FLAGS} $^
GOOS=darwin GOARCH=amd64 go build -o $@ ${BUILD_FLAGS} -ldflags "$(LDFLAGS)" $^
docker-context: scm-source.json linux
mkdir -p docker/build/
@@ -43,3 +50,16 @@ push:
scm-source.json: .git
echo '{\n "url": "$(GITURL)",\n "revision": "$(GITHEAD)",\n "author": "$(USER)",\n "status": "$(GITSTATUS)"\n}' > scm-source.json
tools:
@go get -u honnef.co/go/staticcheck/cmd/staticcheck
@go get -u github.com/Masterminds/glide
fmt:
@gofmt -l -w -s $(DIRS)
vet:
@go vet $(PKG)
@$(GOPATH)/bin/staticcheck $(PKG)
deps:
@$(GOPATH)/bin/glide install