#!/usr/bin/env sh
#
# SPDX-License-Identifier: GPL-2.0-only

# DESCR: Check for auto-included headers

LINTDIR="$(
  cd -- "$(dirname "$0")" > /dev/null 2>&1 || return
  pwd -P
)"

# shellcheck source=helper_functions.sh
. "${LINTDIR}/helper_functions.sh"

INCLUDED_DIRS='^src/'
EXCLUDED_FILES='src/include/kconfig.h'

HEADER_FILES="k\?config rules compiler"

TESTFILE1="src/lib/version.c"
TESTFILE2="src/lib/string.c"
TESTFILE3="src/lib/malloc.c"
TESTFILE4="src/lib/hardwaremain.c"
EXPECTED_FAILURES=4

# Configure to make sure tests fail
if [ "$1" = "--test" ]; then
	sed -i.bak "s|^.*SPDX-License-Identifier.*|&\n\n#include <config.h>\n|" "${TESTFILE1}"
	sed -i.bak "s|^.*SPDX-License-Identifier.*|&\n\n#include \"kconfig.h\"\n|" "${TESTFILE2}"
	sed -i.bak "s|^.*SPDX-License-Identifier.*|&\n\n#include \"compiler.h\"\n|" "${TESTFILE3}"
	sed -i.bak "s|^.*SPDX-License-Identifier.*|&\n\n#include <rules.h>\n|" "${TESTFILE4}"
	echo "Expect ${EXPECTED_FAILURES} failures."
	exit 0
elif [ "$1" = "--reset" ]; then
	mv "${TESTFILE1}.bak" "${TESTFILE1}"
	mv "${TESTFILE2}.bak" "${TESTFILE2}"
	mv "${TESTFILE3}.bak" "${TESTFILE3}"
	mv "${TESTFILE4}.bak" "${TESTFILE4}"
	exit 0
fi

for header in $HEADER_FILES; do
	${GREP_FILES} -n "#[[:blank:]]*include[[:blank:]]\+[\"<][[:blank:]]*${header}\.h[[:blank:]]*[\">]" | \
		grep "$INCLUDED_DIRS" | \
		grep -v "$EXCLUDED_FILES"; \
done
