Subject: Re: bug#46256: [feature/native-comp] AOT eln files ignored if run from build tree

From: Pip Cet <[email-masked]>
Date: Fri, 5 Mar 2021 15:54:07 +0000

On Fri, Mar 5, 2021 at 3:22 PM Eli Zaretskii <[email-masked]> wrote:
> > From: Pip Cet <[email-masked]>
> > Date: Fri, 5 Mar 2021 15:18:12 +0000
> > Cc: Andrea Corallo <[email-masked]>, [email-masked]
> >
> > > Then perhaps we could invoke Emacs only in order to detect when the
> > > ABI has changed.
> >
> > IIUC, the ABI only changes when DEFUNs do, and then we regenerate most
> > of the Emacs binaries anyway, so we could make abi-hash depend on
> > gl-stamp/globals.h?
>
> Why should we have the knowledge about what determines the ABI hash in
> more than one place?

At least in my case, I end up building several emacs binaries in a
tree, and then I have to ls -l native-lisp to find out which one is
current, and that's annoying. But Andrea pointed out, entirely
correctly, that I missed the discussion and a consensus has apparently
been reached to do it this way.

I do think it's weird to have to run Emacs to find out which
directories the Emacs binary looks at, but maybe that's just me.

> > > Because when that happens, we need to regenerate all
> > > the preloaded *.eln files anyway, so there's no need to test
> > > individual files.  Right?
> >
> > But do we want to keep the old files around in case the ABI changes
> > back? I don't think we do.
>
> That's a separate issue.

Indeed.

> It depends on whether the build included non-preloaded files.

I'm afraid I don't follow.

Pip