Subject: bug#74382: `compile-first` Make rule is no longer using `load-prefer-newer`

From: Konstantin Kharlamov <[email-masked]>
Date: Mon, 18 Nov 2024 13:05:54 +0300

On Mon, 2024-11-18 at 05:06 +0100, Gerd Möllmann wrote:
> Konstantin Kharlamov <[email-masked]> writes:
> 
> > Even Gerd in this discussion forgot about this peculiarity — and
> > Gerd unlike me is a regular Emacs developer.
> 
> Even worse, even worse: He wrote that stuff! But I think I'll excuse
> him
> because that was 25 years ago, and he took a 20 year break from
> Emacs,
> after stepping down, and he's old of course :-).
> 
> Seriously, maybe knowing a bit of history helps understand the
> current
> situation wrt .elc files? One wouldn't believe it nowadays, but they
> were originally in version control, i.e. RCS, and later CVS. I didn't
> want that in the public CVS repo we set up for Emacs 21, so I added
> the
> ability to bootstrap and removed the .elc files from CVS.
> COMPILE_FIRST
> and so on are part of the bootstrapping support.

Btw, thank you, this bit of history indeed is interesting. During whole
discussion I had a question on the back of my mind: how this
"distribute pre-built elc in tarballs" idea initially came to be. I
mean, it's kind of nice from POV of saving a bit of energy around the
world on CI machines, but I don't see much beyond that. Building elc
files is not *that* bad for elc distribution to be strictly necessary.

Now that you told this, I realize it's just a solution to a problem
from 25 years old back, from times when that actually was a problem.