diff options
Diffstat (limited to 'cppcheck.sh')
-rwxr-xr-x | cppcheck.sh | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/cppcheck.sh b/cppcheck.sh new file mode 100755 index 00000000..841f01d2 --- /dev/null +++ b/cppcheck.sh @@ -0,0 +1,36 @@ +#!/usr/bin/env bash + +# echo >>/tmp/cppcheck.log "cppcheck ${*}" + +cppcheck=$(which cppcheck 2>/dev/null || command -v cppcheck 2>/dev/null) +[ -z "${cppcheck}" ] && echo >&2 "install cppcheck." && exit 1 + +[ -x "/home/costa/src/cppcheck.git/cppcheck" ] && \ + cppcheck="/home/costa/src/cppcheck.git/cppcheck" + +processors=$(grep -c ^processor /proc/cpuinfo) +[ $(( processors )) -lt 1 ] && processors=1 + +base="$(dirname "${0}")" +[ "${base}" = "." ] && base="${PWD}" + +cd "${base}/src" || exit 1 + +[ ! -d "cppcheck-build" ] && mkdir "cppcheck-build" + +file="${1}" +shift +[ "${file}" = "${base}" -o -z "${file}" ] && file="${base}/src" + +"${cppcheck}" \ + -j ${processors} \ + --cppcheck-build-dir="cppcheck-build" \ + -I .. \ + --force \ + --enable=warning,performance,portability,information \ + --library=gnu \ + --library=posix \ + --suppress="unusedFunction:*" \ + --suppress="nullPointerRedundantCheck:*" \ + --suppress="readdirCalled:*" \ + "${file}" "${@}" |