unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Re: make bootstrap in separate build directory will overwrite loaddefs.el
       [not found] <x5g040j6is.fsf@tupik.goethe.zz>
@ 2002-02-19  6:37 ` Richard Stallman
  2002-02-19  7:48   ` David Kastrup
  0 siblings, 1 reply; 14+ messages in thread
From: Richard Stallman @ 2002-02-19  6:37 UTC (permalink / raw)
  Cc: emacs-devel

    When I do
    make bootstrap,
    /home/tmp/emacs/lisp/loaddefs.el gets overwritten, resulting in a
    file considered modified by CVS.  Since the whole point of building
    Emacs in a separate directory was to leave the CVS checkout
    untouched, this is unsatisfactory.

It would be reasonable to always update loaddefs.el in the build
directory.  If you want to check in a new version of loaddefs.el, you
can build it in the source directory.

The next question is, how hard would it be to implement this?  We'd
have to arrange for temacs to read loaddefs.el from somewhere in the
build directory if it exists there.  That is surely possible but would
not be trivial.


_______________________________________________
Emacs-devel mailing list
Emacs-devel@gnu.org
http://mail.gnu.org/mailman/listinfo/emacs-devel


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: make bootstrap in separate build directory will overwrite loaddefs.el
  2002-02-19  6:37 ` make bootstrap in separate build directory will overwrite loaddefs.el Richard Stallman
@ 2002-02-19  7:48   ` David Kastrup
  2002-02-19  9:42     ` Eli Zaretskii
  2002-02-19 14:03     ` Stefan Monnier
  0 siblings, 2 replies; 14+ messages in thread
From: David Kastrup @ 2002-02-19  7:48 UTC (permalink / raw)
  Cc: emacs-devel

Richard Stallman <rms@gnu.org> writes:

>     When I do
>     make bootstrap,
>     /home/tmp/emacs/lisp/loaddefs.el gets overwritten, resulting in a
>     file considered modified by CVS.  Since the whole point of building
>     Emacs in a separate directory was to leave the CVS checkout
>     untouched, this is unsatisfactory.
> 
> It would be reasonable to always update loaddefs.el in the build
> directory.  If you want to check in a new version of loaddefs.el, you
> can build it in the source directory.
> 
> The next question is, how hard would it be to implement this?  We'd
> have to arrange for temacs to read loaddefs.el from somewhere in the
> build directory if it exists there.  That is surely possible but would
> not be trivial.

The question would be whether an initial copy of loaddefs.el is
necessary for
make bootstrap
in the first place.  If it isn't, the easy way out would be to remove
it from CVS altogether.  Since on my machine
make bootstrap
takes hours, I have not tested this right now.

-- 
David Kastrup, Kriemhildstr. 15, 44793 Bochum
Email: David.Kastrup@t-online.de

_______________________________________________
Emacs-devel mailing list
Emacs-devel@gnu.org
http://mail.gnu.org/mailman/listinfo/emacs-devel


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: make bootstrap in separate build directory will overwrite loaddefs.el
  2002-02-19  7:48   ` David Kastrup
@ 2002-02-19  9:42     ` Eli Zaretskii
  2002-02-19  9:59       ` David Kastrup
  2002-02-19 14:03     ` Stefan Monnier
  1 sibling, 1 reply; 14+ messages in thread
From: Eli Zaretskii @ 2002-02-19  9:42 UTC (permalink / raw)
  Cc: rms, emacs-devel

> From: David.Kastrup@t-online.de (David Kastrup)
> Date: 19 Feb 2002 08:48:01 +0100
> 
> The question would be whether an initial copy of loaddefs.el is
> necessary for make bootstrap in the first place.  If it isn't, the
> easy way out would be to remove it from CVS altogether.

It's a long-standing issue that didn't get resolved.

I don't think we want to force people to "make bootstrap" every time
they resync with the CVS.  Bootstrap is only required the first time
you check-out the whole tree.  Thereafter, "make recompile" in the
lisp directory should be enough in the absolute majority of cases.

> Since on my machine make bootstrap takes hours, I have not tested
> this right now.

