From c6dbedbcc3c93c12d42a848c73be187b38181eb6 Mon Sep 17 00:00:00 2001
From: okazaki <okazaki@FreeBSD.org>
Date: Thu, 16 May 2002 04:39:48 +0000
Subject: Update to support Emacs 21.

PR:		33094
Submitted by:	yoichi

Add a patch to mitigate slow Mule-UCS loading in Emacs 21.2,
written by Dave Love <d.love@dl.ac.uk>.

Obtained from:	http://tsukuba.m17n.org/mule-archive/2002-3/msg00000.html

Use ${DOCSDIR} instead of ${PREFIX}/${PORTDOCDIR}.
---
 converters/mule-ucs/Makefile       | 23 +++++++++++++----------
 converters/mule-ucs/files/patch-aa | 31 +++++++++++++++++++++++++++++++
 converters/mule-ucs/pkg-comment    |  2 +-
 converters/mule-ucs/pkg-message    |  3 ---
 converters/mule-ucs/pkg-plist      | 16 ++++++++--------
 5 files changed, 53 insertions(+), 22 deletions(-)
 create mode 100644 converters/mule-ucs/files/patch-aa

diff --git a/converters/mule-ucs/Makefile b/converters/mule-ucs/Makefile
index b0f30a929670..fd1961242235 100644
--- a/converters/mule-ucs/Makefile
+++ b/converters/mule-ucs/Makefile
@@ -1,4 +1,4 @@
-# New ports collection makefile for:	Mule-UCS for GNU Emacs 20
+# New ports collection makefile for:	Mule-UCS for GNU Emacs 21
 # Date created:		14 January 2000
 # Whom:			OKAZAKI Tetsurou
 #
@@ -16,12 +16,15 @@ MASTER_SITES=	ftp://ftp.m17n.org/pub/mule/Mule-UCS/ \
 PKGNAMESUFFIX=	-${EMACS_PORT_NAME}
 DISTNAME=	Mule-UCS-${PORTVERSION}
 
-MAINTAINER=	okazaki@FreeBSD.org
+MAINTAINER?=	okazaki@FreeBSD.org
 
-EMACS_PORT_NAME=	emacs20
+# This is a master port.
+PORTCLASS?=	master
+
+.if (${PORTCLASS} == "master")
+EMACS_PORT_NAME=	emacs21
+.endif
 
-PLIST_SUB=	PORTDOCDIR=${PORTDOCDIR}
-PORTDOCDIR=	share/doc/mule-ucs
 MULEUCS_DESTDIR=	${PREFIX}/${EMACS_VERSION_SITE_LISPDIR}/mule-ucs
 EMACS_ARGS=	-q --no-site-file -batch
 
@@ -45,17 +48,17 @@ do-install:
 
 post-install:
 .if !defined(NOPORTDOCS)
-	@${MKDIR} ${PREFIX}/${PORTDOCDIR}
+	@${MKDIR} ${DOCSDIR}
 	cd ${WRKSRC}/lisp; \
 	for i in ChangeLog MuleUni.txt README* ; do \
-		${INSTALL_DATA} $${i} ${PREFIX}/${PORTDOCDIR} ; \
+		${INSTALL_DATA} $${i} ${DOCSDIR} ; \
 	done
 	${INSTALL_DATA} ${WRKSRC}/lisp/big5conv/README \
-			 ${PREFIX}/${PORTDOCDIR}/README.big5conv
+			 ${DOCSDIR}/README.big5conv
 	${INSTALL_DATA} ${WRKSRC}/lisp/jisx0213/ChangeLog \
-			 ${PREFIX}/${PORTDOCDIR}/ChangeLog.jisx0213
+			 ${DOCSDIR}/ChangeLog.jisx0213
 	${INSTALL_DATA} ${WRKSRC}/lisp/jisx0213/readme.txt \
-			 ${PREFIX}/${PORTDOCDIR}/README.jisx0213
+			 ${DOCSDIR}/README.jisx0213
 .endif
 	@${CAT} ${PKGMESSAGE}
 
