From 06ecc8729056c6cdc5e50fc35e11b70e744f0a15 Mon Sep 17 00:00:00 2001 From: Yannic Bonenberger Date: Wed, 5 Feb 2020 19:58:30 +0100 Subject: [PATCH] [bazel] Add fixes for --incompatible_load_proto_rules_from_bzl --- bazel/cc_grpc_library.bzl | 4 ++-- bazel/generate_cc.bzl | 1 + bazel/generate_objc.bzl | 1 + bazel/protobuf.bzl | 2 ++ bazel/python_rules.bzl | 1 + bazel/test/python_test_repo/BUILD | 1 + examples/BUILD | 5 +++-- examples/python/cancellation/BUILD.bazel | 1 + examples/python/multiprocessing/BUILD | 1 + src/objective-c/grpc_objc_internal_library.bzl | 3 ++- src/proto/grpc/channelz/BUILD | 1 + src/proto/grpc/gcp/BUILD | 2 ++ src/proto/grpc/health/v1/BUILD | 1 + src/proto/grpc/lb/v1/BUILD | 1 + src/proto/grpc/reflection/v1alpha/BUILD | 1 + src/proto/grpc/testing/BUILD | 3 ++- src/proto/grpc/testing/proto2/BUILD.bazel | 1 + src/python/grpcio_tests/tests/stress/BUILD.bazel | 1 + third_party/py/python_configure.bzl | 16 ++++++++-------- third_party/upb/BUILD | 13 +++++++------ third_party/upb/bazel/upb_proto_library.bzl | 2 ++ third_party/upb/examples/bazel/BUILD | 1 + 22 files changed, 43 insertions(+), 20 deletions(-) diff --git a/bazel/cc_grpc_library.bzl b/bazel/cc_grpc_library.bzl index dea493eaf20..7ec1a98ec51 100644 --- a/bazel/cc_grpc_library.bzl +++ b/bazel/cc_grpc_library.bzl @@ -1,5 +1,6 @@ """Generates and compiles C++ grpc stubs from proto_library rules.""" +load("@rules_proto//proto:defs.bzl", "proto_library") load("//bazel:generate_cc.bzl", "generate_cc") load("//bazel:protobuf.bzl", "well_known_proto_libs") @@ -63,8 +64,7 @@ def cc_grpc_library( proto_deps += [dep.split(":")[0] + ":" + "_" + dep.split(":")[1] + "_only" for dep in deps if dep.find(":") != -1] if well_known_protos: proto_deps += well_known_proto_libs() - - native.proto_library( + proto_library( name = proto_target, srcs = srcs, deps = proto_deps, diff --git a/bazel/generate_cc.bzl b/bazel/generate_cc.bzl index 484959ebb70..a1808630217 100644 --- a/bazel/generate_cc.bzl +++ b/bazel/generate_cc.bzl @@ -4,6 +4,7 @@ This is an internal rule used by cc_grpc_library, and shouldn't be used directly. """ +load("@rules_proto//proto:defs.bzl", "ProtoInfo") load( "//bazel:protobuf.bzl", "get_include_directory", diff --git a/bazel/generate_objc.bzl b/bazel/generate_objc.bzl index 3bf5aa39243..cffe4043992 100644 --- a/bazel/generate_objc.bzl +++ b/bazel/generate_objc.bzl @@ -1,3 +1,4 @@ +load("@rules_proto//proto:defs.bzl", "ProtoInfo") load( "//bazel:protobuf.bzl", "get_include_directory", diff --git a/bazel/protobuf.bzl b/bazel/protobuf.bzl index 7af27a8b308..330301e930c 100644 --- a/bazel/protobuf.bzl +++ b/bazel/protobuf.bzl @@ -1,5 +1,7 @@ """Utility functions for generating protobuf code.""" +load("@rules_proto//proto:defs.bzl", "ProtoInfo") + _PROTO_EXTENSION = ".proto" _VIRTUAL_IMPORTS = "/_virtual_imports/" diff --git a/bazel/python_rules.bzl b/bazel/python_rules.bzl index e8ada92f15f..39fee5d4d34 100644 --- a/bazel/python_rules.bzl +++ b/bazel/python_rules.bzl @@ -1,5 +1,6 @@ """Generates and compiles Python gRPC stubs from proto_library rules.""" +load("@rules_proto//proto:defs.bzl", "ProtoInfo") load( "//bazel:protobuf.bzl", "declare_out_files", diff --git a/bazel/test/python_test_repo/BUILD b/bazel/test/python_test_repo/BUILD index da6d135d8e7..fb23cf3370f 100644 --- a/bazel/test/python_test_repo/BUILD +++ b/bazel/test/python_test_repo/BUILD @@ -14,6 +14,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +load("@rules_proto//proto:defs.bzl", "proto_library") load( "@com_github_grpc_grpc//bazel:python_rules.bzl", "py2and3_test", diff --git a/examples/BUILD b/examples/BUILD index f6dae42ca4c..b6458b74b83 100644 --- a/examples/BUILD +++ b/examples/BUILD @@ -16,10 +16,11 @@ licenses(["notice"]) # 3-clause BSD package(default_visibility = ["//visibility:public"]) -load("//bazel:grpc_build_system.bzl", "grpc_proto_library") +load("@grpc_python_dependencies//:requirements.bzl", "requirement") +load("@rules_proto//proto:defs.bzl", "proto_library") load("//bazel:cc_grpc_library.bzl", "cc_grpc_library") +load("//bazel:grpc_build_system.bzl", "grpc_proto_library") load("//bazel:python_rules.bzl", "py_grpc_library", "py_proto_library") -load("@grpc_python_dependencies//:requirements.bzl", "requirement") grpc_proto_library( name = "auth_sample", diff --git a/examples/python/cancellation/BUILD.bazel b/examples/python/cancellation/BUILD.bazel index 5215991c5ff..0426cf0b943 100644 --- a/examples/python/cancellation/BUILD.bazel +++ b/examples/python/cancellation/BUILD.bazel @@ -15,6 +15,7 @@ # limitations under the License. load("@grpc_python_dependencies//:requirements.bzl", "requirement") +load("@rules_proto//proto:defs.bzl", "proto_library") load("//bazel:python_rules.bzl", "py_grpc_library", "py_proto_library") package(default_testonly = 1) diff --git a/examples/python/multiprocessing/BUILD b/examples/python/multiprocessing/BUILD index f51e235caaa..ea9b6a3ec6f 100644 --- a/examples/python/multiprocessing/BUILD +++ b/examples/python/multiprocessing/BUILD @@ -14,6 +14,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +load("@rules_proto//proto:defs.bzl", "proto_library") load("//bazel:python_rules.bzl", "py_grpc_library", "py_proto_library") proto_library( diff --git a/src/objective-c/grpc_objc_internal_library.bzl b/src/objective-c/grpc_objc_internal_library.bzl index 5e355e0cb26..ad212d13715 100644 --- a/src/objective-c/grpc_objc_internal_library.bzl +++ b/src/objective-c/grpc_objc_internal_library.bzl @@ -23,6 +23,7 @@ # each change must be ported from one to the other. # +load("@rules_proto//proto:defs.bzl", "proto_library") load( "//bazel:generate_objc.bzl", "generate_objc", @@ -39,7 +40,7 @@ def proto_library_objc_wrapper( """proto_library for adding dependencies to google/protobuf protos use_well_known_protos - ignored in open source version """ - native.proto_library( + proto_library( name = name, srcs = srcs, deps = deps, diff --git a/src/proto/grpc/channelz/BUILD b/src/proto/grpc/channelz/BUILD index d105ddb261d..6aa9c12385f 100644 --- a/src/proto/grpc/channelz/BUILD +++ b/src/proto/grpc/channelz/BUILD @@ -14,6 +14,7 @@ licenses(["notice"]) # Apache v2 +load("@rules_proto//proto:defs.bzl", "proto_library") load("//bazel:grpc_build_system.bzl", "grpc_package", "grpc_proto_library") grpc_package( diff --git a/src/proto/grpc/gcp/BUILD b/src/proto/grpc/gcp/BUILD index 1c22d89e464..96e287f7009 100644 --- a/src/proto/grpc/gcp/BUILD +++ b/src/proto/grpc/gcp/BUILD @@ -14,6 +14,8 @@ licenses(["notice"]) # Apache v2 +load("@rules_proto//proto:defs.bzl", "proto_library") + proto_library( name = "alts_handshaker_proto", srcs = [ diff --git a/src/proto/grpc/health/v1/BUILD b/src/proto/grpc/health/v1/BUILD index 8acc1328aba..9caa531c5a7 100644 --- a/src/proto/grpc/health/v1/BUILD +++ b/src/proto/grpc/health/v1/BUILD @@ -14,6 +14,7 @@ licenses(["notice"]) # Apache v2 +load("@rules_proto//proto:defs.bzl", "proto_library") load("//bazel:grpc_build_system.bzl", "grpc_package", "grpc_proto_library") grpc_package( diff --git a/src/proto/grpc/lb/v1/BUILD b/src/proto/grpc/lb/v1/BUILD index 2a6e82a57e7..44ffebe18a2 100644 --- a/src/proto/grpc/lb/v1/BUILD +++ b/src/proto/grpc/lb/v1/BUILD @@ -14,6 +14,7 @@ licenses(["notice"]) # Apache v2 +load("@rules_proto//proto:defs.bzl", "proto_library") load("//bazel:grpc_build_system.bzl", "grpc_package", "grpc_proto_library") grpc_package( diff --git a/src/proto/grpc/reflection/v1alpha/BUILD b/src/proto/grpc/reflection/v1alpha/BUILD index 96f2a8ec598..e7824558fa1 100644 --- a/src/proto/grpc/reflection/v1alpha/BUILD +++ b/src/proto/grpc/reflection/v1alpha/BUILD @@ -14,6 +14,7 @@ licenses(["notice"]) # Apache v2 +load("@rules_proto//proto:defs.bzl", "proto_library") load("//bazel:grpc_build_system.bzl", "grpc_package", "grpc_proto_library") grpc_package( diff --git a/src/proto/grpc/testing/BUILD b/src/proto/grpc/testing/BUILD index 9d71dfbd953..db187e2356a 100644 --- a/src/proto/grpc/testing/BUILD +++ b/src/proto/grpc/testing/BUILD @@ -14,8 +14,9 @@ licenses(["notice"]) # Apache v2 -load("//bazel:grpc_build_system.bzl", "grpc_package", "grpc_proto_library") load("@grpc_python_dependencies//:requirements.bzl", "requirement") +load("@rules_proto//proto:defs.bzl", "proto_library") +load("//bazel:grpc_build_system.bzl", "grpc_package", "grpc_proto_library") load("//bazel:python_rules.bzl", "py_grpc_library", "py_proto_library") grpc_package( diff --git a/src/proto/grpc/testing/proto2/BUILD.bazel b/src/proto/grpc/testing/proto2/BUILD.bazel index 05a4b55f5a6..a28c1b2a672 100644 --- a/src/proto/grpc/testing/proto2/BUILD.bazel +++ b/src/proto/grpc/testing/proto2/BUILD.bazel @@ -1,3 +1,4 @@ +load("@rules_proto//proto:defs.bzl", "proto_library") load("@grpc_python_dependencies//:requirements.bzl", "requirement") package(default_visibility = ["//visibility:public"]) diff --git a/src/python/grpcio_tests/tests/stress/BUILD.bazel b/src/python/grpcio_tests/tests/stress/BUILD.bazel index b8af844373a..01c1509c2a1 100644 --- a/src/python/grpcio_tests/tests/stress/BUILD.bazel +++ b/src/python/grpcio_tests/tests/stress/BUILD.bazel @@ -1,3 +1,4 @@ +load("@rules_proto//proto:defs.bzl", "proto_library") load("@com_github_grpc_grpc//bazel:python_rules.bzl", "py_grpc_library", "py_proto_library") proto_library( diff --git a/third_party/py/python_configure.bzl b/third_party/py/python_configure.bzl index 34501c32121..d46fcb79c8a 100644 --- a/third_party/py/python_configure.bzl +++ b/third_party/py/python_configure.bzl @@ -14,9 +14,9 @@ _PYTHON3_BIN_PATH = "PYTHON3_BIN_PATH" _PYTHON3_LIB_PATH = "PYTHON3_LIB_PATH" _HEADERS_HELP = ( - "Are Python headers installed? Try installing python-dev or " + - "python3-dev on Debian-based systems. Try python-devel or python3-devel " + - "on Redhat-based systems." + "Are Python headers installed? Try installing python-dev or " + + "python3-dev on Debian-based systems. Try python-devel or python3-devel " + + "on Redhat-based systems." ) def _tpl(repository_ctx, tpl, substitutions = {}, out = None): @@ -246,11 +246,11 @@ def _get_python_include(repository_ctx, python_bin): _execute( repository_ctx, [ - python_bin, - "-c", - "import os;" + - "main_header = os.path.join('{}', 'Python.h');".format(include_path) + - "assert os.path.exists(main_header), main_header + ' does not exist.'" + python_bin, + "-c", + "import os;" + + "main_header = os.path.join('{}', 'Python.h');".format(include_path) + + "assert os.path.exists(main_header), main_header + ' does not exist.'", ], error_msg = "Unable to find Python headers for {}".format(python_bin), error_details = _HEADERS_HELP, diff --git a/third_party/upb/BUILD b/third_party/upb/BUILD index fa2ad904f4b..351571c4d90 100644 --- a/third_party/upb/BUILD +++ b/third_party/upb/BUILD @@ -1,3 +1,4 @@ +load("@rules_proto//proto:defs.bzl", "proto_library") load( "//bazel:build_defs.bzl", "generated_file_staleness_test", @@ -56,13 +57,13 @@ config_setting( cc_library( name = "port", + srcs = [ + "upb/port.c", + ], textual_hdrs = [ "upb/port_def.inc", "upb/port_undef.inc", ], - srcs = [ - "upb/port.c", - ], ) cc_library( @@ -159,8 +160,8 @@ cc_library( cc_library( name = "legacy_msg_reflection", srcs = [ - "upb/msg.h", "upb/legacy_msg_reflection.c", + "upb/msg.h", ], hdrs = ["upb/legacy_msg_reflection.h"], copts = select({ @@ -190,8 +191,8 @@ cc_library( "//conditions:default": COPTS, }), deps = [ - ":reflection", ":port", + ":reflection", ":table", ":upb", ], @@ -220,8 +221,8 @@ cc_library( deps = [ ":descriptor_upbproto", ":handlers", - ":reflection", ":port", + ":reflection", ":table", ":upb", ], diff --git a/third_party/upb/bazel/upb_proto_library.bzl b/third_party/upb/bazel/upb_proto_library.bzl index bea611776c4..45b346d8386 100644 --- a/third_party/upb/bazel/upb_proto_library.bzl +++ b/third_party/upb/bazel/upb_proto_library.bzl @@ -8,6 +8,7 @@ load("@bazel_tools//tools/cpp:toolchain_utils.bzl", "find_cpp_toolchain") # copybara:strip_for_google3_begin load("@bazel_skylib//lib:versions.bzl", "versions") +load("@rules_proto//proto:defs.bzl", "ProtoInfo") load("@upb_bazel_version//:bazel_version.bzl", "bazel_version") # copybara:strip_end @@ -22,6 +23,7 @@ def _get_real_short_path(file): if short_path.startswith("../"): second_slash = short_path.index("/", 3) short_path = short_path[second_slash + 1:] + # Sometimes it has another few prefixes like: # _virtual_imports/any_proto/google/protobuf/any.proto # We want just google/protobuf/any.proto. diff --git a/third_party/upb/examples/bazel/BUILD b/third_party/upb/examples/bazel/BUILD index b1c60db0469..9fb5c1f4a64 100644 --- a/third_party/upb/examples/bazel/BUILD +++ b/third_party/upb/examples/bazel/BUILD @@ -1,3 +1,4 @@ +load("@rules_proto//proto:defs.bzl", "proto_library") load("@upb//bazel:upb_proto_library.bzl", "upb_proto_library") proto_library(