GNU Emacs 18.56 - patches for Irix 3.2
Martin Liversage
operator at IRIS.KTH.DK
Thu Jan 24 00:31:53 AEST 1991
These are my installation notes for compiling GNU Emacs 18.56 under
Irix 3.2.
System: GNU emacs 18.56
Date: Wed Jan 23 14:14:39 MET 1991
Source: Anonymous ftp to prep.ai.mit.edu (pub/gnu/emacs-18.56.tar.Z)
Comment:
Unpack archive (zcat emacs-18.56.tar.Z | tar xvof -).
Apply patch (patch -p < patch1).
Install it (rm -rf /usr/local/emacs ; chmod +x build-install ;
build-install).
Clean up (make clean ; rm -rf oldXmenu gdb).
Make man page (awf -man etc/emacs.1 > /usr/catman/local/cat1/emacs.1).
Files:
/usr/local/bin/emacs
/usr/local/bin/ctags
/usr/local/bin/etags
/usr/local/emacs/*
/usr/catman/local/cat1/emacs.1
And here are the patches
----------------------------- file: patch1 -----------------------------
System: GNU Emacs 18.56
Patch #: 1
Description: Local installation patch
Date: Wed Jan 23 14:14:39 MET 1991
Index: etc/Makefile
*** etc/Makefile.orig Mon Jan 7 05:21:30 1991
--- etc/Makefile Wed Jan 23 13:12:47 1991
***************
*** 1,8 ****
! CFLAGS= -g
# For Xenix. Needed for movemail
# LOADLIBES= -lx
# For Mips. Needed for who knows what.
! # LOADLIBES = -lmld /usr/bsd43/usr/lib/libc.a
EXECUTABLES = test-distrib etags ctags wakeup make-docfile \
digest-doc sorted-doc movemail cvtmail fakemail yow env \
--- 1,8 ----
! CFLAGS= -O -Olimit 622
# For Xenix. Needed for movemail
# LOADLIBES= -lx
# For Mips. Needed for who knows what.
! LOADLIBES = -lmld -lc_s
EXECUTABLES = test-distrib etags ctags wakeup make-docfile \
digest-doc sorted-doc movemail cvtmail fakemail yow env \
Index: src/ymakefile
*** src/ymakefile.orig Tue Jan 8 19:23:01 1991
--- src/ymakefile Wed Jan 23 13:12:53 1991
***************
*** 44,50 ****
/* Some machines don't find the standard C libraries in the usual place. */
#ifndef LIB_STANDARD
! #define LIB_STANDARD -lc
#endif
/* Unless inhibited or changed, use -lg to link for debugging. */
--- 44,50 ----
/* Some machines don't find the standard C libraries in the usual place. */
#ifndef LIB_STANDARD
! #define LIB_STANDARD -lbsd -lc
#endif
/* Unless inhibited or changed, use -lg to link for debugging. */
***************
*** 78,84 ****
/* Some m- files define this to request special switches in cc. */
#ifndef C_SWITCH_MACHINE
! #define C_SWITCH_MACHINE
#endif
#ifndef C_SWITCH_SYSTEM
--- 78,84 ----
/* Some m- files define this to request special switches in cc. */
#ifndef C_SWITCH_MACHINE
! #define C_SWITCH_MACHINE -I/usr/include/bsd
#endif
#ifndef C_SWITCH_SYSTEM
***************
*** 144,150 ****
SHORT= shortnames
#endif /* SHORTNAMES */
! CFLAGS= C_DEBUG_SWITCH -Demacs $(MYCPPFLAG) C_SWITCH_MACHINE C_SWITCH_SYSTEM
/* DO NOT use -R. There is a special hack described in lastfile.c
which is used instead. Some initialized data areas are modified
at initial startup, then labeled as part of the text area when
--- 144,150 ----
SHORT= shortnames
#endif /* SHORTNAMES */
! CFLAGS= C_OPTIMIZE_SWITCH -Demacs $(MYCPPFLAG) C_SWITCH_MACHINE C_SWITCH_SYSTEM
/* DO NOT use -R. There is a special hack described in lastfile.c
which is used instead. Some initialized data areas are modified
at initial startup, then labeled as part of the text area when
Index: src/fns.c
*** src/fns.c.orig Tue Jan 8 18:33:26 1991
--- src/fns.c Wed Jan 23 13:13:13 1991
***************
*** 1211,1219 ****
--- 1211,1223 ----
#ifdef IRIS_4D
{
+ #ifndef IRIX_32
#include <sys/types.h>
#include <sys/sysmp.h>
nl[0].n_value = sysmp(MP_KERNADDR, MPKA_AVENRUN);
+ #else /* IRIX_32 */
+ nlist(KERNEL_FILE, nl);
+ #endif /* IRIX_32 */
nl[0].n_value &= 0x7fffffff;
}
#else
Index: src/config.h
*** /dev/null Wed Jan 23 11:17:40 1991
--- src/config.h Wed Jan 23 13:12:59 1991
***************
*** 0 ****
--- 1,115 ----
+ /* GNU Emacs site configuration template file.
+ Copyright (C) 1988 Free Software Foundation, Inc.
+
+ This file is part of GNU Emacs.
+
+ GNU Emacs 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 1, or (at your option)
+ any later version.
+
+ GNU Emacs 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 GNU Emacs; see the file COPYING. If not, write to
+ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
+
+
+
+ /* Include here a s- file that describes the system type you are using.
+ See the file ../etc/MACHINES for a list of systems and
+ the names of the s- files to use for them.
+ See s-template.h for documentation on writing s- files. */
+ #include "s-irix3-3.h"
+
+ /* Include here a m- file that describes the machine and system you use.
+ See the file ../etc/MACHINES for a list of machines and
+ the names of the m- files to use for them.
+ See m-template.h for info on what m- files should define.
+ */
+ #include "m-iris4d.h"
+
+ /* Load in the conversion definitions if this system
+ needs them and the source file being compiled has not
+ said to inhibit this. There should be no need for you
+ to alter these lines. */
+
+ #ifdef SHORTNAMES
+ #ifndef NO_SHORTNAMES
+ #include "../shortnames/remap.h"
+ #endif /* not NO_SHORTNAMES */
+ #endif /* SHORTNAMES */
+
+ /* Define HAVE_X_WINDOWS if you want to use the X window system. */
+
+ /* #define HAVE_X_WINDOWS */
+
+ /* Define X11 if you want to use version 11 of X windows.
+ Otherwise, Emacs expects to use version 10. */
+
+ /* #define X11 */
+
+ /* Define HAVE_X_MENU if you want to use the X window menu system.
+ This appears to work on some machines that support X
+ and not on others. */
+
+ /* #define HAVE_X_MENU */
+
+ /* Define `subprocesses' should be defined if you want to
+ have code for asynchronous subprocesses
+ (as used in M-x compile and M-x shell).
+ These do not work for some USG systems yet;
+ for the ones where they work, the s-*.h file defines this flag. */
+
+ #ifndef VMS
+ #ifndef USG
+ #define subprocesses
+ #endif
+ #endif
+
+ /* Define USER_FULL_NAME to return a string
+ that is the user's full name.
+ It can assume that the variable `pw'
+ points to the password file entry for this user.
+
+ At some sites, the pw_gecos field contains
+ the user's full name. If neither this nor any other
+ field contains the right thing, use pw_name,
+ giving the user's login name, since that is better than nothing. */
+
+ #define USER_FULL_NAME pw->pw_gecos
+
+ /* Define AMPERSAND_FULL_NAME if you use the convention
+ that & in the full name stands for the login id. */
+
+ /* #define AMPERSAND_FULL_NAME */
+
+ /* # bytes of pure Lisp code to leave space for.
+ Note that s-vms.h and m-sun2.h may override this default. */
+
+ #ifndef PURESIZE
+ #ifdef HAVE_X_WINDOWS
+ #define PURESIZE 122000
+ #else
+ #define PURESIZE 119000
+ #endif
+ #endif
+
+ /* Define HIGHPRI as a negative number
+ if you want Emacs to run at a higher than normal priority.
+ For this to take effect, you must install Emacs with setuid root.
+ Emacs will change back to the users's own uid after setting
+ its priority. */
+
+ /* #define HIGHPRI */
+
+ /* Additions by Martin Liversage - 91.01.23 */
+
+ #define IRIX_32
+ #undef NOMULTIPLEJOBS
+ #define SYSV_SYSTEM_DIR
+ #define sigsetmask(mask)
+ #define sigblock(x) x
Index: lisp/term/iris.el
*** /dev/null Wed Jan 23 11:17:40 1991
--- lisp/term/iris.el Wed Jan 23 13:14:10 1991
***************
*** 0 ****
--- 1,54 ----
+ ;; Martin Liversage - 91.01.10 12:10:32
+
+ (require 'keypad)
+
+ (defvar iris-function-map nil)
+
+ (if (not iris-function-map)
+ (progn
+ (setq iris-function-map (lookup-key global-map "\e["))
+ (if (not (keymapp iris-function-map))
+ (setq iris-function-map (make-sparse-keymap)))
+ (setup-terminal-keymap iris-function-map
+ '(("A" . ?u) ; Up
+ ("B" . ?d) ; Down
+ ("C" . ?r) ; Right
+ ("D" . ?l) ; Left
+ ("H" . ?h) ; Home
+ ("150q" . ?P) ; Page Up
+ ("154q" . ?N) ; Page Down
+ ("001q" . ?\C-a) ; F1
+ ("002q" . ?\C-b)
+ ("003q" . ?\C-c)
+ ("004q" . ?\C-d)
+ ("005q" . ?\C-e)
+ ("006q" . ?\C-f)
+ ("007q" . ?\C-g)
+ ("008q" . ?\C-h)
+ ("009q" . ?\C-i)
+ ("010q" . ?\C-j)
+ ("011q" . ?\C-k)
+ ("012q" . ?\C-l)
+ ("013q" . ?\C-m) ; Shift-F1
+ ("014q" . ?\C-n)
+ ("015q" . ?\C-o)
+ ("016q" . ?\C-p)
+ ("017q" . ?\C-q)
+ ("018q" . ?\C-r)
+ ("019q" . ?\C-s)
+ ("020q" . ?\C-t)
+ ("021q" . ?\C-u)
+ ("022q" . ?\C-v)
+ ("023q" . ?\C-w)
+ ("024q" . ?\C-x)
+ ("139q" . ?I) ; Insert
+ ("150q" . ?P) ; Page Up
+ ("154q" . ?N))))) ; Page Down
+
+ (defun enable-function-keys ()
+ "Enable the use of the iris arrow and function keys.
+ Because of the nature of the iris, this unavoidably breaks
+ the standard Emacs command ESC [; therefore, it is not done by default,
+ but only if you give this command."
+ (global-set-key "\e[" iris-function-map))
+
-------------------------- end of file: patch1 --------------------------
Hope this is useful to some of you 8)
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
\ \
\ Martin Liversage 8616 m /\ \
\ Royal Dental College Copenhagen / \_ K2 - Mountain of Fate \
\ Department of Pediatric Dentistry / \ \ and Dreams \
\ Norre Alle 20 / | | \ \
\ DK-2200 Kobenhavn N /\ | \ \ \
\ +45 31 37 17 00 - 4276 / \ ^ | \ \
\ \
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
More information about the Comp.sys.sgi
mailing list