summaryrefslogtreecommitdiff
path: root/check-builtins.sh
diff options
context:
space:
mode:
authorGraydon, Tracy <tracy.graydon@intel.com>2013-01-31 17:08:15 -0800
committerGraydon, Tracy <tracy.graydon@intel.com>2013-01-31 17:08:15 -0800
commit699fc9f67a9a62df492d1cd049e4978953640de9 (patch)
treef0c16f1494bd71922e7bf5258037427cac4a350b /check-builtins.sh
downloadgit-699fc9f67a9a62df492d1cd049e4978953640de9.tar.gz
git-699fc9f67a9a62df492d1cd049e4978953640de9.tar.bz2
git-699fc9f67a9a62df492d1cd049e4978953640de9.zip
Diffstat (limited to 'check-builtins.sh')
-rwxr-xr-xcheck-builtins.sh34
1 files changed, 34 insertions, 0 deletions
diff --git a/check-builtins.sh b/check-builtins.sh
new file mode 100755
index 0000000..d6fe6cf
--- /dev/null
+++ b/check-builtins.sh
@@ -0,0 +1,34 @@
+#!/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
+}