[libvirt PATCH 04/13] syntax-check: Improve sc_prohibit_config_h_in_headers check

Andrea Bolognani posted 13 patches 3 years, 8 months ago
[libvirt PATCH 04/13] syntax-check: Improve sc_prohibit_config_h_in_headers check
Posted by Andrea Bolognani 3 years, 8 months ago
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>
---
 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