Staging
v0.5.1
swh:1:snp:c5feb7ee9221a3820c8879e85e8a18470c0b3afa
Raw File
Tip revision: 42817b96b1b80b56fd5a4d5e0d6239524b1832a3 authored by Junio C Hamano on 30 October 2013, 19:17:47 UTC
Git 1.8.5-rc0
Tip revision: 42817b9
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