Annotation of GNUtools/emacs/etc/MACHINES, revision 1.1.1.1

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

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.