gnuemacs, plp and cops for sgi irix 3.3.1
Scott Henry
scotth at corp.sgi.com
Tue Nov 27 02:04:17 AEST 1990
I think it's time to re-post the patches to Gnu Emacs 18.55 that allow you
to build and run it on Irix 3.3 and later:
Between 3.2.* and 3.3, the loader no longer ignored errors in the a.out
header that GNU Emacs took advantage of. I am told that that was un-done
in 3.3.1. It mostly meant that a _stripped_ 3.2 binary would fail to load
under 3.3, an unstripped one would appear to work fine. In addition, a
change was made in libc.a for POSIX compliance: getwd() was defined, but
in terms of getcwd() (or something like that). Emacs assumes by default
that a system doesn't have getcwd(), and defines one interms of getwd().
Hence, an inifinite recursion loop is generated, and Emacs core-dumps when
it hits process limits while building the final executable.
2 solutions:
1) Get 18.56 (should be available any day now, I understand) -- I tested
it to ensure that it compiles out-of-the-box under 3.3.1.
2) Add the following lines to .../src/config.h:
/*
* Irix 3.3 defines this, and causes an infinite loop when trying to dump.
*/
#define HAVE_GETWD
and (if you are running 3.3 unstead of 3.3.1), apply the following patch
to .../src/unexmips.c (a 1-line change):
*** unexmips.c.orig Thu Jan 12 16:14:05 1989
--- unexmips.c Mon Jul 30 22:10:10 1990
***************
*** 255,261 ****
rdata_section->s_size = data_start - DATA_START;
data_section->s_vaddr = data_start;
data_section->s_paddr = data_start;
! data_section->s_size = brk - DATA_START;
data_section->s_scnptr = rdata_section->s_scnptr + rdata_section->s_size;
vaddr = data_section->s_vaddr + data_section->s_size;
scnptr = data_section->s_scnptr + data_section->s_size;
--- 255,261 ----
rdata_section->s_size = data_start - DATA_START;
data_section->s_vaddr = data_start;
data_section->s_paddr = data_start;
! data_section->s_size = brk - data_start;
data_section->s_scnptr = rdata_section->s_scnptr + rdata_section->s_size;
vaddr = data_section->s_vaddr + data_section->s_size;
scnptr = data_section->s_scnptr + data_section->s_size;
***************
--
--
Scott Henry <scotth at sgi.com> / Traveller on Dragon Wings
Information Services, / Help! My disclaimer is missing!
Silicon Graphics, Inc / Politicians no baka!
More information about the Comp.sys.sgi
mailing list