Output directory (single-file mode). Default build/<entity_name>-entity/, where <entity_name> is the first entity’s name in snake_case (Counter → build/counter-entity/)
Single-file mode takes one or more .cam files on the command line
(e.g. a contract plus its .test.cam) and merges them. The first entity
names the default output directory and, on EVM, the main .sol file.
Project mode (--project p.yaml) reads the target, sources and
output_dir from the YAML (relative to the YAML file). -o, --target
and --dump-ast are ignored, with a warning for each. The init-route
rules for factory deploy (V62 / V63) are warnings in single-file
EVM mode and errors in project mode, so use --project … --check before
shipping.
--check-lean with an EVM target has no effect and prints a warning, in
both modes.
On EVM the Foundry harness (foundry.toml, setup.sh, test/) is emitted
only when the program contains tests, properties or invariants.
Any error: diagnostics with error severity, unknown flag value or target, missing input, failed lake build under --check-lean, or a post-codegen E27 (the generated files are left on disk for inspection)