How do I generate PlantUML diagrams?

Table of Contents

For the broader CMake setup, see CMake setup.

Question

How do I (re)generate the PlantUML diagrams the project uses in its docs and site?

Answer

All diagrams

The mad target ("make all diagrams") builds every PlantUML diagram declared in the build:

cmake --build --preset linux-clang-debug-ninja --target mad

A single component's diagram

Component diagrams follow generate_<component>_diagram where <component> uses dots, just like the component name:

cmake --build --preset linux-clang-debug-ninja --target generate_ores.refdata_diagram
cmake --build --preset linux-clang-debug-ninja --target generate_ores.comms_diagram

The system-level diagram

For the whole-project view used on the home page:

cmake --build --preset linux-clang-debug-ninja --target generate_ores_diagram

Prerequisites

  • PlantUML on PATH (typically via apt install plantuml).
  • The project must be configured (cmake --preset ...).

Script

The targets above are wired in CMakeLists.txt via the project's PlantUML helpers; the source .puml files live alongside the component models under projects/<comp>/modeling/ and at projects/modeling/.

Tested by

Manual — the diagrams are regenerated when their .puml sources change.

See also

Emacs 29.1 (Org mode 9.6.6)