meson: Define our own clang-tidy target

meson's target has a few issues:
- Runs on all source files regardless if they're included in the
  build or not
- Doesn't have any dependencies on generated sources which means we
  have to do a full build first before we can run clang-tidy
- Doesn't allow us to pass any extra arguments

To work around these, let's define our own clang-tidy target instead
using llvm's run-clang-tidy script. Alongside the clang-tidy target,
let's start keeping track of all generated sources which we make the
clang-tidy target depend on. We also add a new target which will only
generate source files which is useful for setting up the source tree
for running code analysis against it.
This commit is contained in:
Daan De Meyer
2025-04-24 12:36:36 +02:00
parent 10594762c7
commit 44e86153d1
24 changed files with 99 additions and 30 deletions
+2
View File
@@ -189,6 +189,7 @@ foreach item : [['af', af_list_txt, 'af', ''],
generated_gperf_headers += [target1, target2]
endforeach
generated_sources += generated_gperf_headers
basic_sources += generated_gperf_headers
############################################################
@@ -274,6 +275,7 @@ filesystem_switch_case_h = custom_target(
'@INPUT@'],
capture : true)
generated_sources += [filesystem_list_h, filesystem_switch_case_h, filesystems_gperf_h]
basic_sources += [filesystem_list_h, filesystem_switch_case_h, filesystems_gperf_h]
libbasic_static = static_library(