# NOTE: When editing this file, also update the lockfile.
#   bazel run //src/test/tools/bzlmod:update_default_lock_file
#   bazel mod deps --lockfile_mode=update

module(name = "bazel_tools")

bazel_dep(name = "rules_license", version = "1.0.0")

bazel_dep(name = "buildozer", version = "7.1.2")
bazel_dep(name = "platforms", version = "0.0.10")
bazel_dep(name = "zlib", version = "1.3.1.bcr.3")

xcode_configure = use_extension("//tools/osx:xcode_configure.bzl", "xcode_configure_extension")
use_repo(xcode_configure, "local_config_xcode")

java_toolchains = use_extension("@rules_java//java:extensions.bzl", "toolchains")
use_repo(
    java_toolchains,
    "local_jdk",
    "remote_java_tools",
    "remote_java_tools_linux",
    "remote_java_tools_windows",
    "remote_java_tools_darwin_x86_64",
    "remote_java_tools_darwin_arm64",
)

sh_configure_extension = use_extension("//tools/sh:sh_configure.bzl", "sh_configure_extension")
use_repo(sh_configure_extension, "local_config_sh")
register_toolchains("@local_config_sh//:local_sh_toolchain")

remote_coverage_tools_extension = use_extension("//tools/test:extensions.bzl", "remote_coverage_tools_extension")
use_repo(remote_coverage_tools_extension, "remote_coverage_tools")

# Used by bazel mod tidy (see BazelModTidyFunction).
buildozer_binary = use_extension("@buildozer//:buildozer_binary.bzl", "buildozer_binary")
use_repo(buildozer_binary, "buildozer_binary")

# Dependencies used to auto-load removed symbols and rules from Bazel (due to Starlarkification)
# See also:  --incompatible_autoload_externally, AutoloadSymbols
bazel_dep(name = "rules_java", version = "8.1.0")
bazel_dep(name = "rules_cc", version = "0.0.13")
bazel_dep(name = "rules_python", version = "0.36.0")
bazel_dep(name = "rules_shell", version = "0.1.1")
# add rules_android
# add apple_support
