emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] elpa-admin 42c5112 084/357: * GNUmakefile (%.elc): Don't depend o


From: Stefan Monnier
Subject: [elpa] elpa-admin 42c5112 084/357: * GNUmakefile (%.elc): Don't depend on $(autoloads) since that causes
Date: Thu, 10 Dec 2020 18:06:20 -0500 (EST)

branch: elpa-admin
commit 42c5112529ae931e819663bc235309eee5276eca
Author: Stefan Monnier <monnier@iro.umontreal.ca>
Commit: Stefan Monnier <monnier@iro.umontreal.ca>

    * GNUmakefile (%.elc): Don't depend on $(autoloads) since that causes
    constant recompilation of everything.
    (elcs): New target.
    (all-in-place): Run elcs in a submake, after updating autoloads.
---
 GNUmakefile | 11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)

diff --git a/GNUmakefile b/GNUmakefile
index 5d45065..7f2061d 100644
--- a/GNUmakefile
+++ b/GNUmakefile
@@ -118,13 +118,16 @@ nbc_els := $(foreach el, $(extra_els), \
 elcs := $(call SET-diff, $(naive_elcs), $(patsubst %.el, %.elc, $(nbc_els)))
 
 # '(dolist (al (quote ($(patsubst %, "%", $(autoloads))))) (load 
(expand-file-name al) nil t))'
-%.elc: %.el $(autoloads)
+%.elc: %.el
        @echo 'EMACS -f batch-byte-compile $<'
        @$(EMACS) --batch \
            --eval "(setq package-directory-list '(\"$(abspath packages)\"))" \
            --eval '(package-initialize)' \
            -L $(dir $@) -f batch-byte-compile $<
 
+.PHONY: elcs
+elcs: $(elcs)
+
 # Remove .elc files that don't have a corresponding .el file any more.
 extra_elcs := $(call SET-diff, $(current_elcs), $(naive_elcs))
 .PHONY: $(extra_elcs)
@@ -145,5 +148,7 @@ $(extra_elcs):; rm $@
 #          --eval '(setq d (with-current-buffer b (package-buffer-info)))' \
 #          --eval '(package-generate-description-file d "$(dir $@)")'
 
-
-all-in-place: $(extra_elcs) $(autoloads) $(elcs) # $(single_pkgs)
+.PHONY: all-in-place
+all-in-place: $(extra_elcs) $(autoloads) # $(single_pkgs)
+       # Do them in a sub-make, so that autoloads are done first.
+       $(MAKE) elcs



reply via email to

[Prev in Thread] Current Thread [Next in Thread]