summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortron <tron@pkgsrc.org>1998-04-13 13:46:39 +0000
committertron <tron@pkgsrc.org>1998-04-13 13:46:39 +0000
commit71c303a8480c0d569e5ceb50693df3a35b718e82 (patch)
tree882939c97fdb038235158893fd1600250a5bbdc0
parent49a48d689a3ecba3554213b98edbeb1bd19b181a (diff)
downloadpkgsrc-71c303a8480c0d569e5ceb50693df3a35b718e82.tar.gz
Apply patches supplied by Johnny C. Lam PR pkg/5069 to make emacs MH-E to
cooperate with our nmh package.
-rw-r--r--editors/emacs/Makefile6
-rw-r--r--editors/emacs/patches/patch-ag121
2 files changed, 126 insertions, 1 deletions
diff --git a/editors/emacs/Makefile b/editors/emacs/Makefile
index 4a35ea83879..6e826d8528c 100644
--- a/editors/emacs/Makefile
+++ b/editors/emacs/Makefile
@@ -3,7 +3,7 @@
# Date created: 11 October 1997
# Whom: hubertf
#
-# $NetBSD: Makefile,v 1.11 1998/03/10 13:52:53 frueauf Exp $
+# $NetBSD: Makefile,v 1.12 1998/04/13 13:46:39 tron Exp $
# FreeBSD Id: Makefile,v 1.30 1997/12/14 02:03:53 asami Exp
#
@@ -25,6 +25,10 @@ OPSYS!= uname -s
MAKE_ENV+= INSTALL_STRIP=${STRIPFLAG} \
INSTALL_SCRIPT="${INSTALL_SCRIPT}"
+post-build:
+ (cd ${WRKSRC}/lisp/mail; \
+ ${WRKSRC}/src/emacs -batch -f batch-byte-compile mh-funcs.el mh-utils.el)
+
post-install:
${RM} -f ${PREFIX}/share/emacs/20.2/etc/DOC-20.2.[13-9]*
chown -R ${SHAREOWN}:${SHAREGRP} ${PREFIX}/share/emacs
diff --git a/editors/emacs/patches/patch-ag b/editors/emacs/patches/patch-ag
new file mode 100644
index 00000000000..2c5bc24cfca
--- /dev/null
+++ b/editors/emacs/patches/patch-ag
@@ -0,0 +1,121 @@
+--- lisp/mail/mh-funcs.el.orig Wed Feb 25 06:35:14 1998
++++ lisp/mail/mh-funcs.el Wed Feb 25 15:10:45 1998
+@@ -211,7 +211,7 @@
+ (let ((print-command
+ (if (numberp msg-or-seq)
+ (format "%s -nobell -clear %s %s | %s"
+- (expand-file-name "mhl" mh-lib)
++ (expand-file-name "mhl" mh-lib-progs)
+ (mh-msg-filename msg-or-seq)
+ (if (stringp mhl-formfile)
+ (format "-form %s" mhl-formfile)
+@@ -223,7 +223,7 @@
+ (format "Sequence from %s" mh-current-folder))))
+ (format "(scan -clear %s ; %s -nobell -clear %s %s) | %s"
+ (mapconcat (function (lambda (msg) msg)) msg-or-seq " ")
+- (expand-file-name "mhl" mh-lib)
++ (expand-file-name "mhl" mh-lib-progs)
+ (if (stringp mhl-formfile)
+ (format "-form %s" mhl-formfile)
+ "")
+--- lisp/mail/mh-utils.el.orig Wed Feb 25 06:35:14 1998
++++ lisp/mail/mh-utils.el Wed Feb 25 15:12:20 1998
+@@ -38,12 +38,18 @@
+ (defvar mh-lib nil
+ "Directory containing the MH library.
+ This directory contains, among other things,
+-the mhl program and the components file.")
++the components file.")
++
++(defvar mh-lib-progs nil
++ "Directory containing the supporting MH commands,
++such as install-mh and mhl.")
+
+ ;;;###autoload
+ (put 'mh-progs 'risky-local-variable t)
+ ;;;###autoload
+ (put 'mh-lib 'risky-local-variable t)
++;;;###autoload
++(put 'mh-lib-progs 'risky-local-variable t)
+
+ ;;; User preferences:
+
+@@ -532,7 +538,7 @@
+ (defvar mail-user-agent 'mh-e-user-agent) ;from reporter.el 3.2
+
+ (defun mh-find-path ()
+- ;; Set mh-progs and mh-lib.
++ ;; Set mh-progs, mh-lib, and mh-lib-progs.
+ ;; (This step is necessary if MH was installed after this Emacs was dumped.)
+ ;; From profile file, set mh-user-path, mh-draft-folder,
+ ;; mh-unseen-seq, mh-previous-seq, mh-inbox.
+@@ -586,8 +592,9 @@
+ (and (file-regular-p file) (file-executable-p file)))
+
+ (defun mh-find-progs ()
+- "Find the `inc' and `mhl' programs of MH.
+-Set the `mh-progs' and `mh-lib' variables to the file names."
++ "Find the `inc' and `mhl' programs of MH, and the components file.
++Set the `mh-progs', `mh-lib', and `mh-lib-progs' variables to the
++directory names."
+ (or (and mh-progs (mh-file-command-p (expand-file-name "inc" mh-progs)))
+ (setq mh-progs
+ (or (mh-path-search exec-path "inc")
+@@ -599,7 +606,7 @@
+ "/usr/local/bin/"
+ )
+ "inc"))))
+- (or (and mh-lib (mh-file-command-p (expand-file-name "mhl" mh-lib)))
++ (or (and mh-lib (file-exists-p (expand-file-name "components" mh-lib)))
+ (setq mh-lib
+ ;; Look for a lib directory roughly parallel to the bin
+ ;; directory: Strip any trailing `mh' or `bin' path
+@@ -614,18 +621,24 @@
+ (mh-path-search
+ (list (expand-file-name "lib/mh/" mh-base)
+ (expand-file-name "mh/lib/" mh-base))
+- "mhl"))
++ "components"
++ 'file-exists-p))
++ )))
++ (or (and mh-lib-progs
++ (mh-file-command-p (expand-file-name "mhl" mh-lib-progs)))
++ (setq mh-lib-progs
++ (or (mh-path-search mh-lib "mhl")
+ (mh-path-search '("/usr/local/bin/mh/") "mhl")
+ (mh-path-search exec-path "mhl") ;unlikely
+ )))
+- (unless (and mh-progs mh-lib)
+- (error "Cannot find the commands `inc' and `mhl'")))
++ (unless (and mh-progs mh-lib mh-lib-progs)
++ (error "Cannot find the commands `inc' and `mhl' and the file `components'")))
+
+-(defun mh-path-search (path file)
++(defun mh-path-search (path file &optional (func-p 'mh-file-command-p))
+ ;; Search PATH, a list of directory names, for FILE.
+ ;; Returns the element of PATH that contains FILE, or nil if not found.
+ (while (and path
+- (not (mh-file-command-p (expand-file-name file (car path)))))
++ (not (funcall func-p (expand-file-name file (car path)))))
+ (setq path (cdr path)))
+ (car path))
+
+@@ -644,7 +657,7 @@
+ ;; mh-exec-cmd will display to the user.
+ ;; The MH 5 version of install-mh might try prompt the user
+ ;; for information, which would fail here.
+- (mh-exec-cmd (expand-file-name "install-mh" mh-lib) "-auto")
++ (mh-exec-cmd (expand-file-name "install-mh" mh-lib-progs) "-auto")
+ ;; now try again to read the profile file
+ (erase-buffer)
+ (condition-case err
+@@ -916,7 +929,8 @@
+ (defun mh-exec-lib-cmd-output (command &rest args)
+ ;; Execute MH library command COMMAND with ARGS.
+ ;; Put the output into buffer after point. Set mark after inserted text.
+- (apply 'mh-exec-cmd-output (expand-file-name command mh-lib) nil args))
++ (apply 'mh-exec-cmd-output
++ (expand-file-name command mh-lib-progs) nil args))
+
+
+ (defun mh-handle-process-error (command status)