The time it takes to bootstrap is one reason not to require it.

_______________________________________________
Emacs-devel mailing list
Emacs-devel@gnu.org
http://mail.gnu.org/mailman/listinfo/emacs-devel


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: make bootstrap in separate build directory will overwrite loaddefs.el
  2002-02-19  9:42     ` Eli Zaretskii
@ 2002-02-19  9:59       ` David Kastrup
  2002-02-19 10:08         ` Per Abrahamsen
  2002-02-19 11:58         ` Andreas Schwab
  0 siblings, 2 replies; 14+ messages in thread
From: David Kastrup @ 2002-02-19  9:59 UTC (permalink / raw)
  Cc: rms, emacs-devel

"Eli Zaretskii" <eliz@is.elta.co.il> writes:

> > From: David.Kastrup@t-online.de (David Kastrup)
> > Date: 19 Feb 2002 08:48:01 +0100
> > 
> > The question would be whether an initial copy of loaddefs.el is
> > necessary for make bootstrap in the first place.  If it isn't, the
> > easy way out would be to remove it from CVS altogether.
> 
> It's a long-standing issue that didn't get resolved.
> 
> I don't think we want to force people to "make bootstrap" every time
> they resync with the CVS.  Bootstrap is only required the first time
> you check-out the whole tree.  Thereafter, "make recompile" in the
> lisp directory should be enough in the absolute majority of cases.

*Now* you tell me.

> > Since on my machine make bootstrap takes hours, I have not tested
> > this right now.
> 
> The time it takes to bootstrap is one reason not to require it.

Here is my take on that:
make bootstrap
from a separate build tree *will* cause changes to the source tree.
In particular, all the elc files will be compiled in the source
tree.  Those elc files are *not* in the CVS, and they shouldn't.  If
you delete your separate build tree, you don't need to redo
make bootstrap
Now the question is whether
make bootstrap
can get off the ground without requiring an initial loaddefs.el.  If
it does, then its absence in the CVS tree would not imply that it
would be removed from the source tree once you have run "make
bootstrap".

Since it suffers the same consequences of "bit rot" as do the .elc
files, it would be sensible to regenerate it in the same manner,
namely in the course of running
"make recompile"
in the lisp directory.

This is how it appears to me at first glance.  Not being intimate
with the details of the build process, I might well be mistaken.

-- 
David Kastrup, Kriemhildstr. 15, 44793 Bochum
Email: David.Kastrup@t-online.de

_______________________________________________
Emacs-devel mailing list
Emacs-devel@gnu.org
http://mail.gnu.org/mailman/listinfo/emacs-devel


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: make bootstrap in separate build directory will overwrite loaddefs.el
  2002-02-19  9:59       ` David Kastrup
@ 2002-02-19 10:08         ` Per Abrahamsen
  2002-02-19 11:57           ` Eli Zaretskii
  2002-02-19 11:58         ` Andreas Schwab
  1 sibling, 1 reply; 14+ messages in thread
From: Per Abrahamsen @ 2002-02-19 10:08 UTC (permalink / raw)


David.Kastrup@t-online.de (David Kastrup) writes:

> "Eli Zaretskii" <eliz@is.elta.co.il> writes:
>
>> I don't think we want to force people to "make bootstrap" every time
>> they resync with the CVS.  Bootstrap is only required the first time
>> you check-out the whole tree.  Thereafter, "make recompile" in the
>> lisp directory should be enough in the absolute majority of cases.
>
> *Now* you tell me.

I didn't knew either.

I think a "README.CVS" with hints for people who retrieve Emacs
through cvs would be very useful.

