mirror of
https://github.com/edgelesssys/constellation.git
synced 2026-01-11 04:31:06 -05:00
bazel: experiment with clang toolchain
This commit is contained in:
parent
4f37fe38f9
commit
dc377a83a6
7 changed files with 112 additions and 31 deletions
112
WORKSPACE.bazel
112
WORKSPACE.bazel
|
|
@ -50,40 +50,100 @@ buildifier_deps()
|
|||
|
||||
# C / C++ toolchains
|
||||
|
||||
load("//bazel/toolchains:zig_cc_deps.bzl", "zig_cc_deps")
|
||||
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
|
||||
|
||||
zig_cc_deps()
|
||||
BAZEL_TOOLCHAIN_TAG = "0.8.2"
|
||||
|
||||
load("@bazel-zig-cc//toolchain:defs.bzl", zig_toolchains = "toolchains")
|
||||
BAZEL_TOOLCHAIN_SHA = "0fc3a2b0c9c929920f4bed8f2b446a8274cad41f5ee823fd3faa0d7641f20db0"
|
||||
|
||||
# See https://ziglang.org/download/ for the latest releases
|
||||
|
||||
zig_toolchains(
|
||||
host_platform_sha256 = {
|
||||
"linux-aarch64": "b759a11993949531c692ccfc3d1a004b14df714a7a3515fe0b5c90c9a7631d61",
|
||||
"linux-x86_64": "028dad5189e02b2058679b64df16e854a1c1ca0e6044b334d4f3be6e35544f07",
|
||||
"macos-aarch64": "5709c27d581988f50f5e6fd5b69d92707787e803a1d04992e290b764617664e6",
|
||||
"macos-x86_64": "88d194adb2f3c1a9edbb4a24d018007d5f827a57d1d26b2d9f3459236da1b7b6",
|
||||
"windows-x86_64": "75e510bda108e4d78b89d5d1d09e70ea8595fac7c43b5611f280668881adb09d",
|
||||
},
|
||||
version = "0.11.0-dev.1638+7199d7c77",
|
||||
http_archive(
|
||||
name = "com_grail_bazel_toolchain",
|
||||
canonical_id = BAZEL_TOOLCHAIN_TAG,
|
||||
sha256 = BAZEL_TOOLCHAIN_SHA,
|
||||
strip_prefix = "bazel-toolchain-{tag}".format(tag = BAZEL_TOOLCHAIN_TAG),
|
||||
url = "https://github.com/grailbio/bazel-toolchain/archive/refs/tags/{tag}.tar.gz".format(tag = BAZEL_TOOLCHAIN_TAG),
|
||||
)
|
||||
|
||||
load("@com_grail_bazel_toolchain//toolchain:deps.bzl", "bazel_toolchain_dependencies")
|
||||
|
||||
bazel_toolchain_dependencies()
|
||||
|
||||
load("@com_grail_bazel_toolchain//toolchain:rules.bzl", "llvm_toolchain")
|
||||
|
||||
llvm_toolchain(
|
||||
name = "llvm_toolchain",
|
||||
llvm_version = "14.0.0",
|
||||
)
|
||||
|
||||
http_archive(
|
||||
name = "org_chromium_sysroot_linux_x64",
|
||||
build_file_content = """
|
||||
filegroup(
|
||||
name = "sysroot",
|
||||
srcs = glob(["*/**"]),
|
||||
visibility = ["//visibility:public"],
|
||||
)
|
||||
""",
|
||||
sha256 = "bacf1506da1bfc9dbb4e856aa61b2a80af75956d4f812708e29058042c27b444",
|
||||
urls = ["https://commondatastorage.googleapis.com/chrome-linux-sysroot/toolchain/3bdb3503702d35520d101fc5eec9a8ab5353149f/debian_bullseye_amd64_sysroot.tar.xz"],
|
||||
)
|
||||
|
||||
llvm_toolchain(
|
||||
name = "llvm_toolchain_with_sysroot",
|
||||
llvm_versions = {
|
||||
"": "14.0.0",
|
||||
},
|
||||
sysroot = {
|
||||
# "linux-x86_64": "@org_chromium_sysroot_linux_x64//:sysroot",
|
||||
"linux-x86_64": "@//rpm:sysroot-files",
|
||||
},
|
||||
# We can share the downloaded LLVM distribution with the first configuration.
|
||||
toolchain_roots = {
|
||||
"": "@llvm_toolchain_llvm//",
|
||||
},
|
||||
)
|
||||
|
||||
load("@llvm_toolchain//:toolchains.bzl", "llvm_register_toolchains")
|
||||
|
||||
llvm_register_toolchains()
|
||||
|
||||
register_toolchains(
|
||||
"@zig_sdk//libc_aware/toolchain:linux_amd64_gnu.2.34",
|
||||
"@zig_sdk//libc_aware/toolchain:linux_arm64_gnu.2.34",
|
||||
"@zig_sdk//libc_aware/toolchain:linux_amd64_musl",
|
||||
"@zig_sdk//libc_aware/toolchain:linux_arm64_musl",
|
||||
"@zig_sdk//toolchain:linux_amd64_gnu.2.34",
|
||||
"@zig_sdk//toolchain:linux_arm64_gnu.2.34",
|
||||
"@zig_sdk//toolchain:linux_amd64_musl",
|
||||
"@zig_sdk//toolchain:linux_arm64_musl",
|
||||
"@zig_sdk//toolchain:darwin_amd64",
|
||||
"@zig_sdk//toolchain:darwin_arm64",
|
||||
"@zig_sdk//toolchain:windows_amd64",
|
||||
"@llvm_toolchain//:cc-toolchain-x86_64-linux",
|
||||
"@llvm_toolchain_with_sysroot//:cc-toolchain-x86_64-linux",
|
||||
)
|
||||
|
||||
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
|
||||
# load("//bazel/toolchains:zig_cc_deps.bzl", "zig_cc_deps")
|
||||
|
||||
# zig_cc_deps()
|
||||
|
||||
# load("@bazel-zig-cc//toolchain:defs.bzl", zig_toolchains = "toolchains")
|
||||
|
||||
# # See https://ziglang.org/download/ for the latest releases
|
||||
|
||||
# zig_toolchains(
|
||||
# host_platform_sha256 = {
|
||||
# "linux-aarch64": "b759a11993949531c692ccfc3d1a004b14df714a7a3515fe0b5c90c9a7631d61",
|
||||
# "linux-x86_64": "028dad5189e02b2058679b64df16e854a1c1ca0e6044b334d4f3be6e35544f07",
|
||||
# "macos-aarch64": "5709c27d581988f50f5e6fd5b69d92707787e803a1d04992e290b764617664e6",
|
||||
# "macos-x86_64": "88d194adb2f3c1a9edbb4a24d018007d5f827a57d1d26b2d9f3459236da1b7b6",
|
||||
# "windows-x86_64": "75e510bda108e4d78b89d5d1d09e70ea8595fac7c43b5611f280668881adb09d",
|
||||
# },
|
||||
# version = "0.11.0-dev.1638+7199d7c77",
|
||||
# )
|
||||
|
||||
# register_toolchains(
|
||||
# "@zig_sdk//libc_aware/toolchain:linux_amd64_gnu.2.34",
|
||||
# "@zig_sdk//libc_aware/toolchain:linux_arm64_gnu.2.34",
|
||||
# "@zig_sdk//libc_aware/toolchain:linux_amd64_musl",
|
||||
# "@zig_sdk//libc_aware/toolchain:linux_arm64_musl",
|
||||
# "@zig_sdk//toolchain:linux_amd64_gnu.2.34",
|
||||
# "@zig_sdk//toolchain:linux_arm64_gnu.2.34",
|
||||
# "@zig_sdk//toolchain:linux_amd64_musl",
|
||||
# "@zig_sdk//toolchain:linux_arm64_musl",
|
||||
# "@zig_sdk//toolchain:darwin_amd64",
|
||||
# "@zig_sdk//toolchain:darwin_arm64",
|
||||
# "@zig_sdk//toolchain:windows_amd64",
|
||||
# )
|
||||
|
||||
http_archive(
|
||||
name = "rules_foreign_cc",
|
||||
|
|
|
|||
|
|
@ -58,7 +58,7 @@ go_binary(
|
|||
|
||||
platform_binary(
|
||||
name = "bootstrapper_linux_amd64",
|
||||
platform = "@zig_sdk//libc_aware/platform:linux_amd64_gnu.2.34",
|
||||
platform = "@com_grail_bazel_toolchain//platforms:linux-x86_64",
|
||||
target_file = ":bootstrapper",
|
||||
visibility = ["//visibility:public"],
|
||||
)
|
||||
|
|
|
|||
|
|
@ -37,7 +37,7 @@ go_binary(
|
|||
|
||||
platform_binary(
|
||||
name = "debugd_linux_amd64",
|
||||
platform = "@zig_sdk//libc_aware/platform:linux_amd64_gnu.2.34",
|
||||
platform = "@com_grail_bazel_toolchain//platforms:linux-x86_64",
|
||||
target_file = ":debugd",
|
||||
visibility = ["//visibility:public"],
|
||||
)
|
||||
|
|
|
|||
|
|
@ -39,7 +39,7 @@ go_binary(
|
|||
|
||||
platform_binary(
|
||||
name = "disk-mapper_linux_amd64",
|
||||
platform = "@zig_sdk//libc_aware/platform:linux_amd64_gnu.2.34",
|
||||
platform = "@com_grail_bazel_toolchain//platforms:linux-x86_64",
|
||||
target_file = ":cmd",
|
||||
visibility = ["//visibility:public"],
|
||||
)
|
||||
|
|
|
|||
|
|
@ -25,7 +25,7 @@ go_binary(
|
|||
|
||||
platform_binary(
|
||||
name = "measurement-reader_linux_amd64",
|
||||
platform = "@zig_sdk//libc_aware/platform:linux_amd64_gnu.2.34",
|
||||
platform = "@com_grail_bazel_toolchain//platforms:linux-x86_64",
|
||||
target_file = ":cmd",
|
||||
visibility = ["//visibility:public"],
|
||||
)
|
||||
|
|
|
|||
|
|
@ -68,6 +68,13 @@ genrule(
|
|||
visibility = ["//visibility:public"],
|
||||
)
|
||||
|
||||
rpmtree(
|
||||
name = "sysroot",
|
||||
rpms = [
|
||||
"@glibc-0__2.36-9.fc37.x86_64//rpm",
|
||||
],
|
||||
)
|
||||
|
||||
rpmtree(
|
||||
name = "cryptsetup-devel",
|
||||
rpms = [
|
||||
|
|
@ -452,3 +459,17 @@ tar2files(
|
|||
tar = ":libvirt-devel",
|
||||
visibility = ["//visibility:public"],
|
||||
)
|
||||
|
||||
tar2files(
|
||||
name = "sysroot-files",
|
||||
files = {
|
||||
"": [
|
||||
"usr/lib64ld-linux-x86-64.so.2",
|
||||
"usr/lib64libc.so.6",
|
||||
"usr/lib64libpthread.so.0",
|
||||
"usr/lib64libm.so.6",
|
||||
],
|
||||
},
|
||||
tar = ":sysroot",
|
||||
visibility = ["//visibility:public"],
|
||||
)
|
||||
|
|
|
|||
|
|
@ -26,7 +26,7 @@ go_binary(
|
|||
|
||||
platform_binary(
|
||||
name = "upgrade_agent_linux_amd64",
|
||||
platform = "@zig_sdk//libc_aware/platform:linux_amd64_gnu.2.34",
|
||||
platform = "@com_grail_bazel_toolchain//platforms:linux-x86_64",
|
||||
target_file = ":cmd",
|
||||
visibility = ["//visibility:public"],
|
||||
)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue