From 3dbfd5b7ddfe31e997a760b4b421c78a138651fd Mon Sep 17 00:00:00 2001 From: Marat G Date: Fri, 24 Jun 2016 09:49:47 -0700 Subject: [PATCH] use go install, don't use GOBIN directly, figure out where to copy files from based on go env --- Makefile | 23 +++++++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index 3cc777eff..4d47d9318 100644 --- a/Makefile +++ b/Makefile @@ -12,13 +12,32 @@ LDFLAGS := GOFLAGS := BINDIR := $(CURDIR)/bin BINARIES := helm tiller +HOSTARCH := $(shell $(GO) env GOHOSTARCH) +HOSTOS := $(shell $(GO) env GOHOSTOS) +BUILDARCH := $${GOARCH:-$(HOSTARCH)} +BUILDOS := $${GOOS:-$(HOSTOS)} .PHONY: all all: build .PHONY: build -build: - GOBIN=$(BINDIR) $(GO) install $(GOFLAGS) -tags '$(TAGS)' -ldflags '$(LDFLAGS)' k8s.io/helm/cmd/... +build: gobuild copy + +.PHONY: gobuild +gobuild: + $(GO) install $(GOFLAGS) -tags '$(TAGS)' -ldflags '$(LDFLAGS)' k8s.io/helm/cmd/... + +.PHONY: copy +copy: + @if [ $(BUILDARCH) != $(HOSTARCH) ] || [ $(BUILDOS) != $(HOSTOS) ]; then \ + for binary in ${BINARIES} ; do \ + cp $(GOPATH)/bin/$(BUILDOS)_$(BUILDARCH)/$$binary $(BINDIR); \ + done \ + else \ + for binary in ${BINARIES} ; do \ + cp $(GOPATH)/bin/$$binary $(BINDIR); \ + done \ + fi .PHONY: check-docker check-docker: