]> code.delx.au - gnu-emacs/blobdiff - mac/INSTALL
New file.
[gnu-emacs] / mac / INSTALL
index 3ea6ab6f39252967b23df45214ee37ecc3e90f89..79007f8c3240449a70299b02516718bf21d54914 100644 (file)
@@ -1,6 +1,6 @@
-* BUILDING EMACS ON THE MAC OS     -*- outline -*-
+* BUILDING EMACS ON MAC OS 8/9 AND MAC OS X     -*- outline -*-
 
-Copyright (c) 2001 Free Software Foundation, Inc.
+Copyright (c) 2001, 2002 Free Software Foundation, Inc.
 
    Permission is granted to anyone to make or distribute verbatim
    copies of this document as received, in any medium, provided that
@@ -13,36 +13,168 @@ Copyright (c) 2001 Free Software Foundation, Inc.
    provided also that they carry prominent notices stating who last
    changed them.
 
-You can use either Metrowerks CodeWarrior Pro 5 or 6 or MPW-GM
-(Aug. 2000) to build Emacs.  MPW-GM can be downloaded free of charge
-from Apple at
+* BUILDING EMACS ON MAC OS X
 
-  http://developer.apple.com/tools/mpw-tools/
+You should be able to build Emacs on Mac OS X by typing the following
+commands at the top-level directory after the source distribution is
+un-tarred.
 
-You will need MPW-GM to build the make-docfile utility and to generate
-the doc string file DOC.
+  ./configure --enable-carbon-app
+  make
+  make install
 
-To decompress files, you can use MacGzip from
+The last step may fail if you do not have permissions to install.  If
+you try to install into /usr (with ./configure --prefix=/usr), then you
+must install as root using the sudo command.  However, it is not
+recommended; see the notes section below for more details.
 
-  http://persephone.cps.unizar.es/~spd/gzip
+The --enable-carbon-app specifies that the carbon GUI application
+should be installed into /Application.  If you want it to install in a
+different location, specify --enable-carbon-app=<mydir>
 
-and to untar them, you can use tar 4.0 from
+If you have X Window installed on your Mac and you are building Emacs
+to run under Carbon and not X Window, you need to type `./configure
+--without-x' instead of `./configure'.
 
-  http://hyperarchive.lcs.mit.edu/HyperArchive/Archive/cmp/tar-40b.hqx
+You can type `make bootstrap' instead of `make' to rebuild everything,
+including byte-compiling the Lisp files.
 
-(Optional) If you wish to fetch files from the Emacs CVS repository
-directly to your Mac, you can use the CVS client MacCVS, which can be
-downloaded from
+If you are compiling on Mac OS X versions before 10.2 and have not
+installed the GNU texinfo package on your system, the build will
+complain that makeinfo cannot be found.  Instructions for installing the
+GNU texinfo package are given below.  Alternatively, you can type `make
+-k' instead of `make' and safely ignore the error messages and use the
+existing info files.
 
