build: emacs-utils: Add 'emacs-byte-compile-directory'.
* guix/build/emacs-utils.scm (emacs-byte-compile-directory): New procedure.master
parent
7f74a931dd
commit
1d44b4e544
|
@ -22,6 +22,7 @@
|
|||
emacs-batch-eval
|
||||
emacs-batch-edit-file
|
||||
emacs-generate-autoloads
|
||||
emacs-byte-compile-directory
|
||||
emacs-substitute-sexps
|
||||
emacs-substitute-variables))
|
||||
|
||||
|
@ -57,6 +58,16 @@
|
|||
(update-directory-autoloads ,directory))))
|
||||
(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
|
||||
(syntax-rules ()
|
||||
"Substitute the S-expression immediately following the first occurrence of
|
||||
|
|
Reference in New Issue