_______________________________________________
Emacs-devel mailing list
Emacs-devel@gnu.org
http://mail.gnu.org/mailman/listinfo/emacs-devel


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: make bootstrap in separate build directory will overwrite loaddefs.el
  2002-02-19 10:08         ` Per Abrahamsen
@ 2002-02-19 11:57           ` Eli Zaretskii
  2002-02-19 14:04             ` Per Abrahamsen
  0 siblings, 1 reply; 14+ messages in thread
From: Eli Zaretskii @ 2002-02-19 11:57 UTC (permalink / raw)
  Cc: emacs-devel

> From: Per Abrahamsen <abraham@dina.kvl.dk>
> Date: Tue, 19 Feb 2002 11:08:13 +0100
> 
> David.Kastrup@t-online.de (David Kastrup) writes:
> 
> > "Eli Zaretskii" <eliz@is.elta.co.il> writes:
> >
> >> I don't think we want to force people to "make bootstrap" every time
> >> they resync with the CVS.  Bootstrap is only required the first time
> >> you check-out the whole tree.  Thereafter, "make recompile" in the
> >> lisp directory should be enough in the absolute majority of cases.
> >
> > *Now* you tell me.
> 
> I didn't knew either.

You mean you didn't know about "make recompile"?  Or did you mean
something else?

> I think a "README.CVS" with hints for people who retrieve Emacs
> through cvs would be very useful.

I agree, but I have lots of more important things to do in Emacs
development.  Contributions are more than welcome.

_______________________________________________
Emacs-devel mailing list
Emacs-devel@gnu.org
http://mail.gnu.org/mailman/listinfo/emacs-devel


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: make bootstrap in separate build directory will overwrite loaddefs.el
  2002-02-19  9:59       ` David Kastrup
  2002-02-19 10:08         ` Per Abrahamsen
@ 2002-02-19 11:58         ` Andreas Schwab
  2002-02-19 12:21           ` David Kastrup
  1 sibling, 1 reply; 14+ messages in thread
From: Andreas Schwab @ 2002-02-19 11:58 UTC (permalink / raw)
  Cc: Eli Zaretskii, rms, emacs-devel

David.Kastrup@t-online.de (David Kastrup) writes:

|> Now the question is whether
|> make bootstrap
|> can get off the ground without requiring an initial loaddefs.el.

You can't.  Dumping Emacs requires loaddefs.el, but that can only be
generated if you have already built Emacs previously.  Chicken'n'egg.

Andreas.

-- 
Andreas Schwab, SuSE Labs, schwab@suse.de
SuSE GmbH, Deutschherrnstr. 15-19, D-90429 Nürnberg
Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."

_______________________________________________
Emacs-devel mailing list
Emacs-devel@gnu.org
http://mail.gnu.org/mailman/listinfo/emacs-devel


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: make bootstrap in separate build directory will overwrite loaddefs.el
  2002-02-19 11:58         ` Andreas Schwab
@ 2002-02-19 12:21           ` David Kastrup
  2002-02-19 12:54             ` Andreas Schwab
                               ` (2 more replies)
  0 siblings, 3 replies; 14+ messages in thread
From: David Kastrup @ 2002-02-19 12:21 UTC (permalink / raw)
  Cc: Eli Zaretskii, rms, emacs-devel

Andreas Schwab <schwab@suse.de> writes:

> David.Kastrup@t-online.de (David Kastrup) writes:
> 
> |> Now the question is whether
> |> make bootstrap
> |> can get off the ground without requiring an initial loaddefs.el.
> 
> You can't.  Dumping Emacs requires loaddefs.el, but that can only be
> generated if you have already built Emacs previously.  Chicken'n'egg.

Well, one could rename the CVS version of loaddefs.el to something
like
loaddefs-bootstrap.el
and then the Makefile would copy to loaddefs.el prior to doing the
bootstrap just in case the latter has not been generated yet.

It simply makes CVS maintenance more of a hassle if CVS-controlled
files get overwritten in the course of compilation.

-- 
David Kastrup, Kriemhildstr. 15, 44793 Bochum
Email: David.Kastrup@t-online.de

_______________________________________________
Emacs-devel mailing list
Emacs-devel@gnu.org
http://mail.gnu.org/mailman/listinfo/emacs-devel


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: make bootstrap in separate build directory will overwrite loaddefs.el
  2002-02-19 12:21           ` David Kastrup
