Providing the documentation
The final element of a professional project is, of course, the documentation. It comes in two categories:
- Technical documentation (interfaces, designs, classes, and files)
- General documentation (all other not-as-technical documents)
As we saw in Chapter 10, Generating Documentation, a lot of technical documentation can be generated automatically with CMake by using Doxygen.
Automatic documentation generation
A thing to mention: some projects generate documentation during the build stage and package it with the rest of the project. It's a matter of preference. For this project, we have decided not to do so. You might have a good reason to choose otherwise (such as hosting the documentation online).
Figure 12.7 shows the overview of the execution flow that is used in this process:
To generate documentation for our targets, we'll create...