changeset 12863:8fd1fe5e9683

maint.mk: prohibit inclusion of "hash.h" without_use * top/maint.mk (sc_prohibit_hash_without_use): New rule.
author Jim Meyering <meyering@redhat.com>
date Sun, 14 Feb 2010 11:22:29 +0100
parents e5c083172a5c
children 9ab78f8f0368
files ChangeLog top/maint.mk
diffstat 2 files changed, 16 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2010-02-14  Jim Meyering  <meyering@redhat.com>
+
+	maint.mk: prohibit inclusion of "hash.h" without_use
+	* top/maint.mk (sc_prohibit_hash_without_use): New rule.
+
 2010-02-10  Jim Meyering  <meyering@redhat.com>
 
 	maint.mk: prohibit inclusion of "ignore-value.h" without_use
--- a/top/maint.mk
+++ b/top/maint.mk
@@ -367,6 +367,17 @@
 	re='\<($(_xa1)|$(_xa2)) *\('\
 	  $(_header_without_use)
 
+# Extract function names:
+# perl -lne '/^(?:extern )?(?:void|char) \*?(\w+) \(/ and print $1' lib/hash.h
+_hash_re = \
+clear|delete|free|get_(first|next)|insert|lookup|print_statistics|reset_tuning
+_hash_fn = \<($(_hash_re)) *\(
+_hash_struct = (struct )?\<[Hh]ash_(table|tuning)\>
+sc_prohibit_hash_without_use:
+	h='"hash.h"' \
+	re='$(_hash_fn)|$(_hash_struct)'\
+	  $(_header_without_use)
+
 sc_prohibit_safe_read_without_use:
 	@h='"safe-read.h"' re='(\<SAFE_READ_ERROR\>|\<safe_read *\()' \
 	  $(_header_without_use)