Runs a binary as a build action. This rule does not require Bash (unlike native.genrule()).
This fork of bazel-skylib's run_binary adds directory output support and better makevar expansions.
run_binary
run_binary(name, tool, srcs, args, env, outs, out_dirs, output_dir, kwargs)
Runs a binary as a build action.
This rule does not require Bash (unlike native.genrule
).
PARAMETERS
Name |
Description |
Default Value |
name |
The target name |
none |
tool |
The tool to run in the action.
Must be the label of a *_binary rule of a rule that generates an executable file, or of a file that can be executed as a subprocess (e.g. an .exe or .bat file on Windows or a binary with executable permission on Linux). This label is available for $(location) expansion in args and env . |
none |
srcs |
Additional inputs of the action.
These labels are available for $(location) expansion in args and env . |
[] |
args |
Command line arguments of the binary.
Subject to $(location) and makevar expansions. |
[] |
env |
Environment variables of the action.
Subject to $(location) and makevar expansions. |
{} |
outs |
Output files generated by the action.
These labels are available for $(location) expansion in args and env .
Output files cannot be nested within output directories in out_dirs. |
[] |
out_dirs |
Output directories generated by the action.
These labels are not available for $(location) expansion in args and env sincew they are not pre-declared labels created via attr.output_list(). Output directories are declared instead by ctx.actions.declare_directory .
Output directories cannot be nested within other output directories in out_dirs. |
[] |
output_dir |
If set to True then an output directory named the same as the target name is added to out_dirs.
Deprecated. For backward compatability with @aspect_bazel_lib 1.x. Use out_dirs instead. |
False |
kwargs |
Additional arguments |
none |