Skip to content

Commit 5802b3a

Browse files
committed
use variables for binaries
Signed-off-by: Tim Ramlot <[email protected]>
1 parent 0e8eb38 commit 5802b3a

File tree

13 files changed

+149
-155
lines changed

13 files changed

+149
-155
lines changed

Makefile

+2-2
Original file line numberDiff line numberDiff line change
@@ -79,9 +79,9 @@ include make/help.mk
7979
## out everything, use `make clean-all` instead.
8080
##
8181
## @category Development
82-
clean:
82+
clean: | $(NEEDS_KIND)
8383
@$(eval KIND_CLUSTER_NAME ?= kind)
84-
$(BINDIR)/tools/kind delete cluster --name=$(shell cat $(BINDIR)/scratch/kind-exists 2>/dev/null || echo $(KIND_CLUSTER_NAME)) -q 2>/dev/null || true
84+
$(KIND) delete cluster --name=$(shell cat $(BINDIR)/scratch/kind-exists 2>/dev/null || echo $(KIND_CLUSTER_NAME)) -q 2>/dev/null || true
8585
rm -rf $(filter-out $(BINDIR)/downloaded,$(wildcard $(BINDIR)/*))
8686
rm -rf bazel-bin bazel-cert-manager bazel-out bazel-testlogs
8787

make/README.md

+4-4
Original file line numberDiff line numberDiff line change
@@ -41,8 +41,8 @@ to it which starts with `##`.
4141
## Bet you didn't expect that, huh?
4242
##
4343
## @category Development
44-
kind-version: | $(BINDIR)/tools/kind
45-
@$(BINDIR)/tools/kind --version
44+
kind-version: | $(NEEDS_KIND)
45+
@$(KIND) --version
4646
```
4747

4848
Categories are loosely defined; check the output of `make help` for examples of the kinds of categories we already have.
@@ -84,9 +84,9 @@ Otherwise, your dependency should be normal.
8484
For example:
8585

8686
```make
87-
$(BINDIR)/awesome-stuff/my-file: README.md | $(BINDIR)/awesome-stuff $(BINDIR)/tools/kind
87+
$(BINDIR)/awesome-stuff/my-file: README.md | $(BINDIR)/awesome-stuff $(NEEDS_KIND)
8888
# write the kind version to $(BINDIR)/awesome-stuff/my-file
89-
$(BINDIR)/tools/kind --version > $@
89+
$(KIND) --version > $@
9090
# append README.md
9191
cat README.md >> $@
9292
```

make/ci.mk

+11-11
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@
66
ci-presubmit: verify-imports verify-errexit verify-boilerplate verify-codegen verify-crds verify-licenses
77

88
.PHONY: verify-imports
9-
verify-imports: $(BINDIR)/tools/goimports
10-
./hack/verify-goimports.sh $<
9+
verify-imports: | $(NEEDS_GOIMPORTS)
10+
./hack/verify-goimports.sh $(GOIMPORTS)
1111

1212
.PHONY: verify-chart
1313
verify-chart: $(BINDIR)/cert-manager-$(RELEASE_VERSION).tgz
@@ -29,32 +29,32 @@ verify-licenses: $(BINDIR)/scratch/LATEST-LICENSES
2929
@diff $(BINDIR)/scratch/LATEST-LICENSES LICENSES >/dev/null || (echo -e "\033[0;33mLICENSES seem to be out of date; update with 'make update-licenses'\033[0m" && exit 1)
3030

3131
.PHONY: verify-crds
32-
verify-crds: | $(DEPENDS_ON_GO) $(BINDIR)/tools/controller-gen $(BINDIR)/tools/yq
33-
./hack/check-crds.sh $(GO) ./$(BINDIR)/tools/controller-gen ./$(BINDIR)/tools/yq
32+
verify-crds: | $(NEEDS_GO) $(NEEDS_CONTROLLER-GEN) $(NEEDS_YQ)
33+
./hack/check-crds.sh $(GO) $(CONTROLLER-GEN) $(YQ)
3434

3535
.PHONY: update-licenses
3636
update-licenses: LICENSES
3737

3838
.PHONY: update-crds
39-
update-crds: generate-test-crds patch-crds | $(BINDIR)/tools/controller-gen
39+
update-crds: generate-test-crds patch-crds
4040

4141
.PHONY: generate-test-crds
42-
generate-test-crds: | $(BINDIR)/tools/controller-gen
43-
./$(BINDIR)/tools/controller-gen \
42+
generate-test-crds: | $(NEEDS_CONTROLLER-GEN)
43+
$(CONTROLLER-GEN) \
4444
crd \
4545
paths=./pkg/webhook/handlers/testdata/apis/testgroup/v{1,2}/... \
4646
output:crd:dir=./pkg/webhook/handlers/testdata/apis/testgroup/crds
4747

4848
PATCH_CRD_OUTPUT_DIR=./deploy/crds
4949
.PHONY: patch-crds
50-
patch-crds: | $(BINDIR)/tools/controller-gen
51-
./$(BINDIR)/tools/controller-gen \
50+
patch-crds: | $(NEEDS_CONTROLLER-GEN)
51+
$(CONTROLLER-GEN) \
5252
schemapatch:manifests=./deploy/crds \
5353
output:dir=$(PATCH_CRD_OUTPUT_DIR) \
5454
paths=./pkg/apis/...
5555

5656
.PHONY: verify-codegen
57-
verify-codegen: | k8s-codegen-tools $(DEPENDS_ON_GO)
57+
verify-codegen: | k8s-codegen-tools $(NEEDS_GO)
5858
VERIFY_ONLY="true" ./hack/k8s-codegen.sh \
5959
$(GO) \
6060
./$(BINDIR)/tools/client-gen \
@@ -65,7 +65,7 @@ verify-codegen: | k8s-codegen-tools $(DEPENDS_ON_GO)
6565
./$(BINDIR)/tools/conversion-gen
6666

6767
.PHONY: update-codegen
68-
update-codegen: | k8s-codegen-tools $(DEPENDS_ON_GO)
68+
update-codegen: | k8s-codegen-tools $(NEEDS_GO)
6969
./hack/k8s-codegen.sh \
7070
$(GO) \
7171
./$(BINDIR)/tools/client-gen \

make/cmctl.mk

+8-8
Original file line numberDiff line numberDiff line change
@@ -20,10 +20,10 @@ cmctl-linux-tarballs: $(BINDIR)/release/cert-manager-cmctl-linux-amd64.tar.gz $(
2020
.PHONY: cmctl-linux-metadata
2121
cmctl-linux-metadata: $(BINDIR)/metadata/cert-manager-cmctl-linux-amd64.tar.gz.metadata.json $(BINDIR)/metadata/cert-manager-cmctl-linux-arm64.tar.gz.metadata.json $(BINDIR)/metadata/cert-manager-cmctl-linux-s390x.tar.gz.metadata.json $(BINDIR)/metadata/cert-manager-cmctl-linux-ppc64le.tar.gz.metadata.json $(BINDIR)/metadata/cert-manager-cmctl-linux-arm.tar.gz.metadata.json | $(BINDIR)/metadata
2222

23-
$(BINDIR)/cmctl/cmctl-linux-amd64 $(BINDIR)/cmctl/cmctl-linux-arm64 $(BINDIR)/cmctl/cmctl-linux-s390x $(BINDIR)/cmctl/cmctl-linux-ppc64le: $(BINDIR)/cmctl/cmctl-linux-%: $(SOURCES) $(DEPENDS_ON_GO) | $(BINDIR)/cmctl
23+
$(BINDIR)/cmctl/cmctl-linux-amd64 $(BINDIR)/cmctl/cmctl-linux-arm64 $(BINDIR)/cmctl/cmctl-linux-s390x $(BINDIR)/cmctl/cmctl-linux-ppc64le: $(BINDIR)/cmctl/cmctl-linux-%: $(SOURCES) | $(NEEDS_GO) $(BINDIR)/cmctl
2424
GOOS=linux GOARCH=$* $(GOBUILD) -o $@ $(GOFLAGS) -ldflags '$(CMCTL_GOLDFLAGS)' cmd/ctl/main.go
2525

26-
$(BINDIR)/cmctl/cmctl-linux-arm: $(SOURCES) $(DEPENDS_ON_GO) | $(BINDIR)/cmctl
26+
$(BINDIR)/cmctl/cmctl-linux-arm: $(SOURCES) | $(NEEDS_GO) $(BINDIR)/cmctl
2727
GOOS=linux GOARCH=arm GOARM=7 $(GOBUILD) -o $@ $(GOFLAGS) -ldflags '$(CMCTL_GOLDFLAGS)' cmd/ctl/main.go
2828

2929
$(BINDIR)/release/cert-manager-cmctl-linux-amd64.tar.gz $(BINDIR)/release/cert-manager-cmctl-linux-arm64.tar.gz $(BINDIR)/release/cert-manager-cmctl-linux-s390x.tar.gz $(BINDIR)/release/cert-manager-cmctl-linux-ppc64le.tar.gz $(BINDIR)/release/cert-manager-cmctl-linux-arm.tar.gz: $(BINDIR)/release/cert-manager-cmctl-linux-%.tar.gz: $(BINDIR)/cmctl/cmctl-linux-% $(BINDIR)/scratch/cert-manager.license | $(BINDIR)/scratch $(BINDIR)/release
@@ -52,7 +52,7 @@ cmctl-darwin-tarballs: $(BINDIR)/release/cert-manager-cmctl-darwin-amd64.tar.gz
5252
.PHONY: cmctl-darwin-metadata
5353
cmctl-darwin-metadata: $(BINDIR)/metadata/cert-manager-cmctl-darwin-amd64.tar.gz.metadata.json $(BINDIR)/metadata/cert-manager-cmctl-darwin-arm64.tar.gz.metadata.json | $(BINDIR)/metadata
5454

55-
$(BINDIR)/cmctl/cmctl-darwin-amd64 $(BINDIR)/cmctl/cmctl-darwin-arm64: $(BINDIR)/cmctl/cmctl-darwin-%: $(SOURCES) $(DEPENDS_ON_GO) | $(BINDIR)/cmctl
55+
$(BINDIR)/cmctl/cmctl-darwin-amd64 $(BINDIR)/cmctl/cmctl-darwin-arm64: $(BINDIR)/cmctl/cmctl-darwin-%: $(SOURCES) | $(NEEDS_GO) $(BINDIR)/cmctl
5656
GOOS=darwin GOARCH=$* $(GOBUILD) -o $@ $(GOFLAGS) -ldflags '$(CMCTL_GOLDFLAGS)' cmd/ctl/main.go
5757

5858
$(BINDIR)/release/cert-manager-cmctl-darwin-amd64.tar.gz $(BINDIR)/release/cert-manager-cmctl-darwin-arm64.tar.gz: $(BINDIR)/release/cert-manager-cmctl-darwin-%.tar.gz: $(BINDIR)/cmctl/cmctl-darwin-% $(BINDIR)/scratch/cert-manager.license | $(BINDIR)/scratch $(BINDIR)/release
@@ -81,7 +81,7 @@ cmctl-windows-tarballs: $(BINDIR)/release/cert-manager-cmctl-windows-amd64.tar.g
8181
.PHONY: cmctl-windows-metadata
8282
cmctl-windows-metadata: $(BINDIR)/metadata/cert-manager-cmctl-windows-amd64.tar.gz.metadata.json $(BINDIR)/metadata/cert-manager-cmctl-windows-amd64.zip.metadata.json | $(BINDIR)/release
8383

84-
$(BINDIR)/cmctl/cmctl-windows-amd64.exe: $(SOURCES) $(DEPENDS_ON_GO) | $(BINDIR)/cmctl
84+
$(BINDIR)/cmctl/cmctl-windows-amd64.exe: $(SOURCES) | $(NEEDS_GO) $(BINDIR)/cmctl
8585
GOOS=windows GOARCH=amd64 $(GOBUILD) -o $@ $(GOFLAGS) -ldflags '$(CMCTL_GOLDFLAGS)' cmd/ctl/main.go
8686

8787
$(BINDIR)/release/cert-manager-cmctl-windows-amd64.zip: $(BINDIR)/cmctl/cmctl-windows-amd64.exe $(BINDIR)/scratch/cert-manager.license | $(BINDIR)/scratch $(BINDIR)/release
@@ -129,10 +129,10 @@ kubectl-cert_manager-linux-tarballs: $(BINDIR)/release/cert-manager-kubectl-cert
129129
.PHONY: kubectl-cert_manager-linux-metadata
130130
kubectl-cert_manager-linux-metadata: $(BINDIR)/metadata/cert-manager-kubectl-cert_manager-linux-amd64.tar.gz.metadata.json $(BINDIR)/metadata/cert-manager-kubectl-cert_manager-linux-arm64.tar.gz.metadata.json $(BINDIR)/metadata/cert-manager-kubectl-cert_manager-linux-s390x.tar.gz.metadata.json $(BINDIR)/metadata/cert-manager-kubectl-cert_manager-linux-ppc64le.tar.gz.metadata.json $(BINDIR)/metadata/cert-manager-kubectl-cert_manager-linux-arm.tar.gz.metadata.json | $(BINDIR)/metadata
131131

132-
$(BINDIR)/kubectl-cert_manager/kubectl-cert_manager-linux-amd64 $(BINDIR)/kubectl-cert_manager/kubectl-cert_manager-linux-arm64 $(BINDIR)/kubectl-cert_manager/kubectl-cert_manager-linux-s390x $(BINDIR)/kubectl-cert_manager/kubectl-cert_manager-linux-ppc64le: $(BINDIR)/kubectl-cert_manager/kubectl-cert_manager-linux-%: $(SOURCES) $(DEPENDS_ON_GO) | $(BINDIR)/kubectl-cert_manager
132+
$(BINDIR)/kubectl-cert_manager/kubectl-cert_manager-linux-amd64 $(BINDIR)/kubectl-cert_manager/kubectl-cert_manager-linux-arm64 $(BINDIR)/kubectl-cert_manager/kubectl-cert_manager-linux-s390x $(BINDIR)/kubectl-cert_manager/kubectl-cert_manager-linux-ppc64le: $(BINDIR)/kubectl-cert_manager/kubectl-cert_manager-linux-%: $(SOURCES) | $(NEEDS_GO) $(BINDIR)/kubectl-cert_manager
133133
GOOS=linux GOARCH=$* $(GOBUILD) -o $@ $(GOFLAGS) -ldflags '$(KUBECTL_PLUGIN_GOLDFLAGS)' cmd/ctl/main.go
134134

135-
$(BINDIR)/kubectl-cert_manager/kubectl-cert_manager-linux-arm: $(SOURCES) $(DEPENDS_ON_GO) | $(BINDIR)/kubectl-cert_manager
135+
$(BINDIR)/kubectl-cert_manager/kubectl-cert_manager-linux-arm: $(SOURCES) | $(NEEDS_GO) $(BINDIR)/kubectl-cert_manager
136136
GOOS=linux GOARCH=arm GOARM=7 $(GOBUILD) -o $@ $(GOFLAGS) -ldflags '$(KUBECTL_PLUGIN_GOLDFLAGS)' cmd/ctl/main.go
137137

138138
$(BINDIR)/release/cert-manager-kubectl-cert_manager-linux-amd64.tar.gz $(BINDIR)/release/cert-manager-kubectl-cert_manager-linux-arm64.tar.gz $(BINDIR)/release/cert-manager-kubectl-cert_manager-linux-s390x.tar.gz $(BINDIR)/release/cert-manager-kubectl-cert_manager-linux-ppc64le.tar.gz $(BINDIR)/release/cert-manager-kubectl-cert_manager-linux-arm.tar.gz: $(BINDIR)/release/cert-manager-kubectl-cert_manager-linux-%.tar.gz: $(BINDIR)/kubectl-cert_manager/kubectl-cert_manager-linux-% $(BINDIR)/scratch/cert-manager.license | $(BINDIR)/scratch $(BINDIR)/release
@@ -161,7 +161,7 @@ kubectl-cert_manager-darwin-tarballs: $(BINDIR)/release/cert-manager-kubectl-cer
161161
.PHONY: kubectl-cert_manager-darwin-metadata
162162
kubectl-cert_manager-darwin-metadata: $(BINDIR)/metadata/cert-manager-kubectl-cert_manager-darwin-amd64.tar.gz.metadata.json $(BINDIR)/metadata/cert-manager-kubectl-cert_manager-darwin-arm64.tar.gz.metadata.json | $(BINDIR)/metadata
163163

164-
$(BINDIR)/kubectl-cert_manager/kubectl-cert_manager-darwin-amd64 $(BINDIR)/kubectl-cert_manager/kubectl-cert_manager-darwin-arm64: $(BINDIR)/kubectl-cert_manager/kubectl-cert_manager-darwin-%: $(SOURCES) $(DEPENDS_ON_GO) | $(BINDIR)/kubectl-cert_manager
164+
$(BINDIR)/kubectl-cert_manager/kubectl-cert_manager-darwin-amd64 $(BINDIR)/kubectl-cert_manager/kubectl-cert_manager-darwin-arm64: $(BINDIR)/kubectl-cert_manager/kubectl-cert_manager-darwin-%: $(SOURCES) | $(NEEDS_GO) $(BINDIR)/kubectl-cert_manager
165165
GOOS=darwin GOARCH=$* $(GOBUILD) -o $@ $(GOFLAGS) -ldflags '$(KUBECTL_PLUGIN_GOLDFLAGS)' cmd/ctl/main.go
166166

167167
$(BINDIR)/release/cert-manager-kubectl-cert_manager-darwin-amd64.tar.gz $(BINDIR)/release/cert-manager-kubectl-cert_manager-darwin-arm64.tar.gz: $(BINDIR)/release/cert-manager-kubectl-cert_manager-darwin-%.tar.gz: $(BINDIR)/kubectl-cert_manager/kubectl-cert_manager-darwin-% $(BINDIR)/scratch/cert-manager.license | $(BINDIR)/scratch $(BINDIR)/release
@@ -190,7 +190,7 @@ kubectl-cert_manager-windows-tarballs: $(BINDIR)/release/cert-manager-kubectl-ce
190190
.PHONY: kubectl-cert_manager-windows-metadata
191191
kubectl-cert_manager-windows-metadata: $(BINDIR)/metadata/cert-manager-kubectl-cert_manager-windows-amd64.tar.gz.metadata.json $(BINDIR)/metadata/cert-manager-kubectl-cert_manager-windows-amd64.zip.metadata.json | $(BINDIR)/release
192192

193-
$(BINDIR)/kubectl-cert_manager/kubectl-cert_manager-windows-amd64.exe: $(SOURCES) $(DEPENDS_ON_GO) | $(BINDIR)/kubectl-cert_manager
193+
$(BINDIR)/kubectl-cert_manager/kubectl-cert_manager-windows-amd64.exe: $(SOURCES) | $(NEEDS_GO) $(BINDIR)/kubectl-cert_manager
194194
GOOS=windows GOARCH=amd64 $(GOBUILD) -o $@ $(GOFLAGS) -ldflags '$(KUBECTL_PLUGIN_GOLDFLAGS)' cmd/ctl/main.go
195195

196196
$(BINDIR)/release/cert-manager-kubectl-cert_manager-windows-amd64.zip: $(BINDIR)/kubectl-cert_manager/kubectl-cert_manager-windows-amd64.exe $(BINDIR)/scratch/cert-manager.license | $(BINDIR)/scratch $(BINDIR)/release

0 commit comments

Comments
 (0)