(provide 'mrm-changelog)

(defun mrm-find-change-log-entry ()
  "Find an appropriate ChangeLog entry to use"
  (let ((dirlist '("" "../" "../../" "../../../" "../../../../" "../../../../../" "../../../../../../"))
	(dir nil)
	(ret "ChangeLog"))
    (while dirlist
      (setq dir (car dirlist))
      (setq dirlist (cdr dirlist))
      (cond
       ((file-exists-p (concat dir "mrm-ChangeLog"))
	(progn
	  (setq ret (concat dir "mrm-ChangeLog"))
	  (setq dirlist nil)))

       ((file-exists-p (concat dir "ChangeLog.mrm"))
	(progn
	  (setq ret (concat dir "ChangeLog.mrm"))
	  (setq dirlist nil)))

       ((file-exists-p (concat dir "ChangeLog.ibm"))
	(progn
	  (setq ret (concat dir "ChangeLog.ibm"))
	  (setq dirlist nil)))

       ((file-exists-p (concat dir "ChangeLog-ibm"))
	(progn
	  (setq ret (concat dir "ChangeLog-ibm"))
	  (setq dirlist nil)))

       ((file-exists-p (concat dir "ChangeLog.power7"))
	(progn
	  (setq ret (concat dir "ChangeLog.power7"))
	  (setq dirlist nil)))

       ((file-exists-p (concat dir "ChangeLog-function"))
	(progn
	  (setq ret (concat dir "ChangeLog-function"))
	  (setq dirlist nil)))

       ((file-exists-p (concat dir "ChangeLog.named"))
	(progn
	  (setq ret (concat dir "ChangeLog.named"))
	  (setq dirlist nil)))

       ((file-exists-p (concat dir "ChangeLog.c45"))
	(progn
	  (setq ret (concat dir "ChangeLog.c45"))
	  (setq dirlist nil)))

       ((file-exists-p (concat dir "ChangeLog"))
	(progn
	  (setq ret (concat dir "ChangeLog"))
	  (setq dirlist nil)))))
    ret))
      
(defun mrm-add-change-log-entry (whoami logfile &optional other-window)
  "Invoke add-change-log-entry looking for Meissner specific ChangeLog files"
  (interactive
   (list current-prefix-arg
	 (let ((default (mrm-find-change-log-entry)))
	   (expand-file-name
	    (read-file-name (format "Log file (default %s): " default)
			    nil default)))))
  (progn
    (add-change-log-entry whoami logfile other-window)
    (make-local-variable 'version-control)
    (setq version-control t)))

(defun mrm-add-change-log-entry-other-window (whoami logfile)
  "Invoke add-change-log-entry in another window looking for Meissner specific ChangeLog files"
  (interactive
   (list current-prefix-arg
	 (let ((default (mrm-find-change-log-entry)))
	   (expand-file-name
	    (read-file-name (format "Log file (default %s): " default)
			    nil default)))))
  (progn
    (add-change-log-entry whoami logfile t)
    (make-local-variable 'version-control)
    (setq version-control t)))

(setq add-log-mailing-address user-mail-address)

;; HISTORY
;; $Log: mrm-changelog.el,v $
;; Revision 1.19  2009/01/20 19:15:04  meissner
;; Add ChangeLog.power7 support.
;;
;; Revision 1.18  2008/11/04 21:24:03  meissner
;; Add support for ChangeLog.named
;;
;; Revision 1.17  2008/11/04 21:23:24  meissner
;; Add support for ChangeLog.c45
;;
;; Revision 1.16  2008/10/15 19:08:36  meissner
;; Use user-mail-address for Changelog address.
;;
;; Revision 1.15  2008/10/15 19:02:27  meissner
;; Delete some x86 hooks; Add ibm hooks; Delete changing the name of the system.
;;
;; Revision 1.14  2008/07/01 00:45:43  meissner
;; Delete AMD hooks, change address to gnu@the-meissners.org.
;;
;; Revision 1.13  2007/12/13 19:29:45  meissner
;; Add ChangeLog-function support
;;
;; Revision 1.12  2007/11/09 16:20:37  meissner
;; Add support for ChangeLog{-,.}ix86
;;
;; Revision 1.11  2006/01/12 23:32:24  meissner
;; Use amd.com as hostname; Update comments.
;;
;; Revision 1.10  2006/01/12 23:27:43  meissner
;; Add support for ChangeLog.amd and varients.
;;
;; Revision 1.9  2005/10/03 20:50:26  meissner
;; Change to my AMD email address.
;;
;; Revision 1.8  2003/05/28 22:55:38  meissner
;; Override the address used in the changelog.
;;
;; Revision 1.7  2003/05/28 21:59:57  meissner
;; Remove ChangeLog.RedHat and ChangeLog.Cygnus; Add ChangeLog.mrm.
;;
;; Revision 1.6  2002/06/26 03:48:57  meissner
;; Remove redhat-isms.
;;
;; Revision 1.5  2002/01/30 17:55:46  meissner
;; Add support for ChangeLog.RedHat.
;;
;; Revision 1.4  2000/01/22 21:15:30  meissner
;; Cygnus.com -> Redhat.com.
;;
;; Revision 1.3  1998/12/31 14:30:42  meissner
;; Favor ChangeLog.Cygnus over ChangeLog.
;;
;; Revision 1.2  1996/02/13 14:45:39  meissner
;; Find ChangeLog in more upper directories.
;;
;; Revision 1.1  1995/03/02 17:42:28  meissner
;; Initial version
;;
;; $EngLog$

