Staging
v0.5.1
https://github.com/git/git
Raw File
Tip revision: 9504f3d3d2e62cb6fba9e7c61c6fe69dec9053a4 authored by Junio C Hamano on 20 January 2010, 21:29:21 UTC
Git 1.6.6.1
Tip revision: 9504f3d
check-builtins.sh
#!/bin/sh

{
	cat <<\EOF
sayIt:
	$(foreach b,$(BUILT_INS),echo XXX $b 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