unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* A more radical cleanup for make bootstrap?
@ 2022-09-19 19:46 Gregory Heytings
  2022-09-19 19:48 ` Lars Ingebrigtsen
                   ` (3 more replies)
  0 siblings, 4 replies; 37+ messages in thread
From: Gregory Heytings @ 2022-09-19 19:46 UTC (permalink / raw)
  To: Lars Ingebrigtsen; +Cc: Po Lu, Stefan Monnier, Stefan Kangas, emacs-devel


[Subject changed so that potentially interested readers do not miss it.]

>> WDYT of simply adding another "full-bootstrap" target, with the meaning 
>> "from the lowest possible ground"?
>
> If other people are so married to the "bootstrap" name that they refuse 
> to consider renaming it, I don't think it's worth spending more time 
> arguing about.  So, sure.
>

Now Stefan M and Po Lu both said (IIUC) that what they'd like is a 
bootstrap that does a less radical cleanup than what bootstrap now does. 
And (again IIUC) Eli and you (and others) agree that bootstrap should 
start with a state that is as clean as possible (which is what extraclean 
does).

So what I'd suggest is to use extraclean in bootstrap, and add either 
another target like "soft-bootstrap" or a configuration variable like 
"SOFT=true" that would make a less radical cleanup than what 
bootstrap-cleanup now does.

Would that be a solution that is acceptable to everyone?



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

* Re: A more radical cleanup for make bootstrap?
  2022-09-19 19:46 A more radical cleanup for make bootstrap? Gregory Heytings
@ 2022-09-19 19:48 ` Lars Ingebrigtsen
  2022-09-19 20:26 ` Alan Mackenzie
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 37+ messages in thread
From: Lars Ingebrigtsen @ 2022-09-19 19:48 UTC (permalink / raw)
  To: Gregory Heytings; +Cc: Po Lu, Stefan Monnier, Stefan Kangas, emacs-devel

Gregory Heytings <gregory@heytings.org> writes:

> So what I'd suggest is to use extraclean in bootstrap, and add either
> another target like "soft-bootstrap" or a configuration variable like
> "SOFT=true" that would make a less radical cleanup than what
> bootstrap-cleanup now does.
>
> Would that be a solution that is acceptable to everyone?

Sounds good to me.



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

* Re: A more radical cleanup for make bootstrap?
  2022-09-19 19:46 A more radical cleanup for make bootstrap? Gregory Heytings
  2022-09-19 19:48 ` Lars Ingebrigtsen
@ 2022-09-19 20:26 ` Alan Mackenzie
  2022-09-19 20:29   ` Lars Ingebrigtsen
  2022-09-19 21:45   ` Gregory Heytings
  2022-09-19 20:53 ` Stefan Monnier
  2022-09-20  2:29 ` Eli Zaretskii
  3 siblings, 2 replies; 37+ messages in thread
From: Alan Mackenzie @ 2022-09-19 20:26 UTC (permalink / raw)
  To: Gregory Heytings
  Cc: Lars Ingebrigtsen, Po Lu, Stefan Monnier, Stefan Kangas,
	emacs-devel

Hello, Gregory.

On Mon, Sep 19, 2022 at 19:46:55 +0000, Gregory Heytings wrote:

> [Subject changed so that potentially interested readers do not miss it.]

Thanks!

> >> WDYT of simply adding another "full-bootstrap" target, with the meaning 
> >> "from the lowest possible ground"?

> > If other people are so married to the "bootstrap" name that they refuse 
> > to consider renaming it, I don't think it's worth spending more time 
> > arguing about.  So, sure.


> Now Stefan M and Po Lu both said (IIUC) that what they'd like is a 
> bootstrap that does a less radical cleanup than what bootstrap now does. 
> And (again IIUC) Eli and you (and others) agree that bootstrap should 
> start with a state that is as clean as possible (which is what extraclean 
> does).

The prime quality of the current bootstrap is that it doesn't delete
anything unrecoverable - it only deletes generated files.

> So what I'd suggest is to use extraclean in bootstrap, and add either 
> another target like "soft-bootstrap" or a configuration variable like 
> "SOFT=true" that would make a less radical cleanup than what 
> bootstrap-cleanup now does.

It's not clear from the comments what extraclean does.  The comments
just say it does "delete backup and autosave files, too", without
specifying the files whose backup and autosave files get deleted.

> Would that be a solution that is acceptable to everyone?

If I understand correctly, the proposed bootstrap would irrevocably
delete unrecoverable files.  I don't think this should be done as a side
effect of something else, rather users who want extraclean should have
to say so explicitly, as a safety measure.

Again, if I understand correctly, I would type make bootstrap out of
sheer finger memory and lose lots of files.  I'd be unhappy about that.

Why not, instead, leave bootstrap as it is (possibly removing the call
to ./configure from it) and give the new target a new name, such as
bootstrap-hard?

-- 
Alan Mackenzie (Nuremberg, Germany).



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

* Re: A more radical cleanup for make bootstrap?
  2022-09-19 20:26 ` Alan Mackenzie
@ 2022-09-19 20:29   ` Lars Ingebrigtsen
  2022-09-19 20:49     ` Alan Mackenzie
  2022-09-19 21:45   ` Gregory Heytings
  1 sibling, 1 reply; 37+ messages in thread
From: Lars Ingebrigtsen @ 2022-09-19 20:29 UTC (permalink / raw)
  To: Alan Mackenzie
  Cc: Gregory Heytings, Po Lu, Stefan Monnier, Stefan Kangas,
	emacs-devel

Alan Mackenzie <acm@muc.de> writes:

> The prime quality of the current bootstrap is that it doesn't delete
> anything unrecoverable - it only deletes generated files.

