Makefile
author Oleksandr Gavenko <gavenkoa@gmail.com>
Tue, 28 Aug 2012 18:24:57 +0300
changeset 518 3dd43161fc0e
parent 506 0ab510cb567d
child 543 77f7344600cb
permissions -rw-r--r--
Pass full path to menu file. Also pass Fvwm menu entry name.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
12
52322e5cc6bb Proper determine Windows.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2
diff changeset
     1
SHELL = /bin/sh
165
517623c39dac Add work-around for PATH. Under Windows find.exe going in collision with
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 147
diff changeset
     2
export PATH := /bin:/usr/bin:${PATH}
0
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     3
166
27fc63b27dad Add default Makefile settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 165
diff changeset
     4
# Disable built in pattern rules.
27fc63b27dad Add default Makefile settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 165
diff changeset
     5
MAKEFLAGS += -r
27fc63b27dad Add default Makefile settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 165
diff changeset
     6
# Disable built in variables.
27fc63b27dad Add default Makefile settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 165
diff changeset
     7
MAKEFLAGS += -R
27fc63b27dad Add default Makefile settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 165
diff changeset
     8
# Disable built in suffix rules.
27fc63b27dad Add default Makefile settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 165
diff changeset
     9
.SUFFIXES:
27fc63b27dad Add default Makefile settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 165
diff changeset
    10
# Default target.
217
fdcf941346bb Print supported targets.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 216
diff changeset
    11
.DEFAULT_GOAL = help
166
27fc63b27dad Add default Makefile settings.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 165
diff changeset
    12
249
22e93995e88a Add docs targets.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 234
diff changeset
    13
################################################################
22e93995e88a Add docs targets.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 234
diff changeset
    14
# Platform definition.
13
9e590e7ef108 Adds .PHONY exactly before corresponding target.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 12
diff changeset
    15
0
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    16
ifeq '' '$(HOME)'
12
52322e5cc6bb Proper determine Windows.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2
diff changeset
    17
  $(error HOME env var not set!)
0
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    18
endif
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    19
2
48e601bfbca6 Split files depend of OS. New install algorithm.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 0
diff changeset
    20
host_os = linux
12
52322e5cc6bb Proper determine Windows.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 2
diff changeset
    21
ifneq '' '$(COMSPEC)'
249
22e93995e88a Add docs targets.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 234
diff changeset
    22
  host_os = cygwin
22e93995e88a Add docs targets.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 234
diff changeset
    23
endif
22e93995e88a Add docs targets.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 234
diff changeset
    24
22e93995e88a Add docs targets.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 234
diff changeset
    25
################################################################
22e93995e88a Add docs targets.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 234
diff changeset
    26
# Build tool definition/switches.
22e93995e88a Add docs targets.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 234
diff changeset
    27
22e93995e88a Add docs targets.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 234
diff changeset
    28
RST2HTML = rst2html
22e93995e88a Add docs targets.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 234
diff changeset
    29
ifeq '$(host_os)' 'cygwin'
22e93995e88a Add docs targets.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 234
diff changeset
    30
  RST2HTML = rst2html.py
2
48e601bfbca6 Split files depend of OS. New install algorithm.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 0
diff changeset
    31
endif
48e601bfbca6 Split files depend of OS. New install algorithm.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 0
diff changeset
    32
218
92582492ecde Add heading.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 217
diff changeset
    33
################################################################
92582492ecde Add heading.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 217
diff changeset
    34
# Project dirs/files.
92582492ecde Add heading.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 217
diff changeset
    35
427
59627b533219 Merge ".fvwm" project into "skel" project.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 329
diff changeset
    36
OVERRIDDEN_ITEMS := \
458
1a122fdb2003 Disable anti-aliasing at all.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 449
diff changeset
    37
    .fvwm .xxkbrc .xmodmaprc .fonts.conf \
208
ba6619e43b22 Add '.dircolors' but don't enable it.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 201
diff changeset
    38
    .inputrc .minttyrc .Xdefaults .xinitrc .xserverrc .screenrc .dircolors \
480
4d0ff0dfdeb9 Rename '.bash_path' to '.bashenv'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 478
diff changeset
    39
    .bashrc .bashenv .bash_completion .zshrc .vimrc .ssh \
