------------------------------------------------------------ revno: 413 revision-id: monn...@iro.umontreal.ca-20130627160544-jre0kacjxsfvwspx parent: monn...@iro.umontreal.ca-20130627042216-d9duf57nw3gtbuml committer: Stefan Monnier <monn...@iro.umontreal.ca> branch nick: elpa timestamp: Thu 2013-06-27 12:05:44 -0400 message: * 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. modified: GNUmakefile makefile-20110701202856-l9xk4avwtorg7t6u-1
=== modified file 'GNUmakefile' --- a/GNUmakefile 2013-06-27 04:22:16 +0000 +++ b/GNUmakefile 2013-06-27 16:05:44 +0000 @@ -118,13 +118,16 @@ 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 @@ # --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