emacs-devel
[Top][All Lists]
Advanced

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

Native compilation: the bird-eye view


From: Eli Zaretskii
Subject: Native compilation: the bird-eye view
Date: Sat, 16 May 2020 14:51:29 +0300

Maybe this was already discussed (in which case please point me to
that discussion), but if not: how will this feature be integrated into
the Emacs distribution and usage patterns?

First, we cannot bundle the *.eln files with the source tarball of the
Emacs release, because these files are too specific to the
architecture (and perhaps also to the versions of the OS and the libc)
of the system where they were produced.  Right?  If so, they will have
to be generated on the end-user machines, or perhaps by whoever
prepares the Emacs binary distributions -- assuming that the binary
distributions are sufficiently compatible to allow that,
notwithstanding the differences between the system where the *.eln
files were generated and the system where they will be installed and
used.  (I don't know what is the granularity of the binary distros wrt
machine architecture and OS versions -- will that allow to be sure the
*.eln files are compatible with the target system?)

The next question is whether we want the *.eln files to exist up front
for all the Lisp files on the end-user system, or we want them to be
generated in JIT-like manner, whenever the corresponding Lisp library
is loaded on demand?  The answer to this question might then influence
the place where the *.eln files are kept -- the JIT alternative would
suggest to have some kind of cache directory where we put the compiled
files, similar to what Guile does.

And finally, what about the *.elc files and their relation to the
corresponding *.eln files?  Do we always load a .eln file if
available, do we let the user specify their preferences, something
else?

Comments are welcome.



reply via email to

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