aboutsummaryrefslogtreecommitdiffstats
path: root/emacs/.emacs.d/GNUmakefile
blob: 7bcee4ff769df1f9bda05c3df849a33188d0e996 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
include ../../dotfiles.mk

AUTOLOADS_FILE = site-lisp/site-autoloads.el
UNWANTED = $(AUTOLOADS_FILE) site-lisp/flycheck_% site-lisp/flycheck-%
SITE_LISPS = $(addsuffix c,$(filter-out $(UNWANTED),$(wildcard site-lisp/*.el)))
INIT_LISPS = $(addsuffix .elc,$(basename $(wildcard init/*.org)))
VENDOR_DIRS = $(wildcard vendor-lisp/*)

all: $(SITE_LISPS) init.elc $(INIT_LISPS) $(AUTOLOADS_FILE)

%.el: %.org
	$(call tangle,emacs-lisp)

%.elc: %.el
	@echo -e "\e[31mELC\e[0m $<"
	@$(EMACS) -batch \
        -directory "$(HOME)/.emacs.d/site-lisp" \
        -directory "$(HOME)/.emacs.d/vendor-lisp/emacs-slack" \
        -directory "$(HOME)/.emacs.d/vendor-lisp/circe" \
        -eval "(package-initialize)" \
        -eval "(byte-compile-file \"$<\")"

### Site Lisp

$(AUTOLOADS_FILE): $(SITE_LISPS)
	@echo -e "\e[32mGEN\e[0m $@"
	@$(EMACS) -batch \
        -eval "(setq generated-autoload-file \"$(CURDIR)/$@\")" \
        -eval "(update-directory-autoloads \"$(CURDIR)/site-lisp/\")"