Rationalize calendar handling of day and month abbrev-arrays.
[bpt/emacs.git] / INSTALL
diff --git a/INSTALL b/INSTALL
index 75d691f..b0f4f11 100644 (file)
--- a/INSTALL
+++ b/INSTALL
@@ -1,28 +1,41 @@
 GNU Emacs Installation Guide
-Copyright (C) 1992, 1994, 1996, 1997, 2000, 2001, 2002, 2003, 2004,
-2005, 2006, 2007, 2008  Free Software Foundation, Inc.
+Copyright (C) 1992, 1994, 1996-1997, 2000-2011
+  Free Software Foundation, Inc.
 See the end of the file for license conditions.
 
 
+This file contains general information on building GNU Emacs.
+For more information specific to the MS-Windows, GNUstep/Mac OS X, and
+MS-DOS ports, also read the files nt/INSTALL, nextstep/INSTALL, and
+msdos/INSTALL.  For information about building from a Bazaar checkout
+(rather than a release), also read the file INSTALL.BZR.
+
+
 BASIC INSTALLATION
 
-The simplest way to build Emacs is to use the `configure' shell script
-which attempts to guess correct values for various system-dependent
-variables and features and find the directories where various system
-headers and libraries are kept.  It then creates a `Makefile' in each
-subdirectory and a `config.h' file containing system-dependent
-definitions.  Running the `make' utility then builds the package for
-your system.
+On most Unix systems, you build Emacs by first running the `configure'
+shell script.  This attempts to deduce the correct values for
+various system-dependent variables and features, and find the
+directories where certain system headers and libraries are kept.
+In a few cases, you may need to explicitly tell configure where to
+find some things, or what options to use.
 
-Here's the procedure to build Emacs using `configure' on systems which
-are supported by it.  If this simplified procedure fails, or if you
-are using a platform such as MS-Windows, where `configure' script
-doesn't work, you might need to use various non-default options, and
-maybe perform some of the steps manually.  The more detailed
-description in the rest of the sections of this guide will help you do
-that, so please refer to them if the simple procedure does not work.
+`configure' creates a `Makefile' in several subdirectories, and a
+`src/config.h' file containing system-dependent definitions.
+Running the `make' utility then builds the package for your system.
 
-  1. Make sure your system has at least 120 MB of free disk space.
+Here's the procedure to build Emacs using `configure' on systems which
+are supported by it.  In some cases, if the simplified procedure fails,
+you might need to use various non-default options, and maybe perform
+some of the steps manually.  The more detailed description in the other
+sections of this guide will help you do that, so please refer to those
+sections if you need to.
+
+  1. Unpacking the Emacs 23.2 release requires about 170 MB of free
+  disk space.  Building Emacs uses about another 60 MB of space.
+  The final installed Emacs uses about 120 MB of disk space.
+  This includes the space-saving that comes from automatically
+  compressing the Lisp source files on installation.
 
   2a. `cd' to the directory where you unpacked Emacs and invoke the
       `configure' script:
@@ -35,8 +48,8 @@ that, so please refer to them if the simple procedure does not work.
 
                 SOURCE-DIR/configure
 
-      where SOURCE-DIR is the top-level Emacs source directory.  This
-      may not work unless you use GNU make.
+      where SOURCE-DIR is the top-level Emacs source directory.
+      This may not work unless you use GNU make.
 
   3. When `configure' finishes, it prints several lines of details
      about the system configuration.  Read those details carefully
@@ -44,17 +57,18 @@ that, so please refer to them if the simple procedure does not work.
      system names, wrong places for headers or libraries, missing
      libraries that you know are installed on your system, etc.
 
-     If you find anything wrong, you will have to pass to `configure'
-     explicit machine configuration name, and one or more options
-     which tell it where to find various headers and libraries; refer
-     to DETAILED BUILDING AND INSTALLATION section below.
+     If you find anything wrong, you may have to pass to `configure'
+     one or more options specifying the explicit machine configuration
+     name, where to find various headers and libraries, etc.
+     Refer to the section DETAILED BUILDING AND INSTALLATION below.
 
-     If `configure' didn't find some image support libraries, such as
-     Xpm, jpeg, etc., and you want to use them refer to the subsection
-     "Image support libraries", below.
+     If `configure' didn't find some (optional) image support libraries,
+     such as Xpm, jpeg, etc., and you want to use them, refer to the
+     subsection "Image support libraries" below.
 
      If the details printed by `configure' don't make any sense to
-     you, assume that `configure' did its job and proceed.
+     you, but there are no obvious errors, assume that `configure' did
+     its job and proceed.
 
   4. If you need to run the `configure' script more than once (e.g.,
      with some non-default options), always clean the source
@@ -71,7 +85,7 @@ that, so please refer to them if the simple procedure does not work.
      in the `src' directory.  You can try this program, to make sure
      it works:
 
