| #!/usr/bin/env sh |
| # |
| # SPDX-License-Identifier: GPL-2.0-only |
| |
| # DESCR: Check for superfluous whitespace in the tree |
| |
| LINTDIR="$( |
| cd -- "$(dirname "$0")" > /dev/null 2>&1 || return |
| pwd -P |
| )" |
| # shellcheck source=helper_functions.sh |
| . "${LINTDIR}/helper_functions.sh" |
| |
| EXCLUDELIST='^src/vendorcode/|^util/kconfig/|^util/nvidia/cbootimage$|^util/goswid$|COPYING|LICENSE|README|_shipped$|\.patch$|\.bin$|\.hex$|\.jpg$|\.gif$|\.ttf$|\.woff$|\.png$|\.eot$|\.vbt$|\.ico$|\.md$' |
| INCLUDELIST="src util payloads Makefile* toolchain.inc tests" |
| |
| # shellcheck disable=SC2086,SC2046 |
| if uname | grep -qi "linux"; then |
| grep -n -H "[[:space:]][[:space:]]*$" \ |
| $(${FIND_FILES} $INCLUDELIST | \ |
| grep -Ev "($EXCLUDELIST)" ) | \ |
| sed -e "s,^.*$,File & has lines ending with whitespace.," |
| else |
| # The above form is much (100x) faster, but doesn't work |
| # on all systems. A for loop also works but takes 30% longer |
| ${FIND_FILES} $INCLUDELIST | \ |
| grep -Ev "($EXCLUDELIST)" | \ |
| xargs -I % \ |
| grep -l "[[:space:]][[:space:]]*$" % | \ |
| sed -e "s,^.*$,File & has lines ending with whitespace.," |
| fi |