Headercheck

Infrastructure for the optional headercheck validation target.

ENABLE_HEADERCHECK

Enable the CMake reimplementation of the old autotools make headercheck feature.

The feature has historically been somewhat fragile, so it is disabled by default.

setup_headercheck

Collect the public header files of the current module and create the global headercheck target if it does not exist yet.

exclude_from_headercheck

Remove the given header files from the global headercheck list.

exclude_dir_from_headercheck

Remove all *.hh files in the current directory from the global headercheck list.

exclude_subdir_from_headercheck

Remove all *.hh files below the given subdirectory from the global headercheck list.

exclude_all_but_from_headercheck

Remove all *.hh files in the current directory from the global headercheck list except the specified ones.

finalize_headercheck

Create the individual headercheck compilation targets for all headers that remain in the global headercheck list.