mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-22 11:21:47 +00:00
Use select
to disable building static binaries if --cpu=darwin
.
This change allows kubectl to be built on MacOS machines using `bazel build //cmd/kubectl`. Mac OS X doesn't support static binaries because it does not have a stable syscall API. Userspace binaries are expected to dynamically link against libcrt instead. https://developer.apple.com/library/content/qa/qa1118/_index.html
This commit is contained in:
parent
bc1a58ae3a
commit
046a6ce6bb
@ -7,12 +7,17 @@ load("//pkg/version:def.bzl", "version_x_defs")
|
|||||||
|
|
||||||
go_binary(
|
go_binary(
|
||||||
name = "kubectl",
|
name = "kubectl",
|
||||||
gc_linkopts = [
|
gc_linkopts = select({
|
||||||
"-linkmode",
|
# Mac OS X doesn't support static binaries:
|
||||||
"external",
|
# https://developer.apple.com/library/content/qa/qa1118/_index.html
|
||||||
"-extldflags",
|
"@io_bazel_rules_go//go/platform:darwin_amd64": [],
|
||||||
"-static",
|
"//conditions:default": [
|
||||||
],
|
"-linkmode",
|
||||||
|
"external",
|
||||||
|
"-extldflags",
|
||||||
|
"-static",
|
||||||
|
],
|
||||||
|
}),
|
||||||
library = ":go_default_library",
|
library = ":go_default_library",
|
||||||
visibility = [
|
visibility = [
|
||||||
"//build/visible_to:COMMON_release",
|
"//build/visible_to:COMMON_release",
|
||||||
|
Loading…
Reference in New Issue
Block a user