]> code.delx.au - gnu-emacs/blobdiff - autogen.sh
Improve git diff hunk headers for .el, .texi
[gnu-emacs] / autogen.sh
index c3ae1d766df081cb9554e026fbfbe5e15a879d3a..926915c1af1e985834a98b91c7eaf234994a56f8 100755 (executable)
@@ -216,8 +216,20 @@ autoreconf -fi -I m4 || exit $?
 ## cause 'make' to needlessly run 'autoheader'.
 echo timestamp > src/stamp-h.in || exit
 
-## Install Git hooks, if using Git.
-if test -d .git/hooks; then
+
+## Configure Git, if using Git.
+if test -d .git; then
+
+    # Configure 'git diff' hunk header format.
+
+    git config 'diff.elisp.xfuncname' \
+       '^\(def[^[:space:]]+[[:space:]]+([^()[:space:]]+)' || exit
+    git config 'diff.texinfo.xfuncname' \
+       '^@node[[:space:]]+([^,[:space:]][^,]+)' || exit
+
+
+    # Install Git hooks.
+
     tailored_hooks=
     sample_hooks=
 
@@ -226,6 +238,7 @@ if test -d .git/hooks; then
        tailored_hooks="$tailored_hooks $hook"
     done
     for hook in applypatch-msg pre-applypatch; do
+       test ! -r .git/hooks/$hook.sample ||
        cmp .git/hooks/$hook.sample .git/hooks/$hook >/dev/null 2>&1 ||
        sample_hooks="$sample_hooks $hook"
     done