2022-05-29 19:35:18 +03:00
|
|
|
load("@bazel-zig-cc//rules:platform.bzl", "platform_binary", "platform_test")
|
2022-04-13 17:52:25 +03:00
|
|
|
|
|
|
|
cc_binary(
|
|
|
|
name = "which_libc",
|
|
|
|
srcs = ["main.c"],
|
|
|
|
target_compatible_with = [
|
|
|
|
"@platforms//os:linux",
|
|
|
|
],
|
|
|
|
)
|
|
|
|
|
|
|
|
[
|
|
|
|
(
|
|
|
|
platform_binary(
|
|
|
|
name = "which_libc_{}".format(name),
|
|
|
|
src = "which_libc",
|
|
|
|
platform = platform,
|
|
|
|
),
|
|
|
|
sh_test(
|
|
|
|
name = "test_libc_{}".format(name),
|
|
|
|
srcs = ["test.sh"],
|
|
|
|
data = ["which_libc_{}".format(name)],
|
|
|
|
env = {
|
|
|
|
"WANT": want,
|
|
|
|
"BINARY": "$(location which_libc_{})".format(name),
|
|
|
|
},
|
|
|
|
),
|
|
|
|
)
|
|
|
|
for name, platform, want in [
|
|
|
|
("linux_amd64_musl", "//libc_aware/platform:linux_amd64_musl", "non-glibc"),
|
|
|
|
("linux_amd64_gnu.2.19", "//libc_aware/platform:linux_amd64_gnu.2.19", "glibc_2.19"),
|
|
|
|
("linux_amd64_gnu.2.28", "//libc_aware/platform:linux_amd64_gnu.2.28", "glibc_2.28"),
|
|
|
|
("linux_amd64_gnu.2.31", "//libc_aware/platform:linux_amd64_gnu.2.31", "glibc_2.31"),
|
|
|
|
("linux_amd64", "//platform:linux_amd64", "glibc_2.19"),
|
|
|
|
("linux_arm64", "//platform:linux_arm64", "glibc_2.28"),
|
|
|
|
]
|
|
|
|
]
|
2022-05-29 19:35:18 +03:00
|
|
|
|
|
|
|
cc_binary(
|
|
|
|
name = "winver",
|
|
|
|
srcs = ["main_winver.c"],
|
|
|
|
target_compatible_with = [
|
|
|
|
"@platforms//os:windows",
|
|
|
|
],
|
|
|
|
)
|
|
|
|
|
|
|
|
platform_test(
|
|
|
|
name = "winver_windows_amd64",
|
|
|
|
src = "winver",
|
|
|
|
platform = "//platform:windows_amd64",
|
|
|
|
tags = ["manual"],
|
|
|
|
)
|
|
|
|
|
|
|
|
platform_binary(
|
|
|
|
name = "winver_windows_arm64",
|
|
|
|
src = "winver",
|
|
|
|
platform = "//platform:windows_arm64",
|
|
|
|
tags = ["manual"],
|
|
|
|
)
|