@@ -21,6 +21,17 @@ local_repository(
2121
2222load ("@bazel_tools//tools/build_defs/repo:http.bzl" , "http_archive" )
2323
24+ http_archive (
25+ name = "bazel_features" ,
26+ sha256 = "07271d0f6b12633777b69020c4cb1eb67b1939c0cf84bb3944dc85cc250c0c01" ,
27+ strip_prefix = "bazel_features-1.38.0" ,
28+ url = "https://github.com/bazel-contrib/bazel_features/releases/download/v1.38.0/bazel_features-v1.38.0.tar.gz" ,
29+ )
30+
31+ load ("@bazel_features//:deps.bzl" , "bazel_features_deps" )
32+
33+ bazel_features_deps ()
34+
2435http_archive (
2536 name = "aspect_bazel_lib" ,
2637 sha256 = "6fd3b1e1a38ca744f9664be4627ced80895c7d2ee353891c172f1ab61309c933" ,
@@ -50,8 +61,11 @@ load("@toolchains_llvm//toolchain:rules.bzl", "llvm_toolchain")
5061# through the `llvm_toolchain_with_sysroot` toolchain.
5162# We use C++17 and the first LLVM version with full suppor is 16.0.0.
5263# We also use C++20 which has reasonable wide support starting with LLVM 17.0.0.
64+ # MacOS X86 does not exist for LLVM 17 or 18, so we allow 19 as well.
65+ # We also allow to override this with a environment LLVM_VERSION for testing.
5366LLVM_VERSIONS = {
54- "" : "first:>=17.0.0,<18" ,
67+ "" : "getenv(LLVM_VERSION,latest:>=17.0.0,<20)" ,
68+ "darwin-x86_64" : "15.0.7" , # Verify this works as opposed to using one version.
5569}
5670
5771llvm_toolchain (
@@ -123,9 +137,10 @@ llvm_toolchain(
123137)
124138
125139## Toolchain example with system LLVM; tested in GitHub CI.
140+ # The llvm_version must match the version specified in .github/workflows/tests.yml: sys_paths_test
126141llvm_toolchain (
127142 name = "llvm_toolchain_with_system_llvm" ,
128- llvm_versions = LLVM_VERSIONS ,
143+ llvm_version = "getenv(LLVM_VERSION)" ,
129144 # For this toolchain to work, the LLVM distribution archive would need to be unpacked here.
130145 toolchain_roots = {"" : "/opt/llvm-16" },
131146)
@@ -327,8 +342,8 @@ protobuf_deps()
327342
328343http_archive (
329344 name = "rules_java" ,
330- sha256 = "f79a6e10cdd213ceded45884914bb8c68f0c8d41144e74ec89ebb74984c409ac " ,
331- urls = ["https://github.com/bazelbuild/rules_java/releases/download/8.8.0 /rules_java-8.8.0 .tar.gz" ],
345+ sha256 = "1b30698d89dccd9dc01b1a4ad7e9e5c6e669cdf1918dbb050334e365b40a1b5e " ,
346+ urls = ["https://github.com/bazelbuild/rules_java/releases/download/8.16.1 /rules_java-8.16.1 .tar.gz" ],
332347)
333348
334349load ("@rules_java//java:rules_java_deps.bzl" , "rules_java_dependencies" )
@@ -339,10 +354,6 @@ load("@rules_foreign_cc//foreign_cc:repositories.bzl", "rules_foreign_cc_depende
339354
340355rules_foreign_cc_dependencies ()
341356
342- load ("@bazel_features//:deps.bzl" , "bazel_features_deps" )
343-
344- bazel_features_deps ()
345-
346357load ("@rules_cc//cc:extensions.bzl" , "compatibility_proxy_repo" )
347358
348359compatibility_proxy_repo ()
0 commit comments