@@ -30,7 +30,8 @@ EMBEDDED_BINS_BUILDMODE ?= docker
30
30
TARGET_OS ?= linux
31
31
BUILD_UID ?= $(shell id -u)
32
32
BUILD_GID ?= $(shell id -g)
33
- BUILD_GO_FLAGS := -tags osusergo -buildvcs=false -trimpath
33
+ BUILD_GO_TAGS ?= osusergo
34
+ BUILD_GO_FLAGS = -tags=$(subst $(space ) ,$(comma ) ,$(BUILD_GO_TAGS ) ) -buildvcs=false -trimpath
34
35
BUILD_CGO_CFLAGS :=
35
36
BUILD_GO_LDFLAGS_EXTRA :=
36
37
DEBUG ?= false
@@ -157,17 +158,11 @@ static/zz_generated_assets.go: $(shell find $(static_asset_dirs) -type f)
157
158
CGO_ENABLED=0 $(GO ) install github.com/kevinburke/go-bindata/go-bindata@v$(go-bindata_version )
158
159
$(GO_ENV ) go-bindata -o ' $@' -pkg static -prefix static $(patsubst % ,% /...,$(static_asset_dirs ) )
159
160
160
- codegen_targets += pkg/assets/zz_generated_offsets_$(TARGET_OS ) .go
161
- zz_os = $(patsubst pkg/assets/zz_generated_offsets_% .go,% ,$@ )
162
- print_empty_generated_offsets = printf "%s\n\n%s\n%s\n" \
163
- "package assets" \
164
- "var BinData = map[string]struct{ offset, size, originalSize int64 }{}" \
165
- "var BinDataSize int64"
166
161
ifeq ($(EMBEDDED_BINS_BUILDMODE ) ,none)
167
- pkg/assets/zz_generated_offsets_linux.go pkg/assets/zz_generated_offsets_windows.go :
168
- rm -f bindata_$(zz_os ) && touch bindata_$(zz_os )
169
- $(print_empty_generated_offsets ) > $@
162
+ BUILD_GO_TAGS += noembedbins
170
163
else
164
+ codegen_targets += pkg/assets/zz_generated_offsets_$(TARGET_OS ) .go
165
+ zz_os = $(patsubst pkg/assets/zz_generated_offsets_% .go,% ,$@ )
171
166
pkg/assets/zz_generated_offsets_linux.go : .bins.linux.stamp
172
167
pkg/assets/zz_generated_offsets_windows.go : .bins.windows.stamp
173
168
pkg/assets/zz_generated_offsets_linux.go pkg/assets/zz_generated_offsets_windows.go : .k0sbuild.docker-image.k0s go.sum
@@ -176,10 +171,6 @@ pkg/assets/zz_generated_offsets_linux.go pkg/assets/zz_generated_offsets_windows
176
171
-prefix embedded-bins/staging/$(zz_os ) / embedded-bins/staging/$(zz_os ) /bin
177
172
endif
178
173
179
- # needed for unit tests on macos
180
- pkg/assets/zz_generated_offsets_darwin.go :
181
- $(print_empty_generated_offsets ) > $@
182
-
183
174
k0s : TARGET_OS = linux
184
175
k0s : BUILD_GO_CGO_ENABLED = 1
185
176
k0s : .k0sbuild.docker-image.k0s
@@ -189,11 +180,15 @@ k0s.exe: BUILD_GO_CGO_ENABLED = 0
189
180
190
181
k0s.exe k0s : $(GO_SRCS ) $(codegen_targets ) go.sum
191
182
CGO_ENABLED=$(BUILD_GO_CGO_ENABLED ) CGO_CFLAGS=' $(BUILD_CGO_CFLAGS)' GOOS=$(TARGET_OS ) $(GO ) build $(BUILD_GO_FLAGS ) -ldflags=' $(LD_FLAGS)' -o $@ .code main.go
192
- cat $@ .code bindata_$(TARGET_OS ) > $@ .tmp \
193
- && rm -f $@ .code \
194
- && printf " \nk0s size: %s\n\n" " $$ (du -sh $@ .tmp | cut -f1)" \
195
- && chmod +x $@ .tmp \
196
- && mv $@ .tmp $@
183
+ ifeq ($(EMBEDDED_BINS_BUILDMODE ) ,none)
184
+
185
+ else
186
+
187
+
188
+ endif
189
+
190
+
191
+ printf '\nk0s size: %s\n\n' "$$(du -sh -- $@ | cut -f1)"
197
192
198
193
.bins.windows.stamp .bins.linux.stamp : embedded-bins/Makefile.variables
199
194
$(MAKE ) -C embedded-bins \
@@ -206,17 +201,20 @@ codegen: $(codegen_targets)
206
201
207
202
# bindata contains the parts of codegen which aren't version controlled.
208
203
.PHONY : bindata
209
- bindata : static/zz_generated_assets.go pkg/assets/zz_generated_offsets_$(TARGET_OS ) .go
204
+ bindata : static/zz_generated_assets.go
205
+ ifneq ($(EMBEDDED_BINS_BUILDMODE ) ,none)
206
+ bindata : pkg/assets/zz_generated_offsets_$(TARGET_OS ) .go
207
+ endif
210
208
211
209
.PHONY : lint-copyright
212
210
lint-copyright :
213
211
hack/copyright.sh
214
212
215
213
.PHONY : lint-go
216
214
lint-go : GOLANGCI_LINT_FLAGS ?=
217
- lint-go : .k0sbuild.docker-image.k0s go.sum codegen
215
+ lint-go : .k0sbuild.docker-image.k0s go.sum bindata
218
216
CGO_ENABLED=0 $(GO ) install github.com/golangci/golangci-lint/cmd/golangci-lint@v$(golangci-lint_version )
219
- CGO_CFLAGS=' $(BUILD_CGO_CFLAGS)' $(GO_ENV ) golangci-lint run --verbose $(GOLANGCI_LINT_FLAGS ) $(GO_LINT_DIRS )
217
+ CGO_CFLAGS=' $(BUILD_CGO_CFLAGS)' $(GO_ENV ) golangci-lint run --verbose --build-tags= $( subst $( space ) , $( comma ) , $( BUILD_GO_TAGS ) ) $(GOLANGCI_LINT_FLAGS ) $(GO_LINT_DIRS )
220
218
221
219
.PHONY : lint
222
220
lint : lint-copyright lint-go
@@ -253,8 +251,9 @@ check-unit: GO_TEST_RACE ?=
253
251
else
254
252
check-unit : GO_TEST_RACE ?= -race
255
253
endif
256
- check-unit : go.sum codegen
257
- CGO_CFLAGS=' $(BUILD_CGO_CFLAGS)' $(GO ) test -tags=hack $(GO_TEST_RACE ) -ldflags=' $(LD_FLAGS)' ` $( GO) list -tags=hack $( GO_CHECK_UNIT_DIRS) `
254
+ check-unit : BUILD_GO_TAGS += hack
255
+ check-unit : .k0sbuild.docker-image.k0s go.sum bindata
256
+ CGO_CFLAGS=' $(BUILD_CGO_CFLAGS)' $(GO ) test -tags=$(subst $(space ) ,$(comma ) ,$(BUILD_GO_TAGS ) ) $(GO_TEST_RACE ) -ldflags=' $(LD_FLAGS)' ` $( GO) list -tags=$( subst $( space) ,$( comma) ,$( BUILD_GO_TAGS) ) $( GO_CHECK_UNIT_DIRS) `
258
257
259
258
.PHONY : check-image-validity
260
259
check-image-validity : go.sum
0 commit comments