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

From: Eli Zaretskii <[email-masked]>
Date: Sun, 17 Nov 2024 19:09:45 +0200

> From: Konstantin Kharlamov <[email-masked]>
> Cc: [email-masked], [email-masked], [email-masked]
> Date: Sun, 17 Nov 2024 19:46:25 +0300
> 
> On Sun, 2024-11-17 at 18:29 +0200, Eli Zaretskii wrote:
> > We already have a special target for that: maintainer-clean.  There's
> > no need to make such confusing differences between what "make clean"
> > does in a tarball and in Git.  That's a standard GNU target, so it
> > should do what the GNU Coding Standards say, and do it consistently.
> 
> GNU Coding Standard section for `make clean` says, quoting:
> 
> > Delete all files […] that are normally created by building the
> program. However, don’t delete the files that record the configuration.
> Also preserve files that could be made by building, but normally aren’t
> because the distribution comes with them.
> 
> The "git distribution" doesn't come with .elc files, hence .elc files
> should be removed by `make clean` if run in the git repository. That's
> what the standard says.

There's no "Git distribution", so this doesn't apply.

Once again, it is more important to me that "make clean" does the same
in every case than anything else.

> This "don't clean elc files during `make clean`" hurts Emacs devs and
> contributors, while gaining nothing in return.

I disagree.

> > You will have to get used to this curiosity of the Emacs build
> > system,
> > sorry.  The main audience of the build stuff in Git is Emacs
> > developers, so everyone else have to adapt.
> 
> I don't think Emacs developers are using release tarballs, so this
> "curiosity" isn't helping them.

The curiosity is for those who build from tarballs, whoever they are.