xref: /aosp_15_r20/external/grpc-grpc/WORKSPACE (revision cc02d7e222339f7a4f6ba5f422e6413f4bd931f2)
1*cc02d7e2SAndroid Build Coastguard Workerworkspace(name = "com_github_grpc_grpc")
2*cc02d7e2SAndroid Build Coastguard Worker
3*cc02d7e2SAndroid Build Coastguard Workerload("//bazel:grpc_deps.bzl", "grpc_deps", "grpc_test_only_deps")
4*cc02d7e2SAndroid Build Coastguard Worker
5*cc02d7e2SAndroid Build Coastguard Workergrpc_deps()
6*cc02d7e2SAndroid Build Coastguard Worker
7*cc02d7e2SAndroid Build Coastguard Workergrpc_test_only_deps()
8*cc02d7e2SAndroid Build Coastguard Worker
9*cc02d7e2SAndroid Build Coastguard Workerload("//bazel:grpc_extra_deps.bzl", "grpc_extra_deps")
10*cc02d7e2SAndroid Build Coastguard Worker
11*cc02d7e2SAndroid Build Coastguard Workergrpc_extra_deps()
12*cc02d7e2SAndroid Build Coastguard Worker
13*cc02d7e2SAndroid Build Coastguard Workerload("@bazel_toolchains//rules/exec_properties:exec_properties.bzl", "create_rbe_exec_properties_dict", "custom_exec_properties")
14*cc02d7e2SAndroid Build Coastguard Worker
15*cc02d7e2SAndroid Build Coastguard Workercustom_exec_properties(
16*cc02d7e2SAndroid Build Coastguard Worker    name = "grpc_custom_exec_properties",
17*cc02d7e2SAndroid Build Coastguard Worker    constants = {
18*cc02d7e2SAndroid Build Coastguard Worker        "LARGE_MACHINE": create_rbe_exec_properties_dict(
19*cc02d7e2SAndroid Build Coastguard Worker            labels = {
20*cc02d7e2SAndroid Build Coastguard Worker                "os": "ubuntu",
21*cc02d7e2SAndroid Build Coastguard Worker                "machine_size": "large",
22*cc02d7e2SAndroid Build Coastguard Worker            },
23*cc02d7e2SAndroid Build Coastguard Worker        ),
24*cc02d7e2SAndroid Build Coastguard Worker    },
25*cc02d7e2SAndroid Build Coastguard Worker)
26*cc02d7e2SAndroid Build Coastguard Worker
27*cc02d7e2SAndroid Build Coastguard Workerload("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
28*cc02d7e2SAndroid Build Coastguard Worker
29*cc02d7e2SAndroid Build Coastguard Workerhttp_archive(
30*cc02d7e2SAndroid Build Coastguard Worker    name = "platforms",
31*cc02d7e2SAndroid Build Coastguard Worker    sha256 = "8150406605389ececb6da07cbcb509d5637a3ab9a24bc69b1101531367d89d74",
32*cc02d7e2SAndroid Build Coastguard Worker    urls = ["https://github.com/bazelbuild/platforms/releases/download/0.0.8/platforms-0.0.8.tar.gz"],
33*cc02d7e2SAndroid Build Coastguard Worker)
34*cc02d7e2SAndroid Build Coastguard Worker
35*cc02d7e2SAndroid Build Coastguard WorkerRULES_ANDROID_NDK_COMMIT = "010f4f17dd13a8baaaacc28ba6c8c2c75f54c68b"
36*cc02d7e2SAndroid Build Coastguard Worker
37*cc02d7e2SAndroid Build Coastguard WorkerRULES_ANDROID_NDK_SHA = "2ab6a97748772f289331d75caaaee0593825935d1d9d982231a437fb8ab5a14d"
38*cc02d7e2SAndroid Build Coastguard Worker
39*cc02d7e2SAndroid Build Coastguard Workerhttp_archive(
40*cc02d7e2SAndroid Build Coastguard Worker    name = "rules_android_ndk",
41*cc02d7e2SAndroid Build Coastguard Worker    sha256 = RULES_ANDROID_NDK_SHA,
42*cc02d7e2SAndroid Build Coastguard Worker    strip_prefix = "rules_android_ndk-%s" % RULES_ANDROID_NDK_COMMIT,
43*cc02d7e2SAndroid Build Coastguard Worker    url = "https://github.com/bazelbuild/rules_android_ndk/archive/%s.zip" % RULES_ANDROID_NDK_COMMIT,
44*cc02d7e2SAndroid Build Coastguard Worker)
45*cc02d7e2SAndroid Build Coastguard Worker
46*cc02d7e2SAndroid Build Coastguard Workerandroid_sdk_repository(
47*cc02d7e2SAndroid Build Coastguard Worker    name = "androidsdk",
48*cc02d7e2SAndroid Build Coastguard Worker    build_tools_version = "34.0.0",
49*cc02d7e2SAndroid Build Coastguard Worker)
50*cc02d7e2SAndroid Build Coastguard Worker
51*cc02d7e2SAndroid Build Coastguard Workerload("@rules_android_ndk//:rules.bzl", "android_ndk_repository")
52*cc02d7e2SAndroid Build Coastguard Worker
53*cc02d7e2SAndroid Build Coastguard Workerandroid_ndk_repository(name = "androidndk")
54*cc02d7e2SAndroid Build Coastguard Worker
55*cc02d7e2SAndroid Build Coastguard Worker# Note that we intentionally avoid calling `register_toolchains("@androidndk//:all")`
56*cc02d7e2SAndroid Build Coastguard Worker# here, because the toolchain rule fails when $ANDROID_NDK_HOME is not set.
57*cc02d7e2SAndroid Build Coastguard Worker# Use `--extra_toolchains=@androidndk//:all` to manually register it when building for Android.
58*cc02d7e2SAndroid Build Coastguard Worker
59*cc02d7e2SAndroid Build Coastguard Worker# Prevents bazel's '...' expansion from including the following folder.
60*cc02d7e2SAndroid Build Coastguard Worker# This is required because the BUILD file in the following folder
61*cc02d7e2SAndroid Build Coastguard Worker# will trigger bazel failure when Android SDK is not configured.
62*cc02d7e2SAndroid Build Coastguard Worker# The targets in the following folder need to be included in APK and will
63*cc02d7e2SAndroid Build Coastguard Worker# be invoked by binder transport implementation through JNI.
64*cc02d7e2SAndroid Build Coastguard Workerlocal_repository(
65*cc02d7e2SAndroid Build Coastguard Worker    name = "binder_transport_android_helper",
66*cc02d7e2SAndroid Build Coastguard Worker    path = "src/core/ext/transport/binder/java",
67*cc02d7e2SAndroid Build Coastguard Worker)
68*cc02d7e2SAndroid Build Coastguard Worker
69*cc02d7e2SAndroid Build Coastguard Worker# Prevents bazel's '...' expansion from including the following folder.
70*cc02d7e2SAndroid Build Coastguard Worker# This is required to avoid triggering "Unable to find package for @rules_fuzzing//fuzzing:cc_defs.bzl"
71*cc02d7e2SAndroid Build Coastguard Worker# error.
72*cc02d7e2SAndroid Build Coastguard Workerlocal_repository(
73*cc02d7e2SAndroid Build Coastguard Worker    name = "ignore_third_party_utf8_range_subtree",
74*cc02d7e2SAndroid Build Coastguard Worker    path = "third_party/utf8_range",
75*cc02d7e2SAndroid Build Coastguard Worker)
76*cc02d7e2SAndroid Build Coastguard Worker
77*cc02d7e2SAndroid Build Coastguard Workerload("@rules_python//python:pip.bzl", "pip_parse")
78*cc02d7e2SAndroid Build Coastguard Worker
79*cc02d7e2SAndroid Build Coastguard Workerpip_parse(
80*cc02d7e2SAndroid Build Coastguard Worker    name = "grpc_python_dependencies",
81*cc02d7e2SAndroid Build Coastguard Worker    requirements_lock = "@com_github_grpc_grpc//:requirements.bazel.txt",
82*cc02d7e2SAndroid Build Coastguard Worker)
83*cc02d7e2SAndroid Build Coastguard Worker
84*cc02d7e2SAndroid Build Coastguard Workerload("@grpc_python_dependencies//:requirements.bzl", "install_deps")
85*cc02d7e2SAndroid Build Coastguard Worker
86*cc02d7e2SAndroid Build Coastguard Workerinstall_deps()
87*cc02d7e2SAndroid Build Coastguard Worker
88*cc02d7e2SAndroid Build Coastguard Workerload("@com_google_protobuf//bazel:system_python.bzl", "system_python")
89*cc02d7e2SAndroid Build Coastguard Worker
90*cc02d7e2SAndroid Build Coastguard Workersystem_python(
91*cc02d7e2SAndroid Build Coastguard Worker    name = "system_python",
92*cc02d7e2SAndroid Build Coastguard Worker    minimum_python_version = "3.7",
93*cc02d7e2SAndroid Build Coastguard Worker)
94*cc02d7e2SAndroid Build Coastguard Worker
95*cc02d7e2SAndroid Build Coastguard Workerload("@system_python//:pip.bzl", system_pip_parse = "pip_parse")
96*cc02d7e2SAndroid Build Coastguard Worker
97*cc02d7e2SAndroid Build Coastguard Workersystem_pip_parse(
98*cc02d7e2SAndroid Build Coastguard Worker    name = "pip_deps",
99*cc02d7e2SAndroid Build Coastguard Worker    requirements = "@com_google_protobuf//python:requirements.txt",
100*cc02d7e2SAndroid Build Coastguard Worker    requirements_overrides = {
101*cc02d7e2SAndroid Build Coastguard Worker        "3.11": "@com_google_protobuf//python:requirements_311.txt",
102*cc02d7e2SAndroid Build Coastguard Worker    },
103*cc02d7e2SAndroid Build Coastguard Worker)
104*cc02d7e2SAndroid Build Coastguard Worker
105*cc02d7e2SAndroid Build Coastguard Workerhttp_archive(
106*cc02d7e2SAndroid Build Coastguard Worker    name = "build_bazel_rules_swift",
107*cc02d7e2SAndroid Build Coastguard Worker    sha256 = "bf2861de6bf75115288468f340b0c4609cc99cc1ccc7668f0f71adfd853eedb3",
108*cc02d7e2SAndroid Build Coastguard Worker    url = "https://github.com/bazelbuild/rules_swift/releases/download/1.7.1/rules_swift.1.7.1.tar.gz",
109*cc02d7e2SAndroid Build Coastguard Worker)
110*cc02d7e2SAndroid Build Coastguard Worker
111*cc02d7e2SAndroid Build Coastguard Workerload(
112*cc02d7e2SAndroid Build Coastguard Worker    "@build_bazel_apple_support//lib:repositories.bzl",
113*cc02d7e2SAndroid Build Coastguard Worker    "apple_support_dependencies",
114*cc02d7e2SAndroid Build Coastguard Worker)
115*cc02d7e2SAndroid Build Coastguard Worker
116*cc02d7e2SAndroid Build Coastguard Workerapple_support_dependencies()
117*cc02d7e2SAndroid Build Coastguard Worker
118*cc02d7e2SAndroid Build Coastguard Workerload(
119*cc02d7e2SAndroid Build Coastguard Worker    "@build_bazel_rules_swift//swift:repositories.bzl",
120*cc02d7e2SAndroid Build Coastguard Worker    "swift_rules_dependencies",
121*cc02d7e2SAndroid Build Coastguard Worker)
122*cc02d7e2SAndroid Build Coastguard Worker
123*cc02d7e2SAndroid Build Coastguard Workerswift_rules_dependencies()
124*cc02d7e2SAndroid Build Coastguard Worker
125*cc02d7e2SAndroid Build Coastguard Worker# This loads the libpfm transitive dependency.
126*cc02d7e2SAndroid Build Coastguard Worker# See https://github.com/google/benchmark/pull/1520
127*cc02d7e2SAndroid Build Coastguard Workerload("@com_github_google_benchmark//:bazel/benchmark_deps.bzl", "benchmark_deps")
128*cc02d7e2SAndroid Build Coastguard Worker
129*cc02d7e2SAndroid Build Coastguard Workerbenchmark_deps()
130*cc02d7e2SAndroid Build Coastguard Worker
131*cc02d7e2SAndroid Build Coastguard Workerload("@io_opentelemetry_cpp//bazel:repository.bzl", "opentelemetry_cpp_deps")
132*cc02d7e2SAndroid Build Coastguard Worker
133*cc02d7e2SAndroid Build Coastguard Workeropentelemetry_cpp_deps()
134*cc02d7e2SAndroid Build Coastguard Worker
135*cc02d7e2SAndroid Build Coastguard Workerload("@io_opentelemetry_cpp//bazel:extra_deps.bzl", "opentelemetry_extra_deps")
136*cc02d7e2SAndroid Build Coastguard Worker
137*cc02d7e2SAndroid Build Coastguard Workeropentelemetry_extra_deps()
138*cc02d7e2SAndroid Build Coastguard Worker
139*cc02d7e2SAndroid Build Coastguard Worker# TODO: Enable below once https://github.com/bazel-xcode/PodToBUILD/issues/232 is resolved
140*cc02d7e2SAndroid Build Coastguard Worker#
141*cc02d7e2SAndroid Build Coastguard Worker#http_archive(
142*cc02d7e2SAndroid Build Coastguard Worker#    name = "rules_pods",
143*cc02d7e2SAndroid Build Coastguard Worker#    urls = ["https://github.com/pinterest/PodToBUILD/releases/download/4.1.0-412495/PodToBUILD.zip"],
144*cc02d7e2SAndroid Build Coastguard Worker#)
145*cc02d7e2SAndroid Build Coastguard Worker#
146*cc02d7e2SAndroid Build Coastguard Worker#load(
147*cc02d7e2SAndroid Build Coastguard Worker#    "@rules_pods//BazelExtensions:workspace.bzl",
148*cc02d7e2SAndroid Build Coastguard Worker#    "new_pod_repository",
149*cc02d7e2SAndroid Build Coastguard Worker#)
150*cc02d7e2SAndroid Build Coastguard Worker#
151*cc02d7e2SAndroid Build Coastguard Worker#new_pod_repository(
152*cc02d7e2SAndroid Build Coastguard Worker#    name = "CronetFramework",
153*cc02d7e2SAndroid Build Coastguard Worker#    is_dynamic_framework = True,
154*cc02d7e2SAndroid Build Coastguard Worker#    podspec_url = "https://raw.githubusercontent.com/CocoaPods/Specs/master/Specs/2/e/1/CronetFramework/0.0.5/CronetFramework.podspec.json",
155*cc02d7e2SAndroid Build Coastguard Worker#    url = "https://storage.googleapis.com/grpc-precompiled-binaries/cronet/Cronet.framework-v0.0.5.zip",
156*cc02d7e2SAndroid Build Coastguard Worker#)
157