Makefile
changeset 164 d7ed163b397e
parent 111 fcea9d3b79e1
child 165 9f5dd505a4cf
equal deleted inserted replaced
163:f9b21d24bbf4 164:d7ed163b397e
     2 
     2 
     3 ifeq '' '$(HOME)'
     3 ifeq '' '$(HOME)'
     4   $(error Home env var not set!)
     4   $(error Home env var not set!)
     5 endif
     5 endif
     6 
     6 
     7 .PHONY: all install install-all
     7 .PHONY: all install preinstall install-all preinstall-all update-dot-emacs-pre update-dot-emacs-post
     8 
     8 
     9 all: install
     9 all: install
    10 
    10 
    11 install: .emacs .emacs-my .emacs-pre .emacs-post
    11 install: preinstall update-dot-emacs-pre update-dot-emacs-post
       
    12 
       
    13 preinstall: .emacs .emacs-my .emacs-pre .emacs-post
    12 	for file in .emacs-pre .emacs-post; do \
    14 	for file in .emacs-pre .emacs-post; do \
    13 		if [ ! -f $(HOME)/$$file ]; then cp $$file $(HOME)/$$file; fi; \
    15 		if [ ! -f $(HOME)/$$file ]; then cp $$file $(HOME)/$$file; fi; \
    14 	done
    16 	done
    15 	cp .emacs $(HOME)/.emacs
    17 	cp .emacs $(HOME)/.emacs
    16 	cp .emacs-my $(HOME)/.emacs-my
    18 	cp .emacs-my $(HOME)/.emacs-my
    17 
    19 
    18 install-all: .emacs .emacs-my .emacs-pre .emacs-post
    20 install-all: preinstall-all update-dot-emacs-pre update-dot-emacs-post
       
    21 
       
    22 preinstall-all: .emacs .emacs-my .emacs-pre .emacs-post
    19 	for file in $^; do \
    23 	for file in $^; do \
    20 		cp $$file $(HOME)/$$file; \
    24 		cp $$file $(HOME)/$$file; \
       
    25 	done
       
    26 
       
    27 update-dot-emacs-pre:
       
    28 	for file in `cd template-pre; ls *.el`; do \
       
    29 		tag=$${file%.el}; \
       
    30 		if grep "DO NOT EDIT COMMENT! TAG: $$tag" $(HOME)/.emacs-pre; then \
       
    31 			:; \
       
    32 		else \
       
    33 			cat template-pre/$$file >>$(HOME)/.emacs-pre; \
       
    34 		fi; \
       
    35 	done
       
    36 
       
    37 update-dot-emacs-post:
       
    38 	for file in `cd template-post; ls *.el`; do \
       
    39 		tag=$${file%.el}; \
       
    40 		if grep "DO NOT EDIT COMMENT! TAG: $$tag" $(HOME)/.emacs-post; then \
       
    41 			:; \
       
    42 		else \
       
    43 			cat template-post/$$file >>$(HOME)/.emacs-post; \
       
    44 		fi; \
    21 	done
    45 	done
    22 
    46 
    23 dist-tar:
    47 dist-tar:
    24 	tar cf dot-emacs.tar .emacs .emacs-my
    48 	tar cf dot-emacs.tar .emacs .emacs-my
    25 
    49