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