1#!/bin/bash 2 3DIR="${BASH_SOURCE%/*}" 4 5source "$DIR/checkpatch_inc.sh" 6 7hash $CHECKPATCH 2>/dev/null || 8 { echo >&2 "Could not find checkpatch.pl, aborting"; exit 1; } 9 10usage() { 11 SCR=$(basename "$0") 12 echo "Usage: $SCR [--working] Check working area" 13 echo " $SCR <commit>... Check specific commit(s)" 14 echo " $SCR --diff <commit1> <commit2> Check diff commit1...commit2" 15 echo " $SCR --cached Check staging area" 16 echo " $SCR --help This help" 17 exit 1 18} 19 20op=${1:---working} 21case "$op" in 22 --cached) 23 echo "Checking staging area: " 24 checkstaging 25 ;; 26 --diff) 27 echo "Checking diff (diff $1...$2)" 28 checkdiff "$2" "$3" 29 ;; 30 --working) 31 echo "Checking working area: " 32 checkworking 33 ;; 34 --help|-h) 35 usage 36 ;; 37 *) 38 echo "Checking commit(s):" 39 for c in $*; do checkpatch $c; done 40 ;; 41 42esac 43