bindc


Usage: bindc <COMMAND>


OPTIONS:


  -h, --help  Print help

SUBCOMMANDS:


  compile
  debug
  test
  generate-bind  Generate a Bind Library based on the input FIDL IR file
  generate-cpp   Generate a C++ header file based on the input Bind Library file
  generate-rust  Generate a Rust file based on the input Bind Library file
  help           Print this message or the help of the given subcommand(s)


compile


Usage: bindc compile [OPTIONS] [INPUT]

Arguments:
  [INPUT]  The bind rules input file. This should be in the format described in //tools/bindc/README.md. This is required unless disable_autobind is true, in which case the driver while bind unconditionally (but only on the user's request.)


OPTIONS:


  -i, --include <INCLUDE>...         The bind library input files. These may be included by the bind rules. They should be in the format described in //tools/bindc/README.md
  -f, --include-file <INCLUDE_FILE>  Specifiy the bind library input files as a file. The file must contain a list of filenames that are bind library input files that may be included by the bind rules. Those files should be in the format described in //tools/bindc/README.md
  -l, --lint                         Check inputs for style guide violations
  -o, --output <OUTPUT>              Output file. The compiler emits a C header file
  -d, --depfile <DEPFILE>            Specify a path for the compiler to generate a depfile. A depfile contain, in Makefile format, the files that this invocation of the compiler depends on including all bind libraries and the bind rules input itself. An output file must be provided to generate a depfile
  -a, --disable-autobind             Disable automatically binding the driver so that the driver must be bound on a user's request
  -h, --help                         Print help

debug


Usage: bindc debug [OPTIONS] --debug <DEVICE_FILE> [INPUT]

Arguments:
  [INPUT]  The bind rules input file. This should be in the format described in //tools/bindc/README.md. This is required unless disable_autobind is true, in which case the driver while bind unconditionally (but only on the user's request.)


OPTIONS:


  -i, --include <INCLUDE>...         The bind library input files. These may be included by the bind rules. They should be in the format described in //tools/bindc/README.md
  -f, --include-file <INCLUDE_FILE>  Specifiy the bind library input files as a file. The file must contain a list of filenames that are bind library input files that may be included by the bind rules. Those files should be in the format described in //tools/bindc/README.md
  -l, --lint                         Check inputs for style guide violations
  -d, --debug <DEVICE_FILE>          A file containing the properties of a specific device, as a list of key-value pairs. This will be used as the input to the bind rules debugger
  -h, --help                         Print help

generate-bind


Generate a Bind Library based on the input FIDL IR file

Usage: bindc generate-bind [OPTIONS] <INPUT>

Arguments:
  <INPUT>  The FIDL IR input file. This should be generated from a FIDL library by the FIDL compiler at //tools/fidl/fidlc using the $fidl_toolchain suffix


OPTIONS:


  -o, --output <OUTPUT>  Output Bind Library file
  -h, --help             Print help

generate-cpp


Generate a C++ header file based on the input Bind Library file

Usage: bindc generate-cpp [OPTIONS] <INPUT>

Arguments:
  <INPUT>  The Bind Library input file


OPTIONS:


  -l, --lint             Check the input for style guide violations
  -o, --output <OUTPUT>  Output C++ header file
  -h, --help             Print help

generate-rust


Generate a Rust file based on the input Bind Library file

Usage: bindc generate-rust [OPTIONS] <INPUT>

Arguments:
  <INPUT>  The Bind Library input file


OPTIONS:


  -l, --lint             Check the input for style guide violations
  -o, --output <OUTPUT>  Output Rust file
  -h, --help             Print help

test


Usage: bindc test [OPTIONS] --test-spec <TEST_SPEC> [INPUT]

Arguments:
  [INPUT]  The bind rules input file. This should be in the format described in //tools/bindc/README.md. This is required unless disable_autobind is true, in which case the driver while bind unconditionally (but only on the user's request.)


OPTIONS:


  -i, --include <INCLUDE>...         The bind library input files. These may be included by the bind rules. They should be in the format described in //tools/bindc/README.md
  -f, --include-file <INCLUDE_FILE>  Specifiy the bind library input files as a file. The file must contain a list of filenames that are bind library input files that may be included by the bind rules. Those files should be in the format described in //tools/bindc/README.md
  -l, --lint                         Check inputs for style guide violations
  -t, --test-spec <TEST_SPEC>        A file containing the test specification
  -h, --help                         Print help