summaryrefslogtreecommitdiffstats
path: root/tools/checkdecl.sh
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 14:30:35 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-07 14:30:35 +0000
commit378c18e5f024ac5a8aef4cb40d7c9aa9633d144c (patch)
tree44dfb6ca500d32cabd450649b322a42e70a30683 /tools/checkdecl.sh
parentInitial commit. (diff)
downloadutil-linux-378c18e5f024ac5a8aef4cb40d7c9aa9633d144c.tar.xz
util-linux-378c18e5f024ac5a8aef4cb40d7c9aa9633d144c.zip
Adding upstream version 2.38.1.upstream/2.38.1upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'tools/checkdecl.sh')
-rwxr-xr-xtools/checkdecl.sh21
1 files changed, 21 insertions, 0 deletions
diff --git a/tools/checkdecl.sh b/tools/checkdecl.sh
new file mode 100755
index 0000000..d2c8f95
--- /dev/null
+++ b/tools/checkdecl.sh
@@ -0,0 +1,21 @@
+#!/bin/sh
+
+#
+# This script checks for #ifdef HAVE_DECL_SYMBOL in code.
+#
+# Autoconf docs:
+#
+# Unlike the other autoconf ‘AC_CHECK_*S’ macros, when a symbol is not
+# declared, HAVE_DECL_symbol is defined to ‘0’ instead of leaving
+# HAVE_DECL_symbol undeclared. When you are sure that the check was performed,
+# use HAVE_DECL_symbol in #if.
+#
+
+if [ ! -f ./configure ]; then
+ echo "Not found configure script"
+ exit 1
+fi
+
+for decl in $(awk '/HAVE_DECL_.*ac_have_decl/ { print $2 }' configure); do
+ git grep -nE '[[:blank:]]*#[[:blank:]]*if(ndef|def)[[:blank:]]*'$decl;
+done | sort -u