anvil.conf,
stego.lock — configuration
file for the anvil build system
The anvil.conf configuration file defines
persistent build configuration, test layout, and version metadata.
The file uses TOML syntax and is typically stored as:
The configuration is divided into four logical sections:
- [anvil]
- Tool configuration.
- [build]
- Build configuration.
- [tests]
- Test directory layout.
- [versions]
- Tag metadata registry.
Global tool configuration.
- kern
- Build backend selector.
Supported values include:
- anvilC
- Default C build pipeline.
- anvilPy
- Python project backend.
- custom
- User-defined build pipeline.
- version
- Compatibility version for toolchain behavior.
- custombuilder
- Path to external builder script. Only valid when kern is
set to custom.
Defines build inputs and output artifacts.
- source
- Primary source file or entry point.
- bin
- Output executable name.
- makevers
- Minimum tag version requiring make-based builds.
- automakevers
- Minimum tag version requiring automake-based builds.
- tests
- Optional test suite identifier or directory reference.
Defines test directory layout.
- testsdir
- Directory containing standard tests.
- errortestsdir
- Directory containing error or negative tests.
Mapping of build tags to human-readable descriptions.
Each entry associates a tag identifier with a release
description.
Entries in this section are informational and do not affect
execution.
- Precedence
- Command-line options override configuration values.
- Defaults
- Missing fields are replaced with implementation-defined defaults.
- Unknown
fields
- Unknown fields are ignored unless strict mode is enabled.
- Evaluation
timing
- Configuration is read before build execution begins.
The configuration file is resolved using the following order:
- Current working directory.
- Path specified via
--stego-dir.
- Implementation-defined project root.
- Legacy
formats
- Compatible with earlier
anvil.conf formats used in
amboso.
- Extension
behavior
- invil extends parsing behavior while maintaining backward
compatibility.