toolchain

Builds and caches the compiler components that native and firmware builds compile against.

Group toolchain

Detailed description

libtoolchain assembles a toolchain for a target from components such as compiler-rt, avr-libc and captured C++ headers. ToolchainBootstrapService builds each component in the background, keeps the results in an on-disk cache, and hands a consumer a SysrootHandle when every component it needs is ready.

Classes

Class What it is
BootstrapWorker Single worker thread that runs Component recipes serially
CompilerInterface Abstraction over the underlying compiler/archiver
Component One buildable toolchain component (compiler-rt, avr-libc, etc.)
ComponentArtefact What one built or staged Component contributes to a SysrootHandle
ComponentBuildContext Per-build state handed to each Component's recipe callable
Manifest On-disk JSON record of every component's bootstrap state
NullCompilerInterface Test/fixture compiler that records calls without doing real work
SysrootHandle Consumer-facing aggregate of every component a Toolchain depends on
Toolchain Top-level manifest for one assembled toolchain
ToolchainBootstrapService Lazy + async orchestration of every toolchain's component builds
ToolchainRegistry Process-wide registry of every Component + Toolchain shipped with OctoMY
In this section