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