Makefile
author Oleksandr Gavenko <gavenkoa@gmail.com>
Mon, 22 Mar 2010 22:46:47 +0200
changeset 362 f4bd431ad549
parent 318 6a430707c23e
child 379 271ed5d61644
permissions -rw-r--r--
By default start from user home directory (HOME point to it).
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
279
fd6164dfec82 Update copyright statement and year.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 275
diff changeset
     1
# Copyright (C) 2008-2010 by Oleksandr Gavenko <gavenkoa@gmail.com>
fd6164dfec82 Update copyright statement and year.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 275
diff changeset
     2
#
fd6164dfec82 Update copyright statement and year.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 275
diff changeset
     3
# You can do anything with this file without any warranty.
43
7c9cd891400b Added makefile to install dot-emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     4
7c9cd891400b Added makefile to install dot-emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     5
ifeq '' '$(HOME)'
7c9cd891400b Added makefile to install dot-emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     6
  $(error Home env var not set!)
7c9cd891400b Added makefile to install dot-emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     7
endif
7c9cd891400b Added makefile to install dot-emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     8
318
6a430707c23e Store all files in current dir for easy access to they.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 279
diff changeset
     9
FILES_MODE_EL := $(wildcard *-mode.el)
6a430707c23e Store all files in current dir for easy access to they.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 279
diff changeset
    10
260
437507e141b4 Write .PHONY exactly before target.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 165
diff changeset
    11
.PHONY: all
43
7c9cd891400b Added makefile to install dot-emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    12
all: install
7c9cd891400b Added makefile to install dot-emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    13
268
b2cd8fbe5ec3 Install mode file under '.emacs.d' dir.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 267
diff changeset
    14
.PHONY: install-all
b2cd8fbe5ec3 Install mode file under '.emacs.d' dir.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 267
diff changeset
    15
install-all: install
b2cd8fbe5ec3 Install mode file under '.emacs.d' dir.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 267
diff changeset
    16
	cp .emacs-pre $(HOME)/.emacs-pre
b2cd8fbe5ec3 Install mode file under '.emacs.d' dir.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 267
diff changeset
    17
	cp .emacs-post $(HOME)/.emacs-post
164
d7ed163b397e Added installation of template for -pre/-post scripts.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 111
diff changeset
    18
268
b2cd8fbe5ec3 Install mode file under '.emacs.d' dir.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 267
diff changeset
    19
.PHONY: install
318
6a430707c23e Store all files in current dir for easy access to they.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 279
diff changeset
    20
install: .emacs .emacs-my .emacs-pre .emacs-post $(FILES_MODE_EL)
111
fcea9d3b79e1 Rename -my{-pre/-post} to {-pre/-post}.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 103
diff changeset
    21
	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
    22
		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
    23
	done
103
7c16c6cab2b0 By default .emacs also overwrite.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 96
diff changeset
    24
	cp .emacs $(HOME)/.emacs
93
99f967be941a Rename files .emacs-my-custom* to .emacs-my*.
"Oleksandr Gavenko <gavenkoa@gmail.com>"
parents: 45
diff changeset
    25
	cp .emacs-my $(HOME)/.emacs-my
275
3af8c9807cbf Added autoload generation.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 270
diff changeset
    26
	rm -f -r $(HOME)/.emacs.d/my-lisp
3af8c9807cbf Added autoload generation.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 270
diff changeset
    27
	mkdir -p $(HOME)/.emacs.d/my-lisp
318
6a430707c23e Store all files in current dir for easy access to they.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 279
diff changeset
    28
	for file in $(FILES_MODE_EL); do \
275
3af8c9807cbf Added autoload generation.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 270
diff changeset
    29
		cp -f $$file $(HOME)/.emacs.d/my-lisp; \
164
d7ed163b397e Added installation of template for -pre/-post scripts.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 111
diff changeset
    30
	done
275
3af8c9807cbf Added autoload generation.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 270
diff changeset
    31
	emacs --batch \
3af8c9807cbf Added autoload generation.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 270
diff changeset
    32
		--eval='(let ( (generated-autoload-file "~/.emacs.d/my-lisp/autoload-my.el") ) (update-directory-autoloads "~/.emacs.d/my-lisp") )'
164
d7ed163b397e Added installation of template for -pre/-post scripts.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 111
diff changeset
    33
269
81c80df45b37 Udded uninstall target.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 268
diff changeset
    34
.PHONY: uninstall
81c80df45b37 Udded uninstall target.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 268
diff changeset
    35
uninstall:
81c80df45b37 Udded uninstall target.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 268
diff changeset
    36
	@echo !!! Nothing done !!!
81c80df45b37 Udded uninstall target.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 268
diff changeset
    37
260
437507e141b4 Write .PHONY exactly before target.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 165
diff changeset
    38
.PHONY: tar
165
9f5dd505a4cf Correct target name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 164
diff changeset
    39
tar:
85
2bb7e6aceac9 Added target dist-tar.
gavenkoa@gavenko.bifit.int
parents: 45
diff changeset
    40
	tar cf dot-emacs.tar .emacs .emacs-my
86
0cf1b0216dac Added target clean.
gavenkoa@gavenko.bifit.int
parents: 85
diff changeset
    41
260
437507e141b4 Write .PHONY exactly before target.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 165
diff changeset
    42
.PHONY: distclean
437507e141b4 Write .PHONY exactly before target.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 165
diff changeset
    43
distclean: clean
437507e141b4 Write .PHONY exactly before target.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 165
diff changeset
    44
437507e141b4 Write .PHONY exactly before target.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 165
diff changeset
    45
.PHONY: clean
86
0cf1b0216dac Added target clean.
gavenkoa@gavenko.bifit.int
parents: 85
diff changeset
    46
clean:
0cf1b0216dac Added target clean.
gavenkoa@gavenko.bifit.int
parents: 85
diff changeset
    47
	rm -f dot-emacs.tar