xref: /optee_os/scripts/checkpatch_inc.sh (revision 8e81e2f5366a971afdd2ac47fb8529d1def5feb0)
1#!/bin/bash
2
3CHECKPATCH="${CHECKPATCH:-checkpatch.pl}"
4# checkpatch.pl will ignore the following paths
5CHECKPATCH_IGNORE=$(echo core/lib/lib{fdt,tomcrypt} core/lib/zlib \
6		lib/lib{png,utils,zlib} \
7		core/arch/arm/plat-ti/api_monitor_index_a{9,15}.h)
8_CP_EXCL=$(for p in $CHECKPATCH_IGNORE; do echo ":(exclude)$p" ; done)
9
10function _checkpatch() {
11		# Use --typedefsfile if supported by the checkpatch tool
12		typedefs_opt="--typedefsfile typedefs.checkpatch"
13		$CHECKPATCH --help 2>&1 | grep -q -- --typedefsfile || \
14				typedefs_opt="";
15
16		$CHECKPATCH --quiet --ignore FILE_PATH_CHANGES \
17				--ignore GERRIT_CHANGE_ID --no-tree \
18				$typedefs_opt \
19				-
20}
21
22function checkpatch() {
23		git show --oneline --no-patch $1
24		git format-patch -1 $1 --stdout -- $_CP_EXCL . | _checkpatch
25}
26
27function checkstaging() {
28		git diff --cached -- . $_CP_EXCL | _checkpatch
29}
30
31function checkworking() {
32		git diff -- . $_CP_EXCL | _checkpatch
33}
34
35function checkdiff() {
36		git diff $1...$2 -- . $_CP_EXCL | _checkpatch
37}
38
39