bug-gnulib
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] maint.mk: add per-line exclusions to prohibitions


From: Jim Meyering
Subject: Re: [PATCH] maint.mk: add per-line exclusions to prohibitions
Date: Thu, 01 Mar 2012 23:20:22 +0100

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 <address@hidden>
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  <address@hidden>
+
+       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  <address@hidden>

        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



reply via email to

[Prev in Thread] Current Thread [Next in Thread]