On 2024-03-02 16:56, Liliana Marie Prikler wrote: > Newer (development) builds of Emacs 30 mark a number of functions related to > native compilation as ‘internal’. Since we rely on such functions and there > does not appear to be a high-level replacement at the moment, let's work > around this case. > > * guix/build/emacs-utils.scm (emacs-compile-directory): Require comp early > and check if ‘comp-write-bytecode-file’ is available. > > Fixes: Upstream renamed comp-write-bytecode-file > --- > guix/build/emacs-utils.scm | 11 +++++++++-- > 1 file changed, 9 insertions(+), 2 deletions(-) > > diff --git a/guix/build/emacs-utils.scm b/guix/build/emacs-utils.scm > index eca42bf305..aeb364133a 100644 > --- a/guix/build/emacs-utils.scm > +++ b/guix/build/emacs-utils.scm > @@ -136,7 +136,14 @@ (define* (emacs-compile-directory dir) > (emacs-batch-eval > `(let ((byte-compile-debug t) ; for proper exit status > (byte+native-compile (native-comp-available-p)) > - (files (directory-files-recursively ,dir "\\.el$"))) > + (files (directory-files-recursively ,dir "\\.el$")) > + (write-bytecode > + (and (native-comp-available-p) > + (progn > + (require 'comp) > + (if (fboundp 'comp-write-bytecode-file) > + 'comp-write-bytecode-file > + 'comp--write-bytecode-file))))) > (mapc > (lambda (file) > (let (byte-to-native-output-buffer-file > @@ -152,7 +159,7 @@ (define* (emacs-compile-directory dir) > (byte-compile-file file)) > ;; After native compilation, write the bytecode file. > (unless (null byte-to-native-output-buffer-file) > - (comp-write-bytecode-file nil)))) > + (funcall write-bytecode nil)))) > files)) > #:dynamic? #t)) > > > base-commit: 3d4fc910f73220f47e5f2459853333a7c83c5d1d Hi Liliana! Looks reasonable to me. -- Best regards, Andrew Tropin