Merge pull request #526 from thockin/master
Fix Makefile to run tools on host OS/ARCH (v4)
This commit is contained in:
commit
3fcb46ef00
90
Makefile
90
Makefile
|
|
@ -94,23 +94,23 @@ $(OUTBIN): .go/$(OUTBIN).stamp
|
||||||
.PHONY: .go/$(OUTBIN).stamp
|
.PHONY: .go/$(OUTBIN).stamp
|
||||||
.go/$(OUTBIN).stamp: $(BUILD_DIRS)
|
.go/$(OUTBIN).stamp: $(BUILD_DIRS)
|
||||||
@echo "making $(OUTBIN)"
|
@echo "making $(OUTBIN)"
|
||||||
@docker run \
|
@docker run \
|
||||||
-i \
|
-i \
|
||||||
--rm \
|
--rm \
|
||||||
-u $$(id -u):$$(id -g) \
|
-u $$(id -u):$$(id -g) \
|
||||||
-v $$(pwd):/src \
|
-v $$(pwd):/src \
|
||||||
-w /src \
|
-w /src \
|
||||||
-v $$(pwd)/.go/bin/$(OS)_$(ARCH):/go/bin \
|
-v $$(pwd)/.go/bin/$(OS)_$(ARCH):/go/bin \
|
||||||
-v $$(pwd)/.go/bin/$(OS)_$(ARCH):/go/bin/$(OS)_$(ARCH) \
|
-v $$(pwd)/.go/bin/$(OS)_$(ARCH):/go/bin/$(OS)_$(ARCH) \
|
||||||
-v $$(pwd)/.go/cache:/.cache \
|
-v $$(pwd)/.go/cache:/.cache \
|
||||||
--env HTTP_PROXY=$(HTTP_PROXY) \
|
--env HTTP_PROXY=$(HTTP_PROXY) \
|
||||||
--env HTTPS_PROXY=$(HTTPS_PROXY) \
|
--env HTTPS_PROXY=$(HTTPS_PROXY) \
|
||||||
$(BUILD_IMAGE) \
|
$(BUILD_IMAGE) \
|
||||||
/bin/sh -c " \
|
/bin/sh -c " \
|
||||||
ARCH=$(ARCH) \
|
ARCH=$(ARCH) \
|
||||||
OS=$(OS) \
|
OS=$(OS) \
|
||||||
VERSION=$(VERSION) \
|
VERSION=$(VERSION) \
|
||||||
./build/build.sh \
|
./build/build.sh \
|
||||||
"
|
"
|
||||||
@if ! cmp -s .go/$(OUTBIN) $(OUTBIN); then \
|
@if ! cmp -s .go/$(OUTBIN) $(OUTBIN); then \
|
||||||
mv .go/$(OUTBIN) $(OUTBIN); \
|
mv .go/$(OUTBIN) $(OUTBIN); \
|
||||||
|
|
@ -122,29 +122,31 @@ DOTFILE_IMAGE = $(subst /,_,$(IMAGE))-$(TAG)
|
||||||
|
|
||||||
LICENSES = .licenses
|
LICENSES = .licenses
|
||||||
|
|
||||||
$(LICENSES): bin/$(shell go env GOOS)_$(shell go env GOARCH)/$(BIN)
|
$(LICENSES):
|
||||||
@go build -o ./bin/tools github.com/google/go-licenses
|
@GOOS=$(shell go env GOHOSTOS) \
|
||||||
|
GOARCH=$(shell go env GOHOSTARCH) \
|
||||||
|
go build -o ./bin/tools github.com/google/go-licenses
|
||||||
@rm -rf $(LICENSES)
|
@rm -rf $(LICENSES)
|
||||||
@./bin/tools/go-licenses save ./... --save_path=$(LICENSES)
|
@./bin/tools/go-licenses save ./... --save_path=$(LICENSES)
|
||||||
@chmod -R a+rx $(LICENSES)
|
@chmod -R a+rx $(LICENSES)
|
||||||
|
|
||||||
container: .container-$(DOTFILE_IMAGE) container-name
|
container: .container-$(DOTFILE_IMAGE) container-name
|
||||||
.container-$(DOTFILE_IMAGE): bin/$(OS)_$(ARCH)/$(BIN) $(LICENSES) Dockerfile.in
|
.container-$(DOTFILE_IMAGE): bin/$(OS)_$(ARCH)/$(BIN) $(LICENSES) Dockerfile.in
|
||||||
@sed \
|
@sed \
|
||||||
-e 's|{ARG_BIN}|$(BIN)|g' \
|
-e 's|{ARG_BIN}|$(BIN)|g' \
|
||||||
-e 's|{ARG_ARCH}|$(ARCH)|g' \
|
-e 's|{ARG_ARCH}|$(ARCH)|g' \
|
||||||
-e 's|{ARG_OS}|$(OS)|g' \
|
-e 's|{ARG_OS}|$(OS)|g' \
|
||||||
-e 's|{ARG_FROM}|$(BASEIMAGE)|g' \
|
-e 's|{ARG_FROM}|$(BASEIMAGE)|g' \
|
||||||
Dockerfile.in > .dockerfile-$(OS)_$(ARCH)
|
Dockerfile.in > .dockerfile-$(OS)_$(ARCH)
|
||||||
@docker buildx build \
|
@docker buildx build \
|
||||||
--no-cache \
|
--no-cache \
|
||||||
--progress=plain \
|
--progress=plain \
|
||||||
--load \
|
--load \
|
||||||
--platform "$(OS)/$(ARCH)" \
|
--platform "$(OS)/$(ARCH)" \
|
||||||
--build-arg HTTP_PROXY=$(HTTP_PROXY) \
|
--build-arg HTTP_PROXY=$(HTTP_PROXY) \
|
||||||
--build-arg HTTPS_PROXY=$(HTTPS_PROXY) \
|
--build-arg HTTPS_PROXY=$(HTTPS_PROXY) \
|
||||||
-t $(IMAGE):$(TAG) \
|
-t $(IMAGE):$(TAG) \
|
||||||
-f .dockerfile-$(OS)_$(ARCH) \
|
-f .dockerfile-$(OS)_$(ARCH) \
|
||||||
.
|
.
|
||||||
@docker images -q $(IMAGE):$(TAG) > $@
|
@docker images -q $(IMAGE):$(TAG) > $@
|
||||||
|
|
||||||
|
|
@ -176,19 +178,19 @@ version:
|
||||||
@echo $(VERSION)
|
@echo $(VERSION)
|
||||||
|
|
||||||
test: $(BUILD_DIRS)
|
test: $(BUILD_DIRS)
|
||||||
@docker run \
|
@docker run \
|
||||||
-i \
|
-i \
|
||||||
-u $$(id -u):$$(id -g) \
|
-u $$(id -u):$$(id -g) \
|
||||||
-v $$(pwd):/src \
|
-v $$(pwd):/src \
|
||||||
-w /src \
|
-w /src \
|
||||||
-v $$(pwd)/.go/bin/$(OS)_$(ARCH):/go/bin \
|
-v $$(pwd)/.go/bin/$(OS)_$(ARCH):/go/bin \
|
||||||
-v $$(pwd)/.go/bin/$(OS)_$(ARCH):/go/bin/$(OS)_$(ARCH) \
|
-v $$(pwd)/.go/bin/$(OS)_$(ARCH):/go/bin/$(OS)_$(ARCH) \
|
||||||
-v $$(pwd)/.go/cache:/.cache \
|
-v $$(pwd)/.go/cache:/.cache \
|
||||||
--env HTTP_PROXY=$(HTTP_PROXY) \
|
--env HTTP_PROXY=$(HTTP_PROXY) \
|
||||||
--env HTTPS_PROXY=$(HTTPS_PROXY) \
|
--env HTTPS_PROXY=$(HTTPS_PROXY) \
|
||||||
$(BUILD_IMAGE) \
|
$(BUILD_IMAGE) \
|
||||||
/bin/sh -c " \
|
/bin/sh -c " \
|
||||||
./build/test.sh $(SRC_DIRS) \
|
./build/test.sh $(SRC_DIRS) \
|
||||||
"
|
"
|
||||||
@./test_e2e.sh
|
@./test_e2e.sh
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue