2012-01-05 09:46:05 +00:00
|
|
|
|
Copyright (C) 2002-2012 Free Software Foundation, Inc.
|
2007-02-11 00:15:39 +00:00
|
|
|
|
See the end of the file for license conditions.
|
2007-02-01 03:10:42 +00:00
|
|
|
|
|
|
|
|
|
|
2009-12-27 22:26:27 +00:00
|
|
|
|
Building and Installing Emacs from Bazaar
|
2002-06-17 06:08:23 +00:00
|
|
|
|
|
2011-03-20 23:58:23 +00:00
|
|
|
|
Building Emacs from Bazaar requires some tools that are not needed
|
|
|
|
|
when building from a release. You will need:
|
2009-01-11 23:07:18 +00:00
|
|
|
|
|
2011-03-20 23:58:23 +00:00
|
|
|
|
autoconf - at least the version specified near the start of
|
|
|
|
|
configure.in (in the AC_PREREQ command).
|
|
|
|
|
automake - we recommend at least version 1.11.
|
|
|
|
|
makeinfo - not strictly necessary, but highly recommended, so that
|
|
|
|
|
you can build the manuals.
|
|
|
|
|
|
|
|
|
|
The `autogen.sh' script can help you figure out if you have the
|
|
|
|
|
necessary tools.
|
|
|
|
|
|
|
|
|
|
The first time you build, there are a couple of extra steps.
|
2011-03-29 03:33:22 +00:00
|
|
|
|
First, generate the `configure' script and some related files:
|
2011-03-20 23:58:23 +00:00
|
|
|
|
|
|
|
|
|
$ ./autogen.sh
|
2009-01-11 23:07:18 +00:00
|
|
|
|
|
Remove some files that autoreconf can supply.
Ref: http://lists.gnu.org/archive/html/emacs-devel/2011-03/msg00863.html
* compile, config.guess, config.sub, depcomp, install-sh, missing:
Remove; autoreconf can supply them.
* Makefile.in (sync-from-gnulib): Don't sync config.sub,
config.guess, install-sh. Pass -i to autoreconf.
* autogen/update_autogen (genfiles): Add compile, config.guess,
config.sub, depcomp, install-sh, missing. Pass -i to autoreconf.
Discard non-error output from autoreconf in -q case.
* autogen/compile, autogen/config.guess, autogen/config.sub:
* autogen/depcomp, autogen/install-sh, autogen/missing: New files.
* autogen/copy_autogen: Add compile, config.guess, config.sub, depcomp,
install-sh, missing.
* autogen/README: Add compile, config.guess, config.sub, depcomp,
install-sh, missing.
* INSTALL.BZR, admin/make-tarball.txt: Add -i to autoreconf args.
* .bzrignore: Add compile, config.guess, config.sub, depcomp,
install-sh, missing.
2011-03-25 07:14:31 +00:00
|
|
|
|
(or you can just run `autoreconf -i -I m4').
|
2011-03-20 23:58:23 +00:00
|
|
|
|
|
|
|
|
|
You can then configure your build (use `./configure --help' to see
|
|
|
|
|
options you can set):
|
|
|
|
|
|
|
|
|
|
$ ./configure
|
2011-02-27 19:36:45 +00:00
|
|
|
|
|
2011-12-03 20:28:21 +00:00
|
|
|
|
If you want later builds to go faster, at the expense of sometimes
|
|
|
|
|
doing the wrong thing if you update the build procedure, you can
|
|
|
|
|
invoke "./configure -C --disable-maintainer-mode" instead.
|
|
|
|
|
|
2002-06-17 06:08:23 +00:00
|
|
|
|
Some of the files that are included in the Emacs tarball, such as
|
2009-12-27 22:26:27 +00:00
|
|
|
|
byte-compiled Lisp files, are not stored in Bazaar. Therefore, to
|
|
|
|
|
build from Bazaar you must run "make bootstrap" instead of just "make":
|
2002-06-17 06:08:23 +00:00
|
|
|
|
|
2009-12-28 09:38:43 +00:00
|
|
|
|
$ bzr pull
|
2002-06-17 06:08:23 +00:00
|
|
|
|
$ make bootstrap
|
|
|
|
|
|
2009-12-27 22:26:27 +00:00
|
|
|
|
Normally, it is not necessary to use "make bootstrap" after every
|
|
|
|
|
update from Bazaar. "make" should work in 90% of the cases and be
|
|
|
|
|
much quicker.
|
2002-06-17 06:08:23 +00:00
|
|
|
|
|
|
|
|
|
$ make
|
|
|
|
|
|
|
|
|
|
(If you want to install the Emacs binary, type "make install" instead
|
|
|
|
|
of "make" in the last command.)
|
|
|
|
|
|
2008-06-08 19:11:43 +00:00
|
|
|
|
Occasionally the file "lisp/loaddefs.el" (and similar automatically
|
|
|
|
|
generated files, such as esh-groups.el, and *-loaddefs.el 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
|
2010-10-12 03:45:41 +00:00
|
|
|
|
may be the reason. Finally, sometimes there can be build failures
|
|
|
|
|
related to *loaddefs.el (e.g. "required feature `esh-groups' was not
|
|
|
|
|
provided"). In that case, follow the instructions below.
|
2008-04-09 07:14:20 +00:00
|
|
|
|
|
|
|
|
|
To update loaddefs.el (and similar files), do:
|
2003-10-01 02:09:47 +00:00
|
|
|
|
|
|
|
|
|
$ cd lisp
|
2008-06-18 02:58:24 +00:00
|
|
|
|
$ make autoloads
|
2003-10-01 02:09:47 +00:00
|
|
|
|
|
2005-10-22 11:11:59 +00:00
|
|
|
|
If either of the above partial procedures fails, try "make bootstrap".
|
2009-09-05 18:53:34 +00:00
|
|
|
|
If CPU time is not an issue, the most thorough way to rebuild, and
|
|
|
|
|
avoid any spurious problems, is always to use this method.
|
2008-04-08 17:15:33 +00:00
|
|
|
|
|
2002-06-17 06:08:23 +00:00
|
|
|
|
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
|
2008-06-18 02:58:24 +00:00
|
|
|
|
applicable to those systems as well.
|
2002-06-17 06:08:23 +00:00
|
|
|
|
|
2009-12-27 22:26:27 +00:00
|
|
|
|
Because the Bazaar version of Emacs is a work in progress, it will
|
2011-06-25 17:51:03 +00:00
|
|
|
|
sometimes fail to build. Please wait a day or so (and check the
|
|
|
|
|
archives of the emacs-buildstatus, emacs-devel, and bug-gnu-emacs
|
|
|
|
|
mailing lists) before reporting such problems. In most cases, the
|
|
|
|
|
problem is known about and is just waiting for someone to fix it.
|
|
|
|
|
This is especially true for Lisp compilation errors, which are almost
|
|
|
|
|
never platform-specific.
|
2008-09-01 21:28:30 +00:00
|
|
|
|
|
2004-02-17 23:47:32 +00:00
|
|
|
|
|
2007-02-11 00:15:39 +00:00
|
|
|
|
|
|
|
|
|
This file is part of GNU Emacs.
|
|
|
|
|
|
2008-05-07 07:35:58 +00:00
|
|
|
|
GNU Emacs is free software: you can redistribute it and/or modify
|
2007-02-11 00:15:39 +00:00
|
|
|
|
it under the terms of the GNU General Public License as published by
|
2008-05-07 07:35:58 +00:00
|
|
|
|
the Free Software Foundation, either version 3 of the License, or
|
|
|
|
|
(at your option) any later version.
|
2007-02-11 00:15:39 +00:00
|
|
|
|
|
|
|
|
|
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
|
2008-05-07 07:35:58 +00:00
|
|
|
|
along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
|