Bug fix for vc-dispatcher split.
[bpt/emacs.git] / INSTALL.CVS
index 9402567..2ece25a 100644 (file)
@@ -1,3 +1,8 @@
+Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008
+  Free Software Foundation, Inc.
+See the end of the file for license conditions.
+
+
              Building and Installing Emacs from CVS
 
 Some of the files that are included in the Emacs tarball, such as
@@ -11,9 +16,15 @@ instead of just "make":
 The bootstrap process makes sure all necessary files are rebuilt
 before it builds the final Emacs binary.
 
+If 'make bootstrap' fails, it may be necessary to do 'make maintainer-clean'
+followed by configure before trying it again.  (Occasionally the loaddefs.el
+file gets into a bad state due to changes in the Lisp libraries; this procedure
+forces it to be regenerated.)
+
 Normally, it is not necessary to use "make bootstrap" after every CVS
-update.  Unless there are problems, we suggest the following
-procedure:
+update.  Unless there are problems, we suggest using the following
+alternative procedure after you have done "make bootstrap" at least
+once:
 
   $ ./configure
   $ make
@@ -25,24 +36,37 @@ procedure:
 (If you want to install the Emacs binary, type "make install" instead
 of "make" in the last command.)
 
-Occasionally the file "lisp/loaddefs.el" will need be updated to reflect
-new autoloaded functions.  If you see errors about undefined lisp
-functions during compilation, that may be the reason.  Another symptom
-may be an error saying that "loaddefs.el" could not be found; this is
-due to a change in the way loaddefs.el was handled in CVS, and should
-only happen once, for users that are updating old CVS trees.
+Occasionally the file "lisp/loaddefs.el" (and similar *-loaddefs.el
+files in some subdirectories of lisp/, e.g. mh-e/ and calendar/) will
+need to be updated to reflect new autoloaded functions.  If you see
+errors (rather than warnings) about undefined lisp functions during
+compilation, that may be the reason.  Another symptom may be an error
+saying that "loaddefs.el" could not be found; this is due to a change
+in the way loaddefs.el was handled in CVS, and should only happen
+once, for users that are updating old CVS trees.  Finally, sometimes
+there can be build failures related to *loaddefs.el.  In that case,
+delete them before following the instructions below to update them.
 
-To update loaddefs.el, do:
+To update loaddefs.el (and similar files), do:
 
   $ cd lisp
   $ make autoloads EMACS=../src/emacs
 
-If either of above procedures fails, try "make bootstrap".
+If either of the above partial procedures fails, try "make bootstrap".
+
+Very occasionally changes in the source can introduce
+incompatibilities with previous builds.  If a bootstrap fails, as a
+last resort try "make maintainer-clean" before configuring and
+bootstrapping again.  If CPU time is not an issue, the most thorough
+way to rebuild, and avoid any spurious problems, is always to use this
+method.
 
 Users of non-Posix systems (MS-Windows etc.) should run the
 platform-specific configuration scripts (nt/configure.bat, config.bat,
 etc.) before "make bootstrap" or "make"; the rest of the procedure is
-applicable to those systems as well.
+applicable to those systems as well, except that the value of the
+EMACS variable on the Make command line might be different, e.g.,
+../bin/emacs.exe or some such.
 
 Questions, requests, and bug reports about the CVS versions of Emacs
 should be sent to emacs-pretest-bug@gnu.org rather than gnu.emacs.help
@@ -57,8 +81,8 @@ Write access to the CVS repository requires using SSH v2.
 
 If you execute cvs commands inside Emacs, specifically if you use
 pcl-cvs, output from CVS may be lost due to a problem in the
-interface between ssh, cvs, and libc.  Corrupted checkins have
-also been rumored to have happened.
+interface between ssh, cvs, and libc.  Corrupted checkins are
+also known to have happened.
 
 To fix the problem, save the following script into a file, make it
 executable, and set CVS_RSH to the file name of the script:
@@ -74,3 +98,21 @@ Host subversions.gnu.org
      Protocol 2
      ForwardX11 no
      User YOUR_USERID
+
+\f
+This file is part of GNU Emacs.
+
+GNU Emacs is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 3, or (at your option)
+any later version.
+
+GNU Emacs is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Emacs; see the file COPYING.  If not, write to the
+Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+Boston, MA 02110-1301, USA.