dotemacs/Makefile

35 lines
901 B
Makefile

.phony: all setup tangle lint clean
all: setup tangle lint
setup:
emacs --batch --eval="(package-initialize)" \
--eval="(mapcar #'package-install '(indent-lint package-lint relint))"
# No -q or -Q, in case the user has a newer version of Org.
init-org.el:
emacs --batch \
--eval="(require 'ob-tangle)" \
--eval='(org-babel-tangle-file "init.org")'
tangle: init-org.el
lint-check-declare: tangle
emacs -q -Q --batch --eval='(check-declare-file "init.el")'
lint-checkdoc: tangle
emacs -q -Q --batch --eval='(checkdoc-file "init.el")'
lint-package-lint: setup tangle
emacs -Q --batch --eval='(package-initialize)' \
--eval="(require 'package-lint)" \
-f 'package-lint-batch-and-exit' "init.el"
lint-relint: setup tangle
emacs -q -Q --batch --eval='(relint-file "init.el")'
lint: lint-check-declare lint-checkdoc lint-package-lint lint-relint
clean-tangle:
-rm init.el