-                src/emacs -q
+                src/emacs -Q
 
   7. Assuming that the program `src/emacs' starts and displays its
      opening screen, you can install the program and its auxiliary
@@ -85,13 +99,40 @@ that, so please refer to them if the simple procedure does not work.
 
                 make clean
 
-  You can also save some space by compressing (with `gzip') Info files
-  and installed Lisp source (.el) files which have corresponding .elc
-  versions.
+  You can delete the entire build directory if you do not plan to
+  build Emacs again, but it can be useful to keep for debugging.
+
+  Note that the install automatically saves space by compressing
+  (provided you have the `gzip' program) those installed Lisp source (.el)
+  files that have corresponding .elc versions, as well as the Info files.
 
 
 ADDITIONAL DISTRIBUTION FILES
 
+* Complex Text Layout support libraries
+
+Emacs needs the optional libraries "m17n-db", "libm17n-flt", "libotf"
+to correctly display such complex scripts as Indic and Khmer.
+On some systems, particularly GNU/Linux, these libraries may be
+already present or available as additional packages.  Note that if
+there is a separate `dev' or `devel' package, for use at compilation
+time rather than run time, you will need that as well as the
+corresponding run time package; typically the dev package will contain
+header files and a library archive.  Otherwise, you can download and
+build libraries from sources.
+
+The sources of these libraries are available by anonymous CVS from
+cvs.m17n.org.
+
+    % cvs -d :pserver:anonymous@cvs.m17n.org:/cvs/m17n login
+    % cvs -d :pserver:anonymous@cvs.m17n.org:/cvs/m17n co m17n-db
+    % cvs -d :pserver:anonymous@cvs.m17n.org:/cvs/m17n co m17n-lib
+    % cvs -d :pserver:anonymous@cvs.m17n.org:/cvs/m17n co libotf
+
+For m17n-lib, if you have problems with making the whole package
+because you lack some other packages on which m17n-lib depends, try to
+configure it with the option "--without-gui".
+
 * intlfonts-VERSION.tar.gz
 
 The intlfonts distribution contains X11 fonts in various encodings
@@ -125,19 +166,15 @@ download and build libraries from sources.  None of them are vital for
 running Emacs; however, note that Emacs will not be able to use
 colored icons in the toolbar if XPM support is not compiled in.
 
-Here's the list of these optional libraries, and the URLs where they
-can be found:
+Here's the list of some of these optional libraries, and the URLs
+where they can be found (in the unlikely event that your distribution
+does not provide them):
 
-  . libXaw3d for fancy 3D-style
-      scroll bars:    ftp://ftp.x.org/contrib/widgets/Xaw3d/
-  . libxpm for XPM:   ftp://ftp.x.org/contrib/libraries/
-                     Get version 3.4k or later, which lets Emacs
-                     use its own color allocation functions.
-  . libpng for PNG:   ftp://ftp.simplesystems.org/pub/libpng/png/
+  . libXaw3d          http://directory.fsf.org/project/xaw3d/
+  . libxpm for XPM:   http://www.x.org/releases/current/src/lib/
+  . libpng for PNG:   http://www.libpng.org/
   . libz (for PNG):   http://www.zlib.net/
-  . libjpeg for JPEG: ftp://ftp.uu.net/graphics/jpeg/
-                      Get version 6b -- 6a is reported to fail in
-                      Emacs.
+  . libjpeg for JPEG: http://www.ijg.org/
   . libtiff for TIFF: http://www.libtiff.org/
   . libgif for GIF:   http://sourceforge.net/projects/giflib/
 
@@ -146,108 +183,60 @@ Emacs will configure itself to build with these libraries if the
 appropriate --without-LIB option.  In some cases, older versions of
 these libraries won't work because some routines are missing, and
 configure should avoid such old versions.  If that happens, use the
---without-LIB options to `configure'.  See below for more details.
-
-* Complex Text Layout support libraries
-
-Emacs needs the optional libraries "m17n-db", "libm17n-flt", "libotf"
-to correctly display such complex scripts as Indic and Khmer.
-On some systems, particularly GNU/Linux, these libraries may be
-already present or available as additional packages.  Note that if
-there is a separate `dev' or `devel' package, for use at compilation
-time rather than run time, you will need that as well as the
-corresponding run time package; typically the dev package will contain
-header files and a library archive.  Otherwise, you can download and
-build libraries from sources.
-
-The sources of these libraries are available by anonymous CVS from
-cvs.m17n.org.
-
-    % cvs -d :pserver:anonymous@cvs.m17n.org:/cvs/m17n login
-    % cvs -d :pserver:anonymous@cvs.m17n.org:/cvs/m17n co m17n-db
-    % cvs -d :pserver:anonymous@cvs.m17n.org:/cvs/m17n co m17n-lib
-    % cvs -d :pserver:anonymous@cvs.m17n.org:/cvs/m17n co libotf
-
-For m17n-lib, if you have problems with making the whole package
-because you lack some other packages on which m17n-lib depends, try to
-configure it with the option "--without-gui".
+--without-LIB options to `configure', if you need to.
 
 * Extra fonts
 
 The Emacs distribution does not include fonts and does not install
-them.  You must do that yourself.
-
-Emacs running on the GNU system supports both X fonts and local fonts
-(i.e. the fonts managed by the fontconfig library).
-
-For `Unicode' (ISO 10646) X fonts, see
-<URL:http://czyborra.com/unifont/> (packaged in Debian),
-<URL:http://openlab.ring.gr.jp/efont/> (packaged in Debian).  (In
-recent Debian versions, there is an extensive `misc-fixed' iso10646-1
-in the default X installation.)  Perhaps also see
-<URL:http://www.cl.cam.ac.uk/%7Emgk25/ucs-fonts.html>.
-
-<URL:http://czyborra.com/charsets/> has basic fonts for Emacs's
-ISO-8859 charsets.
-
-XFree86 release 4 (from <URL:ftp://ftp.xfree86.org/pub/XFree86/> and mirrors)
-contains font support for most, if not all, of the charsets that Emacs
-currently supports, including iso10646-1 encoded fonts for use with
-the mule-unicode charsets.  The font files should also be usable with
-older X releases.  Note that XFree 4 contains many iso10646-1 fonts
-with minimal character repertoires, which can cause problems -- see
-etc/PROBLEMS.
-
-BDF Unicode fonts etl-unicode.tar.gz are available from
-<URL:ftp://ftp.x.org/contrib/fonts/> and
-<URL:ftp://ftp.xfree86.org/pub/mirror/X.Org/contrib/fonts/>.  These
-fonts can also be used by ps-print and ps-mule to print Unicode
-characters.
-
-Finally, the Web pages <URL:http://www.nongnu.org/freefont/index.html>
-and <URL:http://www.nongnu.org/freefont/resources.html> list a large
+them.
+
+On the GNU system, Emacs supports both X fonts and local fonts
+(i.e. fonts managed by the fontconfig library).  If you need more
+fonts than your distribution normally provides, you must install them
+yourself.  See <URL:http://www.gnu.org/software/freefont/> for a large
 number of free Unicode fonts.
 
 * GNU/Linux development packages
 
-Many GNU/Linux systems do not come with development packages by
-default; they just include the files that you need to run Emacs, but
-not those you need to compile it.  For example, to compile Emacs with
-X11 support, you may need to install the special `X11 development'
-package.  For example, in April 2003, the package names to install
-were `XFree86-devel' and `Xaw3d-devel' on Red Hat.  On Debian, the
-packages necessary to build the installed version should be
-sufficient; they can be installed using `apt-get build-dep emacs21' in
-Debian 3 and above.
+Many GNU/Linux systems do not come with development packages by default;
+they include the files that you need to run Emacs, but not those you
+need to compile it.  For example, to compile Emacs with support for X
+and graphics libraries, you may need to install the `X development'
+package(s), and development versions of the jpeg, png, etc. packages.
+
+The names of the packages that you need varies according to the
+GNU/Linux distribution that you use, and the options that you want to
+configure Emacs with.  On Debian-based systems, you can install all the
+packages needed to build the installed version of Emacs with a command
+like `apt-get build-dep emacs23'.  On Red Hat systems, the
+corresponding command is `yum-builddep emacs'.
 
 
 DETAILED BUILDING AND INSTALLATION:
 
-(This is for a Unix or Unix-like system.  For MS-DOS and Windows 3.X,
-see below; search for MSDOG.  For Windows 9X, Windows ME, Windows NT,
-Windows 2000, Windows XP/2003, and Windows Vista/2008, see the file
-nt/INSTALL.  For GNUStep and Mac OS X, see nextstep/INSTALL.)
+(This is for a Unix or Unix-like system.  For MS-DOS and MS Windows 3.X,
+see msdos/INSTALL.  For later versions of MS Windows, see the file
+nt/INSTALL.  For GNUstep and Mac OS X, see nextstep/INSTALL.)
 
 1) Make sure your system has enough swapping space allocated to handle
 a program whose pure code is 1.5 MB and whose data area is at
 least 2.8 MB and can reach 100 MB or more.  If the swapping space is
 insufficient, you will get an error in the command `temacs -batch -l
 loadup dump', found in `./src/Makefile.in', or possibly when
