Eric Blake wrote: > _sc_search_regexp would let you skip entire files, but not > individual lines, until now. As proof that adding in a new > per-line regex exception mechanism is useful, I found three > syntax checks that were previously open-coded, only because > they had to exclude individual lines. > > * maint.mk (_sc_search_regexp): Add $exclude parameter. > (sc_prohibit_strcmp, sc_unmarked_diagnostics) > (sc_const_long_option): Use it.
Thanks. That looks fine, but I haven't tested it. However, while reviewing it, I realized that you'll want to adjust slightly. Once I push the following (tomorrow morning), you can add an "export exclude =" line of your own. Or initialize with "export exclude = ^$$" and simplify this part of your patch: - | grep -vE "$${exclude-^$$}" \ + | grep -vE "$$exclude" \ >From 1b98d11e35032bd2ceb1c4a67b66d4655100eeea Mon Sep 17 00:00:00 2001 From: Jim Meyering <meyer...@redhat.com> Date: Thu, 1 Mar 2012 23:13:34 +0100 Subject: [PATCH] maint.mk: avoid spurious failure of _sc_search_regexp-using tests * top/maint.mk: Initialize _sc_search_regexp parameters, so that envvar settings cannot interfere. Otherwise, setting envvars like prohibit=foo require=bar, etc. would cause spurious test failures. --- ChangeLog | 7 +++++++ top/maint.mk | 10 ++++++++++ 2 files changed, 17 insertions(+) diff --git a/ChangeLog b/ChangeLog index ddc7b54..affd664 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2012-03-01 Jim Meyering <meyer...@redhat.com> + + maint.mk: avoid spurious failure of _sc_search_regexp-using tests + * top/maint.mk: Initialize _sc_search_regexp parameters, so that + envvar settings cannot interfere. Otherwise, setting envvars like + prohibit=foo require=bar, etc. would cause spurious test failures. + 2012-02-29 Eric Blake <ebl...@redhat.com> termios: fix pid_t always, not just for tcgetsid diff --git a/top/maint.mk b/top/maint.mk index ee721de..288002b 100644 --- a/top/maint.mk +++ b/top/maint.mk @@ -212,6 +212,16 @@ syntax-check: $(local-check) # when filtering by name via in_files, we explicitly filter out matching # names here as well. +# Initialize each, so that envvar settings cannot interfere. +export require = +export prohibit = +export in_vc_files = +export in_files = +export containing = +export non_containing = +export halt = +export with_grep_options = + # By default, _sc_search_regexp does not ignore case. export ignore_case = _ignore_case = $$(test -n "$$ignore_case" && printf %s -i || :) -- 1.7.9.2.324.g1221