mirror of
git://git.sv.gnu.org/emacs.git
synced 2026-06-14 12:31:25 +00:00
Fix project-recompile directory
* lisp/progmodes/project.el: Remove stale compilation-read-command declarations. Autoload recompile for Emacs versions prior to 31, to allow calling project-recompile before project-compile (bug#74631). (project-recompile): Set compilation-directory to avoid recompile using a value unrelated to the current project (bug#68570).
This commit is contained in:
parent
d1079cced2
commit
a525a7f2af
1 changed files with 10 additions and 8 deletions
|
|
@ -1720,10 +1720,6 @@ If you exit the `query-replace', you can later continue the
|
|||
'default)
|
||||
(fileloop-continue))
|
||||
|
||||
(defvar compilation-read-command)
|
||||
(declare-function compilation-read-command "compile")
|
||||
(declare-function recompile "compile")
|
||||
|
||||
(defun project-prefixed-buffer-name (mode)
|
||||
(concat "*"
|
||||
(if-let* ((proj (project-current nil)))
|
||||
|
|
@ -1772,12 +1768,18 @@ If non-nil, it overrides `compilation-buffer-name-function' for
|
|||
(with-current-buffer orig-current-buffer
|
||||
(setq-local compile-command orig-compile-command))))))
|
||||
|
||||
;; Autoloaded since Emacs 31.
|
||||
(autoload 'recompile "compile" nil t)
|
||||
|
||||
;;;###autoload
|
||||
(defun project-recompile (&optional edit-command)
|
||||
"Run `recompile' in the project root with an appropriate buffer."
|
||||
(declare (interactive-only recompile))
|
||||
(interactive "P")
|
||||
(let ((default-directory (project-root (project-current t)))
|
||||
(defvar compilation-directory)
|
||||
(let* ((default-directory (project-root (project-current t)))
|
||||
;; The former overrides the latter in `recompile'.
|
||||
(compilation-directory default-directory)
|
||||
(compilation-buffer-name-function
|
||||
(or project-compilation-buffer-name-function
|
||||
compilation-buffer-name-function)))
|
||||
|
|
|
|||
Loading…
Reference in a new issue