diff --git a/nix/flake.nix b/nix/flake.nix index e37384c0..2084490e 100644 --- a/nix/flake.nix +++ b/nix/flake.nix @@ -18,7 +18,13 @@ in { devShells.default = with pkgs; mkShell { + # do not use Xcode on macOS + BAZEL_USE_CPP_ONLY_TOOLCHAIN = "1"; + # for nixpkgs cc wrappers, select C++ explicitly (see https://github.com/NixOS/nixpkgs/issues/150655) + BAZEL_CXXOPTS = "-x:c++"; + name = "rules_nixpkgs_shell"; + buildInputs = lib.optional pkgs.stdenv.isDarwin darwin.cctools; packages = [ bazel_6 bazel-buildtools cacert gcc nix git openssh ]; }; }); diff --git a/testing/cc/MODULE.bazel b/testing/cc/MODULE.bazel index 177a7813..61f6141f 100644 --- a/testing/cc/MODULE.bazel +++ b/testing/cc/MODULE.bazel @@ -24,7 +24,7 @@ bazel_dep(name = "rules_cc", version = "0.0.4") # TODO[AH] Remove these transitive dependencies once nixpkgs_java_configure has # become a module extension in rules_nixpkgs_java. bazel_dep(name = "platforms", version = "0.0.4") -bazel_dep(name = "rules_java", version = "4.0.0") +bazel_dep(name = "rules_java", version = "6.5.2") java_toolchains = use_extension("@rules_java//java:extensions.bzl", "toolchains") use_repo(java_toolchains, "remote_java_tools") diff --git a/testing/go-bzlmod/MODULE.bazel b/testing/go-bzlmod/MODULE.bazel index ec6f1bbe..a2753294 100644 --- a/testing/go-bzlmod/MODULE.bazel +++ b/testing/go-bzlmod/MODULE.bazel @@ -30,7 +30,7 @@ bazel_dep(name = "rules_cc", version = "0.0.4") # TODO[AH] Remove these transitive dependencies once nixpkgs_java_configure has # become a module extension in rules_nixpkgs_java. bazel_dep(name = "platforms", version = "0.0.4") -bazel_dep(name = "rules_java", version = "4.0.0") +bazel_dep(name = "rules_java", version = "6.5.2") java_toolchains = use_extension("@rules_java//java:extensions.bzl", "toolchains") use_repo(java_toolchains, "remote_java_tools") diff --git a/testing/java/MODULE.bazel b/testing/java/MODULE.bazel index 92818dde..db203dcc 100644 --- a/testing/java/MODULE.bazel +++ b/testing/java/MODULE.bazel @@ -17,7 +17,7 @@ bazel_dep(name = "bazel_skylib", version = "1.0.3") # TODO[AH] Remove these transitive dependencies once nixpkgs_java_configure has # become a module extension in rules_nixpkgs_java. bazel_dep(name = "platforms", version = "0.0.4") -bazel_dep(name = "rules_java", version = "4.0.0") +bazel_dep(name = "rules_java", version = "6.5.2") java_toolchains = use_extension("@rules_java//java:extensions.bzl", "toolchains") use_repo(java_toolchains, "remote_java_tools") diff --git a/testing/nodejs/MODULE.bazel b/testing/nodejs/MODULE.bazel index 3a492e48..34440bcb 100644 --- a/testing/nodejs/MODULE.bazel +++ b/testing/nodejs/MODULE.bazel @@ -31,7 +31,7 @@ bazel_dep(name = "rules_nodejs", version = "5.5.3") # TODO[AH] Remove these transitive dependencies once nixpkgs_java_configure has # become a module extension in rules_nixpkgs_java. bazel_dep(name = "platforms", version = "0.0.4") -bazel_dep(name = "rules_java", version = "4.0.0") +bazel_dep(name = "rules_java", version = "6.5.2") java_toolchains = use_extension("@rules_java//java:extensions.bzl", "toolchains") use_repo(java_toolchains, "remote_java_tools") diff --git a/testing/posix/MODULE.bazel b/testing/posix/MODULE.bazel index a0ed63f0..452a6434 100644 --- a/testing/posix/MODULE.bazel +++ b/testing/posix/MODULE.bazel @@ -24,7 +24,7 @@ bazel_dep(name = "rules_sh", version = "0.3.0") # TODO[AH] Remove these transitive dependencies once nixpkgs_java_configure has # become a module extension in rules_nixpkgs_java. bazel_dep(name = "platforms", version = "0.0.4") -bazel_dep(name = "rules_java", version = "4.0.0") +bazel_dep(name = "rules_java", version = "6.5.2") java_toolchains = use_extension("@rules_java//java:extensions.bzl", "toolchains") use_repo(java_toolchains, "remote_java_tools") diff --git a/testing/python/MODULE.bazel b/testing/python/MODULE.bazel index 8bfbcd18..10f9203a 100644 --- a/testing/python/MODULE.bazel +++ b/testing/python/MODULE.bazel @@ -30,7 +30,7 @@ bazel_dep(name = "rules_cc", version = "0.0.4") # TODO[AH] Remove these transitive dependencies once nixpkgs_java_configure has # become a module extension in rules_nixpkgs_java. bazel_dep(name = "platforms", version = "0.0.4") -bazel_dep(name = "rules_java", version = "4.0.0") +bazel_dep(name = "rules_java", version = "6.5.2") java_toolchains = use_extension("@rules_java//java:extensions.bzl", "toolchains") use_repo(java_toolchains, "remote_java_tools") diff --git a/testing/rust/MODULE.bazel b/testing/rust/MODULE.bazel index feba4746..8bbfa8eb 100644 --- a/testing/rust/MODULE.bazel +++ b/testing/rust/MODULE.bazel @@ -31,7 +31,7 @@ bazel_dep(name = "rules_rust", version = "0.22.0") # TODO[AH] Remove these transitive dependencies once nixpkgs_java_configure has # become a module extension in rules_nixpkgs_java. bazel_dep(name = "platforms", version = "0.0.4") -bazel_dep(name = "rules_java", version = "4.0.0") +bazel_dep(name = "rules_java", version = "6.5.2") java_toolchains = use_extension("@rules_java//java:extensions.bzl", "toolchains") use_repo(java_toolchains, "remote_java_tools") diff --git a/toolchains/java/MODULE.bazel b/toolchains/java/MODULE.bazel index 77a54f3e..b7b6356e 100644 --- a/toolchains/java/MODULE.bazel +++ b/toolchains/java/MODULE.bazel @@ -4,5 +4,5 @@ module( ) bazel_dep(name = "rules_nixpkgs_core", version = "0.10.0") -bazel_dep(name = "rules_java", version = "4.0.0") +bazel_dep(name = "rules_java", version = "6.5.2") bazel_dep(name = "bazel_skylib", version = "1.0.3") diff --git a/toolchains/java/local_java_repository.bzl b/toolchains/java/local_java_repository.bzl index cccc4465..4b889c81 100644 --- a/toolchains/java/local_java_repository.bzl +++ b/toolchains/java/local_java_repository.bzl @@ -14,7 +14,7 @@ """Rules for importing and registering a local JDK.""" -load(":default_java_toolchain.bzl", "default_java_toolchain") +load(":default_java_toolchain.bzl", "NONPREBUILT_TOOLCHAIN_CONFIGURATION", "default_java_toolchain") def _detect_java_version(repository_ctx, java_bin): properties_out = repository_ctx.execute([java_bin, "-XshowSettings:properties"]).stderr @@ -99,10 +99,10 @@ def local_java_runtime(name, java_home, version, runtime_name = None, visibility for version in range(8, int(version) + 1): default_java_toolchain( name = name + "_toolchain_java" + str(version), + configuration = NONPREBUILT_TOOLCHAIN_CONFIGURATION, source_version = str(version), target_version = str(version), java_runtime = runtime_name, - exec_compatible_with = exec_compatible_with, target_compatible_with = target_compatible_with, )