But it does not delete all generated files, which is the problem.  Try a
"make bootstrap-clean" then "git clean -n -dfx" (note -- -n for dry run)
to see the ones left behind.



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

* Re: A more radical cleanup for make bootstrap?
  2022-09-19 20:29   ` Lars Ingebrigtsen
@ 2022-09-19 20:49     ` Alan Mackenzie
  2022-09-19 20:51       ` Lars Ingebrigtsen
  2022-09-20  2:35       ` Eli Zaretskii
  0 siblings, 2 replies; 37+ messages in thread
From: Alan Mackenzie @ 2022-09-19 20:49 UTC (permalink / raw)
  To: Lars Ingebrigtsen
  Cc: Gregory Heytings, Po Lu, Stefan Monnier, Stefan Kangas,
	emacs-devel

Hello, Lars.

On Mon, Sep 19, 2022 at 22:29:09 +0200, Lars Ingebrigtsen wrote:
> Alan Mackenzie <acm@muc.de> writes:

> > The prime quality of the current bootstrap is that it doesn't delete
> > anything unrecoverable - it only deletes generated files.

> But it does not delete all generated files, which is the problem.  Try a
> "make bootstrap-clean" then "git clean -n -dfx" (note -- -n for dry run)
> to see the ones left behind.

If the choice is between failing to delete some generated files, and
deleting unrecoverable files, I'd take the first choice.

Is that the choice we're talking about, or are we talking about
deleting all generated files and no others?

-- 
Alan Mackenzie (Nuremberg, Germany).



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

* Re: A more radical cleanup for make bootstrap?
  2022-09-19 20:49     ` Alan Mackenzie
@ 2022-09-19 20:51       ` Lars Ingebrigtsen
  2022-09-19 21:01         ` Alan Mackenzie
  2022-09-20  2:35       ` Eli Zaretskii
  1 sibling, 1 reply; 37+ messages in thread
From: Lars Ingebrigtsen @ 2022-09-19 20:51 UTC (permalink / raw)
  To: Alan Mackenzie
  Cc: Gregory Heytings, Po Lu, Stefan Monnier, Stefan Kangas,
	emacs-devel

Alan Mackenzie <acm@muc.de> writes:

> Is that the choice we're talking about, or are we talking about
> deleting all generated files and no others?

The latter.



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

* Re: A more radical cleanup for make bootstrap?
  2022-09-19 19:46 A more radical cleanup for make bootstrap? Gregory Heytings
  2022-09-19 19:48 ` Lars Ingebrigtsen
  2022-09-19 20:26 ` Alan Mackenzie
@ 2022-09-19 20:53 ` Stefan Monnier
  2022-09-20  2:29 ` Eli Zaretskii
  3 siblings, 0 replies; 37+ messages in thread
From: Stefan Monnier @ 2022-09-19 20:53 UTC (permalink / raw)
  To: Gregory Heytings; +Cc: Lars Ingebrigtsen, Po Lu, Stefan Kangas, emacs-devel

> Would that be a solution that is acceptable to everyone?

To be honest, I can live with a "bootstrap" that does a thorough
build from scratch (and cook up my own "minimal bootstrap").
I think it's technically incorrect to call it "bootstrap", but it's not
like it matters.

I was just assuming there are other people in my situation, but I don't
know it to be the case.


        Stefan




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

* Re: A more radical cleanup for make bootstrap?
  2022-09-19 20:51       ` Lars Ingebrigtsen
@ 2022-09-19 21:01         ` Alan Mackenzie
  0 siblings, 0 replies; 37+ messages in thread
From: Alan Mackenzie @ 2022-09-19 21:01 UTC (permalink / raw)
  To: Lars Ingebrigtsen
  Cc: Gregory Heytings, Po Lu, Stefan Monnier, Stefan Kangas,
	emacs-devel

Hello, Lars.

On Mon, Sep 19, 2022 at 22:51:36 +0200, Lars Ingebrigtsen wrote:
> Alan Mackenzie <acm@muc.de> writes:

> > Is that the choice we're talking about, or are we talking about
> > deleting all generated files and no others?

> The latter.

Oh, good!

-- 
Alan Mackenzie (Nuremberg, Germany).



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

* Re: A more radical cleanup for make bootstrap?
  2022-09-19 20:26 ` Alan Mackenzie
  2022-09-19 20:29   ` Lars Ingebrigtsen
@ 2022-09-19 21:45   ` Gregory Heytings
  2022-09-20  6:38     ` Alfred M. Szmidt
  1 sibling, 1 reply; 37+ messages in thread
From: Gregory Heytings @ 2022-09-19 21:45 UTC (permalink / raw)
  To: Alan Mackenzie
  Cc: Lars Ingebrigtsen, Po Lu, Stefan Monnier, Stefan Kangas,
	emacs-devel


>
> It's not clear from the comments what extraclean does.  The comments 
> just say it does "delete backup and autosave files, too", without 
> specifying the files whose backup and autosave files get deleted.
>

extraclean removes all generated files, and also all *~ and #* files.  If 
removing these files is a potential problem, they could perhaps be kept by 
bootstrap (or be kept conditionally to some variable).  But note that *~ 
files are by default not created by Emacs, unless you've set 
vc-make-backup-files to t in your init file.



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

* Re: A more radical cleanup for make bootstrap?
  2022-09-19 19:46 A more radical cleanup for make bootstrap? Gregory Heytings
                   ` (2 preceding siblings ...)
  2022-09-19 20:53 ` Stefan Monnier
@ 2022-09-20  2:29 ` Eli Zaretskii
  2022-09-20  7:58   ` Gregory Heytings
  3 siblings, 1 reply; 37+ messages in thread
