INTO = $(HOME) INSTALL = \ bash_login \ bash_logout \ bashrc \ bin \ gitconfig \ gitignore \ tmux.conf \ vimrc git: git config --local user.email "franckcuny@gmail.net" git config --local user.name "Franck Cuny" INSTALLED = $(patsubst %,$(INTO)/.%,$(INSTALL)) LN = @ln -sf install: $(INSTALLED) $(HOME)/bin $(HOME)/src $(HOME)/tmp $(HOME)/.ssh/authorized_keys git $(INTO)/.% : % @[ ! -e $@ ] || [ -h $@ ] || mv -f $@ $@.bak $(LN) $(PWD)/$< $@ $(HOME)/.ssh/authorized_keys: $(LN) $(PWD)/ssh/authorized_keys $(HOME)/.ssh/authorized_keys $(HOME)/bin: mkdir -p $(HOME)/bin $(HOME)/src: mkdir -p $(HOME)/src $(HOME)/tmp: mkdir -p $(HOME)/tmp check-dead: @find ~ -maxdepth 1 -name '.*' -type l -exec test ! -e {} \; -print @find ~/bin -maxdepth 1 -name '.*' -type l -exec test ! -e {} \; -print clean-dead: @find ~ -maxdepth 1 -name '.*' -type l -exec test ! -e {} \; -delete @find ~/bin -maxdepth 1 -name '.*' -type l -exec test ! -e {} \; -delete .PHONY: install check-dead clean-dead git