-
-
Notifications
You must be signed in to change notification settings - Fork 2
/
musl-toolchain.BUILD.bazel.template
56 lines (48 loc) · 1.46 KB
/
musl-toolchain.BUILD.bazel.template
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
load("//:musl_cc_toolchain_config.bzl", "musl_cc_test_toolchain", "musl_cc_toolchain_config")
package(default_visibility = ["//visibility:public"])
filegroup(
name = "all_files",
srcs = glob(["**/*"]),
visibility = ["//visibility:public"],
)
[
filegroup(
name = "musl_" + bin + "_files",
srcs = ["bin/{{target_arch}}-linux-musl-" + bin],
)
for bin in [
"ar",
"ld",
"objcopy",
"strip",
"objdump",
]
]
filegroup(name = "empty")
filegroup(
name = "dynamic_runtime_lib",
srcs = glob(["{{target_arch}}-linux-musl/lib/*.so*"]),
)
musl_cc_toolchain_config(name = "k8_musl_toolchain_config", target_arch = "{{target_arch}}")
cc_toolchain(
name = "{{toolchain_name}}",
all_files = ":all_files",
ar_files = ":musl_ar_files",
as_files = ":all_files",
compiler_files = ":all_files",
coverage_files = ":all_files",
dwp_files = ":empty",
linker_files = ":all_files",
objcopy_files = ":musl_objcopy_files",
strip_files = ":musl_strip_files",
supports_param_files = True,
toolchain_config = ":k8_musl_toolchain_config",
toolchain_identifier = "k8-musl-toolchain",
dynamic_runtime_lib = ":dynamic_runtime_lib",
# Linked in automatically by the toolchain.
static_runtime_lib = ":empty",
)
musl_cc_test_toolchain(
name = "{{toolchain_name}}_test_toolchain",
dynamic_linker = "{{target_arch}}-linux-musl/lib/ld-musl-{{target_arch}}.so.1",
)