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 = "4f7e2aa1eb9aa722d96498f5ef514f426c1f55161c3c9ae628c857a7128ceb07", 26 strip_prefix = "rules_python-1.0.0", 27 url = "https://github.com/bazelbuild/rules_python/releases/download/1.0.0/rules_python-1.0.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 = "2ec7d66d23d6da2328fb24f5c1bec6c63a59ec2e91027766ab904f417e1078aa", 42 strip_prefix = "cython-3.0.11", 43 urls = [ 44 "https://github.com/cython/cython/archive/3.0.11.tar.gz", 45 ], 46 ) 47