-running the final dumped Emacs.
+running the final dumped Emacs.  (This should not be an issue
+on any recent system.)
 
-Building Emacs requires about 140 MB of disk space (including the
-Emacs sources) Once installed, Emacs occupies about 77 MB in the file
+Building Emacs requires about 230 MB of disk space (including the
+Emacs sources).  Once installed, Emacs occupies about 120 MB in the file
 system where it is installed; this includes the executable files, Lisp
 libraries, miscellaneous data files, and on-line documentation.  If
 the building and installation take place in different directories,
-then the installation procedure momentarily requires 140+77 MB.
+then the installation procedure momentarily requires 230+120 MB.
 
-2) Consult `./etc/MACHINES' to see what configuration name you should
-give to the `configure' program.  That file offers hints for
-getting around some possible installation problems.  The file lists
-many different configurations, but only the part for your machine and
-operating system is relevant.  (The list is arranged in alphabetical
-order by the vendor name.)
+2) In the unlikely event that `configure' does not detect your system
+type correctly, consult `./etc/MACHINES' to see what --host, --build
+options you should pass to `configure'.  That file also offers hints
+for getting around some possible installation problems.
 
 3) You can build Emacs in the top-level Emacs source directory
 or in a separate directory.
@@ -255,15 +244,10 @@ or in a separate directory.
 3a) To build in the top-level Emacs source directory, go to that
 directory and run the program `configure' as follows:
 
-    ./configure [CONFIGURATION-NAME] [--OPTION[=VALUE]] ...
-
-The CONFIGURATION-NAME argument should be a configuration name given
-in `./etc/MACHINES', with the system version number added at the end.
+    ./configure [--OPTION[=VALUE]] ...
 
-You should try first omitting CONFIGURATION-NAME.  This way,
-`configure' will try to guess your system type.  If it cannot guess,
-or if something goes wrong in building or installing Emacs this way,
-try again specifying the proper CONFIGURATION-NAME explicitly.
+If `configure' cannot determine your system type, try again
+specifying the proper --build, --host options explicitly.
 
 If you don't want X support, specify `--with-x=no'.  If you omit this
 option, `configure' will try to figure out for itself whether your
@@ -278,20 +262,19 @@ accept a list of directories, separated with colons.
 
 To get more attractive menus, you can specify an X toolkit when you
 configure Emacs; use the option `--with-x-toolkit=TOOLKIT', where
