Auto-commit of generated files.
[emacs.git] / INSTALL.BZR
blob93e53fd09aad5b14126b2837497567694170fc37
1 Copyright (C) 2002-2012  Free Software Foundation, Inc.
2 See the end of the file for license conditions.
5               Building and Installing Emacs from Bazaar
7 Building Emacs from Bazaar requires some tools that are not needed
8 when building from a release.  You will need:
10 autoconf  - at least the version specified near the start of
11   configure.in (in the AC_PREREQ command).
12 automake  - we recommend at least version 1.11.
13 makeinfo  - not strictly necessary, but highly recommended, so that
14   you can build the manuals.
16 The `autogen.sh' script can help you figure out if you have the
17 necessary tools.
19 The first time you build, there are a couple of extra steps.
20 First, generate the `configure' script and some related files:
22   $ ./autogen.sh
24 (or you can just run `autoreconf -i -I m4').
26 You can then configure your build (use `./configure --help' to see
27 options you can set):
29   $ ./configure
31 If you want later builds to go faster, at the expense of sometimes
32 doing the wrong thing if you update the build procedure, you can
33 invoke "./configure -C --disable-maintainer-mode" instead.
35 Some of the files that are included in the Emacs tarball, such as
36 byte-compiled Lisp files, are not stored in Bazaar.  Therefore, to
37 build from Bazaar you must run "make bootstrap" instead of just "make":
39   $ bzr pull
40   $ make bootstrap
42 Normally, it is not necessary to use "make bootstrap" after every
43 update from Bazaar.  "make" should work in 90% of the cases and be
44 much quicker.
46   $ make
48 (If you want to install the Emacs binary, type "make install" instead
49 of "make" in the last command.)
51 Occasionally the file "lisp/loaddefs.el" (and similar automatically
52 generated files, such as esh-groups.el, and *-loaddefs.el in some
53 subdirectories of lisp/, e.g. mh-e/ and calendar/) will need to be
54 updated to reflect new autoloaded functions.  If you see errors (rather
55 than warnings) about undefined lisp functions during compilation, that
56 may be the reason.  Finally, sometimes there can be build failures
57 related to *loaddefs.el (e.g. "required feature `esh-groups' was not
58 provided").  In that case, follow the instructions below.
60 To update loaddefs.el (and similar files), do:
62   $ cd lisp
63   $ make autoloads
65 If either of the above partial procedures fails, try "make bootstrap".
66 If CPU time is not an issue, the most thorough way to rebuild, and
67 avoid any spurious problems, is always to use this method.
69 Users of non-Posix systems (MS-Windows etc.) should run the
70 platform-specific configuration scripts (nt/configure.bat, config.bat,
71 etc.) before "make bootstrap" or "make"; the rest of the procedure is
72 applicable to those systems as well.
74 Because the Bazaar version of Emacs is a work in progress, it will
75 sometimes fail to build.  Please wait a day or so (and check the
76 archives of the emacs-buildstatus, emacs-devel, and bug-gnu-emacs
77 mailing lists) before reporting such problems.  In most cases, the
78 problem is known about and is just waiting for someone to fix it.
79 This is especially true for Lisp compilation errors, which are almost
80 never platform-specific.
84 This file is part of GNU Emacs.
86 GNU Emacs is free software: you can redistribute it and/or modify
87 it under the terms of the GNU General Public License as published by
88 the Free Software Foundation, either version 3 of the License, or
89 (at your option) any later version.
91 GNU Emacs is distributed in the hope that it will be useful,
92 but WITHOUT ANY WARRANTY; without even the implied warranty of
93 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
94 GNU General Public License for more details.
96 You should have received a copy of the GNU General Public License
97 along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.