forked from netdata/netdata
-
Notifications
You must be signed in to change notification settings - Fork 0
/
cppcheck.sh
executable file
·36 lines (27 loc) · 941 Bytes
/
cppcheck.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
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}" "${@}"