]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
syntax-check: Improve sc_prohibit_config_h_in_headers check
authorAndrea Bolognani <abologna@redhat.com>
Mon, 23 May 2022 13:46:24 +0000 (15:46 +0200)
committerAndrea Bolognani <abologna@redhat.com>
Tue, 24 May 2022 09:09:40 +0000 (11:09 +0200)
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@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
build-aux/syntax-check.mk

index 8d30b0e75abd6589ad6126168d5cfc4908555a85..5244d4ee2ddce26f5e54237a5f36f4f1ff3cb83e 100644 (file)
@@ -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$$