diff options
Diffstat (limited to 'Makefile')
-rw-r--r-- | Makefile | 60 |
1 files changed, 45 insertions, 15 deletions
@@ -2,13 +2,15 @@ export EMACS ?= emacs EMACSFLAGS = -L . CASK = cask VERSION = $(shell git describe --tags --abbrev=0 | sed 's/^v//') -PACKAGE_NAME = cider-$(VERSION) +PKG = cider -ELS = $(wildcard *.el) -LINTELS = $(filter-out cider-autoloads.el,$(ELS)) +ELS_ALL = $(wildcard *.el) +ELS = $(filter-out $(PKG)-autoloads.el,$(ELS_ALL)) OBJECTS = $(ELS:.el=.elc) -.PHONY: elpa build version test lint clean elpaclean run-cider +.PHONY: elpa build version test lint clean elpaclean autoloads run-$(PKG) + +all: build .depend: $(ELS) @echo Compute dependencies @@ -26,7 +28,21 @@ elpa-$(EMACS): elpa: elpa-$(EMACS) -build: version elpa +autoloads: $(PKG)-autoloads.el + +$(PKG)-autoloads.el: $(ELS) + @printf "Generating $@\n" + @printf "%s" "$$LOADDEFS_TMPL" > $@ + @$(CASK) exec $(EMACS) -Q --batch -l autoload.el --eval "(progn\ + (fset 'message (lambda (&rest _)))\ + (setq make-backup-files nil)\ + (setq vc-handled-backends nil)\ + (setq default-directory (file-truename default-directory))\ + (setq generated-autoload-file (expand-file-name \"$@\"))\ + (setq find-file-visit-truename t)\ + (update-directory-autoloads default-directory))" + +build: version elpa autoloads $(CASK) build version: @@ -35,31 +51,45 @@ version: test: version build $(CASK) exec buttercup -L . -L ./test/utils/ -autoloads: - $(CASK) exec $(EMACS) -Q --batch \ - -l autoload.el \ - --eval "(let ((generated-autoload-file (expand-file-name \"cider-autoloads.el\"))) \ - (update-directory-autoloads (expand-file-name \".\")))" - lint: version elpa $(CASK) exec $(EMACS) -Q --batch \ --eval "(setq enable-local-variables :safe)" \ -l elisp-lint.el -f elisp-lint-files-batch \ --no-package-format \ --no-fill-column \ - $(LINTELS) + $(ELS) test-all: lint test clean: - rm -f .depend $(OBJECTS) cider-autoloads.el + rm -f .depend $(OBJECTS) $(PKG)-autoloads.el elpaclean: clean rm -f elpa* rm -rf .cask # Clean packages installed for development -run-cider: elpa - cask exec $(EMACS) -Q -L . --eval "(require 'cider)" +run-$(PKG): elpa + cask exec $(EMACS) -Q -L . --eval "(require '$(PKG))" html: mkdocs build + +## Templates ######################################################### + +define LOADDEFS_TMPL +;;; $(PKG)-autoloads.el --- automatically extracted autoloads +;; +;;; Code: +(add-to-list 'load-path (directory-file-name \ +(or (file-name-directory #$$) (car load-path)))) + +;; Local Variables: +;; version-control: never +;; no-byte-compile: t +;; no-update-autoloads: t +;; End: +;;; $(PKG)-autoloads.el ends here + +endef +export LOADDEFS_TMPL +#' |