| # Copyright 2021 The gRPC Authors |
| # |
| # Licensed under the Apache License, Version 2.0 (the "License"); |
| # you may not use this file except in compliance with the License. |
| # You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, software |
| # distributed under the License is distributed on an "AS IS" BASIS, |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| # See the License for the specific language governing permissions and |
| # limitations under the License. |
| """Load dependencies needed to compile and test the grpc python library as a 3rd-party consumer.""" |
| |
| load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") |
| load("@com_github_grpc_grpc//third_party/py:python_configure.bzl", "python_configure") |
| |
| # buildifier: disable=unnamed-macro |
| def grpc_python_deps(): |
| """Loads dependencies for gRPC Python.""" |
| if "io_bazel_rules_python" not in native.existing_rules(): |
| http_archive( |
| name = "io_bazel_rules_python", |
| url = "https://github.com/bazelbuild/rules_python/releases/download/0.4.0/rules_python-0.4.0.tar.gz", |
| sha256 = "954aa89b491be4a083304a2cb838019c8b8c3720a7abb9c4cb81ac7a24230cea", |
| patches = ["@com_github_grpc_grpc//third_party:rules_python.patch"], |
| patch_args = ["-p1"], |
| ) |
| |
| python_configure(name = "local_config_python") |
| |
| native.bind( |
| name = "python_headers", |
| actual = "@local_config_python//:python_headers", |
| ) |
| |
| if "cython" not in native.existing_rules(): |
| http_archive( |
| name = "cython", |
| build_file = "@com_github_grpc_grpc//third_party:cython.BUILD", |
| sha256 = "bb72b2f0ef029472759c711f0a4bded6e15e3f9bda3797550cef3c1d87d02283", |
| strip_prefix = "cython-0.29.26", |
| urls = [ |
| "https://github.com/cython/cython/archive/0.29.26.tar.gz", |
| ], |
| ) |