ANVIL.CONF(5) File Formats Manual ANVIL.CONF(5)

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:

stego.lock

The configuration is divided into four logical sections:

Tool configuration.

Build configuration.

Test directory layout.

Tag metadata registry.

Global tool configuration.

Build backend selector.

Supported values include:

Default C build pipeline.
Python project backend.
User-defined build pipeline.

Compatibility version for toolchain behavior.

Path to external builder script. Only valid when kern is set to custom.

Defines build inputs and output artifacts.

Primary source file or entry point.

Output executable name.

Minimum tag version requiring make-based builds.

Minimum tag version requiring automake-based builds.

Optional test suite identifier or directory reference.

Defines test directory layout.

Directory containing standard tests.

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.

Command-line options override configuration values.

Missing fields are replaced with implementation-defined defaults.

Unknown fields are ignored unless strict mode is enabled.

Configuration is read before build execution begins.

The configuration file is resolved using the following order:

  1. Current working directory.

  2. Path specified via --stego-dir.

  3. Implementation-defined project root.

Compatible with earlier anvil.conf formats used in amboso.

invil extends parsing behavior while maintaining backward compatibility.

anvil(1), make(1), git(1)

May 13, 2026 Debian