#!/bin/sh # This file is part of the coreboot project. # # Copyright 2015 Google Inc. # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; version 2 of the License. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # DESCR: Checkpatch on .c, .h, & Kconfig files in the tree LC_ALL=C export LC_ALL # GNU BRE syntax list of files to examine INCLUDED_FILES='.*\.[ch]\|Kconfig.*$' EXCLUDED_DIRS="^payloads/libpayload/util/kconfig\|\ ^payloads/libpayload/curses/PDCurses\|\ ^util/kconfig\|\ ^src/vendorcode\|\ ^Documentation" # Space separated list of directories to test if [ "$1" = "" ]; then INCLUDED_DIRS="src util" else INCLUDED_DIRS="$1" fi # We want word splitting here, so disable the shellcheck warnings # shellcheck disable=SC2046,SC2086 FILELIST=$( git ls-files $INCLUDED_DIRS | \ grep $INCLUDED_FILES | \ grep -v $EXCLUDED_DIRS ) for FILE in $FILELIST; do util/lint/checkpatch.pl --show-types --file --quiet "$FILE" done