Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
[bpt/emacs.git] / mac / INSTALL
CommitLineData
e0f712ba 1* BUILDING EMACS ON MAC OS 8/9 AND MAC OS X -*- outline -*-
1a578e9b 2
e0f712ba 3Copyright (c) 2001, 2002 Free Software Foundation, Inc.
b6955da2
AC
4
5 Permission is granted to anyone to make or distribute verbatim
6 copies of this document as received, in any medium, provided that
7 the copyright notice and permission notice are preserved, and that
8 the distributor grants the recipient permission for further
9 redistribution as permitted by this notice.
10
11 Permission is granted to distribute modified versions of this
12 document, or of portions of it, under the above conditions,
13 provided also that they carry prominent notices stating who last
14 changed them.
15
e0f712ba 16* BUILDING EMACS ON MAC OS X
1a578e9b 17
e0f712ba
AC
18You should be able to build Emacs on Mac OS X by typing the following
19commands at the top-level directory after the source distribution is
20un-tarred.
1a578e9b 21
e0f712ba
AC
22 ./configure
23 make
24 make install
1a578e9b 25
e0f712ba 26The last step must be performed as root.
1a578e9b 27
e0f712ba
AC
28If you have X Window installed, you need to type `./configure
29--without-x' instead of `./configure'.
1a578e9b 30
e0f712ba
AC
31You can type `make bootstrap' instead of `make' to rebuild everything,
32including byte-compiling the Lisp files.
1a578e9b 33
e0f712ba
AC
34If you have not installed the GNU texinfo package on your system, the
35build will complain that makeinfo cannot be found. Instructions for
36installing the GNU texinfo package are given below. Alternatively,
37you can type `make -k' instead of `make' and safely ignore the error
38messages and use the existing info files.
1a578e9b 39
e0f712ba
AC
40After Emacs is installed, you can run it by typing `emacs -nw' from a
41terminal (make sure your path contains /usr/local/bin) or by
42double-clicking on mac/Emacs.app in the Finder. At present,
43command-line options cannot be passed to Emacs running under the Aqua
44GUI. This should soon be fixed.
1a578e9b 45
e0f712ba
AC
46To use colors in a terminal, put the following lines in the file
47~/.termcap and log in again.
1a578e9b 48
e0f712ba
AC
49-----
50# added ANSI color
51vt100|vt100-am|vt100am|dec vt100:\
52 :pa#64:Co#8:Sf=\E[3%dm:Sb=\E[4%dm:op=\E[m:AF=\E[3%dm:AB=\E[4%dm:\
53 :do=^J:co#80:li#24:cl=\E[;H\E[2J:sf=2*\ED:\
54 :le=^H:bs:am:cm=5\E[%i%d;%dH:nd=2\E[C:up=2\E[A:\
55 :ce=3\E[K:cd=50\E[J:so=2\E[7m:se=2\E[m:us=2\E[4m:ue=2\E[m:\
56 :md=2\E[1m:mr=2\E[7m:mb=2\E[5m:me=2\E[m:\
57 :rf=/usr/share/tabset/vt100:\
58 :rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[;r\E[0m\E(B\E)B\E[2J:\
59 :ks=\E[?1h\E=:ke=\E[?1l\E>:\
60 :ku=\EOA:kd=\EOB:kr=\EOC:kl=\EOD:kb=^H:\
61 :ho=\E[H:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:pt:sr=2*\EM:vt#3:xn:\
62 :sc=\E7:rc=\E8:cs=\E[%i%d;%dr:
63-----
64
65To build a binary distribution of Emacs for Mac OS X, run the shell
66script make-bin-dist in the `mac' directory. This will create a file
67emacs-21.xx.yy-mac-bin.tar.gz.
68
69To install the binary distribution, untar the file and run the shell
70script osx-install in its top-level directory.
71
72To build the `info' files, you need to install the texinfo software.
73
74To install from source, obtain texinfo-4.2.tar.gz from ftp.gnu.org or
75a mirror. Un-tar it, enter its directory and type
76
77 ./configure
78 make
79 make install
80
81The last step needs to be performed as root.
82
83You may also like to install ispell, which will allow you to use
84ispell and flyspell-mode. To install ispell from source, you first
85need to install GNU textutils.
86
87To do so, download textutils-2.0.tar.gz from ftp.gnu.org or a mirror.
88Un-tar it, enter its directory, type
89
90 ./configure --host=powerpc-apple-bsd
91 make
92 make install
93
94Again, the last step needs to be performed as root. Note that if you
95run `make check', the test for `pr' will fail.
96
97Get and un-tar ispell-3.2.06.tar.gz. Look for it here:
98
99 http://fmg-www.cs.ucla.edu/geoff/ispell.html
100
101Go into its directory, type
1a578e9b 102
e0f712ba
AC
103 cp local.h.samp local.h
104
105Add a line `#define TERMLIB ""' to the end of local.h.
106
107Set the environment variable TMPDIR to an existing directory. For
108example since `/tmp' exists on my machine and I am using `bash', I
109typed
110
111 export TMPDIR=/tmp
112
113Run `make' and `make install', the latter as root.
114
115
116* BUILDING EMACS ON MAC OS 8/9
117
118You can use either Metrowerks CodeWarrior Pro 6 or MPW-GM (Aug. 2001)
119to build Emacs. MPW-GM can be downloaded free of charge from Apple.
120
121In either case, you will need MPW-GM to build the make-docfile utility
122and to generate the doc string file DOC.
123
124### IMPORTANT ### You can use StuffIf Expander to decompress and untar
125the distribution. However, you *must* set the radio button in the
fa0b4c14
AC
126Preferences->Cross Platform->Convert text files to Macintosh format to
127"Never". Otherwise the compiled Lisp files will be corrupted.
128
e0f712ba
AC
129(Optional) A subset of the fonts from the GNU intlfonts-1.2
130distribution converted to NFNT format can be obtained from
131
132 ftp://mac-emacs.sourceforge.net/pub/mac-emacs/GNU-fonts.smi.bin
1a578e9b
AC
133
134To build Emacs in the MPW Shell, simply set the directory to
135...:emacs:mac: and build the target Emacs of the make file
136makefile.mpw. I.e., execute the commands
137
138 make Emacs -f makefile.MPW > Emacs.MakeScript
139 Emacs.MakeScript
140
141To build Emacs using CodeWarrior, start up the CodeWarrior IDE, choose
e0f712ba 142File->Import Project... and select the file cw6-mcp.xml. When
2d7d0390 143prompted to save the project, navigate to same directory as the file
e0f712ba
AC
144cw6-mcp.xml, name the project emacs-cw6.mcp, and save it there. Then
145choose Project->Make. Note that this does not build the DOC file. To
146do so, use MPW and build the target "Doc" in makefile.MPW.
1a578e9b
AC
147
148Once built, the Emacs application (Emacs CW or Emacs MPW) can be
149launched where it is created.
150
151To build an optimized version of Emacs in CodeWarrior, change the
152value in the Emacs Settings->Code Generation->Global Optimization
153dialog. To build a version for profiling, check the Profiler
154Information box in the Emacs Settings->Code Generation->PPC Processor
155dialog and include the Profiler PPC.Lib library.
156
1a578e9b
AC
157* NOTES
158
e0f712ba 159Emacs should build and run on a PowerMac running Mac OS 8.6 - 10.1.
1a578e9b
AC
160
161You will need around 100 MB of disk space for the source files and
162intermediate files.
163
e0f712ba
AC
164It will not run on machines running Mac OS 8/9 with more than 256 MB
165of physical or virtual memory. It does not have this restriction when
166it is run under Mac OS X. But the usual 128MB buffer limit of a
16732-bit Emacs still exists.
1a578e9b 168
e0f712ba
AC
169Under Mac OS 8/9, there is no support for building the LEIM directory.
170However, it can be built on Mac OS X or another platform and
171transferred to the Mac.
1a578e9b 172
e0f712ba
AC
173On Mac OS 8/9, to use the same icon as when Emacs is built on Windows
174NT, define GNU_ICON in mac/src/Emacs.r. Currently Emacs uses a
175generic application icon on the Mac OS X. A better looking one is
176coming soon.
1a578e9b 177
1a578e9b 178
e0f712ba 179Enjoy!
1a578e9b 180
e0f712ba
AC
181Andrew.
182<akochoi@mac.com>