#!/usr/bin/env bash set -euo pipefail rootdir="$(readlink -f "$(dirname "$0")/..")" scriptsdir="${rootdir}/scripts" outputfile="checkpatch.out" mapfile -t src_files < <( "${scriptsdir}/list-source-files" "${rootdir}" | \ grep -vE '^debian/|^fcst/linux-patches|patch$|pdf$|png$|^iscsi-scst/usr|^qla|^scripts/|^scstadmin/|^usr/|^www/' | \ while read -r filename; do echo "${rootdir}/$filename"; done) "${scriptsdir}/checkpatch" -f "${src_files[@]}" 1> "${outputfile}" || true errors=$(grep -c '^ERROR' "${outputfile}" || true) warnings=$(grep -c '^WARNING' "${outputfile}" || true) checks=$(grep -c '^CHECK' "${outputfile}" || true) echo "${errors} errors / ${warnings} warnings / ${checks} checks." grep -E '^WARNING|^ERROR|^CHECK' "${outputfile}" | sort | sed 's/^CHECK:CAMELCASE: Avoid CamelCase:.*/CHECK:CAMELCASE Avoid CamelCase/' | uniq -c