summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp/comp.el
diff options
context:
space:
mode:
authorAndrea Corallo <akrl@sdf.org>2020-08-15 11:29:06 +0200
committerAndrea Corallo <akrl@sdf.org>2020-08-17 18:04:22 +0200
commit377ffdb528e75f7e02be5f0305cdf326da0dc451 (patch)
tree1d723c6fab92ed734e01c4581d56464198aa1f84 /lisp/emacs-lisp/comp.el
parentdf774c4947c19478769587d587d07014aac79548 (diff)
downloademacs-377ffdb528e75f7e02be5f0305cdf326da0dc451.tar.gz
emacs-377ffdb528e75f7e02be5f0305cdf326da0dc451.tar.bz2
emacs-377ffdb528e75f7e02be5f0305cdf326da0dc451.zip
* Do not fail if more then one level of directories has to be created
* lisp/emacs-lisp/comp.el (native-compile-async): Call make-directory if necessary.
Diffstat (limited to 'lisp/emacs-lisp/comp.el')
-rw-r--r--lisp/emacs-lisp/comp.el6
1 files changed, 3 insertions, 3 deletions
diff --git a/lisp/emacs-lisp/comp.el b/lisp/emacs-lisp/comp.el
index 99bf30a4eee..802466550dc 100644
--- a/lisp/emacs-lisp/comp.el
+++ b/lisp/emacs-lisp/comp.el
@@ -2748,9 +2748,9 @@ queued with LOAD %"
comp-deferred-compilation-black-list)))
(let* ((out-filename (comp-el-to-eln-filename file))
(out-dir (file-name-directory out-filename)))
- (if (or (file-writable-p out-filename)
- (and (not (file-exists-p out-dir))
- (file-writable-p (substring out-dir 0 -1))))
+ (unless (file-exists-p out-dir)
+ (make-directory out-dir t))
+ (if (file-writable-p out-filename)
(setf comp-files-queue
(append comp-files-queue `((,file . ,load))))
(display-warning 'comp