Commit f7dd4e98 authored by Glenn Morris's avatar Glenn Morris
Browse files

Find rcs2log in the source-directory when running uninstalled

This is preparation for getting rid of lib-src's "stamp-*" files.

* lisp/vc/vc-rcs.el (vc-rcs-rcs2log-program): New.
(vc-rcs-update-changelog): Use it.
parent 276d5f5d
2012-06-06 Glenn Morris <>
* vc/vc-rcs.el (vc-rcs-rcs2log-program): New.
(vc-rcs-update-changelog): Use it.
* emacs-lisp/authors.el (authors-fixed-entries): Remove vcdiff
* vc/vc-sccs.el (vc-sccs-write-revision): New function.
......@@ -868,6 +868,23 @@ and CVS."
(minor-num (string-to-number (vc-rcs-minor-part rev))))
(concat branch "." (number-to-string (1+ minor-num))))))
;; Note that most GNU/Linux distributions seem to supply rcs2log in a
;; standard bin directory. Eg both Red Hat and Debian include it in
;; their cvs packages. It's not obvious why Emacs still needs to
;; provide it as well...
(defvar vc-rcs-rcs2log-program
(let (exe)
(cond ((file-executable-p
(setq exe (expand-file-name "rcs2log" exec-directory)))
;; In the unlikely event that someone is running an
;; uninstalled Emacs and wants to do something RCS-related.
(setq exe (expand-file-name "lib-src/rcs2log" source-directory)))
(t "rcs2log")))
"Path to the `rcs2log' program (normally in `exec-directory').")
(defun vc-rcs-update-changelog (files)
"Default implementation of update-changelog.
Uses `rcs2log' which only works for RCS and CVS."
......@@ -898,9 +915,7 @@ Uses `rcs2log' which only works for RCS and CVS."
(setq default-directory odefault)
(if (eq 0 (apply 'call-process
(expand-file-name "rcs2log"
(if (eq 0 (apply 'call-process vc-rcs-rcs2log-program
nil (list t tempfile) nil
"-c" changelog
"-u" (concat login-name
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment