summaryrefslogtreecommitdiffstats
path: root/dotfiles.mk
diff options
context:
space:
mode:
authorGravatar Tom Willemsen2013-02-15 15:37:42 +0100
committerGravatar Tom Willemsen2013-02-15 15:37:42 +0100
commit934d02bcacaa5d0aef64a8edf7677f3b0c198666 (patch)
treeedfc842025b5f8569973567b44ad62aa662f548f /dotfiles.mk
parent06ff316f7f3b098504a6342651a79017cfb80ae7 (diff)
parentee34dfcc2c2fec53731b64afca03bb34dd80b2ba (diff)
downloaddotfiles-934d02bcacaa5d0aef64a8edf7677f3b0c198666.tar.gz
dotfiles-934d02bcacaa5d0aef64a8edf7677f3b0c198666.zip
Merge remote-tracking branch 'ryuslash/master' into phoenix
Conflicts: .config/awesome/rc.lua .emacs.d/init.el .emacs.d/init.org .emacs.d/site-lisp/oni.el
Diffstat (limited to 'dotfiles.mk')
-rw-r--r--dotfiles.mk58
1 files changed, 44 insertions, 14 deletions
diff --git a/dotfiles.mk b/dotfiles.mk
index 77afcee..0d1e70b 100644
--- a/dotfiles.mk
+++ b/dotfiles.mk
@@ -16,47 +16,77 @@ define older =
$(shell if [ "$(1)" -ot "$(DESTDIR)/$(1)" ]; then echo "older"; fi)
endef
+check-objects=$(addprefix check-,$(objects))
install-objects=$(addprefix install-,$(objects))
+reverse-objects=$(addprefix reverse-,$(objects))
uninstall-objects=$(addprefix uninstall-,$(objects))
-check-objects=$(addprefix check-,$(objects))
+check-modules=$(addprefix check-,$(modules))
install-modules=$(addprefix install-,$(modules))
+reverse-modules=$(addprefix reverse-,$(modules))
uninstall-modules=$(addprefix uninstall-,$(modules))
-check-modules=$(addprefix check-,$(modules))
.PHONY: all install uninstall check uninstall $(modules) \
$(install-objects) $(uninstall-objects) $(check-objects) \
- $(install-modules) $(uninstall-modules) $(check-modules)
+ $(install-modules) $(uninstall-modules) $(check-modules) \
+ $(reverse) $(reverse-objects) $(reverse-modules)
all: $(modules) $(objects)
-install: $(install-modules) $(install-objects)
+
+ifeq ($(MAKEROOT),y)
check: $(check-modules) $(check-objects)
+install: $(install-modules) $(install-objects)
+reverse: $(reverse-modules) $(reverse-objects)
uninstall: $(uninstall-modules) $(uninstall-objects)
+else
+check:
+ @$(MAKE) -s -C ../ check
+install:
+ @$(MAKE) -s -C ../ install
+reverse:
+ @$(MAKE) -s -C ../ reverse
+uninstall:
+ @$(MAKE) -s -C ../ uninstall
+endif
$(modules): %:
- @echo $(MAKEFILES)
- @$(MAKE) -C $*
+ $(MAKE) -C $*
$(install-objects): install-%: %
- $(if $(call newer,$*), \
- install -pDm $(MODE) "$*" "$(DESTDIR)/$*")
+ @$(if $(call newer,$*), \
+ echo -e "$(FG_GRE)+ $(FG_YEL)$(MKDPREFIX)$* $(CLR_RE)to $(DESTDIR) as $(MODE)"; \
+ install -pDm $(MODE) "$*" "$(DESTDIR)/$*", \
+ echo -e "$(FG_RED)- $(FG_YEL)$(MKDPREFIX)$*$(CLR_RE)")
$(install-modules): install-%:
- @$(MAKE) -C $* install
+ @$(MAKE) -s -C $* install MKDPREFIX=$(MKDPREFIX)$*/
+
+$(reverse-objects): reverse-%:
+ @$(if $(call older,$*), \
+ echo -e "$(FG_GRE)+ $(FG_YEL)$(MKDPREFIX)$*$(CLR_RE)"; \
+ cp -a "$(DESTDIR)/$*" "$*", \
+ echo -e "$(FG_RED)- $(FG_YEL)$(MKDPREFIX)$*$(CLR_RE)")
+
+$(reverse-modules): reverse-%:
+ @$(MAKE) -s -C $* reverse MKDPREFIX=$(MKDPREFIX)$*/
$(uninstall-objects): uninstall-%:
- $(if $(call newer,$*),rm -f "$(DESTDIR)/$*")
+ @$(if $(call older,$*), \
+ echo -e "$(FG_RED)+ $(FG_YEL)$(MKDPREFIX)$*$(CLR_RE)", \
+ echo -e "$(FG_GRE)- $(FG_YEL)$(MKDPREFIX)$*$(CLR_RE)"; \
+ rm -f "$(DESTDIR)/$*")
$(uninstall-modules): uninstall-%:
- @$(MAKE) -C $* uninstall
+ @$(MAKE) -C $* uninstall MKDPREFIX=$(MKDPREFIX)$*/
$(check-objects): check-%:
@$(if $(call newer,$*), \
- echo -e "$(FG_YEL)$* $(FG_GRE)newer$(CLR_RE)!", \
+ echo -e "$(FG_GRE)+ $(FG_YEL)$(MKDPREFIX)$*$(CLR_RE)", \
$(if $(call older,$*), \
- echo -e "$(FG_YEL)$* $(FG_RED)older$(CLR_RE)."))
+ echo -e "$(FG_RED)- $(FG_YEL)$(MKDPREFIX)$*$(CLR_RE)", \
+ echo -e "$(FG_BLU)= $(FG_YEL)$(MKDPREFIX)$*$(CLR_RE)"))
$(check-modules): check-%:
- @$(MAKE) -C $* check
+ @$(MAKE) -s -C $* check MKDPREFIX=$(MKDPREFIX)$*/
$(filter %.elc,$(objects)): %.elc: %.el
$(call compile,$^)