https://github.com/git/git
Raw File
Tip revision: 75b2f01a0f642b39b0f29b6218515df9b5eb798e authored by Junio C Hamano on 09 August 2019, 22:20:04 UTC
Git 2.22.1
Tip revision: 75b2f01
check-builtins.sh
#!/bin/sh

{
	cat <<\EOF
sayIt:
	$(foreach b,$(BUILT_INS),echo XXX $(b:$X=) YYY;)
EOF
	cat Makefile
} |
make -f - sayIt 2>/dev/null |
sed -n -e 's/.*XXX \(.*\) YYY.*/\1/p' |
sort |
{
    bad=0
    while read builtin
    do
	base=$(expr "$builtin" : 'git-\(.*\)')
	x=$(sed -ne 's/.*{ "'$base'", \(cmd_[^, ]*\).*/'$base'	\1/p' git.c)
	if test -z "$x"
	then
		echo "$base is builtin but not listed in git.c command list"
		bad=1
	fi
	for sfx in sh perl py
	do
		if test -f "$builtin.$sfx"
		then
			echo "$base is builtin but $builtin.$sfx still exists"
			bad=1
		fi
	done
    done
    exit $bad
}
back to top