build: emacs-utils: Add 'emacs-byte-compile-directory'.
* guix/build/emacs-utils.scm (emacs-byte-compile-directory): New procedure.
This commit is contained in:
parent
7f74a931dd
commit
1d44b4e544
|
@ -22,6 +22,7 @@
|
||||||
emacs-batch-eval
|
emacs-batch-eval
|
||||||
emacs-batch-edit-file
|
emacs-batch-edit-file
|
||||||
emacs-generate-autoloads
|
emacs-generate-autoloads
|
||||||
|
emacs-byte-compile-directory
|
||||||
emacs-substitute-sexps
|
emacs-substitute-sexps
|
||||||
emacs-substitute-variables))
|
emacs-substitute-variables))
|
||||||
|
|
||||||
|
@ -57,6 +58,16 @@
|
||||||
(update-directory-autoloads ,directory))))
|
(update-directory-autoloads ,directory))))
|
||||||
(emacs-batch-eval expr)))
|
(emacs-batch-eval expr)))
|
||||||
|
|
||||||
|
(define* (emacs-byte-compile-directory dir #:optional (dependency-dirs '()))
|
||||||
|
"Byte compile all files in DIR and its sub-directories. Before compiling
|
||||||
|
the files, add DIR and all directories in DEPENDENCY-DIRS to 'load-path'."
|
||||||
|
(let ((expr `(progn
|
||||||
|
(add-to-list 'load-path ,dir)
|
||||||
|
(when ',dependency-dirs
|
||||||
|
(setq load-path (append ',dependency-dirs load-path)))
|
||||||
|
(byte-recompile-directory (file-name-as-directory ,dir) 0))))
|
||||||
|
(emacs-batch-eval expr)))
|
||||||
|
|
||||||
(define-syntax emacs-substitute-sexps
|
(define-syntax emacs-substitute-sexps
|
||||||
(syntax-rules ()
|
(syntax-rules ()
|
||||||
"Substitute the S-expression immediately following the first occurrence of
|
"Substitute the S-expression immediately following the first occurrence of
|
||||||
|
|
Loading…
Reference in New Issue