* print.c (print_object): Check print_depth before searching for
[emacs.git] / etc / MACHINES
blob5773eeeec754d32612371ddb149645d0c4558d2e
1 Emacs machines list
3 Copyright (C) 1989, 1990, 1992, 1993, 1998, 2001, 2002, 2003, 2004,
4   2005, 2006, 2007, 2008  Free Software Foundation, Inc.
5 See the end of the file for license conditions.
7 This is a list of the status of GNU Emacs on various machines and systems.
9 For each system and machine, we give the configuration name you should
10 pass to the `configure' script to prepare to build Emacs for that
11 system/machine.
13 The `configure' script uses the configuration name to decide which
14 machine and operating system description files `src/config.h' should
15 include.  The machine description files are all in `src/m', and have
16 names similar to, but not identical to, the machine names used in
17 configuration names.  The operating system files are all in `src/s',
18 and are named similarly.  See the `configure' script if you need to
19 know which configuration names use which machine and operating system
20 description files.
22 If you add support for a new configuration, add a section to this
23 file, and then edit the `configure' script to tell it which
24 configuration name(s) should select your new machine description and
25 system description files.
27 Some obsolete platforms are unsupported beginning with Emacs 23.1, see
28 the full list at the end of this file.
31 Here are the configurations Emacs is intended to work with, with the
32 corresponding configuration names.  You can postpend version numbers
33 to operating system names (i.e. sunos4.1) or architecture names (i.e.
34 hppa1.1).  If you leave out the version number, the `configure' script
35 will configure Emacs for the latest version it knows about.
37 Alpha (DEC) running GNU/Linux (alpha-dec-linux-gnu)
39   DEC C compiler version 5.9 (DEC C V5.9-005 on Digital UNIX V4.0f)
40   is reported to produce bogus binaries of Emacs 21.2 when the
41   command-line switches "-O4 -arch ev6 -tune ev6" are used.  Using
42   just -O4 produces a good executable.
44   For 4.0 revision 564, and 4.0A and 4.0B, Emacs 20 seems to work
45   with no special configuration options.  However, if you use GCC as
46   your compiler, you will need version 2.8.1 or later, as older
47   versions fail to build with a message "Invalid dimension for the
48   charset-ID 160".
50   Note that the X11 libraries on GNU/Linux systems for the Alpha are
51   said to have bugs that prevent Emacs from working with X (as of
52   November 1995).  Recent releases work (July 2000).
54 Apple Macintosh running Mac OS X
56   For installation on all versions of the Mac OS platform, see the file
57   mac/INSTALL.
59 Apple PowerPC Macintosh running GNU/Linux
61   There are special considerations for a variety of this system which
62   is known as the ``Yellow Dog [GNU/]Linux'': Emacs may crash during
63   dumping.  To solve this, edit the header file src/m/macppc.h in the
64   Emacs distribution, and remove the "#if 0" and "#endif" directives
65   which surround the following block near the end of the file:
67     #if 0  /* This breaks things on PPC GNU/Linux except for Yellowdog,
68               even with identical GCC, as, ld.  Let's take it out until we
69               know what's really going on here.  */
70     /* GCC 2.95 and newer on GNU/Linux PPC changed the load address to
71        0x10000000.  */
72     #if defined __linux__
73     #if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 95)
74     #define DATA_SEG_BITS  0x10000000
75     #endif
76     #endif
77     #endif /* 0 */
79   After that, reconfigure and rebuild Emacs.  It should now build
80   successfully.
82 Cubix QBx/386 (i386-cubix-sysv)
84   Changes merged in 19.1.  Systems before 2/A/0 may fail to compile etags.c
85   due to a compiler bug.
87 DECstation (mips-dec-ultrix or mips-dec-osf)
89   This machine is the older Mips-based DECstation.
90   Emacs should now work on the Alpha CPU.
92   19.25 works on Ultrix 4.2.  The 19.26 pretest was reported to work
93   on Ultrix 4.2a and on 4.4.
95   One user reported 19.25 did not work at all with --with-x-toolkit
96   using X11R5 patch level 10, but worked ok with X11R5 pl26.
98   See under Ultrix for problems using X windows on Ultrix.
99   Note that this is a MIPS machine.
101   For Ultrix versions 4.1 or earlier, you may need to define
102   SYSTEM_MALLOC in `src/m/pmax.h', because XvmsAlloc.o in libX11.a seems
103   to insist on defining malloc itself.
105   For Ultrix versions prior to 4.0, you may need to delete
106   the definition of START_FILES from `src/m/pmax.h'.
108 Motorola Delta 147 (m68k-motorola-sysv)
110   The EMacs 19.26 pretest was reported to work.
112   Motorola Delta boxes running System V/68 release 3.
113   Tested on 147 board with SVR3V7, no X and gcc.
114   Tested on 167 board with SVR3V7, no X, cc, gnucc and gcc.
115   Reports say it works with X too.
117   The installation script chooses the compiler itself.  gnucc is
118   preferred.
120 Fujitsu DS/90 (sparc-fujitsu-sysv4)
122   Changes merged in 20.3.
124 HP 9000 series 500: not supported.
126   The series 500 has a seriously incompatible memory architecture
127   which relocates data in memory during execution of a program,
128   and support for it would be difficult to implement.
130 HP 9000 series 700 or 800 (Spectrum) (hppa1.0-hp-hpux or hppa1.1-hp-hpux
131                                       or ...hpux9shr)
133   Use hppa1.1 for the 700 series and hppa1.0 for the 800
134   series machines.  (Emacs may not actually care which one you use.)
136   Emacs 20 may work on HPUX 10.  You need patch PHSS_6202 to install
137   the Xaw and Xmu libraries.  On HPUX 10.20 you may need to compile with GCC;
138   when Emacs was compiled with HP's C compiler, HP92453-01 A.10.32.03,
139   the subprocess features failed to work.
141   19.26 is believed to work on HPUX 9 provided you compile with GCC.
142   As of version 19.16, Emacs was reported to build (using GCC) and run
143   on HP 9000/700 series machines running HP/UX versions 8.07 and 9.01.
144   The HP compiler is known to fail on some versions if you use +O3,
145   but it may work with lower optimization levels.
147   Use hppa1.1-hp-hpux9shr to use shared libraries on HPUX version 9.
148   You may need to create the X libraries libXaw.a and libXmu.a from
149   the MIT X distribute, and you may need to edit src/Makefile's
150   definition of LIBXT to look like this:
152      LIBXT= $(LIBW) -lXmu -lXt $(LIBXTR6) -lXext
154   Some people report trouble using the GNU memory allocator under
155   HP/UX version 9.  The problems often manifest as lots of ^@'s in the
156   buffer.
158   We are told that these problems go away if you obtain the latest
159   patches for the HP/UX C compiler.  James J Dempsey
160   <jjd@spserv.bbn.com> says that this set of versions works for him:
161     /bin/cc:
162             HP92453-01 A.09.28 HP C Compiler
163     /lib/ccom:
164             HP92453-01 A.09.28 HP C Compiler
165              HP-UX SLLIC/OPTIMIZER  HP-UX.09.00.23  02/18/93
166              Ucode Code Generator - HP-UX.09.00.23.5 (patch)  2/18/93
168   For 700 series machines, the HP-UX patch needed is known as
169   PHSS_2653.  (Perhaps for 800 series machines as well; we don't
170   know.)  If you are on the Internet, you should be able to obtain
171   this patch by using telnet to access the machine
172   support.mayfield.hp.com and logging in as "hpslreg" and following
173   the instructions there.  Or you may be able to use this
174   web site:
176     HP Patch Server: http://support.mayfield.hp.com/patches/html/patches.html
177     HP Support Line: http://support.mayfield.hp.com
179   Please do not ask FSF for further support on this.  If you have any
180   trouble obtaining the patch, contact HP Software Support.
182   If your buffer fills up with nulls (^@) at some point, it could well
183   be that problem.  That problem does not happen when people use GCC
184   to compile Emacs.  On the other hand, the HP compiler version 9.34
185   was reported to work for the 19.26 pretest.  9.65 was also reported to work.
187   If you turn on the DSUSP character (delayed suspend),
188   Emacs 19.26 does not know how to turn it off on HPUX.
189   You need to turn it off manually.
191   If you are running HP/UX release 8.0 or later, you need the optional
192   "C/ANSI C" software in order to build Emacs (older releases of HP/UX
193   do not require any special software).  If the file "/etc/filesets/C"
194   exists on your machine, you have this software, otherwise you do not.
196 IBM RS/6000 (rs6000-ibm-aix*)
198   Emacs 19.26 is believed to work; its pretest was tested.
200   Compiling with the system's `cc' and CFLAGS containing `-O5' might
201   fail because libXbsd isn't found.  This is a compiler bug;
202   re-configure Emacs so that it isn't compiled with `-O5'.
204   On AIX 4.3.x and 4.4, compiling with /bin/c89 fails because it
205   treats certain warnings as errors.  Use `cc' instead.
207   At last report, Emacs didn't run well on terminals.  Informed
208   persons say that the tty VMIN and VTIME settings have been
209   corrupted; if you have a fix, please send it to us.
211   Compiling with -O using the IBM compiler has been known
212   to make Emacs work incorrectly.  It's reported that on
213   AIX 3.2.5 with an IBM compiler earlier than 1.03.00.14,
214   cc -O fails for some files.  You need to install any
215   PTF containing APAR #IX42810 to bring the compiler to
216   the 1.03.00.14 level to allow optimized compiles.
218   There are reports that IBM compiler versions earlier than 1.03.00.02
219   fail even without -O.  However, another report said that compiler
220   version 1.02.01.00 did work, on AIX 3.2.4, with Emacs 19.31.
222   As of 19.11, if you strip the Emacs executable, it ceases to work.
224   If you are using AIX 3.2.3, you may get a core dump when loading
225   ange-ftp.  You may be able to fix the problem by defining LIBS_TERMCAP
226   as -ltermcap -lcurses.  Please tell us if this fails to work.
228   If anyone can fix the above problems, or confirm that they don't happen
229   with certain versions of various programs, we would appreciate it.
231 IBM System/390 running GNU/Linux (s390-*-linux-gnu)
233   As of Emacs 21.2, a 31-bit only version is supported on this
234   system.
236 Intel 386 (i386-*-bsdi2,        i386-*-freebsd,  i386-*-linux-gnu,
237            i386-*-sol2.4,       i386-*-sysv3,    i386-intsys-sysv,
238            i386-*-sysv4,        i386-*-sysv4.2,
239            i386-*-sysv5.3,      i386-*-bsd4.2,   i386-*-cygwin,
240            i386-*-bsd386,   i386-*-386bsd,
241            i386-*-msdos,        i386-*-windowsnt.
242            i386... can be replaced with i486... or i586...)
244   In the above configurations, * means that the manufacturer's name
245   you specify does not matter, and you can use any name you like
246   (but it should not contain any dashes or stars).
248   When using the ISC configurations, be sure to specify the isc
249         version number - for example, if you're running ISC 3.0, use
250         i386-unknown-isc3.0 as your configuration name.
251   Use i386-*-linux-gnu for GNU/Linux systems; Emacs runs as of version 19.26.
252   Use i386-*-cygwin for Cygwin; Emacs builds as of version 22.1, in both X11
253   and non-X11 modes.  (The Cygwin site has source and binaries for 21.2.)
254   Use i386-intsys-sysv for Integrated Solutions 386 machines.
255   It may also be correct for Microport systems.
257   On GNU/Linux systems, Emacs 19.23 was said to work properly with libc
258   version 4.5.21, but not with 4.5.19.  If your system uses QMAGIC
259   for the executable format, you must edit config.h to define LINUX_QMAGIC.
261   On GNU/Linux, configure may fail to put these definitions in config.h:
263     #define HAVE_GETTIMEOFDAY
264     #define HAVE_MKDIR
265     #define HAVE_RMDIR
266     #define HAVE_XSCREENNUMBEROFSCREEN
268   To work around the problem, add those definitions by hand.
269   It is possible that this problem happens only with X11R6.
270   Newer system versions have fixed it.
272   The 19.26 pretest was reported to work on SVR4.3 and on Freebsd.
274   19.29 is reported to crash when using Motif on Solaris 2.5.
275   The reasons are not yet known.
277   Use i386-*-bsdiN for BSDI BSD/OS version N; Emacs runs as of version 19.23.
278   In some system versions, `make' is broken; use GNU make instead.
279   Shell bugs in version 1.0 of BSD/OS cause configure
280   to do the wrong thing with --with-x-toolkit; the workaround is to edit
281   configure to run another shell such as bash.
283   For System V release 3, use i386-*-sysv3.
284   For System V release 4, use i386-*-sysv4.
285   For System V release 4.2, use i386-*-sysv4.2.
287   If you are using SCO Unix, see notes at end under SCO.
289   On 386bsd, NetBSD and FreeBSD, at one time, it was necessary to use
290   GNU make, not the system's make.  Assuming it's installed as gmake,
291   do `gmake install MAKE=gmake'.  However, more recently it is
292   reported that using the system Make on NetBSD 1.3.1 works ok.
294   If you are using System V release 4.2, you may find that `cc -E'
295   puts spurious spaces in `src/xmakefile'.  If that happens,
296   specify CPP=/lib/cpp as an option when you run make.
297   There is no problem if you compile with GCC.
299   Note that use of Linux with GCC 2.4 and the DLL 4.4 libraries
300   requires the experimental "net 2" network patches (no relation to
301   Berkeley Net 2).  There is a report that (some version of) Linux
302   requires including `/usr/src/linux/include/linux' in buffer.c
303   but no coherent explanation of why that might be so.  If it is so,
304   in current versions of Linux, something else should probably be changed.
306   Some sysV.3 systems seem to have bugs in `opendir';
307   for them, alter `config.h' to define NONSYSTEM_DIR_LIBRARY
308   and undefine SYSV_SYSTEM_DIR.
310   If you use optimization on V.3, you may need the option -W2,'-y 0'
311   to prevent certain faulty optimization.
313   On 386/ix, to link with shared libraries, add #define USG_SHARED_LIBRARIES
314   to config.h.
316   On SCO, there are problems in regexp matching when Emacs is compiled
317   with the system compiler.  The compiler version is "Microsoft C
318   version 6", SCO 4.2.0h Dev Sys Maintenance Supplement 01/06/93;
319   Quick C Compiler Version 1.00.46 (Beta).  The solution is to compile
320   with GCC.
322   On ISC systems (2.02 and more recent), don't try to use the versions
323   of X that come with the system; use XFree86 instead.
325   There is no consistency in the handling of certain system header files
326   on V.3.
328   Some versions have sys/sioctl.h, and require it in sysdep.c.
329   But some versions do not have sys/sioctl.h.
330   For a given version of the system, this may depend on whether you have
331   X Windows or TCP/IP.  Define or undefine NO_SIOCTL_H in config.h
332   according to whether you have the file.
334   Likewise, some versions have been known to need sys/ttold.h, sys/stream.h,
335   and sys/ptem.h included in sysdep.c.  If your system has these files,
336   try defining NEED_PTEM_H in config.h if you have trouble without it.
338   You may find that adding -I/usr/X/include or -I/usr/netinclude or both
339   to CFLAGS avoids compilation errors on certain systems.
341   Some versions convince sysdep.c to try to use `struct tchars'
342   but define `struct tc' instead; add `#define tchars tc'
343   to config.h to solve this problem.
345 Iris 4D (mips-sgi-irix[456].*)
347   Emacs 21.3 is reported to work on IRIX 6.5.x.
349   You can build a 64-bit executable (with larger maximum buffer size)
350   on Irix 6.5 by specifying the 64-bit ABI using the `-64' compiler
351   flag or otherwise (see cc(1)).  This may work on earlier Irix 6
352   systems if you edit src/s/irix6-0.h following irix6-5.h.
354   If compiling with GCC on Irix 6 yields an error "conflicting types
355   for `initstate'", install GCC 2.95 or a newer version, and this
356   problem should go away.  It is possible that this problem results
357   from upgrading the operating system without reinstalling GCC; so you
358   could also try reinstalling the same version of GCC, and telling us
359   whether that fixes the problem.
361 Mips (mips-mips-riscos, mips-mips-riscos4.0, or mips-mips-bsd)
363   The C compiler on Riscos 4.51 dumps core trying to optimize
364   parts of Emacs.  Try without optimization or try GCC.
366   Meanwhile, the linker on that system returns success even if
367   there are undefined symbols; as a result, configure gets the
368   wrong answers to various questions.  No work-around is known
369   except to edit src/config.h by hand to indicate which functions
370   don't exist.
372   Use mips-mips-riscos4.0 for RISCOS version 4.
373   Use mips-mips-bsd with the BSD world.
375   Note that the proper configuration names for DECstations are
376   mips-dec-ultrix and mips-dec-osf.
378   If you are compiling with GCC, then you must run fixincludes;
379   the alternative of using -traditional won't work because
380   the definition of SIGN_EXTEND_CHAR uses the keyword `signed'.
382   If the SYSV world is the default, then you probably need the following
383   line in etc/Makefile:
385     CFLAGS= -g -systype bsd43
387   Some operating systems on MIPS machines give SIGTRAP for division by
388   zero instead of the usual signals.  The only real solution is to fix
389   the system to give a proper signal.
391   In the meantime, you can change init_data in data.c if you wish.
392   Change it to handle SIGTRAP as well as SIGFPE.  But this will have a
393   great disadvantage: you will not be able to run Emacs under a
394   debugger.  I think crashing on division by zero is a lesser problem.
396   dsg@mitre.org reported needing to use --x-libraries=/bsd43/usr/lib
397   on a riscos4bsd site.  But it is not clear whether this is needed in
398   general or only because of quirks on a particular site.
400 NCR Intel system (i386-ncr-sysv4.2)
402   This system works in 19.31, but if you don't link it with GNU ld,
403   you may need to set LD_RUN_PATH at link time to specify where
404   to find the X libraries.
406 Prime EXL (i386-prime-sysv)
408   Minor changes merged in 19.1.
410 Siemens Nixdorf RM600 and RM400 (mips-siemens-sysv4)
412   Changes merged in 19.29.  The version configured with
413   `--with-x' works without any modifications, but `--with-x-toolkit'
414   works only if the Athena library and the Toolkit library are linked
415   statically.  For this, edit `src/Makefile' after the `configure' run
416   and modify the lines with `-lXaw' and `-lXt' as follows:
418     LIBW= /usr/lib/libXaw.a
419     LIBXT= $(LIBW) -lXmu /usr/lib/libXt.a $(LIBXTR6) -lXext
421   In addition, `--with-x-toolkit=motif' works only
422   if the Motif library and the Toolkit library are linked statically.
423   To do this, edit `src/Makefile' after the `configure' run
424   and modify the lines with `-lXm' and `-lXt' as follows:
426     LIBW= /usr/lib/libXm.a /usr/ccs/lib/libgen.a
427     LIBXT= $(LIBW) -lXmu /usr/lib/libXt.a $(LIBXTR6) -lXext
429 Sun 4 (sparc), Sun 386 (sparc-sun-solaris2.*,
430                                i386-sun-solaris2.*, sparc*-*-linux-gnu)
432   To build a 32-bit Emacs (i.e. if you are having any sort of problem
433   bootstrapping a 64-bit version), you can use the Sun Studio compiler
434   and configure Emacs with:
435     env CC="cc -xarch=v7" CFLAGS='' ./configure    # on SPARC systems
436     env CC="cc -xarch=386" CFLAGS='' ./configure   # on x86 systems
437   On Solaris 2.10, it is also possible to use /usr/sfw/bin/gcc to build
438   a 32-bit version of Emacs.  Just make sure you point ./configure to
439   the right compiler:
441     env CC='/usr/sfw/bin/gcc -m32' ./configure
443   To build a 64-bit Emacs (with larger maximum buffer size and
444   including large file support) on a Solaris system which supports
445   64-bit executables, use the Sun compiler, configuring something like
446   this (see the cc documentation for information on 64-bit
447   compilation):
449     env CC="cc -xarch=v9" CFLAGS='' ./configure    # on SPARC systems
450     env CC="cc -xarch=amd64" CFLAGS='' ./configure # on x86 systems
452   As of version 2.95, GCC doesn't support the 64-bit ABI properly, but
453   later releases may.
455   Some versions of Solaris 8 have a bug in their XIM (X Input Method)
456   implementation which causes Emacs to dump core when one of several
457   frames is closed.  To avoid this, either install patch 108773-12
458   (for Sparc) or 108874-12 (for x86), or configure Emacs with the
459   `--with-xim=no' switch (you can use Leim input methods instead).
461   On Solaris 2.7, building Emacs with WorkShop Compilers 5.0 98/12/15
462   C 5.0 failed, apparently with non-default CFLAGS, most probably due to
463   compiler bugs.  Using Sun Solaris 2.7 Sun WorkShop 6 update 1 C
464   release was reported to work without problems.  It worked OK on
465   another system with Solaris 8 using apparently the same 5.0 compiler
466   and the default CFLAGS.
468   Emacs 21.1 and 21.2 built with Sun's ProWorks PC3.0.1 compiler on
469   Intel/Solaris 8 was reported to abort and dump core during startup.
470   Using GCC or a newer SUN compiler (Sun WokShop 6 update 2 C 5.3
471   2001/05/15) solves the problem.
473   Emacs 20.5 and later work on SPARC GNU/Linux with the 32-bit ABI.
474   As of release 2.95, GCC doesn't work properly with the 64-bit ABI
475   (applicable on UltraSPARC), but that isn't the default mode.
477   Emacs 20.3 fails to build on Solaris 2.5 if you use GCC 2.7.2.3.
478   Installing GCC 2.8 fixes the problem.
480   19.32 works on Solaris 2.4 and 2.5.  On Solaris 2.5
481   you may need one of these patches to prevent Emacs from crashing
482   when it starts up:
483         103093-03: [README] SunOS 5.5: kernel patch (2140557 bytes)
484         102832-01: [README] OpenWindows 3.5: Xview Jumbo Patch (4181613 bytes)
485         103242-04: [README] SunOS 5.5: linker patch (595363 bytes)
487   There are reports that using SunSoft cc with -xO4 -xdepend produces
488   bad code for some part of Emacs.
490   Some people report that Emacs crashes immediately on startup when
491   used with a non-X terminal, but we think this is due to compiling
492   with GCC and failing to use GCC's "fixed" system header files.
494   Some Sun versions of X windows use the clipboard, not the selections,
495   for transferring text between clients.  The Cut, Paste and Copy items
496   in the menu bar Edit menu work with the clipboard.
498   A user reported irreproducible segmentation faults when using 19.29
499   on Solaris 2.3 and 2.4 after compiling it with the Sun compiler.
500   The problem went away when GCC 2.7.0 was used instead.  We do not know
501   whether anything in Emacs is partly to blame for this.
503   If you compile with Sun's ANSI compiler acc, you need additional options
504   when linking temacs, such as
505      /usr/lang/SC2.0.1/values-Xt.o -L/usr/lang/SC2.0.1/cg87 -L/usr/lang/SC2.0.1
506   (those should be added just before the libraries) and you need to
507   add -lansi just before -lc.  The precise file names depend on the
508   compiler version, so we cannot easily arrange to supply them.
510   On Solaris 2, you need to install patch 100947-02 to fix a system bug.
511   Presumably this patch comes from Sun.  You must alter the definition of
512   LD_SWITCH_SYSTEM if your X11 libraries are not in /usr/openwin/lib.
513   You must make sure that /usr/ucblib is not in your LD_LIBRARY_PATH.
515   On Solaris 2.2, with a multiprocessor SparcCenter 1000, Emacs 19.17 is
516   reported to hang sometimes if it exits while it has one or more
517   subprocesses (e.g. the `wakeup' subprocess used by `display-time').
518   Emacs and its subprocesses become zombies, and in their zombie state
519   slow down their host and disable rlogin and telnet.  This is most
520   likely due to a bug in Solaris 2.2's multiprocessor support,
521   rather than an Emacs bug.
523   On Solaris, do not use /usr/ucb/cc.  Use /opt/SUNWspro/bin/cc.  Make
524   sure that /usr/ccs/bin and /opt/SUNWspro/bin are in your PATH before
525   /usr/ucb.  (Most free software packages have the same requirement on
526   Solaris.)  With this compiler, use `/opt/SUNWspro/bin/cc -E' as the
527   preprocessor.  If this inserts extra whitespace into its output (see
528   the PROBLEMS file) then add the option `-Xs'.
530   If you have trouble using open-network-stream, get the distribution
531   of `bind' (the BSD name-server), build libresolv.a, and link Emacs
532   with -lresolv, by copying the #definition of LIBS_SYSTEM in
533   src/s/sunos4-1.h to src/config.h.  This problem is due to obsolete
534   software in the nonshared standard library.
536   Note that Emacs on a Sun is not really as big as it looks.
537   As dumped, it includes around 200k of zeros between the
538   original text section and the original data section
539   (now remapped as part of the text).  These are never
540   swapped in.
542 Tadpole 68K (m68k-tadpole-sysv)
544   Changes merged in 19.1.
546   You may need to edit Makefile to change the variables LIBDIR and
547   BINDIR from /usr/local to /usr/contrib.
549   To give movemail access to /usr/mail, you may need to execute
551     chmod 2755 etc/movemail; chgrp mail etc/movemail
553 Vaxen running Berkeley Unix (vax-dec-bsd4.1, vax-dec-bsd4.2, vax-dec-bsd4.3),
554               Ultrix (vax-dec-ultrix),
555               System V (vax-dec-sysv0, vax-dec-sysv2), or
556               VMS (vax-dec-vms)
558   Works.
560   See under Ultrix for problems using X windows on Ultrix (vax-dec-ultrix).
562   18.27 worked on System V rel 2 (vax-dec-sysv2).
564   18.36 worked on System V rel 0 (vax-dec-sysv0).
566   Richard Levitte <levitte@e.kth.se> distributes a set of patches to
567   Emacs 18.59 to make it work nicely under VMS.  Emacs 19 probably
568   won't work very well, or even compile.  Levitte is working on a
569   port, so these problems should be fixed in the near future.
572 Here are notes about some of the systems supported:
574 Linux (actually GNU/Linux)
576   Most of the complete systems which use the Linux kernel are close
577   enough to the GNU system to be considered variant GNU systems.  We
578   call them "Linux-based GNU systems," or GNU/Linux for short.
580   It is not coincidence that many of the other components used with
581   Linux--including GNU Emacs--were developed specifically for the GNU
582   project.  The GNU project was launched in 1984 to develop a free
583   complete Unix-like operating system.  To reach this goal, we had to
584   develop whatever system components were not available as freely
585   redistributable software from some other source.
587   The GNU project wants users of GNU/Linux systems to be aware of how
588   these systems relate to the GNU project, because that will help
589   spread the GNU idea that software should be free--and thus encourage
590   people to write more free software.  See the file LINUX-GNU in this
591   directory for more explanation.
593 Microport
595   See under "Intel 386".
597 MSDOS
599   For installation on MSDOS, see the file INSTALL (search for `MSDOG',
600   near the end of the file).  See the "MS-DOS" chapter of the manual
601   for information about using Emacs on MSDOS.
603 SCO Unix
605   If you are using MMDF instead of sendmail, you need to remove
606   /usr/lib/sendmail or modify lisp/paths.el before compiling.
607   lisp/paths.el (which is loaded during the build) will attempt to use
608   sendmail if it exists.
610   If you are using SMAIL, you need to define the macro
611   SMAIL in config.h.
613 System V rel 4.0.3 and 4.0.4 (usg5.4)
615   Supported, including shared libraries for ELF, but ptys do not work
616   because TIOCGPGRP fails to work on ptys (but Dell 2.2 seems to have
617   fixed this).  This failure is probably due to a misunderstanding of
618   the consequences of the POSIX spec: many system designers mistakenly
619   think that POSIX requires this feature to fail.  This is untrue;
620   ptys are an extension, and POSIX says that extensions *when used*
621   may change the action of standard facilities in any fashion.
623   If you get compilation errors about wrong number of
624   arguments to getpgrp, define GETPGRP_NO_ARG.
626   The standard C preprocessor may generate xmakefile incorrectly.  However,
627   /lib/cpp will work, so use `make CPP=/lib/cpp'.  Standard cpp
628   seems to work OK under Dell 2.2.
630   Some versions 3 and earlier of V.4, on the Intel 386 and 860, had
631   problems in the X11 libraries.  These prevent Emacs from working
632   with X.  You can use Emacs with X provided your copy of X is based
633   on X11 release 4 or newer, or is Dell's 2.2 (which is a 4.0.3).
634   Unfortunately, the only way you can tell whether your X11 library is
635   new enough is to try compiling Emacs to use X.  If emacs runs, your
636   X11 library is new enough.
638   In this context, GSV4 and GSV4i are alternate names for X11R4.
639   OL2.* is X11R3 based.  OL3 is in between X11R3 and X11R4, and may or
640   may not work, depending on who made the Unix system.  If the library
641   libXol is part of the X distribution, then you have X11R3 and Emacs
642   won't work with X.
644   Most versions of V.4 support sockets.  If `/usr/lib/libsocket.so'
645   exists, your system supports them.  If yours does not, you must add
646   #undef HAVE_SOCKETS in config.h, after the inclusion of s-usg5-4.h.
647   (Any system that supports Internet should implement sockets.)
649 VMS (vmsM.N)
651   Richard Levitte <levitte@e.kth.se> distributes a set of patches to
652   Emacs 18.59 to make it work nicely under VMS.  Emacs 19 probably
653   won't work very well, or even compile.  Levitte is working on a
654   port, so these problems should be fixed in the near future.
656   Note that Emacs for VMS is usually distributed in a special VMS
657   distribution.  See the file ../vms/VMSINSTALL for info on moving
658   Unix distributions to VMS, and other VMS-related topics.
660 Windows NT/95/98/ME/2000
662   For installation on all versions of the MS-Windows platform, see the
663   file nt/INSTALL.
665 X86_64 GNU/Linux
667   No special procedures should be needed to build a 64-bit Emacs.  To
668   build a 32-bit Emacs, first ensure that the necessary 32-bit system
669   libraries and include files are installed.  Then use:
671     env CC="gcc -m32" ./configure --build=i386-linux-gnu \
672       --x-libraries=/usr/X11R6/lib
674   (using the location of the 32-bit X libraries on your system).
676 Support for the following obsolete platforms was removed in Emacs 23.1
677 (the names in parentheses state the files in src/ that were removed):
679   Apollo SR10.x (unexapollo.c)
680   Convex (unexconvex.c and m/convex.c)
681   Xenix (unexenix.c and s/xenix.h)
682   Iris  (unexmips.c m/iris4d.h m/irist.h s/iris3-5.h s/iris3-6.h)
683   Gould (m/gould*)
684   Siemens machines running Sinix (unexsni.c)
685   Harris CXUX (s/cxux*)
686   ESIX, a variant of v.5.3 for the 386 (s/esix*)
687   Interactive (ISC) Unix (s/isc*)
688   Sony News (s/newsos*)
689   RTU 3.0, ucb universe (s/rtu.h)
690   UniSoft's UniPlus 5.2 (s/uniplus.h)
691   UMAX (s/umax.h)
692   AT&T UNIX PC model 7300 (m/7300.h)
693   Acorn
694   Alliant (m/alliant*)
695   Amdahl (m/amdahl*)
696   Altos 3068 Unix System V Release 2 (m/altos.h)
697   Apollo (m/apollo.h)
698   AT&T 3b (m/att3b.h)
699   Aviion (m/aviion*)
700   Berkeley 4.1 (m/bsd4.1.h)
701   Berkeley 4.2 (m/bsd4.2.h)
702   Berkeley 4.3 (m/bsd4.3.h)
703   Celerity (m/celerity.h)
704   clipper (m/clipper.h)
705   convergent S series (m/cnvrgnt.h)
706   cydra (m/cydra5.h)
707   Motorola System V/88 machines (m/delta88k.h)
708   Bull DPX/2 range (m/dpx2.h)
709   Dual machines using unisoft port (m/dual.h)
710   Elxsi machine (running enix) (m/elxsi.h)
711   Fujitsu F301 machine (m/f301.h)
712   i860 (m/i860.h)
713   ibm ps/2 aix386 (m/ibmps2-aix.h)
714   ISI 68000's (m/is*)
715   Masscomp 5000 series running RTU, ucb universe (m/masscomp.h)
716   Megatest 68000's (m/mega68.h)
717   Whitechapel Computer Works MG1 (ns16000 based) (m/mg1.h)
718   Harris Night Hawk Series 1200 and Series 3000 (m/nh3000.h m/nh4000.h)
719   ns16000 (m/ns16000.h)
720   National Semiconductor 32000, running Genix (m/ns32000.h)
721   TI Nu machines using system V (m/nu.h)
722   HLH Orion (m/orion.h m/orion105.h)
723   Paragon i860 (m/paragon.h)
724   PFU A-series (m/pfa50.h)
725   Plexus running System V.2 (m/plexus.h)
726   pyramid. (m/pyramid.h)
727   sh3el (m/sh3el.h)
728   Bull SPS-7 (m/sps7.h)
729   Hitachi SR2001/SR2201 (m/sr2k.h)
730   Stride (m/stride.h)
731   Sun 1 (m/sun1.h)
732   Sun 2 (m/sun2.h)
733   SEQUENT SYMMETRY  (m/symmetry.h)
734   Tadpole 68k machines (m/tad68k.h)
735   tahoe (m/tahoe.h)
736   targon31 (m/targon31.h)
737   Tektronix* (m/tek4300.h m/tekxd88.h)
738   NCR Tower 32 running System V.2 (m/tower32.h)
739   NCR Tower 32 running System V.3 (m/tower32v3.h)
740   U-station (Nihon Unisys, SS5E; Sumitomo Denkoh, U-Station E30) (m/ustation.h)
741   Wicat (m/wicat.h)
742   Honeywell XPS100 running UNIX System V.2 (m/xps100.h)
743   Data General's DG/UX  (s/dgux*)
744   Irix before version 6
745   osf1 (s/osf*)
746   SunOS4 (s/sunos*)
747   RISCiX (s/riscix*)
748   SCO 3.2v4 (s/sco4.h)
749   SCO 3.2v5 (s/sco5.h)
750   Sun's 386-based RoadRunner (m/sun386.h)
751   Sun3 machines (m/sun3*)
752   Integrated Solutions 386 machine (m/is386.h)
753   Integrated Solutions `Optimum V' -- m68k-isi-bsd4.2 or -bsd4.3
754   Harris Power PC (powerpc-harris-powerunix)
755   Hewlett-Packard 9000 series 200 or 300 -- m68k-hp-bsd or m68k-hp-hpux or m68k-hp-netbsd
756   IBM PS/2 -- i386-ibm-aix1.1 or i386-ibm-aix1.2
757   GEC 63 -- local-gec63-usg5.2
758   Tandem Integrity S2 -- mips-tandem-sysv
759   System V rel 0 -- usg5.0
760   System V rel 2 -- usg5.2
761   System V rel 2.2 -- usg5.2.2
762   System V rel 3 -- usg5.3
763   Ultrix -- bsd4.3
766 Local variables:
767 mode: text
768 fill-prefix: "  "
769 End:
771 This file is part of GNU Emacs.
773 GNU Emacs is free software: you can redistribute it and/or modify
774 it under the terms of the GNU General Public License as published by
775 the Free Software Foundation, either version 3 of the License, or
776 (at your option) any later version.
778 GNU Emacs is distributed in the hope that it will be useful,
779 but WITHOUT ANY WARRANTY; without even the implied warranty of
780 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
781 GNU General Public License for more details.
783 You should have received a copy of the GNU General Public License
784 along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.
786 arch-tag: 7d2e93c7-e982-40ec-9055-3cd064042473