1
# makefile for BlazeBlogger, a CMS without boundaries
2
# Copyright (C) 2009-2011 Jaromir Hradilek
3
4
# This program is  free software:  you can redistribute it and/or modify it
5
# under  the terms  of the  GNU General Public License  as published by the
6
# Free Software Foundation, version 3 of the License.
7
#
8
# This program  is  distributed  in the hope  that it will  be useful,  but
9
# WITHOUT  ANY WARRANTY;  without  even the implied  warranty of MERCHANTA-
10
# BILITY  or  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public
11
# License for more details.
12
#
13
# You should have received a copy of the  GNU General Public License  along
14
# with this program. If not, see <http://www.gnu.org/licenses/>.
15
16
# General information:
17
NAME    = blazeblogger
18
VERSION = 1.2.0
19
20
# General settings:
21
SHELL   = /bin/sh
22
INSTALL = /usr/bin/install -c
23
POD2MAN = /usr/bin/pod2man
24
MAN1    = src/blaze-add.1 src/blaze-config.1 src/blaze-edit.1 \
25
          src/blaze-init.1 src/blaze-list.1 src/blaze-log.1 \
26
          src/blaze-make.1 src/blaze-remove.1
27
SRCS    = src/blaze-add.pl src/blaze-config.pl src/blaze-edit.pl \
28
          src/blaze-init.pl src/blaze-list.pl src/blaze-log.pl \
29
          src/blaze-make.pl src/blaze-remove.pl
30
31
# Installation directories:
32
config  = /etc
33
prefix  = /usr/local
34
bindir  = $(prefix)/bin
35
datadir = $(prefix)/share/$(NAME)
36
docsdir = $(prefix)/share/doc/$(NAME)-$(VERSION)
37
man1dir = $(prefix)/share/man/man1
38
compdir = $(config)/bash_completion.d
39
40
# Make rules;  please do not edit these unless you really know what you are
41
# doing:
42
.PHONY: all install_bin install_conf install_data install_docs \
43
        install_man install uninstall clean
44
45
all: $(MAN1)
46
47
install_bin:
48
	@echo "Copying executables..."
49
	$(INSTALL) -d $(bindir)
50
	$(INSTALL) -m 755 src/blaze-add.pl $(bindir)/blaze-add
51
	$(INSTALL) -m 755 src/blaze-log.pl $(bindir)/blaze-log
52
	$(INSTALL) -m 755 src/blaze-edit.pl $(bindir)/blaze-edit
53
	$(INSTALL) -m 755 src/blaze-init.pl $(bindir)/blaze-init
54
	$(INSTALL) -m 755 src/blaze-list.pl $(bindir)/blaze-list
55
	$(INSTALL) -m 755 src/blaze-make.pl $(bindir)/blaze-make
56
	$(INSTALL) -m 755 src/blaze-config.pl $(bindir)/blaze-config
57
	$(INSTALL) -m 755 src/blaze-remove.pl $(bindir)/blaze-remove
58
	$(INSTALL) -m 755 unix/blaze.sh $(bindir)/blaze
59
60
install_conf:
61
	@echo "Copying bash completion..."
62
	$(INSTALL) -d $(compdir)
63
	$(INSTALL) -m 644 unix/bash_completion $(compdir)/blazeblogger
64
65
install_data:
66
	@echo "Copying translations..."
67
	$(INSTALL) -d $(datadir)/lang
68
	$(INSTALL) -m 644 lang/cs_CZ $(datadir)/lang
69
	$(INSTALL) -m 644 lang/de_DE $(datadir)/lang
70
	$(INSTALL) -m 644 lang/en_GB $(datadir)/lang
71
	$(INSTALL) -m 644 lang/en_US $(datadir)/lang
72
	$(INSTALL) -m 644 lang/es_ES $(datadir)/lang
73
	$(INSTALL) -m 644 lang/eu_ES $(datadir)/lang
74
	$(INSTALL) -m 644 lang/fr_FR $(datadir)/lang
75
	$(INSTALL) -m 644 lang/ja_JP $(datadir)/lang
76
	$(INSTALL) -m 644 lang/pt_BR $(datadir)/lang
77
	$(INSTALL) -m 644 lang/ru_RU $(datadir)/lang
78
	$(INSTALL) -m 644 lang/uk_UK $(datadir)/lang