-TOOLKIT is `athena', `motif' or `gtk' (`yes' and `lucid' are synonyms
-for `athena').  On some systems, it does not work to use a toolkit
-with shared libraries.  A free implementation of Motif, called
-LessTif, is available from <http://www.lesstif.org>.  Compiling with
-LessTif or Motif causes a standard File Selection Dialog to pop up
-when you invoke file commands with the mouse.  You can get fancy
-3D-style scroll bars, even without LessTif/Motif, if you have the
-Xaw3d library installed (see "Image support libraries" above for Xaw3d
-availability).
-
-If `--with-x-toolkit=gtk' is specified, you can tell configure where
-to search for GTK by specifying `--with-pkg-config-prog=PATH' where
-PATH is the pathname to pkg-config.  Note that GTK version 2.4 or
-newer is required for Emacs.
+TOOLKIT is `gtk' (the default), `athena', or `motif' (`yes' and
+`lucid' are synonyms for `athena').  On some systems, it does not work
+to use a toolkit with shared libraries.  A free implementation of
+Motif, called LessTif, is available from <http://www.lesstif.org>.
+Compiling with LessTif or Motif causes a standard File Selection
+Dialog to pop up when you invoke file commands with the mouse.  You
+can get fancy 3D-style scroll bars, even without Gtk or LessTif/Motif,
+if you have the Xaw3d library installed (see "Image support libraries"
+above for Xaw3d availability).
+
+You can tell configure where to search for GTK by specifying
+`--with-pkg-config-prog=PATH' where PATH is the pathname to
+pkg-config.  Note that GTK version 2.6 or newer is required for Emacs.
 
 The Emacs mail reader RMAIL is configured to be able to read mail from
 a POP3 server by default.  Versions of the POP protocol older than
@@ -318,10 +301,10 @@ or more of these options:
 Use --without-toolkit-scroll-bars to disable LessTif/Motif or Xaw3d
 scroll bars.
 
-Use --without-xim to inhibit the default use of X Input Methods.  In
-this case, the X resource useXIM can be used to turn on use of XIM.
+Use --without-xim to inhibit the default use of X Input Methods.
+In this case, the X resource useXIM can be used to turn on use of XIM.
 
-Use --disable-largefile omits support for files larger than 2GB on
+Use --disable-largefile to omit support for files larger than 2GB on
 systems which support that.
 
 Use --without-sound to disable sound support.
@@ -331,11 +314,11 @@ should put emacs and its data files.  This defaults to `/usr/local'.
 - Emacs (and the other utilities users run) go in PREFIXDIR/bin
   (unless the `--exec-prefix' option says otherwise).
 - The architecture-independent files go in PREFIXDIR/share/emacs/VERSION
-  (where VERSION is the version number of Emacs, like `19.27').
+  (where VERSION is the version number of Emacs, like `23.2').
 - The architecture-dependent files go in
   PREFIXDIR/libexec/emacs/VERSION/CONFIGURATION
-  (where CONFIGURATION is the configuration name, like mips-dec-ultrix4.2),
-  unless the `--exec-prefix' option says otherwise.
+  (where CONFIGURATION is the configuration name, like
+  i686-pc-linux-gnu), unless the `--exec-prefix' option says otherwise.
 
 The `--exec-prefix=EXECDIR' option allows you to specify a separate
 portion of the directory tree for installing architecture-specific
@@ -347,17 +330,16 @@ EXECDIR/bin should be a directory that is normally in users' PATHs.
 
 For example, the command
 
-    ./configure mips-dec-ultrix --with-x11
+    ./configure --build=i386-linux-gnu --without-sound
 
-configures Emacs to build for a DECstation running Ultrix, with
-support for the X11 window system.
+configures Emacs to build for a 32-bit GNU/Linux distribution,
+without sound support.
 
-`configure' doesn't do any compilation or installation
-itself.  It just creates the files that influence those things:
-`./Makefile', `lib-src/Makefile', `oldXMenu/Makefile',
-`lwlib/Makefile', `src/Makefile', and `./src/config.h'.  For details
-on exactly what it does, see the section called `CONFIGURATION BY
-HAND', below.
+`configure' doesn't do any compilation or installation itself.
+It just creates the files that influence those things:
+`./Makefile' in the top-level directory and several subdirectories;
+and `./src/config.h'.  For details on exactly what it does, see the
+section called `CONFIGURATION BY HAND', below.
 
 When it is done, `configure' prints a description of what it did and
 creates a shell script `config.status' which, when run, recreates the
@@ -399,10 +381,10 @@ shell such as Bash, which uses these variables:
 preprocessor to look in the `/foo/myinclude' directory for header
 files (in addition to the standard directories), instruct the linker
 to look in `/bar/mylib' for libraries, pass the -O3 optimization
-switch to the compiler, and link against libfoo.a and libbar.a
+switch to the compiler, and link against libfoo and libbar
 libraries in addition to the standard ones.
 
-For some libraries, like Gtk+, fontconfig and ALSA, `configure' use
+For some libraries, like Gtk+, fontconfig and ALSA, `configure' uses
 pkg-config to find where those libraries are installed.
 If you want pkg-config to look in special directories, you have to set
 the environment variable PKG_CONFIG_PATH to point to the directories
@@ -429,14 +411,9 @@ Emacs source code in the directory that `configure' is in.
 To build in a separate directory, you must use a version of `make'
 that supports the `VPATH' variable, such as GNU `make'.
 
-3c) Some people try to build in a separate directory by filling
-it full of symlinks to the files in the real source directory.
-If you do that, `make all' does work, but `make install' fails:
-it copies the symbolic links rather than the actual files.
-
-As far as is known, there is no particular reason to use
-a directory full of links rather than use the standard GNU
-facilities to build in a separate directory (see 3b above).
+(Do not try to build in a separate directory by creating many links
+to the real source directory--there is no need, and installation will
+fail.)
 
 4) Look at `./lisp/paths.el'; if some of those values are not right
 for your system, set up the file `./lisp/site-init.el' with Emacs
@@ -447,7 +424,7 @@ rather than `defvar', as used by `./lisp/paths.el'.  For example,
      (setq news-inews-program "/usr/bin/inews")
 
 is how you would override the default value of the variable
-news-inews-program (which is "/usr/local/inews").
+news-inews-program.
 
 Before you override a variable this way, *look at the value* that the
 variable gets by default!  Make sure you know what kind of value the
@@ -460,24 +437,17 @@ site-load.el for additional libraries if you arrange for their
 documentation strings to be in the etc/DOC file (see
 src/Makefile.in if you wish to figure out how to do that).  For all
 else, use site-init.el.  Do not load byte-compiled code which
-was build with a non-nil value of `byte-compile-dynamic'.
+was built with a non-nil value of `byte-compile-dynamic'.
 
 If you set load-path to a different value in site-init.el or
 site-load.el, Emacs will use *precisely* that value when it starts up
 again.  If you do this, you are on your own!
 
-Note that, on some systems, the code you place in site-init.el must
-not use expand-file-name or any other function which may look
-something up in the system's password and user information database.
-See `./etc/PROBLEMS' for more details on which systems this affects.
-
 The `site-*.el' files are nonexistent in the distribution.  You do not
 need to create them if you have nothing to put in them.
 
 6) Refer to the file `./etc/TERMS' for information on fields you may
-wish to add to various termcap entries.  The files `./etc/termcap.ucb'
-and `./etc/termcap.dat' may already contain appropriately-modified
-entries.
+wish to add to various termcap entries.  (This is unlikely to be necessary.)
 
 7) Run `make' in the top directory of the Emacs distribution to finish
 building Emacs in the standard way.  The final executable file is