From: Eli Zaretskii @ 2022-09-20  2:29 UTC (permalink / raw)
  To: Gregory Heytings; +Cc: larsi, luangruo, monnier, stefan, emacs-devel

> Date: Mon, 19 Sep 2022 19:46:55 +0000
> From: Gregory Heytings <gregory@heytings.org>
> cc: Po Lu <luangruo@yahoo.com>, Stefan Monnier <monnier@iro.umontreal.ca>, 
>  Stefan Kangas <stefan@marxist.se>, emacs-devel@gnu.org
> 
> So what I'd suggest is to use extraclean in bootstrap, and add either 
> another target like "soft-bootstrap" or a configuration variable like 
> "SOFT=true" that would make a less radical cleanup than what 
> bootstrap-cleanup now does.

What would be the purpose of this "soft-bootstrap"?



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

* Re: A more radical cleanup for make bootstrap?
  2022-09-19 20:49     ` Alan Mackenzie
  2022-09-19 20:51       ` Lars Ingebrigtsen
@ 2022-09-20  2:35       ` Eli Zaretskii
  2022-09-20  2:42         ` Po Lu
  2022-09-20 10:01         ` Alan Mackenzie
  1 sibling, 2 replies; 37+ messages in thread
From: Eli Zaretskii @ 2022-09-20  2:35 UTC (permalink / raw)
  To: Alan Mackenzie; +Cc: larsi, gregory, luangruo, monnier, stefan, emacs-devel

> Date: Mon, 19 Sep 2022 20:49:23 +0000
> Cc: Gregory Heytings <gregory@heytings.org>, Po Lu <luangruo@yahoo.com>,
>  Stefan Monnier <monnier@iro.umontreal.ca>,
>  Stefan Kangas <stefan@marxist.se>, emacs-devel@gnu.org
> From: Alan Mackenzie <acm@muc.de>
> 
> If the choice is between failing to delete some generated files, and
> deleting unrecoverable files, I'd take the first choice.

What are "unrecoverable files" in this context, please?  Can you give
a couple of examples of such files?



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

* Re: A more radical cleanup for make bootstrap?
  2022-09-20  2:35       ` Eli Zaretskii
@ 2022-09-20  2:42         ` Po Lu
  2022-09-20 11:01           ` Eli Zaretskii
  2022-09-20 10:01         ` Alan Mackenzie
  1 sibling, 1 reply; 37+ messages in thread
From: Po Lu @ 2022-09-20  2:42 UTC (permalink / raw)
  To: Eli Zaretskii
  Cc: Alan Mackenzie, larsi, gregory, monnier, stefan, emacs-devel

Eli Zaretskii <eliz@gnu.org> writes:

> What are "unrecoverable files" in this context, please?  Can you give
> a couple of examples of such files?

I think Alan is referring to auto-save files, which make extraclean
deletes.



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

* Re: A more radical cleanup for make bootstrap?
  2022-09-19 21:45   ` Gregory Heytings
@ 2022-09-20  6:38     ` Alfred M. Szmidt
  2022-09-20  8:22       ` Gregory Heytings
  0 siblings, 1 reply; 37+ messages in thread
From: Alfred M. Szmidt @ 2022-09-20  6:38 UTC (permalink / raw)
  To: Gregory Heytings; +Cc: acm, larsi, luangruo, monnier, stefan, emacs-devel

   > It's not clear from the comments what extraclean does.  The comments 
   > just say it does "delete backup and autosave files, too", without 
   > specifying the files whose backup and autosave files get deleted.

   extraclean removes all generated files, and also all *~ and #* files.  If 
   removing these files is a potential problem, they could perhaps be kept by 
   bootstrap (or be kept conditionally to some variable).  But note that *~ 
   files are by default not created by Emacs, unless you've set 
   vc-make-backup-files to t in your init file.

vc-make-backup-files only applies for files under version control,
Non-version controlled files get backup files created by default.

