mirror of
https://git.freebsd.org/ports.git
synced 2025-07-17 17:29:23 -04:00
ELFize. Also, upgrade to mule-2.3 based on emacs-19.34b (used to be
19.28). PR: 8178 Submitted by: taoka@infonets.hiroshima-u.ac.jp
This commit is contained in:
parent
a783310e66
commit
2e7cf46d9c
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=13703
70 changed files with 5146 additions and 2282 deletions
|
@ -1,15 +1,13 @@
|
|||
# New ports collection makefile for: mule with Wnn4
|
||||
# Version required: 2.3
|
||||
# New ports collection makefile for: mule 2.3@19.34 with Wnn4
|
||||
# Version required: 2.3@19.34
|
||||
# Date created: 20 July 1997
|
||||
# Whom: Satoshi Taoka <taoka@infonets.hiroshima-u.ac.jp>
|
||||
#
|
||||
# $Id: Makefile,v 1.2 1997/09/22 17:48:36 max Exp $
|
||||
# $Id: Makefile,v 1.3 1998/09/27 00:01:11 steve Exp $
|
||||
#
|
||||
|
||||
PKGNAME= zh-mule-wnn4-2.3
|
||||
CATEGORIES= chinese editors
|
||||
CWNN4= yes
|
||||
|
||||
BROKEN_ELF= build
|
||||
|
||||
.include "${.CURDIR}/../../editors/mule/Makefile"
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
This is a package containing only the executables for mule-2.3, a
|
||||
multilingual editor based on emacs-19.28.
|
||||
multilingual editor based on emacs-19.34.
|
||||
|
||||
You should install a package, mule-common-2.3, containing emacs lisp
|
||||
files, info pages, and so on (except executables) for mule-2.3.
|
||||
|
@ -25,8 +25,8 @@ that may have been added to that file!
|
|||
|
||||
[Notice]
|
||||
Mr. Yoshio KATAYAMA <kate@pfu.co.jp> fixed many bugs for mule-2.3.
|
||||
Patches for those are in 'mule-2.3.patch.tar.gz' and are applied in
|
||||
this port.
|
||||
Patches for those are in 'mule-2.3-19.34.patch-YYMMDD.tar.gz' and are
|
||||
applied in this port.
|
||||
|
||||
- S. Taoka
|
||||
taoka@infonets.hiroshima-u.ac.jp
|
||||
|
|
|
@ -1,35 +1,48 @@
|
|||
# New ports collection makefile for: files except executables for mule
|
||||
# Version required: 2.3
|
||||
# New ports collection makefile for: files except executables for mule 2.3@19.34
|
||||
# Version required: 2.3@19.34
|
||||
# Date created: 7 July 1997
|
||||
# Whom: Satoshi Taoka <taoka@infonets.hiroshima-u.ac.jp>
|
||||
#
|
||||
# $Id$
|
||||
# $Id: Makefile,v 1.30 1997/09/10 08:49:44 asami Exp $
|
||||
#
|
||||
|
||||
DISTNAME= mule-2.3
|
||||
PKGNAME= mule-common-2.3
|
||||
CATEGORIES= editors chinese japanese korean
|
||||
CATEGORIES= editors japanese
|
||||
MASTER_SITES= ftp://etlport.etl.go.jp/pub/mule/ \
|
||||
ftp://ftp.mei.co.jp/archive/free/gnu/emacs/Mule/ \
|
||||
ftp://ftp.iij.ad.jp/pub/misc/mule/ \
|
||||
ftp://ports.jp.FreeBSD.org/pub/incoming/distfiles/
|
||||
DISTFILES= mule-2.3.tar.gz mule-2.3.patch-970819.tar.gz
|
||||
http://www.infonets.hiroshima-u.ac.jp/~taoka/FreeBSD/mule/
|
||||
DISTFILES= emacs-19.34b.tar.gz mule-2.3-19.34.patch-981002.tar.gz
|
||||
|
||||
PATCH_SITES= ftp://etlport.etl.go.jp/pub/mule/
|
||||
PATCHFILES= mule-23-1934-alpha01.diff.gz
|
||||
PATCH_DIST_STRIP= -p1
|
||||
|
||||
MAINTAINER= taoka@infonets.hiroshima-u.ac.jp
|
||||
|
||||
EXTRACT_ONLY= mule-2.3.tar.gz
|
||||
.for dir in editors/mule japanese/mule-canna japanese/mule-canna+sj3 \
|
||||
japanese/mule-canna japanese/mule-canna+sj3 \
|
||||
japanese/mule-canna+sj3+wnn4 japanese/mule-canna+sj3+wnn6 \
|
||||
japanese/mule-canna+wnn4 japanese/mule-canna+wnn6 \
|
||||
japanese/mule-sj3 japanese/mule-sj3+wnn japanese/mule-sj3+wnn6 \
|
||||
japanese/mule-wnn4 japanese/mule-wnn6 \
|
||||
chinese/mule-wnn4 korean/mule-wnn4
|
||||
.if exists(${.CURDIR}/../../${dir}/work/.build_done)
|
||||
.for dir in chinese/mule-wnn4 \
|
||||
editors/mule \
|
||||
japanese/mule-canna+sj3+wnn4 \
|
||||
japanese/mule-canna+sj3+wnn6 \
|
||||
japanese/mule-canna+sj3 \
|
||||
japanese/mule-canna+wnn4 \
|
||||
japanese/mule-canna+wnn6 \
|
||||
japanese/mule-canna \
|
||||
japanese/mule-sj3+wnn4 \
|
||||
japanese/mule-sj3+wnn6 \
|
||||
japanese/mule-sj3 \
|
||||
japanese/mule-wnn4 \
|
||||
japanese/mule-wnn6 \
|
||||
korean/mule-wnn4
|
||||
.if exists(${.CURDIR}/../../${dir}/work/.install_done)
|
||||
WRKDIR= ${.CURDIR}/../../${dir}/work
|
||||
.elif exists(${.CURDIR}/../../${dir}/work/.build_done)
|
||||
WRKDIR?= ${.CURDIR}/../../${dir}/work
|
||||
.endif
|
||||
.endfor
|
||||
WRKSRC= ${WRKDIR}/mule
|
||||
WRKSRC= ${WRKDIR}/emacs-19.34
|
||||
STARTUP_SCRIPT= ${PREFIX}/etc/rc.d/mule.sh
|
||||
|
||||
.if !defined(WRKDIR) && !defined(PACKAGE_BUILDING)
|
||||
BROKEN= You should build install one of the other mule ports first
|
||||
|
@ -37,39 +50,44 @@ BROKEN= You should build install one of the other mule ports first
|
|||
|
||||
INSTALL_COOKIE= ${WRKDIR}/.install_done-${PKGNAME}
|
||||
PACKAGE_COOKIE= ${WRKDIR}/.package_done-${PKGNAME}
|
||||
TMPPLIST= ${WRKDIR}/.PLIST.mktmp-${PKGNAME}
|
||||
PLIST_SUB= EMACS_VERSION=19.34
|
||||
|
||||
USE_GMAKE= yes
|
||||
|
||||
GNU_CONFIGURE= yes
|
||||
USE_GMAKE= yes
|
||||
CONFIGURE_ARGS= i386--freebsd --with-x-toolkit \
|
||||
--terminal-face \
|
||||
EMACS_PREFIX= mule
|
||||
EMACS_EXECUTABLE = mule
|
||||
CONFIGURE_ARGS= i386--freebsd --with-executable=${EMACS_EXECUTABLE} \
|
||||
--with-emacs-prefix=${EMACS_PREFIX} \
|
||||
--with-terminal-face \
|
||||
--x-includes=${X11BASE}/include --x-libraries=${X11BASE}/lib \
|
||||
--locallisppath=${PREFIX}/lib/mule/site-lisp:${PREFIX}/share/emacs/site-lisp
|
||||
STRIP=
|
||||
MAN1= coco.1 ctags.1 etags.1 m2ps.1 mule.1
|
||||
MAN1= coco.1 ctags.1 etags.1 m2ps.1 emacs.1 mule.1
|
||||
|
||||
INSTALL_TARGET= install-arch-indep
|
||||
|
||||
post-extract:
|
||||
${EXTRACT_CMD} -C ${WRKSRC} ${EXTRACT_BEFORE_ARGS} ${_DISTDIR}/mule-2.3.patch-970819.tar.gz
|
||||
cd ${WRKSRC}; ${EXTRACT_CMD} ${EXTRACT_BEFORE_ARGS} ./takana.tar.gz
|
||||
|
||||
pre-patch:
|
||||
cd ${WRKSRC}; ${PATCH} ${PATCH_DIST_ARGS} < ${WRKSRC}/patch
|
||||
|
||||
post-patch:
|
||||
cd ${WRKSRC}; ${PATCH} ${PATCH_DIST_ARGS} < ${WRKSRC}/Mule-2.3.patch
|
||||
${CP} ${FILESDIR}/unexfreebsd.c ${WRKSRC}/src
|
||||
|
||||
pre-build:
|
||||
find ${WRKSRC} \( -name \*.orig -o -name \*~ \) -exec ${RM} -f \{} \;
|
||||
${RM} -f ${WRKSRC}/etc/DOC* ${WRKSRC}/src/emacs ${WRKSRC}/src/emacs-19.28.*
|
||||
${RM} -f ${WRKSRC}/etc/DOC* ${WRKSRC}/src/emacs ${WRKSRC}/src/emacs-19.34.*
|
||||
|
||||
post-install:
|
||||
# note that any2ps rcs-checkin are scripts
|
||||
.for file in b2m coco ctags emacsclient etags m2ps
|
||||
strip ${PREFIX}/bin/${file}
|
||||
.endfor
|
||||
if [ ! -f ${PREFIX}/info/dir ]; then \
|
||||
${SED} -ne '1,/Menu:/p' /usr/share/info/dir > ${PREFIX}/info/dir; \
|
||||
fi
|
||||
.for info in emacs vip forms gnus cl sc
|
||||
if [ ! -f ${PREFIX}/share/mule/19.34/info/dir ]; then \
|
||||
${MKDIR} ${PREFIX}/share/mule/19.34/info; \
|
||||
${SED} -ne '1,/Menu:/p' /usr/share/info/dir > ${PREFIX}/share/mule/19.34/info/dir; \
|
||||
fi
|
||||
.for info in emacs vip viper forms gnus mh-e cl sc dired-x ediff ccmode message
|
||||
install-info ${PREFIX}/info/${info} ${PREFIX}/info/dir
|
||||
.endfor
|
||||
# Our makeinfo can't handle files with Japanese characters. :<
|
||||
|
@ -80,6 +98,19 @@ post-install:
|
|||
install-info --section="The Emacs editor and associated tools" --entry="* Canna-jp: (canna-jp). Another Japanese Inputting Method. (Japanese)" ${PREFIX}/info/canna-jp ${PREFIX}/info/dir
|
||||
@${SH} ${PKGDIR}/INSTALL ${PKGNAME} POST-INSTALL
|
||||
@${TOUCH} ${TOUCH_FLAGS} ${INSTALL_COOKIE}
|
||||
if [ ! -f ${STARTUP_SCRIPT} ]; then \
|
||||
${ECHO} "Installing ${STARTUP_SCRIPT} startup file."; \
|
||||
${ECHO} '#!/bin/sh' > ${STARTUP_SCRIPT}; \
|
||||
${ECHO} 'echo -n " Mule"' >> ${STARTUP_SCRIPT}; \
|
||||
${ECHO} 'if [ -d /var/run/emacs/lock ]; then' >> ${STARTUP_SCRIPT}; \
|
||||
${ECHO} ' rm -f /var/run/emacs/lock/*' >> ${STARTUP_SCRIPT}; \
|
||||
${ECHO} "else" >> ${STARTUP_SCRIPT}; \
|
||||
${ECHO} " mkdir -p /var/run/emacs/lock" >> ${STARTUP_SCRIPT}; \
|
||||
${ECHO} "fi" >> ${STARTUP_SCRIPT} ; \
|
||||
${ECHO} "chmod 1777 /var/run/emacs/lock${lockdir}" >> ${STARTUP_SCRIPT} ; \
|
||||
chmod 755 ${STARTUP_SCRIPT} ; \
|
||||
chown bin.bin ${STARTUP_SCRIPT}; \
|
||||
fi
|
||||
|
||||
post-package:
|
||||
@${TOUCH} ${TOUCH_FLAGS} ${PACKAGE_COOKIE}
|
||||
|
|
|
@ -1,2 +1,3 @@
|
|||
MD5 (mule-2.3.tar.gz) = e97cfbf19ee43442b416004eb92aac41
|
||||
MD5 (mule-2.3.patch-970819.tar.gz) = affdd51086c15abbb0a50999ac2e2796
|
||||
MD5 (emacs-19.34b.tar.gz) = 9bd3c694a9019c2a2ebd703a9a0394e0
|
||||
MD5 (mule-2.3-19.34.patch-981002.tar.gz) = cadf0c5e4ec4d74b921ffa96a7cca96e
|
||||
MD5 (mule-23-1934-alpha01.diff.gz) = 09b0fbf4871b701eb6371e56388db9e0
|
||||
|
|
|
@ -1,25 +1,6 @@
|
|||
--- ./man/Makefile.org Sat Jul 2 14:35:17 1994
|
||||
+++ ./man/Makefile Tue May 20 22:28:50 1997
|
||||
@@ -4,7 +4,7 @@
|
||||
MAKEINFO = makeinfo
|
||||
TEXINDEX_OBJS = texindex.o getopt.o
|
||||
INFO_TARGETS = ../info/emacs ../info/cl ../info/forms ../info/vip \
|
||||
- ../info/gnus ../info/sc ../info/info ../info/dired-x
|
||||
+ ../info/gnus ../info/sc ../info/dired-x
|
||||
DVI_TARGETS = emacs.dvi cl.dvi forms.dvi vip.dvi gnus.dvi sc.dvi dired-x.dvi
|
||||
INFOSOURCES = info.texi info-stnd.texi
|
||||
|
||||
@@ -54,6 +54,7 @@
|
||||
gnu1.texi \
|
||||
glossary.texi
|
||||
|
||||
+all: info
|
||||
info: $(INFO_TARGETS)
|
||||
|
||||
dvi: $(DVI_TARGETS)
|
||||
--- ./man/vip.texi.org Tue May 20 22:29:04 1997
|
||||
+++ ./man/vip.texi Tue May 20 22:30:32 1997
|
||||
@@ -24,6 +24,10 @@
|
||||
--- ./man/vip.texi.org Fri Jun 16 15:31:11 1995
|
||||
+++ ./man/vip.texi Tue May 20 01:28:33 1997
|
||||
@@ -2,6 +2,10 @@
|
||||
|
||||
@setfilename ../info/vip
|
||||
@settitle VIP
|
||||
|
@ -30,8 +11,8 @@
|
|||
|
||||
@iftex
|
||||
@finalout
|
||||
--- ./man/emacs.texi.org Fri Nov 4 03:08:52 1994
|
||||
+++ ./man/emacs.texi Tue May 20 22:30:32 1997
|
||||
--- ./man/emacs.texi.org Mon Aug 19 21:15:12 1996
|
||||
+++ ./man/emacs.texi Tue May 20 01:20:11 1997
|
||||
@@ -49,6 +49,11 @@
|
||||
@settitle GNU Emacs Manual
|
||||
@setfilename ../info/emacs
|
||||
|
@ -44,8 +25,21 @@
|
|||
@c
|
||||
@c in general, keep the following line commented out, unless doing a
|
||||
@c copy of this manual that will be published. the manual should go
|
||||
--- ./man/forms.texi.org Thu Jul 28 13:46:45 1994
|
||||
+++ ./man/forms.texi Tue May 20 22:30:32 1997
|
||||
--- ./man/viper.texi.org Wed Aug 7 10:59:45 1996
|
||||
+++ ./man/viper.texi Tue May 20 01:29:17 1997
|
||||
@@ -4,6 +4,10 @@
|
||||
\input texinfo
|
||||
|
||||
@setfilename ../info/viper
|
||||
+@dircategory The Emacs editor and associated tools
|
||||
+@direntry
|
||||
+* VIPER: (viper). The new VI-emulation mode in Emacs-19.29.
|
||||
+@end direntry
|
||||
|
||||
@iftex
|
||||
@finalout
|
||||
--- ./man/forms.texi.org Sat Mar 23 06:42:27 1996
|
||||
+++ ./man/forms.texi Tue May 20 01:22:37 1997
|
||||
@@ -9,6 +9,11 @@
|
||||
@syncodeindex vr cp
|
||||
@syncodeindex fn cp
|
||||
|
@ -58,8 +52,35 @@
|
|||
@iftex
|
||||
@finalout
|
||||
@setchapternewpage odd
|
||||
--- ./man/cl.texi.org Sat Jan 8 00:42:47 1994
|
||||
+++ ./man/cl.texi Tue May 20 22:30:32 1997
|
||||
--- ./man/gnus.texi.org Wed Jun 26 14:49:29 1996
|
||||
+++ ./man/gnus.texi Tue May 20 01:23:15 1997
|
||||
@@ -5,6 +5,11 @@
|
||||
@synindex fn cp
|
||||
@synindex vr cp
|
||||
@synindex pg cp
|
||||
+@dircategory The Emacs editor and associated tools
|
||||
+@direntry
|
||||
+* GNUS: (gnus). The news reader GNUS.
|
||||
+@end direntry
|
||||
+
|
||||
@iftex
|
||||
@finalout
|
||||
@end iftex
|
||||
--- ./man/mh-e.texi.org Sun Aug 4 00:00:29 1996
|
||||
+++ ./man/mh-e.texi Tue May 20 01:23:49 1997
|
||||
@@ -4,6 +4,10 @@
|
||||
@setfilename ../info/mh-e
|
||||
@settitle mh-e
|
||||
@c %**end of header
|
||||
+@dircategory The Emacs editor and associated tools
|
||||
+@direntry
|
||||
+* MH-E: (mh-e). Emacs interface to the MH mail system.
|
||||
+@end direntry
|
||||
|
||||
@setchapternewpage odd
|
||||
|
||||
--- ./man/cl.texi.org Mon Apr 15 21:36:53 1996
|
||||
+++ ./man/cl.texi Tue May 20 01:24:18 1997
|
||||
@@ -2,6 +2,12 @@
|
||||
@setfilename ../info/cl
|
||||
@settitle Common Lisp Extensions
|
||||
|
@ -73,8 +94,8 @@
|
|||
@iftex
|
||||
@finalout
|
||||
@end iftex
|
||||
--- ./man/sc.texi.org Sat Jan 8 00:41:40 1994
|
||||
+++ ./man/sc.texi Tue May 20 22:30:32 1997
|
||||
--- ./man/sc.texi.org Thu Jan 4 12:55:23 1996
|
||||
+++ ./man/sc.texi Tue May 20 01:25:13 1997
|
||||
@@ -3,6 +3,12 @@
|
||||
@comment %**start of header (This is for running Texinfo on a region.)
|
||||
@setfilename ../info/sc
|
||||
|
@ -88,8 +109,8 @@
|
|||
@iftex
|
||||
@finalout
|
||||
@end iftex
|
||||
--- ./man/dired-x.texi.org Sat Aug 13 09:58:50 1994
|
||||
+++ ./man/dired-x.texi Tue May 20 22:48:19 1997
|
||||
--- ./man/dired-x.texi.org Thu Jan 4 12:54:19 1996
|
||||
+++ ./man/dired-x.texi Tue May 20 01:25:55 1997
|
||||
@@ -18,6 +18,11 @@
|
||||
@setfilename ../info/dired-x
|
||||
@c dired-x.el REVISION NUMBER
|
||||
|
@ -102,57 +123,106 @@
|
|||
@iftex
|
||||
@finalout
|
||||
@end iftex
|
||||
@@ -196,32 +201,32 @@
|
||||
@enumerate
|
||||
@item
|
||||
Omitting of uninteresting files from dired listing.
|
||||
-@itemize
|
||||
+@itemize @bullet
|
||||
@xref{Omitting Files in Dired}
|
||||
@end itemize
|
||||
@item
|
||||
Local variables for dired directories.
|
||||
-@itemize
|
||||
+@itemize @bullet
|
||||
@xref{Local Variables}
|
||||
@end itemize
|
||||
@item
|
||||
Guessing shell commands in dired buffers.
|
||||
-@itemize
|
||||
+@itemize @bullet
|
||||
@xref{Shell Command Guessing}
|
||||
@end itemize
|
||||
@item
|
||||
Running dired command in non-dired buffers.
|
||||
-@itemize
|
||||
+@itemize @bullet
|
||||
@xref{Virtual Dired}
|
||||
@end itemize
|
||||
@item
|
||||
Finding a file mentioned in a buffer
|
||||
-@itemize
|
||||
+@itemize @bullet
|
||||
@xref{Find File At Point}
|
||||
@end itemize
|
||||
@item
|
||||
Commands using file marking.
|
||||
-@itemize
|
||||
+@itemize @bullet
|
||||
@xref{Advanced Mark Commands}
|
||||
@end itemize
|
||||
@end enumerate
|
||||
--- ./man/gnus.texi.org Sun Sep 11 11:52:45 1994
|
||||
+++ ./man/gnus.texi Tue May 20 23:23:03 1997
|
||||
@@ -3,6 +3,12 @@
|
||||
@comment %**start of header (This is for running Texinfo on a region.)
|
||||
@setfilename ../info/gnus
|
||||
@settitle GNUS 3.15 Manual
|
||||
+
|
||||
--- ./man/ediff.texi.org Fri Jun 21 20:00:04 1996
|
||||
+++ ./man/ediff.texi Tue May 20 01:26:29 1997
|
||||
@@ -10,6 +10,11 @@
|
||||
@synindex vr cp
|
||||
@synindex fn cp
|
||||
@synindex pg cp
|
||||
+@dircategory The Emacs editor and associated tools
|
||||
+@direntry
|
||||
+* GNUS: (gnus). The news reader GNUS.
|
||||
+* Ediff: (ediff). A comprehensive visual interface to diff
|
||||
+ and patch.
|
||||
+@end direntry
|
||||
+
|
||||
@iftex
|
||||
@finalout
|
||||
@end iftex
|
||||
--- ./man/cc-mode.texi.org Sun Aug 4 21:56:21 1996
|
||||
+++ ./man/cc-mode.texi Tue May 20 01:27:18 1997
|
||||
@@ -9,6 +9,12 @@
|
||||
@settitle CC-MODE Version 4 Documentation
|
||||
@footnotestyle end
|
||||
|
||||
+@dircategory The Emacs editor and associated tools
|
||||
+@direntry
|
||||
+* CC mode: (ccmode). The GNU Emacs mode for editing C, C++,
|
||||
+ Objective-C and Java code.
|
||||
+@end direntry
|
||||
+
|
||||
@comment !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||
@comment @setchapternewpage odd !! we don't want blank pages !!
|
||||
@comment %**end of header (This is for running Texinfo on a region)
|
||||
--- ./man/message.texi.org Wed Jun 26 14:49:43 1996
|
||||
+++ ./man/message.texi Sat Dec 13 17:46:31 1997
|
||||
@@ -5,6 +5,10 @@
|
||||
@synindex fn cp
|
||||
@synindex vr cp
|
||||
@synindex pg cp
|
||||
+@dircategory The Emacs editor and associated tools
|
||||
+@direntry
|
||||
+* Message: (message). Editing mail and news messages.
|
||||
+@end direntry
|
||||
@iftex
|
||||
@finalout
|
||||
@end iftex
|
||||
--- Makefile.in.~1~ Sat Jul 11 17:57:16 1998
|
||||
+++ Makefile.in Sat Jul 11 17:58:45 1998
|
||||
@@ -191,7 +191,7 @@
|
||||
# Subdirectories to make recursively. `lisp' is not included
|
||||
# because the compiled lisp files are part of the distribution
|
||||
# and you cannot remake them without installing Emacs first.
|
||||
-SUBDIR = lib-src src
|
||||
+SUBDIR = lib-src src man
|
||||
|
||||
# The makefiles of the directories in $SUBDIR.
|
||||
SUBDIR_MAKEFILES = lib-src/Makefile man/Makefile src/Makefile oldXMenu/Makefile lwlib/Makefile
|
||||
--- Makefile.in.~1~ Fri Jul 10 00:00:50 1998
|
||||
+++ Makefile.in Fri Jul 10 00:10:50 1998
|
||||
@@ -375,14 +375,9 @@
|
||||
if [ `(cd ${srcdir}/info && /bin/pwd)` != `(cd ${infodir} && /bin/pwd)` ]; \
|
||||
then \
|
||||
(cd ${infodir}; \
|
||||
- if [ -f dir ]; then \
|
||||
- if [ ! -f dir.old ]; then mv -f dir dir.old; \
|
||||
- else mv -f dir dir.bak; fi; \
|
||||
- fi; \
|
||||
cd ${srcdir}/info ; \
|
||||
- (cd $${thisdir}; ${INSTALL_DATA} ${srcdir}/info/dir ${infodir}/dir); \
|
||||
(cd $${thisdir}; chmod a+r ${infodir}/dir); \
|
||||
- for f in ccmode* cl* dired-x* ediff* emacs* forms* gnus* info* message* mh-e* sc* vip* \
|
||||
+ for f in ccmode* cl* dired-x* ediff* emacs* forms* gnus* message* mh-e* sc* vip* \
|
||||
antenews* canna* egg* languages* m2ps* mule* kbd-trans* \
|
||||
quail* terminology* CCL* ISO2022* R2L* XFONT*; do \
|
||||
(cd $${thisdir}; \
|
||||
--- ./man/Makefile.in.org Thu Jun 27 15:27:19 1996
|
||||
+++ ./man/Makefile.in Tue Apr 15 00:29:52 1997
|
||||
@@ -13,7 +13,7 @@
|
||||
# The makeinfo program is part of the Texinfo distribution.
|
||||
MAKEINFO = makeinfo
|
||||
INFO_TARGETS = ../info/emacs ../info/ccmode ../info/cl ../info/dired-x \
|
||||
- ../info/ediff ../info/forms ../info/gnus ../info/info \
|
||||
+ ../info/ediff ../info/forms ../info/gnus \
|
||||
../info/mh-e ../info/sc ../info/vip ../info/viper \
|
||||
../info/message
|
||||
DVI_TARGETS = emacs.dvi cc-mode.dvi cl.dvi dired-x.dvi ediff.dvi forms.dvi \
|
||||
@@ -66,6 +66,7 @@
|
||||
${srcdir}/gnu1.texi \
|
||||
${srcdir}/glossary.texi
|
||||
|
||||
+all: info
|
||||
info: $(INFO_TARGETS)
|
||||
|
||||
dvi: $(DVI_TARGETS)
|
||||
@@ -74,12 +75,6 @@
|
||||
# in srcdir. There is no provision for Info files
|
||||
# to exist in the build directory.
|
||||
# In a distribution of Emacs, the Info files should be up to date.
|
||||
-
|
||||
-../info/info: ${INFOSOURCES}
|
||||
- cd $(srcdir); $(MAKEINFO) --no-split info.texi
|
||||
-
|
||||
-info.dvi: ${INFOSOURCES}
|
||||
- TEXINPUTS="$(srcdir) $(TEXINPUTS)"; $(TEXI2DVI) ${srcdir}/info.texi
|
||||
|
||||
../info/emacs: ${EMACSSOURCES}
|
||||
cd $(srcdir); $(MAKEINFO) emacs.texi
|
||||
|
|
|
@ -1,25 +1,74 @@
|
|||
--- ../mule-2.3.org/src/s/freebsd.h.org Fri Nov 4 03:11:17 1994
|
||||
+++ ./src/s/freebsd.h Mon Feb 16 17:29:31 1998
|
||||
@@ -31,10 +31,10 @@
|
||||
--- orig/s/freebsd.h Mon Jun 10 05:14:32 1996
|
||||
+++ src/s/freebsd.h Tue Sep 29 11:35:32 1998
|
||||
@@ -1,5 +1,15 @@
|
||||
/* s/ file for freebsd system. */
|
||||
|
||||
#define PENDING_OUTPUT_COUNT(FILE) ((FILE)->_p - (FILE)->_bf._base)
|
||||
|
||||
-#define LIBS_DEBUG
|
||||
+#define LIBS_DEBUG -lcrypt
|
||||
+/* Get the correct __FreeBSD_version, even if this is before that was
|
||||
+ defined. */
|
||||
+#ifndef __FreeBSD__
|
||||
+#define __FreeBSD_version 199401
|
||||
+#elif __FreeBSD__ == 1
|
||||
+#define __FreeBSD_version 199405
|
||||
+#else
|
||||
+#include <osreldate.h>
|
||||
+#endif
|
||||
+
|
||||
/* '__FreeBSD__' is defined by the preprocessor on FreeBSD-1.1 and up.
|
||||
Earlier versions do not have shared libraries, so inhibit them.
|
||||
You can inhibit them on newer systems if you wish
|
||||
@@ -34,7 +44,6 @@
|
||||
#define LIBS_DEBUG
|
||||
#define LIBS_SYSTEM -lutil
|
||||
#define LIBS_TERMCAP -ltermcap
|
||||
-#define LIB_GCC -lgcc
|
||||
+#define LIB_GCC /usr/lib/libgcc.a
|
||||
|
||||
/* Reread the time zone on startup. */
|
||||
#define LOCALTIME_CACHE
|
||||
@@ -81,6 +81,9 @@
|
||||
#define SYSV_SYSTEM_DIR
|
||||
|
||||
@@ -42,12 +51,28 @@
|
||||
#undef BSD_PGRPS
|
||||
#define GETPGRP_NO_ARG
|
||||
|
||||
+#ifdef __ELF__
|
||||
+
|
||||
+#define LD_SWITCH_SYSTEM
|
||||
+#define START_FILES pre-crt0.o /usr/lib/crt1.o /usr/lib/crti.o /usr/lib/crtbegin.o
|
||||
+#define UNEXEC unexelf.o
|
||||
+#define LIB_STANDARD -lgcc -lc -lgcc /usr/lib/crtend.o /usr/lib/crtn.o
|
||||
+#undef LIB_GCC
|
||||
+#define LIB_GCC
|
||||
+
|
||||
+#else /* not __ELF__ */
|
||||
+
|
||||
#ifndef NO_SHARED_LIBS
|
||||
#define LD_SWITCH_SYSTEM -e start -dc -dp
|
||||
#define HAVE_TEXT_START /* No need to define `start_of_text'. */
|
||||
+#if __FreeBSD_version >= 300002
|
||||
+#define START_FILES pre-crt0.o /usr/lib/aout/crt0.o
|
||||
+#else /* __FreeBSD_version < 300002 */
|
||||
#define START_FILES pre-crt0.o /usr/lib/crt0.o
|
||||
-#define UNEXEC unexsunos4.o
|
||||
+#endif /* __FreeBSD_version < 300002 */
|
||||
+#define UNEXEC unexfreebsd.o
|
||||
#define RUN_TIME_REMAP
|
||||
+#define LIB_GCC -lgcc
|
||||
|
||||
#ifndef N_TRELOFF
|
||||
#define N_PAGSIZ(x) __LDPGSZ
|
||||
@@ -63,6 +88,8 @@
|
||||
#endif /* __FreeBSD__ */
|
||||
#endif /* NO_SHARED_LIBS */
|
||||
|
||||
+#endif /* not __ELF__ */
|
||||
+
|
||||
#define HAVE_WAIT_HEADER
|
||||
#define HAVE_GETLOADAVG
|
||||
/*#define HAVE_GETPAGESIZE /* configure now puts this in config.h */
|
||||
@@ -80,6 +107,8 @@
|
||||
#define BSD 199103
|
||||
#elif __FreeBSD__ == 2
|
||||
#define BSD 199306
|
||||
+#elif __FreeBSD__ == 3
|
||||
+#define BSD 199506
|
||||
+#define FREEBSD_NEW_LDSO
|
||||
#endif
|
||||
|
||||
#define WAITTYPE int
|
||||
|
|
23
editors/mule-common/files/patch-ae
Normal file
23
editors/mule-common/files/patch-ae
Normal file
|
@ -0,0 +1,23 @@
|
|||
--- src/unexelf.c.orig Fri Oct 2 12:55:43 1998
|
||||
+++ src/unexelf.c Fri Oct 2 13:02:05 1998
|
||||
@@ -678,7 +678,8 @@
|
||||
if (n < 0)
|
||||
fatal ("Couldn't find segment next to .bss in %s\n", old_name, 0);
|
||||
|
||||
- NEW_PROGRAM_H (n).p_filesz += new_data2_size;
|
||||
+/* NEW_PROGRAM_H (n).p_filesz += new_data2_size; */
|
||||
+ NEW_PROGRAM_H (n).p_filesz = new_bss_addr - NEW_PROGRAM_H (n).p_vaddr; /* From emacs 20.3 */
|
||||
NEW_PROGRAM_H (n).p_memsz = NEW_PROGRAM_H (n).p_filesz;
|
||||
|
||||
#if 0 /* Maybe allow section after data2 - does this ever happen? */
|
||||
@@ -845,7 +846,9 @@
|
||||
|
||||
for (; symp < symendp; symp ++)
|
||||
if (strcmp ((char *) (symnames + symp->st_name), "_end") == 0
|
||||
- || strcmp ((char *) (symnames + symp->st_name), "_edata") == 0)
|
||||
+ || strcmp ((char *) (symnames + symp->st_name), "end") == 0
|
||||
+ || strcmp ((char *) (symnames + symp->st_name), "_edata") == 0
|
||||
+ || strcmp ((char *) (symnames + symp->st_name), "edata") == 0)
|
||||
memcpy (&symp->st_value, &new_bss_addr, sizeof (new_bss_addr));
|
||||
}
|
||||
|
73
editors/mule-common/files/patch-etl
Normal file
73
editors/mule-common/files/patch-etl
Normal file
|
@ -0,0 +1,73 @@
|
|||
From ftp://ftp.etl.go.jp/pub/mule/BUG-INFO
|
||||
|
||||
6) This fix a bug of displaying multilingual text in mode lines.
|
||||
|
||||
--- /usr/dist/mule/mule-2.3/src/xdisp.c Fri Jun 9 17:37:14 1995
|
||||
+++ ./src/xdisp.c Wed Mar 6 17:08:03 1996
|
||||
@@ -3973,8 +3973,9 @@
|
||||
|
||||
/* 91.10.21 by K.Handa, 92.4.30 by Y.Niibe */
|
||||
int mc_flag = !NILP(XBUFFER (w->buffer)->mc_flag);
|
||||
- /* 92.3.21, 92.9.7 by K.Handa */
|
||||
- register unsigned char *endp = string + strlen(string);
|
||||
+ /* 92.3.21, 92.9.7, 95.8.31 by K.Handa */
|
||||
+ register unsigned char *endp
|
||||
+ = string + (length < 0 ? strlen(string) : length);
|
||||
char *hexa = "0123456789ABCDEF"; /* 92.4.9 by K.Handa */
|
||||
/* 92.4.9 by K.Handa, 92.4.30 by Y.Niibe */
|
||||
int ctl_hexa = !NILP (XBUFFER (w->buffer)->ctl_hexa);
|
||||
|
||||
8) Another fix for a severe bug for writing *viscii* file.
|
||||
|
||||
--- mule/lisp/mule-init.el.old Wed May 8 13:05:30 1996
|
||||
+++ ./lisp/mule-init.el Wed May 8 13:04:06 1996
|
||||
@@ -638,7 +638,7 @@
|
||||
(r0 -= 160)
|
||||
(write-read-repeat
|
||||
r0
|
||||
- [ 0 129 130 131 132 165 134 135 136 137 138 139 140 141 142 143
|
||||
+ [ 0 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143
|
||||
144 145 146 0 0 147 150 151 152 0 0 0 0 180 149 0
|
||||
0 0 0 0 0 0 2 5 0 0 0 0 0 0 0 159
|
||||
0 186 0 0 0 128 20 187 188 0 0 25 30 0 179 191
|
||||
|
||||
|
||||
11) This patch fixes Single Shift 3 handling.
|
||||
|
||||
--- /usr/dist/mule/mule-2.3/src/coding.c Wed Nov 30 16:45:02 1994
|
||||
+++ ./src/coding.c Sat Sep 28 09:41:51 1996
|
||||
@@ -1044,7 +1044,7 @@
|
||||
{ \
|
||||
if (lc != lcg) dp = designate(dp, lcg, lc, 3, form), lcg = lc; \
|
||||
if (form & CODE_SEVEN) \
|
||||
- *dp++ = ESC, *dp++ = 'N'; \
|
||||
+ *dp++ = ESC, *dp++ = 'O'; \
|
||||
else \
|
||||
*dp++ = SS3; \
|
||||
cntl = (cntl & ~CC_GRAPHIC_MASK) | CC_IN_G3; \
|
||||
|
||||
12) This patch fixes wrong handling of *iso-2022-lock* by coco.
|
||||
--- /usr/dist/mule/mule-2.3/lib-src/mulelib.c Mon Jul 17 15:03:43 1995
|
||||
+++ ./lib-src/mulelib.c Fri Oct 4 21:28:48 1996
|
||||
@@ -287,13 +287,18 @@
|
||||
p0 = p1 + 1;
|
||||
if (CODE_TYPE (cs) == ISO2022) {
|
||||
long flags[12];
|
||||
- for (i = 0; i < 11; i++) {
|
||||
- if (!(flags[i] = atoi(p0))) flags[i] = Qnil;
|
||||
+ for (i = 0; i < 4; i++) {
|
||||
+ if ((flags[i] = atoi(p0)) == -1) flags[i] = LCASCII;
|
||||
PROCEED_CHAR(',');
|
||||
p0 = p1 + 1;
|
||||
}
|
||||
- flags[i] = atoi(p0);
|
||||
CODE_LC_SET(cs, flags[0], flags[1], flags[2], flags[3]);
|
||||
+ for (; i < 11; i++) {
|
||||
+ if (!(flags[i] = atoi(p0))) flags[i] = Qnil;
|
||||
+ PROCEED_CHAR(',');
|
||||
+ p0 = p1 + 1;
|
||||
+ }
|
||||
+ if (!(flags[i] = atoi(p0))) flags[i] = Qnil;
|
||||
CODE_FORM_SET(cs, (Lisp_Object)flags[4], (Lisp_Object)flags[5],
|
||||
(Lisp_Object)flags[6], (Lisp_Object)flags[7],
|
||||
(Lisp_Object)flags[8], (Lisp_Object)flags[9],
|
11
editors/mule-common/files/patch-mc
Normal file
11
editors/mule-common/files/patch-mc
Normal file
|
@ -0,0 +1,11 @@
|
|||
--- src/s.emacs/freebsd.h Tue Sep 29 11:35:32 1998
|
||||
+++ src/s/freebsd.h Tue Sep 29 11:42:53 1998
|
||||
@@ -42,7 +42,7 @@
|
||||
#define PENDING_OUTPUT_COUNT(FILE) ((FILE)->_p - (FILE)->_bf._base)
|
||||
|
||||
#define LIBS_DEBUG
|
||||
-#define LIBS_SYSTEM -lutil
|
||||
+#define LIBS_SYSTEM -lutil -lcrypt -lxpg4
|
||||
#define LIBS_TERMCAP -ltermcap
|
||||
|
||||
#define SYSV_SYSTEM_DIR
|
89
editors/mule-common/files/patch-md
Normal file
89
editors/mule-common/files/patch-md
Normal file
|
@ -0,0 +1,89 @@
|
|||
diff -arcN ../mule-2.3.org/etc/FAQ-Mule.jp ./etc/FAQ-Mule.jp
|
||||
*** ../mule-2.3.org/etc/FAQ-Mule.jp Fri Jul 21 20:40:06 1995
|
||||
--- ./etc/FAQ-Mule.jp Wed Aug 21 11:33:22 1996
|
||||
***************
|
||||
*** 1867,1872 ****
|
||||
--- 1867,1874 ----
|
||||
|
||||
$B$H=q$/J}K!$b$"$j$^$9!#(B
|
||||
|
||||
+ ($BCm5-(B : FreeBSD$B$G$O!"B>$H6%9g$9$k$?$a%]!<%HHV9f$O(B3086$B$K$7$F$"$j$^$9!#(B)
|
||||
+
|
||||
Emacs lisp $B%W%m%0%i%_%s%0(B
|
||||
=========================
|
||||
|
||||
diff -arcN ../mule-2.3.org/lisp/eggrc-sj3 ./lisp/eggrc-sj3
|
||||
*** ../mule-2.3.org/lisp/eggrc-sj3 Fri Oct 21 13:18:21 1994
|
||||
--- ./lisp/eggrc-sj3 Wed Aug 21 13:05:24 1996
|
||||
***************
|
||||
*** 3,11 ****
|
||||
;;; Version 1.0
|
||||
;;; Copyright 1990 Kiyoji Ishii
|
||||
;;;
|
||||
|
||||
! (set-default-sys-dic-directory "/usr/sony/dict/sj3")
|
||||
! (set-default-usr-dic-directory "/usr/sony/dict/sj3/user/$USER")
|
||||
|
||||
;;;
|
||||
;;; System Dictionary
|
||||
--- 3,17 ----
|
||||
;;; Version 1.0
|
||||
;;; Copyright 1990 Kiyoji Ishii
|
||||
;;;
|
||||
+ ;;;
|
||||
+ ;;; Change dictionary paths.
|
||||
+ ;;; Patched by Hidekazu Kuroki(hidekazu@cs.titech.ac.jp) 1996/8/10
|
||||
+ ;;; Remove $USER variable. Use (user-login-name).
|
||||
+ ;;; Patched by Hidekazu Kuroki(hidekazu@cs.titech.ac.jp) 1996/8/20
|
||||
+ ;;;
|
||||
|
||||
! (set-default-sys-dic-directory "/usr/local/lib/sj3/dict")
|
||||
! (set-default-usr-dic-directory (concat "/usr/local/lib/sj3/dict/user/" (user-login-name)))
|
||||
|
||||
;;;
|
||||
;;; System Dictionary
|
||||
diff -arcN ../mule-2.3.org/lisp/sj3-egg.el ./lisp/sj3-egg.el
|
||||
*** ../mule-2.3.org/lisp/sj3-egg.el Fri Feb 17 17:23:31 1995
|
||||
--- ./lisp/sj3-egg.el Wed Aug 21 13:32:36 1996
|
||||
***************
|
||||
*** 294,301 ****
|
||||
;;;
|
||||
;;; Entry functions for egg-startup-file
|
||||
;;;
|
||||
|
||||
! (defvar *default-sys-dic-directory* "/usr/sony/dict/sj3")
|
||||
|
||||
(defun set-default-sys-dic-directory (pathname)
|
||||
"$B%7%9%F%`<-=q$NI8=`(Bdirectory PATHNAME$B$r;XDj$9$k!#(B
|
||||
--- 294,307 ----
|
||||
;;;
|
||||
;;; Entry functions for egg-startup-file
|
||||
;;;
|
||||
+ ;;;
|
||||
+ ;;; Change dictionary paths.
|
||||
+ ;;; Patched by Hidekazu Kuroki(hidekazu@cs.titech.ac.jp) 1996/8/10
|
||||
+ ;;; Remove $USER variable. Use (user-login-name).
|
||||
+ ;;; Patched by Hidekazu Kuroki(hidekazu@cs.titech.ac.jp) 1996/8/20
|
||||
+ ;;;
|
||||
|
||||
! (defvar *default-sys-dic-directory* "/usr/local/lib/sj3/dict")
|
||||
|
||||
(defun set-default-sys-dic-directory (pathname)
|
||||
"$B%7%9%F%`<-=q$NI8=`(Bdirectory PATHNAME$B$r;XDj$9$k!#(B
|
||||
***************
|
||||
*** 310,316 ****
|
||||
(format "System Default directory(%s) $B$,$"$j$^$;$s!#(B" pathname))
|
||||
(setq *default-sys-dic-directory* (file-name-as-directory pathname)))))
|
||||
|
||||
! (defvar *default-usr-dic-directory* "/usr/sony/dict/sj3/user/$USER")
|
||||
|
||||
(defun set-default-usr-dic-directory (pathname)
|
||||
"$BMxMQ<T<-=q$NI8=`(Bdirectory PATHNAME$B$r;XDj$9$k!#(B
|
||||
--- 316,322 ----
|
||||
(format "System Default directory(%s) $B$,$"$j$^$;$s!#(B" pathname))
|
||||
(setq *default-sys-dic-directory* (file-name-as-directory pathname)))))
|
||||
|
||||
! (defvar *default-usr-dic-directory* (concat "/usr/local/lib/sj3/dict/user/" (user-login-name)))
|
||||
|
||||
(defun set-default-usr-dic-directory (pathname)
|
||||
"$BMxMQ<T<-=q$NI8=`(Bdirectory PATHNAME$B$r;XDj$9$k!#(B
|
60
editors/mule-common/files/patch-mf
Normal file
60
editors/mule-common/files/patch-mf
Normal file
|
@ -0,0 +1,60 @@
|
|||
--- ../mule.org/lisp/eggrc-wnn Fri Jul 28 20:12:41 1995
|
||||
+++ ./lisp/eggrc-wnn Wed Oct 29 12:13:50 1997
|
||||
@@ -24,7 +24,7 @@
|
||||
;;;
|
||||
;;; modified for Wnn V4 - Use compatible library of Wnn v3
|
||||
;;; Copyright 1989 OMRON Tateisi Electronics, Co.
|
||||
-;;; 1989 7/12 by H.Kuribayashi kuri@frf.oron.junet
|
||||
+;;; 1989 7/12 by H.Kuribayashi kuri@frf.omron.junet
|
||||
|
||||
;;; 92.5.19 modified for Wnn V4 by T.Shingu <shingu@cpr.canon.co.jp>
|
||||
;;; Use non compatible library.
|
||||
@@ -50,14 +50,16 @@
|
||||
(concat wnn-usr-dic-dir "/symbol.h") 1 nil t)
|
||||
(add-wnn-dict "iwanami/tankan.dic" "" 1 nil nil)
|
||||
(add-wnn-dict "iwanami/tankan2.dic" "" 1 nil nil)
|
||||
- (add-wnn-dict "iwanami/tel.dic" "" 1 nil nil)
|
||||
- (add-wnn-dict "iwanami/zip.dic" "" 1 nil nil)
|
||||
+ (add-wnn-dict "iwanami/tel.dic"
|
||||
+ (concat wnn-usr-dic-dir "/tel.h") 1 nil t)
|
||||
+ (add-wnn-dict "iwanami/zip.dic"
|
||||
+ (concat wnn-usr-dic-dir "/zip.h") 1 nil t)
|
||||
(add-wnn-dict (concat wnn-usr-dic-dir "/ud") "" 15 t t)
|
||||
; (add-wnn-dict "wnncons/tankan2.dic" "" 1 nil nil)
|
||||
; (add-wnn-dict "wnncons/tankan3.dic" "" 1 nil nil)
|
||||
(set-wnn-param 5 10 2 45 0 80 5 1 20 0 400 -100 400 80 200 2 200)
|
||||
|
||||
- (add-wnn-notrans-dict (concat wnn-usr-dic-dir "/katakana") 15 t)
|
||||
+ (add-wnn-notrans-dict (concat wnn-usr-dic-dir "/muhenkan") 15 t)
|
||||
(add-wnn-bmodify-dict (concat wnn-usr-dic-dir "/bunsetsu") 15 t)
|
||||
|
||||
(set-last-is-first-mode t)
|
||||
@@ -101,7 +103,9 @@
|
||||
(add-wnn-dict (concat wnn-usr-dic-dir "/ud") "" 5 t t)
|
||||
; (add-wnn-dict "wnncons/tankan2.dic" "" 1 nil nil)
|
||||
; (add-wnn-dict "wnncons/tankan3.dic" "" 1 nil nil)
|
||||
- (set-wnn-param 2 10 2 45 5 80 5 1 40 0 400 -100 400 80 200 2 200)
|
||||
+; (set-wnn-param 2 10 2 45 5 80 5 1 40 0 400 -100 400 80 200 2 200)
|
||||
+; New Parameter
|
||||
+ (set-wnn-param 2 10 2 45 100 200 5 1 40 -100 200 -100 200 80 200 200 200)
|
||||
(set-wnn-reverse t)
|
||||
(set-wnn-fuzokugo "pubdic/full.fzk")
|
||||
(add-wnn-dict "pubdic/kihon.dic" (concat wnn-usr-dic-dir "/kihon.h") 5 nil t)
|
||||
@@ -158,7 +162,7 @@
|
||||
((eq wnn-server-type 'kserver)
|
||||
(set-wnn-reverse nil)
|
||||
(set-wnn-fuzokugo "sys/full.fzk")
|
||||
- ; (add-wnn-dict "sys/hword.dic" (concat wnn-usr-dic-dir "/hword.h") 4 nil t)
|
||||
+ (add-wnn-dict "sys/hword.dic" (concat wnn-usr-dic-dir "/hword.h") 4 nil t)
|
||||
(add-wnn-dict "sys/single.dic" (concat wnn-usr-dic-dir "/single.h") 1 nil t)
|
||||
(add-wnn-dict (concat wnn-usr-dic-dir "/ud") "" 5 t t)
|
||||
; (add-wnn-dict (concat wnn-usr-dic-dir "/hangul") "" 5 t t)
|
||||
@@ -166,7 +170,7 @@
|
||||
(set-wnn-param 1 5 2 750 10 80 10 5 1000 50 0 -200 0 0 0 16 0)
|
||||
(set-wnn-reverse t)
|
||||
(set-wnn-fuzokugo "sys/full.fzk")
|
||||
- ; (add-wnn-dict "sys/hword.dic" (concat wnn-usr-dic-dir "/hword.h") 4 nil t)
|
||||
+ (add-wnn-dict "sys/hword.dic" (concat wnn-usr-dic-dir "/hword.h") 4 nil t)
|
||||
(add-wnn-dict "sys/single.dic" (concat wnn-usr-dic-dir "/single.h") 1 nil t)
|
||||
(add-wnn-dict (concat wnn-usr-dic-dir "/ud") "" 5 t t)
|
||||
; (add-wnn-dict (concat wnn-usr-dic-dir "/hangul") "" 5 t t)
|
45
editors/mule-common/files/patch-mk
Normal file
45
editors/mule-common/files/patch-mk
Normal file
|
@ -0,0 +1,45 @@
|
|||
--- Makefile.in.orig Fri Jul 10 11:22:07 1998
|
||||
+++ Makefile.in Fri Jul 10 11:27:03 1998
|
||||
@@ -310,14 +310,14 @@
|
||||
### It would be nice to do something for a parallel make
|
||||
### to ensure that install-arch-indep finishes before this starts.
|
||||
install-arch-dep: mkdir
|
||||
- (cd lib-src; \
|
||||
- $(MAKE) install $(MFLAGS) prefix=${prefix} \
|
||||
- exec_prefix=${exec_prefix} bindir=${bindir} \
|
||||
- libexecdir=${libexecdir} archlibdir=${archlibdir})
|
||||
${INSTALL_PROGRAM} src/emacs ${bindir}/${executable}-${version}
|
||||
-chmod 1755 ${bindir}/${executable}-${version}
|
||||
rm -f ${bindir}/$(EMACS)
|
||||
-ln ${bindir}/${executable}-${version} ${bindir}/$(EMACS)
|
||||
+ echo "Copying etc/DOC-* to ${docdir} ..." ; \
|
||||
+ (cd ./etc; tar -cf - DOC*)|(cd ${docdir}; umask 0; tar -xvf - ); \
|
||||
+ (cd $(docdir); chmod a+r DOC*; rm DOC) \
|
||||
+
|
||||
|
||||
### Install the files that are machine-independent.
|
||||
### Most of them come straight from the distribution;
|
||||
@@ -327,6 +327,10 @@
|
||||
### Note that we copy DOC* and then delete DOC
|
||||
### as a workaround for a bug in tar on Ultrix 4.2.
|
||||
install-arch-indep: mkdir
|
||||
+ (cd lib-src; \
|
||||
+ $(MAKE) install $(MFLAGS) prefix=${prefix} \
|
||||
+ exec_prefix=${exec_prefix} bindir=${bindir} \
|
||||
+ libexecdir=${libexecdir} archlibdir=${archlibdir})
|
||||
-set ${COPYDESTS} ; \
|
||||
for dir in ${COPYDIR} ; do \
|
||||
if [ `(cd $$1 && /bin/pwd)` != `(cd $${dir} && /bin/pwd)` ] ; then \
|
||||
@@ -360,9 +364,9 @@
|
||||
-chmod -R a+r ${COPYDESTS}
|
||||
if [ `(cd ./etc; /bin/pwd)` != `(cd ${docdir}; /bin/pwd)` ]; \
|
||||
then \
|
||||
- echo "Copying etc/DOC-*, etc/CHARSETS, and etc/CODINGS to ${docdir} ..." ; \
|
||||
- (cd ./etc; tar -cf - DOC* CHARSETS CODINGS)|(cd ${docdir}; umask 0; tar -xvf - ); \
|
||||
- (cd $(docdir); chmod a+r DOC* CHARSETS CODINGS; rm DOC) \
|
||||
+ echo "Copying etc/CHARSETS, and etc/CODINGS to ${docdir} ..." ; \
|
||||
+ (cd ./etc; tar -cf - CHARSETS CODINGS)|(cd ${docdir}; umask 0; tar -xvf - ); \
|
||||
+ (cd $(docdir); chmod a+r CHARSETS CODINGS) \
|
||||
else true; fi
|
||||
if [ -r ./lisp ] \
|
||||
&& [ x`(cd ./lisp; /bin/pwd)` != x`(cd ${lispdir}; /bin/pwd)` ] \
|
5
editors/mule-common/files/patch-ml
Normal file
5
editors/mule-common/files/patch-ml
Normal file
|
@ -0,0 +1,5 @@
|
|||
--- lisp/its/han-kata.el~ Thu Aug 6 19:55:01 1998
|
||||
+++ lisp/its/han-kata.el Mon Aug 10 13:24:50 1998
|
||||
@@ -45 +45 @@
|
||||
-(defvar enable-double-n-syntax nil "*Enable ""nn"" input for ""(I](B"" ")
|
||||
+(defvar enable-double-n-syntax nil "*Enable \"nn\" input for \"(I](B\" ")
|
16
editors/mule-common/files/patch-mm
Normal file
16
editors/mule-common/files/patch-mm
Normal file
|
@ -0,0 +1,16 @@
|
|||
--- configure.orig Sat Sep 19 23:06:14 1998
|
||||
+++ configure Sat Sep 19 23:14:44 1998
|
||||
@@ -564,11 +564,11 @@
|
||||
emacs_prefix=emacs
|
||||
lispdir='${datadir}/${emacs_prefix}/${version}/lisp'
|
||||
locallisppath='${datadir}/${emacs_prefix}/${version}/site-lisp:'\
|
||||
-'${datadir}/${emacs_prefix}/site-lisp'
|
||||
+'${datadir}/${emacs_prefix}/site-lisp:${datadir}/emacs/site-lisp'
|
||||
lisppath='${locallisppath}:${lispdir}'
|
||||
etcdir='${datadir}/${emacs_prefix}/${version}/etc'
|
||||
# share lockdir with emacs and mule.
|
||||
-lockdir='${sharedstatedir}/emacs/lock'
|
||||
+lockdir='/var/run/emacs/lock'
|
||||
archlibdir='${libexecdir}/${emacs_prefix}/${version}/${configuration}'
|
||||
docdir='${datadir}/${emacs_prefix}/${version}/etc'
|
||||
|
|
@ -32,11 +32,11 @@
|
|||
(setq-default quail-current-package (assoc "hangul" quail-package-alist))
|
||||
)
|
||||
|
||||
;; Add System Info path '/usr/share/info' into Info-default-directory-list
|
||||
(setq Info-default-directory-list
|
||||
(append (list
|
||||
"%%LOCALBASE%%/share/mule/19.34/info"
|
||||
"%%X11BASE%%/info"
|
||||
"/usr/share/info"
|
||||
"/usr/X11R6/info"
|
||||
) Info-default-directory-list))
|
||||
|
||||
;; END mule-family
|
||||
|
|
692
editors/mule-common/files/unexfreebsd.c
Normal file
692
editors/mule-common/files/unexfreebsd.c
Normal file
|
@ -0,0 +1,692 @@
|
|||
/* Code to do an unexec for FreeBSD for a temacs linked -Bdynamic.
|
||||
Derived from unexnetbsd.c, which was derived from unexsunos4.c
|
||||
Copyright (C) 1992, 1993 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of XEmacs.
|
||||
|
||||
XEmacs is free software; you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by the
|
||||
Free Software Foundation; either version 2, or (at your option) any
|
||||
later version.
|
||||
|
||||
XEmacs is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with XEmacs; see the file COPYING. If not, write to
|
||||
the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
||||
Boston, MA 02111-1307, USA. */
|
||||
|
||||
/* Synched up with: Not in FSF? */
|
||||
|
||||
/*
|
||||
Created 29-Oct-92 by Harlan Sexton
|
||||
Tweaked 06-Aug-93 by Dean Michaels to work with sun3.
|
||||
Converted 01-Dec-93 by Paul Mackerras to work with NetBSD shared libraries.
|
||||
Tweaked 26-Feb-94 by Shawn Carey for use with FreeBSD-1.1 shared libraries.
|
||||
*/
|
||||
|
||||
/********************** Included .h Files **************************/
|
||||
|
||||
#include <config.h>
|
||||
|
||||
#include <stdarg.h>
|
||||
#include <sys/param.h>
|
||||
#include <sys/mman.h>
|
||||
#include <sys/file.h>
|
||||
#include <sys/stat.h>
|
||||
#include <sys/types.h>
|
||||
#include <string.h>
|
||||
#include <stdio.h>
|
||||
#include <a.out.h>
|
||||
#include <unistd.h>
|
||||
#include <ctype.h>
|
||||
#include <stab.h>
|
||||
#include <dirent.h>
|
||||
#include <link.h>
|
||||
|
||||
/********************** Macros *************************************/
|
||||
|
||||
#define SYS_ERR strerror(errno)
|
||||
|
||||
#define MASK_UP(x,p_of_two) \
|
||||
((((unsigned long) (x)) + ((p_of_two) - 1)) & (~((p_of_two) - 1)))
|
||||
|
||||
#define MASK_DOWN(x,p_of_two) (((unsigned long) (x)) & (~((p_of_two) - 1)))
|
||||
|
||||
/********************** Typedefs and Structs ***********************/
|
||||
|
||||
struct translation_struct
|
||||
{
|
||||
long txtaddr;
|
||||
long txtoff;
|
||||
long dataddr;
|
||||
long datoff;
|
||||
long bssaddr;
|
||||
long endaddr;
|
||||
};
|
||||
|
||||
/********************** Function Prototypes/Declarations ***********/
|
||||
|
||||
static void unexec_error (const char *m, int use_errno, ...);
|
||||
static int unexec_open (char *filename, int flag, int mode);
|
||||
static caddr_t unexec_mmap (int fd, size_t len, int prot, int flags);
|
||||
static long unexec_seek (int fd, long position);
|
||||
static void unexec_read (int fd, long position, char *buf, int bytes);
|
||||
static void unexec_write (int fd, long position, char *buf, int bytes);
|
||||
static void unexec_pad (int fd, int bytes);
|
||||
static void unexec_fstat (int fd, struct stat *statptr);
|
||||
static void unexec_fchmod (int fd, int mode);
|
||||
static long unexec_addr_to_offset (long addr, struct translation_struct *ts);
|
||||
static void copy_relocation_site (struct relocation_info *ri,
|
||||
caddr_t from_base_addr,
|
||||
caddr_t to_base_addr,
|
||||
struct translation_struct *ts);
|
||||
static void reset_symtab (struct nlist *start, struct nlist *end,
|
||||
char *strtab, long edata_value, long end_value,
|
||||
int shlib_image);
|
||||
static void reset_ldso_symtab (struct nzlist *start, struct nzlist *end,
|
||||
char *strtab, long edata_value, long end_value,
|
||||
int shlib_image);
|
||||
int run_time_remap (char *dummy);
|
||||
|
||||
/********************** Variables **********************************/
|
||||
|
||||
/* for reporting error messages from system calls */
|
||||
extern int errno;
|
||||
extern int _DYNAMIC;
|
||||
extern char **environ;
|
||||
|
||||
static unsigned long sbrk_of_0_at_unexec;
|
||||
|
||||
/*******************************************************************/
|
||||
|
||||
static void
|
||||
unexec_error (const char *fmt, int use_errno, ...)
|
||||
{
|
||||
const char *err_msg = SYS_ERR;
|
||||
va_list args;
|
||||
|
||||
fprintf (stderr, "unexec - ");
|
||||
va_start (args, use_errno);
|
||||
vfprintf (stderr, fmt, args);
|
||||
va_end (args);
|
||||
|
||||
if (use_errno)
|
||||
fprintf (stderr, ": %s", err_msg);
|
||||
fprintf (stderr, "\n");
|
||||
exit (1);
|
||||
return;
|
||||
}
|
||||
|
||||
static int
|
||||
unexec_open (char *filename, int flag, int mode)
|
||||
{
|
||||
int fd;
|
||||
|
||||
errno = 0;
|
||||
|
||||
fd = open (filename, flag, mode);
|
||||
|
||||
if (fd < 0)
|
||||
unexec_error ("Failure opening file %s", 1, filename);
|
||||
return fd;
|
||||
}
|
||||
|
||||
static caddr_t
|
||||
unexec_mmap (int fd, size_t len, int prot, int flags)
|
||||
{
|
||||
caddr_t return_val;
|
||||
|
||||
unexec_seek (fd, 0);
|
||||
errno = 0;
|
||||
return_val = mmap (0, len, prot, flags, fd, 0);
|
||||
|
||||
if (return_val == (caddr_t) -1)
|
||||
unexec_error ("Failure mmap'ing file", 1);
|
||||
return return_val;
|
||||
}
|
||||
|
||||
|
||||
static long
|
||||
unexec_seek (int fd, long position)
|
||||
{
|
||||
long seek_value;
|
||||
|
||||
if (fd <= 0)
|
||||
unexec_error ("No file open in which to seek", 0);
|
||||
|
||||
errno = 0;
|
||||
|
||||
if (position < 0)
|
||||
seek_value = (long) lseek (fd, 0, L_INCR);
|
||||
else
|
||||
seek_value = (long) lseek (fd, position, L_SET);
|
||||
|
||||
if (seek_value < 0)
|
||||
unexec_error ("Failed to do a seek to 0x%x in %s", 1,
|
||||
position, "unexec() output file");
|
||||
|
||||
return seek_value;
|
||||
}
|
||||
|
||||
static void
|
||||
unexec_read (int fd, long position, char *buf, int bytes)
|
||||
{
|
||||
int n_read;
|
||||
int remains = bytes;
|
||||
position = unexec_seek (fd, position);
|
||||
|
||||
if (bytes < 0)
|
||||
unexec_error ("Attempted read of %d bytes", 0, bytes);
|
||||
|
||||
errno = 0;
|
||||
|
||||
while (remains > 0)
|
||||
{
|
||||
n_read = read (fd, buf, remains);
|
||||
if (n_read <= 0)
|
||||
unexec_error ("Read failed for 0x%x bytes at offset 0x%x in %s",
|
||||
1, bytes, position, "unexec() output file");
|
||||
buf += n_read;
|
||||
remains -= n_read;
|
||||
}
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
static void
|
||||
unexec_write (int fd, long position, char *buf, int bytes)
|
||||
{
|
||||
int n_written;
|
||||
int remains = bytes;
|
||||
position = unexec_seek (fd, position);
|
||||
|
||||
if (bytes < 0)
|
||||
unexec_error ("Attempted write of %d bytes in %s",
|
||||
0, bytes, "unexec() output file");
|
||||
|
||||
errno = 0;
|
||||
|
||||
while (remains > 0)
|
||||
{
|
||||
n_written = write (fd, buf, remains);
|
||||
if (n_written <= 0)
|
||||
unexec_error ("Write failed for 0x%x bytes at offset 0x%x in %s",
|
||||
1, bytes, position, "unexec() output file");
|
||||
buf += n_written;
|
||||
remains -= n_written;
|
||||
}
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
static void
|
||||
unexec_pad (int fd, int bytes)
|
||||
{
|
||||
if (bytes > 0)
|
||||
{
|
||||
char buf[1024];
|
||||
int remaining = bytes;
|
||||
|
||||
memset (buf, 0, sizeof (buf));
|
||||
|
||||
while (remaining > 0)
|
||||
{
|
||||
int this_write = (remaining > sizeof(buf))?sizeof(buf):remaining;
|
||||
unexec_write (fd, -1, buf, this_write);
|
||||
remaining -= this_write;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
unexec_fstat (int fd, struct stat *statptr)
|
||||
{
|
||||
errno = 0;
|
||||
if (-1 == fstat (fd, statptr))
|
||||
unexec_error ("fstat() failed for descriptor %d", 1, fd);
|
||||
return;
|
||||
}
|
||||
|
||||
static void
|
||||
unexec_fchmod (int fd, int mode)
|
||||
{
|
||||
errno = 0;
|
||||
if (-1 == fchmod (fd, mode))
|
||||
unexec_error ("fchmod() failed for descriptor %d", 1, fd);
|
||||
return;
|
||||
}
|
||||
|
||||
static long
|
||||
unexec_addr_to_offset (long addr, struct translation_struct *ts)
|
||||
|
||||
{
|
||||
if ((addr < ts->txtaddr) || (addr >= ts->bssaddr))
|
||||
return -1;
|
||||
else if (addr >= ts->dataddr)
|
||||
return ((long) ((addr - ts->dataddr) + ts->datoff));
|
||||
else
|
||||
return ((long) ((addr - ts->txtaddr) + ts->txtoff));
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* "LD.SO" DATA AND SYMBOL TABLE OPERATIONS
|
||||
*/
|
||||
|
||||
static void
|
||||
copy_relocation_site (struct relocation_info *ri,
|
||||
caddr_t from_base_addr,
|
||||
caddr_t to_base_addr,
|
||||
struct translation_struct *ts)
|
||||
{
|
||||
long offset;
|
||||
caddr_t from, to;
|
||||
|
||||
/* We can get relocation sites in the bss region, for objects whose
|
||||
contents are copied from a shared library. We don't need or want
|
||||
to restore these at present. */
|
||||
#ifndef sparc
|
||||
if (ri->r_copy)
|
||||
return;
|
||||
#else
|
||||
/* Struct relocation_info_sparc doesn't have member r_copy.
|
||||
Instead, we use the address to check if this is run-time-copied. */
|
||||
if (ri->r_address >= ts->bssaddr && ri->r_address < ts->endaddr)
|
||||
return;
|
||||
#endif
|
||||
|
||||
offset = unexec_addr_to_offset (ri->r_address, ts);
|
||||
if (offset == -1)
|
||||
unexec_error ("bad relocation address 0x%x (0x%x)", 0, ri->r_address,
|
||||
((long *)ri)[1]);
|
||||
|
||||
from = from_base_addr + offset;
|
||||
to = to_base_addr + offset;
|
||||
/* This stuff should be in a md_ file somewhere... */
|
||||
#ifndef sparc
|
||||
switch (ri->r_length)
|
||||
{
|
||||
case 0:
|
||||
*((char *) to) = *((char *) from);
|
||||
break;
|
||||
case 1:
|
||||
*((short *) to) = *((short *) from);
|
||||
break;
|
||||
case 2:
|
||||
*((long *) to) = *((long *) from);
|
||||
break;
|
||||
default:
|
||||
unexec_error ("unknown reloc length %d seen during unexec()",
|
||||
0, ri->r_length);
|
||||
break;
|
||||
}
|
||||
#else /* sparc */
|
||||
switch (ri->r_type)
|
||||
{
|
||||
case RELOC_8:
|
||||
case RELOC_DISP8:
|
||||
*((char *) to) = *((char *) from);
|
||||
break;
|
||||
case RELOC_16:
|
||||
case RELOC_DISP16:
|
||||
*((short *) to) = *((short *) from);
|
||||
break;
|
||||
case RELOC_LO10:
|
||||
case RELOC_13:
|
||||
case RELOC_22:
|
||||
case RELOC_HI22:
|
||||
case RELOC_WDISP22:
|
||||
case RELOC_WDISP30:
|
||||
case RELOC_32:
|
||||
case RELOC_DISP32:
|
||||
case RELOC_GLOB_DAT:
|
||||
*((long *) to) = *((long *) from);
|
||||
break;
|
||||
case RELOC_JMP_SLOT:
|
||||
{
|
||||
long *target = (long *) to;
|
||||
long *source = (long *) from;
|
||||
*target = *source;
|
||||
target++;
|
||||
source++;
|
||||
*target = *source;
|
||||
target++;
|
||||
source++;
|
||||
*target = *source;
|
||||
}
|
||||
break;
|
||||
default:
|
||||
unexec_error ("unknown reloc type %d seen during unexec()",
|
||||
0, ri->r_type);
|
||||
break;
|
||||
}
|
||||
#endif /* sparc */
|
||||
}
|
||||
|
||||
static void
|
||||
reset_symtab (struct nlist *start, struct nlist *end, char *strtab,
|
||||
long edata_value, long end_value, int shlib_image)
|
||||
{
|
||||
struct nlist *tmp = start;
|
||||
int found_edata = 0;
|
||||
int found_end = 0;
|
||||
|
||||
while (tmp < end)
|
||||
{
|
||||
int type = tmp->n_type;
|
||||
|
||||
if ((type == (N_UNDF | N_EXT)) &&
|
||||
(tmp->n_value != 0))
|
||||
unexec_error ("unexec'ing image has COMMON symbols in it -- we quit!",
|
||||
0);
|
||||
|
||||
if (!(type & N_STAB))
|
||||
{
|
||||
if (!found_edata &&
|
||||
(type == (N_EXT | N_DATA)) &&
|
||||
tmp->n_un.n_strx &&
|
||||
!strcmp ("_edata", strtab + tmp->n_un.n_strx))
|
||||
{
|
||||
tmp->n_value = edata_value;
|
||||
found_edata = 1;
|
||||
}
|
||||
|
||||
|
||||
if ((type & N_TYPE) == N_BSS)
|
||||
{
|
||||
if (!found_end &&
|
||||
(type == (N_EXT | N_BSS)) &&
|
||||
tmp->n_un.n_strx &&
|
||||
!strcmp ("_end", strtab + tmp->n_un.n_strx))
|
||||
{
|
||||
tmp->n_value = end_value;
|
||||
found_end = 1;
|
||||
}
|
||||
else if (type & N_EXT)
|
||||
tmp->n_type = N_DATA | N_EXT;
|
||||
else
|
||||
tmp->n_type = N_DATA;
|
||||
}
|
||||
|
||||
/* the way things are being handled here, having sbrk() in the
|
||||
image is fatal for an image linked with shared lib's (although
|
||||
the code could be modified to support it), but this should
|
||||
never happen anyway */
|
||||
if (shlib_image &&
|
||||
(type == (N_EXT | N_TEXT)) &&
|
||||
tmp->n_un.n_strx &&
|
||||
!strcmp ("_sbrk", strtab + tmp->n_un.n_strx))
|
||||
unexec_error ("unexec'd shlib image has sbrk() in it -- we quit!",
|
||||
0);
|
||||
}
|
||||
|
||||
tmp++;
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
reset_ldso_symtab (struct nzlist *start, struct nzlist *end, char *strtab,
|
||||
long edata_value, long end_value, int shlib_image)
|
||||
{
|
||||
struct nzlist *tmp = start;
|
||||
int found_edata = 0;
|
||||
int found_end = 0;
|
||||
|
||||
while (tmp < end) {
|
||||
int type = tmp->nz_type;
|
||||
/*
|
||||
* the following code breaks under FreeBSD-1.1-BETA, but everything
|
||||
* seems to work perfectly if it's commented out. This did not break
|
||||
* anything until the changes to ld.so were made.
|
||||
*/
|
||||
/*
|
||||
if ((type == (N_UNDF | N_EXT)) && (tmp->nz_value != 0))
|
||||
unexec_error("unexec'ing image has COMMON symbols in rel -- we quit!",0);
|
||||
*/
|
||||
if (!(type & N_STAB)) {
|
||||
if (!found_edata &&
|
||||
(type == (N_EXT | N_DATA)) &&
|
||||
!strcmp ("_edata", strtab + tmp->nz_strx)) {
|
||||
tmp->nz_value = edata_value;
|
||||
found_edata = 1;
|
||||
}
|
||||
|
||||
if ((type & N_TYPE) == N_BSS) {
|
||||
if (!found_end &&
|
||||
(type == (N_EXT | N_BSS)) &&
|
||||
!strcmp ("_end", strtab + tmp->nz_strx)) {
|
||||
tmp->nz_value = end_value;
|
||||
found_end = 1;
|
||||
} else if (type & N_EXT)
|
||||
tmp->nz_type = N_DATA | N_EXT;
|
||||
else
|
||||
tmp->nz_type = N_DATA;
|
||||
}
|
||||
|
||||
/* the way things are being handled here, having sbrk() in the
|
||||
image is fatal for an image linked with shared lib's (although
|
||||
the code could be modified to support it), but this should
|
||||
never happen anyway */
|
||||
if (shlib_image &&
|
||||
(type == (N_EXT | N_TEXT)) &&
|
||||
!strcmp ("_sbrk", strtab + tmp->nz_strx))
|
||||
unexec_error("unexec'd shlib image has sbrk() ref -- we quit!", 0);
|
||||
}
|
||||
tmp++;
|
||||
}
|
||||
}
|
||||
|
||||
extern int getpagesize (void);
|
||||
|
||||
/*
|
||||
* EXPORTED FUNCTIONS
|
||||
*/
|
||||
|
||||
/* this has to be a global variable to prevent the optimizers from
|
||||
* assuming that it can not be 0.
|
||||
*/
|
||||
static void *dynamic_addr = (void *) &_DYNAMIC;
|
||||
|
||||
int
|
||||
unexec (char *new_name, char *old_name,
|
||||
unsigned int emacs_edata, unsigned int dummy1, unsigned int dummy2)
|
||||
{
|
||||
/* ld.so data */
|
||||
struct _dynamic *ld = 0;
|
||||
struct section_dispatch_table *ld2 = 0;
|
||||
/* old and new state */
|
||||
int old_fd;
|
||||
int new_fd;
|
||||
caddr_t old_base_addr;
|
||||
caddr_t new_base_addr;
|
||||
struct exec old_hdr;
|
||||
struct exec new_hdr;
|
||||
struct stat old_buf;
|
||||
struct stat new_buf;
|
||||
/* some process specific "constants" */
|
||||
unsigned long n_pagsiz, new_edata;
|
||||
long page_size = getpagesize ();
|
||||
caddr_t plt_end;
|
||||
caddr_t current_break = (caddr_t) sbrk (0);
|
||||
|
||||
if (!page_size)
|
||||
unexec_error ("unexec() failed because we can't get the size of a page!",
|
||||
0);
|
||||
|
||||
/* see if this is a -Bdynamic image -- if so, find ld.so structures */
|
||||
if (dynamic_addr)
|
||||
{
|
||||
ld = (struct _dynamic *) dynamic_addr;
|
||||
ld2 = ld->d_un.d_sdt;
|
||||
if (ld->d_version < LD_VERSION_BSD)
|
||||
unexec_error ("%s linked with obsolete version of ld -- we quit!",
|
||||
0, old_name);
|
||||
}
|
||||
|
||||
/* open the old and new files, figuring out how big the old one is
|
||||
so that we can map it in */
|
||||
old_fd = unexec_open (old_name, O_RDONLY, 0);
|
||||
new_fd = unexec_open (new_name, O_RDWR | O_CREAT | O_TRUNC, 0666);
|
||||
|
||||
/* setup the header and the statbuf for old_fd */
|
||||
unexec_read (old_fd, 0, (char *) &old_hdr, sizeof (old_hdr));
|
||||
unexec_fstat (old_fd, &old_buf);
|
||||
|
||||
|
||||
/* set up some important constants */
|
||||
n_pagsiz = __LDPGSZ;
|
||||
if (dynamic_addr)
|
||||
plt_end = (caddr_t) MASK_UP (ld2->sdt_plt + ld2->sdt_plt_sz, sizeof (double));
|
||||
else
|
||||
plt_end = (caddr_t) N_DATADDR (old_hdr);
|
||||
|
||||
#if 0
|
||||
/* never write protect the variable "environ", defined in /lib/crt0.o, and
|
||||
set in process.c and callproc.c */
|
||||
mprotect_bottom_addr = ((unsigned long) &environ) + sizeof (char **);
|
||||
/* never protect ABOVE the end of data emacs_edata specified */
|
||||
mprotect_top_addr = MIN (emacs_edata, N_DATADDR (old_hdr) + old_hdr.a_data);
|
||||
#endif
|
||||
|
||||
/* Set up the image of the old file */
|
||||
old_base_addr = unexec_mmap (old_fd, old_buf.st_size, PROT_READ,
|
||||
MAP_FILE | MAP_PRIVATE);
|
||||
close (old_fd);
|
||||
|
||||
/* set up the new exec */
|
||||
new_hdr = old_hdr;
|
||||
new_edata = (unsigned long) MASK_UP (current_break, n_pagsiz);
|
||||
new_hdr.a_data = new_edata - ((unsigned long) N_DATADDR (old_hdr));
|
||||
new_hdr.a_bss = 0;
|
||||
|
||||
/* set up this variable, in case we want to reset "the break"
|
||||
when restarting */
|
||||
sbrk_of_0_at_unexec = ((unsigned long) MASK_UP (current_break, n_pagsiz));
|
||||
|
||||
/* Write out the first approximation to the new file. The sizes of
|
||||
each section will be correct, but there will be a number of
|
||||
corrections that will need to be made. */
|
||||
{
|
||||
long old_datoff = N_DATOFF (old_hdr);
|
||||
long old_dataddr = N_DATADDR (old_hdr);
|
||||
long new_treloff = N_RELOFF (new_hdr);
|
||||
long old_treloff = N_RELOFF (old_hdr);
|
||||
long ld_so_size = ((unsigned long) plt_end) - old_dataddr;
|
||||
long real_data_size = current_break - plt_end;
|
||||
long pad_size =
|
||||
MASK_UP (current_break, n_pagsiz) - ((unsigned long) current_break);
|
||||
|
||||
|
||||
/* First, write the text segment with new header -- copy everything until
|
||||
the start of the data segment from the old file, and then go back and
|
||||
write the new header. */
|
||||
unexec_write (new_fd, 0, old_base_addr, old_datoff + ld_so_size);
|
||||
unexec_write (new_fd, 0, (char *) &new_hdr, sizeof (new_hdr));
|
||||
|
||||
/* Copy the rest of the data segment from the running image. */
|
||||
unexec_write (new_fd, old_datoff + ld_so_size,
|
||||
plt_end, real_data_size);
|
||||
|
||||
/* pad out the data segment */
|
||||
unexec_pad (new_fd, pad_size);
|
||||
|
||||
/* Finally, copy the symbol table information from the old file. */
|
||||
unexec_write (new_fd, new_treloff,
|
||||
old_base_addr + old_treloff,
|
||||
old_buf.st_size - old_treloff);
|
||||
}
|
||||
|
||||
|
||||
/* Next, map in the output file so that we can jump around fixing it
|
||||
up. We retain the old file so that we can refer to it. */
|
||||
unexec_fstat (new_fd, &new_buf);
|
||||
new_base_addr = unexec_mmap (new_fd,
|
||||
MASK_UP (new_buf.st_size, page_size),
|
||||
PROT_READ | PROT_WRITE,
|
||||
MAP_FILE | MAP_SHARED);
|
||||
|
||||
|
||||
|
||||
/* We need to do 2 things. First, make sure that _edata and _end (and
|
||||
hence, curbrk) are set to the correct values. At the same time, for
|
||||
neatness and to help with debugging, mark all the types of all ld.so
|
||||
and nm BSS symbols in the new file to be DATA, and make sure that
|
||||
there are no COMMON symbols in the output file, as any references to
|
||||
these can lose really big. Second, reset all of the ld.so "relocation
|
||||
sites" in the new file to have the values that appear in the old file
|
||||
-- the failure to do this was the biggest loser in the old version of
|
||||
this code. */
|
||||
|
||||
/* STEP 1 */
|
||||
/* Reset the regular symbol table first. */
|
||||
reset_symtab ((struct nlist *) (new_base_addr + N_SYMOFF(new_hdr)),
|
||||
(struct nlist *) (new_base_addr + N_SYMOFF(new_hdr) +
|
||||
new_hdr.a_syms),
|
||||
(char *) (new_base_addr + N_STROFF(new_hdr)),
|
||||
new_edata, new_edata,
|
||||
!!dynamic_addr);
|
||||
|
||||
/* Now reset the ld.so symbol table. */
|
||||
if (dynamic_addr)
|
||||
{
|
||||
struct translation_struct ts;
|
||||
struct relocation_info *tmp, *end;
|
||||
caddr_t syms, strings;
|
||||
|
||||
/* set up the structure that we use to translate addresses in the
|
||||
old file into file offsets */
|
||||
ts.txtaddr = N_TXTADDR (old_hdr);
|
||||
ts.txtoff = N_TXTOFF (old_hdr);
|
||||
ts.dataddr = N_DATADDR (old_hdr);
|
||||
ts.datoff = N_DATOFF (old_hdr);
|
||||
ts.bssaddr = N_DATADDR (old_hdr) + old_hdr.a_data;
|
||||
ts.endaddr = ts.bssaddr + old_hdr.a_bss;
|
||||
|
||||
syms = new_base_addr + unexec_addr_to_offset(ld2->sdt_nzlist, &ts);
|
||||
strings = new_base_addr + unexec_addr_to_offset(ld2->sdt_strings, &ts);
|
||||
reset_ldso_symtab ((struct nzlist *) syms, (struct nzlist *) strings,
|
||||
(char *) strings,
|
||||
new_edata, new_edata,
|
||||
!!dynamic_addr);
|
||||
|
||||
/* STEP 2 */
|
||||
tmp = (struct relocation_info *)
|
||||
(old_base_addr + unexec_addr_to_offset(ld2->sdt_rel, &ts));
|
||||
end = (struct relocation_info *)
|
||||
(old_base_addr + unexec_addr_to_offset(ld2->sdt_hash, &ts));
|
||||
while (tmp < end)
|
||||
{
|
||||
copy_relocation_site (tmp, old_base_addr, new_base_addr, &ts);
|
||||
tmp++;
|
||||
}
|
||||
}
|
||||
|
||||
/* get rid of the mmap-ed file space and make the output file
|
||||
executable -- then quit */
|
||||
munmap (new_base_addr, MASK_UP (new_buf.st_size, page_size));
|
||||
munmap (old_base_addr, MASK_UP (old_buf.st_size, page_size));
|
||||
unexec_fchmod (new_fd, 0755);
|
||||
close (new_fd);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
int
|
||||
run_time_remap (char *dummy)
|
||||
{
|
||||
unsigned long current_sbrk = (unsigned long) sbrk (0);
|
||||
|
||||
if (sbrk_of_0_at_unexec > current_sbrk)
|
||||
{
|
||||
errno = 0;
|
||||
if (brk ((caddr_t) sbrk_of_0_at_unexec))
|
||||
fprintf (stderr, "failed to change brk addr to 0x%lx: %s\n",
|
||||
sbrk_of_0_at_unexec, SYS_ERR);
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
|
@ -1,15 +1,15 @@
|
|||
This is emacs lisp files, info pages, and so on (except executables)
|
||||
for mule-2.3, a multilingual editor based on emacs-19.28.
|
||||
for mule-2.3, a multilingual editor based on emacs-19.34.
|
||||
|
||||
You must install one of packages, mule-2.3, ja-mule-*-2.3 (
|
||||
ja-mule-canna-2.3, ja-mule-canna+sj3-2.3, etc.), zh-mule-wnn4-2.3 and
|
||||
ko-mule-wnn4-2.3, each of which contains only the executables for
|
||||
mule-2.3.
|
||||
|
||||
This package and the above package of the executables *will* clobber any
|
||||
existing emacs installation. In particular, the executables and man
|
||||
pages of etags/ctags are installed, and the info pages that come with
|
||||
the original emacs get installed too.
|
||||
This package and the above package of the executables *will* clobber
|
||||
any existing emacs installation. In particular, the executables and
|
||||
man pages of etags/ctags are installed, and the info pages that come
|
||||
with the original emacs get installed too.
|
||||
|
||||
Although this shouldn't cause any problems to run both mule and emacs,
|
||||
it may cause some confusion when one of them is pkg_delete'd. If
|
||||
|
@ -20,10 +20,5 @@ subdirectory of the ports package. Copy it into your /usr/local/info
|
|||
to read mule info pages, but also make sure you also add everything
|
||||
that may have been added to that file!
|
||||
|
||||
[Notice]
|
||||
Mr. Yoshio KATAYAMA <kate@pfu.co.jp> fixed many bugs for mule-2.3.
|
||||
Patches for those are in 'mule-2.3.patch.tar.gz' and are applied in
|
||||
this port.
|
||||
|
||||
- S. Taoka
|
||||
taoka@infonets.hiroshima-u.ac.jp
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -1,9 +1,9 @@
|
|||
# New ports collection makefile for: mule
|
||||
# Version required: 2.3
|
||||
# New ports collection makefile for: mule 2.3@19.34
|
||||
# Version required: 2.3@19.34
|
||||
# Date created: 6 July 1997
|
||||
# Whom: Satoshi Taoka <taoka@infonets.hiroshima-u.ac.jp>
|
||||
#
|
||||
# $Id: Makefile,v 1.31 1998/05/02 21:07:09 max Exp $
|
||||
# $Id: Makefile,v 1.32 1998/09/21 22:33:05 steve Exp $
|
||||
#
|
||||
|
||||
DISTNAME= mule-2.3
|
||||
|
@ -12,17 +12,21 @@ CATEGORIES?= editors
|
|||
MASTER_SITES= ftp://etlport.etl.go.jp/pub/mule/ \
|
||||
ftp://ftp.mei.co.jp/archive/free/gnu/emacs/Mule/ \
|
||||
ftp://ftp.iij.ad.jp/pub/misc/mule/ \
|
||||
ftp://ports.jp.FreeBSD.org/pub/incoming/distfiles/
|
||||
DISTFILES= mule-2.3.tar.gz mule-2.3.patch-970819.tar.gz
|
||||
http://www.infonets.hiroshima-u.ac.jp/~taoka/FreeBSD/mule/
|
||||
DISTFILES= emacs-19.34b.tar.gz mule-2.3-19.34.patch-981002.tar.gz
|
||||
|
||||
PATCH_SITES= ftp://etlport.etl.go.jp/pub/mule/
|
||||
PATCHFILES= mule-23-1934-alpha01.diff.gz
|
||||
PATCH_DIST_STRIP= -p1
|
||||
|
||||
MAINTAINER?= taoka@infonets.hiroshima-u.ac.jp
|
||||
|
||||
RUN_DEPENDS= ${PREFIX}/lib/mule/19.28/lisp/mule.el:${PORTSDIR}/editors/mule-common
|
||||
RUN_DEPENDS= ${PREFIX}/share/${EMACS_PREFIX}/19.34/lisp/mule.el:${PORTSDIR}/editors/mule-common
|
||||
LIB_DEPENDS= ${LIB_INPUT_METHOD}
|
||||
BUILD_DEPENDS= ${BUILD_INPUT_METHOD}
|
||||
|
||||
EXTRACT_ONLY= mule-2.3.tar.gz
|
||||
WRKSRC= ${WRKDIR}/mule
|
||||
EXTRACT_ONLY= emacs-19.34b.tar.gz
|
||||
WRKSRC= ${WRKDIR}/emacs-19.34
|
||||
PATCHDIR= ${.CURDIR}/../../editors/mule-common/patches
|
||||
FILESDIR= ${.CURDIR}/../../editors/mule-common/files
|
||||
SCRIPTDIR= ${.CURDIR}/../../editors/mule-common/scripts
|
||||
|
@ -31,9 +35,15 @@ INSTALL_COOKIE= ${WRKDIR}/.install_done-${PKGNAME}
|
|||
PACKAGE_COOKIE= ${WRKDIR}/.package_done-${PKGNAME}
|
||||
GNU_CONFIGURE= yes
|
||||
USE_GMAKE= yes
|
||||
CONFIGURE_ARGS= i386--freebsd --terminal-face \
|
||||
MAKE_ENV= LIBDIR="${LIBDIR}"
|
||||
# /usr/bin/sed should be used because configure script includes 'Ctrl-L'
|
||||
CONFIGURE_ENV= PATH=/usr/bin:$$PATH
|
||||
EMACS_PREFIX= mule
|
||||
EMACS_EXECUTABLE = mule
|
||||
CONFIGURE_ARGS= i386--freebsd --with-executable=${EMACS_EXECUTABLE} \
|
||||
--with-emacs-prefix=${EMACS_PREFIX} \
|
||||
--with-terminal-face \
|
||||
--x-includes=${X11BASE}/include --x-libraries=${X11BASE}/lib \
|
||||
--locallisppath=${PREFIX}/lib/mule/site-lisp:${PREFIX}/share/emacs/site-lisp \
|
||||
${WITH_INPUT_METHOD} ${WITH_DIALOGS}
|
||||
STRIP=
|
||||
|
||||
|
@ -41,63 +51,92 @@ INSTALL_TARGET= install-arch-dep
|
|||
|
||||
.if defined(CANNA)
|
||||
LIB_INPUT_METHOD+= canna.1:${PORTSDIR}/japanese/Canna
|
||||
WITH_INPUT_METHOD+= --canna --canna-libraries=${PREFIX}/lib \
|
||||
--canna-includes=${PREFIX}/include
|
||||
WITH_INPUT_METHOD+= --with-canna --with-canna-libraries=${PREFIX}/lib \
|
||||
--with-canna-includes=${PREFIX}/include
|
||||
.endif
|
||||
.if defined(SJ3)
|
||||
BUILD_INPUT_METHOD+=sj3serv:${PORTSDIR}/japanese/sj3
|
||||
WITH_INPUT_METHOD+= --sj3
|
||||
WITH_INPUT_METHOD+= --with-sj3
|
||||
.endif
|
||||
.if defined(WNN4)
|
||||
BUILD_INPUT_METHOD+=${PREFIX}/bin/Wnn4/jserver:${PORTSDIR}/japanese/Wnn
|
||||
WITH_INPUT_METHOD+= --with-wnn4 --wnn-libraries=${X11BASE}/lib/libwnn.a \
|
||||
--wnn-includes=${X11BASE}/include/wnn
|
||||
WITH_INPUT_METHOD+= --with-wnn4 --with-wnn-libraries=${X11BASE}/lib \
|
||||
--with-wnn-includes=${X11BASE}/include/wnn
|
||||
.elif defined(CWNN4)
|
||||
BUILD_INPUT_METHOD+=${PREFIX}/bin/cWnn4/cserver:${PORTSDIR}/chinese/Wnn
|
||||
WITH_INPUT_METHOD+= --with-wnn4 --wnn-libraries=${X11BASE}/lib/libcwnn.a \
|
||||
--wnn-includes=${X11BASE}/include/cwnn
|
||||
WITH_INPUT_METHOD+= --with-wnn4 --with-wnn-libraries=${X11BASE}/lib/libcwnn.a \
|
||||
--with-wnn-includes=${X11BASE}/include/cwnn
|
||||
.elif defined(KWNN4)
|
||||
BUILD_INPUT_METHOD+=${PREFIX}/bin/kWnn4/kserver:${PORTSDIR}/korean/Wnn
|
||||
WITH_INPUT_METHOD+= --with-wnn4 --wnn-libraries=${X11BASE}/lib/libkwnn.a \
|
||||
--wnn-includes=${X11BASE}/include/kwnn
|
||||
WITH_INPUT_METHOD+= --with-wnn4 --with-wnn-libraries=${X11BASE}/lib/libkwnn.a \
|
||||
--with-wnn-includes=${X11BASE}/include/kwnn
|
||||
.elif defined(WNN6)
|
||||
BUILD_INPUT_METHOD+=${PREFIX}/include/wnn/jlib.h:${PORTSDIR}/japanese/Wnn6-lib
|
||||
WITH_INPUT_METHOD+= --with-wnn6 --wnn-libraries=${PREFIX}/lib/libwnn.a \
|
||||
--wnn-includes=${PREFIX}/include/wnn
|
||||
WITH_INPUT_METHOD+= --with-wnn6 --with-wnn-libraries=${PREFIX}/lib/libwnn.a \
|
||||
--with-wnn-includes=${PREFIX}/include/wnn
|
||||
.endif
|
||||
COMP_ELC= egg.elc wnn-egg.elc sj3-client.elc sj3-egg.elc canna.elc
|
||||
ELC_DIR= ../lisp
|
||||
|
||||
WITH_DIALOGS= --with-x-toolkit
|
||||
|
||||
SITE_START=${PREFIX}/lib/mule/site-lisp/site-start.el
|
||||
SITE_START=${PREFIX}/share/${EMACS_PREFIX}/19.34/site-lisp/site-start.el
|
||||
|
||||
# ORIGINAL, MEW_ORG_PATCH and MEW_PATCH are used for debugging.
|
||||
#
|
||||
# ORIGINAL: original mule 2.3 based on emacs 19.34
|
||||
# MEW_ORG_PATCH: apply mew's patches to original mule (http://www.mew.org)
|
||||
# MEW_PATCH: apply mew's patch after apply Mr. Katayama's patches
|
||||
post-extract:
|
||||
${EXTRACT_CMD} -C ${WRKSRC} ${EXTRACT_BEFORE_ARGS} ${_DISTDIR}/mule-2.3.patch-970819.tar.gz
|
||||
cd ${WRKSRC}; ${EXTRACT_CMD} ${EXTRACT_BEFORE_ARGS} ./takana.tar.gz
|
||||
|
||||
pre-patch:
|
||||
cd ${WRKSRC}; ${PATCH} ${PATCH_DIST_ARGS} < ${WRKSRC}/patch
|
||||
${EXTRACT_CMD} -C ${WRKDIR} ${EXTRACT_BEFORE_ARGS} ${_DISTDIR}/mule-2.3-19.34.patch-981002.tar.gz
|
||||
${CP} ${FILESDIR}/unexfreebsd.c ${WRKSRC}/src
|
||||
.if !defined(ORIGINAL) && !defined(MEW_ORG_PATCH)
|
||||
${EXTRACT_CMD} -C ${WRKDIR} ${EXTRACT_BEFORE_ARGS} ${WRKDIR}/takana-19.34.tar.gz
|
||||
${MKDIR} ${WRKSRC}/lisp/its
|
||||
${CP} ${WRKDIR}/lisp/its/* ${WRKSRC}/lisp/its/
|
||||
.endif
|
||||
|
||||
.if !defined(ORIGINAL)
|
||||
post-patch:
|
||||
cd ${WRKSRC}; ${PATCH} ${PATCH_DIST_ARGS} < ${WRKSRC}/Mule-2.3.patch
|
||||
.if !defined(MEW_ORG_PATCH)
|
||||
cd ${WRKSRC}; ${PATCH} --forward --quiet -E -p0 < ${WRKDIR}/patch-19.34
|
||||
cd ${WRKSRC}; ${PATCH} --forward --quiet -E -p0 < ${WRKDIR}/Mule-2.3-19.34.patch
|
||||
cd ${WRKSRC}; ${PATCH} --forward --quiet -E -p0 < ${WRKDIR}/extra.patch
|
||||
.if defined(MEW_PATCH)
|
||||
cd ${WRKSRC}/lisp; ${PATCH} --forward --quiet -E -p0 < ${WRKDIR}/mew/egg.el-19.34.patch-for_katayama
|
||||
.endif
|
||||
.else
|
||||
cd ${WRKSRC}/lisp; ${PATCH} --forward --quiet -E -p0 < ${WRKDIR}/mew/egg.el-19.34.patch
|
||||
.endif
|
||||
.if defined(MEW_PATCH) || defined(MEW_ORG_PATCH)
|
||||
cd ${WRKSRC}/lisp; ${PATCH} --forward --quiet -E -p0 < ${WRKDIR}/mew/canna.el-19.34.patch
|
||||
cd ${WRKSRC}/lisp; ${PATCH} --forward --quiet -E -p0 < ${WRKDIR}/mew/sj3-egg.el.patch
|
||||
.endif
|
||||
.endif
|
||||
|
||||
pre-build:
|
||||
find ${WRKSRC} \( -name \*.orig -o -name \*~ \) -exec ${RM} -f \{} \;
|
||||
${RM} -f ${WRKSRC}/etc/DOC* ${WRKSRC}/src/emacs ${WRKSRC}/src/emacs-19.28.*
|
||||
${RM} -f ${WRKSRC}/etc/DOC* ${WRKSRC}/src/emacs ${WRKSRC}/src/emacs-19.34.*
|
||||
|
||||
post-build:
|
||||
# bytecompile elisps for Japanese input method
|
||||
for file in ${COMP_ELC}; do \
|
||||
target="$$target ${ELC_DIR}/$$file"; \
|
||||
done; \
|
||||
cd ${WRKSRC}/src; \
|
||||
./temacs -batch -l mule-inst.el $$target
|
||||
|
||||
# If site-start.el exists, you should run below when you install by
|
||||
# this port
|
||||
pre-install:
|
||||
@if [ -f ${SITE_START} ]; then \
|
||||
${MV} ${SITE_START} ${SITE_START}.orig ; \
|
||||
${SED} -e '/;; BEGIN mule-family/,/;; END mule-family/d' \
|
||||
${SITE_START}.orig > ${SITE_START}; \
|
||||
fi
|
||||
${SED} -e '/;; BEGIN mule-family/,/;; END mule-family/d' \
|
||||
${SITE_START}.orig > ${SITE_START}; \
|
||||
fi
|
||||
|
||||
post-install:
|
||||
# note that any2ps is a script
|
||||
.for file in b2m coco ctags emacsclient etags m2ps mule-19.28
|
||||
strip ${PREFIX}/bin/${file}
|
||||
.endfor
|
||||
strip ${PREFIX}/bin/${EMACS_EXECUTABLE}-19.34
|
||||
# for wnn4+sj3 or wnn6+sj3
|
||||
@if [ -e ${PKGDIR}/INSTALL ]; then \
|
||||
${SH} ${PKGDIR}/INSTALL ${PKGNAME} POST-INSTALL; \
|
||||
|
@ -105,17 +144,23 @@ post-install:
|
|||
# Installing site-start.el
|
||||
# (we redefun set-korean-environment etc)
|
||||
.if defined(CWNN4)
|
||||
${SED} -e 's/;;\(.*\);;CHINESE$$/\1;;CHINESE/' \
|
||||
${SED} -e 's/;;\(.*\);;CHINESE$$/\1;;CHINESE/' \
|
||||
-e 's/;;\(.*\);;not KOREAN$$/\1;;not KOREAN/' \
|
||||
${FILESDIR}/site-start.el.tmpl >> ${SITE_START}
|
||||
-e 's,%%X11BASE%%,${X11BASE},' \
|
||||
-e 's,%%LOCALBASE%%,${LOCALBASE},' \
|
||||
${FILESDIR}/site-start.el.tmpl >> ${SITE_START}
|
||||
.elif defined(KWNN4)
|
||||
${SED} -e 's/;;\(.*\);;KOREAN$$/\1;;KOREAN/' \
|
||||
${FILESDIR}/site-start.el.tmpl >> ${SITE_START}
|
||||
${SED} -e 's/;;\(.*\);;KOREAN$$/\1;;KOREAN/' \
|
||||
-e 's,%%X11BASE%%,${X11BASE},' \
|
||||
-e 's,%%LOCALBASE%%,${LOCALBASE},' \
|
||||
${FILESDIR}/site-start.el.tmpl >> ${SITE_START}
|
||||
.else
|
||||
${SED} -e 's/;;\(.*\);;not KOREAN$$/\1;;not KOREAN/' \
|
||||
${FILESDIR}/site-start.el.tmpl >> ${SITE_START}
|
||||
${SED} -e 's/;;\(.*\);;not KOREAN$$/\1;;not KOREAN/' \
|
||||
-e 's,%%X11BASE%%,${X11BASE},' \
|
||||
-e 's,%%LOCALBASE%%,${LOCALBASE},' \
|
||||
${FILESDIR}/site-start.el.tmpl >> ${SITE_START}
|
||||
.endif
|
||||
@${TOUCH} ${TOUCH_FLAGS} ${INSTALL_COOKIE}
|
||||
@${TOUCH} ${TOUCH_FLAGS} ${INSTALL_COOKIE}
|
||||
|
||||
post-package:
|
||||
@${TOUCH} ${TOUCH_FLAGS} ${PACKAGE_COOKIE}
|
||||
|
|
|
@ -1 +1 @@
|
|||
A multilingual emacs (Only the executables)
|
||||
A multilingual emacs based 19.34 (Only the executables)
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
This is a package containing only the executables for mule-2.3, a
|
||||
multilingual editor based on emacs-19.28.
|
||||
multilingual editor based on emacs-19.34.
|
||||
|
||||
You should install a package, mule-common-2.3, containing emacs lisp
|
||||
files, info pages, and so on (except executables) for mule-2.3.
|
||||
|
@ -15,15 +15,11 @@ executables and man pages of etags/ctags are not installed, and the
|
|||
info pages that come with the original emacs don't get installed too.
|
||||
The Japanese version is build to install everything, by the way.
|
||||
|
||||
A "dir" file is supplied in the ${PORTSDIR}/editors/mule-common/files/
|
||||
subdirectory of the ports package. Copy it into your /usr/local/info
|
||||
to read mule info pages, but also make sure you also add everything
|
||||
that may have been added to that file!
|
||||
|
||||
[Notice]
|
||||
Mr. Yoshio KATAYAMA <kate@pfu.co.jp> fixed many bugs for mule-2.3.
|
||||
Patches for those are in 'mule-2.3.patch.tar.gz' and are applied in
|
||||
this port.
|
||||
A "dir" file is supplied in the
|
||||
${PORTSDIR}/editors/mule-common/files/ subdirectory of the
|
||||
ports package. Copy it into your /usr/local/info to read mule info
|
||||
pages, but also make sure you also add everything that may have been
|
||||
added to that file!
|
||||
|
||||
- S. Taoka
|
||||
taoka@infonets.hiroshima-u.ac.jp
|
||||
|
|
|
@ -1,30 +1,5 @@
|
|||
bin/mule-19.28
|
||||
bin/mule-19.34
|
||||
@exec ln -sf %D/%F %B/mule
|
||||
@unexec rm %B/mule
|
||||
bin/any2ps
|
||||
bin/b2m
|
||||
bin/coco
|
||||
bin/ctags
|
||||
bin/emacsclient
|
||||
bin/etags
|
||||
bin/m2ps
|
||||
bin/rcs-checkin
|
||||
lib/mule/19.28/etc/DOC
|
||||
lib/mule/19.28/etc/DOC-19.28.1
|
||||
lib/mule/19.28/i386--freebsd/cvtmail
|
||||
lib/mule/19.28/i386--freebsd/digest-doc
|
||||
lib/mule/19.28/i386--freebsd/emacsserver
|
||||
lib/mule/19.28/i386--freebsd/fakemail
|
||||
lib/mule/19.28/i386--freebsd/hexl
|
||||
lib/mule/19.28/i386--freebsd/make-docfile
|
||||
lib/mule/19.28/i386--freebsd/make-path
|
||||
lib/mule/19.28/i386--freebsd/movemail
|
||||
lib/mule/19.28/i386--freebsd/profile
|
||||
lib/mule/19.28/i386--freebsd/rcs2log
|
||||
lib/mule/19.28/i386--freebsd/sorted-doc
|
||||
lib/mule/19.28/i386--freebsd/test-distrib
|
||||
lib/mule/19.28/i386--freebsd/timer
|
||||
lib/mule/19.28/i386--freebsd/vcdiff
|
||||
lib/mule/19.28/i386--freebsd/wakeup
|
||||
lib/mule/19.28/i386--freebsd/yow
|
||||
lib/mule/site-lisp/site-start.el
|
||||
share/mule/19.34/etc/DOC-19.34.1
|
||||
share/mule/19.34/site-lisp/site-start.el
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
# New ports collection makefile for: mule with Canna, sj3 and Wnn4
|
||||
# Version required: 2.3
|
||||
# New ports collection makefile for: mule 2.3@19.34 with Canna, sj3 and Wnn4
|
||||
# Version required: 2.3@19.34
|
||||
# Date created: 7 July 1997
|
||||
# Whom: Satoshi Taoka <taoka@infonets.hiroshima-u.ac.jp>
|
||||
#
|
||||
# $Id: Makefile,v 1.1 1997/09/10 10:13:41 asami Exp $
|
||||
# $Id: Makefile,v 1.2 1997/09/14 21:35:07 max Exp $
|
||||
#
|
||||
|
||||
PKGNAME= ja-mule-canna+sj3+wnn4-2.3
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
This is a package containing only the executables for mule-2.3, a
|
||||
multilingual editor based on emacs-19.28.
|
||||
multilingual editor based on emacs-19.34.
|
||||
|
||||
You should install a package, mule-common-2.3, containing emacs lisp
|
||||
files, info pages, and so on (except executables) for mule-2.3.
|
||||
|
@ -25,8 +25,8 @@ that may have been added to that file!
|
|||
|
||||
[Notice]
|
||||
Mr. Yoshio KATAYAMA <kate@pfu.co.jp> fixed many bugs for mule-2.3.
|
||||
Patches for those are in 'mule-2.3.patch.tar.gz' and are applied in
|
||||
this port.
|
||||
Patches for those are in ' mule-2.3-19.34.patch-YYMMDD.tar.gz' and are
|
||||
applied in this port.
|
||||
|
||||
- S. Taoka
|
||||
taoka@infonets.hiroshima-u.ac.jp
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
# New ports collection makefile for: mule with Canna and Wnn4
|
||||
# Version required: 2.3
|
||||
# New ports collection makefile for: mule 2.3@19.34 with Canna and Wnn4
|
||||
# Version required: 2.3@19.34
|
||||
# Date created: 7 July 1997
|
||||
# Whom: Satoshi Taoka <taoka@infonets.hiroshima-u.ac.jp>
|
||||
#
|
||||
# $Id: Makefile,v 1.1 1997/09/10 08:50:29 asami Exp $
|
||||
# $Id: Makefile,v 1.2 1997/09/14 21:35:10 max Exp $
|
||||
#
|
||||
|
||||
PKGNAME= ja-mule-canna+wnn4-2.3
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
This is a package containing only the executables for mule-2.3, a
|
||||
multilingual editor based on emacs-19.28.
|
||||
multilingual editor based on emacs-19.34.
|
||||
|
||||
You should install a package, mule-common-2.3, containing emacs lisp
|
||||
files, info pages, and so on (except executables) for mule-2.3.
|
||||
|
@ -25,8 +25,8 @@ that may have been added to that file!
|
|||
|
||||
[Notice]
|
||||
Mr. Yoshio KATAYAMA <kate@pfu.co.jp> fixed many bugs for mule-2.3.
|
||||
Patches for those are in 'mule-2.3.patch.tar.gz' and are applied in
|
||||
this port.
|
||||
Patches for those are in 'mule-2.3-19.34.patch-YYMMDD.tar.gz' and are
|
||||
applied in this port.
|
||||
|
||||
- S. Taoka
|
||||
taoka@infonets.hiroshima-u.ac.jp
|
||||
|
|
|
@ -1,14 +1,16 @@
|
|||
# New ports collection makefile for: mule with Canna, sj3 and Wnn6
|
||||
# Version required: 2.3
|
||||
# New ports collection makefile for: mule 2.3@19.34 with Canna, sj3 and Wnn6
|
||||
# Version required: 2.3@19.34
|
||||
# Date created: 7 July 1997
|
||||
# Whom: Satoshi Taoka <taoka@infonets.hiroshima-u.ac.jp>
|
||||
#
|
||||
# $Id: Makefile,v 1.1 1997/09/10 08:50:26 asami Exp $
|
||||
# $Id: Makefile,v 1.2 1997/09/14 21:35:08 max Exp $
|
||||
#
|
||||
|
||||
PKGNAME= ja-mule-canna+sj3+wnn6-2.3
|
||||
CATEGORIES= japanese editors
|
||||
|
||||
BROKEN_ELF= yes
|
||||
|
||||
CANNA= yes
|
||||
SJ3= yes
|
||||
WNN6= yes
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
This is a package containing only the executables for mule-2.3, a
|
||||
multilingual editor based on emacs-19.28.
|
||||
multilingual editor based on emacs-19.34.
|
||||
|
||||
You should install a package, mule-common-2.3, containing emacs lisp
|
||||
files, info pages, and so on (except executables) for mule-2.3.
|
||||
|
@ -25,8 +25,8 @@ that may have been added to that file!
|
|||
|
||||
[Notice]
|
||||
Mr. Yoshio KATAYAMA <kate@pfu.co.jp> fixed many bugs for mule-2.3.
|
||||
Patches for those are in 'mule-2.3.patch.tar.gz' and are applied in
|
||||
this port.
|
||||
Patches for those are in 'mule-2.3-19.34.patch-YYMMDD.tar.gz' and are
|
||||
applied in this port.
|
||||
|
||||
- S. Taoka
|
||||
taoka@infonets.hiroshima-u.ac.jp
|
||||
|
|
|
@ -1,14 +1,16 @@
|
|||
# New ports collection makefile for: mule with Canna, sj3 and Wnn6
|
||||
# Version required: 2.3
|
||||
# New ports collection makefile for: mule 2.3@19.34 with Canna, sj3 and Wnn6
|
||||
# Version required: 2.3@19.34
|
||||
# Date created: 7 July 1997
|
||||
# Whom: Satoshi Taoka <taoka@infonets.hiroshima-u.ac.jp>
|
||||
#
|
||||
# $Id: Makefile,v 1.1 1997/09/10 08:50:26 asami Exp $
|
||||
# $Id: Makefile,v 1.2 1997/09/14 21:35:08 max Exp $
|
||||
#
|
||||
|
||||
PKGNAME= ja-mule-canna+sj3+wnn6-2.3
|
||||
CATEGORIES= japanese editors
|
||||
|
||||
BROKEN_ELF= yes
|
||||
|
||||
CANNA= yes
|
||||
SJ3= yes
|
||||
WNN6= yes
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
This is a package containing only the executables for mule-2.3, a
|
||||
multilingual editor based on emacs-19.28.
|
||||
multilingual editor based on emacs-19.34.
|
||||
|
||||
You should install a package, mule-common-2.3, containing emacs lisp
|
||||
files, info pages, and so on (except executables) for mule-2.3.
|
||||
|
@ -25,8 +25,8 @@ that may have been added to that file!
|
|||
|
||||
[Notice]
|
||||
Mr. Yoshio KATAYAMA <kate@pfu.co.jp> fixed many bugs for mule-2.3.
|
||||
Patches for those are in 'mule-2.3.patch.tar.gz' and are applied in
|
||||
this port.
|
||||
Patches for those are in 'mule-2.3-19.34.patch-YYMMDD.tar.gz' and are
|
||||
applied in this port.
|
||||
|
||||
- S. Taoka
|
||||
taoka@infonets.hiroshima-u.ac.jp
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
# New ports collection makefile for: mule with Canna and sj3
|
||||
# Version required: 2.3
|
||||
# New ports collection makefile for: mule 2.3@19.34 with Canna and sj3
|
||||
# Version required: 2.3@19.34
|
||||
# Date created: 7 July 1997
|
||||
# Whom: Satoshi Taoka <taoka@infonets.hiroshima-u.ac.jp>
|
||||
#
|
||||
# $Id: Makefile,v 1.1 1997/09/10 08:50:18 asami Exp $
|
||||
# $Id: Makefile,v 1.2 1997/09/14 21:35:05 max Exp $
|
||||
#
|
||||
|
||||
PKGNAME= ja-mule-canna+sj3-2.3
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
This is a package containing only the executables for mule-2.3, a
|
||||
multilingual editor based on emacs-19.28.
|
||||
multilingual editor based on emacs-19.34.
|
||||
|
||||
You should install a package, mule-common-2.3, containing emacs lisp
|
||||
files, info pages, and so on (except executables) for mule-2.3.
|
||||
|
@ -22,8 +22,8 @@ that may have been added to that file!
|
|||
|
||||
[Notice]
|
||||
Mr. Yoshio KATAYAMA <kate@pfu.co.jp> fixed many bugs for mule-2.3.
|
||||
Patches for those are in 'mule-2.3.patch.tar.gz' and are applied in
|
||||
this port.
|
||||
Patches for those are in 'mule-2.3-19.34.patch-YYMMDD.tar.gz' and are
|
||||
applied in this port.
|
||||
|
||||
- S. Taoka
|
||||
taoka@infonets.hiroshima-u.ac.jp
|
||||
|
|
|
@ -1,14 +1,16 @@
|
|||
# New ports collection makefile for: mule with Canna and Wnn6
|
||||
# Version required: 2.3
|
||||
# New ports collection makefile for: mule 2.3@19.34 with Canna and Wnn6
|
||||
# Version required: 2.3@19.34
|
||||
# Date created: 7 July 1997
|
||||
# Whom: Satoshi Taoka <taoka@infonets.hiroshima-u.ac.jp>
|
||||
#
|
||||
# $Id: Makefile,v 1.1 1997/09/10 08:50:35 asami Exp $
|
||||
# $Id: Makefile,v 1.2 1997/09/14 21:35:11 max Exp $
|
||||
#
|
||||
|
||||
PKGNAME= ja-mule-canna+wnn6-2.3
|
||||
CATEGORIES= japanese editors
|
||||
|
||||
BROKEN_ELF= yes
|
||||
|
||||
CANNA= yes
|
||||
WNN6= yes
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
This is a package containing only the executables for mule-2.3, a
|
||||
multilingual editor based on emacs-19.28.
|
||||
multilingual editor based on emacs-19.34.
|
||||
|
||||
You should install a package, mule-common-2.3, containing emacs lisp
|
||||
files, info pages, and so on (except executables) for mule-2.3.
|
||||
|
@ -25,8 +25,8 @@ that may have been added to that file!
|
|||
|
||||
[Notice]
|
||||
Mr. Yoshio KATAYAMA <kate@pfu.co.jp> fixed many bugs for mule-2.3.
|
||||
Patches for those are in 'mule-2.3.patch.tar.gz' and are applied in
|
||||
this port.
|
||||
Patches for those are in 'mule-2.3-19.34.patch-YYMMDD.tar.gz' and are
|
||||
applied in this port.
|
||||
|
||||
- S. Taoka
|
||||
taoka@infonets.hiroshima-u.ac.jp
|
||||
|
|
|
@ -1,14 +1,16 @@
|
|||
# New ports collection makefile for: mule with Canna and Wnn6
|
||||
# Version required: 2.3
|
||||
# New ports collection makefile for: mule 2.3@19.34 with Canna and Wnn6
|
||||
# Version required: 2.3@19.34
|
||||
# Date created: 7 July 1997
|
||||
# Whom: Satoshi Taoka <taoka@infonets.hiroshima-u.ac.jp>
|
||||
#
|
||||
# $Id: Makefile,v 1.1 1997/09/10 08:50:35 asami Exp $
|
||||
# $Id: Makefile,v 1.2 1997/09/14 21:35:11 max Exp $
|
||||
#
|
||||
|
||||
PKGNAME= ja-mule-canna+wnn6-2.3
|
||||
CATEGORIES= japanese editors
|
||||
|
||||
BROKEN_ELF= yes
|
||||
|
||||
CANNA= yes
|
||||
WNN6= yes
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
This is a package containing only the executables for mule-2.3, a
|
||||
multilingual editor based on emacs-19.28.
|
||||
multilingual editor based on emacs-19.34.
|
||||
|
||||
You should install a package, mule-common-2.3, containing emacs lisp
|
||||
files, info pages, and so on (except executables) for mule-2.3.
|
||||
|
@ -25,8 +25,8 @@ that may have been added to that file!
|
|||
|
||||
[Notice]
|
||||
Mr. Yoshio KATAYAMA <kate@pfu.co.jp> fixed many bugs for mule-2.3.
|
||||
Patches for those are in 'mule-2.3.patch.tar.gz' and are applied in
|
||||
this port.
|
||||
Patches for those are in 'mule-2.3-19.34.patch-YYMMDD.tar.gz' and are
|
||||
applied in this port.
|
||||
|
||||
- S. Taoka
|
||||
taoka@infonets.hiroshima-u.ac.jp
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
# New ports collection makefile for: mule with Canna
|
||||
# Version required: 2.3
|
||||
# New ports collection makefile for: mule 2.3@19.34 with Canna
|
||||
# Version required: 2.3@19.34
|
||||
# Date created: 7 July 1997
|
||||
# Whom: Satoshi Taoka <taoka@infonets.hiroshima-u.ac.jp>
|
||||
#
|
||||
# $Id: Makefile,v 1.30 1997/09/10 08:50:03 asami Exp $
|
||||
# $Id: Makefile,v 1.31 1997/09/14 21:35:04 max Exp $
|
||||
#
|
||||
|
||||
PKGNAME= ja-mule-canna-2.3
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
This is a package containing only the executables for mule-2.3, a
|
||||
multilingual editor based on emacs-19.28.
|
||||
multilingual editor based on emacs-19.34.
|
||||
|
||||
You should install a package, mule-common-2.3, containing emacs lisp
|
||||
files, info pages, and so on (except executables) for mule-2.3.
|
||||
|
@ -22,8 +22,8 @@ that may have been added to that file!
|
|||
|
||||
[Notice]
|
||||
Mr. Yoshio KATAYAMA <kate@pfu.co.jp> fixed many bugs for mule-2.3.
|
||||
Patches for those are in 'mule-2.3.patch.tar.gz' and are applied in
|
||||
this port.
|
||||
Patches for those are in 'mule-2.3-19.34.patch-YYMMDD.tar.gz' and are
|
||||
applied in this port.
|
||||
|
||||
- S. Taoka
|
||||
taoka@infonets.hiroshima-u.ac.jp
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
# New ports collection makefile for: mule with sj3 and Wnn4
|
||||
# Version required: 2.3
|
||||
# New ports collection makefile for: mule 2.3@19.34 with sj3 and Wnn4
|
||||
# Version required: 2.3@19.34
|
||||
# Date created: 7 July 1997
|
||||
# Whom: Satoshi Taoka <taoka@infonets.hiroshima-u.ac.jp>
|
||||
#
|
||||
# $Id: Makefile,v 1.1 1997/09/10 08:50:52 asami Exp $
|
||||
# $Id: Makefile,v 1.2 1997/09/14 21:35:14 max Exp $
|
||||
#
|
||||
|
||||
PKGNAME= ja-mule-sj3+wnn4-2.3
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
This is a package containing only the executables for mule-2.3, a
|
||||
multilingual editor based on emacs-19.28.
|
||||
multilingual editor based on emacs-19.34.
|
||||
|
||||
You should install a package, mule-common-2.3, containing emacs lisp
|
||||
files, info pages, and so on (except executables) for mule-2.3.
|
||||
|
@ -25,8 +25,8 @@ that may have been added to that file!
|
|||
|
||||
[Notice]
|
||||
Mr. Yoshio KATAYAMA <kate@pfu.co.jp> fixed many bugs for mule-2.3.
|
||||
Patches for those are in 'mule-2.3.patch.tar.gz' and are applied in
|
||||
this port.
|
||||
Patches for those are in 'mule-2.3-19.34.patch-YYMMDD.tar.gz' and are
|
||||
applied in this port.
|
||||
|
||||
- S. Taoka
|
||||
taoka@infonets.hiroshima-u.ac.jp
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
# New ports collection makefile for: mule with Wnn4
|
||||
# Version required: 2.3
|
||||
# New ports collection makefile for: mule 2.3@19.34 with Wnn4
|
||||
# Version required: 2.3@19.34
|
||||
# Date created: 7 July 1997
|
||||
# Whom: Satoshi Taoka <taoka@infonets.hiroshima-u.ac.jp>
|
||||
#
|
||||
# $Id: Makefile,v 1.30 1997/09/10 08:51:14 asami Exp $
|
||||
# $Id: Makefile,v 1.31 1997/09/14 21:35:18 max Exp $
|
||||
#
|
||||
|
||||
PKGNAME= ja-mule-wnn4-2.3
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
This is a package containing only the executables for mule-2.3, a
|
||||
multilingual editor based on emacs-19.28.
|
||||
multilingual editor based on emacs-19.34.
|
||||
|
||||
You should install a package, mule-common-2.3, containing emacs lisp
|
||||
files, info pages, and so on (except executables) for mule-2.3.
|
||||
|
@ -25,8 +25,8 @@ that may have been added to that file!
|
|||
|
||||
[Notice]
|
||||
Mr. Yoshio KATAYAMA <kate@pfu.co.jp> fixed many bugs for mule-2.3.
|
||||
Patches for those are in 'mule-2.3.patch.tar.gz' and are applied in
|
||||
this port.
|
||||
Patches for those are in 'mule-2.3-19.34.patch-YYMMDD.tar.gz' and are
|
||||
applied in this port.
|
||||
|
||||
- S. Taoka
|
||||
taoka@infonets.hiroshima-u.ac.jp
|
||||
|
|
|
@ -1,14 +1,16 @@
|
|||
# New ports collection makefile for: mule with sj3 and Wnn6
|
||||
# Version required: 2.3
|
||||
# New ports collection makefile for: mule 2.3@19.34 with sj3 and Wnn6
|
||||
# Version required: 2.3@19.34
|
||||
# Date created: 7 July 1997
|
||||
# Whom: Satoshi Taoka <taoka@infonets.hiroshima-u.ac.jp>
|
||||
#
|
||||
# $Id: Makefile,v 1.1 1997/09/10 08:50:57 asami Exp $
|
||||
# $Id: Makefile,v 1.2 1997/09/14 21:35:16 max Exp $
|
||||
#
|
||||
|
||||
PKGNAME= ja-mule-sj3+wnn6-2.3
|
||||
CATEGORIES= japanese editors
|
||||
|
||||
BROKEN_ELF= yes
|
||||
|
||||
SJ3= yes
|
||||
WNN6= yes
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
This is a package containing only the executables for mule-2.3, a
|
||||
multilingual editor based on emacs-19.28.
|
||||
multilingual editor based on emacs-19.34.
|
||||
|
||||
You should install a package, mule-common-2.3, containing emacs lisp
|
||||
files, info pages, and so on (except executables) for mule-2.3.
|
||||
|
@ -25,8 +25,8 @@ that may have been added to that file!
|
|||
|
||||
[Notice]
|
||||
Mr. Yoshio KATAYAMA <kate@pfu.co.jp> fixed many bugs for mule-2.3.
|
||||
Patches for those are in 'mule-2.3.patch.tar.gz' and are applied in
|
||||
this port.
|
||||
Patches for those are in 'mule-2.3-19.34.patch-YYMMDD.tar.gz' and are
|
||||
applied in this port.
|
||||
|
||||
- S. Taoka
|
||||
taoka@infonets.hiroshima-u.ac.jp
|
||||
|
|
|
@ -1,14 +1,16 @@
|
|||
# New ports collection makefile for: mule with sj3 and Wnn6
|
||||
# Version required: 2.3
|
||||
# New ports collection makefile for: mule 2.3@19.34 with sj3 and Wnn6
|
||||
# Version required: 2.3@19.34
|
||||
# Date created: 7 July 1997
|
||||
# Whom: Satoshi Taoka <taoka@infonets.hiroshima-u.ac.jp>
|
||||
#
|
||||
# $Id: Makefile,v 1.1 1997/09/10 08:50:57 asami Exp $
|
||||
# $Id: Makefile,v 1.2 1997/09/14 21:35:16 max Exp $
|
||||
#
|
||||
|
||||
PKGNAME= ja-mule-sj3+wnn6-2.3
|
||||
CATEGORIES= japanese editors
|
||||
|
||||
BROKEN_ELF= yes
|
||||
|
||||
SJ3= yes
|
||||
WNN6= yes
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
This is a package containing only the executables for mule-2.3, a
|
||||
multilingual editor based on emacs-19.28.
|
||||
multilingual editor based on emacs-19.34.
|
||||
|
||||
You should install a package, mule-common-2.3, containing emacs lisp
|
||||
files, info pages, and so on (except executables) for mule-2.3.
|
||||
|
@ -25,8 +25,8 @@ that may have been added to that file!
|
|||
|
||||
[Notice]
|
||||
Mr. Yoshio KATAYAMA <kate@pfu.co.jp> fixed many bugs for mule-2.3.
|
||||
Patches for those are in 'mule-2.3.patch.tar.gz' and are applied in
|
||||
this port.
|
||||
Patches for those are in 'mule-2.3-19.34.patch-YYMMDD.tar.gz' and are
|
||||
applied in this port.
|
||||
|
||||
- S. Taoka
|
||||
taoka@infonets.hiroshima-u.ac.jp
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
# New ports collection makefile for: mule with sj3
|
||||
# Version required: 2.3
|
||||
# New ports collection makefile for: mule 2.3@19.34 with sj3
|
||||
# Version required: 2.3@19.34
|
||||
# Date created: 7 July 1997
|
||||
# Whom: Satoshi Taoka <taoka@infonets.hiroshima-u.ac.jp>
|
||||
#
|
||||
# $Id: Makefile,v 1.7 1997/09/10 08:50:38 asami Exp $
|
||||
# $Id: Makefile,v 1.8 1997/09/14 21:35:13 max Exp $
|
||||
#
|
||||
|
||||
PKGNAME= ja-mule-sj3-2.3
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
This is a package containing only the executables for mule-2.3, a
|
||||
multilingual editor based on emacs-19.28.
|
||||
multilingual editor based on emacs-19.34.
|
||||
|
||||
You should install a package, mule-common-2.3, containing emacs lisp
|
||||
files, info pages, and so on (except executables) for mule-2.3.
|
||||
|
@ -22,8 +22,8 @@ that may have been added to that file!
|
|||
|
||||
[Notice]
|
||||
Mr. Yoshio KATAYAMA <kate@pfu.co.jp> fixed many bugs for mule-2.3.
|
||||
Patches for those are in 'mule-2.3.patch.tar.gz' and are applied in
|
||||
this port.
|
||||
Patches for those are in 'mule-2.3-19.34.patch-YYMMDD.tar.gz' and are
|
||||
applied in this port.
|
||||
|
||||
- S. Taoka
|
||||
taoka@infonets.hiroshima-u.ac.jp
|
||||
|
|
|
@ -1,14 +1,16 @@
|
|||
# New ports collection makefile for: mule with Wnn6
|
||||
# Version required: 2.3
|
||||
# New ports collection makefile for: mule 2.3@19.34 with Wnn6
|
||||
# Version required: 2.3@19.34
|
||||
# Date created: 7 July 1997
|
||||
# Whom: Satoshi Taoka <taoka@infonets.hiroshima-u.ac.jp>
|
||||
#
|
||||
# $Id: Makefile,v 1.30 1997/09/10 08:51:19 asami Exp $
|
||||
# $Id: Makefile,v 1.31 1997/09/14 21:35:20 max Exp $
|
||||
#
|
||||
|
||||
PKGNAME= ja-mule-wnn6-2.3
|
||||
CATEGORIES= japanese editors
|
||||
|
||||
BROKEN_ELF= yes
|
||||
|
||||
WNN6= yes
|
||||
|
||||
.include "${.CURDIR}/../../editors/mule/Makefile"
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
This is a package containing only the executables for mule-2.3, a
|
||||
multilingual editor based on emacs-19.28.
|
||||
multilingual editor based on emacs-19.34.
|
||||
|
||||
You should install a package, mule-common-2.3, containing emacs lisp
|
||||
files, info pages, and so on (except executables) for mule-2.3.
|
||||
|
@ -25,8 +25,8 @@ that may have been added to that file!
|
|||
|
||||
[Notice]
|
||||
Mr. Yoshio KATAYAMA <kate@pfu.co.jp> fixed many bugs for mule-2.3.
|
||||
Patches for those are in 'mule-2.3.patch.tar.gz' and are applied in
|
||||
this port.
|
||||
Patches for those are in 'mule-2.3-19.34.patch-YYMMDD.tar.gz' and are
|
||||
applied in this port.
|
||||
|
||||
- S. Taoka
|
||||
taoka@infonets.hiroshima-u.ac.jp
|
||||
|
|
|
@ -1,14 +1,16 @@
|
|||
# New ports collection makefile for: mule with Wnn6
|
||||
# Version required: 2.3
|
||||
# New ports collection makefile for: mule 2.3@19.34 with Wnn6
|
||||
# Version required: 2.3@19.34
|
||||
# Date created: 7 July 1997
|
||||
# Whom: Satoshi Taoka <taoka@infonets.hiroshima-u.ac.jp>
|
||||
#
|
||||
# $Id: Makefile,v 1.30 1997/09/10 08:51:19 asami Exp $
|
||||
# $Id: Makefile,v 1.31 1997/09/14 21:35:20 max Exp $
|
||||
#
|
||||
|
||||
PKGNAME= ja-mule-wnn6-2.3
|
||||
CATEGORIES= japanese editors
|
||||
|
||||
BROKEN_ELF= yes
|
||||
|
||||
WNN6= yes
|
||||
|
||||
.include "${.CURDIR}/../../editors/mule/Makefile"
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
This is a package containing only the executables for mule-2.3, a
|
||||
multilingual editor based on emacs-19.28.
|
||||
multilingual editor based on emacs-19.34.
|
||||
|
||||
You should install a package, mule-common-2.3, containing emacs lisp
|
||||
files, info pages, and so on (except executables) for mule-2.3.
|
||||
|
@ -25,8 +25,8 @@ that may have been added to that file!
|
|||
|
||||
[Notice]
|
||||
Mr. Yoshio KATAYAMA <kate@pfu.co.jp> fixed many bugs for mule-2.3.
|
||||
Patches for those are in 'mule-2.3.patch.tar.gz' and are applied in
|
||||
this port.
|
||||
Patches for those are in 'mule-2.3-19.34.patch-YYMMDD.tar.gz' and are
|
||||
applied in this port.
|
||||
|
||||
- S. Taoka
|
||||
taoka@infonets.hiroshima-u.ac.jp
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
# New ports collection makefile for: mule with Wnn4
|
||||
# Version required: 2.3
|
||||
# New ports collection makefile for: mule 2.3@19.34 with Wnn4
|
||||
# Version required: 2.3@19.34
|
||||
# Date created: 20 July 1997
|
||||
# Whom: Satoshi Taoka <taoka@infonets.hiroshima-u.ac.jp>
|
||||
#
|
||||
# $Id: Makefile,v 1.1 1997/09/10 08:51:24 asami Exp $
|
||||
# $Id: Makefile,v 1.2 1997/09/22 16:22:06 max Exp $
|
||||
#
|
||||
|
||||
PKGNAME= ko-mule-wnn4-2.3
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
This is a package containing only the executables for mule-2.3, a
|
||||
multilingual editor based on emacs-19.28.
|
||||
multilingual editor based on emacs-19.34.
|
||||
|
||||
You should install a package, mule-common-2.3, containing emacs lisp
|
||||
files, info pages, and so on (except executables) for mule-2.3.
|
||||
|
@ -25,8 +25,8 @@ that may have been added to that file!
|
|||
|
||||
[Notice]
|
||||
Mr. Yoshio KATAYAMA <kate@pfu.co.jp> fixed many bugs for mule-2.3.
|
||||
Patches for those are in 'mule-2.3.patch.tar.gz' and are applied in
|
||||
this port.
|
||||
Patches for those are in 'mule-2.3-19.34.patch-YYMMDD.tar.gz' and are
|
||||
applied in this port.
|
||||
|
||||
- S. Taoka
|
||||
taoka@infonets.hiroshima-u.ac.jp
|
||||
|
|
|
@ -1,35 +1,48 @@
|
|||
# New ports collection makefile for: files except executables for mule
|
||||
# Version required: 2.3
|
||||
# New ports collection makefile for: files except executables for mule 2.3@19.34
|
||||
# Version required: 2.3@19.34
|
||||
# Date created: 7 July 1997
|
||||
# Whom: Satoshi Taoka <taoka@infonets.hiroshima-u.ac.jp>
|
||||
#
|
||||
# $Id$
|
||||
# $Id: Makefile,v 1.30 1997/09/10 08:49:44 asami Exp $
|
||||
#
|
||||
|
||||
DISTNAME= mule-2.3
|
||||
PKGNAME= mule-common-2.3
|
||||
CATEGORIES= editors chinese japanese korean
|
||||
CATEGORIES= editors japanese
|
||||
MASTER_SITES= ftp://etlport.etl.go.jp/pub/mule/ \
|
||||
ftp://ftp.mei.co.jp/archive/free/gnu/emacs/Mule/ \
|
||||
ftp://ftp.iij.ad.jp/pub/misc/mule/ \
|
||||
ftp://ports.jp.FreeBSD.org/pub/incoming/distfiles/
|
||||
DISTFILES= mule-2.3.tar.gz mule-2.3.patch-970819.tar.gz
|
||||
http://www.infonets.hiroshima-u.ac.jp/~taoka/FreeBSD/mule/
|
||||
DISTFILES= emacs-19.34b.tar.gz mule-2.3-19.34.patch-981002.tar.gz
|
||||
|
||||
PATCH_SITES= ftp://etlport.etl.go.jp/pub/mule/
|
||||
PATCHFILES= mule-23-1934-alpha01.diff.gz
|
||||
PATCH_DIST_STRIP= -p1
|
||||
|
||||
MAINTAINER= taoka@infonets.hiroshima-u.ac.jp
|
||||
|
||||
EXTRACT_ONLY= mule-2.3.tar.gz
|
||||
.for dir in editors/mule japanese/mule-canna japanese/mule-canna+sj3 \
|
||||
japanese/mule-canna japanese/mule-canna+sj3 \
|
||||
japanese/mule-canna+sj3+wnn4 japanese/mule-canna+sj3+wnn6 \
|
||||
japanese/mule-canna+wnn4 japanese/mule-canna+wnn6 \
|
||||
japanese/mule-sj3 japanese/mule-sj3+wnn japanese/mule-sj3+wnn6 \
|
||||
japanese/mule-wnn4 japanese/mule-wnn6 \
|
||||
chinese/mule-wnn4 korean/mule-wnn4
|
||||
.if exists(${.CURDIR}/../../${dir}/work/.build_done)
|
||||
.for dir in chinese/mule-wnn4 \
|
||||
editors/mule \
|
||||
japanese/mule-canna+sj3+wnn4 \
|
||||
japanese/mule-canna+sj3+wnn6 \
|
||||
japanese/mule-canna+sj3 \
|
||||
japanese/mule-canna+wnn4 \
|
||||
japanese/mule-canna+wnn6 \
|
||||
japanese/mule-canna \
|
||||
japanese/mule-sj3+wnn4 \
|
||||
japanese/mule-sj3+wnn6 \
|
||||
japanese/mule-sj3 \
|
||||
japanese/mule-wnn4 \
|
||||
japanese/mule-wnn6 \
|
||||
korean/mule-wnn4
|
||||
.if exists(${.CURDIR}/../../${dir}/work/.install_done)
|
||||
WRKDIR= ${.CURDIR}/../../${dir}/work
|
||||
.elif exists(${.CURDIR}/../../${dir}/work/.build_done)
|
||||
WRKDIR?= ${.CURDIR}/../../${dir}/work
|
||||
.endif
|
||||
.endfor
|
||||
WRKSRC= ${WRKDIR}/mule
|
||||
WRKSRC= ${WRKDIR}/emacs-19.34
|
||||
STARTUP_SCRIPT= ${PREFIX}/etc/rc.d/mule.sh
|
||||
|
||||
.if !defined(WRKDIR) && !defined(PACKAGE_BUILDING)
|
||||
BROKEN= You should build install one of the other mule ports first
|
||||
|
@ -37,39 +50,44 @@ BROKEN= You should build install one of the other mule ports first
|
|||
|
||||
INSTALL_COOKIE= ${WRKDIR}/.install_done-${PKGNAME}
|
||||
PACKAGE_COOKIE= ${WRKDIR}/.package_done-${PKGNAME}
|
||||
TMPPLIST= ${WRKDIR}/.PLIST.mktmp-${PKGNAME}
|
||||
PLIST_SUB= EMACS_VERSION=19.34
|
||||
|
||||
USE_GMAKE= yes
|
||||
|
||||
GNU_CONFIGURE= yes
|
||||
USE_GMAKE= yes
|
||||
CONFIGURE_ARGS= i386--freebsd --with-x-toolkit \
|
||||
--terminal-face \
|
||||
EMACS_PREFIX= mule
|
||||
EMACS_EXECUTABLE = mule
|
||||
CONFIGURE_ARGS= i386--freebsd --with-executable=${EMACS_EXECUTABLE} \
|
||||
--with-emacs-prefix=${EMACS_PREFIX} \
|
||||
--with-terminal-face \
|
||||
--x-includes=${X11BASE}/include --x-libraries=${X11BASE}/lib \
|
||||
--locallisppath=${PREFIX}/lib/mule/site-lisp:${PREFIX}/share/emacs/site-lisp
|
||||
STRIP=
|
||||
MAN1= coco.1 ctags.1 etags.1 m2ps.1 mule.1
|
||||
MAN1= coco.1 ctags.1 etags.1 m2ps.1 emacs.1 mule.1
|
||||
|
||||
INSTALL_TARGET= install-arch-indep
|
||||
|
||||
post-extract:
|
||||
${EXTRACT_CMD} -C ${WRKSRC} ${EXTRACT_BEFORE_ARGS} ${_DISTDIR}/mule-2.3.patch-970819.tar.gz
|
||||
cd ${WRKSRC}; ${EXTRACT_CMD} ${EXTRACT_BEFORE_ARGS} ./takana.tar.gz
|
||||
|
||||
pre-patch:
|
||||
cd ${WRKSRC}; ${PATCH} ${PATCH_DIST_ARGS} < ${WRKSRC}/patch
|
||||
|
||||
post-patch:
|
||||
cd ${WRKSRC}; ${PATCH} ${PATCH_DIST_ARGS} < ${WRKSRC}/Mule-2.3.patch
|
||||
${CP} ${FILESDIR}/unexfreebsd.c ${WRKSRC}/src
|
||||
|
||||
pre-build:
|
||||
find ${WRKSRC} \( -name \*.orig -o -name \*~ \) -exec ${RM} -f \{} \;
|
||||
${RM} -f ${WRKSRC}/etc/DOC* ${WRKSRC}/src/emacs ${WRKSRC}/src/emacs-19.28.*
|
||||
${RM} -f ${WRKSRC}/etc/DOC* ${WRKSRC}/src/emacs ${WRKSRC}/src/emacs-19.34.*
|
||||
|
||||
post-install:
|
||||
# note that any2ps rcs-checkin are scripts
|
||||
.for file in b2m coco ctags emacsclient etags m2ps
|
||||
strip ${PREFIX}/bin/${file}
|
||||
.endfor
|
||||
if [ ! -f ${PREFIX}/info/dir ]; then \
|
||||
${SED} -ne '1,/Menu:/p' /usr/share/info/dir > ${PREFIX}/info/dir; \
|
||||
fi
|
||||
.for info in emacs vip forms gnus cl sc
|
||||
if [ ! -f ${PREFIX}/share/mule/19.34/info/dir ]; then \
|
||||
${MKDIR} ${PREFIX}/share/mule/19.34/info; \
|
||||
${SED} -ne '1,/Menu:/p' /usr/share/info/dir > ${PREFIX}/share/mule/19.34/info/dir; \
|
||||
fi
|
||||
.for info in emacs vip viper forms gnus mh-e cl sc dired-x ediff ccmode message
|
||||
install-info ${PREFIX}/info/${info} ${PREFIX}/info/dir
|
||||
.endfor
|
||||
# Our makeinfo can't handle files with Japanese characters. :<
|
||||
|
@ -80,6 +98,19 @@ post-install:
|
|||
install-info --section="The Emacs editor and associated tools" --entry="* Canna-jp: (canna-jp). Another Japanese Inputting Method. (Japanese)" ${PREFIX}/info/canna-jp ${PREFIX}/info/dir
|
||||
@${SH} ${PKGDIR}/INSTALL ${PKGNAME} POST-INSTALL
|
||||
@${TOUCH} ${TOUCH_FLAGS} ${INSTALL_COOKIE}
|
||||
if [ ! -f ${STARTUP_SCRIPT} ]; then \
|
||||
${ECHO} "Installing ${STARTUP_SCRIPT} startup file."; \
|
||||
${ECHO} '#!/bin/sh' > ${STARTUP_SCRIPT}; \
|
||||
${ECHO} 'echo -n " Mule"' >> ${STARTUP_SCRIPT}; \
|
||||
${ECHO} 'if [ -d /var/run/emacs/lock ]; then' >> ${STARTUP_SCRIPT}; \
|
||||
${ECHO} ' rm -f /var/run/emacs/lock/*' >> ${STARTUP_SCRIPT}; \
|
||||
${ECHO} "else" >> ${STARTUP_SCRIPT}; \
|
||||
${ECHO} " mkdir -p /var/run/emacs/lock" >> ${STARTUP_SCRIPT}; \
|
||||
${ECHO} "fi" >> ${STARTUP_SCRIPT} ; \
|
||||
${ECHO} "chmod 1777 /var/run/emacs/lock${lockdir}" >> ${STARTUP_SCRIPT} ; \
|
||||
chmod 755 ${STARTUP_SCRIPT} ; \
|
||||
chown bin.bin ${STARTUP_SCRIPT}; \
|
||||
fi
|
||||
|
||||
post-package:
|
||||
@${TOUCH} ${TOUCH_FLAGS} ${PACKAGE_COOKIE}
|
||||
|
|
|
@ -1,2 +1,3 @@
|
|||
MD5 (mule-2.3.tar.gz) = e97cfbf19ee43442b416004eb92aac41
|
||||
MD5 (mule-2.3.patch-970819.tar.gz) = affdd51086c15abbb0a50999ac2e2796
|
||||
MD5 (emacs-19.34b.tar.gz) = 9bd3c694a9019c2a2ebd703a9a0394e0
|
||||
MD5 (mule-2.3-19.34.patch-981002.tar.gz) = cadf0c5e4ec4d74b921ffa96a7cca96e
|
||||
MD5 (mule-23-1934-alpha01.diff.gz) = 09b0fbf4871b701eb6371e56388db9e0
|
||||
|
|
|
@ -1,25 +1,6 @@
|
|||
--- ./man/Makefile.org Sat Jul 2 14:35:17 1994
|
||||
+++ ./man/Makefile Tue May 20 22:28:50 1997
|
||||
@@ -4,7 +4,7 @@
|
||||
MAKEINFO = makeinfo
|
||||
TEXINDEX_OBJS = texindex.o getopt.o
|
||||
INFO_TARGETS = ../info/emacs ../info/cl ../info/forms ../info/vip \
|
||||
- ../info/gnus ../info/sc ../info/info ../info/dired-x
|
||||
+ ../info/gnus ../info/sc ../info/dired-x
|
||||
DVI_TARGETS = emacs.dvi cl.dvi forms.dvi vip.dvi gnus.dvi sc.dvi dired-x.dvi
|
||||
INFOSOURCES = info.texi info-stnd.texi
|
||||
|
||||
@@ -54,6 +54,7 @@
|
||||
gnu1.texi \
|
||||
glossary.texi
|
||||
|
||||
+all: info
|
||||
info: $(INFO_TARGETS)
|
||||
|
||||
dvi: $(DVI_TARGETS)
|
||||
--- ./man/vip.texi.org Tue May 20 22:29:04 1997
|
||||
+++ ./man/vip.texi Tue May 20 22:30:32 1997
|
||||
@@ -24,6 +24,10 @@
|
||||
--- ./man/vip.texi.org Fri Jun 16 15:31:11 1995
|
||||
+++ ./man/vip.texi Tue May 20 01:28:33 1997
|
||||
@@ -2,6 +2,10 @@
|
||||
|
||||
@setfilename ../info/vip
|
||||
@settitle VIP
|
||||
|
@ -30,8 +11,8 @@
|
|||
|
||||
@iftex
|
||||
@finalout
|
||||
--- ./man/emacs.texi.org Fri Nov 4 03:08:52 1994
|
||||
+++ ./man/emacs.texi Tue May 20 22:30:32 1997
|
||||
--- ./man/emacs.texi.org Mon Aug 19 21:15:12 1996
|
||||
+++ ./man/emacs.texi Tue May 20 01:20:11 1997
|
||||
@@ -49,6 +49,11 @@
|
||||
@settitle GNU Emacs Manual
|
||||
@setfilename ../info/emacs
|
||||
|
@ -44,8 +25,21 @@
|
|||
@c
|
||||
@c in general, keep the following line commented out, unless doing a
|
||||
@c copy of this manual that will be published. the manual should go
|
||||
--- ./man/forms.texi.org Thu Jul 28 13:46:45 1994
|
||||
+++ ./man/forms.texi Tue May 20 22:30:32 1997
|
||||
--- ./man/viper.texi.org Wed Aug 7 10:59:45 1996
|
||||
+++ ./man/viper.texi Tue May 20 01:29:17 1997
|
||||
@@ -4,6 +4,10 @@
|
||||
\input texinfo
|
||||
|
||||
@setfilename ../info/viper
|
||||
+@dircategory The Emacs editor and associated tools
|
||||
+@direntry
|
||||
+* VIPER: (viper). The new VI-emulation mode in Emacs-19.29.
|
||||
+@end direntry
|
||||
|
||||
@iftex
|
||||
@finalout
|
||||
--- ./man/forms.texi.org Sat Mar 23 06:42:27 1996
|
||||
+++ ./man/forms.texi Tue May 20 01:22:37 1997
|
||||
@@ -9,6 +9,11 @@
|
||||
@syncodeindex vr cp
|
||||
@syncodeindex fn cp
|
||||
|
@ -58,8 +52,35 @@
|
|||
@iftex
|
||||
@finalout
|
||||
@setchapternewpage odd
|
||||
--- ./man/cl.texi.org Sat Jan 8 00:42:47 1994
|
||||
+++ ./man/cl.texi Tue May 20 22:30:32 1997
|
||||
--- ./man/gnus.texi.org Wed Jun 26 14:49:29 1996
|
||||
+++ ./man/gnus.texi Tue May 20 01:23:15 1997
|
||||
@@ -5,6 +5,11 @@
|
||||
@synindex fn cp
|
||||
@synindex vr cp
|
||||
@synindex pg cp
|
||||
+@dircategory The Emacs editor and associated tools
|
||||
+@direntry
|
||||
+* GNUS: (gnus). The news reader GNUS.
|
||||
+@end direntry
|
||||
+
|
||||
@iftex
|
||||
@finalout
|
||||
@end iftex
|
||||
--- ./man/mh-e.texi.org Sun Aug 4 00:00:29 1996
|
||||
+++ ./man/mh-e.texi Tue May 20 01:23:49 1997
|
||||
@@ -4,6 +4,10 @@
|
||||
@setfilename ../info/mh-e
|
||||
@settitle mh-e
|
||||
@c %**end of header
|
||||
+@dircategory The Emacs editor and associated tools
|
||||
+@direntry
|
||||
+* MH-E: (mh-e). Emacs interface to the MH mail system.
|
||||
+@end direntry
|
||||
|
||||
@setchapternewpage odd
|
||||
|
||||
--- ./man/cl.texi.org Mon Apr 15 21:36:53 1996
|
||||
+++ ./man/cl.texi Tue May 20 01:24:18 1997
|
||||
@@ -2,6 +2,12 @@
|
||||
@setfilename ../info/cl
|
||||
@settitle Common Lisp Extensions
|
||||
|
@ -73,8 +94,8 @@
|
|||
@iftex
|
||||
@finalout
|
||||
@end iftex
|
||||
--- ./man/sc.texi.org Sat Jan 8 00:41:40 1994
|
||||
+++ ./man/sc.texi Tue May 20 22:30:32 1997
|
||||
--- ./man/sc.texi.org Thu Jan 4 12:55:23 1996
|
||||
+++ ./man/sc.texi Tue May 20 01:25:13 1997
|
||||
@@ -3,6 +3,12 @@
|
||||
@comment %**start of header (This is for running Texinfo on a region.)
|
||||
@setfilename ../info/sc
|
||||
|
@ -88,8 +109,8 @@
|
|||
@iftex
|
||||
@finalout
|
||||
@end iftex
|
||||
--- ./man/dired-x.texi.org Sat Aug 13 09:58:50 1994
|
||||
+++ ./man/dired-x.texi Tue May 20 22:48:19 1997
|
||||
--- ./man/dired-x.texi.org Thu Jan 4 12:54:19 1996
|
||||
+++ ./man/dired-x.texi Tue May 20 01:25:55 1997
|
||||
@@ -18,6 +18,11 @@
|
||||
@setfilename ../info/dired-x
|
||||
@c dired-x.el REVISION NUMBER
|
||||
|
@ -102,57 +123,106 @@
|
|||
@iftex
|
||||
@finalout
|
||||
@end iftex
|
||||
@@ -196,32 +201,32 @@
|
||||
@enumerate
|
||||
@item
|
||||
Omitting of uninteresting files from dired listing.
|
||||
-@itemize
|
||||
+@itemize @bullet
|
||||
@xref{Omitting Files in Dired}
|
||||
@end itemize
|
||||
@item
|
||||
Local variables for dired directories.
|
||||
-@itemize
|
||||
+@itemize @bullet
|
||||
@xref{Local Variables}
|
||||
@end itemize
|
||||
@item
|
||||
Guessing shell commands in dired buffers.
|
||||
-@itemize
|
||||
+@itemize @bullet
|
||||
@xref{Shell Command Guessing}
|
||||
@end itemize
|
||||
@item
|
||||
Running dired command in non-dired buffers.
|
||||
-@itemize
|
||||
+@itemize @bullet
|
||||
@xref{Virtual Dired}
|
||||
@end itemize
|
||||
@item
|
||||
Finding a file mentioned in a buffer
|
||||
-@itemize
|
||||
+@itemize @bullet
|
||||
@xref{Find File At Point}
|
||||
@end itemize
|
||||
@item
|
||||
Commands using file marking.
|
||||
-@itemize
|
||||
+@itemize @bullet
|
||||
@xref{Advanced Mark Commands}
|
||||
@end itemize
|
||||
@end enumerate
|
||||
--- ./man/gnus.texi.org Sun Sep 11 11:52:45 1994
|
||||
+++ ./man/gnus.texi Tue May 20 23:23:03 1997
|
||||
@@ -3,6 +3,12 @@
|
||||
@comment %**start of header (This is for running Texinfo on a region.)
|
||||
@setfilename ../info/gnus
|
||||
@settitle GNUS 3.15 Manual
|
||||
+
|
||||
--- ./man/ediff.texi.org Fri Jun 21 20:00:04 1996
|
||||
+++ ./man/ediff.texi Tue May 20 01:26:29 1997
|
||||
@@ -10,6 +10,11 @@
|
||||
@synindex vr cp
|
||||
@synindex fn cp
|
||||
@synindex pg cp
|
||||
+@dircategory The Emacs editor and associated tools
|
||||
+@direntry
|
||||
+* GNUS: (gnus). The news reader GNUS.
|
||||
+* Ediff: (ediff). A comprehensive visual interface to diff
|
||||
+ and patch.
|
||||
+@end direntry
|
||||
+
|
||||
@iftex
|
||||
@finalout
|
||||
@end iftex
|
||||
--- ./man/cc-mode.texi.org Sun Aug 4 21:56:21 1996
|
||||
+++ ./man/cc-mode.texi Tue May 20 01:27:18 1997
|
||||
@@ -9,6 +9,12 @@
|
||||
@settitle CC-MODE Version 4 Documentation
|
||||
@footnotestyle end
|
||||
|
||||
+@dircategory The Emacs editor and associated tools
|
||||
+@direntry
|
||||
+* CC mode: (ccmode). The GNU Emacs mode for editing C, C++,
|
||||
+ Objective-C and Java code.
|
||||
+@end direntry
|
||||
+
|
||||
@comment !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
||||
@comment @setchapternewpage odd !! we don't want blank pages !!
|
||||
@comment %**end of header (This is for running Texinfo on a region)
|
||||
--- ./man/message.texi.org Wed Jun 26 14:49:43 1996
|
||||
+++ ./man/message.texi Sat Dec 13 17:46:31 1997
|
||||
@@ -5,6 +5,10 @@
|
||||
@synindex fn cp
|
||||
@synindex vr cp
|
||||
@synindex pg cp
|
||||
+@dircategory The Emacs editor and associated tools
|
||||
+@direntry
|
||||
+* Message: (message). Editing mail and news messages.
|
||||
+@end direntry
|
||||
@iftex
|
||||
@finalout
|
||||
@end iftex
|
||||
--- Makefile.in.~1~ Sat Jul 11 17:57:16 1998
|
||||
+++ Makefile.in Sat Jul 11 17:58:45 1998
|
||||
@@ -191,7 +191,7 @@
|
||||
# Subdirectories to make recursively. `lisp' is not included
|
||||
# because the compiled lisp files are part of the distribution
|
||||
# and you cannot remake them without installing Emacs first.
|
||||
-SUBDIR = lib-src src
|
||||
+SUBDIR = lib-src src man
|
||||
|
||||
# The makefiles of the directories in $SUBDIR.
|
||||
SUBDIR_MAKEFILES = lib-src/Makefile man/Makefile src/Makefile oldXMenu/Makefile lwlib/Makefile
|
||||
--- Makefile.in.~1~ Fri Jul 10 00:00:50 1998
|
||||
+++ Makefile.in Fri Jul 10 00:10:50 1998
|
||||
@@ -375,14 +375,9 @@
|
||||
if [ `(cd ${srcdir}/info && /bin/pwd)` != `(cd ${infodir} && /bin/pwd)` ]; \
|
||||
then \
|
||||
(cd ${infodir}; \
|
||||
- if [ -f dir ]; then \
|
||||
- if [ ! -f dir.old ]; then mv -f dir dir.old; \
|
||||
- else mv -f dir dir.bak; fi; \
|
||||
- fi; \
|
||||
cd ${srcdir}/info ; \
|
||||
- (cd $${thisdir}; ${INSTALL_DATA} ${srcdir}/info/dir ${infodir}/dir); \
|
||||
(cd $${thisdir}; chmod a+r ${infodir}/dir); \
|
||||
- for f in ccmode* cl* dired-x* ediff* emacs* forms* gnus* info* message* mh-e* sc* vip* \
|
||||
+ for f in ccmode* cl* dired-x* ediff* emacs* forms* gnus* message* mh-e* sc* vip* \
|
||||
antenews* canna* egg* languages* m2ps* mule* kbd-trans* \
|
||||
quail* terminology* CCL* ISO2022* R2L* XFONT*; do \
|
||||
(cd $${thisdir}; \
|
||||
--- ./man/Makefile.in.org Thu Jun 27 15:27:19 1996
|
||||
+++ ./man/Makefile.in Tue Apr 15 00:29:52 1997
|
||||
@@ -13,7 +13,7 @@
|
||||
# The makeinfo program is part of the Texinfo distribution.
|
||||
MAKEINFO = makeinfo
|
||||
INFO_TARGETS = ../info/emacs ../info/ccmode ../info/cl ../info/dired-x \
|
||||
- ../info/ediff ../info/forms ../info/gnus ../info/info \
|
||||
+ ../info/ediff ../info/forms ../info/gnus \
|
||||
../info/mh-e ../info/sc ../info/vip ../info/viper \
|
||||
../info/message
|
||||
DVI_TARGETS = emacs.dvi cc-mode.dvi cl.dvi dired-x.dvi ediff.dvi forms.dvi \
|
||||
@@ -66,6 +66,7 @@
|
||||
${srcdir}/gnu1.texi \
|
||||
${srcdir}/glossary.texi
|
||||
|
||||
+all: info
|
||||
info: $(INFO_TARGETS)
|
||||
|
||||
dvi: $(DVI_TARGETS)
|
||||
@@ -74,12 +75,6 @@
|
||||
# in srcdir. There is no provision for Info files
|
||||
# to exist in the build directory.
|
||||
# In a distribution of Emacs, the Info files should be up to date.
|
||||
-
|
||||
-../info/info: ${INFOSOURCES}
|
||||
- cd $(srcdir); $(MAKEINFO) --no-split info.texi
|
||||
-
|
||||
-info.dvi: ${INFOSOURCES}
|
||||
- TEXINPUTS="$(srcdir) $(TEXINPUTS)"; $(TEXI2DVI) ${srcdir}/info.texi
|
||||
|
||||
../info/emacs: ${EMACSSOURCES}
|
||||
cd $(srcdir); $(MAKEINFO) emacs.texi
|
||||
|
|
|
@ -1,25 +1,74 @@
|
|||
--- ../mule-2.3.org/src/s/freebsd.h.org Fri Nov 4 03:11:17 1994
|
||||
+++ ./src/s/freebsd.h Mon Feb 16 17:29:31 1998
|
||||
@@ -31,10 +31,10 @@
|
||||
--- orig/s/freebsd.h Mon Jun 10 05:14:32 1996
|
||||
+++ src/s/freebsd.h Tue Sep 29 11:35:32 1998
|
||||
@@ -1,5 +1,15 @@
|
||||
/* s/ file for freebsd system. */
|
||||
|
||||
#define PENDING_OUTPUT_COUNT(FILE) ((FILE)->_p - (FILE)->_bf._base)
|
||||
|
||||
-#define LIBS_DEBUG
|
||||
+#define LIBS_DEBUG -lcrypt
|
||||
+/* Get the correct __FreeBSD_version, even if this is before that was
|
||||
+ defined. */
|
||||
+#ifndef __FreeBSD__
|
||||
+#define __FreeBSD_version 199401
|
||||
+#elif __FreeBSD__ == 1
|
||||
+#define __FreeBSD_version 199405
|
||||
+#else
|
||||
+#include <osreldate.h>
|
||||
+#endif
|
||||
+
|
||||
/* '__FreeBSD__' is defined by the preprocessor on FreeBSD-1.1 and up.
|
||||
Earlier versions do not have shared libraries, so inhibit them.
|
||||
You can inhibit them on newer systems if you wish
|
||||
@@ -34,7 +44,6 @@
|
||||
#define LIBS_DEBUG
|
||||
#define LIBS_SYSTEM -lutil
|
||||
#define LIBS_TERMCAP -ltermcap
|
||||
-#define LIB_GCC -lgcc
|
||||
+#define LIB_GCC /usr/lib/libgcc.a
|
||||
|
||||
/* Reread the time zone on startup. */
|
||||
#define LOCALTIME_CACHE
|
||||
@@ -81,6 +81,9 @@
|
||||
#define SYSV_SYSTEM_DIR
|
||||
|
||||
@@ -42,12 +51,28 @@
|
||||
#undef BSD_PGRPS
|
||||
#define GETPGRP_NO_ARG
|
||||
|
||||
+#ifdef __ELF__
|
||||
+
|
||||
+#define LD_SWITCH_SYSTEM
|
||||
+#define START_FILES pre-crt0.o /usr/lib/crt1.o /usr/lib/crti.o /usr/lib/crtbegin.o
|
||||
+#define UNEXEC unexelf.o
|
||||
+#define LIB_STANDARD -lgcc -lc -lgcc /usr/lib/crtend.o /usr/lib/crtn.o
|
||||
+#undef LIB_GCC
|
||||
+#define LIB_GCC
|
||||
+
|
||||
+#else /* not __ELF__ */
|
||||
+
|
||||
#ifndef NO_SHARED_LIBS
|
||||
#define LD_SWITCH_SYSTEM -e start -dc -dp
|
||||
#define HAVE_TEXT_START /* No need to define `start_of_text'. */
|
||||
+#if __FreeBSD_version >= 300002
|
||||
+#define START_FILES pre-crt0.o /usr/lib/aout/crt0.o
|
||||
+#else /* __FreeBSD_version < 300002 */
|
||||
#define START_FILES pre-crt0.o /usr/lib/crt0.o
|
||||
-#define UNEXEC unexsunos4.o
|
||||
+#endif /* __FreeBSD_version < 300002 */
|
||||
+#define UNEXEC unexfreebsd.o
|
||||
#define RUN_TIME_REMAP
|
||||
+#define LIB_GCC -lgcc
|
||||
|
||||
#ifndef N_TRELOFF
|
||||
#define N_PAGSIZ(x) __LDPGSZ
|
||||
@@ -63,6 +88,8 @@
|
||||
#endif /* __FreeBSD__ */
|
||||
#endif /* NO_SHARED_LIBS */
|
||||
|
||||
+#endif /* not __ELF__ */
|
||||
+
|
||||
#define HAVE_WAIT_HEADER
|
||||
#define HAVE_GETLOADAVG
|
||||
/*#define HAVE_GETPAGESIZE /* configure now puts this in config.h */
|
||||
@@ -80,6 +107,8 @@
|
||||
#define BSD 199103
|
||||
#elif __FreeBSD__ == 2
|
||||
#define BSD 199306
|
||||
+#elif __FreeBSD__ == 3
|
||||
+#define BSD 199506
|
||||
+#define FREEBSD_NEW_LDSO
|
||||
#endif
|
||||
|
||||
#define WAITTYPE int
|
||||
|
|
23
textproc/coco/files/patch-ae
Normal file
23
textproc/coco/files/patch-ae
Normal file
|
@ -0,0 +1,23 @@
|
|||
--- src/unexelf.c.orig Fri Oct 2 12:55:43 1998
|
||||
+++ src/unexelf.c Fri Oct 2 13:02:05 1998
|
||||
@@ -678,7 +678,8 @@
|
||||
if (n < 0)
|
||||
fatal ("Couldn't find segment next to .bss in %s\n", old_name, 0);
|
||||
|
||||
- NEW_PROGRAM_H (n).p_filesz += new_data2_size;
|
||||
+/* NEW_PROGRAM_H (n).p_filesz += new_data2_size; */
|
||||
+ NEW_PROGRAM_H (n).p_filesz = new_bss_addr - NEW_PROGRAM_H (n).p_vaddr; /* From emacs 20.3 */
|
||||
NEW_PROGRAM_H (n).p_memsz = NEW_PROGRAM_H (n).p_filesz;
|
||||
|
||||
#if 0 /* Maybe allow section after data2 - does this ever happen? */
|
||||
@@ -845,7 +846,9 @@
|
||||
|
||||
for (; symp < symendp; symp ++)
|
||||
if (strcmp ((char *) (symnames + symp->st_name), "_end") == 0
|
||||
- || strcmp ((char *) (symnames + symp->st_name), "_edata") == 0)
|
||||
+ || strcmp ((char *) (symnames + symp->st_name), "end") == 0
|
||||
+ || strcmp ((char *) (symnames + symp->st_name), "_edata") == 0
|
||||
+ || strcmp ((char *) (symnames + symp->st_name), "edata") == 0)
|
||||
memcpy (&symp->st_value, &new_bss_addr, sizeof (new_bss_addr));
|
||||
}
|
||||
|
73
textproc/coco/files/patch-etl
Normal file
73
textproc/coco/files/patch-etl
Normal file
|
@ -0,0 +1,73 @@
|
|||
From ftp://ftp.etl.go.jp/pub/mule/BUG-INFO
|
||||
|
||||
6) This fix a bug of displaying multilingual text in mode lines.
|
||||
|
||||
--- /usr/dist/mule/mule-2.3/src/xdisp.c Fri Jun 9 17:37:14 1995
|
||||
+++ ./src/xdisp.c Wed Mar 6 17:08:03 1996
|
||||
@@ -3973,8 +3973,9 @@
|
||||
|
||||
/* 91.10.21 by K.Handa, 92.4.30 by Y.Niibe */
|
||||
int mc_flag = !NILP(XBUFFER (w->buffer)->mc_flag);
|
||||
- /* 92.3.21, 92.9.7 by K.Handa */
|
||||
- register unsigned char *endp = string + strlen(string);
|
||||
+ /* 92.3.21, 92.9.7, 95.8.31 by K.Handa */
|
||||
+ register unsigned char *endp
|
||||
+ = string + (length < 0 ? strlen(string) : length);
|
||||
char *hexa = "0123456789ABCDEF"; /* 92.4.9 by K.Handa */
|
||||
/* 92.4.9 by K.Handa, 92.4.30 by Y.Niibe */
|
||||
int ctl_hexa = !NILP (XBUFFER (w->buffer)->ctl_hexa);
|
||||
|
||||
8) Another fix for a severe bug for writing *viscii* file.
|
||||
|
||||
--- mule/lisp/mule-init.el.old Wed May 8 13:05:30 1996
|
||||
+++ ./lisp/mule-init.el Wed May 8 13:04:06 1996
|
||||
@@ -638,7 +638,7 @@
|
||||
(r0 -= 160)
|
||||
(write-read-repeat
|
||||
r0
|
||||
- [ 0 129 130 131 132 165 134 135 136 137 138 139 140 141 142 143
|
||||
+ [ 0 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143
|
||||
144 145 146 0 0 147 150 151 152 0 0 0 0 180 149 0
|
||||
0 0 0 0 0 0 2 5 0 0 0 0 0 0 0 159
|
||||
0 186 0 0 0 128 20 187 188 0 0 25 30 0 179 191
|
||||
|
||||
|
||||
11) This patch fixes Single Shift 3 handling.
|
||||
|
||||
--- /usr/dist/mule/mule-2.3/src/coding.c Wed Nov 30 16:45:02 1994
|
||||
+++ ./src/coding.c Sat Sep 28 09:41:51 1996
|
||||
@@ -1044,7 +1044,7 @@
|
||||
{ \
|
||||
if (lc != lcg) dp = designate(dp, lcg, lc, 3, form), lcg = lc; \
|
||||
if (form & CODE_SEVEN) \
|
||||
- *dp++ = ESC, *dp++ = 'N'; \
|
||||
+ *dp++ = ESC, *dp++ = 'O'; \
|
||||
else \
|
||||
*dp++ = SS3; \
|
||||
cntl = (cntl & ~CC_GRAPHIC_MASK) | CC_IN_G3; \
|
||||
|
||||
12) This patch fixes wrong handling of *iso-2022-lock* by coco.
|
||||
--- /usr/dist/mule/mule-2.3/lib-src/mulelib.c Mon Jul 17 15:03:43 1995
|
||||
+++ ./lib-src/mulelib.c Fri Oct 4 21:28:48 1996
|
||||
@@ -287,13 +287,18 @@
|
||||
p0 = p1 + 1;
|
||||
if (CODE_TYPE (cs) == ISO2022) {
|
||||
long flags[12];
|
||||
- for (i = 0; i < 11; i++) {
|
||||
- if (!(flags[i] = atoi(p0))) flags[i] = Qnil;
|
||||
+ for (i = 0; i < 4; i++) {
|
||||
+ if ((flags[i] = atoi(p0)) == -1) flags[i] = LCASCII;
|
||||
PROCEED_CHAR(',');
|
||||
p0 = p1 + 1;
|
||||
}
|
||||
- flags[i] = atoi(p0);
|
||||
CODE_LC_SET(cs, flags[0], flags[1], flags[2], flags[3]);
|
||||
+ for (; i < 11; i++) {
|
||||
+ if (!(flags[i] = atoi(p0))) flags[i] = Qnil;
|
||||
+ PROCEED_CHAR(',');
|
||||
+ p0 = p1 + 1;
|
||||
+ }
|
||||
+ if (!(flags[i] = atoi(p0))) flags[i] = Qnil;
|
||||
CODE_FORM_SET(cs, (Lisp_Object)flags[4], (Lisp_Object)flags[5],
|
||||
(Lisp_Object)flags[6], (Lisp_Object)flags[7],
|
||||
(Lisp_Object)flags[8], (Lisp_Object)flags[9],
|
11
textproc/coco/files/patch-mc
Normal file
11
textproc/coco/files/patch-mc
Normal file
|
@ -0,0 +1,11 @@
|
|||
--- src/s.emacs/freebsd.h Tue Sep 29 11:35:32 1998
|
||||
+++ src/s/freebsd.h Tue Sep 29 11:42:53 1998
|
||||
@@ -42,7 +42,7 @@
|
||||
#define PENDING_OUTPUT_COUNT(FILE) ((FILE)->_p - (FILE)->_bf._base)
|
||||
|
||||
#define LIBS_DEBUG
|
||||
-#define LIBS_SYSTEM -lutil
|
||||
+#define LIBS_SYSTEM -lutil -lcrypt -lxpg4
|
||||
#define LIBS_TERMCAP -ltermcap
|
||||
|
||||
#define SYSV_SYSTEM_DIR
|
89
textproc/coco/files/patch-md
Normal file
89
textproc/coco/files/patch-md
Normal file
|
@ -0,0 +1,89 @@
|
|||
diff -arcN ../mule-2.3.org/etc/FAQ-Mule.jp ./etc/FAQ-Mule.jp
|
||||
*** ../mule-2.3.org/etc/FAQ-Mule.jp Fri Jul 21 20:40:06 1995
|
||||
--- ./etc/FAQ-Mule.jp Wed Aug 21 11:33:22 1996
|
||||
***************
|
||||
*** 1867,1872 ****
|
||||
--- 1867,1874 ----
|
||||
|
||||
$B$H=q$/J}K!$b$"$j$^$9!#(B
|
||||
|
||||
+ ($BCm5-(B : FreeBSD$B$G$O!"B>$H6%9g$9$k$?$a%]!<%HHV9f$O(B3086$B$K$7$F$"$j$^$9!#(B)
|
||||
+
|
||||
Emacs lisp $B%W%m%0%i%_%s%0(B
|
||||
=========================
|
||||
|
||||
diff -arcN ../mule-2.3.org/lisp/eggrc-sj3 ./lisp/eggrc-sj3
|
||||
*** ../mule-2.3.org/lisp/eggrc-sj3 Fri Oct 21 13:18:21 1994
|
||||
--- ./lisp/eggrc-sj3 Wed Aug 21 13:05:24 1996
|
||||
***************
|
||||
*** 3,11 ****
|
||||
;;; Version 1.0
|
||||
;;; Copyright 1990 Kiyoji Ishii
|
||||
;;;
|
||||
|
||||
! (set-default-sys-dic-directory "/usr/sony/dict/sj3")
|
||||
! (set-default-usr-dic-directory "/usr/sony/dict/sj3/user/$USER")
|
||||
|
||||
;;;
|
||||
;;; System Dictionary
|
||||
--- 3,17 ----
|
||||
;;; Version 1.0
|
||||
;;; Copyright 1990 Kiyoji Ishii
|
||||
;;;
|
||||
+ ;;;
|
||||
+ ;;; Change dictionary paths.
|
||||
+ ;;; Patched by Hidekazu Kuroki(hidekazu@cs.titech.ac.jp) 1996/8/10
|
||||
+ ;;; Remove $USER variable. Use (user-login-name).
|
||||
+ ;;; Patched by Hidekazu Kuroki(hidekazu@cs.titech.ac.jp) 1996/8/20
|
||||
+ ;;;
|
||||
|
||||
! (set-default-sys-dic-directory "/usr/local/lib/sj3/dict")
|
||||
! (set-default-usr-dic-directory (concat "/usr/local/lib/sj3/dict/user/" (user-login-name)))
|
||||
|
||||
;;;
|
||||
;;; System Dictionary
|
||||
diff -arcN ../mule-2.3.org/lisp/sj3-egg.el ./lisp/sj3-egg.el
|
||||
*** ../mule-2.3.org/lisp/sj3-egg.el Fri Feb 17 17:23:31 1995
|
||||
--- ./lisp/sj3-egg.el Wed Aug 21 13:32:36 1996
|
||||
***************
|
||||
*** 294,301 ****
|
||||
;;;
|
||||
;;; Entry functions for egg-startup-file
|
||||
;;;
|
||||
|
||||
! (defvar *default-sys-dic-directory* "/usr/sony/dict/sj3")
|
||||
|
||||
(defun set-default-sys-dic-directory (pathname)
|
||||
"$B%7%9%F%`<-=q$NI8=`(Bdirectory PATHNAME$B$r;XDj$9$k!#(B
|
||||
--- 294,307 ----
|
||||
;;;
|
||||
;;; Entry functions for egg-startup-file
|
||||
;;;
|
||||
+ ;;;
|
||||
+ ;;; Change dictionary paths.
|
||||
+ ;;; Patched by Hidekazu Kuroki(hidekazu@cs.titech.ac.jp) 1996/8/10
|
||||
+ ;;; Remove $USER variable. Use (user-login-name).
|
||||
+ ;;; Patched by Hidekazu Kuroki(hidekazu@cs.titech.ac.jp) 1996/8/20
|
||||
+ ;;;
|
||||
|
||||
! (defvar *default-sys-dic-directory* "/usr/local/lib/sj3/dict")
|
||||
|
||||
(defun set-default-sys-dic-directory (pathname)
|
||||
"$B%7%9%F%`<-=q$NI8=`(Bdirectory PATHNAME$B$r;XDj$9$k!#(B
|
||||
***************
|
||||
*** 310,316 ****
|
||||
(format "System Default directory(%s) $B$,$"$j$^$;$s!#(B" pathname))
|
||||
(setq *default-sys-dic-directory* (file-name-as-directory pathname)))))
|
||||
|
||||
! (defvar *default-usr-dic-directory* "/usr/sony/dict/sj3/user/$USER")
|
||||
|
||||
(defun set-default-usr-dic-directory (pathname)
|
||||
"$BMxMQ<T<-=q$NI8=`(Bdirectory PATHNAME$B$r;XDj$9$k!#(B
|
||||
--- 316,322 ----
|
||||
(format "System Default directory(%s) $B$,$"$j$^$;$s!#(B" pathname))
|
||||
(setq *default-sys-dic-directory* (file-name-as-directory pathname)))))
|
||||
|
||||
! (defvar *default-usr-dic-directory* (concat "/usr/local/lib/sj3/dict/user/" (user-login-name)))
|
||||
|
||||
(defun set-default-usr-dic-directory (pathname)
|
||||
"$BMxMQ<T<-=q$NI8=`(Bdirectory PATHNAME$B$r;XDj$9$k!#(B
|
60
textproc/coco/files/patch-mf
Normal file
60
textproc/coco/files/patch-mf
Normal file
|
@ -0,0 +1,60 @@
|
|||
--- ../mule.org/lisp/eggrc-wnn Fri Jul 28 20:12:41 1995
|
||||
+++ ./lisp/eggrc-wnn Wed Oct 29 12:13:50 1997
|
||||
@@ -24,7 +24,7 @@
|
||||
;;;
|
||||
;;; modified for Wnn V4 - Use compatible library of Wnn v3
|
||||
;;; Copyright 1989 OMRON Tateisi Electronics, Co.
|
||||
-;;; 1989 7/12 by H.Kuribayashi kuri@frf.oron.junet
|
||||
+;;; 1989 7/12 by H.Kuribayashi kuri@frf.omron.junet
|
||||
|
||||
;;; 92.5.19 modified for Wnn V4 by T.Shingu <shingu@cpr.canon.co.jp>
|
||||
;;; Use non compatible library.
|
||||
@@ -50,14 +50,16 @@
|
||||
(concat wnn-usr-dic-dir "/symbol.h") 1 nil t)
|
||||
(add-wnn-dict "iwanami/tankan.dic" "" 1 nil nil)
|
||||
(add-wnn-dict "iwanami/tankan2.dic" "" 1 nil nil)
|
||||
- (add-wnn-dict "iwanami/tel.dic" "" 1 nil nil)
|
||||
- (add-wnn-dict "iwanami/zip.dic" "" 1 nil nil)
|
||||
+ (add-wnn-dict "iwanami/tel.dic"
|
||||
+ (concat wnn-usr-dic-dir "/tel.h") 1 nil t)
|
||||
+ (add-wnn-dict "iwanami/zip.dic"
|
||||
+ (concat wnn-usr-dic-dir "/zip.h") 1 nil t)
|
||||
(add-wnn-dict (concat wnn-usr-dic-dir "/ud") "" 15 t t)
|
||||
; (add-wnn-dict "wnncons/tankan2.dic" "" 1 nil nil)
|
||||
; (add-wnn-dict "wnncons/tankan3.dic" "" 1 nil nil)
|
||||
(set-wnn-param 5 10 2 45 0 80 5 1 20 0 400 -100 400 80 200 2 200)
|
||||
|
||||
- (add-wnn-notrans-dict (concat wnn-usr-dic-dir "/katakana") 15 t)
|
||||
+ (add-wnn-notrans-dict (concat wnn-usr-dic-dir "/muhenkan") 15 t)
|
||||
(add-wnn-bmodify-dict (concat wnn-usr-dic-dir "/bunsetsu") 15 t)
|
||||
|
||||
(set-last-is-first-mode t)
|
||||
@@ -101,7 +103,9 @@
|
||||
(add-wnn-dict (concat wnn-usr-dic-dir "/ud") "" 5 t t)
|
||||
; (add-wnn-dict "wnncons/tankan2.dic" "" 1 nil nil)
|
||||
; (add-wnn-dict "wnncons/tankan3.dic" "" 1 nil nil)
|
||||
- (set-wnn-param 2 10 2 45 5 80 5 1 40 0 400 -100 400 80 200 2 200)
|
||||
+; (set-wnn-param 2 10 2 45 5 80 5 1 40 0 400 -100 400 80 200 2 200)
|
||||
+; New Parameter
|
||||
+ (set-wnn-param 2 10 2 45 100 200 5 1 40 -100 200 -100 200 80 200 200 200)
|
||||
(set-wnn-reverse t)
|
||||
(set-wnn-fuzokugo "pubdic/full.fzk")
|
||||
(add-wnn-dict "pubdic/kihon.dic" (concat wnn-usr-dic-dir "/kihon.h") 5 nil t)
|
||||
@@ -158,7 +162,7 @@
|
||||
((eq wnn-server-type 'kserver)
|
||||
(set-wnn-reverse nil)
|
||||
(set-wnn-fuzokugo "sys/full.fzk")
|
||||
- ; (add-wnn-dict "sys/hword.dic" (concat wnn-usr-dic-dir "/hword.h") 4 nil t)
|
||||
+ (add-wnn-dict "sys/hword.dic" (concat wnn-usr-dic-dir "/hword.h") 4 nil t)
|
||||
(add-wnn-dict "sys/single.dic" (concat wnn-usr-dic-dir "/single.h") 1 nil t)
|
||||
(add-wnn-dict (concat wnn-usr-dic-dir "/ud") "" 5 t t)
|
||||
; (add-wnn-dict (concat wnn-usr-dic-dir "/hangul") "" 5 t t)
|
||||
@@ -166,7 +170,7 @@
|
||||
(set-wnn-param 1 5 2 750 10 80 10 5 1000 50 0 -200 0 0 0 16 0)
|
||||
(set-wnn-reverse t)
|
||||
(set-wnn-fuzokugo "sys/full.fzk")
|
||||
- ; (add-wnn-dict "sys/hword.dic" (concat wnn-usr-dic-dir "/hword.h") 4 nil t)
|
||||
+ (add-wnn-dict "sys/hword.dic" (concat wnn-usr-dic-dir "/hword.h") 4 nil t)
|
||||
(add-wnn-dict "sys/single.dic" (concat wnn-usr-dic-dir "/single.h") 1 nil t)
|
||||
(add-wnn-dict (concat wnn-usr-dic-dir "/ud") "" 5 t t)
|
||||
; (add-wnn-dict (concat wnn-usr-dic-dir "/hangul") "" 5 t t)
|
45
textproc/coco/files/patch-mk
Normal file
45
textproc/coco/files/patch-mk
Normal file
|
@ -0,0 +1,45 @@
|
|||
--- Makefile.in.orig Fri Jul 10 11:22:07 1998
|
||||
+++ Makefile.in Fri Jul 10 11:27:03 1998
|
||||
@@ -310,14 +310,14 @@
|
||||
### It would be nice to do something for a parallel make
|
||||
### to ensure that install-arch-indep finishes before this starts.
|
||||
install-arch-dep: mkdir
|
||||
- (cd lib-src; \
|
||||
- $(MAKE) install $(MFLAGS) prefix=${prefix} \
|
||||
- exec_prefix=${exec_prefix} bindir=${bindir} \
|
||||
- libexecdir=${libexecdir} archlibdir=${archlibdir})
|
||||
${INSTALL_PROGRAM} src/emacs ${bindir}/${executable}-${version}
|
||||
-chmod 1755 ${bindir}/${executable}-${version}
|
||||
rm -f ${bindir}/$(EMACS)
|
||||
-ln ${bindir}/${executable}-${version} ${bindir}/$(EMACS)
|
||||
+ echo "Copying etc/DOC-* to ${docdir} ..." ; \
|
||||
+ (cd ./etc; tar -cf - DOC*)|(cd ${docdir}; umask 0; tar -xvf - ); \
|
||||
+ (cd $(docdir); chmod a+r DOC*; rm DOC) \
|
||||
+
|
||||
|
||||
### Install the files that are machine-independent.
|
||||
### Most of them come straight from the distribution;
|
||||
@@ -327,6 +327,10 @@
|
||||
### Note that we copy DOC* and then delete DOC
|
||||
### as a workaround for a bug in tar on Ultrix 4.2.
|
||||
install-arch-indep: mkdir
|
||||
+ (cd lib-src; \
|
||||
+ $(MAKE) install $(MFLAGS) prefix=${prefix} \
|
||||
+ exec_prefix=${exec_prefix} bindir=${bindir} \
|
||||
+ libexecdir=${libexecdir} archlibdir=${archlibdir})
|
||||
-set ${COPYDESTS} ; \
|
||||
for dir in ${COPYDIR} ; do \
|
||||
if [ `(cd $$1 && /bin/pwd)` != `(cd $${dir} && /bin/pwd)` ] ; then \
|
||||
@@ -360,9 +364,9 @@
|
||||
-chmod -R a+r ${COPYDESTS}
|
||||
if [ `(cd ./etc; /bin/pwd)` != `(cd ${docdir}; /bin/pwd)` ]; \
|
||||
then \
|
||||
- echo "Copying etc/DOC-*, etc/CHARSETS, and etc/CODINGS to ${docdir} ..." ; \
|
||||
- (cd ./etc; tar -cf - DOC* CHARSETS CODINGS)|(cd ${docdir}; umask 0; tar -xvf - ); \
|
||||
- (cd $(docdir); chmod a+r DOC* CHARSETS CODINGS; rm DOC) \
|
||||
+ echo "Copying etc/CHARSETS, and etc/CODINGS to ${docdir} ..." ; \
|
||||
+ (cd ./etc; tar -cf - CHARSETS CODINGS)|(cd ${docdir}; umask 0; tar -xvf - ); \
|
||||
+ (cd $(docdir); chmod a+r CHARSETS CODINGS) \
|
||||
else true; fi
|
||||
if [ -r ./lisp ] \
|
||||
&& [ x`(cd ./lisp; /bin/pwd)` != x`(cd ${lispdir}; /bin/pwd)` ] \
|
5
textproc/coco/files/patch-ml
Normal file
5
textproc/coco/files/patch-ml
Normal file
|
@ -0,0 +1,5 @@
|
|||
--- lisp/its/han-kata.el~ Thu Aug 6 19:55:01 1998
|
||||
+++ lisp/its/han-kata.el Mon Aug 10 13:24:50 1998
|
||||
@@ -45 +45 @@
|
||||
-(defvar enable-double-n-syntax nil "*Enable ""nn"" input for ""(I](B"" ")
|
||||
+(defvar enable-double-n-syntax nil "*Enable \"nn\" input for \"(I](B\" ")
|
16
textproc/coco/files/patch-mm
Normal file
16
textproc/coco/files/patch-mm
Normal file
|
@ -0,0 +1,16 @@
|
|||
--- configure.orig Sat Sep 19 23:06:14 1998
|
||||
+++ configure Sat Sep 19 23:14:44 1998
|
||||
@@ -564,11 +564,11 @@
|
||||
emacs_prefix=emacs
|
||||
lispdir='${datadir}/${emacs_prefix}/${version}/lisp'
|
||||
locallisppath='${datadir}/${emacs_prefix}/${version}/site-lisp:'\
|
||||
-'${datadir}/${emacs_prefix}/site-lisp'
|
||||
+'${datadir}/${emacs_prefix}/site-lisp:${datadir}/emacs/site-lisp'
|
||||
lisppath='${locallisppath}:${lispdir}'
|
||||
etcdir='${datadir}/${emacs_prefix}/${version}/etc'
|
||||
# share lockdir with emacs and mule.
|
||||
-lockdir='${sharedstatedir}/emacs/lock'
|
||||
+lockdir='/var/run/emacs/lock'
|
||||
archlibdir='${libexecdir}/${emacs_prefix}/${version}/${configuration}'
|
||||
docdir='${datadir}/${emacs_prefix}/${version}/etc'
|
||||
|
|
@ -32,11 +32,11 @@
|
|||
(setq-default quail-current-package (assoc "hangul" quail-package-alist))
|
||||
)
|
||||
|
||||
;; Add System Info path '/usr/share/info' into Info-default-directory-list
|
||||
(setq Info-default-directory-list
|
||||
(append (list
|
||||
"%%LOCALBASE%%/share/mule/19.34/info"
|
||||
"%%X11BASE%%/info"
|
||||
"/usr/share/info"
|
||||
"/usr/X11R6/info"
|
||||
) Info-default-directory-list))
|
||||
|
||||
;; END mule-family
|
||||
|
|
692
textproc/coco/files/unexfreebsd.c
Normal file
692
textproc/coco/files/unexfreebsd.c
Normal file
|
@ -0,0 +1,692 @@
|
|||
/* Code to do an unexec for FreeBSD for a temacs linked -Bdynamic.
|
||||
Derived from unexnetbsd.c, which was derived from unexsunos4.c
|
||||
Copyright (C) 1992, 1993 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of XEmacs.
|
||||
|
||||
XEmacs is free software; you can redistribute it and/or modify it
|
||||
under the terms of the GNU General Public License as published by the
|
||||
Free Software Foundation; either version 2, or (at your option) any
|
||||
later version.
|
||||
|
||||
XEmacs is distributed in the hope that it will be useful, but WITHOUT
|
||||
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
||||
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
|
||||
for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with XEmacs; see the file COPYING. If not, write to
|
||||
the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
||||
Boston, MA 02111-1307, USA. */
|
||||
|
||||
/* Synched up with: Not in FSF? */
|
||||
|
||||
/*
|
||||
Created 29-Oct-92 by Harlan Sexton
|
||||
Tweaked 06-Aug-93 by Dean Michaels to work with sun3.
|
||||
Converted 01-Dec-93 by Paul Mackerras to work with NetBSD shared libraries.
|
||||
Tweaked 26-Feb-94 by Shawn Carey for use with FreeBSD-1.1 shared libraries.
|
||||
*/
|
||||
|
||||
/********************** Included .h Files **************************/
|
||||
|
||||
#include <config.h>
|
||||
|
||||
#include <stdarg.h>
|
||||
#include <sys/param.h>
|
||||
#include <sys/mman.h>
|
||||
#include <sys/file.h>
|
||||
#include <sys/stat.h>
|
||||
#include <sys/types.h>
|
||||
#include <string.h>
|
||||
#include <stdio.h>
|
||||
#include <a.out.h>
|
||||
#include <unistd.h>
|
||||
#include <ctype.h>
|
||||
#include <stab.h>
|
||||
#include <dirent.h>
|
||||
#include <link.h>
|
||||
|
||||
/********************** Macros *************************************/
|
||||
|
||||
#define SYS_ERR strerror(errno)
|
||||
|
||||
#define MASK_UP(x,p_of_two) \
|
||||
((((unsigned long) (x)) + ((p_of_two) - 1)) & (~((p_of_two) - 1)))
|
||||
|
||||
#define MASK_DOWN(x,p_of_two) (((unsigned long) (x)) & (~((p_of_two) - 1)))
|
||||
|
||||
/********************** Typedefs and Structs ***********************/
|
||||
|
||||
struct translation_struct
|
||||
{
|
||||
long txtaddr;
|
||||
long txtoff;
|
||||
long dataddr;
|
||||
long datoff;
|
||||
long bssaddr;
|
||||
long endaddr;
|
||||
};
|
||||
|
||||
/********************** Function Prototypes/Declarations ***********/
|
||||
|
||||
static void unexec_error (const char *m, int use_errno, ...);
|
||||
static int unexec_open (char *filename, int flag, int mode);
|
||||
static caddr_t unexec_mmap (int fd, size_t len, int prot, int flags);
|
||||
static long unexec_seek (int fd, long position);
|
||||
static void unexec_read (int fd, long position, char *buf, int bytes);
|
||||
static void unexec_write (int fd, long position, char *buf, int bytes);
|
||||
static void unexec_pad (int fd, int bytes);
|
||||
static void unexec_fstat (int fd, struct stat *statptr);
|
||||
static void unexec_fchmod (int fd, int mode);
|
||||
static long unexec_addr_to_offset (long addr, struct translation_struct *ts);
|
||||
static void copy_relocation_site (struct relocation_info *ri,
|
||||
caddr_t from_base_addr,
|
||||
caddr_t to_base_addr,
|
||||
struct translation_struct *ts);
|
||||
static void reset_symtab (struct nlist *start, struct nlist *end,
|
||||
char *strtab, long edata_value, long end_value,
|
||||
int shlib_image);
|
||||
static void reset_ldso_symtab (struct nzlist *start, struct nzlist *end,
|
||||
char *strtab, long edata_value, long end_value,
|
||||
int shlib_image);
|
||||
int run_time_remap (char *dummy);
|
||||
|
||||
/********************** Variables **********************************/
|
||||
|
||||
/* for reporting error messages from system calls */
|
||||
extern int errno;
|
||||
extern int _DYNAMIC;
|
||||
extern char **environ;
|
||||
|
||||
static unsigned long sbrk_of_0_at_unexec;
|
||||
|
||||
/*******************************************************************/
|
||||
|
||||
static void
|
||||
unexec_error (const char *fmt, int use_errno, ...)
|
||||
{
|
||||
const char *err_msg = SYS_ERR;
|
||||
va_list args;
|
||||
|
||||
fprintf (stderr, "unexec - ");
|
||||
va_start (args, use_errno);
|
||||
vfprintf (stderr, fmt, args);
|
||||
va_end (args);
|
||||
|
||||
if (use_errno)
|
||||
fprintf (stderr, ": %s", err_msg);
|
||||
fprintf (stderr, "\n");
|
||||
exit (1);
|
||||
return;
|
||||
}
|
||||
|
||||
static int
|
||||
unexec_open (char *filename, int flag, int mode)
|
||||
{
|
||||
int fd;
|
||||
|
||||
errno = 0;
|
||||
|
||||
fd = open (filename, flag, mode);
|
||||
|
||||
if (fd < 0)
|
||||
unexec_error ("Failure opening file %s", 1, filename);
|
||||
return fd;
|
||||
}
|
||||
|
||||
static caddr_t
|
||||
unexec_mmap (int fd, size_t len, int prot, int flags)
|
||||
{
|
||||
caddr_t return_val;
|
||||
|
||||
unexec_seek (fd, 0);
|
||||
errno = 0;
|
||||
return_val = mmap (0, len, prot, flags, fd, 0);
|
||||
|
||||
if (return_val == (caddr_t) -1)
|
||||
unexec_error ("Failure mmap'ing file", 1);
|
||||
return return_val;
|
||||
}
|
||||
|
||||
|
||||
static long
|
||||
unexec_seek (int fd, long position)
|
||||
{
|
||||
long seek_value;
|
||||
|
||||
if (fd <= 0)
|
||||
unexec_error ("No file open in which to seek", 0);
|
||||
|
||||
errno = 0;
|
||||
|
||||
if (position < 0)
|
||||
seek_value = (long) lseek (fd, 0, L_INCR);
|
||||
else
|
||||
seek_value = (long) lseek (fd, position, L_SET);
|
||||
|
||||
if (seek_value < 0)
|
||||
unexec_error ("Failed to do a seek to 0x%x in %s", 1,
|
||||
position, "unexec() output file");
|
||||
|
||||
return seek_value;
|
||||
}
|
||||
|
||||
static void
|
||||
unexec_read (int fd, long position, char *buf, int bytes)
|
||||
{
|
||||
int n_read;
|
||||
int remains = bytes;
|
||||
position = unexec_seek (fd, position);
|
||||
|
||||
if (bytes < 0)
|
||||
unexec_error ("Attempted read of %d bytes", 0, bytes);
|
||||
|
||||
errno = 0;
|
||||
|
||||
while (remains > 0)
|
||||
{
|
||||
n_read = read (fd, buf, remains);
|
||||
if (n_read <= 0)
|
||||
unexec_error ("Read failed for 0x%x bytes at offset 0x%x in %s",
|
||||
1, bytes, position, "unexec() output file");
|
||||
buf += n_read;
|
||||
remains -= n_read;
|
||||
}
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
static void
|
||||
unexec_write (int fd, long position, char *buf, int bytes)
|
||||
{
|
||||
int n_written;
|
||||
int remains = bytes;
|
||||
position = unexec_seek (fd, position);
|
||||
|
||||
if (bytes < 0)
|
||||
unexec_error ("Attempted write of %d bytes in %s",
|
||||
0, bytes, "unexec() output file");
|
||||
|
||||
errno = 0;
|
||||
|
||||
while (remains > 0)
|
||||
{
|
||||
n_written = write (fd, buf, remains);
|
||||
if (n_written <= 0)
|
||||
unexec_error ("Write failed for 0x%x bytes at offset 0x%x in %s",
|
||||
1, bytes, position, "unexec() output file");
|
||||
buf += n_written;
|
||||
remains -= n_written;
|
||||
}
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
static void
|
||||
unexec_pad (int fd, int bytes)
|
||||
{
|
||||
if (bytes > 0)
|
||||
{
|
||||
char buf[1024];
|
||||
int remaining = bytes;
|
||||
|
||||
memset (buf, 0, sizeof (buf));
|
||||
|
||||
while (remaining > 0)
|
||||
{
|
||||
int this_write = (remaining > sizeof(buf))?sizeof(buf):remaining;
|
||||
unexec_write (fd, -1, buf, this_write);
|
||||
remaining -= this_write;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
unexec_fstat (int fd, struct stat *statptr)
|
||||
{
|
||||
errno = 0;
|
||||
if (-1 == fstat (fd, statptr))
|
||||
unexec_error ("fstat() failed for descriptor %d", 1, fd);
|
||||
return;
|
||||
}
|
||||
|
||||
static void
|
||||
unexec_fchmod (int fd, int mode)
|
||||
{
|
||||
errno = 0;
|
||||
if (-1 == fchmod (fd, mode))
|
||||
unexec_error ("fchmod() failed for descriptor %d", 1, fd);
|
||||
return;
|
||||
}
|
||||
|
||||
static long
|
||||
unexec_addr_to_offset (long addr, struct translation_struct *ts)
|
||||
|
||||
{
|
||||
if ((addr < ts->txtaddr) || (addr >= ts->bssaddr))
|
||||
return -1;
|
||||
else if (addr >= ts->dataddr)
|
||||
return ((long) ((addr - ts->dataddr) + ts->datoff));
|
||||
else
|
||||
return ((long) ((addr - ts->txtaddr) + ts->txtoff));
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* "LD.SO" DATA AND SYMBOL TABLE OPERATIONS
|
||||
*/
|
||||
|
||||
static void
|
||||
copy_relocation_site (struct relocation_info *ri,
|
||||
caddr_t from_base_addr,
|
||||
caddr_t to_base_addr,
|
||||
struct translation_struct *ts)
|
||||
{
|
||||
long offset;
|
||||
caddr_t from, to;
|
||||
|
||||
/* We can get relocation sites in the bss region, for objects whose
|
||||
contents are copied from a shared library. We don't need or want
|
||||
to restore these at present. */
|
||||
#ifndef sparc
|
||||
if (ri->r_copy)
|
||||
return;
|
||||
#else
|
||||
/* Struct relocation_info_sparc doesn't have member r_copy.
|
||||
Instead, we use the address to check if this is run-time-copied. */
|
||||
if (ri->r_address >= ts->bssaddr && ri->r_address < ts->endaddr)
|
||||
return;
|
||||
#endif
|
||||
|
||||
offset = unexec_addr_to_offset (ri->r_address, ts);
|
||||
if (offset == -1)
|
||||
unexec_error ("bad relocation address 0x%x (0x%x)", 0, ri->r_address,
|
||||
((long *)ri)[1]);
|
||||
|
||||
from = from_base_addr + offset;
|
||||
to = to_base_addr + offset;
|
||||
/* This stuff should be in a md_ file somewhere... */
|
||||
#ifndef sparc
|
||||
switch (ri->r_length)
|
||||
{
|
||||
case 0:
|
||||
*((char *) to) = *((char *) from);
|
||||
break;
|
||||
case 1:
|
||||
*((short *) to) = *((short *) from);
|
||||
break;
|
||||
case 2:
|
||||
*((long *) to) = *((long *) from);
|
||||
break;
|
||||
default:
|
||||
unexec_error ("unknown reloc length %d seen during unexec()",
|
||||
0, ri->r_length);
|
||||
break;
|
||||
}
|
||||
#else /* sparc */
|
||||
switch (ri->r_type)
|
||||
{
|
||||
case RELOC_8:
|
||||
case RELOC_DISP8:
|
||||
*((char *) to) = *((char *) from);
|
||||
break;
|
||||
case RELOC_16:
|
||||
case RELOC_DISP16:
|
||||
*((short *) to) = *((short *) from);
|
||||
break;
|
||||
case RELOC_LO10:
|
||||
case RELOC_13:
|
||||
case RELOC_22:
|
||||
case RELOC_HI22:
|
||||
case RELOC_WDISP22:
|
||||
case RELOC_WDISP30:
|
||||
case RELOC_32:
|
||||
case RELOC_DISP32:
|
||||
case RELOC_GLOB_DAT:
|
||||
*((long *) to) = *((long *) from);
|
||||
break;
|
||||
case RELOC_JMP_SLOT:
|
||||
{
|
||||
long *target = (long *) to;
|
||||
long *source = (long *) from;
|
||||
*target = *source;
|
||||
target++;
|
||||
source++;
|
||||
*target = *source;
|
||||
target++;
|
||||
source++;
|
||||
*target = *source;
|
||||
}
|
||||
break;
|
||||
default:
|
||||
unexec_error ("unknown reloc type %d seen during unexec()",
|
||||
0, ri->r_type);
|
||||
break;
|
||||
}
|
||||
#endif /* sparc */
|
||||
}
|
||||
|
||||
static void
|
||||
reset_symtab (struct nlist *start, struct nlist *end, char *strtab,
|
||||
long edata_value, long end_value, int shlib_image)
|
||||
{
|
||||
struct nlist *tmp = start;
|
||||
int found_edata = 0;
|
||||
int found_end = 0;
|
||||
|
||||
while (tmp < end)
|
||||
{
|
||||
int type = tmp->n_type;
|
||||
|
||||
if ((type == (N_UNDF | N_EXT)) &&
|
||||
(tmp->n_value != 0))
|
||||
unexec_error ("unexec'ing image has COMMON symbols in it -- we quit!",
|
||||
0);
|
||||
|
||||
if (!(type & N_STAB))
|
||||
{
|
||||
if (!found_edata &&
|
||||
(type == (N_EXT | N_DATA)) &&
|
||||
tmp->n_un.n_strx &&
|
||||
!strcmp ("_edata", strtab + tmp->n_un.n_strx))
|
||||
{
|
||||
tmp->n_value = edata_value;
|
||||
found_edata = 1;
|
||||
}
|
||||
|
||||
|
||||
if ((type & N_TYPE) == N_BSS)
|
||||
{
|
||||
if (!found_end &&
|
||||
(type == (N_EXT | N_BSS)) &&
|
||||
tmp->n_un.n_strx &&
|
||||
!strcmp ("_end", strtab + tmp->n_un.n_strx))
|
||||
{
|
||||
tmp->n_value = end_value;
|
||||
found_end = 1;
|
||||
}
|
||||
else if (type & N_EXT)
|
||||
tmp->n_type = N_DATA | N_EXT;
|
||||
else
|
||||
tmp->n_type = N_DATA;
|
||||
}
|
||||
|
||||
/* the way things are being handled here, having sbrk() in the
|
||||
image is fatal for an image linked with shared lib's (although
|
||||
the code could be modified to support it), but this should
|
||||
never happen anyway */
|
||||
if (shlib_image &&
|
||||
(type == (N_EXT | N_TEXT)) &&
|
||||
tmp->n_un.n_strx &&
|
||||
!strcmp ("_sbrk", strtab + tmp->n_un.n_strx))
|
||||
unexec_error ("unexec'd shlib image has sbrk() in it -- we quit!",
|
||||
0);
|
||||
}
|
||||
|
||||
tmp++;
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
reset_ldso_symtab (struct nzlist *start, struct nzlist *end, char *strtab,
|
||||
long edata_value, long end_value, int shlib_image)
|
||||
{
|
||||
struct nzlist *tmp = start;
|
||||
int found_edata = 0;
|
||||
int found_end = 0;
|
||||
|
||||
while (tmp < end) {
|
||||
int type = tmp->nz_type;
|
||||
/*
|
||||
* the following code breaks under FreeBSD-1.1-BETA, but everything
|
||||
* seems to work perfectly if it's commented out. This did not break
|
||||
* anything until the changes to ld.so were made.
|
||||
*/
|
||||
/*
|
||||
if ((type == (N_UNDF | N_EXT)) && (tmp->nz_value != 0))
|
||||
unexec_error("unexec'ing image has COMMON symbols in rel -- we quit!",0);
|
||||
*/
|
||||
if (!(type & N_STAB)) {
|
||||
if (!found_edata &&
|
||||
(type == (N_EXT | N_DATA)) &&
|
||||
!strcmp ("_edata", strtab + tmp->nz_strx)) {
|
||||
tmp->nz_value = edata_value;
|
||||
found_edata = 1;
|
||||
}
|
||||
|
||||
if ((type & N_TYPE) == N_BSS) {
|
||||
if (!found_end &&
|
||||
(type == (N_EXT | N_BSS)) &&
|
||||
!strcmp ("_end", strtab + tmp->nz_strx)) {
|
||||
tmp->nz_value = end_value;
|
||||
found_end = 1;
|
||||
} else if (type & N_EXT)
|
||||
tmp->nz_type = N_DATA | N_EXT;
|
||||
else
|
||||
tmp->nz_type = N_DATA;
|
||||
}
|
||||
|
||||
/* the way things are being handled here, having sbrk() in the
|
||||
image is fatal for an image linked with shared lib's (although
|
||||
the code could be modified to support it), but this should
|
||||
never happen anyway */
|
||||
if (shlib_image &&
|
||||
(type == (N_EXT | N_TEXT)) &&
|
||||
!strcmp ("_sbrk", strtab + tmp->nz_strx))
|
||||
unexec_error("unexec'd shlib image has sbrk() ref -- we quit!", 0);
|
||||
}
|
||||
tmp++;
|
||||
}
|
||||
}
|
||||
|
||||
extern int getpagesize (void);
|
||||
|
||||
/*
|
||||
* EXPORTED FUNCTIONS
|
||||
*/
|
||||
|
||||
/* this has to be a global variable to prevent the optimizers from
|
||||
* assuming that it can not be 0.
|
||||
*/
|
||||
static void *dynamic_addr = (void *) &_DYNAMIC;
|
||||
|
||||
int
|
||||
unexec (char *new_name, char *old_name,
|
||||
unsigned int emacs_edata, unsigned int dummy1, unsigned int dummy2)
|
||||
{
|
||||
/* ld.so data */
|
||||
struct _dynamic *ld = 0;
|
||||
struct section_dispatch_table *ld2 = 0;
|
||||
/* old and new state */
|
||||
int old_fd;
|
||||
int new_fd;
|
||||
caddr_t old_base_addr;
|
||||
caddr_t new_base_addr;
|
||||
struct exec old_hdr;
|
||||
struct exec new_hdr;
|
||||
struct stat old_buf;
|
||||
struct stat new_buf;
|
||||
/* some process specific "constants" */
|
||||
unsigned long n_pagsiz, new_edata;
|
||||
long page_size = getpagesize ();
|
||||
caddr_t plt_end;
|
||||
caddr_t current_break = (caddr_t) sbrk (0);
|
||||
|
||||
if (!page_size)
|
||||
unexec_error ("unexec() failed because we can't get the size of a page!",
|
||||
0);
|
||||
|
||||
/* see if this is a -Bdynamic image -- if so, find ld.so structures */
|
||||
if (dynamic_addr)
|
||||
{
|
||||
ld = (struct _dynamic *) dynamic_addr;
|
||||
ld2 = ld->d_un.d_sdt;
|
||||
if (ld->d_version < LD_VERSION_BSD)
|
||||
unexec_error ("%s linked with obsolete version of ld -- we quit!",
|
||||
0, old_name);
|
||||
}
|
||||
|
||||
/* open the old and new files, figuring out how big the old one is
|
||||
so that we can map it in */
|
||||
old_fd = unexec_open (old_name, O_RDONLY, 0);
|
||||
new_fd = unexec_open (new_name, O_RDWR | O_CREAT | O_TRUNC, 0666);
|
||||
|
||||
/* setup the header and the statbuf for old_fd */
|
||||
unexec_read (old_fd, 0, (char *) &old_hdr, sizeof (old_hdr));
|
||||
unexec_fstat (old_fd, &old_buf);
|
||||
|
||||
|
||||
/* set up some important constants */
|
||||
n_pagsiz = __LDPGSZ;
|
||||
if (dynamic_addr)
|
||||
plt_end = (caddr_t) MASK_UP (ld2->sdt_plt + ld2->sdt_plt_sz, sizeof (double));
|
||||
else
|
||||
plt_end = (caddr_t) N_DATADDR (old_hdr);
|
||||
|
||||
#if 0
|
||||
/* never write protect the variable "environ", defined in /lib/crt0.o, and
|
||||
set in process.c and callproc.c */
|
||||
mprotect_bottom_addr = ((unsigned long) &environ) + sizeof (char **);
|
||||
/* never protect ABOVE the end of data emacs_edata specified */
|
||||
mprotect_top_addr = MIN (emacs_edata, N_DATADDR (old_hdr) + old_hdr.a_data);
|
||||
#endif
|
||||
|
||||
/* Set up the image of the old file */
|
||||
old_base_addr = unexec_mmap (old_fd, old_buf.st_size, PROT_READ,
|
||||
MAP_FILE | MAP_PRIVATE);
|
||||
close (old_fd);
|
||||
|
||||
/* set up the new exec */
|
||||
new_hdr = old_hdr;
|
||||
new_edata = (unsigned long) MASK_UP (current_break, n_pagsiz);
|
||||
new_hdr.a_data = new_edata - ((unsigned long) N_DATADDR (old_hdr));
|
||||
new_hdr.a_bss = 0;
|
||||
|
||||
/* set up this variable, in case we want to reset "the break"
|
||||
when restarting */
|
||||
sbrk_of_0_at_unexec = ((unsigned long) MASK_UP (current_break, n_pagsiz));
|
||||
|
||||
/* Write out the first approximation to the new file. The sizes of
|
||||
each section will be correct, but there will be a number of
|
||||
corrections that will need to be made. */
|
||||
{
|
||||
long old_datoff = N_DATOFF (old_hdr);
|
||||
long old_dataddr = N_DATADDR (old_hdr);
|
||||
long new_treloff = N_RELOFF (new_hdr);
|
||||
long old_treloff = N_RELOFF (old_hdr);
|
||||
long ld_so_size = ((unsigned long) plt_end) - old_dataddr;
|
||||
long real_data_size = current_break - plt_end;
|
||||
long pad_size =
|
||||
MASK_UP (current_break, n_pagsiz) - ((unsigned long) current_break);
|
||||
|
||||
|
||||
/* First, write the text segment with new header -- copy everything until
|
||||
the start of the data segment from the old file, and then go back and
|
||||
write the new header. */
|
||||
unexec_write (new_fd, 0, old_base_addr, old_datoff + ld_so_size);
|
||||
unexec_write (new_fd, 0, (char *) &new_hdr, sizeof (new_hdr));
|
||||
|
||||
/* Copy the rest of the data segment from the running image. */
|
||||
unexec_write (new_fd, old_datoff + ld_so_size,
|
||||
plt_end, real_data_size);
|
||||
|
||||
/* pad out the data segment */
|
||||
unexec_pad (new_fd, pad_size);
|
||||
|
||||
/* Finally, copy the symbol table information from the old file. */
|
||||
unexec_write (new_fd, new_treloff,
|
||||
old_base_addr + old_treloff,
|
||||
old_buf.st_size - old_treloff);
|
||||
}
|
||||
|
||||
|
||||
/* Next, map in the output file so that we can jump around fixing it
|
||||
up. We retain the old file so that we can refer to it. */
|
||||
unexec_fstat (new_fd, &new_buf);
|
||||
new_base_addr = unexec_mmap (new_fd,
|
||||
MASK_UP (new_buf.st_size, page_size),
|
||||
PROT_READ | PROT_WRITE,
|
||||
MAP_FILE | MAP_SHARED);
|
||||
|
||||
|
||||
|
||||
/* We need to do 2 things. First, make sure that _edata and _end (and
|
||||
hence, curbrk) are set to the correct values. At the same time, for
|
||||
neatness and to help with debugging, mark all the types of all ld.so
|
||||
and nm BSS symbols in the new file to be DATA, and make sure that
|
||||
there are no COMMON symbols in the output file, as any references to
|
||||
these can lose really big. Second, reset all of the ld.so "relocation
|
||||
sites" in the new file to have the values that appear in the old file
|
||||
-- the failure to do this was the biggest loser in the old version of
|
||||
this code. */
|
||||
|
||||
/* STEP 1 */
|
||||
/* Reset the regular symbol table first. */
|
||||
reset_symtab ((struct nlist *) (new_base_addr + N_SYMOFF(new_hdr)),
|
||||
(struct nlist *) (new_base_addr + N_SYMOFF(new_hdr) +
|
||||
new_hdr.a_syms),
|
||||
(char *) (new_base_addr + N_STROFF(new_hdr)),
|
||||
new_edata, new_edata,
|
||||
!!dynamic_addr);
|
||||
|
||||
/* Now reset the ld.so symbol table. */
|
||||
if (dynamic_addr)
|
||||
{
|
||||
struct translation_struct ts;
|
||||
struct relocation_info *tmp, *end;
|
||||
caddr_t syms, strings;
|
||||
|
||||
/* set up the structure that we use to translate addresses in the
|
||||
old file into file offsets */
|
||||
ts.txtaddr = N_TXTADDR (old_hdr);
|
||||
ts.txtoff = N_TXTOFF (old_hdr);
|
||||
ts.dataddr = N_DATADDR (old_hdr);
|
||||
ts.datoff = N_DATOFF (old_hdr);
|
||||
ts.bssaddr = N_DATADDR (old_hdr) + old_hdr.a_data;
|
||||
ts.endaddr = ts.bssaddr + old_hdr.a_bss;
|
||||
|
||||
syms = new_base_addr + unexec_addr_to_offset(ld2->sdt_nzlist, &ts);
|
||||
strings = new_base_addr + unexec_addr_to_offset(ld2->sdt_strings, &ts);
|
||||
reset_ldso_symtab ((struct nzlist *) syms, (struct nzlist *) strings,
|
||||
(char *) strings,
|
||||
new_edata, new_edata,
|
||||
!!dynamic_addr);
|
||||
|
||||
/* STEP 2 */
|
||||
tmp = (struct relocation_info *)
|
||||
(old_base_addr + unexec_addr_to_offset(ld2->sdt_rel, &ts));
|
||||
end = (struct relocation_info *)
|
||||
(old_base_addr + unexec_addr_to_offset(ld2->sdt_hash, &ts));
|
||||
while (tmp < end)
|
||||
{
|
||||
copy_relocation_site (tmp, old_base_addr, new_base_addr, &ts);
|
||||
tmp++;
|
||||
}
|
||||
}
|
||||
|
||||
/* get rid of the mmap-ed file space and make the output file
|
||||
executable -- then quit */
|
||||
munmap (new_base_addr, MASK_UP (new_buf.st_size, page_size));
|
||||
munmap (old_base_addr, MASK_UP (old_buf.st_size, page_size));
|
||||
unexec_fchmod (new_fd, 0755);
|
||||
close (new_fd);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
int
|
||||
run_time_remap (char *dummy)
|
||||
{
|
||||
unsigned long current_sbrk = (unsigned long) sbrk (0);
|
||||
|
||||
if (sbrk_of_0_at_unexec > current_sbrk)
|
||||
{
|
||||
errno = 0;
|
||||
if (brk ((caddr_t) sbrk_of_0_at_unexec))
|
||||
fprintf (stderr, "failed to change brk addr to 0x%lx: %s\n",
|
||||
sbrk_of_0_at_unexec, SYS_ERR);
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
|
@ -1,15 +1,15 @@
|
|||
This is emacs lisp files, info pages, and so on (except executables)
|
||||
for mule-2.3, a multilingual editor based on emacs-19.28.
|
||||
for mule-2.3, a multilingual editor based on emacs-19.34.
|
||||
|
||||
You must install one of packages, mule-2.3, ja-mule-*-2.3 (
|
||||
ja-mule-canna-2.3, ja-mule-canna+sj3-2.3, etc.), zh-mule-wnn4-2.3 and
|
||||
ko-mule-wnn4-2.3, each of which contains only the executables for
|
||||
mule-2.3.
|
||||
|
||||
This package and the above package of the executables *will* clobber any
|
||||
existing emacs installation. In particular, the executables and man
|
||||
pages of etags/ctags are installed, and the info pages that come with
|
||||
the original emacs get installed too.
|
||||
This package and the above package of the executables *will* clobber
|
||||
any existing emacs installation. In particular, the executables and
|
||||
man pages of etags/ctags are installed, and the info pages that come
|
||||
with the original emacs get installed too.
|
||||
|
||||
Although this shouldn't cause any problems to run both mule and emacs,
|
||||
it may cause some confusion when one of them is pkg_delete'd. If
|
||||
|
@ -20,10 +20,5 @@ subdirectory of the ports package. Copy it into your /usr/local/info
|
|||
to read mule info pages, but also make sure you also add everything
|
||||
that may have been added to that file!
|
||||
|
||||
[Notice]
|
||||
Mr. Yoshio KATAYAMA <kate@pfu.co.jp> fixed many bugs for mule-2.3.
|
||||
Patches for those are in 'mule-2.3.patch.tar.gz' and are applied in
|
||||
this port.
|
||||
|
||||
- S. Taoka
|
||||
taoka@infonets.hiroshima-u.ac.jp
|
||||
|
|
File diff suppressed because it is too large
Load diff
Loading…
Add table
Reference in a new issue