blob: 7112f25903e3ad7d42d5d66878c5801cb21f7877 [file] [log] [blame]
module(
name = "rules_rust_example_android",
version = "0.0.0",
)
###############################################################################
# B A Z E L C E N T R A L R E G I S T R Y # https://registry.bazel.build/
###############################################################################
# https://github.com/bazelbuild/rules_rust/releases
bazel_dep(name = "rules_rust", version = "0.46.0")
local_path_override(
module_name = "rules_rust",
path = "../..",
)
bazel_dep(name = "platforms", version = "0.0.10")
bazel_dep(name = "rules_cc", version = "0.0.17")
bazel_dep(name = "rules_java", version = "8.6.3")
bazel_dep(name = "rules_jvm_external", version = "6.6")
maven = use_extension("@rules_jvm_external//:extensions.bzl", "maven")
use_repo(maven, "maven")
bazel_dep(name = "rules_android", version = "0.6.0", repo_name = "build_bazel_rules_android")
bazel_dep(name = "rules_android_ndk", version = "0.1.2")
###############################################################################
# T O O L C H A I N S
###############################################################################
# Rust toolchain
rust = use_extension("@rules_rust//rust:extensions.bzl", "rust")
rust.toolchain(
extra_target_triples = [
"aarch64-linux-android",
],
)
use_repo(rust, "rust_toolchains")
register_toolchains("@rust_toolchains//:all")
java_toolchains = use_extension("@rules_java//java:extensions.bzl", "toolchains")
use_repo(java_toolchains, "remote_java_tools")
use_repo(java_toolchains, "remote_java_tools_linux")
use_repo(java_toolchains, "remote_java_tools_windows")
use_repo(java_toolchains, "remote_java_tools_darwin_x86_64")
use_repo(java_toolchains, "remote_java_tools_darwin_arm64")
JDKS = {
# Must match JDK repos defined in remote_jdk21_repos()
"21": [
"linux",
"linux_aarch64",
"linux_ppc64le",
"linux_s390x",
"macos",
"macos_aarch64",
"win",
"win_arm64",
],
}
REMOTE_JDK_REPOS = [
(("remote_jdk" if version == "8" else "remotejdk") + version + "_" + platform)
for version in JDKS
for platform in JDKS[version]
]
[
use_repo(
java_toolchains,
repo + "_toolchain_config_repo",
)
for repo in REMOTE_JDK_REPOS
]
[
register_toolchains("@" + name + "_toolchain_config_repo//:all")
for name in REMOTE_JDK_REPOS
]
android_ndk_repository_extension = use_extension(
"@rules_android_ndk//:extension.bzl",
"android_ndk_repository_extension",
)
use_repo(android_ndk_repository_extension, "androidndk")
register_toolchains("@androidndk//:all")