So if you have a file, not under version control, its backup files
might get removed.  That extraclean deletes files it does not know
about (*~ and #*) seems like a mis-feature.



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

* Re: A more radical cleanup for make bootstrap?
  2022-09-20  2:29 ` Eli Zaretskii
@ 2022-09-20  7:58   ` Gregory Heytings
  2022-09-20  8:20     ` Po Lu
  0 siblings, 1 reply; 37+ messages in thread
From: Gregory Heytings @ 2022-09-20  7:58 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: larsi, luangruo, monnier, stefan, emacs-devel


>> So what I'd suggest is to use extraclean in bootstrap, and add either 
>> another target like "soft-bootstrap" or a configuration variable like 
>> "SOFT=true" that would make a less radical cleanup than what 
>> bootstrap-cleanup now does.
>
> What would be the purpose of this "soft-bootstrap"?
>

I don't know exactly.  Stefan M and Po Lu both asked for a "less radical" 
bootstrap, which is what that "soft-bootstrap" would have done.  But now 
Stefan said it's not that important to him.  So I guess there's no need 
for a "soft-bootstrap" anymore, unless someone tells otherwise.



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

* Re: A more radical cleanup for make bootstrap?
  2022-09-20  7:58   ` Gregory Heytings
@ 2022-09-20  8:20     ` Po Lu
  2022-09-20  8:25       ` Gregory Heytings
  2022-09-20 11:22       ` Eli Zaretskii
  0 siblings, 2 replies; 37+ messages in thread
From: Po Lu @ 2022-09-20  8:20 UTC (permalink / raw)
  To: Gregory Heytings; +Cc: Eli Zaretskii, larsi, monnier, stefan, emacs-devel

Gregory Heytings <gregory@heytings.org> writes:

> I don't know exactly.  Stefan M and Po Lu both asked for a "less
> radical" bootstrap, which is what that "soft-bootstrap" would have
> done.  But now Stefan said it's not that important to him.  So I guess
> there's no need for a "soft-bootstrap" anymore, unless someone tells
> otherwise.

What about me?

It generally takes 10-15 minutes for me to build Emacs in ideal
conditions from "make bootstrap", with much of that time taken up by
building temacs.  It takes longer when I am actually working on Emacs,
because that typically happens while my machine is already under load.



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

* Re: A more radical cleanup for make bootstrap?
  2022-09-20  6:38     ` Alfred M. Szmidt
@ 2022-09-20  8:22       ` Gregory Heytings
  0 siblings, 0 replies; 37+ messages in thread
From: Gregory Heytings @ 2022-09-20  8:22 UTC (permalink / raw)
  To: Alfred M. Szmidt; +Cc: acm, larsi, luangruo, monnier, stefan, emacs-devel


>> extraclean removes all generated files, and also all *~ and #* files. 
>> If removing these files is a potential problem, they could perhaps be 
>> kept by bootstrap (or be kept conditionally to some variable).  But 
>> note that *~ files are by default not created by Emacs, unless you've 
>> set vc-make-backup-files to t in your init file.
>
> vc-make-backup-files only applies for files under version control, 
> Non-version controlled files get backup files created by default.
>
> So if you have a file, not under version control, its backup files might 
> get removed.  That extraclean deletes files it does not know about (*~ 
> and #*) seems like a mis-feature.
>

After thinking a bit more about this, IMO these backup and autosaved files 
can be kept by the new bootstrap-clean, given that it seems unlikely that 
these files have an effect on the build, or at least that it is not more 
likely that they could impact the build more than user-created files 
(which aren't deleted by extraclean either).



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

* Re: A more radical cleanup for make bootstrap?
  2022-09-20  8:20     ` Po Lu
@ 2022-09-20  8:25       ` Gregory Heytings
  2022-09-20  8:46         ` Po Lu
  2022-09-20 11:22       ` Eli Zaretskii
  1 sibling, 1 reply; 37+ messages in thread
From: Gregory Heytings @ 2022-09-20  8:25 UTC (permalink / raw)
  To: Po Lu; +Cc: Eli Zaretskii, larsi, monnier, stefan, emacs-devel


>> I don't know exactly.  Stefan M and Po Lu both asked for a "less 
>> radical" bootstrap, which is what that "soft-bootstrap" would have 
>> done.  But now Stefan said it's not that important to him.  So I guess 
>> there's no need for a "soft-bootstrap" anymore, unless someone tells 
>> otherwise.
>
> What about me?
>

You could be that "someone".

>
> It generally takes 10-15 minutes for me to build Emacs in ideal 
> conditions from "make bootstrap", with much of that time taken up by 
> building temacs.  It takes longer when I am actually working on Emacs, 
> because that typically happens while my machine is already under load.
>

So what you'd need is another cleaning target, is that correct?



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

* Re: A more radical cleanup for make bootstrap?
  2022-09-20  8:25       ` Gregory Heytings
@ 2022-09-20  8:46         ` Po Lu
  2022-09-20  9:01           ` Gregory Heytings
  0 siblings, 1 reply; 37+ messages in thread
From: Po Lu @ 2022-09-20  8:46 UTC (permalink / raw)
  To: Gregory Heytings; +Cc: Eli Zaretskii, larsi, monnier, stefan, emacs-devel

Gregory Heytings <gregory@heytings.org> writes:

> So what you'd need is another cleaning target, is that correct?

Yes, and I think it makes slightly more sense to call it "bootstrap"
than to call it something else.



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

* Re: A more radical cleanup for make bootstrap?
  2022-09-20  8:46         ` Po Lu
@ 2022-09-20  9:01           ` Gregory Heytings
  0 siblings, 0 replies; 37+ messages in thread
From: Gregory Heytings @ 2022-09-20  9:01 UTC (permalink / raw)
  To: Po Lu; +Cc: Eli Zaretskii, larsi, monnier, stefan, emacs-devel


>> So what you'd need is another cleaning target, is that correct?
>
> Yes,
>

Okay.  What would that cleaning target do?  Remove everything except 
temacs?

>
> and I think it makes slightly more sense to call it "bootstrap" than to 
> call it something else.
>

I don't think its name matters much.

"What's in a name? That which we call a rose
By any other name would smell as sweet."



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

* Re: A more radical cleanup for make bootstrap?
  2022-09-20  2:35       ` Eli Zaretskii
  2022-09-20  2:42         ` Po Lu
@ 2022-09-20 10:01         ` Alan Mackenzie
  1 sibling, 0 replies; 37+ messages in thread
From: Alan Mackenzie @ 2022-09-20 10:01 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: larsi, gregory, luangruo, monnier, stefan, emacs-devel

Hello, Eli.

On Tue, Sep 20, 2022 at 05:35:36 +0300, Eli Zaretskii wrote:
> > Date: Mon, 19 Sep 2022 20:49:23 +0000
> > Cc: Gregory Heytings <gregory@heytings.org>, Po Lu <luangruo@yahoo.com>,
> >  Stefan Monnier <monnier@iro.umontreal.ca>,
> >  Stefan Kangas <stefan@marxist.se>, emacs-devel@gnu.org
> > From: Alan Mackenzie <acm@muc.de>
> > 
> > If the choice is between failing to delete some generated files, and
> > deleting unrecoverable files, I'd take the first choice.

> What are "unrecoverable files" in this context, please?  Can you give
> a couple of examples of such files?

I was thinking of xdisp.c~ and simple.el~.  Also, perhaps, myfile.el.

-- 
Alan Mackenzie (Nuremberg, Germany).



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

* Re: A more radical cleanup for make bootstrap?
  2022-09-20  2:42         ` Po Lu
@ 2022-09-20 11:01           ` Eli Zaretskii
  0 siblings, 0 replies; 37+ messages in thread
From: Eli Zaretskii @ 2022-09-20 11:01 UTC (permalink / raw)
  To: Po Lu; +Cc: acm, larsi, gregory, monnier, stefan, emacs-devel

> From: Po Lu <luangruo@yahoo.com>
> Cc: Alan Mackenzie <acm@muc.de>,  larsi@gnus.org,  gregory@heytings.org,
>   monnier@iro.umontreal.ca,  stefan@marxist.se,  emacs-devel@gnu.org
> Date: Tue, 20 Sep 2022 10:42:03 +0800
> 
> Eli Zaretskii <eliz@gnu.org> writes:
> 
> > What are "unrecoverable files" in this context, please?  Can you give
> > a couple of examples of such files?
> 
> I think Alan is referring to auto-save files, which make extraclean
> deletes.

If those files can never cause problems for a clean build, maybe we
should instead enhance bootstrap-clean and use that?



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

* Re: A more radical cleanup for make bootstrap?
  2022-09-20  8:20     ` Po Lu
  2022-09-20  8:25       ` Gregory Heytings
@ 2022-09-20 11:22       ` Eli Zaretskii
  2022-09-20 11:55         ` Po Lu
  2022-09-20 16:14         ` Michael Welsh Duggan
  1 sibling, 2 replies; 37+ messages in thread
From: Eli Zaretskii @ 2022-09-20 11:22 UTC (permalink / raw)
  To: Po Lu; +Cc: gregory, larsi, monnier, stefan, emacs-devel

> From: Po Lu <luangruo@yahoo.com>
> Cc: Eli Zaretskii <eliz@gnu.org>,  larsi@gnus.org,
>   monnier@iro.umontreal.ca,  stefan@marxist.se,  emacs-devel@gnu.org
> Date: Tue, 20 Sep 2022 16:20:06 +0800
> 
> Gregory Heytings <gregory@heytings.org> writes:
> 
> > I don't know exactly.  Stefan M and Po Lu both asked for a "less
> > radical" bootstrap, which is what that "soft-bootstrap" would have
> > done.  But now Stefan said it's not that important to him.  So I guess
> > there's no need for a "soft-bootstrap" anymore, unless someone tells
> > otherwise.
> 
> What about me?
> 
> It generally takes 10-15 minutes for me to build Emacs in ideal
> conditions from "make bootstrap", with much of that time taken up by
> building temacs.  It takes longer when I am actually working on Emacs,
> because that typically happens while my machine is already under load.

Why do you bootstrap?

I almost never do that.



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

* Re: A more radical cleanup for make bootstrap?
  2022-09-20 11:22       ` Eli Zaretskii
@ 2022-09-20 11:55         ` Po Lu
  2022-09-20 12:05           ` Eli Zaretskii
  2022-09-20 16:14         ` Michael Welsh Duggan
  1 sibling, 1 reply; 37+ messages in thread
From: Po Lu @ 2022-09-20 11:55 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: gregory, larsi, monnier, stefan, emacs-devel

Eli Zaretskii <eliz@gnu.org> writes:

>> It generally takes 10-15 minutes for me to build Emacs in ideal
>> conditions from "make bootstrap", with much of that time taken up by
>> building temacs.  It takes longer when I am actually working on Emacs,
>> because that typically happens while my machine is already under load.

> Why do you bootstrap?

Because the incremental build fails and I cannot get it to work by
eyeballing what elc files to delete, usually due to an obscure
macro-expansion error in tramp.



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

* Re: A more radical cleanup for make bootstrap?
  2022-09-20 11:55         ` Po Lu
@ 2022-09-20 12:05           ` Eli Zaretskii
  2022-09-20 12:51             ` Po Lu
  2022-09-20 15:43             ` Robert Pluim
  0 siblings, 2 replies; 37+ messages in thread
From: Eli Zaretskii @ 2022-09-20 12:05 UTC (permalink / raw)
  To: Po Lu; +Cc: gregory, larsi, monnier, stefan, emacs-devel

> From: Po Lu <luangruo@yahoo.com>
> Cc: gregory@heytings.org,  larsi@gnus.org,  monnier@iro.umontreal.ca,
>   stefan@marxist.se,  emacs-devel@gnu.org
> Date: Tue, 20 Sep 2022 19:55:20 +0800
> 
> Eli Zaretskii <eliz@gnu.org> writes:
> 
> >> It generally takes 10-15 minutes for me to build Emacs in ideal
> >> conditions from "make bootstrap", with much of that time taken up by
> >> building temacs.  It takes longer when I am actually working on Emacs,
> >> because that typically happens while my machine is already under load.
> 
> > Why do you bootstrap?
> 
> Because the incremental build fails and I cannot get it to work by
> eyeballing what elc files to delete, usually due to an obscure
> macro-expansion error in tramp.

I usually have no problems identifying the offending *.elc files.  And
if that fails (which it does very rarely), then this never fails:

  $ find ./lisp -name "*.elc" -delete
  $ make



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

* Re: A more radical cleanup for make bootstrap?
  2022-09-20 12:05           ` Eli Zaretskii
@ 2022-09-20 12:51             ` Po Lu
  2022-09-20 12:55               ` Eli Zaretskii
                                 ` (3 more replies)
  2022-09-20 15:43             ` Robert Pluim
  1 sibling, 4 replies; 37+ messages in thread
From: Po Lu @ 2022-09-20 12:51 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: gregory, larsi, monnier, stefan, emacs-devel

Eli Zaretskii <eliz@gnu.org> writes:

> I usually have no problems identifying the offending *.elc files.

Same, but when the error is a macroexpansion error in Tramp (or
something related to loaddefs.el), I almost universally fail.

> And if that fails (which it does very rarely), then this never fails:
>
>   $ find ./lisp -name "*.elc" -delete
>   $ make

Right, why don't we make "make bootstrap" do that instead?



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

* Re: A more radical cleanup for make bootstrap?
  2022-09-20 12:51             ` Po Lu
@ 2022-09-20 12:55               ` Eli Zaretskii
  2022-09-20 13:08               ` Lars Ingebrigtsen
                                 ` (2 subsequent siblings)
  3 siblings, 0 replies; 37+ messages in thread
From: Eli Zaretskii @ 2022-09-20 12:55 UTC (permalink / raw)
  To: Po Lu; +Cc: gregory, larsi, monnier, stefan, emacs-devel

> From: Po Lu <luangruo@yahoo.com>
> Cc: gregory@heytings.org,  larsi@gnus.org,  monnier@iro.umontreal.ca,
>   stefan@marxist.se,  emacs-devel@gnu.org
> Date: Tue, 20 Sep 2022 20:51:20 +0800
> 
> Eli Zaretskii <eliz@gnu.org> writes:
> 
> > I usually have no problems identifying the offending *.elc files.
> 
> Same, but when the error is a macroexpansion error in Tramp (or
> something related to loaddefs.el), I almost universally fail.
> 
> > And if that fails (which it does very rarely), then this never fails:
> >
> >   $ find ./lisp -name "*.elc" -delete
> >   $ make
> 
> Right, why don't we make "make bootstrap" do that instead?

Because some (much rarer) changes need other generated files to be
removed as well.  So bootstrap-clean does the above, but it also does
other things, including forcing the rebuild of temacs, which is almost
never needed.  OTOH, if someone wants to test a fresh build, or build
a different configuration, or some other relatively rare jobs, they do
need to remove all those other artifacts.



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

* Re: A more radical cleanup for make bootstrap?
  2022-09-20 12:51             ` Po Lu
  2022-09-20 12:55               ` Eli Zaretskii
@ 2022-09-20 13:08               ` Lars Ingebrigtsen
  2022-09-20 13:27                 ` Po Lu
  2022-09-20 15:54               ` Eli Zaretskii
  2022-09-20 16:46               ` Michael Albinus
  3 siblings, 1 reply; 37+ messages in thread
From: Lars Ingebrigtsen @ 2022-09-20 13:08 UTC (permalink / raw)
  To: Po Lu; +Cc: Eli Zaretskii, gregory, monnier, stefan, emacs-devel

Po Lu <luangruo@yahoo.com> writes:

>>   $ find ./lisp -name "*.elc" -delete
>>   $ make
>
> Right, why don't we make "make bootstrap" do that instead?

If that is something that people need to do a lot, we should instead
introduce a new target like "clean-elc".




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

* Re: A more radical cleanup for make bootstrap?
  2022-09-20 13:08               ` Lars Ingebrigtsen
@ 2022-09-20 13:27                 ` Po Lu
  2022-09-20 13:31                   ` Lars Ingebrigtsen
  2022-09-20 14:00                   ` Eli Zaretskii
  0 siblings, 2 replies; 37+ messages in thread
From: Po Lu @ 2022-09-20 13:27 UTC (permalink / raw)
  To: Lars Ingebrigtsen; +Cc: Eli Zaretskii, gregory, monnier, stefan, emacs-devel

Lars Ingebrigtsen <larsi@gnus.org> writes:

> If that is something that people need to do a lot, we should instead
> introduce a new target like "clean-elc".

Didn't Gerd say deleting all the checked in *.elc files was what "make
bootstrap" was originally intended for, though?



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

* Re: A more radical cleanup for make bootstrap?
  2022-09-20 13:27                 ` Po Lu
@ 2022-09-20 13:31                   ` Lars Ingebrigtsen
  2022-09-20 14:00                   ` Eli Zaretskii
  1 sibling, 0 replies; 37+ messages in thread
From: Lars Ingebrigtsen @ 2022-09-20 13:31 UTC (permalink / raw)
  To: Po Lu; +Cc: Eli Zaretskii, gregory, monnier, stefan, emacs-devel

Po Lu <luangruo@yahoo.com> writes:

> Didn't Gerd say deleting all the checked in *.elc files was what "make
> bootstrap" was originally intended for, though?

It's developed over the years to do more, and we've been saying "have
you tried 'make bootstrap'?" to people for decades now for all kinds of
reasons.  We shouldn't change that, since that's what people will find
when googling.



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

* Re: A more radical cleanup for make bootstrap?
  2022-09-20 13:27                 ` Po Lu
  2022-09-20 13:31                   ` Lars Ingebrigtsen
@ 2022-09-20 14:00                   ` Eli Zaretskii
  1 sibling, 0 replies; 37+ messages in thread
From: Eli Zaretskii @ 2022-09-20 14:00 UTC (permalink / raw)
  To: Po Lu; +Cc: larsi, gregory, monnier, stefan, emacs-devel

> From: Po Lu <luangruo@yahoo.com>
> Cc: Eli Zaretskii <eliz@gnu.org>,  gregory@heytings.org,
>   monnier@iro.umontreal.ca,  stefan@marxist.se,  emacs-devel@gnu.org
> Date: Tue, 20 Sep 2022 21:27:18 +0800
> 
> Lars Ingebrigtsen <larsi@gnus.org> writes:
> 
> > If that is something that people need to do a lot, we should instead
> > introduce a new target like "clean-elc".
> 
> Didn't Gerd say deleting all the checked in *.elc files was what "make
> bootstrap" was originally intended for, though?

Originally, only the *.elc files needed to be removed, yes.



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

* Re: A more radical cleanup for make bootstrap?
  2022-09-20 12:05           ` Eli Zaretskii
  2022-09-20 12:51             ` Po Lu
@ 2022-09-20 15:43             ` Robert Pluim
  2022-09-20 15:55               ` Eli Zaretskii
  1 sibling, 1 reply; 37+ messages in thread
From: Robert Pluim @ 2022-09-20 15:43 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: Po Lu, gregory, larsi, monnier, stefan, emacs-devel

>>>>> On Tue, 20 Sep 2022 15:05:50 +0300, Eli Zaretskii <eliz@gnu.org> said:


    Eli> I usually have no problems identifying the offending *.elc files.  And
    Eli> if that fails (which it does very rarely), then this never fails:

    Eli>   $ find ./lisp -name "*.elc" -delete
    Eli>   $ make

I just did that because of a compile failure in ./lisp, it failed
again in ./lisp (but differently), but 'make bootstrap' worked. Go
figure.

I think itʼs going to be just 'make boostrap' for me from here on in.

Robert
-- 



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

* Re: A more radical cleanup for make bootstrap?
  2022-09-20 12:51             ` Po Lu
  2022-09-20 12:55               ` Eli Zaretskii
  2022-09-20 13:08               ` Lars Ingebrigtsen
@ 2022-09-20 15:54               ` Eli Zaretskii
  2022-09-20 16:46               ` Michael Albinus
  3 siblings, 0 replies; 37+ messages in thread
From: Eli Zaretskii @ 2022-09-20 15:54 UTC (permalink / raw)
  To: Po Lu; +Cc: gregory, larsi, monnier, stefan, emacs-devel

> From: Po Lu <luangruo@yahoo.com>
> Cc: gregory@heytings.org,  larsi@gnus.org,  monnier@iro.umontreal.ca,
>  stefan@marxist.se,  emacs-devel@gnu.org
> Date: Tue, 20 Sep 2022 20:51:20 +0800
> 
> Eli Zaretskii <eliz@gnu.org> writes:
> 
> > I usually have no problems identifying the offending *.elc files.
> 
> Same, but when the error is a macroexpansion error in Tramp (or
> something related to loaddefs.el), I almost universally fail.

When in doubt, delete all the tramp*.elc files.  If you think it's
loaddefs.el, copy ldefs-boot.el over it and delete loaddefs.elc.



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

* Re: A more radical cleanup for make bootstrap?
  2022-09-20 15:43             ` Robert Pluim
@ 2022-09-20 15:55               ` Eli Zaretskii
  0 siblings, 0 replies; 37+ messages in thread
From: Eli Zaretskii @ 2022-09-20 15:55 UTC (permalink / raw)
  To: Robert Pluim; +Cc: luangruo, gregory, larsi, monnier, stefan, emacs-devel

> From: Robert Pluim <rpluim@gmail.com>
> Cc: Po Lu <luangruo@yahoo.com>,  gregory@heytings.org,  larsi@gnus.org,
>   monnier@iro.umontreal.ca,  stefan@marxist.se,  emacs-devel@gnu.org
> Date: Tue, 20 Sep 2022 17:43:20 +0200
> 
> >>>>> On Tue, 20 Sep 2022 15:05:50 +0300, Eli Zaretskii <eliz@gnu.org> said:
> 
> 
>     Eli> I usually have no problems identifying the offending *.elc files.  And
>     Eli> if that fails (which it does very rarely), then this never fails:
> 
>     Eli>   $ find ./lisp -name "*.elc" -delete
>     Eli>   $ make
> 
> I just did that because of a compile failure in ./lisp, it failed
> again in ./lisp (but differently)

When that happens, delete temacs and bootstrap-emacs as well.



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

* Re: A more radical cleanup for make bootstrap?
  2022-09-20 11:22       ` Eli Zaretskii
  2022-09-20 11:55         ` Po Lu
@ 2022-09-20 16:14         ` Michael Welsh Duggan
  2022-09-20 16:21           ` Eli Zaretskii
  1 sibling, 1 reply; 37+ messages in thread
From: Michael Welsh Duggan @ 2022-09-20 16:14 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: emacs-devel

Eli Zaretskii <eliz@gnu.org> writes:

>> From: Po Lu <luangruo@yahoo.com>
>> Cc: Eli Zaretskii <eliz@gnu.org>,  larsi@gnus.org,
>>   monnier@iro.umontreal.ca,  stefan@marxist.se,  emacs-devel@gnu.org
>> Date: Tue, 20 Sep 2022 16:20:06 +0800
>> 
>> Gregory Heytings <gregory@heytings.org> writes:
>> 
>> > I don't know exactly.  Stefan M and Po Lu both asked for a "less
>> > radical" bootstrap, which is what that "soft-bootstrap" would have
>> > done.  But now Stefan said it's not that important to him.  So I guess
>> > there's no need for a "soft-bootstrap" anymore, unless someone tells
>> > otherwise.
>> 
>> What about me?
>> 
>> It generally takes 10-15 minutes for me to build Emacs in ideal
>> conditions from "make bootstrap", with much of that time taken up by
>> building temacs.  It takes longer when I am actually working on Emacs,
>> because that typically happens while my machine is already under load.
>
> Why do you bootstrap?
>
> I almost never do that.

Personally, I almost always bootstrap.  As I am not actively doing Emacs
development, I am building once every few weeks in order to pick up new
features and bug fixes from the master branch.  There have been many
instances in the past where not bootstrapping causes strange errors when
running Emacs.  It doesn't happen frequently, but it does happen.  It is
worth an extra five minutes (?) or so to me to bootstrap always so I
don't have to deal with noticing that something isn't working correctly,
trying to track down the failure, and then later find out from reading
this list or by checking bug reports that bootstrapping fixes the issue.

-- 
Michael Welsh Duggan
(md5i@md5i.com)



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

* Re: A more radical cleanup for make bootstrap?
  2022-09-20 16:14         ` Michael Welsh Duggan
@ 2022-09-20 16:21           ` Eli Zaretskii
  0 siblings, 0 replies; 37+ messages in thread
From: Eli Zaretskii @ 2022-09-20 16:21 UTC (permalink / raw)
  To: Michael Welsh Duggan; +Cc: emacs-devel

> From: Michael Welsh Duggan <mwd@md5i.com>
> Cc: emacs-devel@gnu.org
> Date: Tue, 20 Sep 2022 12:14:32 -0400
> 
> Eli Zaretskii <eliz@gnu.org> writes:
> 
> >> What about me?
> >> 
> >> It generally takes 10-15 minutes for me to build Emacs in ideal
> >> conditions from "make bootstrap", with much of that time taken up by
> >> building temacs.  It takes longer when I am actually working on Emacs,
> >> because that typically happens while my machine is already under load.
> >
> > Why do you bootstrap?
> >
> > I almost never do that.
> 
> Personally, I almost always bootstrap.

That's fine, but my question was specifically to Po Lu (and people who
work on Emacs like he does), who builds Emacs much more frequently
than you do.  Your case is different, and the existing"make bootstrap"
covers it well enough, AFAIU.



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

