|
|
1.1 ! root 1: This is a list of the status of GNU Emacs on various machines and systems. ! 2: Last updated 18 Oct 1992. ! 3: ! 4: Systems: ! 5: For each type of system, the name of the appropriate s- header file ! 6: is given. ! 7: ! 8: Berkeley 4.1 (s-bsd4-1.h) ! 9: ! 10: Works on vaxes. ! 11: ! 12: Berkeley 4.2 (s-bsd4-2.h) ! 13: ! 14: Works on several machines. ! 15: ! 16: Berkeley 4.3 (s-bsd4-3.h) ! 17: ! 18: Works, on Vaxes at least. ! 19: ! 20: Microport ! 21: ! 22: See under "Intel 386". ! 23: ! 24: Solaris (s-sol2.h) ! 25: ! 26: Changes merged, and may work. ! 27: ! 28: System V rel 0 (s-usg5-0.h) ! 29: ! 30: Works, on Vaxes and 3bxxx's. ! 31: There are some problems in 18.37 due to shortnames/cccp problems: ! 32: use the emacs 17 cpp if you have it. ! 33: ! 34: System V rel 2 (s-usg5-2.h) ! 35: ! 36: Works on various machines. ! 37: On some (maybe all) machines the library -lPW exists and contains ! 38: a version of `alloca'. On these machines, to use it, put ! 39: #define HAVE_ALLOCA ! 40: #define LIB_STANDARD -lPW -lc ! 41: in the m-...h file for the machine. ! 42: ! 43: If you find that the character Meta-DEL makes Emacs crash, ! 44: find where function init_sys_modes in sysdep.c sets sg.c_cc[VQUIT] ! 45: and make it store 7 there. I have as yet no evidence of whether ! 46: this problem, known in HP-UX, exists in other system V versions. ! 47: ! 48: If you are compiling to work with X11 release 4, you may need ! 49: to define HAVE_RANDOM in config.h. ! 50: ! 51: System V rel 2.2 (s-usg5-2-2.h) ! 52: ! 53: In 5.2.2 AT&T undid, incompatibly, their previous incompatible ! 54: change to the way the nlist library is called. A different s- file ! 55: is used to enable the other interface. ! 56: ! 57: They call themselves the right choice--can't they choose? ! 58: ! 59: Emacs version 18 unexec is currently not working properly ! 60: on 5.2.2. Nobody knows why yet. A workaround is to define ! 61: NO_REMAP. It is not yet known whether this applies to all ! 62: machines running 5.2.2. ! 63: ! 64: If you are compiling to work with X11 release 4, you may need ! 65: to define HAVE_RANDOM in config.h. ! 66: ! 67: System V rel 3 (s-usg5-3.h) ! 68: ! 69: Some versions of this system support ptys and BSD-style sockets. ! 70: On such systems, you should define HAVE_PTYS and HAVE_SOCKETS in config.h. ! 71: ! 72: If you are compiling to work with X11 release 4, you may need ! 73: to define HAVE_RANDOM in config.h. ! 74: ! 75: If you want to link Emacs with shared libraries, define ! 76: USG_SHARED_LIBRARIES. ! 77: ! 78: System V rel 4 (s-usg5-4.h) ! 79: ! 80: Supported, including shared libraries for ELF. pty's work now. ! 81: ! 82: The standard C preprocessor generates xmakefile incorrectly. However, ! 83: /lib/cpp will work, so use `make CPP=/lib/cpp' in the `src' subdirectory. ! 84: ! 85: Versions 3 and earlier of V.4, on the Intel 386 and 860, had ! 86: problems in the X11 libraries. These prevent Emacs from working ! 87: with X. You can use Emacs with X provided your copy of X is based ! 88: on X11 release 4 or newer. Unfortunately, the only way you can tell ! 89: for certain whether your X11 library is new enough is to try ! 90: compiling Emacs to use X. If xemacs runs, your X11 library is new ! 91: enough. ! 92: ! 93: In this context, GSV4 and GSV4i are alternate names for X11R4. ! 94: OL2.* is X11R3 based. OL3 is in between X11R3 and X11R4, and may or ! 95: may not work, depending on who made the Unix system. If the library ! 96: libXol is part of the X distribution, then you have X11R3 and Emacs ! 97: won't work with X. ! 98: ! 99: Most versions of V.4 support sockets. If `/usr/lib/libsocket.so' ! 100: exists, your system supports them. If yours does not, you must add ! 101: #undef HAVE_SOCKETS in config.h, aftern the inclusion of s-usg5-4.h. ! 102: (Any system that supports Internet should implement sockets.) ! 103: ! 104: Ultrix (s-bsd4-3.h) ! 105: ! 106: Recent versions of Ultrix appear to support the features of Berkeley 4.3. ! 107: Ultrix was at the BSD 4.2 level for a long time after BSD 4.3 came out. ! 108: ! 109: Ultrix 3.0 has incompatibilities in its X library if you have the ! 110: Ultrix version of X (UWS version 2.0). To solve them, you need to ! 111: prevent XvmsAlloc.o in Xlib from being used. Israel Pinkas says: ! 112: ! 113: I added the following lines to config.h after the X defines: ! 114: ! 115: #if defined(ultrix) && defined(X11) ! 116: #define OBJECTS_SYSTEM calloc.o ! 117: #endif ! 118: ! 119: Then I ran the following: ! 120: ! 121: ar x /usr/lib/libc.a calloc.o ! 122: ! 123: The problem is said to be gone in UWS version 2.1. ! 124: ! 125: Ultrix 4.1 has moved the file X11/X10.h into mit/X11/X10.h. ! 126: ! 127: Uniplus 5.2 (s-unipl5-2.h) ! 128: ! 129: Works, on Dual machines at least. ! 130: ! 131: VMS (s-vms4-0.h, s-vms4-2.h, s-vms4-4.h, s-vms5-5.h) ! 132: ! 133: Works except for certain features (directory listing, dired, ! 134: sending and receiving mail) that use synchronous subprocesses. ! 135: (These will work in Emacs 19.) ! 136: s-vms5-5.h may be right for some earlier versions; please let us know ! 137: what happens when you try it in VMS versions 5.0 thru 5.4. ! 138: ! 139: Note that Emacs for VMS is usually distributed in a special ! 140: VMS distribution. See the file ../VMSINSTALL for info on moving ! 141: Unix distributions to VMS, and other VMS-related topics. ! 142: ! 143: Xenix ! 144: ! 145: Should work in 18.50, but you will need to edit the files ! 146: etc/Makefile and src/ymakefile ! 147: (see the comments that mention "Xenix" for what to change.) ! 148: Compiling Emacs with -O is said not to work. ! 149: ! 150: If you want Emacs to work with Smail (installed as /usr/bin/smail) ! 151: then add the line #define SMAIL to config.h. ! 152: ! 153: The file etc/XENIX suggests some useful things to do to Xenix ! 154: to make the Emacs meta key work. ! 155: ! 156: Machines: ! 157: For each type of machine, the names of the m- and s- header files ! 158: are given. ! 159: ! 160: Alliant FX/80 (m-alliant4.h or m-alliant.h or m-alliant1.h; ! 161: s-bsd4-2.h or s-bsd4-3.h) ! 162: ! 163: There are reports of bugs in the Alliant compiler ! 164: that prevent compiling Emacs 18.57. ! 165: No word on how to get around them. Perhaps using GCC will work. ! 166: A work-around is installed in src/dispnew.c in 18.58 for a compiler bug. ! 167: ! 168: 18.52 worked on system version 4. Previous Emacs versions were ! 169: known to work on previous system versions. ! 170: ! 171: Use m-alliant1.h on version 1 of their operating system ! 172: and use m-alliant.h on version 2 or 3. ! 173: Use m-alliant4.h on version 4 and above. ! 174: ! 175: Use s-bsd4-3.h with system version 5 and above. ! 176: ! 177: Alliant FX/2800 (m-all2800.h; s-bsd4-3.h) ! 178: ! 179: Known to work with 18.58 and OS version 2.2, compiler version 1.3. ! 180: ! 181: Altos 3068 (m-altos.h; s-usg5-2.h) ! 182: ! 183: 18.52 is said to work, provided you don't compile unexec.c with -O. ! 184: ! 185: Amdahl UTS (m-amdahl.h; s-usg5-3.h) ! 186: ! 187: Support for a newer system version, and X Windows, merged in 18.58. ! 188: (Some people report that s-usg5-2.h worked better than s-usg5-3.h ! 189: for 18.57.) ! 190: ! 191: The 5.2u370 compiler is so brain damaged that it is not ! 192: even worth trying to use it. Success was obtained with the ! 193: uts native C compiler on uts version 5.2.5. ! 194: ! 195: Apollo running Domain (m-apollo.h; s-bsd4-2.h) ! 196: ! 197: 18.52 works, to some extent. ! 198: Code for dumping Emacs has been written, but we cannot ! 199: distribute it yet. ! 200: There are reports of bugs in cc -O on this system. ! 201: ! 202: In etc/Makefile, don't expect emacsclient and server to ! 203: compile. You might want to remove them from your makefile. ! 204: ! 205: Supposedly something in dired.c runs into a compiler bug. ! 206: Paraphrasing the statement should avoid the problem. ! 207: I havenot yet received word as to the exact statement this is. ! 208: ! 209: AT&T 3b2, 3b5, 3b15, 3b20 (m-att3b.h; s-usg5-2-2.h) ! 210: ! 211: Emacs will probably not work with certain kernel constants too small. ! 212: ! 213: In param.h CDLIMIT should be at least (1L << 12) in order to allow ! 214: processes to write up to 2 Mbyte files. If it's too small, ! 215: you can perhaps fix it using the file `ulimit.hack' in this directory. ! 216: ! 217: Note that for V.3.1 and later releases, this parameter is configurable ! 218: by normal means in /etc/master.d/kernel; examine that file for the ! 219: symbol CDLIMIT or ULIMIT, and raise it by several powers of 2. Then ! 220: do normal kernel rebuild things via "cd /boot; mkboot -k KERNEL" and so ! 221: forth. Do not use ulimit.hack if you have V.3.1 or later. ! 222: ! 223: In seg.h NSEGP and STACKSEG should be at least 16 and 4 respectively ! 224: to allow processes with total size of up to 2Mbytes. ! 225: However, I'm told it is unlikely this would fail to be true. ! 226: ! 227: The MAXMEM may also prevent Emacs from running. The file ! 228: 3B-MAXMEM in this directory explains how to increase MAXMEM. ! 229: ! 230: AT&T 7300 or 3b1 (m-7300.h; s-usg5-2-2.h) ! 231: ! 232: 18.52 seems to work. If you have strange troubles with dumping Emacs, ! 233: delete the last few lines from m-7300.h and recompile. These lines ! 234: are supposed to produce a sharable executable. ! 235: ! 236: m-7300.h defines SHORTNAMES because operating system versions ! 237: older than 3.5 did not support long symbol names. Version 3.5 does ! 238: support them, so you can remove the #define SHORTNAMES in that version. ! 239: ! 240: Aviion (m-aviion.h; s-dgux.h) ! 241: ! 242: Changes merged in 18.58. ! 243: ! 244: Bull DPX/2 models 2nn or 3nn (m-dpx2-200.h or m-dpx2-300.h; s-usg5-3.h) ! 245: ! 246: Should work in 18.58 except that there is a report of ! 247: Emacs terminating mysteriously if run in the background ! 248: using its own X window and the invoking process ! 249: terminates. ! 250: ! 251: Be sure to read m-dpx2.h for instructions as to how to deal ! 252: with optional packages such as INET and X Windows. ! 253: ! 254: CCI 5/32, 6/32 ! 255: ! 256: See "Tahoe". ! 257: ! 258: Celerity (m-celerity.h; s-bsd4-2.h) ! 259: ! 260: Version 18.49 works. ! 261: ! 262: Convex (m-convex.h; s-bsd4-3.h) ! 263: ! 264: 18.58 works. ! 265: Use "make CC='cc -pcc'" to avoid problems creating ymakefile from xmakefile. ! 266: ! 267: Cydra 5 (m-cydra5.h; s-usg5-3.h) ! 268: ! 269: 18.51 worked in one version of their operating system but stopped ! 270: working in a newer version. This has not been fixed. ! 271: ! 272: Data General ! 273: ! 274: See aviion. ! 275: ! 276: DECstation (m-pmax.h; s-bsd4-3.h or s-osf1.h) ! 277: ! 278: OSF1 support merged in 18.59. ! 279: ! 280: See under Ultrix for problems using X windows ! 281: on Ultrix. Note that this is a MIPS machine. ! 282: s-bsd4-3.h is said to work ok with Ultrix 4.1. ! 283: ! 284: For Ultrix versions prior to 4.0, you may need to delete ! 285: the definition of START_FILES from m-pmax.h. ! 286: ! 287: Dual running System V (m-dual.h; s-usg5-2.h) ! 288: ! 289: As of 17.46, this works except for a few changes ! 290: needed in unexec.c. ! 291: ! 292: Dual running Uniplus (m-dual.h; s-unipl5-2.h) ! 293: ! 294: Works, as of 17.51. ! 295: ! 296: Elxsi 6400 (m-elxsi; s-usg5-2.h) ! 297: ! 298: 18.36 required one small change that's installed in 18.38. ! 299: ! 300: m-elxsi.h currenty specifies CANNOT_DUMP. ! 301: The Elxsi can in principle dump, but the necessary changes to ! 302: unexec, which involve byte-swapping, were too ugly to install. ! 303: If someone submits simple code that supports dumping on the Elxsi, ! 304: it can be installed and CANNOT_DUMP can be turned off. ! 305: ! 306: Encore machine (m-ns16000.h; s-umax.h) ! 307: ! 308: This machine bizarrely uses 4.2BSD modified to use the COFF format ! 309: for object files. Works (as of 18.40). For the APC processor you ! 310: must enable two lines at the end of s-umax.h, which are commented ! 311: out in the file as distributed. ! 312: ! 313: WARNING: If you compile Emacs with the "-O" compiler switch, you ! 314: must also use the "-q enter_exits" switch so that all functions have ! 315: stack frames. Otherwise routines that call `alloca' all lose. ! 316: ! 317: A kernel bug in some system versions causes input characters to be lost ! 318: occasionally. ! 319: ! 320: Encore running MACH. ! 321: ! 322: This does not yet work. ! 323: ! 324: GEC 93 (m-gec93.h; s-usg5-2.h?) ! 325: ! 326: Changes are partially merged in version 18, but ! 327: certainly require more work. ! 328: ! 329: Gould (m-gould.h; s-bsd4-2.h or s-bsd4-3.h) ! 330: ! 331: 18.36 worked on versions 1.2 and 2.0 of the operating system. ! 332: ! 333: On UTX/32 2.0, use s-bsd4-3.h. ! 334: ! 335: On UTX/32 1.2 and UTX/32S 1.0, use s-bsd4-2.h and note that compiling ! 336: etc/sorted-doc tickles a compiler bug: remove the -g flag to cc in the ! 337: makefile. ! 338: ! 339: UTX/32 1.3 has a bug in the bcopy library routine. Fix it by ! 340: #undef BSTRING in m-gould.h. ! 341: ! 342: HP 9000 series 200 or 300 (m-hp9000s300.h; s-hpux7.h, s-hpux8.h or s-bsd4-3.h) ! 343: ! 344: Version 18 works. ! 345: These machines are 68000-series CPUs running HP-UX ! 346: (a derivative of sysV with some BSD features) or BSD 4.3 ported by Utah. ! 347: The choice of s- file determines which system Emacs is built for. ! 348: ! 349: If you are running HP-UX release 8.0 or later, you need the optional ! 350: "C/ANSI C" software in order to build Emacs (older releases of HP-UX ! 351: do not require any special software). If the file "/etc/filesets/C" ! 352: exists on your machine, you have this software, otherwise you do not. ! 353: ! 354: Series 200 HPUX runs Emacs only if it has the "HP-UX upgrade". ! 355: ! 356: The series 500 has a seriously incompatible memory architecture ! 357: which relocates data in memory during execution of a program, ! 358: and support for it would be difficult to implement. ! 359: ! 360: Note that HP has used two incompatible assembler syntaxes, ! 361: and has recently changed the format of C function frames. ! 362: src/crt0.c and src/alloca.s have been conditionalised for the new ! 363: assembler and new function-entry sequence. You may need to define ! 364: OLD_HP_ASSEMBLER if you are using an older hpux version. If you ! 365: have an official (bought from HP) series 300 machine you have ! 366: the new assembler. Kernels that are 5.+ or later have new ! 367: assembler. A Series 200 that has been upgraded to a 68010 ! 368: processor and a 5.+ kernel has the new compiler. ! 369: ! 370: Define C_SWITCH_MACHINE to be +X to make a version of Emacs that ! 371: runs on both 68010 and 68020 based hp-ux's. ! 372: ! 373: Define HPUX_68010 if you are using the new assembler, for ! 374: a system that has a 68010 without a 68881. This is to say, ! 375: a s200 (upgraded) or s310. ! 376: ! 377: Define the symbol HPUX_NET if you have the optional network features ! 378: that include the `netunam' system call. This is refered to as ! 379: Network Services (NS/9000) in HP literature. ! 380: ! 381: If you are compiling to work with X11 release 4, you may need ! 382: to define HAVE_RANDOM in config.h. ! 383: ! 384: HP 9000 series 700 or 800 (Spectrum) (m-hp9000s800.h; s-hpux7.h or s-hpux8.h) ! 385: ! 386: These files support HP's Precision Architecture machines ! 387: running HP-UX. Version 18.58 should work on the 700 and the 800. ! 388: Use s-hpux7.h for HPUX version 7 or earlier, ! 389: and s-hpux8.h for HPUX version 8. ! 390: If you are running HP-UX release 8.0 or later, you need the optional ! 391: "C/ANSI C" software in order to build Emacs (older releases of HP-UX ! 392: do not require any special software). If the file "/etc/filesets/C" ! 393: exists on your machine, you have this software, otherwise you do not. ! 394: ! 395: HAVE_X_MENU works, but you may need to modify oldXMenu/Makefile ! 396: to compile insque.c. ! 397: ! 398: If you compile with MIT's X11R5, rather than HP's version, ! 399: then you may need to add the following to config.h: ! 400: ! 401: #define srandom srand ! 402: #define random rand ! 403: ! 404: High Level Hardware Orion (m-orion.h; s-bsd4-2.h) ! 405: ! 406: This is the original microprogrammed hardware. ! 407: m- file ought to work. ! 408: ! 409: High Level Hardware Orion 1/05 (m-orion105.h; s-bsd4-2.h) ! 410: ! 411: Changes merged in 18.52. This is the one with the Clipper cpu. ! 412: Note that systems which lack NFS may need LOAD_AVE_TYPE changed to `double'. ! 413: ! 414: In 18.58, trouble was reported with X windows: XrmGetResource was ! 415: reported undefined in the library. You may need to change ! 416: XT_GetDefaults in x11term.c to make it link. If so, please ! 417: send a bug report saying exactly what change was needed. ! 418: ! 419: IBM PS2 (m-ibmps2-aix.h; s-usg5-2-2.h or s-usg5-3.h) ! 420: ! 421: Changes mostly merged in 18.55. You may need to put an #ifndef AIX ! 422: conditional around the definition of closedir in sysdep.c, and ! 423: perhaps delete the #include of sioctl.h. You may need to copy ! 424: /usr/lib/samples/hft/hftctl.c to the Emacs src directory. ! 425: ! 426: Use s-usg5-3.h on AIX 1.2. ! 427: s-usg5-2-2.h should work on either AIX 1.1 or 1.2, but may not work with ! 428: certain new X window managers, and may be suboptimal. ! 429: ! 430: IBM RS/6000 (m-ibmrs6000.h; s-aix3-1.h or s-aix3-2.h) ! 431: ! 432: Changes merged in 18.56. Note that for installation on AIX you must ! 433: use `make install.aix' rather than just `make'. Use s-aix3-2.h ! 434: on AIX 3.2 also. ! 435: ! 436: IBM RT/PC (m-ibmrt.h or m-ibmrt-aix.h; s-bsd4-3.h or s-usg5-2-2.h) ! 437: ! 438: 18.52 works on both operating systems. ! 439: Use s-bsd-4-3.h for the 4.3-like system AOS, and s-usg5-2-2.h for AIX. ! 440: ! 441: On BSD, if you have trouble, try compiling with a different compiler. ! 442: ! 443: On AIX, the file /usr/lib/samples/hft/hftctl.c must be compiled into ! 444: hftctl.o, with this result left in the src directory (hftctl.c is ! 445: part of the standard AIX distribution). ! 446: ! 447: window.c must not be compiled with -O on AIX. ! 448: ! 449: Integrated Solutions `Optimum V' (m-isi-ov.h; s-bsd4-2.h or s-bsd4-3.h) ! 450: ! 451: 18.52 said to work on some sort of ISI machine. ! 452: Version 18.45 worked (running on a Optimum V (VME bus, 68020) ! 453: BSD 4.2 (3.05e) system). 18.42 is reported to work on ! 454: a Qbus 68010 system. Has not been tried on `WorkStation' `Cluster ! 455: Compute Node' `Cluster WorkStation' or `Server Node' (Love the ! 456: StudLYCaps) ! 457: ! 458: Compilation with -O is rumored to break something. ! 459: ! 460: On recent system versions, you may need to undefine the macro UMAX ! 461: in etc/loadst.c and src/getpagesize.h. They stupidly defined this ! 462: in a system header file, which confuses Emacs (which thinks that UMAX ! 463: indicates the Umax operating system). ! 464: ! 465: Integrated Solutions 386 (m-is386.h; ??) ! 466: ! 467: Configuration file present in 18.57. ! 468: ! 469: Intel 80386 (m-intel386.h; s-bsd4-2.h, s-usg5-2-2.h, s-usg5-3.h, s-esix.h, ! 470: s-386ix.h, s-isc2-2.h, s-isc3-0.h, s-sco3-2-2.h, s-sco3-2-4.h, ! 471: or s-xenix.h) ! 472: ! 473: 18.59 should support a wide variety of operating systems. ! 474: Use s-isc2-2.h for Interactive 386/ix version 2.2 ! 475: and s-isc3-0.h for versions 3.0 and 3.2. ! 476: Use s-386ix.h for prior versions. ! 477: Use s-esix.h for Esix. ! 478: ! 479: Use s-sco3-2-4.h for version 3.2.4, and s-sco3-2-2.h for version 3.2.2 ! 480: (but it only makes a difference if you compile Emacs for X windows). ! 481: You may have to compile the cpp that comes with Emacs ! 482: and use that to preprocess src/ymakefile to get src/xmakefile. ! 483: s-sco3-2-1.h may work on SCO 3.2.1, but see the instructions in ! 484: that file for other changes you need to make. ! 485: ! 486: If you are using Xenix, see notes above under Xenix. ! 487: ! 488: Some sysV.3 systems seem to have bugs in `opendir'; ! 489: for them, alter `config.h' to define NONSYSTEM_DIR_LIBRARY ! 490: and undefine SYSV_SYSTEM_DIR. ! 491: ! 492: If you use optimization on V.3, you may need the option -W2,'-y 0' ! 493: to prevent certain faulty optimization. Otherwise, fns.c won't work. ! 494: ! 495: On 386/ix, to link with shared libraries, add #define USG_SHARED_LIBRARIES ! 496: to config.h. ! 497: ! 498: On one V.4 system, it was necessary to define LIBS_TERMCAP as -ltermcap. ! 499: ! 500: Versions 3 and earlier of V.4 supposedly have problems ! 501: in the X11 libraries that prevent Emacs from working with X. ! 502: Version 4 of V.4 is said to have fixed this problem. See the ! 503: entry for System V Release 4, above. Similar problems occur on ! 504: SCO systems and perhaps also on ISC systems. There is no known ! 505: remedy except to get a different system. ! 506: ! 507: There is no consistency in the handling of certain system header files ! 508: on V.3. ! 509: ! 510: Some versions have sys/sioctl.h, and require it in sysdep.c. ! 511: But some versions do not have sys/sioctl.h. ! 512: For a given version of the system, this may depend on whether you have ! 513: X Windows or TCP/IP. Define or undefine NO_SIOCTL_H in config.h ! 514: according to whether you have the file. ! 515: ! 516: Likewise, some versions have been known to need sys/ttold.h, sys/stream.h, ! 517: and sys/ptem.h included in sysdep.c. If your system has these files, ! 518: try defining NEED_PTEM_H in config.h if you have trouble without it. ! 519: ! 520: You may find that adding -I/usr/X/include or -I/usr/netinclude or both ! 521: to CFLAGS avoids compilation errors on certain systems. ! 522: ! 523: Some versions convince sysdep.c to try to use `struct tchars' ! 524: but define `struct tc' instead; add `#define tchars tc' ! 525: to config.h to solve this problem. ! 526: Some systems have problems that can be solved by inserting ! 527: #undef TIOCGETC ! 528: in sysdep.c, near the place where this is done for XENIX. ! 529: ! 530: Intel 860 (m-intel860.h; s-usg5-4.h) ! 531: ! 532: Supposed to work in 18.58. See the notes for System V Release 4, ! 533: above, for notes on using X windows and using sockets. ! 534: ! 535: Iris 4D (m-iris4d.h; s-irix3-3.h or s-irix4-0.h) ! 536: ! 537: 18.58 is known to work on Silicon Graphics 4D series machines ! 538: with IRIX 3.3 or IRIX 4.0. ! 539: ! 540: Most irix3.3 systems do not have an ANSI C compiler, but a few do. ! 541: If you are using the ANSI C compiler, you may need to add ! 542: #define C_SWITCH_MACHINE -cckr ! 543: to config.h. ! 544: ! 545: There is a bug in IRIX that can sometimes leave ptys owned by ! 546: root with a permission of 622. This causes malfunctions in use ! 547: of subprocesses of Emacs. This may be fixed in IRIX 4.0.5. ! 548: ! 549: Iris 2500 Turbo (m-irist.h; s-iris3-5.h or s-iris3-6.h) ! 550: ! 551: 18.49 works. Use s-iris3-6.h for system versions 3.6 and up. ! 552: s-iris3-5.h is said to work with system version 2.5. ! 553: Note that the 3030 is the same machine as this. ! 554: ! 555: Macintosh ! 556: ! 557: We are boycotting Apple because of Apple's efforts to take away ! 558: our freedom to write compatible imitations of existing software. ! 559: If you value your freedom to write such programs, we urge you ! 560: not to buy from Apple, not to develop software for Apple, and ! 561: certainly not to accept a job with Apple. ! 562: ! 563: See the file APPLE in this directory for more information. ! 564: ! 565: Masscomp (m-masscomp.h; s-rtu.h) ! 566: ! 567: 18.36 worked on a 5500DP running RTU v3.1a and compiler version 3.2 ! 568: with minor fixes that are included in 18.37. However, bizarre behavior ! 569: was reported for 18.36 on a Masscomp (model and version unknown but probably ! 570: a 68020 system). The report sounds like a compiler bug. ! 571: ! 572: A compiler bug affecting statements like ! 573: unsigned char k; unsigned char *p;... x = p[k]; ! 574: has been reported for "C version 1.2 under RTU 3.1". We do not wish ! 575: to take the time to install the numerous workarounds required to ! 576: compensate for this bug; go complain to Masscomp. ! 577: ! 578: For RTU version 3.1, define FIRST_PTY_LETTER to be 'p' in s-rtu.h ! 579: (or #undef and redefine it in config.h) so that ptys will be used. ! 580: ! 581: GNU Emacs is said to have no chance of compiling on RTU versions ! 582: prior to v3.0. ! 583: ! 584: Megatest (m-mega68.h; s-bsd4-2.h) ! 585: ! 586: Emacs 15 worked; do not have any reports about Emacs 16 or 17 ! 587: but any new bugs are probably not difficult. ! 588: ! 589: Mips (m-mips.h or m-mips4.h; s-usg5-2-2.h, s-bsd4-3.h) ! 590: ! 591: Changes merged in 18.39. Some fixes in 18.56. ! 592: ! 593: Use m-mips4.h for RISCOS version 4; use s-bsd4-3.h with the BSD world. ! 594: ! 595: If you are compiling with GCC, then you must run fixincludes; ! 596: the alternative of using -traditional won't work because ! 597: the definition of SIGN_EXTEND_CHAR uses the keyword `signed'. ! 598: ! 599: If the SYSV world is the default, then you probably need the following ! 600: line in etc/Makefile: ! 601: ! 602: CFLAGS= -g -systype bsd43 ! 603: ! 604: Some operating systems on MIPS machines give SIGTRAP for division by ! 605: zero instead of the usual signals. The only real solution is to fix ! 606: the system to give a proper signal. ! 607: ! 608: In the meantime, you can change init_data in data.c if you wish. ! 609: Change it to handle SIGTRAP as well as SIGFPE. But this will have a ! 610: great disadvantage: you will not be able to run Emacs under a ! 611: debugger. I think crashing on division by zero is a lesser problem. ! 612: ! 613: Note that the proper m- file for the Decstation is m-pmax.h. ! 614: ! 615: Motorola Delta 147 (m-delta.h; s-usg5-3.h) ! 616: ! 617: m- file added in version 18.56. ! 618: ! 619: Motorola Delta 187 (m-delta88k.h; s-usg5-3.h) ! 620: ! 621: m- file added in version 18.58. ! 622: HAVE_X_MENU may work if you modify oldXMenu/Makefile to compile insque.c. ! 623: ! 624: National Semiconductor 32000 (m-ns32000.h; s-usg5-2.h) ! 625: ! 626: This is for a complete machine from National Semiconductor, ! 627: running Genix. Changes merged in version 19. ! 628: ! 629: NCR Tower 32 running System V release 2 (m-tower32.h; s-usg5-2-2.h) ! 630: ! 631: Works as of 17.56. If you change src/ymakefile so that CFLAGS includes ! 632: C_OPTIMIZE_SWITCH rather than C_DEBUG_SWITCH, check out the comments ! 633: in src/m-tower32.h about this. ! 634: ! 635: There is a report that compilation with -O did not work with 18.54. ! 636: ! 637: NCR Tower 32 running System V release 3 (m-tower32v3.h; s-usg5-3.h) ! 638: ! 639: Works as of 18.56. If you change src/ymakefile so that CFLAGS includes ! 640: C_OPTIMIZE_SWITCH rather than C_DEBUG_SWITCH, and do not use gcc, check ! 641: out the comments in src/m-tower32v3.h about this. ! 642: ! 643: NeXT (m-next.h; s-mach2.h) ! 644: ! 645: Changes merged in 18.59. ! 646: ! 647: Nixdorf Targon 31 (m-targon31.h; s-usg5-2-2.h) ! 648: ! 649: Changes merged in 18.56 may work. ! 650: It may be necessary to define C_ALLOCA in m-targon31.h ! 651: and it may be necessary to remove alloca from libc.a. ! 652: (The alloca in libc.a is said to be broken.) ! 653: Please report to the Foundation what works. ! 654: ! 655: Note that the "Targon 35" is really a Pyramid. ! 656: ! 657: Nu (TI or LMI) (m-nu.h; s-usg5-2.h) ! 658: ! 659: Version 18 is believed to work. ! 660: ! 661: pfa50 (m-pfa50.h; s-usg5-3.h) ! 662: ! 663: Changes mostly merged in 18.59. ! 664: ! 665: Plexus (m-plexus.h; s-usg5-2.h) ! 666: ! 667: Works as of 17.56. ! 668: ! 669: Pmax, Mips from DEC (m-pmax.h; s-bsd4-2.h) ! 670: ! 671: See under DECstation, above. ! 672: ! 673: Prime EXL (m-intel386.h; s-usg5-3.h) ! 674: ! 675: 18.54 should work. ! 676: ! 677: Pyramid (m-pyramid.h; s-bsd4-2.h) ! 678: ! 679: 18.58 seems to work on the MIServer 2/1T under OSx 5.1-910507. ! 680: You need to build Emacs in the Berkeley universe with ! 681: the `ucb' command, as in `ucb make' or `ucb build-install'. ! 682: ! 683: In OSx 4.0, it seems necessary to add the following two lines ! 684: to m-pyramid.h: ! 685: #define _longjmp longjmp ! 686: #define _setjmp setjmp ! 687: ! 688: In Pyramid system 2.5 there has been a compiler bug making ! 689: Emacs crash just after screen-splitting with Qnil containing 0. ! 690: A compiler that fixes this is Pyramid customer number 8494, ! 691: internal number 1923. ! 692: ! 693: Some versions of the pyramid compiler get fatal ! 694: errors when the -gx compiler switch is used; if this ! 695: happens to you, change src/m-pyramid.h to define ! 696: C_DEBUG_SWITCH with an empty definition. ! 697: ! 698: Some old system versions may require you to define PYRAMID_OLD ! 699: in when alloca.s is preprocessed, in order to define _longjmp and _setjmp. ! 700: ! 701: Pyramid MIPS systems (m-pyrmips.h; s-usg5-4.h) ! 702: ! 703: Changes merged in 18.59; may work. Dumping is not supported. ! 704: Use CPP=/usr/ccs/lib/cpp when running make in src. ! 705: ! 706: Sequent Balance (m-sequent.h; s-bsd4-2.h) ! 707: ! 708: Emacs 18.51 should work on system version ! 709: 3.0. 18.5[23] is said to work. Delete some lines at the end of ! 710: m-sequent.h for earlier system versions. ! 711: ! 712: Sequent Symmetry (m-seq386.h; s-bsd4-2.h) ! 713: ! 714: Changes merged in 18.59 for compiling with GCC. ! 715: ! 716: SONY News (m-news.h; s-bsd4-2.h, or s-bsd4-3.h for system release 3) ! 717: ! 718: 18.52 should work. ! 719: ! 720: SONY News 3000 series (RISC NEWS) (m-news-risc.h; s-bsd4-3.h) ! 721: ! 722: Works, as of 18.56. Note that this is a MIPS architecture machine. ! 723: ! 724: Some versions of the operating system give SIGTRAP for division by zero ! 725: instead of the usual signals. This causes division by zero ! 726: to make Emacs crash. The system should be fixed to give the proper signal. ! 727: Changing Emacs is not a proper solution, because it would prevent ! 728: Emacs from working under any debugger. But you can change init_data ! 729: in data.c if you wish. ! 730: ! 731: Stride (m-stride.h; s-usg5-2.h) ! 732: ! 733: Works (most recent news for 18.30) on their release 2.0. ! 734: For release 2.2, see the end of m-stride.h. ! 735: It may be possible to run on their V.1 system but changes ! 736: in the s- file would be needed. ! 737: ! 738: Sun 1, 2 and 3 (m-sun1.h, m-sun2.h, m-sun3.h; ! 739: s-bsd4-2.h, s-sunos4-0.h or s-sunos4-1.h) ! 740: ! 741: There are three m- files for different versions of SunOS. ! 742: All are derived from Berkeley 4.2. Emacs 17 has run on all of them. ! 743: Whether you should use m-sun1.h, m-sun2.h or m-sun3.h depends ! 744: on the VERSION OF THE OPERATING SYSTEM you have. ! 745: You will need to use m-sun3.h on Sun 2's running SunOS release 3. ! 746: ! 747: For SunOS release 4 on a Sun 2 or Sun 3, use m-sun3.h and s-sunos4-1.h. ! 748: (Use s-sunos4-0.h instead if using system version 4.0.*.) ! 749: See the file etc/SUNBUG for how to solve problems caused by bugs in ! 750: the "export" version of SunOS 4. ! 751: ! 752: If you get inappropriate "unknown host" errors from ! 753: open-network-stream, get the distribution of `bind' (the BSD ! 754: name-server), build libresolv.a, and link Emacs with -lresolv. This ! 755: problem is due to obsolete software in the nonshared standard ! 756: library. ! 757: ! 758: If you want to use SunWindows, define HAVE_SUN_WINDOWS ! 759: in config.h to enable a special interface called `emacstool'. ! 760: The definition must *precede* the #include "m-sun3.h". ! 761: System version 3.2 is required for this facility to work. ! 762: ! 763: We recommend that you instead use the X window system, which ! 764: has technical advantages, is an industry standard, and is also ! 765: free software. ! 766: ! 767: If you are compiling for X windows, and the X window library was ! 768: compiled to use the 68881, then you must edit config.h according ! 769: the comments at the end of m-sun3.h. ! 770: ! 771: It is advisable to add #define ForceNormalLib YES before building ! 772: X11R5, to force creation of a nonshared library (as well as the ! 773: shared X library). Emacs does not use shared libraries, so it ! 774: needs to have a nonshared X library in order to run with X. ! 775: ! 776: Note that Emacs on a Sun is not really as big as it looks. ! 777: As dumped, it includes around 200k of zeros between the ! 778: original text section and the original data section ! 779: (now remapped as part of the text). These are never ! 780: swapped in. ! 781: ! 782: To build a single Emacs that will run on Sun 2 and Sun 3 ! 783: HARDWARE, just build it on the Sun 2. ! 784: ! 785: Sun 4 (m-sparc.h; s-bsd4-2.h or s-sunos4-0.h or s-sunos4-1.h or s-sol2.h) ! 786: ! 787: Works under Sunos 4; changes for Solaris 2 merged in Emacs 18.59. ! 788: You may need to use CPP=/usr/ucb/cc -E in src/Makefile on Solaris 2. ! 789: ! 790: Some people have said optimizing compilation ! 791: does not work; some say that -O2 (whatever that is) works ! 792: perhaps with a small change. ! 793: ! 794: See the entry above for the Sun 3; most of the information ! 795: applies to the Sun 4 as well. ! 796: ! 797: Sun Roadrunner (m-sun386.h; s-sunos4-0.h) ! 798: ! 799: Changes merged in 18.51. ! 800: ! 801: Tadpole (m-tad68.h; s-usg5-3.h) ! 802: ! 803: Changes merged in 18.58; minor fixes in 18.59. ! 804: ! 805: You may need to edit Makefile to change the variables LIBDIR and ! 806: BINDIR from /usr/local to /usr/contrib. ! 807: ! 808: To give movemail access to /usr/mail, you may need to execute ! 809: ! 810: chmod 2755 etc/movemail; chgrp mail etc/movemail ! 811: ! 812: Tahoe (m-tahoe.h; s-bsd4-2.h or s-bsd4-3.h) ! 813: ! 814: 18.52 known to work on some Tahoes, but a compiler bug intervenes ! 815: on others. Some Emacs versions have worked in Unisys 1r4 ! 816: (not in 1r3) and CCI I.21. ! 817: ! 818: If you have trouble compiling etc/loadst.c, turn off the definition ! 819: of DKSTAT_HEADER_FILE in m-tahoe.h. ! 820: ! 821: Tandem Integrity S2 (m-tandem-s2.h; s-usg5-3.h) ! 822: ! 823: Changes merged in 18.56 but subprocess support is turned off. ! 824: You will probably want to see if you can make subprocesses work. ! 825: ! 826: You must edit etc/Makefile to define LOADLIBES = -mld. ! 827: ! 828: Tektronix 16000 box (6130?) (m-ns16000.h; s-bsd4-2.h) ! 829: ! 830: Emacs 17.61 worked. ! 831: ! 832: Tektronix 4300 (m-tek4300.h; s-bsd4-3.h) ! 833: ! 834: Emacs 18.58 should work. ! 835: ! 836: Depending on which linker you use, you might want to change ! 837: the value of TEXT_START in m-tek4300.h; though the native linker ! 838: does use zero, it is possible (and reasonable) to use a linker ! 839: that starts text elsewhere, like 0x2000. ! 840: ! 841: Triton 88 (m-triton88.h; s-usg5-3.h?) ! 842: ! 843: Changes merged in 18.58. ! 844: ! 845: Ustation E30 (SS5E) (m-ustation.h; s-unipl5-2.h) ! 846: ! 847: Changes merged in 18.52; don't know whether they work. ! 848: ! 849: Vax running Berkeley Unix (m-vax.h; s-bsd4-1.h, s-bsd4-2.h or s-bsd4-3.h) ! 850: ! 851: Works. ! 852: ! 853: Vax running Ultrix (m-vax.h; s-bsd4-2.h) ! 854: ! 855: Works. See under Ultrix for problems using X windows on Ultrix. ! 856: ! 857: Vax running System V rel 2 (m-vax.h; s-usg5-2.h) ! 858: ! 859: 18.27 Works. ! 860: ! 861: Vax running System V rel 0 (m-vax.h; s-usg5-0.h) ! 862: ! 863: Works as of 18.36. ! 864: ! 865: Vax running VMS (m-vax.h; s-vms.h but on VMS they are m_vax.h and s_vms.h) ! 866: ! 867: 18.36 believed to work. Addition of features is necessary to make ! 868: this Emacs version more usable. ! 869: ! 870: Whitechapel MG1 (m-mg1.h, s-?) ! 871: ! 872: May work. Supposedly no changes were needed except the m- file. ! 873: I do not know what Unix version runs on them. ! 874: ! 875: Wicat (m-wicat.h; s-usg5-2.h) ! 876: ! 877: Changes merged as of 18.6; whether they work is unknown. ! 878: See comments in m-wicat.h for things you should change ! 879: depending on the system and compiler version you have. ! 880: ! 881: Local variables: ! 882: mode: text ! 883: fill-prefix: " " ! 884: End:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.