xref: /aosp_15_r20/external/bazelbuild-rules_android/MODULE.bazel (revision 9e965d6fece27a77de5377433c2f7e6999b8cc0b)
1module(
2    name = "rules_android",
3    version = "0.2.0",
4)
5
6bazel_dep(name = "platforms", version = "0.0.5")
7bazel_dep(name = "rules_license", version = "0.0.4")
8bazel_dep(name = "rules_java", version = "6.0.0")
9
10rules_java_toolchains = use_extension("@rules_java//java:extensions.bzl", "toolchains")
11use_repo(rules_java_toolchains, "remote_java_tools")
12
13bazel_dep(name = "protobuf", version = "3.19.0", repo_name = "com_google_protobuf")
14bazel_dep(name = "rules_jvm_external", version = "4.5")
15bazel_dep(name = "bazel_skylib", version = "1.0.3")
16bazel_dep(name = "rules_robolectric", version = "4.10", repo_name = "robolectric")
17
18register_toolchains("//toolchains/android:all")
19
20register_toolchains("//toolchains/android_sdk:all")
21
22register_toolchains("//toolchains/emulator:all")
23
24# go-related dependency setup
25bazel_dep(name = "rules_go", version = "0.40.1", repo_name = "io_bazel_rules_go")
26bazel_dep(name = "gazelle", version = "0.28.0", repo_name = "bazel_gazelle")
27bazel_dep(name = "abseil-py", version = "1.4.0", repo_name = "py_absl")
28
29go_sdk = use_extension("@io_bazel_rules_go//go:extensions.bzl", "go_sdk")
30
31go_deps = use_extension("@bazel_gazelle//:extensions.bzl", "go_deps")
32go_deps.from_file(go_mod = "//:go.mod")
33use_repo(
34    go_deps,
35    "com_github_golang_glog",
36    "com_github_google_go_cmp",
37    "org_golang_google_protobuf",
38    "org_golang_x_sync",
39)
40
41# python-related dependency setup
42bazel_dep(name = "rules_python", version = "0.23.1", repo_name = "rules_python")
43
44# proto-related dependency setup
45bazel_dep(name = "rules_proto", version = "5.3.0-21.7", repo_name = "rules_proto")
46
47maven = use_extension("@rules_jvm_external//:extensions.bzl", "maven")
48maven.install(
49    name = "rules_android_maven",
50    # To generate the maven lockfile, run this command:
51    # bazel run --noenable_bzlmod @rules_android_maven//:pin
52    lock_file = "//:rules_android_maven_install.json",
53    repositories = [
54        "https://maven.google.com",
55        "https://repo1.maven.org/maven2",
56    ],
57)
58use_repo(
59    maven,
60    "rules_android_maven",
61)
62
63remote_android_extensions = use_extension("@bazel_tools//tools/android:android_extensions.bzl", "remote_android_tools_extensions")
64use_repo(remote_android_extensions, "android_gmaven_r8", "android_tools")
65
66# integration test setup
67bazel_dep(
68    name = "rules_bazel_integration_test",
69    version = "0.17.0",
70    dev_dependency = True,
71)
72bazel_dep(
73    name = "cgrindel_bazel_starlib",
74    version = "0.17.0",
75    dev_dependency = True,
76)
77
78bazel_binaries = use_extension(
79    "@rules_bazel_integration_test//:extensions.bzl",
80    "bazel_binaries",
81    dev_dependency = True,
82)
83bazel_binaries.download(version = "last_green")
84use_repo(bazel_binaries, "bazel_binaries")
85