1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
|
GO := go
# test for go module support
ifeq ($(shell go help mod >/dev/null 2>&1 && echo true), true)
export GO_BUILD=GO111MODULE=on $(GO) build -mod=vendor
else
export GO_BUILD=$(GO) build
endif
BUILDDIR := build
all: $(BUILDDIR)
.PHONY: vendor
vendor:
GO111MODULE=on $(GO) mod tidy
GO111MODULE=on $(GO) mod vendor
GO111MODULE=on $(GO) mod verify
define go-build
$(shell cd `pwd` && $(GO_BUILD) -o $(BUILDDIR)/$(shell basename $(1)) $(1))
@echo > /dev/null
endef
.PHONY: clean
clean:
rm -rf $(BUILDDIR)
$(BUILDDIR): \
$(BUILDDIR)/ginkgo \
$(BUILDDIR)/git-validation \
$(BUILDDIR)/go-md2man \
$(BUILDDIR)/golangci-lint
$(BUILDDIR)/ginkgo:
$(call go-build,./vendor/github.com/onsi/ginkgo/ginkgo)
$(BUILDDIR)/git-validation:
$(call go-build,./vendor/github.com/vbatts/git-validation)
$(BUILDDIR)/go-md2man:
$(call go-build,./vendor/github.com/cpuguy83/go-md2man)
$(BUILDDIR)/golangci-lint:
$(call go-build,./vendor/github.com/golangci/golangci-lint/cmd/golangci-lint)
|