1"""Load dependencies needed to compile the protobuf library as a 3rd-party consumer.""" 2 3load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") 4 5def protobuf_deps(): 6 """Loads common dependencies needed to compile the protobuf library.""" 7 8 if not native.existing_rule("bazel_skylib"): 9 http_archive( 10 name = "bazel_skylib", 11 sha256 = "97e70364e9249702246c0e9444bccdc4b847bed1eb03c5a3ece4f83dfe6abc44", 12 urls = [ 13 "https://mirror.bazel.build/github.com/bazelbuild/bazel-skylib/releases/download/1.0.2/bazel-skylib-1.0.2.tar.gz", 14 "https://github.com/bazelbuild/bazel-skylib/releases/download/1.0.2/bazel-skylib-1.0.2.tar.gz", 15 ], 16 ) 17 18 if not native.existing_rule("zlib"): 19 http_archive( 20 name = "zlib", 21 build_file = "@com_google_protobuf//:third_party/zlib.BUILD", 22 sha256 = "629380c90a77b964d896ed37163f5c3a34f6e6d897311f1df2a7016355c45eff", 23 strip_prefix = "zlib-1.2.11", 24 urls = ["https://github.com/madler/zlib/archive/v1.2.11.tar.gz"], 25 ) 26 27 if not native.existing_rule("six"): 28 http_archive( 29 name = "six", 30 build_file = "@com_google_protobuf//:third_party/six.BUILD", 31 sha256 = "d16a0141ec1a18405cd4ce8b4613101da75da0e9a7aec5bdd4fa804d0e0eba73", 32 urls = ["https://pypi.python.org/packages/source/s/six/six-1.12.0.tar.gz"], 33 ) 34 35 if not native.existing_rule("rules_cc"): 36 http_archive( 37 name = "rules_cc", 38 sha256 = "9d48151ea71b3e225adfb6867e6d2c7d0dce46cbdc8710d9a9a628574dfd40a0", 39 strip_prefix = "rules_cc-818289e5613731ae410efb54218a4077fb9dbb03", 40 urls = ["https://github.com/bazelbuild/rules_cc/archive/818289e5613731ae410efb54218a4077fb9dbb03.tar.gz"], 41 ) 42 43 if not native.existing_rule("rules_java"): 44 http_archive( 45 name = "rules_java", 46 sha256 = "f5a3e477e579231fca27bf202bb0e8fbe4fc6339d63b38ccb87c2760b533d1c3", 47 strip_prefix = "rules_java-981f06c3d2bd10225e85209904090eb7b5fb26bd", 48 urls = ["https://github.com/bazelbuild/rules_java/archive/981f06c3d2bd10225e85209904090eb7b5fb26bd.tar.gz"], 49 ) 50 51 if not native.existing_rule("rules_proto"): 52 http_archive( 53 name = "rules_proto", 54 sha256 = "602e7161d9195e50246177e7c55b2f39950a9cf7366f74ed5f22fd45750cd208", 55 strip_prefix = "rules_proto-97d8af4dc474595af3900dd85cb3a29ad28cc313", 56 urls = ["https://github.com/bazelbuild/rules_proto/archive/97d8af4dc474595af3900dd85cb3a29ad28cc313.tar.gz"], 57 ) 58 59 if not native.existing_rule("rules_python"): 60 http_archive( 61 name = "rules_python", 62 sha256 = "e5470e92a18aa51830db99a4d9c492cc613761d5bdb7131c04bd92b9834380f6", 63 strip_prefix = "rules_python-4b84ad270387a7c439ebdccfd530e2339601ef27", 64 urls = ["https://github.com/bazelbuild/rules_python/archive/4b84ad270387a7c439ebdccfd530e2339601ef27.tar.gz"], 65 ) 66