
On 10/05/2017 06:07 AM, Pino Toscano wrote:
The majority of the syntax check is taylored for C sources, so some of the checks already cause false positives for non-C sources (and thus there are exclusion regexps in place).
Instead, just exclude more non-C files from all the checks: - pot files: they are templates for po files (already excluded), and they are automatically generated from sources - pl files: Perl sources, which have own APIs, style, etc; they are helper scripts, not "real" sources - spec/spec.in files: RPM packaging files - js/woff/html.in files: files for web pages - diff/patch files: patches - stp files: SystemTap scripts - syms files: linker symbols files - conf files: generic configuration files - data/cpuinfo files: procinfo/cpuinfo files
There are still some useful syntax checks for performing on ALL files (for example, prohibit_doubled_word). So I'm not quite sure that blindly exempting these files from all possible checks makes sense. Maybe it's worth teaching upstream gnulib syntax-check to make it easier to auto-exclude non-C files from checks that ARE specific to the C language, without weakening the global checks that are good on all files. Maybe even something as simple as adding some sort of language= tag to feed to $(_sc_search_regexp (if not specified, run on all files, but if specified as C, the syntax-check is specific to C-like files, so it limits to .h, .c. .y). I'm adding the gnulib list to get feedback on the idea; maybe Jim Meyering has an opinion as one of the original syntax-check authors.
Python files (.py) are left allowed, since there is at least one syntax check specifically for them.
Signed-off-by: Pino Toscano <ptoscano@redhat.com> --- cfg.mk | 29 +++++++++++++---------------- 1 file changed, 13 insertions(+), 16 deletions(-)
diff --git a/cfg.mk b/cfg.mk index 0f4065b98..44a19594e 100644 --- a/cfg.mk +++ b/cfg.mk @@ -91,7 +91,7 @@ endif
# Files that should never cause syntax check failures. VC_LIST_ALWAYS_EXCLUDE_REGEX = \ - (^(docs/(news(-[0-9]*)?\.html\.in|.*\.patch))|\.(po|fig|gif|ico|png))$$ + \.(po|fig|gif|ico|png|pot|pl|spec|spec\.in|js|woff|diff|patch|html\.in|stp|syms|conf|data|cpuinfo)$$
-- Eric Blake, Principal Software Engineer Red Hat, Inc. +1-919-301-3266 Virtualization: qemu.org | libvirt.org