@ 2002-02-19 12:54             ` Andreas Schwab
  2002-02-20  6:44             ` Eli Zaretskii
  2002-02-20  6:47             ` Eli Zaretskii
  2 siblings, 0 replies; 14+ messages in thread
From: Andreas Schwab @ 2002-02-19 12:54 UTC (permalink / raw)
  Cc: Eli Zaretskii, rms, emacs-devel

David.Kastrup@t-online.de (David Kastrup) writes:

|> Andreas Schwab <schwab@suse.de> writes:
|> 
|> > David.Kastrup@t-online.de (David Kastrup) writes:
|> > 
|> > |> Now the question is whether
|> > |> make bootstrap
|> > |> can get off the ground without requiring an initial loaddefs.el.
|> > 
|> > You can't.  Dumping Emacs requires loaddefs.el, but that can only be
|> > generated if you have already built Emacs previously.  Chicken'n'egg.
|> 
|> Well, one could rename the CVS version of loaddefs.el to something
|> like
|> loaddefs-bootstrap.el
|> and then the Makefile would copy to loaddefs.el prior to doing the
|> bootstrap just in case the latter has not been generated yet.

Yes, I agree that this would be A Good Thing.

Andreas.

-- 
Andreas Schwab, SuSE Labs, schwab@suse.de
SuSE GmbH, Deutschherrnstr. 15-19, D-90429 Nürnberg
Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."

_______________________________________________
Emacs-devel mailing list
Emacs-devel@gnu.org
http://mail.gnu.org/mailman/listinfo/emacs-devel


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: make bootstrap in separate build directory will overwrite loaddefs.el
  2002-02-19  7:48   ` David Kastrup
  2002-02-19  9:42     ` Eli Zaretskii
@ 2002-02-19 14:03     ` Stefan Monnier
  2002-02-20 22:12       ` Richard Stallman
  1 sibling, 1 reply; 14+ messages in thread
From: Stefan Monnier @ 2002-02-19 14:03 UTC (permalink / raw)
  Cc: rms, emacs-devel

> The question would be whether an initial copy of loaddefs.el is
> necessary for
> make bootstrap
> in the first place.  If it isn't, the easy way out would be to remove
> it from CVS altogether.  Since on my machine

Some changes to loadup.el are necessary for it to be possible.
Nothing too drastic; I had it working a few months back but I haven't
cleaned it up yet.
It's definitely the right thing to do.


	Stefan


_______________________________________________
Emacs-devel mailing list
Emacs-devel@gnu.org
http://mail.gnu.org/mailman/listinfo/emacs-devel


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: make bootstrap in separate build directory will overwrite loaddefs.el
  2002-02-19 11:57           ` Eli Zaretskii
