This inlines the various variables. This build excessively over-applied DRY which made it difficult to identify where the properties were being set. This now follows the CMake recommendations.
The headers do not need to be added to the source list. The dependency tracking will figure them out. This reduces complexity in the enumeration.
Reorder the declarations so that the generated files are first, the library second, and the executable third.
This inlines the various variables. This build excessively over-applied DRY which made it difficult to identify where the properties were being set. This now follows the CMake recommendations.
The headers do not need to be added to the source list. The dependency tracking will figure them out. This reduces complexity in the enumeration.
Reorder the declarations so that the generated files are first, the library second, and the executable third.