Skip to content

Commit c416eba

Browse files
Patch uber toolchain
1 parent 061855e commit c416eba

File tree

2 files changed

+62
-2
lines changed

2 files changed

+62
-2
lines changed

MODULE.bazel

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,13 +9,20 @@ http_archive = use_repo_rule("@bazel_tools//tools/build_defs/repo:http.bzl", "ht
99
bazel_dep(name = "platforms", version = "0.0.11")
1010
bazel_dep(name = "rules_shell", version = "0.5.0")
1111
bazel_dep(name = "rules_cc", version = "0.2.16")
12-
bazel_dep(name = "hermetic_cc_toolchain", version = "4.0.0")
1312
bazel_dep(name = "bazel_skylib", version = "1.7.1")
1413
bazel_dep(name = "rules_oci", version = "2.2.6")
1514
bazel_dep(name = "rules_python", version = "1.5.1")
1615
bazel_dep(name = "pybind11_bazel", version = "3.0.0")
1716
bazel_dep(name = "rules_go", version = "0.59.0")
1817

18+
# Toolchains
19+
bazel_dep(name = "hermetic_cc_toolchain", version = "4.0.0")
20+
single_version_override(
21+
module_name = "hermetic_cc_toolchain",
22+
patch_strip = 1,
23+
patches = ["patches/toolchains/uber-hermetic-toolchain/bazel-9-compatibility.patch"],
24+
)
25+
1926
# Third-party packages
2027
bazel_dep(name = "googletest", version = "1.17.0.bcr.2") # gtest
2128
bazel_dep(name = "catch2", version = "3.12.0")
@@ -44,10 +51,10 @@ bazel_dep(name = "hedron_compile_commands", dev_dependency = True)
4451
git_override(
4552
module_name = "hedron_compile_commands",
4653
commit = "4f28899228fb3ad0126897876f147ca15026151e",
47-
remote = "https://github.com/hedronvision/bazel-compile-commands-extractor.git",
4854
# `patch -p1` command to strip `a/filename` in `.patch` files generated by Git
4955
patch_strip = 1,
5056
patches = ["patches/hedron_compile_commands/bazel-9-compatibility.patch"],
57+
remote = "https://github.com/hedronvision/bazel-compile-commands-extractor.git",
5158
)
5259

5360
# Configure and register the toolchain.
Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
diff --git a/MODULE.bazel b/MODULE.bazel
2+
index cfca164..cbc6933 100644
3+
--- a/MODULE.bazel
4+
+++ b/MODULE.bazel
5+
@@ -5,6 +5,7 @@ module(
6+
7+
bazel_dep(name = "bazel_features", version = "1.21.0")
8+
bazel_dep(name = "platforms", version = "0.0.10")
9+
+bazel_dep(name = "rules_cc", version = "0.2.14")
10+
11+
bazel_dep(name = "rules_go", version = "0.54.0", dev_dependency = True)
12+
13+
diff --git a/toolchain/private/cc_toolchains.bzl b/toolchain/private/cc_toolchains.bzl
14+
index 68c4c2f..efadf18 100644
15+
--- a/toolchain/private/cc_toolchains.bzl
16+
+++ b/toolchain/private/cc_toolchains.bzl
17+
@@ -1,4 +1,5 @@
18+
load("@hermetic_cc_toolchain//toolchain:zig_cc_toolchain.bzl", "zig_cc_toolchain_config")
19+
+load("@rules_cc//cc/toolchains:cc_toolchain.bzl", "cc_toolchain")
20+
load(":defs.bzl", "target_structs", "zig_tool_path")
21+
22+
def declare_cc_toolchains(os, zig_sdk_path):
23+
@@ -54,7 +55,7 @@ def declare_cc_toolchains(os, zig_sdk_path):
24+
visibility = ["//visibility:private"],
25+
)
26+
27+
- native.cc_toolchain(
28+
+ cc_toolchain(
29+
name = zigtarget + "_cc",
30+
toolchain_identifier = zigtarget + "-toolchain",
31+
toolchain_config = ":%s_cc_config" % zigtarget,
32+
diff --git a/toolchain/zig_cc_toolchain.bzl b/toolchain/zig_cc_toolchain.bzl
33+
index cebe72b..72fa0c2 100644
34+
--- a/toolchain/zig_cc_toolchain.bzl
35+
+++ b/toolchain/zig_cc_toolchain.bzl
36+
@@ -1,6 +1,6 @@
37+
-load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES")
38+
+load("@rules_cc//cc:action_names.bzl", "ACTION_NAMES")
39+
load(
40+
- "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl",
41+
+ "@rules_cc//cc:cc_toolchain_config_lib.bzl",
42+
"artifact_name_pattern",
43+
"feature",
44+
"feature_set",
45+
@@ -9,6 +9,8 @@ load(
46+
"tool",
47+
"tool_path",
48+
)
49+
+load("@rules_cc//cc/common:cc_common.bzl", "cc_common")
50+
+load("@rules_cc//cc/toolchains:cc_toolchain_config_info.bzl", "CcToolchainConfigInfo")
51+
52+
all_link_actions = [
53+
ACTION_NAMES.cpp_link_executable,

0 commit comments

Comments
 (0)