@ 2002-02-19 14:04             ` Per Abrahamsen
  0 siblings, 0 replies; 14+ messages in thread
From: Per Abrahamsen @ 2002-02-19 14:04 UTC (permalink / raw)
  Cc: emacs-devel

"Eli Zaretskii" <eliz@is.elta.co.il> writes:

>> From: Per Abrahamsen <abraham@dina.kvl.dk>
>> Date: Tue, 19 Feb 2002 11:08:13 +0100
>> 
>> David.Kastrup@t-online.de (David Kastrup) writes:
>> 
>> > "Eli Zaretskii" <eliz@is.elta.co.il> writes:
>> >
>> >> I don't think we want to force people to "make bootstrap" every time
>> >> they resync with the CVS.  Bootstrap is only required the first time
>> >> you check-out the whole tree.  Thereafter, "make recompile" in the
>> >> lisp directory should be enough in the absolute majority of cases.
>> >
>> > *Now* you tell me.
>> 
>> I didn't knew either.
>
> You mean you didn't know about "make recompile"?  

Yes.

_______________________________________________
Emacs-devel mailing list
Emacs-devel@gnu.org
http://mail.gnu.org/mailman/listinfo/emacs-devel


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: make bootstrap in separate build directory will overwrite loaddefs.el
  2002-02-19 12:21           ` David Kastrup
  2002-02-19 12:54             ` Andreas Schwab
@ 2002-02-20  6:44             ` Eli Zaretskii
  2002-02-20  6:47             ` Eli Zaretskii
  2 siblings, 0 replies; 14+ messages in thread
From: Eli Zaretskii @ 2002-02-20  6:44 UTC (permalink / raw)
  Cc: Andreas Schwab, rms, emacs-devel


On 19 Feb 2002, David Kastrup wrote:

> Andreas Schwab <schwab@suse.de> writes:
> 
> > David.Kastrup@t-online.de (David Kastrup) writes:
> > 
> > |> Now the question is whether
> > |> make bootstrap
> > |> can get off the ground without requiring an initial loaddefs.el.
> > 
> > You can't.  Dumping Emacs requires loaddefs.el, but that can only be
> > generated if you have already built Emacs previously.  Chicken'n'egg.
> 
> Well, one could rename the CVS version of loaddefs.el to something
> like
> loaddefs-bootstrap.el
> and then the Makefile would copy to loaddefs.el prior to doing the
> bootstrap just in case the latter has not been generated yet.
> 
> It simply makes CVS maintenance more of a hassle if CVS-controlled
> files get overwritten in the course of compilation.
> 
> -- 
> David Kastrup, Kriemhildstr. 15, 44793 Bochum
> Email: David.Kastrup@t-online.de
> 

_______________________________________________
Emacs-devel mailing list
Emacs-devel@gnu.org
http://mail.gnu.org/mailman/listinfo/emacs-devel


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: make bootstrap in separate build directory will overwrite loaddefs.el
  2002-02-19 12:21           ` David Kastrup
  2002-02-19 12:54             ` Andreas Schwab
  2002-02-20  6:44             ` Eli Zaretskii
@ 2002-02-20  6:47             ` Eli Zaretskii
  2 siblings, 0 replies; 14+ messages in thread
From: Eli Zaretskii @ 2002-02-20  6:47 UTC (permalink / raw)
  Cc: Andreas Schwab, rms, emacs-devel

I mistakenly sent a reply to David's message, with nothing in it except 
the quoted original message.  Please disregard that message.  Sorry for 
inconvenience.

_______________________________________________
Emacs-devel mailing list
Emacs-devel@gnu.org
http://mail.gnu.org/mailman/listinfo/emacs-devel


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: make bootstrap in separate build directory will overwrite loaddefs.el
  2002-02-19 14:03     ` Stefan Monnier
@ 2002-02-20 22:12       ` Richard Stallman
  0 siblings, 0 replies; 14+ messages in thread
From: Richard Stallman @ 2002-02-20 22:12 UTC (permalink / raw)
  Cc: David.Kastrup, emacs-devel

    Some changes to loadup.el are necessary for it to be possible.
    Nothing too drastic; I had it working a few months back but I haven't
    cleaned it up yet.
    It's definitely the right thing to do.

I think it is a distraction.  It won't help Emacs users, and it won't
even help us maintain Emacs.  I wouldn't spend ten minutes on it.
It is easier just to document what people who build from CVS should do.



_______________________________________________
Emacs-devel mailing list
Emacs-devel@gnu.org
http://mail.gnu.org/mailman/listinfo/emacs-devel


^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2002-02-20 22:12 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <x5g040j6is.fsf@tupik.goethe.zz>
2002-02-19  6:37 ` make bootstrap in separate build directory will overwrite loaddefs.el Richard Stallman
2002-02-19  7:48   ` David Kastrup
2002-02-19  9:42     ` Eli Zaretskii
2002-02-19  9:59       ` David Kastrup
2002-02-19 10:08         ` Per Abrahamsen
2002-02-19 11:57           ` Eli Zaretskii
2002-02-19 14:04             ` Per Abrahamsen
2002-02-19 11:58         ` Andreas Schwab
2002-02-19 12:21           ` David Kastrup
2002-02-19 12:54             ` Andreas Schwab
2002-02-20  6:44             ` Eli Zaretskii
2002-02-20  6:47             ` Eli Zaretskii
2002-02-19 14:03     ` Stefan Monnier
2002-02-20 22:12       ` Richard Stallman

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).