79
80
install_docs:
81
	@echo "Copying documentation..."
82
	$(INSTALL) -d $(docsdir)
83
	$(INSTALL) -m 644 FDL $(docsdir)
84
	$(INSTALL) -m 644 TODO $(docsdir)
85
	$(INSTALL) -m 644 README $(docsdir)
86
	$(INSTALL) -m 644 AUTHORS $(docsdir)
87
	$(INSTALL) -m 644 COPYING $(docsdir)
88
	$(INSTALL) -m 644 INSTALL $(docsdir)
89
	-$(INSTALL) -m 644 ChangeLog $(docsdir)
90
91
install_man: $(MAN1)
92
	@echo "Copying manual pages..."
93
	$(INSTALL) -d $(man1dir)
94
	$(INSTALL) -m 644 src/blaze-add.1 $(man1dir)
95
	$(INSTALL) -m 644 src/blaze-log.1 $(man1dir)
96
	$(INSTALL) -m 644 src/blaze-edit.1 $(man1dir)
97
	$(INSTALL) -m 644 src/blaze-init.1 $(man1dir)
98
	$(INSTALL) -m 644 src/blaze-list.1 $(man1dir)
99
	$(INSTALL) -m 644 src/blaze-make.1 $(man1dir)
100
	$(INSTALL) -m 644 src/blaze-config.1 $(man1dir)
101
	$(INSTALL) -m 644 src/blaze-remove.1 $(man1dir)
102
	$(INSTALL) -m 644 unix/man/man1/blaze.1 $(man1dir)
103
104
install: install_bin install_conf install_data install_docs install_man
105
106
uninstall:
107
	@echo "Removing executables..."
108
	-rm -f $(bindir)/blaze-add
109
	-rm -f $(bindir)/blaze-log
110
	-rm -f $(bindir)/blaze-edit
111
	-rm -f $(bindir)/blaze-init
112
	-rm -f $(bindir)/blaze-list
113
	-rm -f $(bindir)/blaze-make
114
	-rm -f $(bindir)/blaze-config
115
	-rm -f $(bindir)/blaze-remove
116
	-rm -f $(bindir)/blaze
117
	-rmdir $(bindir)
118
	@echo "Removing bash completion..."
119
	-rm -f $(compdir)/blazeblogger
120
	-rmdir $(compdir)
121
	@echo "Removing translations..."
122
	-rm -f $(datadir)/lang/cs_CZ
123
	-rm -f $(datadir)/lang/de_DE
124
	-rm -f $(datadir)/lang/en_GB
125
	-rm -f $(datadir)/lang/en_US
126
	-rm -f $(datadir)/lang/es_ES
127
	-rm -f $(datadir)/lang/eu_ES
128
	-rm -f $(datadir)/lang/fr_FR
129
	-rm -f $(datadir)/lang/ja_JP
130
	-rm -f $(datadir)/lang/pt_BR
131
	-rm -f $(datadir)/lang/ru_RU
132
	-rm -f $(datadir)/lang/uk_UK
133
	-rmdir $(datadir)/lang $(datadir)
134
	@echo "Removing documentation..."
135
	-rm -f $(docsdir)/FDL
136
	-rm -f $(docsdir)/TODO
137
	-rm -f $(docsdir)/README
138
	-rm -f $(docsdir)/AUTHORS
139
	-rm -f $(docsdir)/COPYING
140
	-rm -f $(docsdir)/INSTALL
141
	-rm -f $(docsdir)/ChangeLog
142
	-rmdir $(docsdir)
143
	@echo "Removing manual pages..."
144
	-rm -f $(man1dir)/blaze-add.1
145
	-rm -f $(man1dir)/blaze-log.1
146
	-rm -f $(man1dir)/blaze-edit.1
147
	-rm -f $(man1dir)/blaze-init.1
148
	-rm -f $(man1dir)/blaze-list.1
149
	-rm -f $(man1dir)/blaze-make.1
150
	-rm -f $(man1dir)/blaze-config.1
151
	-rm -f $(man1dir)/blaze-remove.1
152
	-rm -f $(man1dir)/blaze.1
153
	-rmdir $(man1dir)
154
155
clean:
156
	-rm -f $(MAN1)
157
158
%.1: %.pl
159
	$(POD2MAN) --section=1 --release="Version $(VERSION)" \
160
	                       --center="BlazeBlogger Documentation" $^ $@