* Re: A more radical cleanup for make bootstrap?
  2022-09-20 12:51             ` Po Lu
                                 ` (2 preceding siblings ...)
  2022-09-20 15:54               ` Eli Zaretskii
@ 2022-09-20 16:46               ` Michael Albinus
  2022-09-21  2:16                 ` Po Lu
  3 siblings, 1 reply; 37+ messages in thread
From: Michael Albinus @ 2022-09-20 16:46 UTC (permalink / raw)
  To: Po Lu; +Cc: Eli Zaretskii, gregory, larsi, monnier, stefan, emacs-devel

Po Lu <luangruo@yahoo.com> writes:

Hi,

>> I usually have no problems identifying the offending *.elc files.
>
> Same, but when the error is a macroexpansion error in Tramp (or
> something related to loaddefs.el), I almost universally fail.

Deleting lisp/net/tramp-loaddefs.el* might help sometimes.

Best regards, Michael.



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

* Re: A more radical cleanup for make bootstrap?
  2022-09-20 16:46               ` Michael Albinus
@ 2022-09-21  2:16                 ` Po Lu
  0 siblings, 0 replies; 37+ messages in thread
From: Po Lu @ 2022-09-21  2:16 UTC (permalink / raw)
  To: Michael Albinus
  Cc: Eli Zaretskii, gregory, larsi, monnier, stefan, emacs-devel

Michael Albinus <michael.albinus@gmx.de> writes:

> Deleting lisp/net/tramp-loaddefs.el* might help sometimes.

Thanks, but I already try that and it typically does not work.



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

end of thread, other threads:[~2022-09-21  2:16 UTC | newest]

Thread overview: 37+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-09-19 19:46 A more radical cleanup for make bootstrap? Gregory Heytings
2022-09-19 19:48 ` Lars Ingebrigtsen
2022-09-19 20:26 ` Alan Mackenzie
2022-09-19 20:29   ` Lars Ingebrigtsen
2022-09-19 20:49     ` Alan Mackenzie
2022-09-19 20:51       ` Lars Ingebrigtsen
2022-09-19 21:01         ` Alan Mackenzie
2022-09-20  2:35       ` Eli Zaretskii
2022-09-20  2:42         ` Po Lu
2022-09-20 11:01           ` Eli Zaretskii
2022-09-20 10:01         ` Alan Mackenzie
2022-09-19 21:45   ` Gregory Heytings
2022-09-20  6:38     ` Alfred M. Szmidt
2022-09-20  8:22       ` Gregory Heytings
2022-09-19 20:53 ` Stefan Monnier
2022-09-20  2:29 ` Eli Zaretskii
2022-09-20  7:58   ` Gregory Heytings
2022-09-20  8:20     ` Po Lu
2022-09-20  8:25       ` Gregory Heytings
2022-09-20  8:46         ` Po Lu
2022-09-20  9:01           ` Gregory Heytings
2022-09-20 11:22       ` Eli Zaretskii
2022-09-20 11:55         ` Po Lu
2022-09-20 12:05           ` Eli Zaretskii
2022-09-20 12:51             ` Po Lu
2022-09-20 12:55               ` Eli Zaretskii
2022-09-20 13:08               ` Lars Ingebrigtsen
2022-09-20 13:27                 ` Po Lu
2022-09-20 13:31                   ` Lars Ingebrigtsen
2022-09-20 14:00                   ` Eli Zaretskii
2022-09-20 15:54               ` Eli Zaretskii
2022-09-20 16:46               ` Michael Albinus
2022-09-21  2:16                 ` Po Lu
2022-09-20 15:43             ` Robert Pluim
2022-09-20 15:55               ` Eli Zaretskii
2022-09-20 16:14         ` Michael Welsh Duggan
2022-09-20 16:21           ` Eli Zaretskii

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).