aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/emacs.scm
diff options
context:
space:
mode:
authorLiliana Marie Prikler <liliana.prikler@gmail.com>2024-02-24 07:18:52 +0100
committerLiliana Marie Prikler <liliana.prikler@gmail.com>2024-02-24 08:08:17 +0100
commit35fc3027f372eddbd21a2c6b5a591453591a6825 (patch)
treea295e4da5bd631f42d491c1d547fb7b25eb2259a /gnu/packages/emacs.scm
parente2b04973fdcf835d6e6bb9dab1375d7653108f76 (diff)
downloadguix-35fc3027f372eddbd21a2c6b5a591453591a6825.tar
guix-35fc3027f372eddbd21a2c6b5a591453591a6825.tar.gz
gnu: emacs: Check integrity of native-compiled files.
In the previous commit, we've added a patch that potentially messes with how built-in (especially preloaded) Lisp libraries are loaded. Thus, we might want to assert that these files still load fine, as reported when querying the builtin documentation of functions provided by them. * gnu/packages/aux-files/emacs/comp-integrity.el: New file. * gnu/Makefile.am (dist_noinst_DATA): Register it here. * gnu/packages/emacs.scm (emacs-no-x)[#:phases]: Add ‘validate-comp-integrity’.
Diffstat (limited to 'gnu/packages/emacs.scm')
-rw-r--r--gnu/packages/emacs.scm13
1 files changed, 12 insertions, 1 deletions
diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index 182de0204d..f0200ad27c 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -380,7 +380,18 @@ editor (console only)")
"-B" #$(this-package-input "libgccjit") "/lib/gcc/"))))))
(add-after 'build 'build-trampolines
(lambda* (#:key make-flags #:allow-other-keys)
- (apply invoke "make" "trampolines" make-flags)))))))
+ (apply invoke "make" "trampolines" make-flags)))
+ (add-after 'validate-runpath 'validate-comp-integrity
+ (lambda* (#:key outputs #:allow-other-keys)
+ (if #$(%current-target-system)
+ (display "Cannot validate native-comp on cross builds.\n")
+ (invoke
+ (string-append (assoc-ref outputs "out") "/bin/emacs")
+ "--batch"
+ "--load"
+ #$(local-file
+ (search-auxiliary-file "emacs/comp-integrity.el"))
+ "-f" "ert-run-tests-batch-and-exit"))))))))
(inputs
(modify-inputs (package-inputs emacs-minimal)
(prepend gnutls