diff --git a/converters/mule-ucs/files/patch-aa b/converters/mule-ucs/files/patch-aa
new file mode 100644
index 000000000000..e216f07821fa
--- /dev/null
+++ b/converters/mule-ucs/files/patch-aa
@@ -0,0 +1,31 @@
+--- lisp/un-define.el.original	Wed Mar  7 07:41:38 2001
++++ lisp/un-define.el	Thu May 16 13:34:46 2002
+@@ -610,13 +610,21 @@
+ 
+  (mapcar
+   (lambda (x)
+-    (mapcar
+-     (lambda (y)
+-       (mucs-define-coding-system
+-	(nth 0 y) (nth 1 y) (nth 2 y)
+-	(nth 3 y) (nth 4 y) (nth 5 y) (nth 6 y))
+-       (coding-system-put (car y) 'alias-coding-systems (list (car x))))
+-     (cdr x)))
++    (if (fboundp 'register-char-codings)
++	;; Mule 5, where we don't need the eol-type specified and
++	;; register-char-codings may be very slow for these coding
++	;; system definitions.
++	(let ((y (cadr x)))
++	  (mucs-define-coding-system
++	   (car x) (nth 1 y) (nth 2 y)
++	   (nth 3 y) (nth 4 y) (nth 5 y)))
++      (mapcar
++       (lambda (y)
++	 (mucs-define-coding-system
++	  (nth 0 y) (nth 1 y) (nth 2 y)
++	  (nth 3 y) (nth 4 y) (nth 5 y) (nth 6 y))
++	 (coding-system-put (car y) 'alias-coding-systems (list (car x)))))
++      (cdr x)))
+   `((utf-8
+      (utf-8-unix
+       ?u "UTF-8 coding system"
diff --git a/converters/mule-ucs/pkg-comment b/converters/mule-ucs/pkg-comment
index 2c4818bb7900..fbe5fcd2468c 100644
--- a/converters/mule-ucs/pkg-comment
+++ b/converters/mule-ucs/pkg-comment
@@ -1 +1 @@
-Universal encoding system for GNU Emacs 20
+Universal encoding system for GNU Emacs 21
diff --git a/converters/mule-ucs/pkg-message b/converters/mule-ucs/pkg-message
index 8d8fe59472a0..e43379f18646 100644
--- a/converters/mule-ucs/pkg-message
+++ b/converters/mule-ucs/pkg-message
@@ -27,6 +27,3 @@ If you want to use JIS X 0213 support, add the following line:
 
 to your .emacs.  See PREFIX/share/doc/mule-ucs/README.jisx0213
 (written in Japanese) for details.
-
-Mule-UCS is installed under the following directory:
-	PREFIX/share/emacs/20.x/site-lisp/mule-ucs/	--- Mule-UCS
diff --git a/converters/mule-ucs/pkg-plist b/converters/mule-ucs/pkg-plist
index a74699bbadd8..90399ac6b700 100644
--- a/converters/mule-ucs/pkg-plist
+++ b/converters/mule-ucs/pkg-plist
@@ -96,11 +96,11 @@
 @dirrm %%EMACS_LIBDIR_WITH_VER%%/site-lisp/mule-ucs/jisx0213
 @dirrm %%EMACS_LIBDIR_WITH_VER%%/site-lisp/mule-ucs/reldata
 @dirrm %%EMACS_LIBDIR_WITH_VER%%/site-lisp/mule-ucs
-%%PORTDOCS%%%%PORTDOCDIR%%/ChangeLog
-%%PORTDOCS%%%%PORTDOCDIR%%/ChangeLog.jisx0213
-%%PORTDOCS%%%%PORTDOCDIR%%/MuleUni.txt
-%%PORTDOCS%%%%PORTDOCDIR%%/README
-%%PORTDOCS%%%%PORTDOCDIR%%/README.Unicode
-%%PORTDOCS%%%%PORTDOCDIR%%/README.big5conv
-%%PORTDOCS%%%%PORTDOCDIR%%/README.jisx0213
-%%PORTDOCS%%@dirrm %%PORTDOCDIR%%
+%%PORTDOCS%%share/doc/mule-ucs/ChangeLog
+%%PORTDOCS%%share/doc/mule-ucs/ChangeLog.jisx0213
+%%PORTDOCS%%share/doc/mule-ucs/MuleUni.txt
+%%PORTDOCS%%share/doc/mule-ucs/README
+%%PORTDOCS%%share/doc/mule-ucs/README.Unicode
+%%PORTDOCS%%share/doc/mule-ucs/README.big5conv
+%%PORTDOCS%%share/doc/mule-ucs/README.jisx0213
+%%PORTDOCS%%@dirrm share/doc/mule-ucs
-- 
cgit