(U-00020E60): Use `->denotational' and `->subsumptive'.
[chise/xemacs-chise.git.1] / INSTALL
diff --git a/INSTALL b/INSTALL
index 8282e8b..9314b06 100644 (file)
--- a/INSTALL
+++ b/INSTALL
@@ -32,8 +32,8 @@ error in the command `temacs -batch -l loadup dump', found in
 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
@@ -42,20 +42,26 @@ Lisp libraries, miscellaneous data files, and on-line documentation. The
 exact amount depends greatly on the number of extra lisp packages that are
 installed 
 
-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).
+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).  GNU Texinfo 4.2 is recommended; it is necessary for building
+Lisp 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.
@@ -69,12 +75,19 @@ libraries are statically linked.
 
 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
 ==============
@@ -208,18 +221,39 @@ Motif menubar. (In fact, the Motif menubar is currently broken.)  If
 `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
@@ -307,10 +341,11 @@ version of malloc.  Debug Malloc is not included with XEmacs, is
 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
@@ -320,10 +355,15 @@ determining configure failures is the file `config.log', which
 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
@@ -662,6 +702,15 @@ when running make in the subdirectories.
 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
 ==============================
 
@@ -691,5 +740,6 @@ The most likely problem is that you forgot to read and follow the
 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.