summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGravatar Tom Willemsen2012-12-04 22:05:24 +0100
committerGravatar Tom Willemsen2012-12-04 22:05:24 +0100
commit9b3cc1d28d5a5bab0d1ce13e6612bbe989f4a1ce (patch)
tree0df0a957629482251c2fd29d62aa7a396da3333d
parent2622f3e7d9d8da3c0dedc2dce55203981d529bd1 (diff)
downloaddotfiles-9b3cc1d28d5a5bab0d1ce13e6612bbe989f4a1ce.tar.gz
dotfiles-9b3cc1d28d5a5bab0d1ce13e6612bbe989f4a1ce.zip
Add Makefiles to .emacs.d
-rw-r--r--.emacs.d/Makefile5
-rw-r--r--.emacs.d/emacs.mk52
-rw-r--r--.emacs.d/eshell/Makefile5
-rw-r--r--.emacs.d/site-lisp/Makefile7
-rw-r--r--.emacs.d/snippets/Makefile4
-rw-r--r--.emacs.d/snippets/html-mode/Makefile4
-rw-r--r--.emacs.d/snippets/org-mode/Makefile4
7 files changed, 81 insertions, 0 deletions
diff --git a/.emacs.d/Makefile b/.emacs.d/Makefile
new file mode 100644
index 0000000..734d499
--- /dev/null
+++ b/.emacs.d/Makefile
@@ -0,0 +1,5 @@
+DESTDIR=$(HOME)/.emacs.d
+objects=init.elc init.el gnus.elc gnus.el
+modules=eshell site-lisp snippets
+
+include emacs.mk
diff --git a/.emacs.d/emacs.mk b/.emacs.d/emacs.mk
new file mode 100644
index 0000000..8ffba3e
--- /dev/null
+++ b/.emacs.d/emacs.mk
@@ -0,0 +1,52 @@
+LOAD_PATH=. /usr/share/emacs/site-lisp $(HOME)/.emacs.d/site-lisp
+EMACS=emacs $(addprefix -L ,$(LOAD_PATH))
+
+FG_YEL=\033[0;33m
+FG_GRE=\033[0;32m
+FG_RED=\033[0;31m
+CLR_RE=\033[0;00m
+
+compile = $(EMACS) -Q -batch -eval "(byte-compile-file \"$(1)\")"
+define newer =
+$(shell if [ "$(1)" -nt "$(DESTDIR)/$(1)" ]; then echo "newer"; fi)
+endef
+
+install-objects=$(addprefix install-,$(objects))
+uninstall-objects=$(addprefix uninstall-,$(objects))
+check-objects=$(addprefix check-,$(objects))
+
+install-modules=$(addprefix install-,$(modules))
+uninstall-modules=$(addprefix uninstall-,$(modules))
+check-modules=$(addprefix check-,$(modules))
+
+.PHONY: install uninstall check uninstall $(modules)
+all: $(modules) $(objects)
+install: $(install-modules) $(install-objects)
+check: $(check-modules) $(check-objects)
+uninstall: $(uninstall-modules) $(uninstall-objects)
+
+$(filter %.elc,$(objects)): %.elc: %.el
+ $(call compile,$^)
+
+$(modules): %:
+ @$(MAKE) -C $*
+
+$(install-objects): install-%: %
+ $(if $(call newer,$*),install -pDm 644 "$*" "$(DESTDIR)/$*")
+
+$(install-modules): install-%:
+ @$(MAKE) -C $* install
+
+$(uninstall-objects): uninstall-%:
+ $(if $(call newer,$*),rm -f "$(DESTDIR)/$*")
+
+$(uninstall-modules): uninstall-%:
+ @$(MAKE) -C $* uninstall
+
+$(check-objects): check-%:
+ @$(if $(call newer,$*), \
+ echo -e "$(FG_YEL)$* $(FG_GRE)newer$(CLR_RE)!", \
+ echo -e "$(FG_YEL)$* $(FG_RED)not newer$(CLR_RE).")
+
+$(check-modules): check-%:
+ @$(MAKE) -C $* check
diff --git a/.emacs.d/eshell/Makefile b/.emacs.d/eshell/Makefile
new file mode 100644
index 0000000..58517d0
--- /dev/null
+++ b/.emacs.d/eshell/Makefile
@@ -0,0 +1,5 @@
+DESTDIR=$(HOME)/.emacs.d/eshell
+objects=alias
+modules=
+
+include ../emacs.mk
diff --git a/.emacs.d/site-lisp/Makefile b/.emacs.d/site-lisp/Makefile
new file mode 100644
index 0000000..918086c
--- /dev/null
+++ b/.emacs.d/site-lisp/Makefile
@@ -0,0 +1,7 @@
+DESTDIR=$(HOME)/.emacs.d/eshell
+objects=dzen.elc dzen.el eltuki.elc eltuki.el ext.elc ext.el \
+ metalexpress.elc metalexpress.el mu4e-init.elc mu4e-init.el \
+ newsticker-init.elc newsticker-init.el oni.elc oni.el org-init.elc \
+ org-init.el quick-edit-mode.elc quick-edit-mode.el
+
+include ../emacs.mk
diff --git a/.emacs.d/snippets/Makefile b/.emacs.d/snippets/Makefile
new file mode 100644
index 0000000..6decdb1
--- /dev/null
+++ b/.emacs.d/snippets/Makefile
@@ -0,0 +1,4 @@
+DESTDIR=$(HOME)/.emacs.d/snippets
+modules=html-mode org-mode
+
+include ../emacs.mk
diff --git a/.emacs.d/snippets/html-mode/Makefile b/.emacs.d/snippets/html-mode/Makefile
new file mode 100644
index 0000000..78959a3
--- /dev/null
+++ b/.emacs.d/snippets/html-mode/Makefile
@@ -0,0 +1,4 @@
+DESTDIR=$(HOME)/.emacs.d/snippets/html-mode
+objects=for generic-block
+
+include ../../emacs.mk
diff --git a/.emacs.d/snippets/org-mode/Makefile b/.emacs.d/snippets/org-mode/Makefile
new file mode 100644
index 0000000..155256c
--- /dev/null
+++ b/.emacs.d/snippets/org-mode/Makefile
@@ -0,0 +1,4 @@
+DESTDIR=$(HOME)/.emacs.d/snippets/org-mode
+objects=codeblock heading
+
+include ../../emacs.mk