[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Suppressing native compilation (short and long term)
From: |
Eli Zaretskii |
Subject: |
Re: Suppressing native compilation (short and long term) |
Date: |
Fri, 30 Sep 2022 18:47:29 +0300 |
> From: David Bremner <david@tethera.net>
> Cc: emacs-devel@gnu.org, akrl@sdf.org, rlb@defaultvalue.org
> Date: Fri, 30 Sep 2022 11:33:29 -0300
>
> Eli Zaretskii <eliz@gnu.org> writes:
>
> >
> > This is what I'm asking about: what exactly triggers the compilation?
> > Just installing a package shouldn't do that, only loading it into
> > Emacs should.
>
> When I talk about "package installation" I mean installing a Debian
> binary package. This is a more general notion than a package as defined
> by package.el
>
> We have one copy of the .elc files for all users. Because of this, and
> the cleanup issue I mentioned above, the elc files need to generated
> either at (Debian) package build time, or at (Debian) package
> installation time.
So I understand that this issue is caused by the Debian installation
process? If so, the installation process should make sure the *.eln
files are written only where you want them to be written.
> > The other part of what I asked is that if for some reason installation
> > does need to compile files (something that I still need to understand
> > why it happens), there's nothing that hard-codes HOME in the directory
> > list used for that. You can set native-comp-eln-load-path to anything
> > you want, and only the directories in that list will be used.
>
> Does that restrict where eln files are written? Or just where emacs
> tries to read?
Both.
> > Emacs doesn't require a writable HOME, it requires a writable
> > directory to store *.eln files. It doesn't have to be HOME.
>
> Fair enough. I tried setting native-compile-target-directory, but that
> seemed to be ignored by the trampoline stuff. Maybe both variables need
> to be set.
That's the wrong variable. Please use native-comp-eln-load-path.
> > And once again, I still don't understand why *.eln files are produced
> > at installation time in the first place.
>
> The short version is that we need to run emacs at Debian package build
> and install time. Byte-compilation is one reason. Running tests at build
> time is another.
OK, in that case you get to arrange for the environment which will not
produce files where you don't want them.
- Re: Suppressing native compilation (short and long term), (continued)
Re: Suppressing native compilation (short and long term), David Bremner, 2022/09/30
Re: Suppressing native compilation (short and long term), David Bremner, 2022/09/30
Re: Suppressing native compilation (short and long term),
Eli Zaretskii <=
Re: Suppressing native compilation (short and long term), Stefan Monnier, 2022/09/30