declare smobs in alloc.c
[bpt/emacs.git] / etc / MACHINES
1 Emacs machines list
2
3 Copyright (C) 1989-1990, 1992-1993, 1998, 2001-2014 Free Software
4 Foundation, Inc.
5 See the end of the file for license conditions.
6
7 This is a list of the status of GNU Emacs on various machines and systems.
8
9 Information about older releases, and platforms that are no longer
10 supported, has been removed. Consult older versions of this file if
11 you are interested in this information.
12
13 The `configure' script uses the configuration name, and the results of
14 testing the system, to decide which options to use in src/config.h and
15 elsewhere (eg Makefiles).
16
17 If you add support for a new configuration, add a section to this
18 file, and edit the `configure.ac' source as needed.
19
20 Some obsolete platforms are unsupported beginning with Emacs 23.1. See
21 the list at the end of this file.
22
23 \f
24 * Here are notes about some of the systems supported:
25
26 ** GNU/Linux
27
28 Most of the complete systems which use the Linux kernel are close
29 enough to the GNU system to be considered variant GNU systems. We
30 call them "Linux-based GNU systems," or GNU/Linux for short.
31
32 It is not coincidence that many of the other components used with
33 Linux--including GNU Emacs--were developed specifically for the GNU
34 project. The GNU project was launched in 1984 to develop a free
35 complete Unix-like operating system. To reach this goal, we had to
36 develop whatever system components were not available as freely
37 redistributable software from some other source.
38
39 The GNU project wants users of GNU/Linux systems to be aware of how
40 these systems relate to the GNU project, because that will help
41 spread the GNU idea that software should be free--and thus encourage
42 people to write more free software. For more information, see
43 <http://www.gnu.org/gnu/linux-and-gnu.html>.
44
45 *** 64-bit GNU/Linux
46
47 No special procedures should be needed to build a 64-bit Emacs on a
48 64-bit GNU/Linux system. To build a 32-bit Emacs, first ensure that
49 the necessary 32-bit system libraries and include files are
50 installed. Then use:
51
52 ./configure CC='gcc -m32' --build=i386-linux-gnu \
53 --x-libraries=/usr/X11R6/lib
54
55 (using the location of the 32-bit X libraries on your system).
56
57 *** IBM System/390 running GNU/Linux (s390-*-linux-gnu)
58
59 As of Emacs 21.2, a 31-bit only version is supported on this system.
60
61 *** SuperH (sh[34]*-*-linux-gnu)
62
63 Emacs 23.0.60 was reported to work on GNU/Linux (October 2008).
64 This was tested on a little-endian sh4 system (cpu type SH7751R) running
65 Gentoo Linux 2008.0.
66
67 ** Mac OS X
68
69 For installation instructions see the file nextstep/INSTALL.
70
71 ** Microsoft Windows
72
73 For installation instructions see the file nt/INSTALL.
74
75 ** MS-DOS
76
77 For installation instructions see the file msdos/INSTALL.
78 See the "MS-DOS" chapter of the manual for information about using
79 Emacs on MS-DOS.
80
81 ** Solaris
82
83 On Solaris it is also possible to use either GCC or Solaris Studio
84 to build Emacs, by pointing ./configure to the right compiler:
85
86 ./configure CC='/usr/sfw/bin/gcc' # GCC
87 ./configure CC='cc' # Solaris Studio
88
89 On Solaris, do not use /usr/ucb/cc. Use /opt/SUNWspro/bin/cc. Make
90 sure that /usr/ccs/bin and /opt/SUNWspro/bin are in your PATH before
91 /usr/ucb. (Most free software packages have the same requirement on
92 Solaris.) With this compiler, use `/opt/SUNWspro/bin/cc -E' as the
93 preprocessor. If this inserts extra whitespace into its output (see
94 the PROBLEMS file) then add the option `-Xs'.
95
96 To build a 64-bit Emacs (with larger maximum buffer size) on a
97 Solaris system which supports 64-bit executables, specify the -m64
98 compiler option. For example:
99
100 ./configure CC='/usr/sfw/bin/gcc -m64' # GCC
101 ./configure CC='cc -m64' # Solaris Studio
102
103 ** Irix 6.5
104
105 Emacs versions later than 24.4 will not compile on Irix by default.
106 (Note that SGI stopped supporting Irix in December 2013.)
107 You should be able to work around the problem either by porting the
108 Emacs undumping code to GCC under Irix, or by configuring --with-wide-int.
109 Older versions of Emacs 24 (and 23?) also had problems on Irix.
110 It *may* be possible to build Emacs <= 24.4 on Irix 6.5 with an old
111 version (3.1) of gcc. Newer versions of gcc may not work.
112 See <http://debbugs.gnu.org/9684>.
113
114 \f
115 * Obsolete platforms
116
117 Support for many obsolete platforms was removed in Emacs 23.1.
118 If for some reason you encounter an ancient machine where current
119 Emacs does not compile, try an older release like Emacs 22.3.
120
121 \f
122 Local variables:
123 mode: outline
124 fill-prefix: " "
125 End:
126
127 This file is part of GNU Emacs.
128
129 GNU Emacs is free software: you can redistribute it and/or modify
130 it under the terms of the GNU General Public License as published by
131 the Free Software Foundation, either version 3 of the License, or
132 (at your option) any later version.
133
134 GNU Emacs is distributed in the hope that it will be useful,
135 but WITHOUT ANY WARRANTY; without even the implied warranty of
136 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
137 GNU General Public License for more details.
138
139 You should have received a copy of the GNU General Public License
140 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.