(recover-session-finish): Ask only about files that
[bpt/emacs.git] / INSTALL
diff --git a/INSTALL b/INSTALL
index 31041c7..718a0dc 100644 (file)
--- a/INSTALL
+++ b/INSTALL
@@ -26,12 +26,12 @@ insufficient, you will get an error in the command `temacs -batch -l
 loadup dump', found in `./src/Makefile.in.in', or possibly when
 running the final dumped Emacs.
  
-Building Emacs requires about 50 Mb of disk space (including the Emacs
-sources).  Once installed, Emacs occupies about 20 Mb in the file
+Building Emacs requires about 70 Mb of disk space (including the Emacs
+sources).  Once installed, Emacs occupies about 35 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 50+20 Mb.
+then the installation procedure momentarily requires 70+35 Mb.
 
 2) Consult `./etc/MACHINES' to see what configuration name you should
 give to the `configure' program.  That file offers hints for
@@ -55,7 +55,8 @@ The `--x-includes=DIR' and `--x-libraries=DIR' options tell the build
 process where the compiler should look for the include files and
 object libraries used with the X Window System.  Normally, `configure'
 is able to find them; these options are necessary if you have your X
-Window System files installed in unusual places.
+Window System files installed in unusual places.  These options also
+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
@@ -125,8 +126,8 @@ the section called "CONFIGURATION BY HAND" below if you want to do the
 configuration yourself.
 
 4) Look at `./lisp/paths.el'; if some of those values are not right
-for your system, edit the file `./lisp/site-init.el' containing Emacs
-Lisp code to override them; you probably don't want to edit paths.el
+for your system, set up the file `./lisp/site-init.el' with Emacs
+Lisp code to override them; it is not a good idea to edit paths.el
 itself.  YOU MUST USE THE LISP FUNCTION `setq' TO ASSIGN VALUES,
 rather than `defvar', as used by `./lisp/paths.el'.  For example,
 
@@ -140,11 +141,6 @@ variable gets by default!  Make sure you know what kind of value the
 variable should have.  If you don't pay attention to what you are
 doing, you'll make a mistake.
 
-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 `./PROBLEMS' for more details on which systems this affects.
-
 5) Put into `./lisp/site-init.el' or `./lisp/site-load.el' any Emacs
 Lisp code you want Emacs to load before it is dumped out.  Use
 site-load.el for additional libraries if you arrange for their
@@ -152,9 +148,9 @@ documentation strings to be in the etc/DOC file (see
 src/Makefile.in.in if you wish to figure out how to do that).  For all
 else, use site-init.el.
 
-If you set load-path in site-init.el or site-load.el, Emacs will use
-*precisely* the resulting path when it starts up again.  If you do this,
-you are on your own!
+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
@@ -170,11 +166,14 @@ and `./etc/termcap.dat' may already contain appropriately-modified
 entries.
 
 7) Run `make' in the top directory of the Emacs distribution to finish
-building Emacs in the standard way.  The final executable file will be
-named `src/emacs'.  If you want to have Emacs's executable programs
-and data files installed as well, run `make install'.
+building Emacs in the standard way.  The final executable file is
+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.
 
-By default, Emacs installs its files in the following directories:
+Or you can "install" the executable and the other Emacs 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',
@@ -241,7 +240,11 @@ info files.
 then you might need to make the movemail program setuid or setgid
 to enable it to write the lock files.  We believe this is safe.
 
-10) You are done!
+10) You are done!  You can remove executables and object files from
+the build directory by typing `make clean'.  To also remove the files
+that `configure' created (so you can compile Emacs for a different
+configuration), type `make distclean'.
+
 
 
 MAKE VARIABLES
@@ -336,16 +339,16 @@ Here is a complete list of the variables you may want to set.
 The above variables serve analogous purposes in the makefiles for all
 GNU software; here are some variables specific to Emacs.
 
-`lispdir' indicates where Emacs installs and expects its lisp
-       library.  Its default value, based on `datadir' (see above),
-       is `/usr/local/lib/emacs/VERSION/lisp' (where `VERSION' is as
+`lispdir' indicates where Emacs installs and expects its lisp library.
+       Its default value, based on `datadir' (see above), is
+       `/usr/local/share/emacs/VERSION/lisp' (where `VERSION' is as
        described above).
 
 `locallisppath' indicates where Emacs should search for lisp files
        specific to your site.  It should be a colon-separated list of
        directories; Emacs checks them in order before checking
        `lispdir'.  Its default value, based on `datadir' (see above),
-       is `/usr/local/lib/emacs/site-lisp'.
+       is `/usr/local/share/emacs/site-lisp'.
 
 `lisppath' is the complete list of directories Emacs should search for
        its lisp files; its default value is the concatenation of
@@ -356,16 +359,16 @@ GNU software; here are some variables specific to Emacs.
 `etcdir' indicates where Emacs should install and expect the rest of
        its architecture-independent data, like the tutorial, DOC
        file, and yow database.  Its default value, based on `datadir'
-       (which see), is `/usr/local/lib/emacs/VERSION/etc'.
+       (which see), is `/usr/local/share/emacs/VERSION/etc'.
 
 `lockdir' indicates the directory where Emacs keeps track of its
-       locking information.  Its default value, based on `sharedstatedir'
-       (which see), is `/usr/local/lib/emacs/lock'.
+       locking information.  Its default value, based on
+       `sharedstatedir' (which see), is `/usr/local/com/emacs/lock'.
 
-`archlibdir' indicates where Emacs installs and expects the
-       executable files and other architecture-dependent data it uses
-       while running.  Its default value, based on `libexecdir' (which
-       see), is `/usr/local/lib/emacs/VERSION/CONFIGURATION-NAME'
+`archlibdir' indicates where Emacs installs and expects the executable
+       files and other architecture-dependent data it uses while
+       running.  Its default value, based on `libexecdir' (which
+       see), is `/usr/local/libexec/emacs/VERSION/CONFIGURATION-NAME'
        (where VERSION and CONFIGURATION-NAME are as described above).
 
 Remember that you must specify any variable values you need each time
@@ -501,11 +504,28 @@ 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, chmod, and sed.  Type these
-commands:
+(also known as djgpp), GNU Make, rm, mv, chmod, and sed.
+
+Some users report that running Emacs 19.29 requires dpmi memory
+management.  We do not know why this is so, since 19.28 did not need
+it.  If we find out what change introduced this requirement, we will
+try to eliminate it.  It is possible that this problem happens only
+when there is not enough physical memory on the machine.
+
+You can find out if you have a dpmi host by running go32 (part of
+djgpp) without arguments; it will tell you if it uses dpmi memory.
+For more information about dpmi memory, consult the djgpp FAQ.
+
+To build and install Emacs, type these commands:
+
+    config msdos
+    make install
 
-config msdos
-make install
+You may need to work around a type conflict between gmalloc.c and the
+header file djgppstd.h regarding declarations of memalign and valloc.
+Temporarily deleting those declarations from djgppstd.h while compiling
+Emacs or while compiling gmalloc.c should do it.  We found out about this
+problem too late to include a more convenient fix--sorry.
 
 To save disk space, Emacs is built with the idea that you will execute
 it from the same place in the file system where you built it.  As the