forked from bazelbuild/bazelisk
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdefs.bzl
More file actions
32 lines (28 loc) · 1.15 KB
/
defs.bzl
File metadata and controls
32 lines (28 loc) · 1.15 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
load("@io_bazel_rules_go//go:def.bzl", "go_binary")
def bazelisk_go_binaries():
for os in ("linux", "darwin", "windows"):
ext = ".exe" if os == "windows" else ""
# Don't strip debugging symbols on Windows, as it makes binaries more
# likely to be flagged as malware.
gc_linkopts = [] if os == "windows" else ["-s", "-w"]
for arch in ("amd64", "arm64"):
binary_name = "bazelisk-%s-%s" % (os, arch)
binary_out = "bazelisk-%s_%s%s" % (os, arch, ext)
go_binary(
name = binary_name,
out = binary_out,
embed = [":bazelisk_lib"],
gc_linkopts = gc_linkopts,
goarch = arch,
goos = os,
pure = "on",
visibility = ["//visibility:public"],
)
native.genrule(
name = binary_name + "-sha256",
srcs = [binary_name],
outs = [binary_out + ".sha256"],
cmd = "$(execpath //sha256sum) $< > $@",
tools = ["//sha256sum"],
visibility = ["//visibility:public"],
)