bazel: fix protobuf-test compatibility with bazel_4

- bump protobuf to 3.13.0
- use recent rules_proto
- use recent bazel-skylib
- remove use of native.bind

Hopefully this is backward-compatible with bazel_3 and below
This commit is contained in:
Dmitry Ivankov 2021-01-27 20:24:05 +01:00
parent 2751275f1a
commit 56c25c5653

View File

@ -17,15 +17,29 @@ let
com_google_protobuf = fetchFromGitHub { com_google_protobuf = fetchFromGitHub {
owner = "protocolbuffers"; owner = "protocolbuffers";
repo = "protobuf"; repo = "protobuf";
rev = "v3.7.0"; rev = "v3.13.0";
sha256 = "0nlxif4cajqllsj2vdh7zp14ag48fb8lsa64zmq8625q9m2lcmdh"; sha256 = "1nqsvi2yfr93kiwlinz8z7c68ilg1j75b2vcpzxzvripxx5h6xhd";
}; };
bazel_skylib = fetchFromGitHub { bazel_skylib = fetchFromGitHub {
owner = "bazelbuild"; owner = "bazelbuild";
repo = "bazel-skylib"; repo = "bazel-skylib";
rev = "f83cb8dd6f5658bc574ccd873e25197055265d1c"; rev = "2ec2e6d715e993d96ad6222770805b5bd25399ae";
sha256 = "091fb0ky0956wgv8gghy9ay3yfx6497mb72qvibf0y9dllmxyn9l"; sha256 = "1z2r2vx6kj102zvp3j032djyv99ski1x1sl4i3p6mswnzrzna86s";
};
rules_python = fetchFromGitHub {
owner = "bazelbuild";
repo = "rules_python";
rev = "c8c79aae9aa1b61d199ad03d5fe06338febd0774";
sha256 = "1zn58wv5wcylpi0xj7riw34i1jjpqahanxx8y9srwrv0v93b6pqz";
};
rules_proto = fetchFromGitHub {
owner = "bazelbuild";
repo = "rules_proto";
rev = "a0761ed101b939e19d83b2da5f59034bffc19c12";
sha256 = "09lqfj5fxm1fywxr5w8pnpqd859gb6751jka9fhxjxjzs33glhqf";
}; };
net_zlib = fetchurl rec { net_zlib = fetchurl rec {
@ -40,7 +54,9 @@ let
load("//:proto-support.bzl", "protobuf_deps") load("//:proto-support.bzl", "protobuf_deps")
protobuf_deps() protobuf_deps()
''; load("@rules_proto//proto:repositories.bzl", "rules_proto_toolchains")
rules_proto_toolchains()
'';
protoSupport = writeText "proto-support.bzl" '' protoSupport = writeText "proto-support.bzl" ''
"""Load dependencies needed to compile the protobuf library as a 3rd-party consumer.""" """Load dependencies needed to compile the protobuf library as a 3rd-party consumer."""
@ -62,13 +78,17 @@ let
name = "bazel_skylib", name = "bazel_skylib",
path = "${bazel_skylib}", path = "${bazel_skylib}",
) )
native.local_repository(
native.bind( name = "rules_proto",
name = "zlib", path = "${rules_proto}",
actual = "@net_zlib//:zlib",
) )
native.local_repository(
name = "rules_python",
path = "${rules_python}",
)
http_archive( http_archive(
name = "net_zlib", name = "zlib",
build_file = "@com_google_protobuf//:third_party/zlib.BUILD", build_file = "@com_google_protobuf//:third_party/zlib.BUILD",
sha256 = "${net_zlib.sha256}", sha256 = "${net_zlib.sha256}",
strip_prefix = "zlib-1.2.11", strip_prefix = "zlib-1.2.11",
@ -89,6 +109,8 @@ let
''; '';
personBUILD = writeText "BUILD" '' personBUILD = writeText "BUILD" ''
load("@rules_proto//proto:defs.bzl", "proto_library")
proto_library( proto_library(
name = "person_proto", name = "person_proto",
srcs = ["person.proto"], srcs = ["person.proto"],