summaryrefslogtreecommitdiff
path: root/kythe/cxx/indexer/proto/testdata/proto_verifier_test.bzl
diff options
context:
space:
mode:
Diffstat (limited to 'kythe/cxx/indexer/proto/testdata/proto_verifier_test.bzl')
-rw-r--r--kythe/cxx/indexer/proto/testdata/proto_verifier_test.bzl12
1 files changed, 11 insertions, 1 deletions
diff --git a/kythe/cxx/indexer/proto/testdata/proto_verifier_test.bzl b/kythe/cxx/indexer/proto/testdata/proto_verifier_test.bzl
index 19a835342..2cd5a93c5 100644
--- a/kythe/cxx/indexer/proto/testdata/proto_verifier_test.bzl
+++ b/kythe/cxx/indexer/proto/testdata/proto_verifier_test.bzl
@@ -40,7 +40,17 @@ def get_proto_files_and_proto_paths(protolibs):
for src in info.direct_sources:
toplevel_srcs.append(src)
all_srcs = depset([], transitive = [lib[ProtoInfo].transitive_sources for lib in protolibs])
- proto_paths = depset(transitive = [lib[ProtoInfo].transitive_proto_path for lib in protolibs])
+ proto_paths = depset(
+ transitive = [lib[ProtoInfo].transitive_proto_path for lib in protolibs] +
+ # Workaround for https://github.com/bazelbuild/bazel/issues/7964.
+ # Since we can't rely on ProtoInfo to provide accurate roots, generate them here.
+ [depset([
+ src.root.path
+ for src in depset(toplevel_srcs, transitive = [all_srcs], order = "postorder").to_list()
+ if src.root.path
+ ])],
+ order = "postorder",
+ )
return toplevel_srcs, all_srcs, proto_paths
def _proto_extract_kzip_impl(ctx):