466
4c5042015cd7 Add Readline support for Guile.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 458
diff changeset
    40
    .pylintrc .pystartup \
4c5042015cd7 Add Readline support for Guile.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 458
diff changeset
    41
    .guile \
234
420c06da8fd1 Fix mail signature file name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 229
diff changeset
    42
    .signature .muttrc .tidy \
188
ff31eb2242c9 Add '.dictrc'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 173
diff changeset
    43
    .dictrc \
475
d94946441677 Add quilt rc file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 466
diff changeset
    44
    .hgrc .hgignore .hgstyle .bazaar .gitconfig .gitignore .cvsrc .quiltrc \
293
a9ac4e2551a0 Add '.glhackrc'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 292
diff changeset
    45
    .gnupg \
a9ac4e2551a0 Add '.glhackrc'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 292
diff changeset
    46
    .glhackrc
87
63b568f99e3c Install manually Midnight Commander ini files as for Cygwin and Debian
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 79
diff changeset
    47
MANUALINSTALL_ITEMS = .mc
117
02b91508db83 Add svn user config.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 116
diff changeset
    48
IFNONEXIST_ITEMS = .wgetrc .subversion
2
48e601bfbca6 Split files depend of OS. New install algorithm.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 0
diff changeset
    49
249
22e93995e88a Add docs targets.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 234
diff changeset
    50
RST_FILES = $(wildcard *.rst)
22e93995e88a Add docs targets.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 234
diff changeset
    51
HTML_FILES = $(RST_FILES:.rst=.html)
22e93995e88a Add docs targets.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 234
diff changeset
    52
22e93995e88a Add docs targets.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 234
diff changeset
    53
################################################################
22e93995e88a Add docs targets.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 234
diff changeset
    54
# Build targets.
22e93995e88a Add docs targets.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 234
diff changeset
    55
22e93995e88a Add docs targets.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 234
diff changeset
    56
.PHONY: all
22e93995e88a Add docs targets.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 234
diff changeset
    57
all:
22e93995e88a Add docs targets.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 234
diff changeset
    58
218
92582492ecde Add heading.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 217
diff changeset
    59
################################################################
92582492ecde Add heading.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 217
diff changeset
    60
# Install/uninstall targets.
92582492ecde Add heading.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 217
diff changeset
    61
13
9e590e7ef108 Adds .PHONY exactly before corresponding target.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 12
diff changeset
    62
.PHONY: install
0
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    63
install:
76
85dc8b07017a Allow installation of file which can be modified by user so you do not lose
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 75
diff changeset
    64
	for item in $(OVERRIDDEN_ITEMS); do \
21
a2b9b6ed57af Pattern like
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 20
diff changeset
    65
		if [ -f $$item ]; then \
a2b9b6ed57af Pattern like
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 20
diff changeset
    66
			install -m 640 $$item $(HOME)/$$item; \
a2b9b6ed57af Pattern like
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 20
diff changeset
    67
		fi; \
a2b9b6ed57af Pattern like
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 20
diff changeset
    68
		if [ -d $$item ]; then \
a2b9b6ed57af Pattern like
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 20
diff changeset
    69
			for file in `find $$item`; do \
a2b9b6ed57af Pattern like
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 20
diff changeset
    70
				if [ -d $$file ]; then \
77
46f5f10ec084 Don't check for existence of source file/dir as find return only existing ones.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 76
diff changeset
    71
					mkdir -p $(HOME)/$$file; \
46f5f10ec084 Don't check for existence of source file/dir as find return only existing ones.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 76
diff changeset
    72
					continue; \
21
a2b9b6ed57af Pattern like
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 20
diff changeset
    73
				fi; \
77
46f5f10ec084 Don't check for existence of source file/dir as find return only existing ones.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 76
diff changeset
    74
				install -m 640 $$file $(HOME)/$$file; \
21
a2b9b6ed57af Pattern like
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 20
diff changeset
    75
			done; \
a2b9b6ed57af Pattern like
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 20
diff changeset
    76
		fi; \
2
48e601bfbca6 Split files depend of OS. New install algorithm.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 0
diff changeset
    77
	done
