Filter out clang-tidy unknown arguments.

Bug: 110538415
Test: build with WITH_TIDY=1
Change-Id: I77cd5dec834215fa22742eae6d96aabecadd11ab
diff --git a/core/definitions.mk b/core/definitions.mk
index 9f958fa..aab8e53 100644
--- a/core/definitions.mk
+++ b/core/definitions.mk
@@ -105,6 +105,9 @@
 # All tests that should be skipped in presubmit check.
 ALL_DISABLED_PRESUBMIT_TESTS :=
 
+# CLANG_TIDY_UNKNOWN_CFLAGS is generated by build/soong.
+sanitize_tidy_cflags = $(filter-out $(CLANG_TIDY_UNKNOWN_CFLAGS),$1)
+
 ###########################################################
 ## Debugging; prints a variable list to stdout
 ###########################################################
@@ -1264,7 +1267,7 @@
 define clang-tidy-cpp
 $(hide) $(PATH_TO_CLANG_TIDY) $(PRIVATE_TIDY_FLAGS) \
   -checks=$(PRIVATE_TIDY_CHECKS) \
-  $< -- $(transform-cpp-to-o-compiler-args)
+  $< -- $(call sanitize_tidy_cflags,$(transform-cpp-to-o-compiler-args))
 endef
 
 ifneq (,$(filter 1 true,$(WITH_TIDY_ONLY)))
@@ -1312,7 +1315,7 @@
 define clang-tidy-c
 $(hide) $(PATH_TO_CLANG_TIDY) $(PRIVATE_TIDY_FLAGS) \
   -checks=$(PRIVATE_TIDY_CHECKS) \
-  $< -- $(transform-c-to-o-compiler-args)
+  $< -- $(call sanitize_tidy_cflags,$(transform-c-to-o-compiler-args))
 endef
 
 ifneq (,$(filter 1 true,$(WITH_TIDY_ONLY)))
@@ -1382,7 +1385,7 @@
 define clang-tidy-host-cpp
 $(hide) $(PATH_TO_CLANG_TIDY) $(PRIVATE_TIDY_FLAGS) \
   -checks=$(PRIVATE_TIDY_CHECKS) \
-  $< -- $(transform-host-cpp-to-o-compiler-args)
+  $< -- $(call sanitize_tidy_cflags,$(transform-host-cpp-to-o-compiler-args))
 endef
 
 ifneq (,$(filter 1 true,$(WITH_TIDY_ONLY)))
@@ -1434,7 +1437,7 @@
 define clang-tidy-host-c
 $(hide) $(PATH_TO_CLANG_TIDY) $(PRIVATE_TIDY_FLAGS) \
   -checks=$(PRIVATE_TIDY_CHECKS) \
-  $< -- $(transform-host-c-to-o-compiler-args)
+  $< -- $(call sanitize_tidy_cflags,$(transform-host-c-to-o-compiler-args))
 endef
 
 ifneq (,$(filter 1 true,$(WITH_TIDY_ONLY)))