From 95b5b025a02aa83bc8baea831f6c72c17f8667ee Mon Sep 17 00:00:00 2001 From: Martin Roth Date: Mon, 17 Oct 2022 07:53:16 -0600 Subject: [PATCH] util/lint: Fix linting outside of git repos If the coreboot code is not in a git repository, the linters switch from using `git ls-files` to find. This requires some changes to prevent the linters from looking at the wrong files which are automatically excluded by git. Signed-off-by: Martin Roth Change-Id: I81d138760c29a7c476280bb9d963f6be99c75d6d Reviewed-on: https://review.coreboot.org/c/coreboot/+/68475 Tested-by: build bot (Jenkins) Reviewed-by: Elyes Haouas Reviewed-by: Paul Menzel Reviewed-by: Fred Reitberger Reviewed-by: Angel Pons --- util/lint/helper_functions.sh | 3 ++- util/lint/lint-extended-007-checkpatch | 2 +- util/lint/lint-extended-015-final-newlines | 2 +- util/lint/lint-stable-003-whitespace | 6 +++--- util/lint/lint-stable-009-old-licenses | 6 +++++- 5 files changed, 12 insertions(+), 7 deletions(-) diff --git a/util/lint/helper_functions.sh b/util/lint/helper_functions.sh index 0c679d974f..7abdab8611 100644 --- a/util/lint/helper_functions.sh +++ b/util/lint/helper_functions.sh @@ -33,7 +33,8 @@ fi if [ "${IN_GIT_TREE}" -eq 1 ]; then FIND_FILES="${GIT} ls-files" else - FIND_FILES="find src" + FIND_FILES="find " + FINDOPTS="-type f" fi # Use git grep if the code is in a git repo, otherwise use grep. diff --git a/util/lint/lint-extended-007-checkpatch b/util/lint/lint-extended-007-checkpatch index 8ec11885b1..24d505be78 100755 --- a/util/lint/lint-extended-007-checkpatch +++ b/util/lint/lint-extended-007-checkpatch @@ -7,7 +7,7 @@ PIDS="" DIRS="src/acpi \ src/cpu/armltd src/cpu/qemu-power8 src/cpu/qemu-x86 \ -src/drivers/gic src/drivers/ti \ +src/drivers/ti \ src/ec/purism \ src/include/boot src/include/superio src/include/sys \ src/mainboard/adlink src/mainboard/purism src/mainboard/ti \ diff --git a/util/lint/lint-extended-015-final-newlines b/util/lint/lint-extended-015-final-newlines index 2c792839d2..b761afbf27 100755 --- a/util/lint/lint-extended-015-final-newlines +++ b/util/lint/lint-extended-015-final-newlines @@ -14,7 +14,7 @@ LINTDIR="$( PIDS="" INCLUDED_DIRS_AND_FILES='util/* src/* payloads/* configs/* Makefile *.inc' -EXCLUDED_DIRS='src/vendorcode/\|cbfstool/lzma/\|cbfstool/lz4/\|Documentation/\|build/\|3rdparty/\|\.git/\|coreboot-builds/\|util/nvidia/cbootimage/' +EXCLUDED_DIRS='src/vendorcode/\|cbfstool/lzma/\|cbfstool/lz4/\|Documentation/\|build/\|3rdparty/\|\.git/\|coreboot-builds/\|util/nvidia/cbootimage/\|^util/goswid/vendor' EXCLUDED_FILES='\.gif$\|\.jpg$\|\.cksum$\|\.bin$\|\.vbt$\|\.hex$\|\.ico$\|\.o$\|\.bz2$\|\.xz$\|^.tmpconfig\|\.pyc$\|_shipped$\|sha256$\|\.png$\|\.patch$' HAVE_FILE=$(command -v file 1>/dev/null 2>&1; echo $?) diff --git a/util/lint/lint-stable-003-whitespace b/util/lint/lint-stable-003-whitespace index 0611f25396..838ea93877 100755 --- a/util/lint/lint-stable-003-whitespace +++ b/util/lint/lint-stable-003-whitespace @@ -11,19 +11,19 @@ LINTDIR="$( # 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$' +EXCLUDELIST='^src/vendorcode/|^util/kconfig/|^util/nvidia/cbootimage/|^util/goswid/|__pycache__|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 | \ + $(${FIND_FILES} ${INCLUDELIST} ${FINDOPTS} | \ 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 | \ + ${FIND_FILES} ${INCLUDELIST} ${FINDOPTS}| \ grep -Ev "($EXCLUDELIST)" | \ xargs -I % \ grep -l "[[:space:]][[:space:]]*$" % | \ diff --git a/util/lint/lint-stable-009-old-licenses b/util/lint/lint-stable-009-old-licenses index 0b772263fa..09b53a2b14 100755 --- a/util/lint/lint-stable-009-old-licenses +++ b/util/lint/lint-stable-009-old-licenses @@ -28,7 +28,11 @@ HEADER_EXCLUDED="\ _shipped$|\ ^util/scripts/no-fsf-addresses.sh|\ ^util/lint/lint-000-license-headers|\ -^util/lint/lint-stable-009-old-licenses\ +^util/lint/lint-stable-009-old-licenses|\ +^util/nvidia/cbootimage|\ +^3rdparty|\ +__pycache__|\ +^payloads/external\ " if [ -z "$HEADER_DIRS" ]; then