-.PHONY: install
+APATH := $(realpath .)
+RPATH := $(subst $(wildcard ~/),,$(APATH))
-install:
- cp -f vimrc ~/.vimrc
+FILES :=
+DOTFILES := bash* flexget vimrc
-update:
- cp -f ~/.vimrc vimrc
+.PHONY: install $(FILES) $(DOTFILES)
+install: $(FILES) $(DOTFILES)
+
+$(FILES):
+ if [[ -f ~/$@ || -d ~/$@ ]]; then \
+ if [[ -d $@ ]]; then \
+ cp -rf ~/$@/* $@; \
+ else \
+ cp -rf ~/$@ $@; \
+ fi; \
+ rm -r ~/$@; \
+ fi;
+ ln -sf $(RPATH)/$@ ~/.$@
+
+$(DOTFILES):
+ if [[ -f ~/.$@ || -d ~/.$@ ]]; then \
+ if [[ -d $@ ]]; then \
+ cp -rf ~/.$@/* $@; \
+ else \
+ cp -rf ~/.$@ $@; \
+ fi; \
+ rm -r ~/.$@; \
+ fi;
+ ln -sf $(RPATH)/$@ ~/.$@