|
|
1.1 root 1: This is a list of the status of GNU Emacs on various machines and systems.
2: Last updated 20 July 1989
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: System V rel 0 (s-usg5-0.h)
21:
22: Works, on Vaxes and 3bxxx's.
23: There are some problems in 18.37 due to shortnames/cccp problems:
24: use the emacs 17 cpp if you have it.
25:
26: System V rel 2 (s-usg5-2.h)
27:
28: Works on various machines.
29: On some (maybe all) machines the library -lPW exists and contains
30: a version of `alloca'. On these machines, to use it, put
31: #define HAVE_ALLOCA
32: #define LIB_STANDARD -lPW -lc
33: in the m-...h file for the machine.
34:
35: If you find that the character Meta-DEL makes Emacs crash,
36: find where function init_sys_modes in sysdep.c sets sg.c_cc[VQUIT]
37: and make it store 7 there. I have as yet no evidence of whether
38: this problem, known in HP-UX, exists in other system V versions.
39:
40: System V rel 2.2 (s-usg5-2-2.h)
41:
42: In 5.2.2 AT&T undid, incompatibly, their previous incompatible
43: change to the way the nlist library is called. A different s- file
44: is used to enable the other interface.
45:
46: They call themselves the right choice--can't they choose?
47:
48: Emacs version 18 unexec is currently not working properly
49: on 5.2.2. Nobody knows why yet. A workaround is to define
50: NO_REMAP. It is not yet known whether this applies to all
51: machines running 5.2.2.
52:
53: System V rel 3 (s-usg5-3.h)
54:
55: Some versions of this system support ptys and BSD-style sockets.
56: On such systems, you should define HAVE_PTYS and HAVE_SOCKETS in config.h.
57:
58: Sorry, shared libraries do not work with Emacs currently (in 18.55).
59: They will be supported in the future.
60:
61: Ultrix
62:
63: This is DEC's name for Berkeley 4.2.
64:
65: Uniplus 5.2 (s-unipl5-2.h)
66:
67: Works, on Dual machines at least.
68:
69: VMS (s-vms.h)
70:
71: Works except for certain features (directory listing, dired,
72: sending and receiving mail) that use synchronous subprocesses.
73: We need people to write alternative implementations of these
74: facilities.
75:
76: Note that Emacs for VMS is usually distributed in a special
77: VMS distribution. See the file ../VMSINSTALL for info on moving
78: Unix distributions to VMS, and other VMS-related topics.
79:
80: Xenix
81:
82: Should work in 18.50, but you will need to edit the files
83: etc/Makefile and src/ymakefile
84: (see the comments that mention "Xenix" for what to change.)
85: Compiling Emacs with -O is said not to work.
86:
87: If you want Emacs to work with Smail (installed as /usr/bin/smail)
88: then add the line #define SMAIL to config.h.
89:
90: The file etc/XENIX suggests some useful things to do to Xenix
91: to make the Emacs meta key work.
92:
93: Machines:
94: For each type of machine, the names of the m- and s- header files
95: are given.
96:
97: Alliant (m-alliant4.h or m-alliant.h or m-alliant1.h; s-bsd4-2.h)
98:
99: 18.52 works on system version 4. Previous Emacs versions were
100: known to work on previous system versions.
101:
102: Use m-alliant1.h on version 1 of their operating system
103: and use m-alliant.h on version 2 or 3.
104: Use m-alliant4.h on version 4.
105:
106: Altos 3068 (m-altos.h; s-usg5-2.h)
107:
108: Changes, very minimal, for 18.36 have been merged in 18.38.
109:
110: Amdahl UTS (m-amdahl.h; s-usg5-2-2.h)
111:
112: Small changes for 18.38 were merged in 18.39. It is mostly
113: working, but at last report a bug sometimes causes Emacs to
114: grab very large amounts of memory. No fix or explanation
115: has yet been reported. It may be possible to find this bug
116: if you find which Emacs command it happens within and then
117: run that command with a breakpoint set at malloc.
118:
119: The 5.2u370 compiler is so brain damaged that it is not
120: even worth trying to use it. Success was obtained with the
121: uts native C compiler on uts version 5.2.5.
122:
123: Apollo running Domain (m-apollo.h; s-bsd4-2.h)
124:
125: 18.52 works, to some extent.
126: Code for dumping Emacs has been written, but we cannot
127: distribute it yet.
128: There are reports of bugs in cc -O on this system.
129:
130: In etc/Makefile, don't expect emacsclient and server to
131: compile. You might want to remove them from your makefile.
132:
133: Supposedly something in dired.c runs into a compiler bug.
134: Paraphrasing the statement should avoid the problem.
135: I havenot yet received word as to the exact statement this is.
136:
137: AT&T 3b2, 3b5, 3b15, 3b20 (m-att3b.h; s-usg5-2-2.h)
138:
139: Emacs will probably not work with certain kernel constants too small.
140:
141: In param.h CDLIMIT should be at least (1L << 12) in order to allow
142: processes to write up to 2 Mbyte files. If it's too small,
143: you can perhaps fix it using the file `ulimit.hack' in this directory.
144:
145: Note that for V.3.1 and later releases, this parameter is configurable
146: by normal means in /etc/master.d/kernel; examine that file for the
147: symbol CDLIMIT or ULIMIT, and raise it by several powers of 2. Then
148: do normal kernel rebuild things via "cd /boot; mkboot -k KERNEL" and so
149: forth. Do not use ulimit.hack if you have V.3.1 or later.
150:
151: In seg.h NSEGP and STACKSEG should be at least 16 and 4 respectively
152: to allow processes with total size of up to 2Mbytes.
153: However, I'm told it is unlikely this would fail to be true.
154:
155: The MAXMEM may also prevent Emacs from running. The file
156: 3B-MAXMEM in this directory explains how to increase MAXMEM.
157:
158: AT&T 7300 or 3b1 (m-7300.h; s-usg5-2-2.h)
159:
160: 18.52 seems to work. If you have strange troubles with dumping Emacs,
161: delete the last few lines from m-7300.h and recompile. These lines
162: are supposed to produce a sharable executable.
163:
164: m-7300.h defines SHORTNAMES because operating system versions
165: older than 3.5 did not support long symbol names. Version 3.5 does
166: support them, so you can remove the #define SHORTNAMES in that version.
167:
168: CCI 5/32, 6/32
169:
170: See "Tahoe".
171:
172: Celerity (m-celerity.h; s-bsd4-2.h)
173:
174: Version 18.49 works.
175:
176: Convex (m-convex.h; s-bsd4-3.h)
177:
178: 18.53 is supposed to work.
179:
180: Cydra 5 (m-cydra5.h; s-usg5-3.h)
181:
182: 18.51 worked in one version of their operating system but stopped
183: working in a newer version. This has not been fixed.
184:
185: Dual running System V (m-dual.h; s-usg5-2.h)
186:
187: As of 17.46, this works except for a few changes
188: needed in unexec.c.
189:
190: Dual running Uniplus (m-dual.h; s-unipl5-2.h)
191:
192: Works, as of 17.51.
193:
194: Elxsi 6400 (m-elxsi; s-usg5-2.h)
195:
196: 18.36 required one small change that's installed in 18.38.
197:
198: m-elxsi.h currenty specifies CANNOT_DUMP.
199: The Elxsi can in principle dump, but the necessary changes to
200: unexec, which involve byte-swapping, were too ugly to install.
201: If someone submits simple code that supports dumping on the Elxsi,
202: it can be installed and CANNOT_DUMP can be turned off.
203:
204: Encore machine (m-ns16000.h; s-umax.h)
205:
206: This machine bizarrely uses 4.2BSD modified to use the COFF format
207: for object files. Works (as of 18.40). For the APC processor you
208: must enable two lines at the end of s-umax.h, which are commented
209: out in the file as distributed.
210:
211: WARNING: If you compile Emacs with the "-O" compiler switch, you
212: must also use the "-q enter_exits" switch so that all functions have
213: stack frames. Otherwise routines that call `alloca' all lose.
214:
215: A kernel bug in some system versions causes input characters to be lost
216: occasionally.
217:
218: GEC 93 (m-gec93.h; s-usg5-2.h?)
219:
220: Changes are partially merged in version 18, but
221: certainly require more work.
222:
223: Gould (m-gould.h; s-bsd4-2.h or s-bsd4-3.h)
224:
225: 18.36 worked on versions 1.2 and 2.0 of the operating system.
226:
227: On UTX/32 2.0, use s-bsd4-3.h.
228:
229: On UTX/32 1.2 and UTX/32S 1.0, use s-bsd4-2.h and note that compiling
230: etc/sorted-doc tickles a compiler bug: remove the -g flag to cc in the
231: makefile.
232:
233: UTX/32 1.3 has a bug in the bcopy library routine. Fix it by
234: #undef BSTRING in m-gould.h.
235:
236: HP 9000 series 200 or 300 (m-hp9000s300.h; s-hpux.h)
237:
238: Version 18 works.
239: These machines are 68000-series CPUs running HP-UX,
240: a derivative of sysV with some BSD features.
241:
242: Series 200 runs Emacs only if it has the "HP-UX upgrade".
243:
244: The series 500 has a seriously incompatible memory architecture
245: which relocates data in memory during execution of a program,
246: and support for it would be difficult to implement.
247:
248: Note that HP has used two incompatible assembler syntaxes,
249: and has recently changed the format of C function frames.
250: src/crt0.c and src/alloca.s have been conditionalised for the new
251: assembler and new function-entry sequence. You may need to define
252: OLD_HP_ASSEMBLER if you are using an older hpux version. If you
253: have an official (bought from HP) series 300 machine you have
254: the new assembler. Kernels that are 5.+ or later have new
255: assembler. A Series 200 that has been upgraded to a 68010
256: processor and a 5.+ kernel has the new compiler.
257:
258: Define C_SWITCH_MACHINE to be +X to make a version of Emacs that
259: runs on both 68010 and 68020 based hp-ux's.
260:
261: Define HPUX_68010 if you are using the new assembler, for
262: a system that has a 68010 without a 68881. This is to say,
263: a s200 (upgraded) or s310.
264:
265: Define the symbol HPUX_NET if you have the optional network features
266: that include the `netunam' system call. This is refered to as
267: Network Services (NS/9000) in HP literature.
268:
269: HP 9000 series 800 (Spectrum) (m-hp9000s800.h; s-hpux.h)
270:
271: These files support HP's Precision Architecture machines
272: running HP-UX. It has been moderately tested on the Series
273: 840.
274:
275: High Level Hardware Orion (m-orion.h; s-bsd4-2.h)
276:
277: This is the original microprogrammed hardware.
278: m- file ought to work.
279:
280: High Level Hardware Orion 1/05 (m-orion105.h; s-bsd4-2.h)
281:
282: Changes merged in 18.52. This is the one with the Clipper cpu.
283:
284: C compiler has a bug; it loops compiling eval.c.
285: Compile it by hand without optimization.
286:
287: IBM PS2 (m-ibmps2-aix.h; s-usg5-2-2.h)
288:
289: Changes mostly merged in 18.55.
290: You may need to put an #ifndef AIX conditional
291: around the definition of closedir in sysdep.c.
292:
293: IBM RT/PC (m-ibmrt.h or m-ibmrt-aix.h; s-bsd4-2.h or s-usg5-2-2.h)
294:
295: 18.52 works on both operating systems.
296: Use s-bsd-4-2.h for the 4.2-like system and s-usg5-2-2.h for AIX.
297:
298: On BSD, if you have trouble, try compiling with a different compiler.
299:
300: On AIX, the file /usr/lib/samples/hft/hftctl.c must be compiled into
301: hftctl.o, with this result left in the src directory (hftctl.c is
302: part of the standard AIX distribution).
303:
304: window.c must not be compiled with -O on AIX.
305:
306: Integrated Solutions `Optimum V' (m-isi-ov.h; s-bsd4-2.h or s-bsd4-3.h)
307:
308: 18.52 said to work on some sort of ISI machine.
309: Version 18.45 worked (running on a Optimum V (VME bus, 68020)
310: BSD 4.2 (3.05e) system). 18.42 is reported to work on
311: a Qbus 68010 system. Has not been tried on `WorkStation' `Cluster
312: Compute Node' `Cluster WorkStation' or `Server Node' (Love the
313: StudLYCaps)
314:
315: Compilation with -O is rumored to break something.
316:
317: On recent system versions, you may need to undefine the macro UMAX
318: in etc/loadst.c and src/getpagesize.h. They stupidly defined this
319: in a system header file, which confuses Emacs (which thinks that UMAX
320: indicates the Umax operating system).
321:
322: Intel 80386 (m-intel386.h; s-bsd4-2.h, s-usg5-2-2.h, s-usg5-3.h or s-xenix.h)
323:
324: Changes merged in 18.50 for all three operating systems.
325: If you are using Xenix, see notes above under Xenix.
326:
327: Some sysV.3 systems seem to have bugs in `opendir';
328: for them, alter `config.h' to define NONSYSTEM_DIR_LIBRARY
329: and undefine SYSV_SYSTEM_DIR.
330:
331: Iris 2500 (m-irist.h; s-iris3-5.h or s-iris3-6.h)
332:
333: Version 18 said to work; use s-irist3-5.h for system version 2.5
334: and s-iris3-6.h for system version 3.6.
335:
336: Iris 2500 Turbo (m-irist.h; s-iris3-5.h or s-iris3-6.h)
337:
338: 18.49 works. Use s-iris3-6.h for system versions 3.6 and up.
339: Note that the 3030 is the same machine as this.
340:
341: Iris 4D (m-iris4d.h; s-iris3-6.h)
342:
343: Changes for 18.49 are merged in 18.50. 18.52 seems to work.
344:
345: Note that the compilation of etc/loadst.c requires editing etc/Makefile.
346: See the comment in that file.
347:
348: Someone says that with the yellow pages you must change two definitions
349: in m-iris4d.h as follows:
350:
351: #define LIBS_MACHINE -lsun -lbsd -lPW -lmld
352: #define C_SWITCH_MACHINE -I/usr/include/sun -I/usr/include/bsd
353:
354: Macintosh
355:
356: We are boycotting Apple because of Apple's efforts to take away
357: our freedom to write compatible imitations of existing software.
358: If you value your freedom to write such programs, we urge you
359: not to buy from Apple, not to develop software for Apple, and
360: certainly not to accept a job with Apple.
361:
362: See the file APPLE in this directory for more information.
363:
364: Masscomp (m-masscomp.h; s-rtu.h)
365:
366: 18.36 worked on a 5500DP running RTU v3.1a and compiler version 3.2
367: with minor fixes that are included in 18.37. However, bizarre behavior
368: was reported for 18.36 on a Masscomp (model and version unknown but probably
369: a 68020 system). The report sounds like a compiler bug.
370:
371: A compiler bug affecting statements like
372: unsigned char k; unsigned char *p;... x = p[k];
373: has been reported for "C version 1.2 under RTU 3.1". We do not wish
374: to take the time to install the numerous workarounds required to
375: compensate for this bug; go complain to Masscomp.
376:
377: For RTU version 3.1, define FIRST_PTY_LETTER to be 'p' in s-rtu.h
378: (or #undef and redefine it in config.h) so that ptys will be used.
379:
380: GNU Emacs is said to have no chance of compiling on RTU versions
381: prior to v3.0.
382:
383: Megatest (m-mega68.h; s-bsd4-2.h)
384:
385: Emacs 15 worked; do not have any reports about Emacs 16 or 17
386: but any new bugs are probably not difficult.
387:
388: Mips (m-mips.h; s-usg5-2.h?)
389:
390: Changes merged in 18.39.
391:
392: NCR Tower 32 (m-tower32.h; s-usg5-2.h)
393:
394: Works as of 17.56.
395:
396: Nixdorf Targon 31 (m-targon31.h; s-usg5-2-2.h)
397:
398: m- file for version 17 is included in 18
399: but whether it works is not known.
400: src/unexec.c bombs if compiled with -O.
401: Note that the "Targon 35" is really a Pyramid.
402:
403: Nu (TI or LMI) (m-nu.h; s-usg5-2.h)
404:
405: Version 18 is believed to work.
406:
407: Plexus (m-plexus.h; s-usg5-2.h)
408:
409: Works as of 17.56.
410:
411: Pmax, Mips from DEC (m-pmax.h; s-bsd4-3.h)
412:
413: Minor changes merged in 18.55.
414:
415: Prime EXL (m-intel386.h, s-usg5-3.h)
416:
417: 18.54 should work.
418:
419: Pyramid (m-pyramid.h; s-bsd4-2.h)
420:
421: In OSx 4.0, it seems necessary to add the following two lines
422: to m-pyramid.h:
423: #define _longjmp longjmp
424: #define _setjmp setjmp
425:
426: In Pyramid system 2.5 there has been a compiler bug making
427: Emacs crash just after screen-splitting with Qnil containing 0.
428: A compiler that fixes this is Pyramid customer number 8494,
429: internal number 1923.
430:
431: Some versions of the pyramid compiler get fatal
432: errors when the -gx compiler switch is used; if this
433: happens to you, change src/m-pyramid.h to define
434: C_DEBUG_SWITCH with an empty definition.
435:
436: Some old system versions may require you to define PYRAMID_OLD
437: in when alloca.s is preprocessed, in order to define _longjmp and _setjmp.
438:
439: Sequent (m-sequent.h; s-bsd4-2.h)
440:
441: For balance and symmetry. Emacs 18.51 should work on system version
442: 3.0. 18.5[23] is said to work. Delete some lines at the end of
443: m-sequent.h for earlier system versions.
444:
445: SONY News (m-news.h; s-bsd4-2.h, or s-bsd4-3.h for system release 3)
446:
447: 18.52 should work.
448:
449: Stride (m-stride.h; s-usg5-2.h)
450:
451: Works (most recent news for 18.30) on their release 2.0.
452: For release 2.2, see the end of m-stride.h.
453: It may be possible to run on their V.1 system but changes
454: in the s- file would be needed.
455:
456: Sun 1, 2 and 3 (m-sun1.h, m-sun2.h, m-sun3.h; s-bsd4-2.h or s-sunos4.h)
457:
458: There are three m- files for different versions of SunOS.
459: All are derived from Berkeley 4.2. Emacs 17 has run on all of them.
460: Whether you should use m-sun1.h, m-sun2.h or m-sun3.h depends
461: on the VERSION OF THE OPERATING SYSTEM you have.
462: You will need to use m-sun3.h on Sun 2's running SunOS release 3.
463:
464: For SunOS release 4 on a Sun 3, use m-sun3.h and s-sunos4.h.
465: See the file etc/SUNBUG for how to solve problems caused by bugs in
466: the "export" version of SunOS 4.
467:
468: If you want to use SunWindows, define HAVE_SUN_WINDOWS
469: in config.h to enable a special interface called `emacstool'.
470: The definition must *precede* the #include "m-sun3.h".
471: System version 3.2 is required for this facility to work.
472:
473: We recommend that you instead use the X window system, which
474: has technical advantages, is an industry standard, and is also
475: free software.
476:
477: Note that Emacs on a Sun is not really as big as it looks.
478: As dumped, it includes around 200k of zeros between the
479: original text section and the original data section
480: (now remapped as part of the text). These are never
481: swapped in.
482:
483: To build a single Emacs that will run on Sun 2 and Sun 3
484: HARDWARE, just build it on the Sun 2.
485:
486: Sun 4 (m-sparc.h; s-bsd4-2.h or s-sunos4.h)
487:
488: Changes merged in 18.50. Some people say optimizing compilation
489: does not work; some say that -O2 (whatever that is) works
490: perhaps with a small change.
491:
492: Use s-sunos4.h for operating system version 4.
493: See the file etc/SUNBUG for how to solve problems caused by bugs in
494: the "export" version of SunOS 4.
495:
496: Sun Roadrunner (m-sun386.h; s-sunos4.h)
497:
498: Changes merged in 18.51.
499:
500: Tahoe (m-tahoe.h; s-bsd4-2.h or s-bsd4-3.h)
501:
502: 18.52 known to work on some Tahoes, but a compiler bug intervenes
503: on others. Some Emacs versions have worked in Unisys 1r4
504: (not in 1r3) and CCI I.21.
505:
506: If you have trouble compiling etc/loadst.c, turn off the definition
507: of DKSTAT_HEADER_FILE in m-tahoe.h.
508:
509: Tektronix 16000 box (6130?) (m-16000.h; s-bsd4-2.h)
510:
511: Emacs 17.61 worked.
512:
513: Tektronix 4300 (m-tex4300.h; s-bsd4-3.h)
514:
515: Emacs 18.51 should work.
516:
517: Ustation E30 (SS5E) (m-ustation.h; s-unipl5-2.h).
518:
519: Changes merged in 18.52; don't know whether they work.
520:
521: Vax running Berkeley Unix (m-vax.h; s-bsd4-1.h, s-bsd4-2.h or s-bsd4-3.h)
522:
523: Works.
524:
525: Vax running Ultrix (m-vax.h; s-bsd4-2.h or s-bsd4-3.h)
526:
527: Works. Note that "ultrix" is essentially 4.2 or 4.3, depending on version.
528:
529: Ultrix 3.0 has incompatibilities in its X library if you have the
530: Ultrix version of X. To solve them, you need to prevent XvmsAlloc.o
531: in Xlib from being used. Israel Pinkas says:
532:
533: I added the following lines to config.h after the X defines:
534:
535: #if defined(ultrix) && defined(X11)
536: #define OBJECTS_SYSTEM calloc.o
537: #endif
538:
539: Then I ran the following:
540:
541: ar x /usr/lib/libc.a calloc.o
542:
543: Vax running System V rel 2 (m-vax.h; s-usg5-2.h)
544:
545: 18.27 Works.
546:
547: Vax running System V rel 0 (m-vax.h; s-usg5-0.h)
548:
549: Works as of 18.36.
550:
551: Vax running VMS (m-vax.h; s-vms.h but on VMS they are m_vax.h and s_vms.h)
552:
553: 18.36 believed to work. Addition of features is necessary to make
554: this Emacs version more usable.
555:
556: Whitechapel MG1 (m-mg1.h, s-?)
557:
558: May work. Supposedly no changes were needed except the m- file.
559: I do not know what Unix version runs on them.
560:
561: Wicat (m-wicat.h; s-usg5-2.h)
562:
563: Changes merged as of 18.6; whether they work is unknown.
564: See comments in m-wicat.h for things you should change
565: depending on the system and compiler version you have.
566:
567: Local variables:
568: mode: text
569: fill-prefix: " "
570: End:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.