*** ORIG/process.c Tue Feb 25 17:07:16 1992 --- process.c Tue May 19 00:03:54 1992 *************** *** 2174,2179 **** --- 2174,2197 ---- return Qnil; } #endif /* IRIS and HAVE_SETSID */ + #if defined (USG) && defined (HAVE_TCATTR) + struct termios t; + switch (signo) + { + case SIGINT: + ioctl (XFASTINT (p->infd), TCGETS, &t); + send_process (proc, &t.c_cc[VINTR], 1); + return Qnil; + case SIGQUIT: + ioctl (XFASTINT (p->infd), TCGETS, &t); + send_process (proc, &t.c_cc[VQUIT], 1); + return Qnil; + case SIGTSTP: + ioctl (XFASTINT (p->infd), TCGETS, &t); + send_process (proc, &t.c_cc[VSUSP], 1); + return Qnil; + } + #endif /* USG and HAVE_TCATTR */ /* Get the pgrp using the tty itself, if we have that. Otherwise, use the pty to get the pgrp. */ *** ORIG/sysdep.c Tue Feb 25 17:07:30 1992 --- sysdep.c Sun May 3 21:46:06 1992 *************** *** 1116,1121 **** --- 1116,1122 ---- #ifdef VMS /* VMS sometimes has this symbol but lacks setvbuf. */ #undef _IOFBF #endif + #ifndef LINUX #ifdef _IOFBF /* This symbol is defined on recent USG systems. Someone says without this call USG won't really buffer the file *************** *** 1124,1129 **** --- 1125,1131 ---- #else setbuf (stdout, _sobuf); #endif + #endif /* LINUX */ set_terminal_modes (); if (term_initted && no_redraw_on_reenter) { *** ORIG/unexec.c Tue Feb 25 17:07:00 1992 --- unexec.c Fri May 1 00:50:16 1992 *************** *** 236,242 **** #else /* not HPUX */ ! #if defined (USG) && !defined (IBMRTAIX) && !defined (IRIS) static struct bhdr hdr, ohdr; #define a_magic fmagic #define a_text tsize --- 236,242 ---- #else /* not HPUX */ ! #if defined (USG) && !defined (IBMRTAIX) && !defined (IRIS) && !defined(LINUX) static struct bhdr hdr, ohdr; #define a_magic fmagic #define a_text tsize *** /dev/null Fri Apr 17 21:27:15 1992 --- config.h Sun May 17 16:02:18 1992 *************** *** 0 **** --- 1,217 ---- + /* 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. */ + + /* this config.h tuned for linux 0.96 and gcc 2.11a + by Rick Sladkey , your mileage may vary */ + + /* 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-usg5-2.h" /* as close as anything */ + + /* overrides for linux versus s-usg5-2.h */ + + #undef TERMINFO /* not really SYSV */ + #undef COFF /* not really SYSV */ + #undef NOMULTIPLEJOBS /* not even used ... */ + #undef NONSYSTEM_DIR_LIBRARY /* use our dirent library for VFS */ + #undef static /* static is OK for with gcc */ + + /* just a few small changes for linux ... */ + + #define LINUX /* for differentiation */ + + /* let's see, what have we got here */ + + #define HAVE_TCATTR /* fixes ^z problems */ + #define HAVE_SETSID /* fixes shell problems */ + #define HAVE_DUP2 /* is builtin */ + #define HAVE_TIMEVAL /* is builtin */ + #define HAVE_GETTIMEOFDAY /* is builtin */ + #define HAVE_RENAME /* is builtin */ + #define HAVE_RANDOM /* is builtin */ + #define HAVE_SELECT /* seems to work */ + #define HAVE_PTYS /* mostly works */ + #define HAVE_CLOSEDIR /* we have a closedir */ + #define HAVE_GETPAGESIZE /* we now have getpagesize (0.96) */ + #define HAVE_VFORK /* we now have vfork (0.96) */ + + #define BSTRING /* we now have bcopy, etc. (0.96) */ + #define USE_UTIME /* don't have utimes */ + #define NO_SIOCTL_H /* don't have sioctl.h */ + #define SYSV_SYSTEM_DIR /* use dirent.h */ + #define USG_SYS_TIME /* use sys/time.h, not time.h */ + /* #define NBPC 4096 /* see getpagesize.h */ + + #define INTERRUPTABLE_CLOSE /* no harm if not true */ + #define close sys_close + + #define C_DEBUG_SWITCH -g -Dconst= + #define C_OPTIMIZE_SWITCH -O2 -g -Dconst= /* gcc groks -Ox */ + #define OLDXMENU_OPTIONS CFLAGS=-O2 EXTRA=insque.o /* doesn't work anyway */ + + #if 0 /* choose for yourself */ + #define SYSTEM_MALLOC /* produces smaller binary */ + #else + #define ULIMIT_BREAK_VALUE (16*1024*1024) /* ulimit not implemented */ + #endif + + /* misc. kludges for linux */ + + #define const /* avoids type mismatch errors */ + + #define MAXNAMLEN NAME_MAX /* missing SYSV-ism */ + + #define SIGBUS SIGSEGV /* rename to harmless work-alike */ + #define SIGSYS SIGSEGV /* rename to harmless work-alike */ + + #define _STDDEF_H /* defeat NULL problems */ + + #ifdef _ANSIDECL_H /* defeat DEFUN problems, arghh */ + #undef DEFUN + #else + #define _ANSIDECL_H + #endif + + #define VSWTCH VSWTC /* mis-spelling in termios.h? */ + #define CDEL '\0' /* missing termio-ism */ + + /* we have non-standard standard I/O (iostream) ... */ + + #define PENDING_OUTPUT_COUNT(FILE) ((FILE)->_pptr - (FILE)->_pbase) + + /* defines for linux in preparation for m-intel386.h */ + + #define DONT_DEFINE_SIGNAL /* live with the warnings */ + + /* 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-intel386.h" + + /* overrides for linux versus m-intel386.h */ + + /* #undef NO_REMAP /* would require hacking crt0.c */ + + #define LINK_STATICALLY /* can't get shared libs to work with 0.96 */ + + #ifdef NO_REMAP + #ifndef emacs /* defeat some ymakefile problems */ + #undef i386 + #undef linux + #undef static + #endif + #define START_FILES pre-crt0.o /usr/lib/gcc-lib/i386-linux/2.1/crt0.o + #ifdef LINK_STATICALLY + #define LIBS_SYSTEM -L/usr/lib/static -lc + #else + #define LIBS_SYSTEM -L/usr/lib/shared -lc + #endif + #else + #undef CRT0_DUMMIES + #endif + + /* also note other necessary changes in the source: + 1) setvbuf/setbuf is (still) broken and must be commented out of sysdep.c + 2) process.c has a hack to get shell-mode job control working + (problem is related to process groups) + 3) unexec.c needs treatment like IRIS for a.out header + */ + + /* and now we return you to your standard config.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 /* now available with 0.96 */ + + /* Define X11 if you want to use version 11 of X windows. + Otherwise, Emacs expects to use version 10. */ + + #ifdef HAVE_X_WINDOWS + #define X11 + #endif + + /* 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 120000 + #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 */ +