git-blame: Add Emacs Lisp file headers and GNU GPL boilerplate
[git/peff.git] / check-builtins.sh
blobd6fe6cf1749ebcd6189fa36cbb4e14a532d2d17b
1 #!/bin/sh
4 cat <<\EOF
5 sayIt:
6 $(foreach b,$(BUILT_INS),echo XXX $b YYY;)
7 EOF
8 cat Makefile
9 } |
10 make -f - sayIt 2>/dev/null |
11 sed -n -e 's/.*XXX \(.*\) YYY.*/\1/p' |
12 sort |
14 bad=0
15 while read builtin
17 base=`expr "$builtin" : 'git-\(.*\)'`
18 x=`sed -ne 's/.*{ "'$base'", \(cmd_[^, ]*\).*/'$base' \1/p' git.c`
19 if test -z "$x"
20 then
21 echo "$base is builtin but not listed in git.c command list"
22 bad=1
24 for sfx in sh perl py
26 if test -f "$builtin.$sfx"
27 then
28 echo "$base is builtin but $builtin.$sfx still exists"
29 bad=1
31 done
32 done
33 exit $bad