emacs-devel
[Top][All Lists]
Advanced

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

Re: Speeding up the bootstrap build - a quick hack.


From: Alan Mackenzie
Subject: Re: Speeding up the bootstrap build - a quick hack.
Date: Tue, 18 Jan 2022 20:27:06 +0000

Hello, Stefan.

On Tue, Jan 18, 2022 at 08:14:06 -0500, Stefan Monnier wrote:
> >> > -.PHONY: compile-first compile-main compile compile-always
> >> > +.PHONY: compile-zeroth compile-first compile-main compile compile-always

> >> > -compile-first: $(COMPILE_FIRST)
> >> > +compile-zeroth: $(COMPILE_ZEROTH)
> >> > +compile-first: compile-zeroth $(COMPILE_FIRST)

> >> Is this necessary, or is it just helpful to debug the Makefile?

> > I'm not sure.  I'm a little confused, still.

It seems to be necessary.  At any rate, changing the mix slightly gave
rise to unwanted results.  In particular...

> At least I can't see why `compile-first` should need to depend on
> `compile-zeroth` since the

>     %.elc: %.el $(COMPILE_ZEROTH)

If I change that line to

    %.elc: %.el compile-zeroth

, then Emacs builds, but redundantly ELC's all the .el files which are
preloaded, taking 15 seconds longer to do so.  I don't understand why
this happens.

Even more notably, if I eliminate compile-zeroth, putting in instead
$(COMPILE_ZEROTH) everywhere needed, then make creates and deletes the
..elc0 files four times, and also redundantly runs ELC on the preloaded
..el files, despite them already being .eln's.  This run took 2½ minutes
longer than expected, too.  I don't understand why all that happened,
either.

> rule should already give the same result.
> So I'd suggest you drop this part of the patch and see if that causes
> any kind of trouble.

As above, it caused all sorts of trouble.

> > +ifeq ($(HAVE_NATIVE_COMP),yes)
> > +COMPILE_ZEROTH = $(COMPILE_FIRST:.elc=.elc0)
> > +endif

> I think we can drop the `ifeq` test here.

I'll need to check the file will work with native compilation disabled.

> As for eyeballing: LGTM, thank you.

Thanks!

>         Stefan

-- 
Alan Mackenzie (Nuremberg, Germany).



reply via email to

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