@@ -485,17 +455,17 @@ named `src/emacs'.  You can execute this file "in place" without
 copying it, if you wish; then it automatically uses the sibling
 directories ../lisp, ../lib-src, ../info.
 
-Or you can "install" the executable and the other Emacs into their
+Or you can "install" the executable and the other files into their
 installed locations, with `make install'.  By default, Emacs's files
 are installed in the following directories:
 
 `/usr/local/bin' holds the executable programs users normally run -
-               `emacs', `etags', `ctags', `b2m', `emacsclient',
-               and `rcs-checkin'.
+               `emacs', `etags', `ctags', `emacsclient',
+               `grep-changelog', and `rcs-checkin'.
 
 `/usr/local/share/emacs/VERSION/lisp' holds the Emacs Lisp library;
                `VERSION' stands for the number of the Emacs version
-               you are installing, like `18.59' or `19.27'.  Since the
+               you are installing, like `23.1' or `23.2'.  Since the
                Lisp library changes from one version of Emacs to
                another, including the version number in the path
                allows you to have several versions of Emacs installed
@@ -503,18 +473,17 @@ are installed in the following directories:
                make Emacs unavailable while installing a new version.
 
 `/usr/local/share/emacs/VERSION/etc' holds the Emacs tutorial, the DOC
-               file, the `yow' database, and other
-               architecture-independent files Emacs might need while
-               running.  VERSION is as specified for `.../lisp'.
+               file, and other architecture-independent files Emacs
+               might need while running.
 
 `/usr/local/libexec/emacs/VERSION/CONFIGURATION-NAME' contains executable
                programs used by Emacs that users are not expected to
                run themselves.
                `VERSION' is the number of the Emacs version you are
-               installing, and `CONFIGURATION-NAME' is the argument
-               you gave to the `configure' program to identify the
+               installing, and `CONFIGURATION-NAME' is the value
+               deduced by the `configure' program to identify the
                architecture and operating system of your machine,
-               like `mips-dec-ultrix' or `sparc-sun-sunos'.  Since
+               like `i686-pc-linux-gnu' or `sparc-sun-sunos'.  Since
                these files are specific to the version of Emacs,
                operating system, and architecture in use, including
                the configuration name in the path allows you to have
@@ -526,10 +495,9 @@ are installed in the following directories:
 `/usr/local/share/info' holds the on-line documentation for Emacs,
                known as "info files".  Many other GNU programs are
                documented using info files as well, so this directory
-               stands apart from the other, Emacs-specific
-               directories.
+               stands apart from the other, Emacs-specific directories.
 
-`/usr/local/man/man1' holds the man pages for the programs installed
+`/usr/local/share/man/man1' holds the man pages for the programs installed
                in `/usr/local/bin'.
 
 Any version of Emacs, whether installed or not, also looks for Lisp
