From d48feb15b4580be907f374c5994c570176669a9e Mon Sep 17 00:00:00 2001 From: Jim Meyering Date: Wed, 11 May 2011 10:41:23 +0200 Subject: [PATCH] maint.mk: adjust previous commit Change "misc" in names to "undesirable_word_seq". "misc" is rarely desirable, in a name ;-) Define and use ignore_undesirable_word_sequence_RE_ properly. --- ChangeLog | 9 +++++---- top/maint.mk | 19 ++++++++++++------- 2 files changed, 17 insertions(+), 11 deletions(-) diff --git a/ChangeLog b/ChangeLog index 00e42d5764..cbe24caef5 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,15 +1,16 @@ 2011-05-11 Jim Meyering maint.mk: improve "can not" detection and generalize rule name - * top/maint.mk (sc_prohibit_misc): Renamed from sc_prohibit_can_not, - since we'll probably add a few more word pairs here. + * top/maint.mk (sc_prohibit_undesirable_word_seq): Renamed from + sc_prohibit_can_not, since we'll probably add a few more word pairs here. Use the same technique as in sc_prohibit_doubled_word, so that we recognize "can not" also when the words are separated by a newline. Suggested by Eric Blake. (perl_filename_lineno_text_): Define. Factored out of... (prohibit_doubled_word_): ...here. Use the new definition. - (prohibit_misc_): New var. Use it here, too. - (prohibit_misc_RE_): New overridable variable. + (prohibit_undesirable_word_seq_): New var. Use it here, too. + (prohibit_undesirable_word_seq_RE_): New overridable variable. + (ignore_undesirable_word_sequence_RE_): New overridable variable. 2011-05-10 Eric Blake diff --git a/top/maint.mk b/top/maint.mk index bb4354fa9b..4088a79131 100644 --- a/top/maint.mk +++ b/top/maint.mk @@ -868,16 +868,21 @@ sc_prohibit_doubled_word: # A regular expression matching undesirable combinations of words like # "can not"; this matches them even when the two words appear on different # lines, but not when there is an intervening delimiter like "#" or "*". -prohibit_misc_RE_ ?= \ +prohibit_undesirable_word_seq_RE_ ?= \ /\bcan\s+not\b/gims -prohibit_misc_ = \ - -e 'while ($(prohibit_misc_RE_))' \ +prohibit_undesirable_word_seq_ = \ + -e 'while ($(prohibit_undesirable_word_seq_RE_))' \ $(perl_filename_lineno_text_) +# Define this to a regular expression that matches +# any filename:dd:match lines you want to ignore. +# The default is to ignore no matches. +ignore_undesirable_word_sequence_RE_ ?= ^$$ -sc_prohibit_misc: - @perl -n -0777 $(prohibit_misc_) $$($(VC_LIST_EXCEPT)) \ - | grep -vE '$(prohibit_misc_RE_)' \ - | grep . && { echo '$(ME): undesirable words' 1>&2; exit 1; } || : +sc_prohibit_undesirable_word_seq: + @perl -n -0777 $(prohibit_undesirable_word_seq_) \ + $$($(VC_LIST_EXCEPT)) \ + | grep -vE '$(ignore_undesirable_word_sequence_RE_)' | grep . \ + && { echo '$(ME): undesirable word sequence' >&2; exit 1; } || : _ptm1 = use "test C1 && test C2", not "test C1 -''a C2" _ptm2 = use "test C1 || test C2", not "test C1 -''o C2" -- 2.30.2