[cmake,ci] Refactored check headers, use FILE_SET.
Refactored libs definitions in CMakeLists to use FILE_SET functionality, which defines public header files. Public header files can then automatically checked for standalone compilation. Adds new make targets:
-
all_verify_interface_header_setsaliased tocheck-headers -
[lib]_verify_interface_header_sets, e.g.MathLib_verify_interface_header_sets
Added checks to "build linux arch" and "build linux petsc" jobs. Did intentionally not refactor Qt-related targets.
Now, out-of-source builds are required! This is because in build-directory generated *_export.h files are part of the FILE_SETs and file set directories are not allowed to be subdirectories of the other file set directories.
- Tests covering your feature were added?
- Any new feature or behaviour change was documented?
- Add this merge request to the changelog
Edited by Lars Bilke