Skip to content

Commit c78d451

Browse files
committed
Implement proper handling for use_libcpp with bzlmod enabled
1 parent 4ea9565 commit c78d451

File tree

8 files changed

+28
-13
lines changed

8 files changed

+28
-13
lines changed

MODULE.bazel.lock

Lines changed: 6 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

cc/BUILD.bazel

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -206,6 +206,15 @@ config_setting(
206206
visibility = ["//visibility:public"],
207207
)
208208

209+
config_setting(
210+
name = "_enable_bzlmod_not_libcpp",
211+
flag_values = {
212+
":enable_bzlmod": "true",
213+
":use_libcpp": "false",
214+
},
215+
visibility = ["//visibility:public"],
216+
)
217+
209218
py_binary(
210219
name = "fix_include_guards",
211220
srcs = [

cc/toolchains/llvm/aarch64-linux/BUILD.bazel

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -117,8 +117,8 @@ cc_toolchain_config(
117117
abi_version = "clang",
118118
builtin_sysroot = select({
119119
"@rules_swiftnav//cc:_use_libcpp": None,
120-
# Remove once bzlmod is enabled by default
121-
"@rules_swiftnav//cc:_enable_bzlmod": "external/rules_swiftnav++swift_cc_toolchain_extension+aarch64-sysroot",
120+
# When bzlmod is enabled but libcpp is not, use the bzlmod path
121+
"@rules_swiftnav//cc:_enable_bzlmod_not_libcpp": "external/rules_swiftnav++swift_cc_toolchain_extension+aarch64-sysroot",
122122
"//conditions:default": "external/aarch64-sysroot",
123123
}),
124124
compiler = "clang",

cc/toolchains/llvm/x86_64-aarch64-linux/BUILD.bazel

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -103,8 +103,8 @@ cc_toolchain_config(
103103
abi_version = "clang",
104104
builtin_sysroot = select({
105105
"@rules_swiftnav//cc:_use_libcpp": None,
106-
# Remove once bzlmod is enabled by default
107-
"@rules_swiftnav//cc:_enable_bzlmod": "external/rules_swiftnav++swift_cc_toolchain_extension+aarch64-sysroot",
106+
# When bzlmod is enabled but libcpp is not, use the bzlmod path
107+
"@rules_swiftnav//cc:_enable_bzlmod_not_libcpp": "external/rules_swiftnav++swift_cc_toolchain_extension+aarch64-sysroot",
108108
"//conditions:default": "external/aarch64-sysroot",
109109
}),
110110
compiler = "clang",

cc/toolchains/llvm/x86_64-linux/BUILD.bazel

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -117,8 +117,8 @@ cc_toolchain_config(
117117
abi_version = "clang",
118118
builtin_sysroot = select({
119119
"@rules_swiftnav//cc:_use_libcpp": None,
120-
# Remove once bzlmod is enabled by default
121-
"@rules_swiftnav//cc:_enable_bzlmod": "external/rules_swiftnav++swift_cc_toolchain_extension+x86_64-sysroot",
120+
# When bzlmod is enabled but libcpp is not, use the bzlmod path
121+
"@rules_swiftnav//cc:_enable_bzlmod_not_libcpp": "external/rules_swiftnav++swift_cc_toolchain_extension+x86_64-sysroot",
122122
"//conditions:default": "external/x86_64-sysroot",
123123
}),
124124
compiler = "clang",

cc/toolchains/llvm20/aarch64-linux/BUILD.bazel

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -117,8 +117,8 @@ cc_toolchain_config(
117117
abi_version = "clang",
118118
builtin_sysroot = select({
119119
"@rules_swiftnav//cc:_use_libcpp": None,
120-
# Remove once bzlmod is enabled by default
121-
"@rules_swiftnav//cc:_enable_bzlmod": "external/rules_swiftnav++swift_cc_toolchain_extension+aarch64-sysroot",
120+
# When bzlmod is enabled but libcpp is not, use the bzlmod path
121+
"@rules_swiftnav//cc:_enable_bzlmod_not_libcpp": "external/rules_swiftnav++swift_cc_toolchain_extension+aarch64-sysroot",
122122
"//conditions:default": "external/aarch64-sysroot",
123123
}),
124124
compiler = "clang",

cc/toolchains/llvm20/x86_64-aarch64-linux/BUILD.bazel

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -102,8 +102,9 @@ cc_toolchain_config(
102102
abi_libc_version = "glibc_unknown",
103103
abi_version = "clang",
104104
builtin_sysroot = select({
105-
# Remove once bzlmod is enabled by default
106-
"@rules_swiftnav//cc:_enable_bzlmod": "external/rules_swiftnav++swift_cc_toolchain_extension+aarch64-sysroot",
105+
# _use_libcpp case needs to be implemented properly here!
106+
# When bzlmod is enabled but libcpp is not, use the bzlmod path
107+
"@rules_swiftnav//cc:_enable_bzlmod_not_libcpp": "external/rules_swiftnav++swift_cc_toolchain_extension+aarch64-sysroot",
107108
"//conditions:default": "external/aarch64-sysroot",
108109
}),
109110
compiler = "clang",

cc/toolchains/llvm20/x86_64-linux/BUILD.bazel

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -117,8 +117,8 @@ cc_toolchain_config(
117117
abi_version = "clang",
118118
builtin_sysroot = select({
119119
"@rules_swiftnav//cc:_use_libcpp": None,
120-
# Remove once bzlmod is enabled by default
121-
"@rules_swiftnav//cc:_enable_bzlmod": "external/rules_swiftnav++swift_cc_toolchain_extension+x86_64-sysroot",
120+
# When bzlmod is enabled but libcpp is not, use the bzlmod path
121+
"@rules_swiftnav//cc:_enable_bzlmod_not_libcpp": "external/rules_swiftnav++swift_cc_toolchain_extension+x86_64-sysroot",
122122
"//conditions:default": "external/x86_64-sysroot",
123123
}),
124124
compiler = "clang",

0 commit comments

Comments
 (0)