From e4088204eecd75cf067b04ecb6774fce9e60dd87 Mon Sep 17 00:00:00 2001 From: Daniel Agar Date: Sat, 25 Aug 2018 13:17:31 -0400 Subject: [PATCH] shellcheck ignore array references for now (SC2039) and run everywhere --- Jenkinsfile | 2 +- Makefile | 4 ++-- Tools/run-shellcheck.sh | 2 ++ 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index 8cb61c13d7..b0f158fc58 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -170,7 +170,7 @@ pipeline { steps { sh 'export' sh 'make distclean' - sh 'make shellcheck' + sh 'make shellcheck_all' sh 'make distclean' } } diff --git a/Makefile b/Makefile index 5f9c353d5a..7384676034 100644 --- a/Makefile +++ b/Makefile @@ -325,7 +325,7 @@ python_coverage: # static analyzers (scan-build, clang-tidy, cppcheck) # -------------------------------------------------------------------- -.PHONY: scan-build posix_sitl_default-clang clang-tidy clang-tidy-fix clang-tidy-quiet cppcheck shellcheck +.PHONY: scan-build posix_sitl_default-clang clang-tidy clang-tidy-fix clang-tidy-quiet cppcheck shellcheck_all scan-build: @export CCC_CC=clang @@ -360,7 +360,7 @@ cppcheck: posix_sitl_default @cppcheck -i$(SRC_DIR)/src/examples --enable=performance --std=c++11 --std=c99 --std=posix --project=$(SRC_DIR)/build/posix_sitl_default/compile_commands.json --xml-version=2 2> $(SRC_DIR)/build/cppcheck/cppcheck-result.xml > /dev/null @cppcheck-htmlreport --source-encoding=ascii --file=$(SRC_DIR)/build/cppcheck/cppcheck-result.xml --report-dir=$(SRC_DIR)/build/cppcheck --source-dir=$(SRC_DIR)/src/ -shellcheck: +shellcheck_all: @$(SRC_DIR)/Tools/run-shellcheck.sh $(SRC_DIR)/ROMFS/px4fmu_common/ @make px4fmu-v2_default shellcheck diff --git a/Tools/run-shellcheck.sh b/Tools/run-shellcheck.sh index c5760abefb..a11d387d8f 100755 --- a/Tools/run-shellcheck.sh +++ b/Tools/run-shellcheck.sh @@ -24,12 +24,14 @@ echo "Running shellcheck in '$search_directory'." # SC2086: double quote to prevent globbing and word splitting # SC2166: allow the form [ $OUTPUT_MODE == fmu -o $OUTPUT_MODE == io ] # SC2148: allow files w/o shebang +# SC2039: In POSIX sh, array references are undefined. TODO: fix this shellcheck -x \ -e SC1008 \ -e SC2086 \ -e SC2121 \ -e SC2148 \ -e SC2166 \ + -e SC2039 \ $scripts ret=$? if [ $ret -ne 0 ]; then