ores.cmake.component.composite_root

Table of Contents

The composite root CMakeLists.txt: adds the component's parts and nothing else. A composite owns no code, so this is the only file it generates.

projects/CMakeLists.txt adds the component, and the component adds its parts, so a component's parts are listed in exactly one place.

Part order is declared in the model's #+parts: rather than derived, because dependency order is not alphabetical: ores.refdata needs api ahead of core and service, which link it, and a composite whose modeling/ carries its own CMakeLists.txt lists modeling among its parts.

See the Template variable reference for the complete list of available variables and their semantics.

1. Template

The full template source. Edit here and re-tangle with compass build --direct tangle_codegen_templates to regenerate library/templates/cmake_composite_root.mustache.

{{! GENERATED FILE — tangled from projects/ores.codegen/library/templates/ores.cmake.component.composite_root.org. Edit the org source. }}
{{{cmake_license}}}
{{#component}}
{{#parts}}
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/{{part}})
{{/parts}}
{{/component}}

2. See also

Emacs 29.3 (Org mode 9.6.15)