Daniel Borchmann
9e84ba5251
If `sandbox/.emacs.d` already exists, calling `ln` again seems to create links within this directory. Ensure that this does not happen anymore by deleting the link first if it already exists. Also add `-T` to `ln` to ensure its arguments are interpreted properly. They day I understand argument interpretation in `ln` will be a good day …
39 lines
1.1 KiB
Makefile
39 lines
1.1 KiB
Makefile
# Inspired by https://nullprogram.com/blog/2020/01/22/
|
|
|
|
.POSIX:
|
|
|
|
EMACS = emacs
|
|
LDFLAGS = -L site-lisp $(patsubst %,-L %, $(wildcard elpa/*/))
|
|
EL = site-lisp/timeline-tools.el site-lisp/db-customize.el site-lisp/db-emms.el site-lisp/db-eshell.el site-lisp/db-hydras.el site-lisp/db-mail.el site-lisp/db-music.el site-lisp/db-org.el site-lisp/db-projects.el site-lisp/db-utils.el site-lisp/db-utils-test.el site-lisp/timeline-tools.el
|
|
TEST = $(wildcard site-lisp/*-test.el)
|
|
ELC = $(EL:.el=.elc)
|
|
TESTC = $(TEST:.el=.elc)
|
|
|
|
.PHONY: compile test clean distclean sandbox-start
|
|
|
|
compile: $(ELC) $(TESTC)
|
|
|
|
test: $(ELC) $(TESTC)
|
|
@echo "Testing $(TESTC)"
|
|
@$(EMACS) -Q --batch $(LDFLAGS) $(patsubst %,-l %, $(TESTC)) -f ert-run-tests-batch
|
|
|
|
clean:
|
|
rm -f $(ELC) $(TESTC)
|
|
|
|
distclean: clean
|
|
rm -rfv elpa
|
|
git checkout elpa
|
|
|
|
sandbox-start:
|
|
mkdir -p sandbox
|
|
rm -f sandbox/.emacs.d
|
|
ln -sT $(PWD) sandbox/.emacs.d
|
|
HOME=$(PWD)/sandbox emacs
|
|
|
|
timelinetools-test.elc: timeline-tools.elc
|
|
|
|
.SUFFIXES: .el .elc
|
|
.el.elc:
|
|
@echo "Compiling $<"
|
|
@$(EMACS) -Q --batch $(LDFLAGS) -f batch-byte-compile $<
|