@@ -592,10 +560,9 @@ Here is a complete list of the variables you may want to set.
        defaults to /usr/local/share.  We create the following
        subdirectories under `datadir':
        - `emacs/VERSION/lisp', containing the Emacs Lisp library, and
-       - `emacs/VERSION/etc', containing the Emacs tutorial, the DOC
-               file, and the `yow' database.
+       - `emacs/VERSION/etc', containing the tutorials, DOC file, etc.
        `VERSION' is the number of the Emacs version you are installing,
-       like `18.59' or `19.0'.  Since these files vary from one version
+       like `23.1' or `23.2'.  Since these files vary from one version
        of Emacs to another, including the version number in the path
        allows you to have several versions of Emacs installed at the
        same time; this means that you don't have to make Emacs
@@ -608,29 +575,23 @@ Here is a complete list of the variables you may want to set.
                programs used by Emacs that users are not expected to run
                themselves.
        `VERSION' is the number of the Emacs version you are installing,
-       and `CONFIGURATION-NAME' is the argument you gave to the
+       and `CONFIGURATION-NAME' is the value deduced by the
        `configure' program to identify the architecture and operating
-       system of your machine, like `mips-dec-ultrix' or
-       `sparc-sun-sunos'.  Since these files are specific to the version
-       of Emacs, operating system, and architecture in use, including
-       the configuration name in the path allows you to have several
-       versions of Emacs for any mix of machines and operating systems
-       installed at the same time; this is useful for sites at which
-       different kinds of machines share the file system Emacs is
-       installed on.
+       system of your machine, like `i686-pc-linux-gnu' or `sparc-sun-sunos'.
+       Since these files are specific to the version of Emacs,
+       operating system, and architecture in use, including the
+       configuration name in the path allows you to have several
+       versions of Emacs for any mix of machines and operating
+       systems installed at the same time; this is useful for sites
+       at which different kinds of machines share the file system
+       Emacs is installed on.
 
 `infodir' indicates where to put the info files distributed with
        Emacs; it defaults to `/usr/local/share/info'.
 
 `mandir' indicates where to put the man pages for Emacs and its
        utilities (like `etags'); it defaults to
-       `/usr/local/man/man1'.
-
-`manext' gives the extension the man pages should be installed with.
-       It should contain a period, followed by the appropriate
-       digit.  It defaults to `.1'.  For example given the default
-       values for `mandir' and `manext', the Emacs man page would be
-       installed as `/usr/local/man/man1/emacs.1'.
+       `/usr/local/share/man/man1'.
 
 `prefix' doesn't give a path for any specific part of Emacs; instead,
        its value is used to determine the defaults for all the
@@ -652,7 +613,7 @@ Here is a complete list of the variables you may want to set.
        path variables - `bindir' and `libexecdir'.
 
 The above variables serve analogous purposes in the makefiles for all
-GNU software; this variable is specific to Emacs.
+GNU software; the following variable is specific to Emacs.
 
 `archlibdir' indicates where Emacs installs and expects the executable
        files and other architecture-dependent data it uses while
@@ -668,7 +629,7 @@ settings persist, you can edit them into the `Makefile' in the top
 directory, but be aware that running the `configure' program erases
 `Makefile' and rebuilds it from `Makefile.in'.
 
-The path for finding Lisp files is specified in src/paths.h,
+The path for finding Lisp files is specified in src/epaths.h,
 a file which is generated by running configure.  To change the path,
 you can edit the definition of PATH_LOADSEARCH in that file
 before you run `make'.
@@ -680,8 +641,8 @@ when running make in the subdirectories.
 
 CONFIGURATION BY HAND
 
-Instead of running the `configure' program, you have to perform the
-following steps.
+This should not be necessary and is not recommended.  Instead of
+running the `configure' program, you have to perform the following steps.
 
 1) Copy `./src/config.in' to `./src/config.h'.
 
