cmc: the component manifest compiler

Reviewed on: 2019-07-11

cmc provides validation and manipulation logic for component manifest files. This tool is largely intended to be used by build rules, and not directly invoked by humans. Information on how to use it is available by running the tool with --help.

cmc is purely a host tool, and is not built for nor available on fuchsia systems.


This project can be added to builds by including --with //src/sys/cmc to the fx set invocation.


cmc is available at host_x64/cmc in the build output path after an fx build invocation.

$ ./out/default/host_x64/cmc --help


Unit tests for cmc are available in the cmc_bin_tests binary, which can be invoked with the fx run-host-tests command:

$ fx run-host-tests --names cmc_bin_test

Integration tests are also available in the cmc_integration_test package.

$ fx run-test cmc_integration_test

Source layout

The entrypoint is located in src/, unit tests are co-located with the code, and the integration tests live in tests/.