emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Bootstrap problem.


From: Lute Kamstra
Subject: Bootstrap problem.
Date: Wed, 30 Mar 2005 10:45:18 +0200
User-agent: Gnus/5.11 (Gnus v5.11) Emacs/22.0.50 (gnu/linux)

Consider the following situation.

Add a definition to lisp file A and make it available to other lisp
files by adding an autoload cookie.  Commit the change.  Then add some
code to lisp file B that depends on the presence of this definition to
compile.  Commit this change as well.

As I found out the hard way, this leads to problems in two cases:

1. Someone does a fresh checkout from CVS and does a make bootstrap.
   This fails because bootstrap-emacs that tries to compile file B
   uses the autoloads in ldefs-boot.el which wasn't updated and thus
   doesn't contain an autoload of the required definition in file A.

   This can, of course, be solved by regenerating ldefs-boot.el and
   committing it.  It's probably a good idea to mention this
   explicitly somewhere.

2. Someone has a CVS tree and did the last update before the change in
   file A.  Then that person does per next update after the change to
   file B and then does a make bootstrap.  bootstrap-emacs uses the
   old loaddefs.el that does not contain an autoload of the required
   definition in file A and fails to compile file B.

   A second make bootstrap would work fine as this would use the new
   loaddefs.el that was created during the first make bootstrap that
   failed.

Can't the bootstrap process be changed so that bootstrap-emacs uses
loaddefs.el with autoloads that are up to date?  This would make
ldefs-boot.el obsolete and one wouldn't have to think about
regenerating it under some circumstances.  It would also solve the
second problem.

Lute.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]