1*e7b1675dSTing-Kang Chang"""Dependencies of C++ Tink.""" 2*e7b1675dSTing-Kang Chang 3*e7b1675dSTing-Kang Changload("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") 4*e7b1675dSTing-Kang Chang 5*e7b1675dSTing-Kang Changdef tink_cc_deps(): 6*e7b1675dSTing-Kang Chang """Loads dependencies of C++ Tink.""" 7*e7b1675dSTing-Kang Chang 8*e7b1675dSTing-Kang Chang # Basic rules we need to add to bazel. 9*e7b1675dSTing-Kang Chang if not native.existing_rule("bazel_skylib"): 10*e7b1675dSTing-Kang Chang # Release from 2022-09-01: https://github.com/bazelbuild/bazel-skylib/releases/tag/1.3.0 11*e7b1675dSTing-Kang Chang http_archive( 12*e7b1675dSTing-Kang Chang name = "bazel_skylib", 13*e7b1675dSTing-Kang Chang urls = [ 14*e7b1675dSTing-Kang Chang "https://mirror.bazel.build/github.com/bazelbuild/bazel-skylib/releases/download/1.3.0/bazel-skylib-1.3.0.tar.gz", 15*e7b1675dSTing-Kang Chang "https://github.com/bazelbuild/bazel-skylib/releases/download/1.3.0/bazel-skylib-1.3.0.tar.gz", 16*e7b1675dSTing-Kang Chang ], 17*e7b1675dSTing-Kang Chang sha256 = "74d544d96f4a5bb630d465ca8bbcfe231e3594e5aae57e1edbf17a6eb3ca2506", 18*e7b1675dSTing-Kang Chang ) 19*e7b1675dSTing-Kang Chang 20*e7b1675dSTing-Kang Chang # ------------------------------------------------------------------------- 21*e7b1675dSTing-Kang Chang # Protobuf. 22*e7b1675dSTing-Kang Chang # ------------------------------------------------------------------------- 23*e7b1675dSTing-Kang Chang # proto_library, cc_proto_library and java_proto_library rules implicitly 24*e7b1675dSTing-Kang Chang # depend respectively on: 25*e7b1675dSTing-Kang Chang # * @com_google_protobuf//:proto 26*e7b1675dSTing-Kang Chang # * @com_google_protobuf//:cc_toolchain 27*e7b1675dSTing-Kang Chang # * @com_google_protobuf//:java_toolchain 28*e7b1675dSTing-Kang Chang # This statement defines the @com_google_protobuf repo. 29*e7b1675dSTing-Kang Chang if not native.existing_rule("com_google_protobuf"): 30*e7b1675dSTing-Kang Chang # Release X.21.9 from 2022-10-26. 31*e7b1675dSTing-Kang Chang http_archive( 32*e7b1675dSTing-Kang Chang name = "com_google_protobuf", 33*e7b1675dSTing-Kang Chang strip_prefix = "protobuf-21.9", 34*e7b1675dSTing-Kang Chang urls = ["https://github.com/protocolbuffers/protobuf/archive/refs/tags/v21.9.zip"], 35*e7b1675dSTing-Kang Chang sha256 = "5babb8571f1cceafe0c18e13ddb3be556e87e12ceea3463d6b0d0064e6cc1ac3", 36*e7b1675dSTing-Kang Chang ) 37*e7b1675dSTing-Kang Chang 38*e7b1675dSTing-Kang Chang # ------------------------------------------------------------------------- 39*e7b1675dSTing-Kang Chang # Abseil. 40*e7b1675dSTing-Kang Chang # ------------------------------------------------------------------------- 41*e7b1675dSTing-Kang Chang if not native.existing_rule("com_google_absl"): 42*e7b1675dSTing-Kang Chang # Release from 2023-05-04. 43*e7b1675dSTing-Kang Chang http_archive( 44*e7b1675dSTing-Kang Chang name = "com_google_absl", 45*e7b1675dSTing-Kang Chang strip_prefix = "abseil-cpp-20230125.3", 46*e7b1675dSTing-Kang Chang url = "https://github.com/abseil/abseil-cpp/archive/refs/tags/20230125.3.zip", 47*e7b1675dSTing-Kang Chang sha256 = "51d676b6846440210da48899e4df618a357e6e44ecde7106f1e44ea16ae8adc7", 48*e7b1675dSTing-Kang Chang ) 49*e7b1675dSTing-Kang Chang 50*e7b1675dSTing-Kang Chang # ------------------------------------------------------------------------- 51*e7b1675dSTing-Kang Chang # BoringSSL. 52*e7b1675dSTing-Kang Chang # ------------------------------------------------------------------------- 53*e7b1675dSTing-Kang Chang if not native.existing_rule("boringssl"): 54*e7b1675dSTing-Kang Chang # Commit from 2023-02-15. 55*e7b1675dSTing-Kang Chang http_archive( 56*e7b1675dSTing-Kang Chang name = "boringssl", 57*e7b1675dSTing-Kang Chang strip_prefix = "boringssl-5c22014ca513807ed03c657e8ede076164663979", 58*e7b1675dSTing-Kang Chang url = "https://github.com/google/boringssl/archive/5c22014ca513807ed03c657e8ede076164663979.zip", 59*e7b1675dSTing-Kang Chang sha256 = "863fc670c456f30923740c1639305132fdfb9d1b25ba385a67ae3862ef12a8af", 60*e7b1675dSTing-Kang Chang ) 61*e7b1675dSTing-Kang Chang 62*e7b1675dSTing-Kang Chang # ------------------------------------------------------------------------- 63*e7b1675dSTing-Kang Chang # GoogleTest/GoogleMock. 64*e7b1675dSTing-Kang Chang # ------------------------------------------------------------------------- 65*e7b1675dSTing-Kang Chang if not native.existing_rule("com_google_googletest"): 66*e7b1675dSTing-Kang Chang # Release from 2021-06-11. 67*e7b1675dSTing-Kang Chang http_archive( 68*e7b1675dSTing-Kang Chang name = "com_google_googletest", 69*e7b1675dSTing-Kang Chang strip_prefix = "googletest-release-1.11.0", 70*e7b1675dSTing-Kang Chang url = "https://github.com/google/googletest/archive/refs/tags/release-1.11.0.tar.gz", 71*e7b1675dSTing-Kang Chang sha256 = "b4870bf121ff7795ba20d20bcdd8627b8e088f2d1dab299a031c1034eddc93d5", 72*e7b1675dSTing-Kang Chang ) 73*e7b1675dSTing-Kang Chang 74*e7b1675dSTing-Kang Chang # ------------------------------------------------------------------------- 75*e7b1675dSTing-Kang Chang # Wycheproof (depends on Rapidjson). 76*e7b1675dSTing-Kang Chang # ------------------------------------------------------------------------- 77*e7b1675dSTing-Kang Chang if not native.existing_rule("rapidjson"): 78*e7b1675dSTing-Kang Chang # Release from 2016-08-25 (still the latest release as of 2022-05-05). 79*e7b1675dSTing-Kang Chang http_archive( 80*e7b1675dSTing-Kang Chang name = "rapidjson", 81*e7b1675dSTing-Kang Chang url = "https://github.com/Tencent/rapidjson/archive/v1.1.0.tar.gz", 82*e7b1675dSTing-Kang Chang sha256 = "bf7ced29704a1e696fbccf2a2b4ea068e7774fa37f6d7dd4039d0787f8bed98e", 83*e7b1675dSTing-Kang Chang strip_prefix = "rapidjson-1.1.0", 84*e7b1675dSTing-Kang Chang build_file = "@tink_cc//:third_party/rapidjson.BUILD.bazel", 85*e7b1675dSTing-Kang Chang ) 86*e7b1675dSTing-Kang Chang if not native.existing_rule("wycheproof"): 87*e7b1675dSTing-Kang Chang # Commit from 2019-12-17. 88*e7b1675dSTing-Kang Chang http_archive( 89*e7b1675dSTing-Kang Chang name = "wycheproof", 90*e7b1675dSTing-Kang Chang strip_prefix = "wycheproof-d8ed1ba95ac4c551db67f410c06131c3bc00a97c", 91*e7b1675dSTing-Kang Chang url = "https://github.com/google/wycheproof/archive/d8ed1ba95ac4c551db67f410c06131c3bc00a97c.zip", 92*e7b1675dSTing-Kang Chang sha256 = "eb1d558071acf1aa6d677d7f1cabec2328d1cf8381496c17185bd92b52ce7545", 93*e7b1675dSTing-Kang Chang ) 94