@@ -695,39 +656,34 @@ the appropriate system and architecture description files.
 2) Edit `./src/config.h' to set the right options for your system.  If
 you need to override any of the definitions in the s/*.h and m/*.h
 files for your system and machine, do so by editing config.h, not by
-changing the s/*.h and m/*.h files.  Occasionally you may need to
-redefine parameters used in `./lib-src/movemail.c'.
-
-3) Create src/Makefile and lib-src/Makefile from the corresponding
-`Makefile.in' files.  First copy `Makefile.in' to `Makefile.c',
-then edit in appropriate substitutions for the @...@ constructs,
-and then copy the shell commands near the end of `configure'
-that run cpp to construct `Makefile'.
+changing the s/*.h and m/*.h files.
 
-4) Create `Makefile' files in various other directories
-from the corresponding `Makefile.in' files.  This isn't so hard,
-just a matter of substitution.
+3) Create `Makefile' files in various directories from the
+corresponding `Makefile.in' files.  This isn't so hard, just a matter
+of editing in appropriate substitutions for the @...@ constructs.
 
 The `configure' script is built from `configure.in' by the `autoconf'
-program.  You need version 2.51 or newer of `autoconf' to rebuild
-`configure'.
+program.  You need at least the version of autoconf specified in the
+AC_PREREQ(...) command to rebuild `configure' from `configure.in'.
 
 BUILDING GNU EMACS BY HAND
 
 Once Emacs is configured, running `make' in the top directory performs
 the following steps.
 
-1) Run `make src/paths.h' in the top directory.  This produces
-`./src/paths.h' from the template file `./src/paths.in', changing
+1) Run `make epaths-force' in the top directory.  This produces
+`./src/epaths.h' from the template file `./src/epaths.in', changing
 the paths to the values specified in `./Makefile'.
 
-2) Go to directory `./lib-src' and run `make'.  This creates
-executables named `ctags' and `etags' and `make-docfile' and
-`digest-doc' and `test-distrib'.  And others.
+2) Go to directory `./lib' and run `make'.  This creates include files
+and libraries used in later steps.
+
+3) Go to directory `./lib-src' and run `make'.  This creates
+executables named `etags', `make-docfile', and others.
 
-3) Go to directory `./src' and Run `make'.  This refers to files in
-the `./lisp' and `./lib-src' subdirectories using names `../lisp' and
-`../lib-src'.
+4) Go to directory `./src' and run `make'.  This refers to files in
+the `./lisp', `./lib', and `./lib-src' subdirectories using names
+`../lisp', `../lib', and `../lib-src'.
 
 This creates a file `./src/emacs' which is the runnable Emacs,
 which has another name that contains a version number.
@@ -737,8 +693,7 @@ It also creates a file in `./etc' whose name is `DOC' followed by the
 current Emacs version.  This file contains documentation strings for
 all the functions in Emacs.  Each time you run make to make a new
 emacs, a new DOC file with a new name is made.  You must keep the DOC
-file for an Emacs version as long as you keep using that Emacs
-version.
+file for an Emacs version as long as you keep using that Emacs version.
 
 
 INSTALLATION BY HAND
@@ -747,18 +702,15 @@ The steps below are done by running `make install' in the main
 directory of the Emacs distribution.
 
 1) Copy `./lisp' and its subdirectories, `./etc', and the executables
-in `./lib-src' to their final destinations, as selected in `./src/paths.h'.
+in `./lib-src' to their final destinations, as selected in `./src/epaths.h'.
 
 Strictly speaking, not all of the executables in `./lib-src' need be copied.
-- The programs `cvtmail', `fakemail', `hexl',
-    `movemail', `profile', `rcs2log', and `vcdiff' are used by Emacs;
-    they do need to be copied.
-- The programs `etags', `ctags', `emacsclient', `b2m', and `rcs-checkin'
+- The programs `fakemail', `hexl', `movemail', `profile', `rcs2log',
+    and `vcdiff' are used by Emacs; they do need to be copied.
+- The programs `etags', `ctags', `emacsclient', and `rcs-checkin'
     are intended to be run by users; they are handled below.
 - The programs `make-docfile' and `test-distrib' were
     used in building Emacs, and are not needed any more.
-- The programs `digest-doc' and `sorted-doc' convert a `DOC' file into
-    a file for users to read.  There is no important reason to move them.
 
 2) Copy the files in `./info' to the place specified in
 `./lisp/site-init.el' or `./lisp/paths.el'.  Note that if the
@@ -775,12 +727,11 @@ of installing different versions.
 
 You can delete `./src/temacs'.
 
-4) Copy the programs `b2m', `emacsclient', `ctags', `etags', and
-`rcs-checkin' from `./lib-src' to `/usr/local/bin'.  These programs are
-intended for users to run.
+4) Copy the programs `emacsclient', `ctags', `etags', and `rcs-checkin'
+from `./lib-src' to `/usr/local/bin'.  These programs are intended for
+users to run.
 
-5) Copy the man pages in `./etc' for emacs, ctags, and etags into the
-appropriate man directories.
+5) Copy the man pages in `./doc/man' into the appropriate man directory.
 
 6) The files in the `./src' subdirectory, except for `emacs', are not
 used by Emacs once it is built.  However, it is very desirable to keep
@@ -789,142 +740,8 @@ the source on line for debugging.
 
 PROBLEMS
 
-See the file PROBLEMS in etc subdirectory for a list of various
-problems sometimes encountered, and what to do about them.
-
-
-Installation on MSDOG (a.k.a. MSDOS)
-
-To install on MSDOG, you need to have the GNU C compiler for MSDOG
-(also known as djgpp), GNU Make, rm, mv, and sed.  See the remarks in
-config.bat for more information about locations and versions.  The
-file etc/FAQ includes pointers to Internet sites where you can find
-the necessary utilities; search for "MS-DOS".  The configuration step
-(see below) will test for these utilities and will refuse to continue
-if any of them isn't found.
-
-Recompiling Lisp files in the `lisp' subdirectory using the various
-targets in the lisp/Makefile file requires additional utilities:
-`find' and `xargs' (from Findutils), `touch' (from Fileutils) GNU
-`echo' and `test' (from Sh-utils), `tr, `sort', and `uniq' (from
-Textutils), and a port of Bash.  However, you should not normally need
-to run lisp/Makefile, as all the Lisp files are distributed in
-byte-compiled form as well.
-
-If you are building the MSDOG version of Emacs on an MSDOG-like system
-which supports long file names (e.g. Windows 9X or Windows XP), you
-need to make sure that long file names are handled consistently both
-when you unpack the distribution and compile it.  If you intend to
-compile with DJGPP v2.0 or later, and long file names support is
-enabled (LFN=y in the environment), you need to unpack Emacs
-distribution in a way that doesn't truncate the original long
-filenames to the DOS 8.3 namespace; the easiest way to do this is to
-use djtar program which comes with DJGPP, since it will note the LFN
-setting and behave accordingly.  DJGPP v1 doesn't support long
-filenames, so you must unpack Emacs with a program that truncates the
-filenames to 8.3 naming as it extracts files; again, using djtar after
-setting LFN=n is the recommended way.  You can build Emacs with LFN=n
-even if you use DJGPP v2, if some of your tools don't support long
-file names: just ensure that LFN is set to `n' during both unpacking
-and compiling.
-
-(By the time you read this, you have already unpacked the Emacs
-distribution, but if the explanations above imply that you should have
-done it differently, it's safer to delete the directory tree created
-by the unpacking program and unpack Emacs again, than to risk running
-into problems during the build process.)
-
-It is important to understand that the runtime support of long file
-names by the Emacs binary is NOT affected by the LFN setting during
-compilation; Emacs compiled with DJGPP v2.0 or later will always
-support long file names on Windows no matter what was the setting
-of LFN at compile time.  However, if you compiled with LFN disabled
-and want to enable LFN support after Emacs was already built, you need
-to make sure that the support files in the lisp, etc and info
-directories are called by their original long names as found in the
-distribution.  You can do this either by renaming the files manually,
-or by extracting them from the original distribution archive with
-djtar after you set LFN=y in the environment.
-
-To unpack Emacs with djtar, type this command:
-
-    djtar -x emacs.tgz
-
-(This assumes that the Emacs distribution is called `emacs.tgz' on
-your system.)
-
-If you want to print international characters, install the intlfonts
-distribution.  For this, create a directory called `fonts' under the
-Emacs top-level directory (usually called `emacs-XX.YY') created by
-unpacking emacs.tgz, chdir into the directory emacs-XX.YY/fonts, and
-type this:
-
-    djtar -x intlfonts.tgz
-
-When unpacking is done, a directory called `emacs-XX.YY' will be
-created, where XX.YY is the Emacs version.  To build and install
-Emacs, chdir to that directory and type these commands:
-
-    config msdos
-    make install
-
-Running "config msdos" checks for several programs that are required
-to configure and build Emacs; if one of those programs is not found,
-CONFIG.BAT stops and prints an error message.  If you have DJGPP
-version 2.0 or 2.01, it will complain about a program called
-DJECHO.EXE.  These old versions of DJGPP shipped that program under
-the name ECHO.EXE, so you can simply copy ECHO.EXE to DJECHO.EXE and
-rerun CONFIG.BAT.  If you have neither ECHO.EXE nor DJECHO.EXE, you
-should be able to find them in your djdevNNN.zip archive (where NNN is
-the DJGPP version number).
-
-On Windows NT, Windows 2000/XP/Vista, running "config msdos" might
-print an error message like "VDM has been already loaded".  This is
-because those systems have a program called `redir.exe' which is
-incompatible with a program by the same name supplied with DJGPP,
-which is used by config.bat.  To resolve this, move the DJGPP's `bin'
-subdirectory to the front of your PATH environment variable.
-
-To install the international fonts, chdir to the intlfonts-X.Y
-directory created when you unpacked the intlfonts distribution (X.Y is
-the version number of the fonts' distribution), and type the following
-command:
-
-    make bdf INSTALLDIR=..
-
-After Make finishes, you may remove the directory intlfonts-X.Y; the
-fonts are installed into the fonts/bdf subdirectory of the top-level
-Emacs directory, and that is where Emacs will look for them by
-default.
-
-Building Emacs creates executable files in the src and lib-src
-directories.  Installing Emacs on MSDOS moves these executables to a
-sibling directory called bin.  For example, if you build in directory
-/emacs, installing moves the executables from /emacs/src and
-/emacs/lib-src to the directory /emacs/bin, so you can then delete the
-subdirectories /emacs/src and /emacs/lib-src if you wish.  The only
-subdirectories you need to keep are bin, lisp, etc and info.  (If you
-installed intlfonts, keep the fonts directory and all its
-subdirectories as well.)  The bin subdirectory should be added to your
-PATH.  The msdos subdirectory includes a PIF and an icon file for
-Emacs which you might find useful if you run Emacs under MS Windows.
-
-Emacs on MSDOS finds the lisp, etc and info directories by looking in
-../lisp, ../etc and ../info, starting from the directory where the
-Emacs executable was run from.  You can override this by setting the
-environment variables EMACSDATA (for the location of `etc' directory),
-EMACSLOADPATH (for the location of `lisp' directory) and INFOPATH (for
-the location of the `info' directory).
-
-MSDOG is a not a multitasking operating system, so Emacs features such
-as asynchronous subprocesses that depend on multitasking will not
-work.  Synchronous subprocesses do work.
-
-Version 2.0 of djgpp has two bugs that affect Emacs.  We've included
-corrected versions of two files from djgpp in the msdos subdirectory:
-is_exec.c and sigaction.c.  To work around the bugs, compile these
-files and link them into temacs.  Djgpp versions 2.01 and later have
-these bugs fixed, so upgrade if you can before building Emacs.
+See the file `./etc/PROBLEMS' for a list of various problems sometimes
+encountered, and what to do about them.
 \f
 This file is part of GNU Emacs.