Configuration Reference
All top-level keys of the Ceedling project configuration file, each on its own page.
Project & Build Structure
-
:project— Global Project Settings
Build root, default tasks, parallelism, test preprocessor, release build toggle, crash backtrace, and more.
-
Load and merge additional YAML configuration files into your base project configuration for flexible, composable builds.
-
:test_build— Test Build Settings
Assembly file support for test suite builds.
-
:release_build— Release Build Settings
Output artifact name, assembly support, and additional artifact file copying.
-
:environment— Environment Variables
Define shell environment variables that are set before tools are invoked, with support for inline Ruby string expansion.
Files, Paths & Extensions
-
Directory path lists for source, tests, headers, support files, and libraries. Supports globs, subtractive entries, and inline Ruby string expansion.
-
Fine-grained tailoring of the file collections assembled from
:paths— add or subtract individual files with globs and subtractive entries. -
Override the default filename extensions for source, header, object, assembly, executable, and other file types.
Compilation & Linking
-
:defines— Compilation Symbols
Add
-Dsymbols to compiler command lines for release builds, all tests, or individual test executables matched by name, substring, or regex. -
:flags— Compilation & Link Flags
Add flags to preprocessor, compiler, assembler, and linker command lines for release builds, all tests, or individual test executables via matchers.
-
Specify test, release, and system libraries to include at link time, with configurable flag formats and library search paths.
Frameworks
-
Compile-time symbol definitions to configure Unity's behavior, plus parameterized test case support.
-
CMock code generation options, strict ordering, Unity helper paths, and compile-time symbol definitions.
-
Compile-time symbol definitions to configure CException's behavior.
-
:test_runner— Test Runner Generation
Options passed to Unity's test runner generation script, including additional header includes.
Tools & Extensions
-
Full tool definitions for every build step: compiler, assembler, linker, and test fixture. Includes shortcuts for modifying built-in tools.
-
:plugins— Ceedling Extensions
Enable built-in and custom plugins, and specify additional plugin load paths.