mirror of
https://github.com/kata-containers/kata-containers.git
synced 2025-06-25 15:02:45 +00:00
build: Add support to strip the binary
This provides a flag "STRIP=yes" to strip the golang binary After this patch, the binary size is reduced a lot: 19356680 containerd-shim-kata-v2* 25980728 containerd-shim-kata-v2.nostip* 4021784 kata-netmon* 5093992 kata-netmon.nostrip* 26339392 kata-runtime* 33097344 kata-runtime.nostrip* Fixes: #2455 Signed-off-by: Jia He <justin.he@arm.com>
This commit is contained in:
parent
f8e52544bf
commit
2c3b4657f5
11
Makefile
11
Makefile
@ -463,6 +463,11 @@ QUIET_TEST = $(Q:@=@echo ' TEST '$@;)
|
|||||||
# go build common flags
|
# go build common flags
|
||||||
BUILDFLAGS := -buildmode=pie
|
BUILDFLAGS := -buildmode=pie
|
||||||
|
|
||||||
|
# whether stipping the binary
|
||||||
|
ifeq ($(STRIP),yes)
|
||||||
|
LDFLAGS := -ldflags "-w -s"
|
||||||
|
endif
|
||||||
|
|
||||||
# Return non-empty string if specified directory exists
|
# Return non-empty string if specified directory exists
|
||||||
define DIR_EXISTS
|
define DIR_EXISTS
|
||||||
$(shell test -d $(1) && echo "$(1)")
|
$(shell test -d $(1) && echo "$(1)")
|
||||||
@ -490,7 +495,7 @@ containerd-shim-v2: $(SHIMV2_OUTPUT)
|
|||||||
netmon: $(NETMON_TARGET_OUTPUT)
|
netmon: $(NETMON_TARGET_OUTPUT)
|
||||||
|
|
||||||
$(NETMON_TARGET_OUTPUT): $(SOURCES) VERSION
|
$(NETMON_TARGET_OUTPUT): $(SOURCES) VERSION
|
||||||
$(QUIET_BUILD)(cd $(NETMON_DIR) && go build $(BUILDFLAGS) -o $@ -ldflags "-X main.version=$(VERSION)")
|
$(QUIET_BUILD)(cd $(NETMON_DIR) && go build $(BUILDFLAGS) -o $@ -ldflags "-X main.version=$(VERSION)" $(LDFLAGS))
|
||||||
|
|
||||||
runtime: $(TARGET_OUTPUT) $(CONFIGS)
|
runtime: $(TARGET_OUTPUT) $(CONFIGS)
|
||||||
.DEFAULT: default
|
.DEFAULT: default
|
||||||
@ -527,10 +532,10 @@ endef
|
|||||||
GENERATED_FILES += $(CLI_DIR)/config-generated.go
|
GENERATED_FILES += $(CLI_DIR)/config-generated.go
|
||||||
|
|
||||||
$(TARGET_OUTPUT): $(SOURCES) $(GENERATED_FILES) $(MAKEFILE_LIST) | show-summary
|
$(TARGET_OUTPUT): $(SOURCES) $(GENERATED_FILES) $(MAKEFILE_LIST) | show-summary
|
||||||
$(QUIET_BUILD)(cd $(CLI_DIR) && go build $(BUILDFLAGS) -o $@ .)
|
$(QUIET_BUILD)(cd $(CLI_DIR) && go build $(LDFLAGS) $(BUILDFLAGS) -o $@ .)
|
||||||
|
|
||||||
$(SHIMV2_OUTPUT): $(SOURCES) $(GENERATED_FILES) $(MAKEFILE_LIST)
|
$(SHIMV2_OUTPUT): $(SOURCES) $(GENERATED_FILES) $(MAKEFILE_LIST)
|
||||||
$(QUIET_BUILD)(cd $(SHIMV2_DIR)/ && go build -i -o $@ .)
|
$(QUIET_BUILD)(cd $(SHIMV2_DIR)/ && go build $(LDFLAGS) -i -o $@ .)
|
||||||
|
|
||||||
.PHONY: \
|
.PHONY: \
|
||||||
check \
|
check \
|
||||||
|
Loading…
Reference in New Issue
Block a user