Fix merge glitches in 2 ChangeLog files.
[emacs.git] / INSTALL.REPO
blob67dceb8c6eb3376d8324ed5bd84ecf1d19f1bb8c
1              Building and Installing Emacs from the Repository
3 Building Emacs from the source-code repository requires some tools
4 that are not needed when building from a release.  You will need:
6 autoconf  - at least the version specified near the start of
7   configure.ac (in the AC_PREREQ command).
8 automake  - at least the version specified near the start of
9   configure.ac (in the AM_INIT_AUTOMAKE command).
10 makeinfo  - not strictly necessary, but highly recommended, so that
11   you can build the manuals.
13 To use the autotools, run the following shell command to generate the
14 'configure' script and some related files:
16   $ ./autogen.sh
18 You can then configure your build as follows:
20   $ ./configure
22 The 'configure' script has many options; run './configure --help' to
23 see them.  For example, if you want later builds to go faster, albeit
24 sometimes doing the wrong thing if you update the build procedure, you
25 can invoke './configure -C'.  After configuring, build Emacs as follows:
27   $ make
29 If you want to install Emacs, type 'make install' instead of 'make' in
30 the last command.
32 After your first build, you can usually just run 'make' after any
33 updates from the Savannah repository or local edits; the makefile
34 contains logic to re-run configure as needed. However, if the autoconf
35 input files have changed, or in some other situations, you will need
36 to run 'make bootstrap' (more below).
38 Occasionally the file 'lisp/loaddefs.el' (and similar automatically
39 generated files, such as 'esh-groups.el', and '*-loaddefs.el' in some
40 subdirectories of 'lisp/', e.g., 'mh-e/' and 'calendar/') will need to be
41 updated to reflect new autoloaded functions.  If you see errors (rather
42 than warnings) about undefined lisp functions during compilation, that
43 may be the reason.  Finally, sometimes there can be build failures
44 related to '*loaddefs.el' (e.g., "required feature `esh-groups' was not
45 provided").  In that case, follow the instructions below.
47 To update loaddefs.el (and similar files), do:
49   $ cd lisp
50   $ make autoloads
52 If either of the above partial procedures fails, try 'make bootstrap'.
53 If CPU time is not an issue, 'make bootstrap' is the most thorough way
54 to rebuild, and avoid any spurious problems.
56 Because the repository version of Emacs is a work in progress, it will
57 sometimes fail to build.  Please wait a day or so (and check the
58 archives of the emacs-buildstatus, emacs-devel, and bug-gnu-emacs
59 mailing lists) before reporting such problems.  In most cases, the
60 problem is known about and is just waiting for someone to fix it.
61 This is especially true for Lisp compilation errors, which are almost
62 never platform-specific.
66 Copyright (C) 2002-2014 Free Software Foundation, Inc.
68 This file is part of GNU Emacs.
70 GNU Emacs is free software: you can redistribute it and/or modify
71 it under the terms of the GNU General Public License as published by
72 the Free Software Foundation, either version 3 of the License, or
73 (at your option) any later version.
75 GNU Emacs is distributed in the hope that it will be useful,
76 but WITHOUT ANY WARRANTY; without even the implied warranty of
77 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
78 GNU General Public License for more details.
80 You should have received a copy of the GNU General Public License
81 along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.