Makefile
author Oleksandr Gavenko <gavenkoa@gmail.com>
Thu, 28 Jan 2010 19:53:12 +0200
changeset 265 ee6dca41d9aa
parent 261 16b1f9a3ee99
child 267 55541cafde9d
permissions -rw-r--r--
Remove tags as not used.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
43
7c9cd891400b Added makefile to install dot-emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     1
# Copyright (C) 2008 by Oleksandr Gavenko <gavenkoa@gmail.com>
7c9cd891400b Added makefile to install dot-emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     2
7c9cd891400b Added makefile to install dot-emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     3
ifeq '' '$(HOME)'
7c9cd891400b Added makefile to install dot-emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     4
  $(error Home env var not set!)
7c9cd891400b Added makefile to install dot-emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     5
endif
7c9cd891400b Added makefile to install dot-emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     6
260
437507e141b4 Write .PHONY exactly before target.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 165
diff changeset
     7
.PHONY: all
43
7c9cd891400b Added makefile to install dot-emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     8
all: install
7c9cd891400b Added makefile to install dot-emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     9
260
437507e141b4 Write .PHONY exactly before target.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 165
diff changeset
    10
.PHONY: install
164
d7ed163b397e Added installation of template for -pre/-post scripts.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 111
diff changeset
    11
install: preinstall update-dot-emacs-pre update-dot-emacs-post
d7ed163b397e Added installation of template for -pre/-post scripts.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 111
diff changeset
    12
260
437507e141b4 Write .PHONY exactly before target.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 165
diff changeset
    13
.PHONY: preinstall
164
d7ed163b397e Added installation of template for -pre/-post scripts.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 111
diff changeset
    14
preinstall: .emacs .emacs-my .emacs-pre .emacs-post
111
fcea9d3b79e1 Rename -my{-pre/-post} to {-pre/-post}.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 103
diff changeset
    15
	for file in .emacs-pre .emacs-post; do \
93
99f967be941a Rename files .emacs-my-custom* to .emacs-my*.
"Oleksandr Gavenko <gavenkoa@gmail.com>"
parents: 45
diff changeset
    16
		if [ ! -f $(HOME)/$$file ]; then cp $$file $(HOME)/$$file; fi; \
99f967be941a Rename files .emacs-my-custom* to .emacs-my*.
"Oleksandr Gavenko <gavenkoa@gmail.com>"
parents: 45
diff changeset
    17
	done
103
7c16c6cab2b0 By default .emacs also overwrite.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 96
diff changeset
    18
	cp .emacs $(HOME)/.emacs
93
99f967be941a Rename files .emacs-my-custom* to .emacs-my*.
"Oleksandr Gavenko <gavenkoa@gmail.com>"
parents: 45
diff changeset
    19
	cp .emacs-my $(HOME)/.emacs-my
44
19b74f7cd49a by default target `install' only update ".emacs-my".
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 43
diff changeset
    20
260
437507e141b4 Write .PHONY exactly before target.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 165
diff changeset
    21
.PHONY: install-all
164
d7ed163b397e Added installation of template for -pre/-post scripts.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 111
diff changeset
    22
install-all: preinstall-all update-dot-emacs-pre update-dot-emacs-post
d7ed163b397e Added installation of template for -pre/-post scripts.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 111
diff changeset
    23
260
437507e141b4 Write .PHONY exactly before target.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 165
diff changeset
    24
.PHONY: preinstall-all
164
d7ed163b397e Added installation of template for -pre/-post scripts.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 111
diff changeset
    25
preinstall-all: .emacs .emacs-my .emacs-pre .emacs-post
44
19b74f7cd49a by default target `install' only update ".emacs-my".
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 43
diff changeset
    26
	for file in $^; do \
45
d16182a9e7de By default target `install' copy .emacs if it not exist.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 44
diff changeset
    27
		cp $$file $(HOME)/$$file; \
d16182a9e7de By default target `install' copy .emacs if it not exist.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 44
diff changeset
    28
	done
85
2bb7e6aceac9 Added target dist-tar.
gavenkoa@gavenko.bifit.int
parents: 45
diff changeset
    29
260
437507e141b4 Write .PHONY exactly before target.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 165
diff changeset
    30
.PHONY: update-dot-emacs-pre
164
d7ed163b397e Added installation of template for -pre/-post scripts.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 111
diff changeset
    31
update-dot-emacs-pre:
261
16b1f9a3ee99 Install pre/post config into auto files.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 260
diff changeset
    32
	printf ";; DO NOT EDIT! This file automatically generated.\n\n" >$(HOME)/.emacs-pre-auto
164
d7ed163b397e Added installation of template for -pre/-post scripts.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 111
diff changeset
    33
	for file in `cd template-pre; ls *.el`; do \
261
16b1f9a3ee99 Install pre/post config into auto files.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 260
diff changeset
    34
		cat template-pre/$$file >>$(HOME)/.emacs-pre-auto; \
164
d7ed163b397e Added installation of template for -pre/-post scripts.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 111
diff changeset
    35
	done
d7ed163b397e Added installation of template for -pre/-post scripts.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 111
diff changeset
    36
260
437507e141b4 Write .PHONY exactly before target.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 165
diff changeset
    37
.PHONY: update-dot-emacs-post
164
d7ed163b397e Added installation of template for -pre/-post scripts.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 111
diff changeset
    38
update-dot-emacs-post:
261
16b1f9a3ee99 Install pre/post config into auto files.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 260
diff changeset
    39
	printf ";; DO NOT EDIT! This file automatically generated.\n\n" >$(HOME)/.emacs-post-auto
164
d7ed163b397e Added installation of template for -pre/-post scripts.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 111
diff changeset
    40
	for file in `cd template-post; ls *.el`; do \
261
16b1f9a3ee99 Install pre/post config into auto files.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 260
diff changeset
    41
		cat template-post/$$file >>$(HOME)/.emacs-post-auto; \
164
d7ed163b397e Added installation of template for -pre/-post scripts.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 111
diff changeset
    42
	done
d7ed163b397e Added installation of template for -pre/-post scripts.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 111
diff changeset
    43
260
437507e141b4 Write .PHONY exactly before target.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 165
diff changeset
    44
.PHONY: tar
165
9f5dd505a4cf Correct target name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 164
diff changeset
    45
tar:
85
2bb7e6aceac9 Added target dist-tar.
gavenkoa@gavenko.bifit.int
parents: 45
diff changeset
    46
	tar cf dot-emacs.tar .emacs .emacs-my
86
0cf1b0216dac Added target clean.
gavenkoa@gavenko.bifit.int
parents: 85
diff changeset
    47
260
437507e141b4 Write .PHONY exactly before target.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 165
diff changeset
    48
.PHONY: distclean
437507e141b4 Write .PHONY exactly before target.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 165
diff changeset
    49
distclean: clean
437507e141b4 Write .PHONY exactly before target.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 165
diff changeset
    50
437507e141b4 Write .PHONY exactly before target.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 165
diff changeset
    51
.PHONY: clean
86
0cf1b0216dac Added target clean.
gavenkoa@gavenko.bifit.int
parents: 85
diff changeset
    52
clean:
0cf1b0216dac Added target clean.
gavenkoa@gavenko.bifit.int
parents: 85
diff changeset
    53
	rm -f dot-emacs.tar