-  http://www.wincvs.org/
+After Emacs is installed, you can run it by typing `emacs -nw' from a
+terminal (make sure your path contains /usr/local/bin) or by
+double-clicking on /Applications/Emacs.app in the Finder.  To start
+Emacs as a GUI application from the terminal, the pathname to the
+executable in the bundle, i.e.,
+
+  /Application/Emacs.app/Contents/MacOS/Emacs
+
+must be typed to the shell to enable Emacs to locate its resources
+correctly.  You may want to create a symlink or alias to this path to
+quickly access both the terminal and GUI versions.
+
+If you are building Emacs to run on Mac OS X and X Window,
+instead of typing `./configure' above, type
+
+  ./configure --without-carbon --with-x
+
+
+To use colors in a terminal, put the following lines in the file
+~/.termcap and log in again.
+
+-----
+# added ANSI color
+vt100|vt100-am|vt100am|dec vt100:\
+    :pa#64:Co#8:Sf=\E[3%dm:Sb=\E[4%dm:op=\E[m:AF=\E[3%dm:AB=\E[4%dm:\
+    :do=^J:co#80:li#24:cl=\E[;H\E[2J:sf=2*\ED:\
+    :le=^H:bs:am:cm=5\E[%i%d;%dH:nd=2\E[C:up=2\E[A:\
+    :ce=3\E[K:cd=50\E[J:so=2\E[7m:se=2\E[m:us=2\E[4m:ue=2\E[m:\
+    :md=2\E[1m:mr=2\E[7m:mb=2\E[5m:me=2\E[m:\
+    :rf=/usr/share/tabset/vt100:\
+    :rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h\E[;r\E[0m\E(B\E)B\E[2J:\
+    :ks=\E[?1h\E=:ke=\E[?1l\E>:\
+    :ku=\EOA:kd=\EOB:kr=\EOC:kl=\EOD:kb=^H:\
+    :ho=\E[H:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:pt:sr=2*\EM:vt#3:xn:\
+    :sc=\E7:rc=\E8:cs=\E[%i%d;%dr:
+-----
+
+To build the `info' files in versions prior to Mac OS X 10.2, you need
+to install the texinfo software.
+
+To install from source, obtain texinfo-4.2.tar.gz from ftp.gnu.org or
+a mirror.  Un-tar it, enter its directory and type
+
+  ./configure
+  make
+  make install
+
+The last step may need to be performed as root (sudo make install).
+
+You may also like to install ispell, which will allow you to use
+ispell and flyspell-mode.  To install ispell from source, you first
+need to install GNU textutils.
+
+To do so, download textutils-2.0.tar.gz from ftp.gnu.org or a mirror.
+Un-tar it, enter its directory, type
+
+  ./configure --host=powerpc-apple-bsd
+  make
+  make install
+
+Again, the last step may need to be performed as root.  Note that if you
+run `make check', the test for `pr' will fail.
+
+Get and un-tar ispell-3.2.06.tar.gz.  Look for it here:
+
+  http://fmg-www.cs.ucla.edu/geoff/ispell.html
+
+Go into its directory, type
+
+  cp local.h.samp local.h
+
+Add a line `#define TERMLIB ""' to the end of local.h.
+
+Set the environment variable TMPDIR to an existing directory.  For
+example since `/tmp' exists on my machine and I am using `bash', I
+typed
+
+  export TMPDIR=/tmp
+
+Run `make' and `make install', the latter as root.
+
+* BUILDING BINARY DISTRIBUTIONS FOR MAC OS X
+
+If you are intending to build a binary distribution of Emacs, there is
+a script that will greatly simplify the process.  It is called
+make-package and it is contained in this directory.  It will generate
+a disc image containing a installer bundle.  By default the installer
+will place the emacs common files in /usr/local/* and the carbon
+application in /Applications.  Typical usage would be
+
+./make-package
+
+After running, an compressed disk image of the installer will be placed
+in a file called EmacsInstaller.dmg.  This file can be then distributed
+to whomever would like a binary distribution.  Here are the common
+options to user
+
+--with-x         -  Use the X11 GUI instead of the Carbon GUI.
+--prefix=DIR     -  Place the common emacs files in the given DIR.  The
+                   default is /usr/local.  See note below if placing
+                   in /usr
+--self-contained -  Place the common emacs files inside the Emacs.app
+                   itself.  This makes the application trivial to
+                   uninstall and copy between computers.
+--app-symlink    -  Use a symlink inside the Application to the
+                   $prefix/bin/emacs to reduce disk space.  Note, this
+                   option may removed in the future.
+
+
+For usage of other options, use the --help option.
+
+* BUILDING EMACS ON MAC OS 8/9
+
+You can use either Metrowerks CodeWarrior Pro 6 or MPW-GM (Aug. 2001)
+to build Emacs.  MPW-GM can be downloaded free of charge from Apple.
+
+In either case, you will need MPW-GM to build the make-docfile utility
+and to generate the doc string file DOC.
+
+### IMPORTANT ### You can use StuffIf Expander to decompress and untar
+the distribution.  However, you *must* set the radio button in the
+Preferences->Cross Platform->Convert text files to Macintosh format to
+"Never".  Otherwise the compiled Lisp files will be corrupted.
 
 (Optional) A subset of the fonts from the GNU intlfonts-1.2
 distribution converted to NFNT format can be obtained from
 
   ftp://mac-emacs.sourceforge.net/pub/mac-emacs/GNU-fonts.smi.bin
 
-* BUILDING EMACS
-
 To build Emacs in the MPW Shell, simply set the directory to
 ...:emacs:mac: and build the target Emacs of the make file
 makefile.mpw.  I.e., execute the commands
@@ -51,13 +183,11 @@ makefile.mpw.  I.e., execute the commands
   Emacs.MakeScript
 
 To build Emacs using CodeWarrior, start up the CodeWarrior IDE, choose
-File->Import Project...  and select the file cw5-mcp.xml or
-cw6-mcp.xml, depending on which verison of CodeWarrior used.  When
+File->Import Project...  and select the file cw6-mcp.xml.  When
 prompted to save the project, navigate to same directory as the file
-cw[56]-mcp.xml, name it emacs-cw5.mcp or emacs-cw6.mcp, and save it
-there.  Then choose Project->Make.  Note that this does not build the
-DOC file.  To do so, use MPW and build the target "Doc" in
-makefile.MPW.
+cw6-mcp.xml, name the project emacs-cw6.mcp, and save it there.  Then
+choose Project->Make.  Note that this does not build the DOC file.  To
+do so, use MPW and build the target "Doc" in makefile.MPW.
 
 Once built, the Emacs application (Emacs CW or Emacs MPW) can be
 launched where it is created.
@@ -68,51 +198,33 @@ dialog.  To build a version for profiling, check the Profiler
 Information box in the Emacs Settings->Code Generation->PPC Processor
 dialog and include the Profiler PPC.Lib library.
 
-To build optimized or debugging version of Emacs in MPW, follow the
-comment in makefile.MPW to enable the -opt speed or -sym on option
-(see note below).
-
-The Mac version requires compiled Lisp files to be present in the lisp
-directory to run properly.  It is cumbersome to bootstrap from only
-the Lisp source files.  One way of getting the compiled Lisp files is
-to build Emacs once on, say, a Unix system and transfer that directory
-to the Mac.  Note that linefeed conversion must be disabled when
-transferring compiled Lisp files.
-
-An alternative is to unzip and untar the archive lisp-elc.tgz.  An
-older version of frame.elc in the archive may cause a problem when the
-Mac version starts up.  If this is the case, simply remove or rename
-that file.  Then once Emacs runs, you can invoke
-byte-recompile-directory on the lisp directory to byte-compile all
-out-of-date Lisp files.
-
-You may also need to run update-autoloads-from-directories on the lisp
-directory to bring loaddefs.el up-to-date.
-
 * NOTES
 
-Emacs should build and run on a PowerMac running Mac OS 8.1 - 9.0.
+Emacs should build and run on a PowerMac running Mac OS 8.6 - 10.2.
 
 You will need around 100 MB of disk space for the source files and
 intermediate files.
 
-It will not run on machines with more than 256 MB of physical or
-virtual memory.
-
-Currently there is no support for building the LEIM directory on the
-Mac.  However, it can be built on another platform and transferred to
-the Mac.
+It will not run on machines running Mac OS 8/9 with more than 256 MB
+of physical or virtual memory.  It does not have this restriction when
+it is run under Mac OS X.  But the usual 128MB buffer limit of a
+32-bit Emacs still exists.
 
-When Emacs is built with "-opt speed" enabled in makefile.MPW,
-optimization causes the functions reset_buffer_local_variables in
-buffer.c and syms_of_lread in lread.c to crash.  Avoid this by
-enclosing them in the following pragmas.
+Under Mac OS 8/9, there is no support for building the LEIM directory.
+However, it can be built on Mac OS X or another platform and
+transferred to the Mac.
 
-  #pragma options opt off
+On Mac OS 8/9, to use the same icon as when Emacs is built on Windows
+NT, define GNU_ICON in mac/src/Emacs.r.  Currently Emacs uses a
+generic application icon on the Mac OS X.  A better looking one is
+coming soon.
 
-  <function definition...>
+On Mac OS X, installing the emacs files in /usr can cause issues with
+system sofware updates possibly overwriting the distribution.  If this
+is a concern, as it should be in normal binary distributions, please
+use /usr/local as the prefix for installation.
 
-  #pragma options opt reset
+Enjoy!
 
-To use the same icon as when Emacs is built on Windows NT, define
-GNU_ICON in mac/src/Emacs.r.
+Andrew.
+<akochoi@mac.com>