]> git.sur5r.net Git - bacula/bacula/blob - gui/baculum/Makefile
8207342f9e7fb623a937fae9b0d5635febf6f922
[bacula/bacula] / gui / baculum / Makefile
1 # Makefile to prepare runtime files (for rpm-based and deb-based distributions)
2 #
3 # usage: make DESTDIR=/some/runtime_dir
4
5 NAME = baculum
6 VERSION = 7.4.3
7 DEFTEMPLATE = rpm-template
8 DEFHTTPDNAME = httpd
9 DEFHTTPDSITECONF = conf.d
10 SAMPLETYPE ?= $(DEFTEMPLATE)
11 HTTPDNAME ?= $(DEFHTTPDNAME)
12 HTTPDSITECONF ?= $(DEFHTTPDSITECONF)
13 SYSUSRDIR = /usr
14 SYSCONFDIR = /etc
15 SYSVARDIR = /var
16 CONFDIR = $(SYSCONFDIR)/$(NAME)
17 HTTPDCONFDIR = $(SYSCONFDIR)/$(HTTPDNAME)/$(HTTPDSITECONF)
18 UNITDIR = $(SYSUSRDIR)/lib/systemd/system
19 LOCALEDIR = $(SYSUSRDIR)/share/locale
20 WWWDIR = $(SYSUSRDIR)/share/$(NAME)/htdocs
21 SELINUXDIR = $(SYSUSRDIR)/share/selinux/packages/$(NAME)
22 CACHEDIR = $(SYSVARDIR)/cache/$(NAME)
23 LOGDIR = $(SYSVARDIR)/log
24 HTTPDLOGS = $(LOGDIR)/$(HTTPDNAME)
25 LIGHTTPDLOGS = $(LOGDIR)/lighttpd
26
27 # Internal application directories
28 datadir = protected
29 frameworkdir = framework
30 themesdir = themes
31 cachedir = assets
32 configdir = Data
33 configcachedir = $(datadir)/runtime
34 samplesdir = examples/$(SAMPLETYPE)
35
36 datadirsrc = $(datadir)/Class \
37         $(datadir)/JavaScript \
38         $(datadir)/Layouts \
39         $(datadir)/Pages \
40         $(datadir)/Portlets
41
42 datafilesrc = $(datadir)/application.xml \
43         $(datadir)/Init.php
44
45 miscfilesrc = index.php \
46         AUTHORS \
47         INSTALL \
48         LICENSE \
49         README
50
51 localelang = en pl pt
52 localedirsrc = $(datadir)/Lang
53 localefile = messages.mo
54
55 excluded_dirs = '.*/\(3rdParty\|tinymce-405\).*'
56 excluded_files = '.*\(\.htaccess\)$$'
57
58
59 build: prepare_build prepare_data prepare_externals prepare_themes prepare_locale setup
60
61 prepare_build:
62         if [ -z "$(DESTDIR)" ]; then @echo "No DESTDIR given"; exit 1; fi
63         mkdir -p $(DESTDIR)$(SYSCONFDIR) \
64         $(DESTDIR)$(CONFDIR) \
65         $(DESTDIR)$(HTTPDCONFDIR) \
66         $(DESTDIR)$(UNITDIR) \
67         $(DESTDIR)$(WWWDIR) \
68         $(DESTDIR)$(SELINUXDIR) \
69         $(DESTDIR)$(CACHEDIR) \
70         $(DESTDIR)$(LOCALEDIR) \
71         $(DESTDIR)$(WWWDIR)/$(cachedir) \
72         $(DESTDIR)$(WWWDIR)/$(configcachedir)
73         mkdir -m 700 -p $(DESTDIR)$(CONFDIR)/$(configdir)-apache \
74         $(DESTDIR)$(CONFDIR)/$(configdir)-lighttpd
75
76 prepare_data: prepare_build
77         mkdir -p $(DESTDIR)$(WWWDIR)/$(datadir)
78         cp -ra $(datadirsrc) $(DESTDIR)$(WWWDIR)/$(datadir)
79         cp -a $(datafilesrc) $(DESTDIR)$(WWWDIR)/$(datadir)
80         cp -a $(miscfilesrc) $(DESTDIR)$(WWWDIR)/
81
82 prepare_externals: prepare_build
83         find $(frameworkdir) -type d ! -regex $(excluded_dirs) -exec mkdir -p $(DESTDIR)$(WWWDIR)/{} \;
84         find $(frameworkdir) -type f ! -regex $(excluded_files) -a ! -regex $(excluded_dirs) -exec cp -a {} $(DESTDIR)$(WWWDIR)/{} \;
85
86 prepare_themes: prepare_build
87         cp -ra $(themesdir) $(DESTDIR)$(WWWDIR)
88
89 prepare_locale: prepare_build
90         for lang in $(localelang) ; do \
91                 mkdir -p $(DESTDIR)$(LOCALEDIR)/$$lang/LC_MESSAGES ; \
92                 mkdir -p $(DESTDIR)$(WWWDIR)/$(localedirsrc)/$$lang ; \
93                 install -m 644 $(localedirsrc)/$$lang/$(localefile) $(DESTDIR)$(LOCALEDIR)/$$lang/LC_MESSAGES/$(NAME).mo ; \
94                 ln -s $(LOCALEDIR)/$$lang/LC_MESSAGES/$(NAME).mo $(DESTDIR)$(WWWDIR)/$(localedirsrc)/$$lang/$(localefile) ; \
95         done
96
97 prepare_samples:
98         install -m 640 $(samplesdir)/$(NAME)-lighttpd.conf $(DESTDIR)$(CONFDIR)
99         install -m 644 $(samplesdir)/$(NAME)-lighttpd.service $(DESTDIR)$(UNITDIR)
100         install -m 640 $(samplesdir)/$(NAME)-apache.conf $(DESTDIR)$(HTTPDCONFDIR)/$(NAME).conf
101         install -m 600 $(samplesdir)/$(NAME).users $(DESTDIR)$(CONFDIR)/$(configdir)-lighttpd
102         install -m 600 $(samplesdir)/$(NAME).users $(DESTDIR)$(CONFDIR)/$(configdir)-apache
103         # Default link apache config file
104         ln -s $(DESTDIR)$(CONFDIR)/$(configdir)-apache $(DESTDIR)$(WWWDIR)/$(datadir)/$(configdir)
105
106 setup: prepare_samples
107         sed -i -e "s#%DOCUMENTROOT#$(WWWDIR)#g" -e "s#%LOGDIR#$(HTTPDLOGS)#g" $(DESTDIR)$(HTTPDCONFDIR)/$(NAME).conf
108         sed -i -e "s#%DOCUMENTROOT#$(WWWDIR)#g" -e "s#%LOGDIR#$(LIGHTTPDLOGS)#g" $(DESTDIR)$(CONFDIR)/$(NAME)-lighttpd.conf
109         sed -i -e "s#%CONFDIR#$(CONFDIR)#g" $(DESTDIR)$(UNITDIR)/$(NAME)-lighttpd.service