aboutsummaryrefslogtreecommitdiff
path: root/.hooks/pre-commit.d/check_moved
blob: 5a0a507ab0617a597c74aa8c51dbcc227889860e (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#!/bin/sh
#
# Check that newly added MOVED lines are valid
#

common_functions="$(realpath "$(dirname "$0")")/common.sh"
if [ -r "${common_functions}" ]; then
	. "${common_functions}"
fi

moved_changed=$(git diff --name-only --cached --diff-filter=M | grep -E '^MOVED$')
if [ $? -eq 0 ] ; then
	# git changes to root directory of the tree to run hooks
	tree=$(git rev-parse --show-toplevel)
	# check the last seven days
	lastdate=$(date -v-7d "+%Y-%m-%d")

	errors=$(PORTSDIR=${tree} Tools/scripts/MOVEDlint.awk -v lastdate="${lastdate}")
	if [ $? -ne 0 ] ; then
		pre_commit_error "MOVED contains errors.\n" \
			"                  Please apply the suggested changes:\n"
		error "${errors}"
		exit 1
	fi
fi