aboutsummaryrefslogtreecommitdiff
path: root/MODULE.bazel
blob: 82c2a0d397cc20448509e9df3072b00f36b1f32a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
module(
    name = "rules_android",
    version = "0.2.0",
)

bazel_dep(name = "platforms", version = "0.0.5")
bazel_dep(name = "rules_license", version = "0.0.4")
bazel_dep(name = "rules_java", version = "6.0.0")

rules_java_toolchains = use_extension("@rules_java//java:extensions.bzl", "toolchains")
use_repo(rules_java_toolchains, "remote_java_tools")

bazel_dep(name = "protobuf", version = "3.19.0", repo_name = "com_google_protobuf")
bazel_dep(name = "rules_jvm_external", version = "4.5")
bazel_dep(name = "bazel_skylib", version = "1.0.3")
bazel_dep(name = "rules_robolectric", version = "4.10")

register_toolchains("//toolchains/android:all")

register_toolchains("//toolchains/android_sdk:all")

register_toolchains("//toolchains/emulator:all")

# go-related dependency setup
bazel_dep(name = "rules_go", version = "0.40.1", repo_name = "io_bazel_rules_go")
bazel_dep(name = "gazelle", version = "0.28.0", repo_name = "bazel_gazelle")
bazel_dep(name = "abseil-py", version = "1.4.0", repo_name = "py_absl")

go_sdk = use_extension("@io_bazel_rules_go//go:extensions.bzl", "go_sdk")

go_deps = use_extension("@bazel_gazelle//:extensions.bzl", "go_deps")
go_deps.from_file(go_mod = "//:go.mod")
use_repo(
    go_deps,
    "com_github_google_go_cmp",
    "org_golang_google_protobuf",
    "org_golang_x_sync",
)

# python-related dependency setup
bazel_dep(name = "rules_python", version = "0.23.1", repo_name = "rules_python")

# proto-related dependency setup
bazel_dep(name = "rules_proto", version = "5.3.0-21.7", repo_name = "rules_proto")

maven = use_extension("@rules_jvm_external//:extensions.bzl", "maven")
maven.install(
    name = "rules_android_maven",
    # To generate the maven lockfile, run this command:
    # bazel run --noenable_bzlmod @rules_android_maven//:pin
    lock_file = "//:rules_android_maven_install.json",
    repositories = [
        "https://maven.google.com",
        "https://repo1.maven.org/maven2",
    ],
)
use_repo(
    maven,
    "rules_android_maven",
)

remote_android_extensions = use_extension("@bazel_tools//tools/android:android_extensions.bzl", "remote_android_tools_extensions")
use_repo(remote_android_extensions, "android_gmaven_r8", "android_tools")

# integration test setup
bazel_dep(
    name = "rules_bazel_integration_test",
    version = "0.17.0",
    dev_dependency = True,
)
bazel_dep(
    name = "cgrindel_bazel_starlib",
    version = "0.17.0",
    dev_dependency = True,
)

bazel_binaries = use_extension(
    "@rules_bazel_integration_test//:extensions.bzl",
    "bazel_binaries",
    dev_dependency = True,
)
bazel_binaries.download(version = "last_green")
use_repo(bazel_binaries, "bazel_binaries")