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