Explorar o código

Add a check_protobuf_required_bazel_version() for use in WORKSPACEs

Fahrzin Hemmati %!s(int64=7) %!d(string=hai) anos
pai
achega
35119e39a0
Modificáronse 2 ficheiros con 14 adicións e 0 borrados
  1. 2 0
      examples/WORKSPACE
  2. 12 0
      protobuf.bzl

+ 2 - 0
examples/WORKSPACE

@@ -5,6 +5,8 @@ http_archive(
     strip_prefix = "protobuf-master",
     urls = ["https://github.com/google/protobuf/archive/master.zip"],
 )
+load("@com_google_protobuf//:protobuf.bzl", "check_protobuf_required_bazel_version")
+check_protobuf_required_bazel_version()
 
 # This com_google_protobuf_cc repository is required for cc_proto_library
 # rule. It provides protobuf C++ runtime. Note that it actually is the same

+ 12 - 0
protobuf.bzl

@@ -400,3 +400,15 @@ def internal_protobuf_py_tests(
         srcs=[s],
         main=s,
         **kargs)
+
+
+def check_protobuf_required_bazel_version():
+  """For WORKSPACE files, to check the installed version of bazel.
+
+  This ensures bazel supports our approach to proto_library() depending on a
+  copied filegroup. (Fixed in bazel 0.5.4)
+  """
+  expected = apple_common.dotted_version("0.5.4")
+  current = apple_common.dotted_version(native.bazel_version)
+  if current.compare_to(expected) < 0:
+    fail("Bazel must be newer than 0.5.4")