"""Load dependencies needed to compile and test the grpc library as a 3rd-party consumer.""" load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository") load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") load("@com_github_grpc_grpc//bazel:grpc_python_deps.bzl", "grpc_python_deps") def grpc_deps(): """Loads dependencies need to compile and test the grpc library.""" native.bind( name = "nanopb", actual = "@com_github_nanopb_nanopb//:nanopb", ) native.bind( name = "upb_lib", actual = "@upb//:upb", ) native.bind( name = "absl-base", actual = "@com_google_absl//absl/base", ) native.bind( name = "absl-time", actual = "@com_google_absl//absl/time:time", ) native.bind( name = "libssl", actual = "@boringssl//:ssl", ) native.bind( name = "madler_zlib", actual = "@zlib//:zlib", ) native.bind( name = "protobuf", actual = "@com_google_protobuf//:protobuf", ) native.bind( name = "protobuf_clib", actual = "@com_google_protobuf//:protoc_lib", ) native.bind( name = "protobuf_headers", actual = "@com_google_protobuf//:protobuf_headers", ) native.bind( name = "protocol_compiler", actual = "@com_google_protobuf//:protoc", ) native.bind( name = "cares", actual = "@com_github_cares_cares//:ares", ) native.bind( name = "gtest", actual = "@com_github_google_googletest//:gtest", ) native.bind( name = "benchmark", actual = "@com_github_google_benchmark//:benchmark", ) native.bind( name = "gflags", actual = "@com_github_gflags_gflags//:gflags", ) native.bind( name = "grpc_cpp_plugin", actual = "@com_github_grpc_grpc//src/compiler:grpc_cpp_plugin", ) native.bind( name = "grpc++_codegen_proto", actual = "@com_github_grpc_grpc//:grpc++_codegen_proto", ) native.bind( name = "opencensus-trace", actual = "@io_opencensus_cpp//opencensus/trace:trace", ) native.bind( name = "opencensus-stats", actual = "@io_opencensus_cpp//opencensus/stats:stats", ) native.bind( name = "opencensus-stats-test", actual = "@io_opencensus_cpp//opencensus/stats:test_utils", ) if "boringssl" not in native.existing_rules(): http_archive( name = "boringssl", # on the chromium-stable-with-bazel branch # NOTE: This URL generates a tarball containing dynamic date # information, so the sha256 is not consistent. url = "https://boringssl.googlesource.com/boringssl/+archive/afc30d43eef92979b05776ec0963c9cede5fb80f.tar.gz", ) if "zlib" not in native.existing_rules(): http_archive( name = "zlib", build_file = "@com_github_grpc_grpc//third_party:zlib.BUILD", sha256 = "6d4d6640ca3121620995ee255945161821218752b551a1a180f4215f7d124d45", strip_prefix = "zlib-cacf7f1d4e3d44d871b605da3b647f07d718623f", url = "https://github.com/madler/zlib/archive/cacf7f1d4e3d44d871b605da3b647f07d718623f.tar.gz", ) if "com_google_protobuf" not in native.existing_rules(): http_archive( name = "com_google_protobuf", sha256 = "416212e14481cff8fd4849b1c1c1200a7f34808a54377e22d7447efdf54ad758", strip_prefix = "protobuf-09745575a923640154bcf307fba8aedff47f240a", url = "https://github.com/google/protobuf/archive/09745575a923640154bcf307fba8aedff47f240a.tar.gz", ) if "com_github_nanopb_nanopb" not in native.existing_rules(): http_archive( name = "com_github_nanopb_nanopb", build_file = "@com_github_grpc_grpc//third_party:nanopb.BUILD", sha256 = "8bbbb1e78d4ddb0a1919276924ab10d11b631df48b657d960e0c795a25515735", strip_prefix = "nanopb-f8ac463766281625ad710900479130c7fcb4d63b", url = "https://github.com/nanopb/nanopb/archive/f8ac463766281625ad710900479130c7fcb4d63b.tar.gz", ) if "com_github_google_googletest" not in native.existing_rules(): http_archive( name = "com_github_google_googletest", sha256 = "d0d447b4feeedca837a0d46a289d4223089b32ac2f84545fa4982755cc8919be", strip_prefix = "googletest-2fe3bd994b3189899d93f1d5a881e725e046fdc2", url = "https://github.com/google/googletest/archive/2fe3bd994b3189899d93f1d5a881e725e046fdc2.tar.gz", ) if "com_github_gflags_gflags" not in native.existing_rules(): http_archive( name = "com_github_gflags_gflags", sha256 = "63ae70ea3e05780f7547d03503a53de3a7d2d83ad1caaa443a31cb20aea28654", strip_prefix = "gflags-28f50e0fed19872e0fd50dd23ce2ee8cd759338e", url = "https://github.com/gflags/gflags/archive/28f50e0fed19872e0fd50dd23ce2ee8cd759338e.tar.gz", ) if "com_github_google_benchmark" not in native.existing_rules(): http_archive( name = "com_github_google_benchmark", sha256 = "c7682e9007ddfd94072647abab3e89ffd9084089460ae47d67060974467b58bf", strip_prefix = "benchmark-e776aa0275e293707b6a0901e0e8d8a8a3679508", url = "https://github.com/google/benchmark/archive/e776aa0275e293707b6a0901e0e8d8a8a3679508.tar.gz", ) if "com_github_cares_cares" not in native.existing_rules(): http_archive( name = "com_github_cares_cares", build_file = "@com_github_grpc_grpc//third_party:cares/cares.BUILD", sha256 = "e8c2751ddc70fed9dc6f999acd92e232d5846f009ee1674f8aee81f19b2b915a", strip_prefix = "c-ares-e982924acee7f7313b4baa4ee5ec000c5e373c30", url = "https://github.com/c-ares/c-ares/archive/e982924acee7f7313b4baa4ee5ec000c5e373c30.tar.gz", ) if "com_google_absl" not in native.existing_rules(): http_archive( name = "com_google_absl", sha256 = "fd4edc10767c28b23bf9f41114c6bcd9625c165a31baa0e6939f01058029a912", strip_prefix = "abseil-cpp-74d91756c11bc22f9b0108b94da9326f7f9e376f", url = "https://github.com/abseil/abseil-cpp/archive/74d91756c11bc22f9b0108b94da9326f7f9e376f.tar.gz", ) if "bazel_toolchains" not in native.existing_rules(): http_archive( name = "bazel_toolchains", sha256 = "d968b414b32aa99c86977e1171645d31da2b52ac88060de3ac1e49932d5dcbf1", strip_prefix = "bazel-toolchains-4bd5df80d77aa7f4fb943dfdfad5c9056a62fb47", urls = [ "https://mirror.bazel.build/github.com/bazelbuild/bazel-toolchains/archive/4bd5df80d77aa7f4fb943dfdfad5c9056a62fb47.tar.gz", "https://github.com/bazelbuild/bazel-toolchains/archive/4bd5df80d77aa7f4fb943dfdfad5c9056a62fb47.tar.gz", ], ) if "bazel_skylib" not in native.existing_rules(): http_archive( name = "bazel_skylib", sha256 = "ba5d15ca230efca96320085d8e4d58da826d1f81b444ef8afccd8b23e0799b52", strip_prefix = "bazel-skylib-f83cb8dd6f5658bc574ccd873e25197055265d1c", url = "https://github.com/bazelbuild/bazel-skylib/archive/f83cb8dd6f5658bc574ccd873e25197055265d1c.tar.gz", ) if "io_opencensus_cpp" not in native.existing_rules(): http_archive( name = "io_opencensus_cpp", sha256 = "90d6fafa8b1a2ea613bf662731d3086e1c2ed286f458a95c81744df2dbae41b1", strip_prefix = "opencensus-cpp-c9a4da319bc669a772928ffc55af4a61be1a1176", url = "https://github.com/census-instrumentation/opencensus-cpp/archive/c9a4da319bc669a772928ffc55af4a61be1a1176.tar.gz", ) if "upb" not in native.existing_rules(): http_archive( name = "upb", sha256 = "95150db57b51b65f3422c38953956e0f786945d842d76f8ab685fbcd93ab5caa", strip_prefix = "upb-931bbecbd3230ae7f22efa5d203639facc47f719", url = "https://github.com/protocolbuffers/upb/archive/931bbecbd3230ae7f22efa5d203639facc47f719.tar.gz", ) if "envoy_api" not in native.existing_rules(): http_archive( name = "envoy_api", sha256 = "a2c6e854fa9653b0ed6510e31ec7c51eac43d578b54cd75c0bc1898f7515c60d", strip_prefix = "data-plane-api-a83394157ad97f4dadbc8ed81f56ad5b3a72e542", url = "https://github.com/envoyproxy/data-plane-api/archive/a83394157ad97f4dadbc8ed81f56ad5b3a72e542.tar.gz", ) if "io_bazel_rules_go" not in native.existing_rules(): http_archive( name = "io_bazel_rules_go", urls = ["https://github.com/bazelbuild/rules_go/releases/download/0.18.5/rules_go-0.18.5.tar.gz"], sha256 = "a82a352bffae6bee4e95f68a8d80a70e87f42c4741e6a448bec11998fcc82329", ) if "build_bazel_rules_apple" not in native.existing_rules(): git_repository( name = "build_bazel_rules_apple", remote = "https://github.com/bazelbuild/rules_apple.git", tag = "0.17.2", ) grpc_python_deps() # TODO: move some dependencies from "grpc_deps" here? def grpc_test_only_deps(): """Internal, not intended for use by packages that are consuming grpc. Loads dependencies that are only needed to run grpc library's tests.""" native.bind( name = "twisted", actual = "@com_github_twisted_twisted//:twisted", ) native.bind( name = "yaml", actual = "@com_github_yaml_pyyaml//:yaml", ) if "com_github_twisted_twisted" not in native.existing_rules(): http_archive( name = "com_github_twisted_twisted", sha256 = "ca17699d0d62eafc5c28daf2c7d0a18e62ae77b4137300b6c7d7868b39b06139", strip_prefix = "twisted-twisted-17.5.0", url = "https://github.com/twisted/twisted/archive/twisted-17.5.0.zip", build_file = "@com_github_grpc_grpc//third_party:twisted.BUILD", ) if "com_github_yaml_pyyaml" not in native.existing_rules(): http_archive( name = "com_github_yaml_pyyaml", sha256 = "6b4314b1b2051ddb9d4fcd1634e1fa9c1bb4012954273c9ff3ef689f6ec6c93e", strip_prefix = "pyyaml-3.12", url = "https://github.com/yaml/pyyaml/archive/3.12.zip", build_file = "@com_github_grpc_grpc//third_party:yaml.BUILD", ) if "com_github_twisted_incremental" not in native.existing_rules(): http_archive( name = "com_github_twisted_incremental", sha256 = "f0ca93359ee70243ff7fbf2d904a6291810bd88cb80ed4aca6fa77f318a41a36", strip_prefix = "incremental-incremental-17.5.0", url = "https://github.com/twisted/incremental/archive/incremental-17.5.0.zip", build_file = "@com_github_grpc_grpc//third_party:incremental.BUILD", ) if "com_github_zopefoundation_zope_interface" not in native.existing_rules(): http_archive( name = "com_github_zopefoundation_zope_interface", sha256 = "e9579fc6149294339897be3aa9ecd8a29217c0b013fe6f44fcdae00e3204198a", strip_prefix = "zope.interface-4.4.3", url = "https://github.com/zopefoundation/zope.interface/archive/4.4.3.zip", build_file = "@com_github_grpc_grpc//third_party:zope_interface.BUILD", ) if "com_github_twisted_constantly" not in native.existing_rules(): http_archive( name = "com_github_twisted_constantly", sha256 = "2702cd322161a579d2c0dbf94af4e57712eedc7bd7bbbdc554a230544f7d346c", strip_prefix = "constantly-15.1.0", url = "https://github.com/twisted/constantly/archive/15.1.0.zip", build_file = "@com_github_grpc_grpc//third_party:constantly.BUILD", )