aboutsummaryrefslogtreecommitdiffstats
path: root/etc/woodpecker/analysis.sh
diff options
context:
space:
mode:
Diffstat (limited to 'etc/woodpecker/analysis.sh')
-rwxr-xr-xetc/woodpecker/analysis.sh17
1 files changed, 10 insertions, 7 deletions
diff --git a/etc/woodpecker/analysis.sh b/etc/woodpecker/analysis.sh
index 330d140..5a227ce 100755
--- a/etc/woodpecker/analysis.sh
+++ b/etc/woodpecker/analysis.sh
@@ -1,21 +1,24 @@
#!/bin/sh -e
std="c99"
+NProc=$(( $(nproc) / 4 ))
+if [ -z "$NProc" ] || [ "$NProc" -lt 1 ]; then NProc="1"; fi
run_cppcheck() {
cppcheck --std="$std" --enable=performance,portability \
--force --quiet --inline-suppr --error-exitcode=1 \
- --max-ctu-depth=8 -j"$(nproc)" \
- $(make OPT_DEP_DEFAULT="$1" dump_cppflags) \
+ --max-ctu-depth=8 -j"$NProc" \
+ $(make OPT_DEP_DEFAULT="$1" dump_cppflags) -DDEBUG \
--suppress=varFuncNullUB --suppress=uninitvar \
- *.c
+ $(git ls-files *.c)
}
run_tidy() {
checks="$(sed '/^#/d' etc/woodpecker/clang-tidy-checks | paste -d ',' -s)"
- clang-tidy --warnings-as-errors="*" --checks="$checks" --quiet *.c \
- -- -std="$std" $(make OPT_DEP_DEFAULT="$1" dump_cppflags)
+ git ls-files *.c | xargs -P"$NProc" -I{} clang-tidy --quiet \
+ --warnings-as-errors="*" --checks="$checks" {} \
+ -- -std="$std" $(make OPT_DEP_DEFAULT="$1" dump_cppflags) -DDEBUG
}
-run_cppcheck "0"; run_cppcheck "1";
-run_tidy "0"; run_tidy "1";
+run_cppcheck "0" & run_cppcheck "1" & run_tidy "0" & run_tidy "1";
+wait