summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/Makefile.in11
-rw-r--r--src/util/krb5-batch-reindent.el33
2 files changed, 44 insertions, 0 deletions
diff --git a/src/Makefile.in b/src/Makefile.in
index ac850338c..758f55eca 100644
--- a/src/Makefile.in
+++ b/src/Makefile.in
@@ -654,3 +654,14 @@ coverity prevent cov: Makefiles
else \
echo "** Coverity Prevent analysis results not commit to Defect Manager"; \
fi
+
+FIND = find
+XARGS = xargs
+EMACS = emacs
+
+reindent::
+ $(FIND) $(SRCTOP) \
+ \( -name '*.[ch]' -o -name '*.hin' -o -name '*.[ch].in' \) \
+ -print0 | $(XARGS) -0 $(EMACS) -q -batch \
+ -l $(SRCTOP)/util/krb5-c-style.el \
+ -l $(SRCTOP)/util/krb5-batch-reindent.el
diff --git a/src/util/krb5-batch-reindent.el b/src/util/krb5-batch-reindent.el
new file mode 100644
index 000000000..ec33555ae
--- /dev/null
+++ b/src/util/krb5-batch-reindent.el
@@ -0,0 +1,33 @@
+;;; -*- mode: emacs-lisp; indent-tabs-mode: nil -*-
+(if (not noninteractive)
+ (error "to be used only with -batch"))
+;; Avoid vc-mode interference.
+(setq vc-handled-backends nil)
+(while command-line-args-left
+ (let ((filename (car command-line-args-left))
+ (error nil)
+ ;; No backup files?
+ (make-backup-files nil))
+ (find-file filename)
+
+ ;; (goto-char (point-min))
+ ;; (if (looking-at "\\s-*/\\*\\s-*-\\*-.*-\\*-\\s-*\\*/\\s-*\n")
+ ;; (delete-region (match-beginning 0) (match-end 0)))
+ ;; (insert "/* -*- mode: c; c-basic-offset: 4; indent-tabs-mode: nil -*- */\n")
+ ;; (normal-mode)
+
+ (if (eq indent-tabs-mode nil)
+ (untabify (point-min) (point-max)))
+
+ ;; Only reindent if the file C style is guessed to be "krb5".
+ (if (and (eq c-basic-offset 4)
+ (eq indent-tabs-mode nil))
+ (progn
+ (c-set-style "krb5")
+ (c-indent-region (point-min) (point-max))))
+
+ (whitespace-cleanup)
+
+ (save-buffer)
+ (kill-buffer)
+ (setq command-line-args-left (cdr command-line-args-left))))