bug-guix
[Top][All Lists]
Advanced

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

bug#64586: Emacs-Packages should contain native-compiled files


From: Mekeor Melire
Subject: bug#64586: Emacs-Packages should contain native-compiled files
Date: Wed, 12 Jul 2023 18:19:12 +0000

Emacs can interpret/load at least four kinds of source files. Listed with increasing performance:

- Emacs-Lisp source code: *.el
- Byte-compiled Emacs-Lisp: *.elc
- Native-compiled Emacs-Lisp: *.eln
- Shared-object files: *.so

Guix installs el- and elc-files into ~/.guix-profile/share/emacs/site-lisp which is added to the environment-variable EMACSLOADPATH. eln-files are installed into ~/.guix-profile/lib/emacs/native-site-lisp which is added to EMACSNATIVELOADPATH. For Emacs-related so-files, Guix currently does not have any convention; see <https://issues.guix.gnu.org/63987>.

If I understand correctly, it is only the following Emacs-packages that ship 
with eln-files when installed with Guix, because they specify `#:emacs ,emacs` 
in the package declaration, so that native-compilation is available during 
build-time which is used if it's available: 
https://git.savannah.gnu.org/cgit/guix.git/tree/guix/build/emacs-utils.scm?h=6d0b3684628fe24555055d4a97d703a1b0b59660#n144

   emacs-auctex
   emacs-citeproc-el
   emacs-zig-mode
   emacs-flycheck-grammalecte
   emacs-sudo-edit
   emacs-elquery
   emacs-cov
   emacs-pos-tip
   emacs-posframe
   emacs-xelb
   emacs-exwm
   emacs-xelb-no-x-toolkit
   emacs-exwm-no-x-toolkit
   emacs-exwm-x
   emacs-jabber
   emacs-ement
   emacs-circe
   emacs-esxml
   emacs-nov-el
   emacs-wordgen
   emacs-picpocket
   emacs-lsp-mode
   emacs-jsdoc
   emacs-tramp
   emacs-elpher
   emacs-telega

So, if my understanding is correct, and assuming that we want to ship 
eln-files, Emacs-packages should all be built with a package of Emacs that 
supports native-compilation.





reply via email to

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