Path: utzoo!utgpu!jarvis.csri.toronto.edu!cs.utexas.edu!samsung!zaphod.mps.ohio-state.edu!tut.cis.ohio-state.edu!INTELLICORP.COM!TRANLE From: TRANLE@INTELLICORP.COM (Minh Tran-Le) Newsgroups: gnu.emacs.bug Subject: fixes for emacs under aix386 (ibm/ps2) Message-ID: <8912022009.AA19291@life.ai.mit.edu> Date: 2 Dec 89 20:10:18 GMT Sender: daemon@tut.cis.ohio-state.edu Distribution: gnu Organization: GNUs Not Usenet Lines: 138 Here is some fixes to allow emacs 18.55 on aix386 to use the pty drivers for emacs subprocesses. The ptys implementation on aix386 are similar to the bsd4.3 ptys. So here is some changes for the sysdep.c, process.c, m-ibmps2-aix.h, Makefile . The change to src/Makefile is just to allow the use of the gnu cpp if you happen to use gcc to make the src/xmakefile. Minh Tran-Le. ---------------------------------------------------------------------------- $diff -rc2 src/sysdep.c-orig src/sysdep.c *** src/sysdep.c-orig Wed Nov 22 20:36:30 1989 --- src/sysdep.c Fri Dec 1 11:15:18 1989 *************** *** 146,151 #include #ifdef TIOCGWINSZ ! #ifndef IRIS_4D ! #ifndef mips /* Some USG systems with TIOCGWINSZ need this file; some don't have it. We don't know how to distinguish them. --- 146,150 ----- #include #ifdef TIOCGWINSZ ! #if !(defined(IRIS_4D) || defined(mips) || defined(aix386)) /* Some USG systems with TIOCGWINSZ need this file; some don't have it. We don't know how to distinguish them. *************** *** 152,156 If this #include gets an error, just delete it. */ #include - #endif #endif #endif --- 151,154 ----- If this #include gets an error, just delete it. */ #include #endif #endif $diff src/process.c-orig src/process.c *** src/process.c-orig Wed Nov 22 20:36:27 1989 --- src/process.c Fri Dec 1 10:33:32 1989 *************** *** 114,118 #ifndef WAITTYPE ! #if !defined (BSD) && !defined (UNIPLUS) && !defined (STRIDE) && !(defined (HPUX) && !defined (NOMULTIPLEJOBS)) #define WAITTYPE int #define WIFSTOPPED(w) ((w&0377) == 0177) --- 114,118 ----- #ifndef WAITTYPE ! #if !defined (BSD) && !defined (UNIPLUS) && !defined (STRIDE) && !(defined (HPUX) && !defined (NOMULTIPLEJOBS)) && !defined(aix386) #define WAITTYPE int #define WIFSTOPPED(w) ((w&0377) == 0177) $diff src/m-ibmps2-aix.h-orig src/m-ibmps2-aix.h *** src/m-ibmps2-aix.h-orig Wed Nov 22 20:37:08 1989 --- src/m-ibmps2-aix.h Fri Dec 1 12:06:30 1989 *************** *** 140,143 #define BROKEN_FIONREAD /* Define C_ALLOCA if this machine does not support a true alloca and the one written in C should be used instead. --- 140,167 ----- #define BROKEN_FIONREAD + /* AIX has sigsetmask() */ + #undef sigsetmask + + /* AIX386 has BSD4.3 PTYs */ + + #define HAVE_PTYS + + /* AIX has IPC. It also has sockets, and either can be used for client/server. + I would suggest the client/server code be changed to use HAVE_SOCKETS rather + than BSD as the conditional if sockets provide any advantages. */ + + #define HAVE_SYSVIPC + + /* AIX has sockets */ + + #define HAVE_SOCKETS + /* #define SKTPAIR */ /* SKTPAIR works, but what is advantage over pipes? */ + + /* Specify the font for X to use. */ + + #define X_DEFAULT_FONT "8x13" + + /* Here override various assumptions in ymakefile */ + /* Define C_ALLOCA if this machine does not support a true alloca and the one written in C should be used instead. *************** *** 150,154 #define HAVE_ALLOCA #define alloca(n) __builtin_alloca(n) ! #define LIBS_MACHINE /usr/local/lib/gcc-gnulib -lbsd -lrts #else #define C_ALLOCA --- 174,179 ----- #define HAVE_ALLOCA #define alloca(n) __builtin_alloca(n) ! #define LIB_STANDARD /usr/local/lib/gcc-gnulib -lbsd -lrts -lc ! #define C_DEBUG_SWITCH -O -fwritable-strings -fcombine-regs -fstrength-reduce -finline-functions #else #define C_ALLOCA *************** *** 159,160 #define OBJECTS_MACHINE hftctl.o #define LD_SWITCH_MACHINE -T0x00400000 -K -e start --- 184,186 ----- #define OBJECTS_MACHINE hftctl.o #define LD_SWITCH_MACHINE -T0x00400000 -K -e start + $diff -rc2 src/Makefile-orig src/Makefile *** src/Makefile-orig Wed Nov 22 20:37:08 1989 --- src/Makefile Wed Nov 22 20:37:05 1989 *************** *** 1,3 ! CPP = cc -E MAKE = make # BSD doesn't have it as a default. #Note: an alternative is CPP = /lib/cpp --- 1,3 ----- ! CPP = $(CC) -E MAKE = make # BSD doesn't have it as a default. #Note: an alternative is CPP = /lib/cpp ------- Brought to you by Super Global Mega Corp .com