summaryrefslogtreecommitdiff
path: root/git-gui/generate-tclindex.sh
diff options
context:
space:
mode:
Diffstat (limited to 'git-gui/generate-tclindex.sh')
-rwxr-xr-xgit-gui/generate-tclindex.sh32
1 files changed, 32 insertions, 0 deletions
diff --git a/git-gui/generate-tclindex.sh b/git-gui/generate-tclindex.sh
new file mode 100755
index 0000000000..0b031d8339
--- /dev/null
+++ b/git-gui/generate-tclindex.sh
@@ -0,0 +1,32 @@
+#!/bin/sh
+
+if test "$#" -lt 3
+then
+ echo >&2 "usage: $0 <BUILD_DIR> <BUILD_OPTIONS> <LIBFILE> [<LIBFILE>...]"
+ exit 1
+fi
+
+BUILD_DIR="$1"
+BUILD_OPTIONS="$2"
+shift 2
+LIBFILES="$(echo "$@" | sort | sed 's|lib/||g')"
+
+. "$BUILD_OPTIONS"
+
+cd "$BUILD_DIR"
+
+if {
+ echo "source lib/class.tcl;"
+ echo "auto_mkindex lib $LIBFILES"
+} | "$TCL_PATH"
+then
+ : ok
+else
+ echo >&2 " * $TCL_PATH failed; using unoptimized loading"
+ rm -f lib/tclIndex
+ echo '# Autogenerated by git-gui Makefile' >lib/tclIndex
+ echo >>lib/tclIndex
+ echo "class.tcl" >>lib/tclIndex
+ printf "%s\n" $LIBFILES >>lib/tclIndex
+ echo >>lib/tclIndex
+fi