# HG changeset patch # User Jim Blandy # Date 737787366 0 # Node ID c10bb302a31556c65192412ea0f97f397593d784 # Parent 70a7f2829225b4b6ff2f1d3e11c2b39ba3ceb936 Changes for Silicon Graphics Iris 5D. * unexelfsgi.c: New file; like unexelf.c, but tolerates program segments above BSS. * m/iris5d.h: New file. * s/irix5-0.h: New file. * process.c [__sgi] (allocate_pty): Give up immediately if pty is inaccessible. diff -r 70a7f2829225 -r c10bb302a315 src/=unexsgi.c --- a/src/=unexsgi.c Wed May 19 04:52:06 1993 +0000 +++ b/src/=unexsgi.c Wed May 19 04:56:06 1993 +0000 @@ -630,8 +630,11 @@ if ((OLD_SECTION_H (old_bss_index)).sh_addralign > alignment) alignment = OLD_SECTION_H (old_bss_index).sh_addralign; + /* Supposedly this condition is okay for the SGI. */ +#if 0 if (NEW_PROGRAM_H(n).p_vaddr + NEW_PROGRAM_H(n).p_filesz > old_bss_addr) fatal ("Program segment above .bss in %s\n", old_name, 0); +#endif if (NEW_PROGRAM_H(n).p_type == PT_LOAD && (round_up ((NEW_PROGRAM_H (n)).p_vaddr @@ -646,7 +649,7 @@ NEW_PROGRAM_H(n).p_filesz += new_data2_size; NEW_PROGRAM_H(n).p_memsz = NEW_PROGRAM_H(n).p_filesz; -#if 0 /* Maybe allow section after data2 - does this ever happen? */ +#if 1 /* Maybe allow section after data2 - does this ever happen? */ for (n = new_file_h->e_phnum - 1; n >= 0; n--) { if (NEW_PROGRAM_H(n).p_vaddr diff -r 70a7f2829225 -r c10bb302a315 src/m/iris5d.h --- a/src/m/iris5d.h Wed May 19 04:52:06 1993 +0000 +++ b/src/m/iris5d.h Wed May 19 04:56:06 1993 +0000 @@ -120,7 +120,10 @@ /* This machine requires completely different unexec code which lives in a separate file. Specify the file name. */ -#define UNEXEC unexmips.o +#ifdef UNEXEC +#undef UNEXEC +#endif +#define UNEXEC unexelfsgi.o #define TEXT_START 0x400000 diff -r 70a7f2829225 -r c10bb302a315 src/s/irix5-0.h --- a/src/s/irix5-0.h Wed May 19 04:52:06 1993 +0000 +++ b/src/s/irix5-0.h Wed May 19 04:56:06 1993 +0000 @@ -1,6 +1,17 @@ -#include "irix3-3.h" +#include "s-usg5-4.h" +#ifdef LIBS_SYSTEM +#undef LIBS_SYSTEM +#endif -#define USG5_3 +#ifdef SYSTEM_TYPE +#undef SYSTEM_TYPE +#endif +#define SYSTEM_TYPE "silicon-graphics-unix" + +#ifdef SETUP_SLAVE_PTY +#undef SETUP_SLAVE_PTY +#endif + /* Define HAVE_ALLOCA to say that the system provides a properly working alloca function and it should be used. */ @@ -18,11 +29,17 @@ we'll just define WNOHANG right here. (An implicit decl is good enough for wait3.) */ -#define WNOHANG 0x1 +/* #define WNOHANG 0x1 */ /* No need to use sprintf to get the tty name--we get that from _getpty. */ +#ifdef PTY_TTY_NAME_SPRINTF +#undef PTY_TTY_NAME_SPRINTF +#endif #define PTY_TTY_NAME_SPRINTF /* No need to get the pty name at all. */ +#ifdef PTY_NAME_SPRINTF +#undef PTY_NAME_SPRINTF +#endif #define PTY_NAME_SPRINTF #ifdef emacs char *_getpty();