478
2913a8a1a474 Add Fvwm Perl module to send signals to kbdd.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 475
diff changeset
    78
	chmod a+x ~/.fvwm/FvwmKbdd.pl
506
0ab510cb567d Add xdg to Fvwm menus converter.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 486
diff changeset
    79
	for f in /etc/xdg/menus/*.menu; do \
518
3dd43161fc0e Pass full path to menu file. Also pass Fvwm menu entry name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 506
diff changeset
    80
		[ -f "$$f" ] || continue; \
3dd43161fc0e Pass full path to menu file. Also pass Fvwm menu entry name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 506
diff changeset
    81
		fname=$${f%.menu}; \
3dd43161fc0e Pass full path to menu file. Also pass Fvwm menu entry name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 506
diff changeset
    82
		fname=$${fname##*/}; \
3dd43161fc0e Pass full path to menu file. Also pass Fvwm menu entry name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 506
diff changeset
    83
		python .fvwm/xdg2fvwm.py Menu-$$fname $$f >~/.fvwm/$$fname.hook; \
3dd43161fc0e Pass full path to menu file. Also pass Fvwm menu entry name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 506
diff changeset
    84
		echo "Read $$[HOME]/.fvwm/$$fname.hook" >>~/.fvwm/config; \
3dd43161fc0e Pass full path to menu file. Also pass Fvwm menu entry name.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 506
diff changeset
    85
		echo "AddToMenu MenuMyRoot $$fname Popup Menu-$$fname" >>~/.fvwm/config; \
506
0ab510cb567d Add xdg to Fvwm menus converter.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 486
diff changeset
    86
	done
486
8e5f69997c86 Create .screenshot directory.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 480
diff changeset
    87
	mkdir -p ~/.screenshot
76
85dc8b07017a Allow installation of file which can be modified by user so you do not lose
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 75
diff changeset
    88
	for item in $(IFNONEXIST_ITEMS); do \
85dc8b07017a Allow installation of file which can be modified by user so you do not lose
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 75
diff changeset
    89
		if [ -f $$item -a ! -f $(HOME)/$$item ]; then \
85dc8b07017a Allow installation of file which can be modified by user so you do not lose
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 75
diff changeset
    90
			install -m 640 $$item $(HOME)/$$item; \
85dc8b07017a Allow installation of file which can be modified by user so you do not lose
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 75
diff changeset
    91
		fi; \
85dc8b07017a Allow installation of file which can be modified by user so you do not lose
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 75
diff changeset
    92
		if [ -d $$item ]; then \
85dc8b07017a Allow installation of file which can be modified by user so you do not lose
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 75
diff changeset
    93
			for file in `find $$item`; do \
85dc8b07017a Allow installation of file which can be modified by user so you do not lose
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 75
diff changeset
    94
				if [ -d $$file ]; then \
77
46f5f10ec084 Don't check for existence of source file/dir as find return only existing ones.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 76
diff changeset
    95
					mkdir -p $(HOME)/$$file; \
46f5f10ec084 Don't check for existence of source file/dir as find return only existing ones.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 76
diff changeset
    96
					continue; \
76
85dc8b07017a Allow installation of file which can be modified by user so you do not lose
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 75
diff changeset
    97
				fi; \
77
46f5f10ec084 Don't check for existence of source file/dir as find return only existing ones.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 76
diff changeset
    98
				if [ ! -f $(HOME)/$$file ]; then \
76
85dc8b07017a Allow installation of file which can be modified by user so you do not lose
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 75
diff changeset
    99
					install -m 640 $$file $(HOME)/$$file; \
85dc8b07017a Allow installation of file which can be modified by user so you do not lose
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 75
diff changeset
   100
				fi; \
85dc8b07017a Allow installation of file which can be modified by user so you do not lose
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 75
diff changeset
   101
			done; \
85dc8b07017a Allow installation of file which can be modified by user so you do not lose
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 75
diff changeset
   102
		fi; \
85dc8b07017a Allow installation of file which can be modified by user so you do not lose
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 75
diff changeset
   103
	done
287
fa17ae49bfff Add execute permission to '.xinitrc' to use Bash script language instead of
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 286
diff changeset
   104
	chmod a+x ~/.xinitrc ~/.xserverrc
