Allow ignoring files during byte compilation
* bytecomp.el (byte-compile-ignore-files): Add new variable. (byte-recompile-directory): Respect 'byte-compile-ignore-files'.
This commit is contained in:
parent
5fe97dd9dd
commit
8638aace3f
1 changed files with 14 additions and 2 deletions
|
@ -1876,6 +1876,9 @@ Files in subdirectories of DIRECTORY are processed also."
|
|||
(interactive "DByte force recompile (directory): ")
|
||||
(byte-recompile-directory directory nil t))
|
||||
|
||||
(defvar byte-compile-ignore-files nil
|
||||
"List of regexps for files to ignore during byte compilation.")
|
||||
|
||||
;;;###autoload
|
||||
(defun byte-recompile-directory (directory &optional arg force follow-symlinks)
|
||||
"Recompile every `.el' file in DIRECTORY that needs recompilation.
|
||||
|
@ -1932,14 +1935,23 @@ also be compiled."
|
|||
;; This file is a subdirectory. Handle them differently.
|
||||
(or (null arg) (eq 0 arg)
|
||||
(y-or-n-p (concat "Check " source "? ")))
|
||||
(setq directories (nconc directories (list source))))
|
||||
(setq directories (nconc directories (list source)))
|
||||
;; Directory is requested to be ignored
|
||||
(string-match-p
|
||||
(regexp-opt byte-compile-ignore-files)
|
||||
source)
|
||||
(setq directories (nconc directories (list source))))
|
||||
;; It is an ordinary file. Decide whether to compile it.
|
||||
(if (and (string-match emacs-lisp-file-regexp source)
|
||||
;; The next 2 tests avoid compiling lock files
|
||||
(file-readable-p source)
|
||||
(not (string-match "\\`\\.#" file))
|
||||
(not (auto-save-file-name-p source))
|
||||
(not (member source (dir-locals--all-files directory))))
|
||||
(not (member source (dir-locals--all-files directory)))
|
||||
;; File is requested to be ignored
|
||||
(string-match-p
|
||||
(regexp-opt byte-compile-ignore-files)
|
||||
source))
|
||||
(progn (cl-incf
|
||||
(pcase (byte-recompile-file source force arg)
|
||||
('no-byte-compile skip-count)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue