XEmacs.
Verify that your users have a high enough stack limit. On some systems
-such as OpenBSD and OSF/Tru64 the default is 2MB which is too low. See
-'PROBLEMS' for details.
+such as OpenBSD and OSF/Tru64 the default is 2MB which is too low. On
+MacOS/X (Darwin), it's 512kB. See 'PROBLEMS' for details.
Building XEmacs requires about 100 Mb of disk space (including the
XEmacs sources). Once installed, XEmacs occupies between 20 and 100 Mb
XEmacs requires an ANSI C compiler, such as GCC. If you wish to build
the documentation yourself, you will need at least version 1.68 of
-makeinfo (GNU texinfo-3.11).
+makeinfo (GNU texinfo-3.11). GNU Texinfo 4.2 is recommended; it is
+necessary for building packages, and we may move to it for the core.
ADD-ON LIBRARIES
================
-Decide on what other software packages you would like to use with
-XEmacs, but are not yet available on your system. On some systems,
-Motif and CDE are optional additions. On Solaris, the SUNWaudmo
-package enables native sound support. There are also a number of free
-software packages that XEmacs can use. If these are not yet available
-on your system, obtain, build and install those external packages
-before building XEmacs. The packages XEmacs can use are:
+Decide which libraries you would like to use with XEmacs, but are not
+yet available on your system. On some systems, X11, Motif and CDE are
+optional additions. On MacOS/X systems, you may download X11R6 for
+Mac OS X from http://www.apple.com/macosx/x11/download/. You need
+both the runtime libraries and the SDK (in a sidebar of that page at
+the time of writing). There is also a 3rd-party implementation of
+X11R6 for the Mac at http://www.xdarwin.org/. On Solaris, the
+SUNWaudmo package enables native sound support. There are also a
+number of free software applications that XEmacs can use. If these
+are not yet available on your system, obtain, build and install those
+external libraries before building XEmacs. The libraries XEmacs can
+use are:
Xaw3d, XPM, JPEG, compface, PNG, zlib, GNU DBM, Berkeley DB, socks,
term, NAS, Canna, Kinput2, SJ3, Wnn.
Use the --site-includes and --site-libraries options when building
XEmacs to allow configure to find the external software packages.
-If you link with dynamic (``.so'') external package libraries, which
-is not recommended, you will also need to add the library directories
-to the --site-runtime-libraries option. For your convenience these can
-be set together by using the --with-site-prefix command. This will set
-these variables as needed assuming your libraries are organised as a
-typical /usr tree.
+Note that for X11 includes, you should put the files in the X11
+subdirectory of the --site-includes directory. Eg, XEmacs sources
+#include <X11/xpm.h>. In that case, you should omit the trailing
+"/X11" from --site-includes, or the trailing "/includes/X11" from
+--site-prefixes. The latter is convenient if your libraries are
+installed under "includes/../lib". The directories specified with
+--site-includes or --site-libraries take precedence over those
+specified with --site-prefixes, and those take precedence over the
+standard search paths.
+
+If you link with dynamic (``.so'') external package libraries, you
+will also need to add the runtime library directories to the
+--site-runtime-libraries option.
PACKAGE SYSTEM
==============
`no' is specified then support for menubars will not be compiled in.
The `--with-scrollbars=TYPE' option allows you to specify which X
-toolkit you wish to use for the scrollbars. The valid options are
-`lucid', `motif', `athena', `athena3d', and `no'. The default is
-`lucid' which is a Motif-lookalike scrollbar. If `no' is specified
-then support for scrollbars will not be compiled in.
+toolkit you wish to use for the scrollbars.
The `--with-dialogs=TYPE' option allows you to specify which X toolkit
-you wish to use for the dialog boxes. The valid options are `athena',
-`athena3d', `motif, and `no. The `lucid' option is accepted and will
-result in the `athena' toolkit being used. If the Motif toolkit can be
-found the default is `motif'. Otherwise, the default is `athena'. If
-`no' is specified then support for dialog boxes will not be compiled
-in.
+you wish to use for the dialog boxes.
+
+The `--with-widgets=TYPE' option allows you to specify which X toolkit
+you wish to use for native widgets.
+
+ The valid options for TYPE in the `--with-scrollbars',
+ `--with-dialogs', and `--with-widgets' options are `lucid',
+ `motif', `athena', `msw', `gtk', and `no'. The `gtk' and `msw'
+ options are only available on the GTK and MS Windows platforms,
+ respectively. When available, `gtk' or `msw' and `no' are the
+ only options. Otherwise, for dialogs and widgets, if the Motif
+ toolkit can be found the default is `motif'. If not, the default
+ is `athena'. `lucid' is an alias for `athena'. If `no' is
+ specified then support for these GUI components will not be
+ compiled in.
+
+ For scrollbars, the default is `lucid' which is a Motif-lookalike
+ scrollbar. Otherwise, if the Motif toolkit can be found the
+ default is `motif'. If not, the default is `athena'. If `no' is
+ specified then support for scrollbars will not be compiled in.
+
+ If `athena' (or `lucid', for dialogs and widgets) is specified for
+ any component (even by default), the type of Athena library must
+ be specified using the following option if more than one is
+ available. It is not always possible to distinguish them, and
+ mixing and matching Athena libraries will result in crashes.
+
+The `--with-athena=TYPE' option specifies the kind of Athena library
+being used. Valid values include `xaw', `3d', `xpm', `95', and `next'.
+There is no default.
The `--with-toolbars' option allows you to enable or disable toolbar
support. The default is `yes' as long as support for a windowing
intended for use only by the developers and may be obtained from
<URL:http://www.letters.com/dmalloc/>.
-The `--debug' and `--error-checking' options are intended for use only
-by the developers. `--debug' adds code to be compiled in for
-performing various tests. `--error-checking' adds additional tests to
-many of the commonly used macros.
+The `--debug' and `--error-checking' options are primarily useful to the
+developers. `--debug' incorporates code for performing various tests,
+but does not impose a speed penalty. `--error-checking' adds additional
+tests to many of the commonly used macros, and imposes a speed penalty.
+Neither is especially useful in most common debugging situations.
The `--verbose' and `--extra-verbose' options are intended for use
only by the developers. `--verbose' causes the results of all
contains the results of the compile and link tests used by configure.
The `--with-mule' option enables (MUlti-Lingual Emacs) support, needed
-to support non-Latin-1 (including Asian) languages. The Mule support
-is not yet as stable or efficient as the `Latin1' support. Enabling
-Mule support requires the mule-base package installed prior to
-building XEmacs. The following options require Mule support:
+to support non-Latin-1 (including Asian) languages. Mule support is
+required for Asian language and Unicode (multibyte and wide character)
+support. With the advent of the Euro and European Community
+expansion, Mule support is also recommended for Western Europeans.
+Enabling Mule support requires the mule-base package installed prior
+to building XEmacs. The mule-ucs package is required for Unicode
+support (but may be added at any time). For Europeans using Latin
+alphabets, and for support for the Euro symbol, the latin-unity
+package is recommended. The following options require Mule support:
The `--with-xim' option enables use of the X11 XIM mechanism to allow
an input method to input text into XEmacs. The input method is shared
MAIL LOCKING
============
-Find out what the preferred method for locking mail spool files is in
-your environment. Presently, XEmacs supports lockf, flock, and dot
-locking. Specify the locking method via the --mail-locking=METHOD
-option to configure. Valid values for METHOD are --mail-locking are
-`lockf', `flock', and `dot'.
+For most platforms, configure or the src/s file have the preferred
+method for locking mail spool files preconfigured. Otherwise you must
+find out for youself. Do not choose a locking protocol "on the
+objective merits." XEmacs must use the same method as other mail
+utilities on your system, or you will lose mail.
+
+Presently, XEmacs supports lockf, flock, and dot locking. Specify the
+locking method via the --mail-locking=METHOD option to configure.
+Valid values for METHOD are --mail-locking are `lockf', `flock', and
+`dot'.
RUNNING CONFIGURE
=================
Using GNU Make allows for simultaneous builds with and without the
--srcdir option.
+STRIPPING BINARIES
+==================
+
+This saves nothing but a small (by modern standards) amount of disk
+space; the symbol table is not loaded into memory at execution time.
+If you do encounter a crash or other serious bug, the first thing the
+developers will do is ask you to build an XEmacs with a full symbol
+table, anyway. Don't strip the XEmacs binary.
+
MAIL-LOCKING POST-INSTALLATION
==============================
directions in README.packages. You can not have a working XEmacs
without downloading some additional packages.
-See the file PROBLEMS in this directory for a list of various
-problems sometimes encountered, and what to do about them.
+See the file PROBLEMS in this directory for a list of various problems
+sometimes encountered, and what to do about them. PROBLEMS is also
+the place where platform-specific build notes can be found.