xref: /aosp_15_r20/external/grpc-grpc/bazel/grpc_python_deps.bzl (revision cc02d7e222339f7a4f6ba5f422e6413f4bd931f2)
1# Copyright 2021 The gRPC Authors
2#
3# Licensed under the Apache License, Version 2.0 (the "License");
4# you may not use this file except in compliance with the License.
5# You may obtain a copy of the License at
6#
7#     http://www.apache.org/licenses/LICENSE-2.0
8#
9# Unless required by applicable law or agreed to in writing, software
10# distributed under the License is distributed on an "AS IS" BASIS,
11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12# See the License for the specific language governing permissions and
13# limitations under the License.
14"""Load dependencies needed to compile and test the grpc python library as a 3rd-party consumer."""
15
16load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
17load("@com_github_grpc_grpc//third_party/py:python_configure.bzl", "python_configure")
18
19# buildifier: disable=unnamed-macro
20def grpc_python_deps():
21    """Loads dependencies for gRPC Python."""
22    if "rules_python" not in native.existing_rules():
23        http_archive(
24            name = "rules_python",
25            sha256 = "9d04041ac92a0985e344235f5d946f71ac543f1b1565f2cdbc9a2aaee8adf55b",
26            strip_prefix = "rules_python-0.26.0",
27            url = "https://github.com/bazelbuild/rules_python/releases/download/0.26.0/rules_python-0.26.0.tar.gz",
28        )
29
30    python_configure(name = "local_config_python")
31
32    native.bind(
33        name = "python_headers",
34        actual = "@local_config_python//:python_headers",
35    )
36
37    if "cython" not in native.existing_rules():
38        http_archive(
39            name = "cython",
40            build_file = "@com_github_grpc_grpc//third_party:cython.BUILD",
41            sha256 = "a2da56cc22be823acf49741b9aa3aa116d4f07fa8e8b35a3cb08b8447b37c607",
42            strip_prefix = "cython-0.29.35",
43            urls = [
44                "https://github.com/cython/cython/archive/0.29.35.tar.gz",
45            ],
46        )
47