0d3bbf35ea039fbfa24c6dd142efe51dbfcea9dd
[chise/xemacs-chise.git.1] / etc / MACHINES
1 This is a list of the status of GNU Emacs on various machines and systems.
2
3 For each system and machine, we give the configuration name you should
4 pass to the `configure' script to prepare to build Emacs for that
5 system/machine.
6
7 The `configure' script uses the configuration name to decide which
8 machine and operating system description files `src/config.h' should
9 include.  The machine description files are all in `src/m', and have
10 names similar to, but not identical to, the machine names used in
11 configuration names.  The operating system files are all in `src/s',
12 and are named similarly.  See the `configure' script if you need to
13 know which configuration names use which machine and operating system
14 description files.
15
16 If you add support for a new configuration, add a section to this
17 file, and then edit the `configure' script to tell it which
18 configuration name(s) should select your new machine description and
19 system description files.
20
21 \f
22 Here are the configurations Emacs is intended to work with, with the
23 corresponding configuration names.  You can postpend version numbers
24 to operating system names (i.e. sunos4.1) or architecture names (i.e.
25 hppa1.1).  If you leave out the version number, the `configure' script
26 will configure Emacs for the latest version it knows about.
27
28 *************************************************************************
29 *                                                                       *
30 *   NOTE: this file is kept in sync with the FSF version, though we     *
31 *   expect the information here to be mostly accurate for XEmacs.       *
32 *   Bear in mind that the version numbers mentioned in the text below   *
33 *   are the FSF numbers, not the Lucid numbers.  For comparison,        *
34 *   FSFmacs 19.26 roughly corresponds to XEmacs 19.11.                  *
35 *                                                                       *
36 *************************************************************************
37
38 Acorn RISCiX (arm-acorn-riscix1.2)
39
40   Emacs 19.29 has changes that ought to support RISCiX 1.2.
41
42   Due to a bug in the RISCiX C compiler (3.4.5), emacs must
43   be built with gcc (versions 2.5.8 onwards).
44
45   In addition, you will need GNU sed and GNU make, as the RISCiX release
46   versions of these utilities cannot cope with building emacs-19!
47
48     GNU sed should be configured with:
49
50     env 'DEFS=-Dgetopt=gnu_getopt -Dopterr=gnu_opterr -Doptind=gnu_optind \
51             -Doptarg=gnu_optarg' ./configure
52
53     GNU make (3.72+) should be configured with:
54
55     env 'CFLAGS=-Dgetopt=gnu_getopt -Dopterr=gnu_opterr -Doptind=gnu_optind \
56               -Doptarg=gnu_optarg' ./configure
57
58   Emacs may be configured to use the X toolkit, by adding --with-x-toolkit
59   to the configure command.  If you do this, you will need to edit the line
60   in src/Makefile which defines LIBW (about line 59) to read:
61
62   LIBW= -lXaw_n
63
64   This ensures that the non-shared widget library is used.
65
66   It is unlikely that this version of emacs will work with RISCiX 1.1.
67
68 Alliant (fx80-alliant-bsd):
69
70   18.52 worked on system version 4.  Previous Emacs versions were
71   known to work on previous system versions.
72
73   If you are using older versions of their operating system, you may
74   need to edit `src/config.h' to use `m/alliant1.h' (on version 1) or
75   `m/alliant.h' (on versions 2 and 3).
76
77 Alliant FX/2800 (i860-alliant-bsd)
78
79   Known to work with 19.26 and OS version 2.2, compiler version 1.3.
80
81 Alpha (DEC) running OSF/1 (alpha-dec-osf1)
82
83   Worked as of Lucid Emacs 19.8.
84
85 Altos 3068 (m68k-altos-sysv)
86
87   18.52 was said to work, provided you don't compile unexec.c with -O.
88
89 Amdahl UTS (580-amdahl-sysv)
90
91   Small changes for 18.38 were merged in 18.39.  It is mostly
92   working, but at last report a bug sometimes causes Emacs to
93   grab very large amounts of memory.  No fix or explanation
94   has yet been reported.  It may be possible to find this bug
95   if you find which Emacs command it happens within and then
96   run that command with a breakpoint set at malloc.
97
98   The 5.2u370 compiler is so brain damaged that it is not
99   even worth trying to use it.  Success was obtained with the
100   uts native C compiler on uts version 5.2.5.
101
102 Apollo running Domain (m68k-apollo-domain)
103
104   19.29 has a few patches that ought to make things work.
105
106   There are reports of bugs in cc -O on this system.
107
108   In `lib-src/Makefile', don't expect emacsclient and emacsserver to
109   compile.  You might want to remove them from your makefile.
110
111   The Apollo has a bizarre operating system which does not permit
112   Emacs to be dumped with preloaded pure Lisp code.  Therefore, each
113   time you start Emacs on this system, the standard Lisp code is loaded
114   into it.  Expect it to take a long time.  You can prevent loading of
115   the standard Lisp code by specifying the -nl switch.  It must
116   come at the beginning of the command line; only the -t and -batch
117   switches may come before it.
118
119
120   Here is a design for a method of dumping and reloading the relevant
121   necessary impure areas of Emacs.
122
123   On dumping, you need to dump only the array `pure' plus the
124   locations that contain values of forwarded Lisp variables or that are
125   protected for garbage collection.  The former can be found by a
126   garbage- collection-like technique, and the latter are in the
127   staticprolist vector (see alloc.c for both things).
128
129   Reloading would work in an Emacs that has just been started; except
130   when a switch is specified to inhibit this, it would read the dump
131   file and set all the appropriate locations.  The data loaded must be
132   relocated, but that's not hard.  Those locations that are of type
133   Lisp_Object can be found by a technique like garbage-collection, and
134   those of them that point to storage can be relocated.  The other data
135   read from the file will not need to be relocated.
136
137   The switch to inhibit loading the data base would be used when it
138   is time to dump a new data base.
139
140   This would take a few seconds, which is much faster than loading
141   the Lisp code of Emacs from scratch.
142
143 AT&T 3b2, 3b5, 3b15, 3b20 (we32k-att-sysv)
144
145   Emacs will probably not work with certain kernel constants too small. 
146
147   In param.h CDLIMIT should be at least (1L << 12) in order to allow 
148   processes to write up to 2 Mbyte files.  This parameter is configurable
149   by normal means in /etc/master.d/kernel; examine that file for the
150   symbol CDLIMIT or ULIMIT, and raise it by several powers of 2.  Then
151   do normal kernel rebuild things via "cd /boot; mkboot -k KERNEL" and so
152   forth.
153
154   In seg.h NSEGP and STACKSEG should be at least 16 and 4 respectively
155   to allow processes with total size of up to 2Mbytes.
156   However, I'm told it is unlikely this would fail to be true.
157
158   The MAXMEM may also prevent Emacs from running.  The file
159   3B-MAXMEM in this directory explains how to increase MAXMEM.
160
161   On some of these machines, you may need to define IN_SCCS_ID
162   in config.h to make Emacs work.  Supposedly you can tell whether
163   this is necessary by checking something in /usr/include/sys/time.h;
164   we do not know precisely what.
165
166 AT&T 7300 or 3b1 (m68k-att-sysv)
167
168   18.52 worked.  If you have strange troubles with dumping
169   Emacs, delete the last few lines from `src/m/7300.h' and recompile.
170   These lines are supposed to produce a sharable executable.
171
172   `src/m/7300.h' defines SHORTNAMES because operating system versions
173   older than 3.5 did not support long symbol names.  Version 3.5 does
174   support them, so you can remove the #define SHORTNAMES in that
175   version.
176
177 Bull DPX/2 models 2nn or 3nn (m68k-bull-sysv3)
178
179   Minor fixes merged into 19.19, which should work with CC or GCC.
180
181   You should compile with all the POSIX stuff: undef _SYSV and define
182   _POSIX_SOURCE, _XOPEN_SOURCE and _BULL_SOURCE.
183
184   On bos2.00.45 there is a bug that makes the F_SETOWN fcntl
185   call enters in an infinite loop. F_SETOWN_BUG has been defined to avoid 
186   calling it.
187
188 Bull DPX/20 (rs6000-bull-bosx)
189
190   Version 19 works.
191
192 Bull sps7 (m68k-bull-sysv2)
193
194   Changes partially merged in version 19, but some fixes are probably required.
195
196 CCI 5/32, 6/32
197
198   See "Tahoe".
199
200 Celerity (celerity-celerity-bsd4.2)
201
202   Version 18.49 worked.  This configuration name is a hack, because we
203   don't know the processor used by Celerities.  If someone
204   who uses a Celerity could get in touch with us, we can teach
205   config.sub a better name for the configuration.
206
207 Clipper (clipper-???)
208
209   Version 19 has support for some brand of clipper system.  If you
210   have successfully built Emacs 19 on some sort of clipper system, let
211   us know so we can flesh out this entry.
212
213   Note that the Orion 105 is also a clipper, but some system-related
214   parameters are different.
215
216 Convex (c1-convex-bsd, c2-convex-bsd, c32-convex-bsd, c34-convex-bsd,
217         c38-convex-bsd)
218
219   Support updated and residual bugs fixed in 19.26.
220
221 Cubix QBx/386 (i386-cubix-sysv)
222
223   Changes merged in 19.1.  Systems before 2/A/0 may fail to compile etags.c
224   due to a compiler bug.
225
226 Cydra 5 (cydra-cydrome-sysv)
227
228   18.51 worked in one version of their operating system but stopped
229   working in a newer version.  This has not been fixed.
230
231 Data General Aviion (m88k-dg-dgux)
232
233   19.23 works; however, the GCC provided with DGUX 5.4R3.00 fails to
234   compile src/emacs.c.  GCC 2.5.8 does work.
235   The 19.26 pretest was reported to work; no word on which compiler.
236
237   System versions other than DGUX 5.4R3.00 have not been tested.
238
239 DECstation (mips-dec-ultrix or mips-dec-osf)
240
241   This machine is the older Mips-based DECstation.
242   Emacs should now work on the Alpha CPU.
243
244   19.25 works on Ultrix 4.2.  The 19.26 pretest was reported to work
245   on Ultrix 4.2a and on 4.4.
246
247   One user reported 19.25 did not work at all with --with-x-toolkit
248   using X11R5 patch level 10, but worked ok with X11R5 pl26.
249
250   See under Ultrix for problems using X windows on Ultrix.
251   Note that this is a MIPS machine.
252
253   For Ultrix versions 4.1 or earlier, you may need to define
254   SYSTEM_MALLOC in `src/m/pmax.h', because XvmsAlloc.o in libX11.a seems
255   to insist on defining malloc itself.
256
257   For Ultrix versions prior to 4.0, you may need to delete
258   the definition of START_FILES from `src/m/pmax.h'.
259
260 Motorola Delta 147 (m68k-motorola-sysv)
261
262   The EMacs 19.26 pretest was reported to work.
263
264   Motorola Delta boxes running System V/68 release 3.
265   Tested on 147 board with SVR3V7, no X and gcc.
266   Tested on 167 board with SVR3V7, no X, cc, gnucc and gcc.
267   Reports say it works with X too.
268
269   The installation script chooses the compiler itself.  gnucc is
270   preferred.
271
272 Motorola Delta 187 (m88k-motorola-sysv,
273                     m88k-motorola-sysvr4, or
274                     m88k-motorola-m88kbcs)
275
276   The 19.26 pretest was reported to run on SVR3.  However, if you
277   use --with-x-toolkit on svr3, you will have problems compiling some
278   files because time.h and sys/time.h get included twice.
279   One fix is to edit those files to protect against multiple inclusion.
280
281   As of version 19.13, Emacs was reported to run under SYSVr3 and SYSVr4.
282  
283 Dual running System V (m68k-dual-sysv)
284
285   As of 17.46, this worked except for a few changes
286   needed in unexec.c.
287
288 Dual running Uniplus (m68k-dual-uniplus)
289
290   Worked, as of 17.51.
291
292 Elxsi 6400 (elxsi-elxsi-sysv)
293
294   Changes for 12.0 release are in 19.1.
295   Dumping should work now.
296
297 Encore machine (ns16k-encore-bsd)
298
299   This machine bizarrely uses 4.2BSD modified to use the COFF format
300   for object files.  Works (as of 18.40).  For the APC processor you
301   must enable two lines at the end of `src/s/umax.h', which are commented
302   out in the file as distributed.
303
304   WARNING: If you compile Emacs with the "-O" compiler switch, you
305   must also use the "-q enter_exits" switch so that all functions have
306   stack frames.  Otherwise routines that call `alloca' all lose.
307
308   A kernel bug in some system versions causes input characters to be lost
309   occasionally.
310
311 GEC 63 (local-gec63-usg5.2)
312
313   Changes are partially merged in version 18, but certainly require
314   more work.  Let us know if you get this working, and we'll give it a
315   real configuration name.
316
317 Gould Power Node (pn-gould-bsd4.2 or pn-gould-bsd4.3)
318
319   18.36 worked on versions 1.2 and 2.0 of the operating system.
320
321   On UTX/32 2.0, use pn-gould-bsd4.3.
322
323   On UTX/32 1.2 and UTX/32S 1.0, use pn-gould-bsd4.2 and note that
324   compiling `lib-src/sorted-doc' tickles a compiler bug: remove the -g
325   flag to cc in the makefile.
326
327   UTX/32 1.3 has a bug in the bcopy library routine.  Fix it by 
328   #undef BSTRING in `src/m/gould.h'.
329
330   Version 19 incorporates support for releases 2.1 and later of UTX/32.
331   A site running a pre-release of 2.1 should #define RELEASE2_1 in config.h.
332
333 Gould NP1 (np1-gould-bsd)
334
335   Version 19 supposedly works.
336
337 Harris Night Hawk (m68k-harris-cxux or m88k-harris-cxux)
338
339   This port was added in 19.23.  The configuration actually tested was
340   a Night Hawk 4800 running CX/UX 7.0.
341
342   If you have GCC ported and want to build with it, you probably need to
343   change things (like compiler switches) defined in the s/cxux.h file.
344
345   With CX/UX 7.0 and later releases, you need to build after setting the
346   SDE_TARGET environment variable to COFF (a port using ELF and shared
347   libraries has not yet been done).
348
349 Honeywell XPS100 (xps100-honeywell-sysv)
350
351   Config file added in version 19.
352
353 Hewlett-Packard 9000 series 200 or 300 (m68k-hp-bsd or m68k-hp-hpux7.)
354
355   Version 19 works under BSD.  The 19.26 pretest was reported
356   to work on HPUX 9.
357
358   These machines are 68000-series CPUs running HP/UX
359   (a derivative of sysV with some BSD features) or BSD 4.3 ported by Utah.
360   The operating system suffix determines which system Emacs is built for.
361
362   Series 200 HPUX runs Emacs only if it has the "HP/UX upgrade".
363
364   If you are running HP/UX release 8.0 or later, you need the optional
365   "C/ANSI C" software in order to build Emacs (older releases of HP/UX
366   do not require any special software).  If the file "/etc/filesets/C"
367   exists on your machine, you have this software, otherwise you do not.
368
369   Note that HP has used two incompatible assembler syntaxes,
370   and has recently changed the format of C function frames.
371   `src/crt0.c' and `src/alloca.s' have been conditionalised for the new
372   assembler and new function-entry sequence.  You may need to define
373   OLD_HP_ASSEMBLER if you are using an older hpux version.  If you
374   have an official (bought from HP) series 300 machine you have
375   the new assembler.  Kernels that are 5.+ or later have new
376   assembler.  A Series 200 that has been upgraded to a 68010
377   processor and a 5.+ kernel has the new compiler.
378
379   Define C_SWITCH_MACHINE to be +X to make a version of Emacs that
380   runs on both 68010 and 68020 based HP/UX's.
381
382   Define HPUX_68010 if you are using the new assembler, for
383   a system that has a 68010 without a 68881.  This is to say,
384   a s200 (upgraded) or s310.
385
386   Define the symbol HPUX_NET if you have the optional network features
387   that include the `netunam' system call.  This is referred to as
388   Network Services (NS/9000) in HP literature.
389
390 HP 9000 series 500: not supported.
391
392   The series 500 has a seriously incompatible memory architecture
393   which relocates data in memory during execution of a program,
394   and support for it would be difficult to implement.
395
396 HP 9000 series 700 or 800 (Spectrum) (hppa1.0-hp-hpux or hppa1.1-hp-hpux
397                                       or ...hpux9shr)
398
399   19.26 is believed to work on HPUX 9 provided you compile with GCC.
400   As of version 19.16, Emacs was reported to build (using GCC) and run
401   on HP 9000/700 series machines running HP/UX versions 8.07 and 9.01.
402
403   Use hppa1.1 for the 700 series and hppa1.0 for the 800
404   series machines.  (Emacs may not actually care which one you use.)
405
406   Use hppa1.1-hp-hpux9shr to use shared libraries on HPUX version 9.
407   You may need to create the X libraries libXaw.a and libXmu.a from
408   the MIT X distribute, and you may need to edit src/Makefile's
409   definition of LIBXT to look like this:
410
411      LIBXT= $(LIBW) -lXmu -lXt $(LIBXTR6) -lXext
412
413   Some people report trouble using the GNU memory allocator under
414   HP/UX version 9.  The problems often manifest as lots of ^@'s in the
415   buffer.
416   
417   We are told that these problems go away if you obtain the latest
418   patches for the HP/UX C compiler.  James J Dempsey
419   <jjd@spserv.bbn.com> says that this set of versions works for him:
420     /bin/cc:
421             HP92453-01 A.09.28 HP C Compiler
422     /lib/ccom:
423             HP92453-01 A.09.28 HP C Compiler
424              HP-UX SLLIC/OPTIMIZER  HP-UX.09.00.23  02/18/93
425              Ucode Code Generator - HP-UX.09.00.23.5 (patch)  2/18/93
426
427   For 700 series machines, the HP-UX patch needed is known as
428   PHSS_2653.  (Perhaps for 800 series machines as well; we don't
429   know.)  If you are on the Internet, you should be able to obtain
430   this patch by using telnet to access the machine
431   support.mayfield.hp.com and logging in as "hpslreg" and following
432   the instructions there.  Do not ask FSF for further support on
433   this.  If you have any trouble obtaining the patch, contact HP
434   Software Support.
435
436   If your buffer fills up with nulls (^@) at some point, it could well
437   be that problem.  That problem does not happen when people use GCC
438   to compile Emacs.  On the other hand, the HP compiler version 9.34
439   was reported to work for the 19.26 pretest.  9.65 was also reported to work.
440
441   If you turn on the DSUSP character (delayed suspend),
442   Emacs 19.26 does not know how to turn it off on HPUX.
443   You need to turn it off manually.
444
445   If you are running HP/UX release 8.0 or later, you need the optional
446   "C/ANSI C" software in order to build Emacs (older releases of HP/UX
447   do not require any special software).  If the file "/etc/filesets/C"
448   exists on your machine, you have this software, otherwise you do not.
449
450 High Level Hardware Orion (orion-highlevel-bsd)
451
452   This is the original microprogrammed hardware.
453   Machine description file ought to work.
454
455 High Level Hardware Orion 1/05 (clipper-highlevel-bsd)
456
457   Changes merged in 18.52.  This is the one with the Clipper cpu.
458   Note that systems which lack NFS need LOAD_AVE_TYPE changed to `double'.
459
460   C compiler has a bug; it loops compiling eval.c.
461   Compile it by hand without optimization.
462
463 IBM PS/2 (i386-ibm-aix1.1 or i386-ibm-aix1.2)
464
465   Changes merged in version 19.  You may need to copy
466   /usr/lib/samples/hft/hftctl.c to the Emacs src directory.
467
468   i386-ibm-aix1.1 may not work with certain new X window managers, and
469   may be suboptimal.
470
471 IBM RS/6000 (rs6000-ibm-aix)
472
473   Emacs 19.26 is believed to work; its pretest was tested.
474
475   At last report, Emacs didn't run well on terminals.  Informed
476   persons say that the tty VMIN and VTIME settings have been
477   corrupted; if you have a fix, please send it to us.
478
479   Compiling with -O using the IBM compiler has been known
480   to make Emacs work incorrectly.  It's reported that on
481   AIX 3.2.5 with an IBM compiler earlier than 1.03.00.14,
482   cc -O fails for some files.  You need to install any
483   PTF containing APAR #IX42810 to bring the compiler to
484   the 1.03.00.14 level to allow optimized compiles.
485   Alternatively, recompiling just emacs.c and extents.c
486   without optimization seems to do the trick as well.
487
488   There are reports that IBM compiler versions earlier than 1.03.00.02
489   fail even without -O.
490
491   As of 19.11, if you strip the Emacs executable, it ceases to work.
492
493   If you are using AIX 3.2.3, you may get a core dump when loading
494   ange-ftp.  You may be able to fix the problem by defining LIBS_TERMCAP
495   as -ltermcap -lcurses.  Please tell us if this fails to work.
496
497   If anyone can fix the above problems, or confirm that they don't happen
498   with certain versions of various programs, we would appreciate it.
499
500 IBM RT/PC (romp-ibm-bsd or romp-ibm-aix)
501
502   Use romp-ibm-bsd for the 4.2-like system and romp-ibm-aix for AIX.
503   19.22 is reported to work under bsd.  We don't know about AIX.
504
505   On BSD, if you have trouble, try compiling with a different compiler.
506
507   On AIX, the file /usr/lib/samples/hft/hftctl.c must be compiled into
508   hftctl.o, with this result left in the src directory (hftctl.c is
509   part of the standard AIX distribution).
510
511   window.c must not be compiled with -O on AIX.
512
513 Integrated Solutions `Optimum V' (m68k-isi-bsd4.2 or -bsd4.3)
514
515   18.52 said to work on some sort of ISI machine.
516   Version 18.45 worked (running on a Optimum V (VME bus, 68020)
517   BSD 4.2 (3.05e) system).  18.42 is reported to work on
518   a Qbus 68010 system.  Has not been tried on `WorkStation' `Cluster
519   Compute Node' `Cluster WorkStation' or `Server Node'  (Love the
520   StudLYCaps) 
521
522   Compilation with -O is rumored to break something.
523
524   On recent system versions, you may need to undefine the macro UMAX
525   in `lib-src/loadst.c' and `src/getpagesize.h'.  They stupidly defined this
526   in a system header file, which confuses Emacs (which thinks that UMAX
527   indicates the Umax operating system).
528
529 Intel 386 (i386-*-isc,          i386-*-esix,
530            i386-*-xenix,        i386-*-linux,    i386-*-freebsd,
531            i386-intsys-sysv,    i386-*-sysv3,
532            i386-*-sysv4,        i386-*-sysv4.2,
533            i386-*-sysv5.3,      i386-*-bsd4.2,
534            i386-*-sco3.2v4,     i386-*-bsd386,   i386-*-386bsd
535            or i486... or i586...)
536
537   In the above configurations, * means that the manufacturer's name
538   you specify does not matter, and you can use any name you like
539   (but it should not contain any dashes or stars).
540
541   When using the ISC configurations, be sure to specify the isc
542         version number - for example, if you're running ISC 3.0, use
543         i386-unknown-isc3.0 as your configuration name.
544   Use i386-*-esix for Esix; Emacs runs as of version 19.6.
545   Use i386-*-linux for GNU/Linux systems; Emacs runs as of version 19.26.
546   Use i386-intsys-sysv for Integrated Solutions 386 machines.
547   It may also be correct for Microport systems.
548   Use i386-*-sco3.2v4 for SCO 3.2v4; Emacs runs as of version 19.26.
549
550   On GNU/Linux systems, Emacs 19.23 was said to work properly with libc
551   version 4.5.21, but not with 4.5.19.  If your system uses QMAGIC
552   for the executable format, you must edit config.h to define LINUX_QMAGIC.
553
554   On GNU/Linux, configure may fail to put these definitions in config.h:
555
556     #define HAVE_GETTIMEOFDAY
557     #define HAVE_MKDIR
558     #define HAVE_RMDIR
559
560   To work around the problem, add those definitions by hand.
561   It is possible that this problem happens only with X11R6
562   or that newer system versions have fixed it.
563
564   The 19.26 pretest was reported to work on SVR4.3 and on Freebsd.
565
566   Use i386-*-bsd386 for BSDI BSD/386; Emacs runs as of version 19.23.
567   Make on that system is broken; use GNU make instead.
568   Shell bugs in version 1.0 of BSD/386 cause configure
569   to do the wrong thing with --with-x-toolkit; the workaround is to edit
570   configure to run another shell such as bash.
571
572   For System V release 3, use i386-*-sysv3.
573   For System V release 4, use i386-*-sysv4.
574   For System V release 4.2, use i386-*-sysv4.2.
575
576   If you are using Xenix, see notes at end under Xenix.
577   If you are using Esix, see notes at end under Esix.
578   If you are using SCO Unix, see notes at end under SCO.
579
580   On 386bsd, netbsd and freebsd, you should use GNU make, not the
581   system's make.  Assuming it's installed as gmake, do `gmake install
582   MAKE=gmake'.
583
584   If you are using System V release 4.2, you may find that `cc -E'
585   puts spurious spaces in `src/xmakefile'.  If that happens,
586   specify CPP=/lib/cpp as an option when you run make.
587   There is no problem if you compile with GCC.
588     
589   Note that use of Linux with GCC 2.4 and the DLL 4.4 libraries
590   requires the experimental "net 2" network patches (no relation to
591   Berkeley Net 2).  There is a report that (some version of) Linux
592   requires including `/usr/src/linux/include/linux' in buffer.c
593   but no coherent explanation of why that might be so.  If it is so,
594   in current versions of Linux, something else should probably be changed.
595
596   Some sysV.3 systems seem to have bugs in `opendir';
597   for them, alter `config.h' to define NONSYSTEM_DIR_LIBRARY
598   and undefine SYSV_SYSTEM_DIR.
599
600   If you use optimization on V.3, you may need the option -W2,'-y 0'
601   to prevent certain faulty optimization.
602
603   On 386/ix, to link with shared libraries, add #define USG_SHARED_LIBRARIES
604   to config.h.
605
606   On SCO, there are problems in regexp matching when Emacs is compiled
607   with the system compiler.  The compiler version is "Microsoft C
608   version 6", SCO 4.2.0h Dev Sys Maintenance Supplement 01/06/93;
609   Quick C Compiler Version 1.00.46 (Beta).  The solution is to compile
610   with GCC.
611
612   On ISC systems (2.02 and more recent), don't try to use the versions
613   of X that come with the system; use XFree86 instead.
614
615   There is no consistency in the handling of certain system header files
616   on V.3.
617
618   Some versions have sys/sioctl.h, and require it in sysdep.c.
619   But some versions do not have sys/sioctl.h.
620   For a given version of the system, this may depend on whether you have
621   X Windows or TCP/IP.  Define or undefine NO_SIOCTL_H in config.h
622   according to whether you have the file.
623
624   Likewise, some versions have been known to need sys/ttold.h, sys/stream.h,
625   and sys/ptem.h included in sysdep.c.  If your system has these files,
626   try defining NEED_PTEM_H in config.h if you have trouble without it.
627
628   You may find that adding -I/usr/X/include or -I/usr/netinclude or both
629   to CFLAGS avoids compilation errors on certain systems.
630
631   Some versions convince sysdep.c to try to use `struct tchars'
632   but define `struct tc' instead; add `#define tchars tc'
633   to config.h to solve this problem.
634
635 Iris 2500 and Iris 2500 Turbo (m68k-sgi-iris3.5 or m68k-sgi-iris3.6)
636
637   Version 18 was said to work; use m68k-sgi-iris3.5 for system version 2.5
638   and m68k-sgi-iris3.6 for system version 3.6.
639   Note that the 3030 is the same as the Iris 2500 Turbo.
640
641 Iris 4D (mips-sgi-irix[456].*)
642
643   The 19.26 pretest was reported to work on IRIX 4.0.5 and 5.2.
644   19.23 was reported to work on IRIX 5.2, but you may need to install
645   the "compiler_dev.hdr.internal" subsystem in order to compile unexelfsgi.c.
646   19.22 was known to work on all Silicon Graphics machines running
647   IRIX 4.0.5 or IRIX 5.1.
648
649   Compiling with -O using IRIX compilers prior to 3.10.1 may not work.
650   Don't use -O or use GCC instead.
651
652   Most IRIX 3.3 systems do not have an ANSI C compiler, but a few do.
653   Compile Emacs 18 with the -cckr switch on these machines.
654
655   There is a bug in IRIX 3.3 that can sometimes leave ptys owned by root
656   with a permission of 622.  This causes malfunctions in use of
657   subprocesses of Emacs.  Irix versions 4.0 and later with GNU Emacs
658   versions 18.59 and later fix this bug.
659
660 Masscomp (m68k-masscomp-rtu)
661
662   18.36 worked on a 5500DP running RTU v3.1a and compiler version 3.2
663   with minor fixes that are included in 18.37.  However, bizarre behavior
664   was reported for 18.36 on a Masscomp (model and version unknown but probably
665   a 68020 system).  The report sounds like a compiler bug.
666
667   A compiler bug affecting statements like 
668     unsigned char k; unsigned char *p;... x = p[k];
669   has been reported for "C version 1.2 under RTU 3.1".  We do not wish
670   to take the time to install the numerous workarounds required to
671   compensate for this bug.
672
673   For RTU version 3.1, define FIRST_PTY_LETTER to be 'p' in `src/s/rtu.h'
674   (or #undef and redefine it in config.h) so that ptys will be used.
675
676   GNU Emacs is said to have no chance of compiling on RTU versions
677   prior to v3.0.
678
679 Megatest (m68k-megatest-bsd)
680
681   Emacs 15 worked; do not have any reports about Emacs 16 or 17
682   but any new bugs are probably not difficult.
683
684 Mips (mips-mips-riscos, mips-mips-riscos4.0, or mips-mips-bsd)
685
686   The C compiler on Riscos 4.51 dumps core trying to optimize
687   parts of Emacs.  Try without optimization or try GCC.
688
689   Meanwhile, the linker on that system returns success even if
690   there are undefined symbols; as a result, configure gets the
691   wrong answers to various questions.  No work-around is known
692   except to edit src/config.h by hand to indicate which functions
693   don't exist.
694
695   Use mips-mips-riscos4.0 for RISCOS version 4.
696   Use mips-mips-bsd with the BSD world.
697
698   Note that the proper configuration names for DECstations are
699   mips-dec-ultrix and mips-dec-osf.
700
701   If you are compiling with GCC, then you must run fixincludes;
702   the alternative of using -traditional won't work because
703   the definition of SIGN_EXTEND_CHAR uses the keyword `signed'.
704
705   If the SYSV world is the default, then you probably need the following
706   line in etc/Makefile:
707
708     CFLAGS= -g -systype bsd43
709
710   Some operating systems on MIPS machines give SIGTRAP for division by
711   zero instead of the usual signals.  The only real solution is to fix
712   the system to give a proper signal.
713
714   In the meantime, you can change init_data in data.c if you wish.
715   Change it to handle SIGTRAP as well as SIGFPE.  But this will have a
716   great disadvantage: you will not be able to run Emacs under a
717   debugger.  I think crashing on division by zero is a lesser problem.
718
719   dsg@mitre.org reported needing to use --x-libraries=/bsd43/usr/lib
720   on a riscos4bsd site.  But it is not clear whether this is needed in
721   general or only because of quirks on a particular site.
722
723 National Semiconductor 32000 (ns32k-ns-genix)
724
725   This is for a complete machine from National Semiconductor,
726   running Genix.  Changes merged in version 19.
727
728 NCR Tower 32 (m68k-ncr-sysv2 or m68k-ncr-sysv3)
729
730   If you are running System V release 2, use m68k-ncr-sysv2.
731   If you are running System V release 3, use m68k-ncr-sysv3.
732
733   These both worked as of 18.56.  If you change `src/ymakefile' so that
734   CFLAGS includes C_OPTIMIZE_SWITCH rather than C_DEBUG_SWITCH, check
735   out the comments in `src/m/tower32.h' (for System V release 2) or
736   `src/m/tower32v3.h' (for System V release 3) about this.
737
738   There is a report that compilation with -O did not work with 18.54
739   under System V release 2.
740
741 NCR Intel system (i386-ncr-sysv4.2)
742
743   This system works in 19.31, but if you don't link it with GNU ld,
744   you may need to set LD_RUN_PATH at link time to specify where
745   to find the X libraries.
746
747 NeXT (m68k-next-nextstep)
748
749   Emacs 19 has not been tested extensively yet, but it seems to work
750   in a NeXTStep 3.0 terminal window, and under the X server called
751   co-Xist.  You may need to specify -traditional when src/Makefile
752   builds xmakefile.
753
754   NeXT users might want to implement direct operation with NeXTStep,
755   but from the point of view of the GNU project, that is a
756   distraction.
757
758   Thanks to Thorsten Ohl for working on the NeXT port of Emacs 19.
759
760 Nixdorf Targon 31 (m68k-nixdorf-sysv)
761
762   Machine description file for version 17 is included in 18
763   but whether it works is not known.
764   `src/unexec.c' bombs if compiled with -O.
765   Note that the "Targon 35" is really a Pyramid.
766
767 Nu (TI or LMI) (m68k-nu-sysv)
768
769   Version 18 is believed to work.
770
771 Paragon OSF/1 (i860-intel-osf1)
772
773   Changes merged in 19.29.
774
775   There is a bug in OSF/1 make which claims there is a syntax error
776   in the src/xmakefile.  You can successfully build emacs with:
777
778         pmake MAKE=pmake
779
780 Plexus (m68k-plexus-sysv)
781
782   Worked as of 17.56.
783
784 Pmax (DEC Mips)  (mips-dec-ultrix or mips-dec-osf1)
785
786   See under DECstation, above.
787
788 Prime EXL (i386-prime-sysv)
789
790   Minor changes merged in 19.1.
791
792 Pyramid (pyramid-pyramid-bsd)
793
794   The 19.26 pretest was observed to work on OSx 5.0, but it is necessary
795   to edit gmalloc.c.  You must add #include <sys/types.h> at the top,
796   and delete the #define for size_t.
797
798   You need to build Emacs in the Berkeley universe with
799   the `ucb' command, as in `ucb make' or `ucb build-install'.
800   
801   In OSx 4.0, it seems necessary to add the following two lines
802   to `src/m/pyramid.h':
803      #define _longjmp longjmp
804      #define _setjmp setjmp
805
806   In Pyramid system 2.5 there has been a compiler bug making
807   Emacs crash just after screen-splitting with Qnil containing 0.
808   A compiler that fixes this is Pyramid customer number 8494,
809   internal number 1923.
810
811   Some versions of the pyramid compiler get fatal
812   errors when the -gx compiler switch is used; if this
813   happens to you, change `src/m/pyramid.h' to define
814   C_DEBUG_SWITCH with an empty definition.
815
816   Some old system versions may require you to define PYRAMID_OLD
817   in when alloca.s is preprocessed, in order to define _longjmp and _setjmp.
818
819 Sequent Balance (ns32k-sequent-bsd4.2 or ns32k-sequent-bsd4.3)
820
821   Emacs 18.51 worked on system version 3.0.  18.52 is said to work.
822   Delete some lines at the end of `src/m/sequent.h' for earlier system
823   versions.
824
825 Sequent Symmetry (i386-sequent-bsd, i386-sequent-ptx)
826
827   Emacs 19 should work on Dynix (BSD).  However, if you compile with
828   the Sequent compiler, you may find Emacs does not restore the
829   terminal settings on exit.  If this happens, compile with GCC.
830
831   Emacs 19.27 contains patches that should support
832   DYNIX/ptx 1.4 and 2.1 with the native cc compiler.
833
834   Gcc can't compile src/process.c due to a non-standard Sequent asm
835   keyword extension supported by cc and used for the network byte/word
836   swapping functions in the PTX /usr/include/netinet/in.h file.  Gcc
837   2.5.8 includes the file <sys/byteorder.h> which can be included into
838   netinet/in.h to perform these byte/word swapping functions in the
839   same manner.  Patches have been submitted to the FSF against gcc
840   2.6.0 to fix this problem and allow Emacs to be built with gcc.
841
842   If your machine does not have TCP/IP installed, you will have to edit the
843   src/s/ptx.h file and comment out #define TCPIP_INSTALLED.
844
845 Siemens Nixdorf RM600 and RM400 (mips-siemens-sysv4)
846
847   Changes merged in 19.29.  This configuration should also work for
848   Pyramid MIS Server running DC-OSX 1.x.  The version configured with
849   `--with-x' works without any modifications, but `--with-x-toolkit'
850   works only if the Athena library and the Toolkit library are linked
851   statically.  For this, edit `src/Makefile' after the `configure' run
852   and modify the lines with `-lXaw' and `-lXt' as follows:
853
854     LIBW= /usr/lib/libXaw.a
855     LIBXT= $(LIBW) -lXmu /usr/lib/libXt.a $(LIBXTR6) -lXext
856
857 SONY News (m68k-sony-bsd4.2 or m68k-sony-bsd4.3)
858
859   18.52 worked.  Use m68k-sony-bsd4.3 for system release 3.
860
861 SONY News 3000 series (RISC NEWS) (mips-sony-bsd)
862
863   The 19.26 pretest is reported to work.
864
865   Some versions of the operating system give SIGTRAP for division by zero
866   instead of the usual signals.  This causes division by zero
867   to make Emacs crash.  The system should be fixed to give the proper signal.
868   Changing Emacs is not a proper solution, because it would prevent
869   Emacs from working under any debugger.  But you can change init_data
870   in data.c if you wish.
871
872 Stardent i860 (i860-stardent-sysv4.0)
873
874   19.26 pretest reported to work.
875
876 Stardent 1500 or 3000
877
878   See Titan.
879
880 Stride (m68k-stride-sysv)
881
882   Works (most recent news for 18.30) on their release 2.0.
883   For release 2.2, see the end of `src/m/stride.h'.
884   It may be possible to run on their V.1 system but changes
885   in the s- file would be needed.
886
887 Sun 3, Sun 4 (sparc), Sun 386 (m68k-sun-sunos, sparc-sun-sunos, i386-sun-sunos,
888                                sparc-sun-sunos4shr, sparc-sun-solaris2.*,
889                                i386-sun-solaris2.*)
890
891   19.26 is believed to work on Sparcs and Sun 3's.  Some people report
892   that Emacs crashes immediately on startup when used with a non-X
893   terminal, but we think this is due to compiling with GCC and failing
894   to use GCC's "fixed" system header files.
895
896   Some Sun versions of X windows use the clipboard, not the selections,
897   for transferring text between clients.  The Cut, Paste and Copy items
898   in the menu bar Edit menu work with the clipboard.
899
900   It's important to include the SunOS version number in the
901   configuration name.  For example, for SunOS release 4.0 on a Sun 3,
902   use `m68k-sun-sunos4.0'; for SunOS release 4.1 on a Sparc, use
903   `sparc-sun-sunos4.1'.  For SunOS release 4.1.3 on a Sparc, use
904   `sparc-sun-sunos4.1.3'.  Use sunos4shr to link with shared libraries
905   on Sunos 4.1.
906
907   (FSF MACHINES file says use of shared libraries does not work with
908   X11R5 or X11R6 on Sunos 4 as of 19.26, but I think this does not
909   apply to XEmacs.)
910
911   Use `m68k' for the 68000-based Sun boxes, `sparc' for Sparcstations,
912   and `i386' for Sun Roadrunners.  i386 calls for Sunos4.0.
913
914   Do not define the environment variable 'KEEP_STATE' while running
915   `configure'.
916
917   FSF MACHINES file says the following: (may not apply to XEmacs)
918
919   If you compile with Sun's ANSI compiler acc, you need additional options
920   when linking temacs, such as
921      /usr/lang/SC2.0.1/values-Xt.o -L/usr/lang/SC2.0.1/cg87 -L/usr/lang/SC2.0.1
922   (those should be added just before the libraries) and you need to
923   add -lansi just before -lc.  The precise file names depend on the
924   compiler version, so we cannot easily arrange to supply them.
925
926   On SunOS 4.1.1, do not use /usr/5bin/cc.  You can use gcc or/usr/bin/cc.
927   Make sure the environment variable LD_LIBRARY_PATH is not defined.
928
929   Some people report crashes on SunOS 4.1.3 if SYSTEM_MALLOC is defined.
930   Others have reported that Emacs works if SYSTEM_MALLOC is defined, and not
931   if it is undefined.  So far we do not know why results vary in this way.
932   The sources are set up so that SYSTEM_MALLOC is defined; if that crashes,
933   or if you want the benefit of the relocating memory allocator, you can
934   try enabling the #undef SYSTEM_MALLOC in src/s/sunos4-1-3.h.
935
936   On Solaris 2, you need to install patch 100947-02 to fix a system bug.
937   Presumably this patch comes from Sun.  You must alter the definition of
938   LD_SWITCH_SYSTEM if your X11 libraries are not in /usr/openwin/lib.
939   You must make sure that /usr/ucblib is not in your LD_LIBRARY_PATH.
940
941   On Solaris 2.2, with a multiprocessor SparcCenter 1000, Emacs 19.17 is
942   reported to hang sometimes if it exits while it has one or more
943   subprocesses (e.g. the `wakeup' subprocess used by `display-time').
944   Emacs and its subprocesses become zombies, and in their zombie state
945   slow down their host and disable rlogin and telnet.  This is most
946   likely due to a bug in Solaris 2.2's multiprocessor support,
947   rather than an Emacs bug.
948
949   On Solaris, do not use /usr/ucb/cc.  Use /opt/SUNWspro/bin/cc.  Make
950   sure that /usr/ccs/bin and /opt/SUNWspro/bin are in your PATH before
951   /usr/ucb.  (Most free software packages have the same requirement on
952   Solaris.)
953
954   If you have trouble using open-network-stream, get the distribution
955   of `bind' (the BSD name-server), build libresolv.a, and link Emacs
956   with -lresolv, by copying the #definition of LIBS_SYSTEM in
957   src/s/sunos4-1.h to src/config.h.  This problem is due to obsolete
958   software in the nonshared standard library.
959
960   If you want to use SunWindows, define HAVE_SUN_WINDOWS
961   in config.h to enable a special interface called `emacstool'.
962   The definition must *precede* the #include "machine.h".
963   System version 3.2 is required for this facility to work.
964
965   We recommend that you instead use the X window system, which
966   has technical advantages, is an industry standard, and is also
967   free software.  The FSF does not support the SunWindows code;
968   we installed it only on the understanding we would not let it
969   divert our efforts from what we think is important.
970
971   If you are compiling for X windows, and the X window library was
972   compiled to use the 68881, then you must edit config.h according
973   the comments at the end of `src/m/sun3.h'.
974
975   Note that Emacs on a Sun is not really as big as it looks.
976   As dumped, it includes around 200k of zeros between the
977   original text section and the original data section
978   (now remapped as part of the text).  These are never
979   swapped in.
980
981   To build a single Emacs that will run on Sun 2 and Sun 3
982   HARDWARE, just build it on the Sun 2.
983
984   On Sunos 4.1.3, the word is that Emacs can loop infinitely
985   on startup with X due perhaps to a bug in Sunos.  Installing all of
986   these Sun patches fixes the problem.  We don't know which of them
987   are really relevant.
988
989     100075-11 100224-06 100347-03 100482-05 100557-02 100623-03 100804-03
990     101080-01 100103-12 100249-09 100496-02 100564-07 100630-02 100891-10
991     101134-01 100170-09 100296-04 100377-09 100507-04 100567-04 100650-02
992     101070-01 101145-01 100173-10 100305-15 100383-06 100513-04 100570-05
993     100689-01 101071-03 101200-02 100178-09 100338-05 100421-03 100536-02
994     100584-05 100784-01 101072-01 101207-01
995
996 Tadpole 68K (m68k-tadpole-sysv)
997
998   Changes merged in 19.1.
999
1000   You may need to edit Makefile to change the variables LIBDIR and
1001   BINDIR from /usr/local to /usr/contrib.
1002
1003   To give movemail access to /usr/mail, you may need to execute
1004
1005     chmod 2755 etc/movemail; chgrp mail etc/movemail
1006
1007 Tahoe (tahoe-tahoe-bsd4.2 or tahoe-tahoe-bsd4.3)
1008
1009   18.52 was known to work on some Tahoes, but a compiler bug intervenes
1010   on others.  Some Emacs versions have worked in Unisys 1r4
1011   (not in 1r3) and CCI I.21.
1012
1013   If you have trouble compiling `lib-src/loadst.c', turn off the definition
1014   of DKSTAT_HEADER_FILE in `src/m/tahoe.h'.
1015
1016 Tandem Integrity S2 (mips-tandem-sysv)
1017
1018   Changes merged in 18.56 but subprocess support is turned off.
1019   You will probably want to see if you can make subprocesses work.
1020
1021   You must edit `lib-src/Makefile' to define LOADLIBES = -mld.
1022
1023 Tektronix XD88 (m88k-tektronix-sysv3*)
1024
1025   The 19.26 pretest was reported to work.
1026   Minor changes merged in 19.19.
1027
1028 Tektronix 16000 box (6130?) (ns16k-tektronix-bsd)
1029
1030   Emacs 17.61 worked.
1031
1032 Tektronix 4300 (m68k-tektronix-bsd)
1033
1034   Emacs 19.26 pretest reported to work.
1035
1036 Titan P2 or P3 (titan-titan-sysv)
1037
1038   Changes probably merged in version 19.
1039
1040 Ustation E30 (SS5E) (m68k-unisys-unipl)
1041
1042   Changes merged in 18.52; don't know whether they work.
1043
1044 Vaxen running Berkeley Unix (vax-dec-bsd4.1, vax-dec-bsd4.2, vax-dec-bsd4.3),
1045               Ultrix (vax-dec-ultrix),
1046               System V (vax-dec-sysv0, vax-dec-sysv2), or
1047               VMS (vax-dec-vms)
1048
1049   Works.
1050
1051   See under Ultrix for problems using X windows on Ultrix (vax-dec-ultrix).
1052
1053   18.27 worked on System V rel 2 (vax-dec-sysv2).
1054
1055   18.36 worked on System V rel 0 (vax-dec-sysv0).
1056
1057   Richard Levitte <levitte@e.kth.se> distributes a set of patches to
1058   Emacs 18.59 to make it work nicely under VMS.  Emacs 19 probably
1059   won't work very well, or even compile.  Levitte is working on a
1060   port, so these problems should be fixed in the near future.
1061
1062 Whitechapel MG1 (ns16k-whitechapel-?)
1063
1064   May work.  Supposedly no changes were needed except in `src/m/mg1.h'
1065   file.  I do not know what Unix version runs on them.
1066
1067 Wicat (m68k-wicat-sysv)
1068
1069   Changes merged as of 18.6; whether they work is unknown.
1070   See comments in `src/m/wicat.h' for things you should change
1071   depending on the system and compiler version you have.
1072 \f
1073 Here are notes about some of the systems supported:
1074
1075 Berkeley 4.1 (bsd4.1)
1076
1077   Works on vaxes.
1078
1079 Berkeley 4.2 (bsd4.2)
1080
1081   Works on several machines.
1082
1083 Berkeley 4.3 (bsd4.3)
1084
1085   Works, on Vaxes at least.
1086
1087 Esix
1088
1089   The following was written for Emacs 18.59 and has been
1090   slightly adapted for Emacs 19.  It may need more change to be correct.
1091
1092   Use s/usg5-4.h for Esix System V 4.0.[34] systems if you also have
1093   XFree86.  If you insist on using the Esix X Window libraries, good
1094   luck.  s/esix5r4.h provides a starting point, but doesn't seem to
1095   work consistently.  The basic problems involve the need to load
1096   -lX11 *last* in the link command, and even then some things break.
1097   You get best results by installing XFree86 and forgetting about the
1098   Esix stuff unless you want to run IXI xdt3, which really only needs
1099   the Esix X11 shared libraries.
1100
1101   To compile with XFree86, make sure that your LD_LIBRARY_PATH
1102   contains /usr/X386/lib.  Be careful if you also have the Esix X
1103   Window libraries that /usr/X386/lib appears *first* in the
1104   LD_LIBRARY_PATH.  Then define C_SWITCH_X_SYSTEM -I/usr/X386/include.
1105
1106 Microport
1107
1108   See under "Intel 386".
1109
1110 SCO Unix
1111   If you have TCP but not X, you need to edit src/s/sco4.h
1112   to define HAVE_SOCKETS.
1113
1114   If you are using MMDF instead of sendmail, you need to remove
1115   /usr/lib/sendmail or modify lisp/paths.el before compiling.
1116   lisp/paths.el (which is loaded during the build) will attempt to use
1117   sendmail if it exists.
1118
1119   If you are using SMAIL, you need to define the macro
1120   SMAIL in config.h.
1121
1122 System V rel 0 (usg5.0)
1123
1124   Works, on Vaxes and 3bxxx's.
1125   There are some problems in 18.37 due to shortnames/cccp problems:
1126   use the emacs 17 cpp if you have it.
1127
1128 System V rel 2 (usg5.2)
1129
1130   Works on various machines.
1131   On some (maybe all) machines the library -lPW exists and contains
1132   a version of `alloca'.  On these machines, to use it, put
1133      #define HAVE_ALLOCA
1134      #define LIB_STANDARD -lPW -lc
1135   in the `src/m/MACHINENAME.h' file for the machine.
1136
1137   If you find that the character Meta-DEL makes Emacs crash,
1138   find where function init_sys_modes in sysdep.c sets sg.c_cc[VQUIT]
1139   and make it store 7 there.  I have as yet no evidence of whether
1140   this problem, known in HP/UX, exists in other system V versions.
1141
1142 System V rel 2.2 (usg5.2.2)
1143
1144   In 5.2.2 AT&T undid, incompatibly, their previous incompatible
1145   change to the way the nlist library is called.  A different s- file
1146   is used to enable the other interface.
1147
1148   They call themselves the right choice--can't they choose?
1149
1150   Emacs version 18 unexec is currently not working properly
1151   on 5.2.2.  Nobody knows why yet.  A workaround is to define
1152   NO_REMAP.  It is not yet known whether this applies to all
1153   machines running 5.2.2.
1154
1155 System V rel 3 (usg5.3)
1156
1157   Some versions of this system support ptys and BSD-style sockets.
1158   On such systems, you should define HAVE_PTYS and HAVE_SOCKETS in config.h.
1159
1160   If you want to link Emacs with shared libraries, define
1161   USG_SHARED_LIBRARIES.
1162
1163   You may have to add ANSI idempotence #-lines to your sys/types.h
1164   file to get Emacs to compile correctly.  This may be necessary on
1165   other pre-ANSI systems as well.
1166
1167   On an AT&T 6386WGS using System V Release 3.2 and X11R3, the X support
1168   cannot be made to work.  Whether or not the GNU relocating malloc is
1169   used, the symptom is that the first call Emacs makes to sbrk(0) returns
1170   (char *)-1.  Sorry, you're stuck with character-only mode.  Try
1171   installing Xfree86 to fix this.
1172
1173 System V rel 4.0.3 and 4.0.4 (usg5.4)
1174
1175   Supported, including shared libraries for ELF, but ptys do not work
1176   because TIOCGPGRP fails to work on ptys (but Dell 2.2 seems to have
1177   fixed this).  This failure is probably due to a misunderstanding of
1178   the consequences of the POSIX spec: many system designers mistakenly
1179   think that POSIX requires this feature to fail.  This is untrue;
1180   ptys are an extension, and POSIX says that extensions *when used*
1181   may change the action of standard facilities in any fashion.
1182
1183   If you get compilation errors about wrong number of
1184   arguments to getpgrp, define GETPGRP_NO_ARG.
1185
1186   The standard C preprocessor may generate xmakefile incorrectly.  However,
1187   /lib/cpp will work, so use `make CPP=/lib/cpp'.  Standard cpp
1188   seems to work OK under Dell 2.2.
1189
1190   Some versions 3 and earlier of V.4, on the Intel 386 and 860, had
1191   problems in the X11 libraries.  These prevent Emacs from working
1192   with X.  You can use Emacs with X provided your copy of X is based
1193   on X11 release 4 or newer, or is Dell's 2.2 (which is a 4.0.3).
1194   Unfortunately, the only way you can tell whether your X11 library is
1195   new enough is to try compiling Emacs to use X.  If emacs runs, your
1196   X11 library is new enough.
1197
1198   In this context, GSV4 and GSV4i are alternate names for X11R4.
1199   OL2.* is X11R3 based.  OL3 is in between X11R3 and X11R4, and may or
1200   may not work, depending on who made the Unix system.  If the library
1201   libXol is part of the X distribution, then you have X11R3 and Emacs
1202   won't work with X.
1203
1204   Most versions of V.4 support sockets.  If `/usr/lib/libsocket.so'
1205   exists, your system supports them.  If yours does not, you must add
1206   #undef HAVE_SOCKETS in config.h, after the inclusion of s-usg5-4.h.
1207   (Any system that supports Internet should implement sockets.)
1208
1209 Ultrix (bsd4.3)
1210
1211   Recent versions of Ultrix appear to support the features of Berkeley 4.3.
1212   Ultrix was at the BSD 4.2 level for a long time after BSD 4.3 came out.
1213
1214   Ultrix 3.0 has incompatibilities in its X library if you have the
1215   Ultrix version of X (UWS version 2.0).  To solve them, you need to
1216   prevent XvmsAlloc.o in Xlib from being used.  Israel Pinkas says:
1217
1218     I added the following lines to config.h after the X defines:
1219
1220     #if defined(ultrix) && defined(X11)
1221     #define OBJECTS_SYSTEM calloc.o
1222     #endif
1223
1224     Then I ran the following:
1225
1226     ar x /usr/lib/libc.a calloc.o
1227
1228   The problem is said to be gone in UWS version 2.1.
1229
1230 Uniplus 5.2 (unipl5.2)
1231
1232   Works, on Dual machines at least.
1233
1234 VMS (vmsM.N)
1235
1236   Richard Levitte <levitte@e.kth.se> distributes a set of patches to
1237   Emacs 18.59 to make it work nicely under VMS.  Emacs 19 probably
1238   won't work very well, or even compile.  Levitte is working on a
1239   port, so these problems should be fixed in the near future.
1240
1241   Note that Emacs for VMS is usually distributed in a special VMS
1242   distribution.  See the file ../vms/VMSINSTALL for info on moving
1243   Unix distributions to VMS, and other VMS-related topics.
1244
1245 Xenix (xenix)
1246
1247   Should work in 18.50, but you will need to edit the files
1248   `lib-src/Makefile' and `src/ymakefile'
1249   (see the comments that mention "Xenix" for what to change.)
1250   Compiling Emacs with -O is said not to work.
1251
1252   If you want Emacs to work with Smail (installed as /usr/bin/smail)
1253   then add the line   #define SMAIL  to config.h.
1254
1255   The file etc/XENIX suggests some useful things to do to Xenix
1256   to make the Emacs meta key work.
1257 \f
1258 Local variables:
1259 mode: indented-text
1260 fill-prefix: "  "
1261 End: