From 8d5e8b15b85ae47f203ce8224414e75dae52437b Mon Sep 17 00:00:00 2001
From: Andres Freund <andres@anarazel.de>
Date: Sat, 24 Sep 2022 11:02:21 -0700
Subject: [PATCH v15 14/14] meson: wip: headerchecks cpluspluschecks

---
 src/include/meson.build            | 4 ++--
 src/meson.build                    | 7 +++++++
 src/tools/pginclude/cpluspluscheck | 5 +++--
 src/tools/pginclude/headerscheck   | 4 ++--
 4 files changed, 14 insertions(+), 6 deletions(-)

diff --git a/src/include/meson.build b/src/include/meson.build
index 28ed9011c70..0f4ac9fdf68 100644
--- a/src/include/meson.build
+++ b/src/include/meson.build
@@ -42,8 +42,8 @@ config_paths_data.set_quoted('MANDIR', dir_prefix / dir_man)
 
 var_cc = ' '.join(cc.cmd_array())
 var_cpp = ' '.join(cc.cmd_array() + ['-E'])
-var_cflags = ' '.join(cflags + cflags_warn)
-var_cxxflags = ' '.join(cxxflags + cxxflags_warn)
+var_cflags = ' '.join([cflags, cflags_warn, '-Wall'])
+var_cxxflags = ' '.join([cxxflags, cxxflags_warn, '-Wall'])
 var_cppflags = ' '.join(cppflags)
 var_cflags_sl = '-fPIC' #FIXME
 var_ldflags = ' '.join(ldflags)
diff --git a/src/meson.build b/src/meson.build
index ca99db42baa..1891e11cb26 100644
--- a/src/meson.build
+++ b/src/meson.build
@@ -269,3 +269,10 @@ install_data(
 install_data(
   'makefiles/pgxs.mk',
   install_dir: dir_pgxs / 'src' / 'makefiles')
+
+
+run_target('headerscheck',
+  command: [files('tools/pginclude/headerscheck'), '@SOURCE_ROOT@', '@BUILD_ROOT@'])
+
+run_target('cpluspluscheck',
+  command: [files('tools/pginclude/cpluspluscheck'), '@SOURCE_ROOT@', '@BUILD_ROOT@'])
diff --git a/src/tools/pginclude/cpluspluscheck b/src/tools/pginclude/cpluspluscheck
index b393f2a2eaa..37f3bfcaaf1 100755
--- a/src/tools/pginclude/cpluspluscheck
+++ b/src/tools/pginclude/cpluspluscheck
@@ -31,6 +31,7 @@ me=`basename $0`
 
 # These switches are g++ specific, you may override if necessary.
 CXXFLAGS=${CXXFLAGS:- -fsyntax-only -Wall}
+CXXFLAGS="$CXXFLAGS -Wno-register"
 
 # Pull some info from configure's results.
 MGLOB="$builddir/src/Makefile.global"
@@ -166,9 +167,9 @@ do
 	# Some subdirectories need extra -I switches.
 	case "$f" in
 	    src/pl/plperl/*)
-		EXTRAINCLUDES="$perl_includespec" ;;
+		EXTRAINCLUDES="$perl_includespec"; continue; ;;
 	    src/pl/plpython/*)
-		EXTRAINCLUDES="$python_includespec" ;;
+		EXTRAINCLUDES="$python_includespec"; continue; ;;
 	    src/interfaces/ecpg/*)
 		EXTRAINCLUDES="-I $builddir/src/interfaces/ecpg/include -I $srcdir/src/interfaces/ecpg/include" ;;
 		src/backend/parser/*)
diff --git a/src/tools/pginclude/headerscheck b/src/tools/pginclude/headerscheck
index 2a39856f88c..cc195ccc88f 100755
--- a/src/tools/pginclude/headerscheck
+++ b/src/tools/pginclude/headerscheck
@@ -149,9 +149,9 @@ do
 	# Some subdirectories need extra -I switches.
 	case "$f" in
 	    src/pl/plperl/*)
-		EXTRAINCLUDES="$perl_includespec" ;;
+		EXTRAINCLUDES="$perl_includespec"; continue; ;;
 	    src/pl/plpython/*)
-		EXTRAINCLUDES="$python_includespec" ;;
+		EXTRAINCLUDES="$python_includespec"; continue; ;;
 	    src/interfaces/ecpg/*)
 		EXTRAINCLUDES="-I $builddir/src/interfaces/ecpg/include -I $srcdir/src/interfaces/ecpg/include" ;;
 	    src/backend/parser/*)
-- 
2.37.3.542.gdd3f6c4cae

