diff --git a/rules/depsets/foo.bzl b/rules/depsets/foo.bzl index 7b7c64c49..70e6f75bb 100644 --- a/rules/depsets/foo.bzl +++ b/rules/depsets/foo.bzl @@ -34,11 +34,15 @@ def _foo_binary_impl(ctx): foocc = ctx.executable._foocc out = ctx.outputs.out trans_srcs = get_transitive_srcs(ctx.files.srcs, ctx.attr.deps) - srcs_list = trans_srcs.to_list() + + args = ctx.actions.args() + args.add(out) + args.add_all(trans_srcs) + ctx.actions.run( executable = foocc, - arguments = [out.path] + [src.path for src in srcs_list], - inputs = srcs_list, + arguments = [args], + inputs = trans_srcs, tools = [foocc], outputs = [out], )