mirror of https://github.com/k3s-io/k3s
Plumb linker flags through from the Makefile
parent
7c9bbef96e
commit
79f14822a9
6
Makefile
6
Makefile
|
@ -12,6 +12,9 @@ GODEPS_PKG_DIR = Godeps/_workspace/pkg
|
||||||
KUBE_GOFLAGS = $(GOFLAGS)
|
KUBE_GOFLAGS = $(GOFLAGS)
|
||||||
export KUBE_GOFLAGS
|
export KUBE_GOFLAGS
|
||||||
|
|
||||||
|
KUBE_GOLDFLAGS = $(GOLDFLAGS)
|
||||||
|
export KUBE_GOLDFLAGS
|
||||||
|
|
||||||
# Build code.
|
# Build code.
|
||||||
#
|
#
|
||||||
# Args:
|
# Args:
|
||||||
|
@ -19,6 +22,7 @@ export KUBE_GOFLAGS
|
||||||
# package, the build will produce executable files under $(OUT_DIR)/go/bin.
|
# package, the build will produce executable files under $(OUT_DIR)/go/bin.
|
||||||
# If not specified, "everything" will be built.
|
# If not specified, "everything" will be built.
|
||||||
# GOFLAGS: Extra flags to pass to 'go' when building.
|
# GOFLAGS: Extra flags to pass to 'go' when building.
|
||||||
|
# GOLDFLAGS: Extra linking flags to pass to 'go' when building.
|
||||||
#
|
#
|
||||||
# Example:
|
# Example:
|
||||||
# make
|
# make
|
||||||
|
@ -35,6 +39,7 @@ all:
|
||||||
# directories will be run. If not specified, "everything" will be tested.
|
# directories will be run. If not specified, "everything" will be tested.
|
||||||
# TESTS: Same as WHAT.
|
# TESTS: Same as WHAT.
|
||||||
# GOFLAGS: Extra flags to pass to 'go' when building.
|
# GOFLAGS: Extra flags to pass to 'go' when building.
|
||||||
|
# GOLDFLAGS: Extra linking flags to pass to 'go' when building.
|
||||||
#
|
#
|
||||||
# Example:
|
# Example:
|
||||||
# make check
|
# make check
|
||||||
|
@ -78,6 +83,7 @@ clean:
|
||||||
# vetted.
|
# vetted.
|
||||||
# TESTS: Same as WHAT.
|
# TESTS: Same as WHAT.
|
||||||
# GOFLAGS: Extra flags to pass to 'go' when building.
|
# GOFLAGS: Extra flags to pass to 'go' when building.
|
||||||
|
# GOLDFLAGS: Extra linking flags to pass to 'go' when building.
|
||||||
#
|
#
|
||||||
# Example:
|
# Example:
|
||||||
# make vet
|
# make vet
|
||||||
|
|
|
@ -369,7 +369,7 @@ kube::golang::build_binaries_for_platform() {
|
||||||
local outfile=$(kube::golang::output_filename_for_binary "${binary}" "${platform}")
|
local outfile=$(kube::golang::output_filename_for_binary "${binary}" "${platform}")
|
||||||
CGO_ENABLED=0 go build -o "${outfile}" \
|
CGO_ENABLED=0 go build -o "${outfile}" \
|
||||||
"${goflags[@]:+${goflags[@]}}" \
|
"${goflags[@]:+${goflags[@]}}" \
|
||||||
-ldflags "${version_ldflags}" \
|
-ldflags "${goldflags}" \
|
||||||
"${binary}"
|
"${binary}"
|
||||||
kube::log::progress "*"
|
kube::log::progress "*"
|
||||||
done
|
done
|
||||||
|
@ -377,7 +377,7 @@ kube::golang::build_binaries_for_platform() {
|
||||||
local outfile=$(kube::golang::output_filename_for_binary "${binary}" "${platform}")
|
local outfile=$(kube::golang::output_filename_for_binary "${binary}" "${platform}")
|
||||||
go build -o "${outfile}" \
|
go build -o "${outfile}" \
|
||||||
"${goflags[@]:+${goflags[@]}}" \
|
"${goflags[@]:+${goflags[@]}}" \
|
||||||
-ldflags "${version_ldflags}" \
|
-ldflags "${goldflags}" \
|
||||||
"${binary}"
|
"${binary}"
|
||||||
kube::log::progress "*"
|
kube::log::progress "*"
|
||||||
done
|
done
|
||||||
|
@ -386,12 +386,12 @@ kube::golang::build_binaries_for_platform() {
|
||||||
# Use go install.
|
# Use go install.
|
||||||
if [[ "${#nonstatics[@]}" != 0 ]]; then
|
if [[ "${#nonstatics[@]}" != 0 ]]; then
|
||||||
go install "${goflags[@]:+${goflags[@]}}" \
|
go install "${goflags[@]:+${goflags[@]}}" \
|
||||||
-ldflags "${version_ldflags}" \
|
-ldflags "${goldflags}" \
|
||||||
"${nonstatics[@]:+${nonstatics[@]}}"
|
"${nonstatics[@]:+${nonstatics[@]}}"
|
||||||
fi
|
fi
|
||||||
if [[ "${#statics[@]}" != 0 ]]; then
|
if [[ "${#statics[@]}" != 0 ]]; then
|
||||||
CGO_ENABLED=0 go install -installsuffix cgo "${goflags[@]:+${goflags[@]}}" \
|
CGO_ENABLED=0 go install -installsuffix cgo "${goflags[@]:+${goflags[@]}}" \
|
||||||
-ldflags "${version_ldflags}" \
|
-ldflags "${goldflags}" \
|
||||||
"${statics[@]:+${statics[@]}}"
|
"${statics[@]:+${statics[@]}}"
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
@ -405,7 +405,7 @@ kube::golang::build_binaries_for_platform() {
|
||||||
pushd "$(dirname ${outfile})" >/dev/null
|
pushd "$(dirname ${outfile})" >/dev/null
|
||||||
go test -c \
|
go test -c \
|
||||||
"${goflags[@]:+${goflags[@]}}" \
|
"${goflags[@]:+${goflags[@]}}" \
|
||||||
-ldflags "${version_ldflags}" \
|
-ldflags "${goldflags}" \
|
||||||
"$(dirname ${test})"
|
"$(dirname ${test})"
|
||||||
popd >/dev/null
|
popd >/dev/null
|
||||||
done
|
done
|
||||||
|
@ -447,16 +447,13 @@ kube::golang::build_binaries() {
|
||||||
# Check for `go` binary and set ${GOPATH}.
|
# Check for `go` binary and set ${GOPATH}.
|
||||||
kube::golang::setup_env
|
kube::golang::setup_env
|
||||||
|
|
||||||
# Fetch the version.
|
|
||||||
local version_ldflags
|
|
||||||
version_ldflags=$(kube::version::ldflags)
|
|
||||||
|
|
||||||
local host_platform
|
local host_platform
|
||||||
host_platform=$(kube::golang::host_platform)
|
host_platform=$(kube::golang::host_platform)
|
||||||
|
|
||||||
# Use eval to preserve embedded quoted strings.
|
# Use eval to preserve embedded quoted strings.
|
||||||
local goflags
|
local goflags goldflags
|
||||||
eval "goflags=(${KUBE_GOFLAGS:-})"
|
eval "goflags=(${KUBE_GOFLAGS:-})"
|
||||||
|
goldflags="${KUBE_GOLDFLAGS:-} $(kube::version::ldflags)"
|
||||||
|
|
||||||
local use_go_build
|
local use_go_build
|
||||||
local -a targets=()
|
local -a targets=()
|
||||||
|
|
Loading…
Reference in New Issue