|
|
|
@ -9,16 +9,16 @@ def generate_cc_impl(ctx): |
|
|
|
|
protos = [f for src in ctx.attr.srcs for f in src.proto.direct_sources] |
|
|
|
|
includes = [f for src in ctx.attr.srcs for f in src.proto.transitive_imports] |
|
|
|
|
outs = [] |
|
|
|
|
# label_len is length of the path from WORKSPACE root to the location of this build file |
|
|
|
|
label_len = len(ctx.label.package) + 1 |
|
|
|
|
if ctx.executable.plugin: |
|
|
|
|
outs += [proto.basename[:-len(".proto")] + ".grpc.pb.h" for proto in protos] |
|
|
|
|
outs += [proto.basename[:-len(".proto")] + ".grpc.pb.cc" for proto in protos] |
|
|
|
|
outs += [proto.path[label_len:-len(".proto")] + ".grpc.pb.h" for proto in protos] |
|
|
|
|
outs += [proto.path[label_len:-len(".proto")] + ".grpc.pb.cc" for proto in protos] |
|
|
|
|
else: |
|
|
|
|
outs += [proto.basename[:-len(".proto")] + ".pb.h" for proto in protos] |
|
|
|
|
outs += [proto.basename[:-len(".proto")] + ".pb.cc" for proto in protos] |
|
|
|
|
outs += [proto.path[label_len:-len(".proto")] + ".pb.h" for proto in protos] |
|
|
|
|
outs += [proto.path[label_len:-len(".proto")] + ".pb.cc" for proto in protos] |
|
|
|
|
out_files = [ctx.new_file(out) for out in outs] |
|
|
|
|
# The following should be replaced with ctx.configuration.buildout |
|
|
|
|
# whenever this is added to Skylark. |
|
|
|
|
dir_out = out_files[0].dirname[:-len(protos[0].dirname)] |
|
|
|
|
dir_out = str(ctx.genfiles_dir.path) |
|
|
|
|
|
|
|
|
|
arguments = [] |
|
|
|
|
if ctx.executable.plugin: |
|
|
|
|