clang-tidy: ignore issues in subproject headers

This repository cannot control the settings and strictness of
subprojects, so we need to disable clang-tidy on those.  Leverage
the HeaderFilter option in the .clang-tidy to ignore issues in header
files and leverage the meson `.clang-tidy-ignore` feature to ignore
issues in C++ parts.

Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I01ff31ec62b364c310fb0aa87dc05883f4be9318
diff --git a/.clang-tidy b/.clang-tidy
index bdf15ab..ed48b96 100644
--- a/.clang-tidy
+++ b/.clang-tidy
@@ -287,7 +287,7 @@
 readability-uppercase-literal-suffix'
 
 WarningsAsErrors: '*'
-HeaderFilterRegex: '.*'
+HeaderFilterRegex: '(?!^subprojects).*'
 CheckOptions:
   - { key: readability-identifier-naming.ClassCase,     value: CamelCase  }
   - { key: readability-identifier-naming.VariableCase,  value: camelBack }
diff --git a/.gitignore b/.gitignore
index d7a8fcb..cd1bc79 100644
--- a/.gitignore
+++ b/.gitignore
@@ -2,6 +2,7 @@
 # subproject directories
 /subprojects/*
 !/subprojects/*.wrap
+!/subprojects/.clang-tidy-ignore
 
 # build directory
 build*/*
diff --git a/subprojects/.clang-tidy-ignore b/subprojects/.clang-tidy-ignore
new file mode 100644
index 0000000..72e8ffc
--- /dev/null
+++ b/subprojects/.clang-tidy-ignore
@@ -0,0 +1 @@
+*