-all: clean install compile test
-
-bench: benchel benchjs
-
-benchel:
- emacs -Q -L . \
+EMACS = emacs
+CASK = EMACS=${EMACS} cask
+DEPENDENCIES = .cask/
+SOURCE_FILES = \
+ context-coloring.el \
+ context-coloring-javascript.el \
+ context-coloring-emacs-lisp.el
+
+all: uncompile compile test
+
+bench: ${DEPENDENCIES}
+ ${CASK} exec ${EMACS} -Q \
+ -L . \
-l context-coloring \
- -l benchmark/context-coloring-benchmark \
+ -l context-coloring-benchmark \
-f context-coloring-benchmark-run
-benchjs:
- node_modules/.bin/matcha
-
-compile:
- emacs -Q -batch -f batch-byte-compile *.el
+compile: ${DEPENDENCIES}
+ ${CASK} exec ${EMACS} -Q -batch \
+ -L . \
+ -f batch-byte-compile ${SOURCE_FILES}
-clean:
- rm -f *.log benchmark/*.log *.elc
+uncompile:
+ rm -f *.elc
-install:
- npm install
+clean: uncompile
+ rm -rf ${DEPENDENCIES}
-test: testel testjs
+${DEPENDENCIES}:
+ ${CASK}
-testel:
- emacs -Q -batch -L . \
+test: ${DEPENDENCIES}
+ ${CASK} exec ${EMACS} -Q -batch \
+ -L . \
-l ert \
- -l context-coloring \
- -l test/context-coloring-test.el \
+ -l context-coloring-coverage \
+ -f context-coloring-coverage-ci-init \
+ -l context-coloring-test \
-f ert-run-tests-batch-and-exit
-testjs:
- node_modules/.bin/mocha
+cover: ${DEPENDENCIES}
+ ${CASK} exec ${EMACS} -Q -batch \
+ -L . \
+ -l ert \
+ -l context-coloring-coverage \
+ -f context-coloring-coverage-local-init \
+ -l context-coloring-test \
+ -f ert-run-tests-batch-and-exit
-.PHONY: all bench benchel benchjs compile clean install test testel testjs
+.PHONY: all bench compile uncompile clean test cover