From c11cd7f9348005232ca62ccbeabbd30e396861ac Mon Sep 17 00:00:00 2001 From: Turbo Fredriksson Date: Mon, 18 May 2015 20:49:24 +0200 Subject: [PATCH] Style check shell scripts If the command "shellcheck" exists, then find all shell scripts and run shellcheck on them. * Use 'gcc' format with shellcheck. * Exclude zfs-script-config.sh (which isn't really a script). Signed-off-by: Turbo Fredriksson Signed-off-by: Brian Behlendorf Closes #3428 --- Makefile.am | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/Makefile.am b/Makefile.am index 49b417a81d..788122d2aa 100644 --- a/Makefile.am +++ b/Makefile.am @@ -40,10 +40,22 @@ dist-hook: sed -i 's/Release:[[:print:]]*/Release: $(RELEASE)/' \ $(distdir)/META -checkstyle: +checkstyle: cstyle shellcheck + +cstyle: @find ${top_srcdir} -name '*.[hc]' ! -name 'zfs_config.*' \ ! -name '*.mod.c' -type f -exec scripts/cstyle.pl {} \+ +shellcheck: + @if type shellcheck > /dev/null 2>&1; then \ + (find ${top_srcdir} -type f -name '*.sh.in' -o -type f \ + -name '*.sh'; find etc/init.d/zfs*.in -type f) | \ + grep -v 'zfs-script-config' | \ + while read file; do \ + shellcheck --format gcc "$$file"; \ + done; \ + fi + ctags: $(RM) $(top_srcdir)/tags find $(top_srcdir) -name .git -prune -o -name '*.[hc]' | xargs ctags