Makefile (900B)
1 CASK = cask 2 export EMACS ?= emacs 3 EMACSFLAGS = 4 TESTFLAGS = 5 6 SRCS = $(wildcard *.el) 7 OBJS = $(SRCS:.el=.elc) 8 9 .PHONY: compile test clean elpa 10 11 all: compile 12 13 elpa-$(EMACS): 14 $(CASK) install 15 $(CASK) update 16 touch $@ 17 18 elpa: elpa-$(EMACS) 19 20 elpaclean: 21 rm -f elpa* 22 rm -rf .cask # Clean packages installed for development 23 24 compile: elpa 25 $(CASK) build 26 27 clean: 28 rm -f $(OBJS) 29 30 # test: elpa 31 # $(CASK) exec buttercup -L . 32 33 run: 34 $(CASK) exec emacs -q -l ./dev-emacs.d/init.el ${ARGS} 35 36 test: elpa 37 $(MAKE) run 38 39 dev: clean elpa 40 $(MAKE) ARGS="dev-emacs.d/test-files/* dev-emacs.d/init.el *-theme.el solarized*.el" run 41 42 dev-merge: clean elpa 43 rm -rf dev-emacs.d/test-repo 44 git clone dev-emacs.d/test.git dev-emacs.d/test-repo 45 git -C dev-emacs.d/test-repo checkout v2 46 git -C dev-emacs.d/test-repo merge origin/v1 || exit 0 47 $(MAKE) ARGS="dev-emacs.d/init.el *-theme.el solarized.el dev-emacs.d/test-repo" run