From 58c0f374f101a37b5e1bb22359f40020f235e008 Mon Sep 17 00:00:00 2001 From: Matthew Ahrens Date: Thu, 4 Oct 2018 13:11:45 -0700 Subject: [PATCH] Warn if checking programs are not installed `make checkstyle` silently skips checks if the required programs are not installed (e.g. shellcheck, mandoc). Therefore developers may not realize that they are not getting the full suite of code checks. This also applies to more specific targets like `make shellcheck`. We should print a warning message when a check is skipped due to missing tools. Reviewed-by: Giuseppe Di Natale Reviewed-by: George Melikov Reviewed-by: Brian Behlendorf Reviewed by: Pavel Zakharov Reviewed by: Prakash Surya Signed-off-by: Matthew Ahrens Closes #7984 --- Makefile.am | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/Makefile.am b/Makefile.am index 61bf9e235..50b80b945 100644 --- a/Makefile.am +++ b/Makefile.am @@ -81,6 +81,8 @@ shellcheck: $$(find ${top_srcdir}/scripts/*.sh -type f) \ $$(find ${top_srcdir}/cmd/zed/zed.d/*.sh -type f) \ $$(find ${top_srcdir}/cmd/zpool/zpool.d/* -executable); \ + else \ + echo "skipping shellcheck because shellcheck is not installed"; \ fi mancheck: @@ -89,6 +91,8 @@ mancheck: -o -name 'zpool.8' -o -name 'zdb.8' \ -o -name 'zgenhostid.8' | \ xargs mandoc -Tlint -Werror; \ + else \ + echo "skipping mancheck because mandoc is not installed"; \ fi testscheck: @@ -107,16 +111,22 @@ cppcheck: --suppressions-list=.github/suppressions.txt \ -UHAVE_SSE2 -UHAVE_AVX512F -UHAVE_UIO_ZEROCOPY \ -UHAVE_DNLC ${top_srcdir}; \ + else \ + echo "skipping cppcheck because cppcheck is not installed"; \ fi paxcheck: @if type scanelf > /dev/null 2>&1; then \ ${top_srcdir}/scripts/paxcheck.sh ${top_srcdir}; \ + else \ + echo "skipping paxcheck because scanelf is not installed"; \ fi flake8: @if type flake8 > /dev/null 2>&1; then \ flake8 ${top_srcdir}; \ + else \ + echo "skipping flake8 because flake8 is not installed"; \ fi ctags: