In its current form, the check will not only catch the intended #include <config.h> but also stuff like #include <wireshark/config.h> #include "qemu_interop_config.h" #include <meson-config.h> The last one is problematic, because it's used in config.h itself. Making the pattern more strict allows us to drop the exception. Signed-off-by: Andrea Bolognani <abologna@xxxxxxxxxx> --- build-aux/syntax-check.mk | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/build-aux/syntax-check.mk b/build-aux/syntax-check.mk index 8d30b0e75a..5244d4ee2d 100644 --- a/build-aux/syntax-check.mk +++ b/build-aux/syntax-check.mk @@ -694,7 +694,7 @@ sc_prohibit_include_public_headers_brackets: # <config.h> is only needed in .c files; .h files do not need it since # .c files must include config.h before any other .h. sc_prohibit_config_h_in_headers: - @prohibit='^# *include\>.*config\.h' \ + @prohibit='^# *include *[<"]config\.h' \ in_vc_files='\.h$$' \ halt='headers should not include <config.h>' \ $(_sc_search_regexp) @@ -1707,6 +1707,3 @@ exclude_file_name_regexp--sc_prohibit_backslash_alignment = \ exclude_file_name_regexp--sc_prohibit_select = \ ^build-aux/syntax-check\.mk|src/util/vireventglibwatch\.c|tests/meson\.build$$ - -exclude_file_name_regexp--sc_prohibit_config_h_in_headers = \ - ^config\.h$$ -- 2.35.3