# HG changeset patch # User Jim Meyering # Date 1269179614 -3600 # Node ID 44ae789f77b01734b979465856987d36aa9ff7d1 # Parent 12650cb16dc5bda5907ce4dd5702a8da15e16683 maint.mk: prohibit inclusion of "intprops.h" without use * top/maint.mk (sc_prohibit_intprops_without_use): New rule. diff --git a/ChangeLog b/ChangeLog --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2010-03-21 Jim Meyering + + maint.mk: prohibit inclusion of "intprops.h" without use + * top/maint.mk (sc_prohibit_intprops_without_use): New rule. + 2010-03-21 Bruno Haible New module 'grantpt'. diff --git a/top/maint.mk b/top/maint.mk --- a/top/maint.mk +++ b/top/maint.mk @@ -452,6 +452,19 @@ re='\<($(_sig_function_re)) *\(|\<($(_sig_syms_re))\>' \ $(_header_without_use) +# Get the list of symbol names with this: +# perl -lne '/^# *define (\w+)\(/ and print $1' lib/intprops.h|grep -v '^s'|fmt +_intprops_names = \ + TYPE_IS_INTEGER TYPE_TWOS_COMPLEMENT TYPE_ONES_COMPLEMENT \ + TYPE_SIGNED_MAGNITUDE TYPE_SIGNED TYPE_MINIMUM TYPE_MAXIMUM \ + INT_STRLEN_BOUND INT_BUFSIZE_BOUND +_intprops_syms_re = $(subst $(_sp),|,$(strip $(_intprops_names))) +# Prohibit the inclusion of intprops.h without an actual use. +sc_prohibit_intprops_without_use: + @h='"intprops.h"' \ + re='\<($(_intprops_syms_re)) *\(' \ + $(_header_without_use) + sc_obsolete_symbols: @re='\<(HAVE''_FCNTL_H|O''_NDELAY)\>' \ msg='do not use HAVE''_FCNTL_H or O'_NDELAY \