278
b6adff7cbcb1 Fix "ln: creating symbolic link `/home/user/.xsession': File exists".
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 275
diff changeset
   105
	rm -f ~/.xsession
275
2f79af90c708 ln -s ~/.xinitrc ~/.xsession
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 249
diff changeset
   106
	ln -s ~/.xinitrc ~/.xsession
449
63fe7a1ebae4 Load custom settings (user editable).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 443
diff changeset
   107
	rm -f ~/.bash_profile
63fe7a1ebae4 Load custom settings (user editable).
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 443
diff changeset
   108
	ln -s ~/.bashrc ~/.bash_profile
324
e30f2ac488aa Port MC config to 4.8.x version.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 312
diff changeset
   109
	v=`mc --version | sed 's|.*\([0-9]\+\.[0-9]\+\.[0-9]\+\)$$|\1|;q'`; \
e30f2ac488aa Port MC config to 4.8.x version.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 312
diff changeset
   110
	vmajor=$${v%%.*}; \
e30f2ac488aa Port MC config to 4.8.x version.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 312
diff changeset
   111
	vminor=$${v#*.}; \
e30f2ac488aa Port MC config to 4.8.x version.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 312
diff changeset
   112
	vminor=$${vminor%.*}; \
328
3e80c4af5ab6 Merge my config for mc.ext with system wide as only ~/.config/mc/mc.ext
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 324
diff changeset
   113
	umask 0117; \
324
e30f2ac488aa Port MC config to 4.8.x version.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 312
diff changeset
   114
	if [ $$vmajor -gt 4 -o '(' $$vmajor -eq 4 -a $$vminor -ge 8 ')' ]; then \
e30f2ac488aa Port MC config to 4.8.x version.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 312
diff changeset
   115
		mkdir -p $(HOME)/.config/mc $(HOME)/.local/share/mc/; \
e30f2ac488aa Port MC config to 4.8.x version.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 312
diff changeset
   116
		install -m 640 .local/share/mc/bashrc $(HOME)/.local/share/mc/; \
443
fa394c932c09 Fix path to 'mc.ext'.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 433
diff changeset
   117
		cat .config/mc/mc.ext /etc/mc/mc.ext > $(HOME)/.config/mc/mc.ext; \
324
e30f2ac488aa Port MC config to 4.8.x version.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 312
diff changeset
   118
	else \
e30f2ac488aa Port MC config to 4.8.x version.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 312
diff changeset
   119
		mkdir -p $(HOME)/.mc; \
e30f2ac488aa Port MC config to 4.8.x version.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 312
diff changeset
   120
		install -m 640 .local/share/mc/bashrc $(HOME)/.mc; \
329
5c0a22da5ef3 Remove Cygwin version of mc.ext as they is exactly same.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 328
diff changeset
   121
		install -m 640 .config/mc/mc.ext $(HOME)/.mc/bindings; \
324
e30f2ac488aa Port MC config to 4.8.x version.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 312
diff changeset
   122
	fi
295
7970a5d63d57 Add my magic file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 293
diff changeset
   123
	if command -v file 1>/dev/null; then \
7970a5d63d57 Add my magic file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 293
diff changeset
   124
		install -m 640 .magic $(HOME); \
7970a5d63d57 Add my magic file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 293
diff changeset
   125
		cd $(HOME); \
7970a5d63d57 Add my magic file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 293
diff changeset
   126
		file --compile -m .magic; \
7970a5d63d57 Add my magic file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 293
diff changeset
   127
	fi
0
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   128
13
9e590e7ef108 Adds .PHONY exactly before corresponding target.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 12
diff changeset
   129
.PHONY: uninstall
0
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   130
uninstall:
78
c014474497f0 Correct uninstall target.
user@gavenko
parents: 77
diff changeset
   131
	for item in $(OVERRIDDEN_ITEMS); do \
c014474497f0 Correct uninstall target.
user@gavenko
parents: 77
diff changeset
   132
		if [ -f $$item ]; then \
c014474497f0 Correct uninstall target.
user@gavenko
parents: 77
diff changeset
   133
			[ -f $(HOME)/$$file ] && rm -f $(HOME)/$$item; \
c014474497f0 Correct uninstall target.
user@gavenko
parents: 77
diff changeset
   134
		fi; \
c014474497f0 Correct uninstall target.
user@gavenko
parents: 77
diff changeset
   135
		if [ -d $$item ]; then \
c014474497f0 Correct uninstall target.
user@gavenko
parents: 77
diff changeset
   136
			for file in `find $$item -depth`; do \
c014474497f0 Correct uninstall target.
user@gavenko
parents: 77
diff changeset
   137
				if [ -d $$file ]; then \
c014474497f0 Correct uninstall target.
user@gavenko
parents: 77
diff changeset
   138
					rmdir $(HOME)/$$file || :; \
c014474497f0 Correct uninstall target.
user@gavenko
parents: 77
diff changeset
   139
					continue; \
c014474497f0 Correct uninstall target.
user@gavenko
parents: 77
diff changeset
   140
				fi; \
c014474497f0 Correct uninstall target.
user@gavenko
parents: 77
diff changeset
   141
				[ -f $(HOME)/$$file ] && rm $(HOME)/$$file; \
c014474497f0 Correct uninstall target.
user@gavenko
parents: 77
diff changeset
   142
			done; \
c014474497f0 Correct uninstall target.
user@gavenko
parents: 77
diff changeset
   143
		fi; \
c014474497f0 Correct uninstall target.
user@gavenko
parents: 77
diff changeset
   144
	done
87
63b568f99e3c Install manually Midnight Commander ini files as for Cygwin and Debian
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 79
diff changeset
   145
	rm -f $(HOME)/.mc/bashrc $(HOME)/.mc/ini $(HOME)/.mc/bindings
63b568f99e3c Install manually Midnight Commander ini files as for Cygwin and Debian
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 79
diff changeset
   146
	rmdir $(HOME)/.mc || :
0
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   147
218
92582492ecde Add heading.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 217
diff changeset
   148
################################################################
249
22e93995e88a Add docs targets.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 234
diff changeset
   149
# Docs targets.
22e93995e88a Add docs targets.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 234
diff changeset
   150
22e93995e88a Add docs targets.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 234
diff changeset
   151
.PHONY: html
22e93995e88a Add docs targets.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 234
diff changeset
   152
html: $(HTML_FILES)
22e93995e88a Add docs targets.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 234
diff changeset
   153
22e93995e88a Add docs targets.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 234
diff changeset
   154
# --stylesheet=rst.css
22e93995e88a Add docs targets.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 234
diff changeset
   155
$(HTML_FILES): %.html: %.rst
22e93995e88a Add docs targets.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 234
diff changeset
   156
	$(RST2HTML) $*.rst $@
22e93995e88a Add docs targets.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 234
diff changeset
   157
22e93995e88a Add docs targets.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 234
diff changeset
   158
################################################################
218
92582492ecde Add heading.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 217
diff changeset
   159
# Clean targets.
92582492ecde Add heading.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 217
diff changeset
   160
13
9e590e7ef108 Adds .PHONY exactly before corresponding target.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 12
diff changeset
   161
.PHONY: clean
0
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   162
clean:
249
22e93995e88a Add docs targets.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 234
diff changeset
   163
	rm -f $(HTML_FILES)
0
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   164
13
9e590e7ef108 Adds .PHONY exactly before corresponding target.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 12
diff changeset
   165
.PHONY: distclean
0
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
   166
distclean: clean
217
fdcf941346bb Print supported targets.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 216
diff changeset
   167
fdcf941346bb Print supported targets.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 216
diff changeset
   168
################################################################
fdcf941346bb Print supported targets.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 216
diff changeset
   169
# Helper target.
fdcf941346bb Print supported targets.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 216
diff changeset
   170
fdcf941346bb Print supported targets.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 216
diff changeset
   171
.PHONY: help
fdcf941346bb Print supported targets.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 216
diff changeset
   172
help:
fdcf941346bb Print supported targets.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 216
diff changeset
   173
	@echo
fdcf941346bb Print supported targets.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 216
diff changeset
   174
	@echo Supported targets:
fdcf941346bb Print supported targets.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 216
diff changeset
   175
	@sed -n -e '/^[[:alnum:]_-]*:/{s=^\(.*\):.*=  \1=;p;}' $(MAKEFILE_LIST)
fdcf941346bb Print supported targets.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 216
diff changeset
   176