include all (internal non-generated) headers in clang-tidy checks
The EXTERNALS_AS_SYSTEM CMake option will be removed from this since it is not necessary and can be solved via a more selective regular expression.
We need to exclude the generated headers which could be achieved by the (cli|gui|lib|oss-fuzz|test|triage)\/(?!ui_|temp\/).* regular expression but unfortunately LLVM doesn't support negative lookahead in their implementation.
We need to exclude the generated headers which could be achieved by the
(cli|gui|lib|oss-fuzz|test|triage)\/(?!ui_|temp\/).*regular expression but unfortunately LLVM doesn't support negative lookahead in their implementation.
I adjusted the regex to (cli|gui|lib|oss-fuzz|test|triage)\/[a-z]+\.h so it will only use files from the same depth which achieves the same since the generated files always live in temp subfolders.
I will look into the explicit false positives/suppression in a separate PR. I will file tickets upstream and it seems we might still have some false positives ourselves (or simply some leftover suppressions).
I will also look into the readability-redundant-declaration at a later date as it requires some refactoring and does not cause any issues.