]> git.sur5r.net Git - bacula/bacula/blobdiff - gui/baculum/Makefile
baculum: Enable Portuguese language support in makefile
[bacula/bacula] / gui / baculum / Makefile
index 4575a7baf40c1076b08ea8ce2d4e1b3ec96d4e67..5d1c72ef6c357d3afcf4aa6b8c952dd008088a88 100644 (file)
+# Makefile to prepare runtime files (for rpm-based and deb-based distributions)
+#
+# usage: make DESTDIR=/some/runtime_dir
+
 NAME = baculum
-VERSION = 7.0.6b
-SAMPLETYPE = rpm-template
+VERSION = 7.5.0
+DEFTEMPLATE = rpm-template
+DEFHTTPDNAME = httpd
+DEFHTTPDSITECONF = conf.d
+SAMPLETYPE ?= $(DEFTEMPLATE)
+HTTPDNAME ?= $(DEFHTTPDNAME)
+HTTPDSITECONF ?= $(DEFHTTPDSITECONF)
 SYSUSRDIR = /usr
 SYSCONFDIR = /etc
 SYSVARDIR = /var
 CONFDIR = $(SYSCONFDIR)/$(NAME)
-HTTPDCONFDIR = $(SYSCONFDIR)/httpd/conf.d
+HTTPDCONFDIR = $(SYSCONFDIR)/$(HTTPDNAME)/$(HTTPDSITECONF)
 UNITDIR = $(SYSUSRDIR)/lib/systemd/system
+LOCALEDIR = $(SYSUSRDIR)/share/locale
 WWWDIR = $(SYSUSRDIR)/share/$(NAME)/htdocs
-SELINUXDIR = $(SYSUSRDIR)/share/selinux/packages/$(NAME)
 CACHEDIR = $(SYSVARDIR)/cache/$(NAME)
 LOGDIR = $(SYSVARDIR)/log
-HTTPDLOGS = $(LOGDIR)/httpd
-LIGHTTPDLOGS = $(LOGDIR)/$(NAME)
+HTTPDLOGS = $(LOGDIR)/$(HTTPDNAME)
+LIGHTTPDLOGS = $(LOGDIR)/lighttpd
 
 # Internal application directories
 datadir = protected
+apidir = API
+webdir = Web
+commondir = Common
 frameworkdir = framework
 themesdir = themes
 cachedir = assets
-configdir = $(datadir)/Data
+configdir = Config
 configcachedir = $(datadir)/runtime
 samplesdir = examples/$(SAMPLETYPE)
 
-datadirsrc = $(datadir)/Class \
-    $(datadir)/JavaScript \
-    $(datadir)/Lang \
-    $(datadir)/Layouts \
-    $(datadir)/Pages \
-    $(datadir)/Portlets
+webdatadirsrc = $(datadir)/$(webdir)/Class \
+       $(datadir)/$(webdir)/Config \
+       $(datadir)/$(webdir)/JavaScript \
+       $(datadir)/$(webdir)/Data \
+       $(datadir)/$(webdir)/Layouts \
+       $(datadir)/$(webdir)/Logs \
+       $(datadir)/$(webdir)/Pages \
+       $(datadir)/$(webdir)/Portlets
+
+apidatadirsrc = $(datadir)/$(apidir)/Class \
+       $(datadir)/$(apidir)/Config \
+       $(datadir)/$(apidir)/JavaScript \
+       $(datadir)/$(apidir)/Layouts \
+       $(datadir)/$(apidir)/Logs \
+       $(datadir)/$(apidir)/Pages
+
+commondatadirsrc = $(datadir)/$(commondir)/Class \
+       $(datadir)/$(commondir)/Portlets
+
+datafilesrc = $(datadir)/application.xml
+
+webdatafilesrc = $(datadir)/$(webdir)/endpoints.xml \
+       $(datadir)/$(webdir)/Init.php
 
-datafilesrc = $(datadir)/.htaccess \
-    $(datadir)/application.xml
+apidatafilesrc = $(datadir)/$(apidir)/endpoints.xml
 
-miscfilesrc = .htaccess \
-    index.php \
-    AUTHORS \
-    INSTALL \
-    LICENSE \
-    README
+miscfilesrc = index.php \
+       AUTHORS \
+       INSTALL \
+       LICENSE \
+       README
 
-build: prepare_build prepare_data prepare_externals prepare_themes setup
+localeweblang = en pl pt ja
+localeapilang = en pl pt
+localewebdirsrc = $(datadir)/$(webdir)/Lang
+localeapidirsrc = $(datadir)/$(apidir)/Lang
+localefile = messages.mo
+
+excluded_dirs = '.*/\(3rdParty\|tinymce-405\).*'
+excluded_files = '.*\(\.htaccess\)$$'
+
+
+build: prepare_build prepare_data prepare_externals prepare_themes prepare_locale setup
 
 prepare_build:
+       if [ -z "$(DESTDIR)" ]; then @echo "No DESTDIR given"; exit 1; fi
        mkdir -p $(DESTDIR)$(SYSCONFDIR) \
        $(DESTDIR)$(CONFDIR) \
        $(DESTDIR)$(HTTPDCONFDIR) \
        $(DESTDIR)$(UNITDIR) \
        $(DESTDIR)$(WWWDIR) \
-       $(DESTDIR)$(SELINUXDIR) \
-       $(DESTDIR)$(LIGHTTPDLOGS) \
-       $(DESTDIR)$(CACHEDIR)
-       mkdir -p -m 700 $(DESTDIR)$(WWWDIR)/$(cachedir) \
-       $(DESTDIR)$(WWWDIR)/$(configdir) \
+       $(DESTDIR)$(CACHEDIR) \
+       $(DESTDIR)$(LOCALEDIR) \
+       $(DESTDIR)$(WWWDIR)/$(cachedir) \
        $(DESTDIR)$(WWWDIR)/$(configcachedir)
+       mkdir -m 700 -p $(DESTDIR)$(CONFDIR)/$(configdir)-api-apache \
+       $(DESTDIR)$(CONFDIR)/$(configdir)-api-lighttpd \
+       $(DESTDIR)$(CONFDIR)/$(configdir)-web-apache \
+       $(DESTDIR)$(CONFDIR)/$(configdir)-web-lighttpd
 
 prepare_data: prepare_build
-       mkdir -p $(DESTDIR)$(WWWDIR)/$(datadir)
-       cp -ra $(datadirsrc) $(DESTDIR)$(WWWDIR)/$(datadir)
+       mkdir -p $(DESTDIR)$(WWWDIR)/$(datadir) \
+       $(DESTDIR)$(WWWDIR)/$(datadir)/$(webdir) \
+       $(DESTDIR)$(WWWDIR)/$(datadir)/$(apidir) \
+       $(DESTDIR)$(WWWDIR)/$(datadir)/$(commondir)
+       cp -ra $(webdatadirsrc) $(DESTDIR)$(WWWDIR)/$(datadir)/$(webdir)
+       cp -a $(webdatafilesrc) $(DESTDIR)$(WWWDIR)/$(datadir)/$(webdir)
+       cp -ra $(apidatadirsrc) $(DESTDIR)$(WWWDIR)/$(datadir)/$(apidir)
+       cp -a $(apidatafilesrc) $(DESTDIR)$(WWWDIR)/$(datadir)/$(apidir)
+       cp -ra $(commondatadirsrc) $(DESTDIR)$(WWWDIR)/$(datadir)/$(commondir)
        cp -a $(datafilesrc) $(DESTDIR)$(WWWDIR)/$(datadir)
        cp -a $(miscfilesrc) $(DESTDIR)$(WWWDIR)/
 
 prepare_externals: prepare_build
-       cp -ra $(frameworkdir) $(DESTDIR)$(WWWDIR)
+       find $(frameworkdir) -type d ! -regex $(excluded_dirs) -exec mkdir -p $(DESTDIR)$(WWWDIR)/{} \;
+       find $(frameworkdir) -type f ! -regex $(excluded_files) -a ! -regex $(excluded_dirs) -exec cp -a {} $(DESTDIR)$(WWWDIR)/{} \;
 
 prepare_themes: prepare_build
        cp -ra $(themesdir) $(DESTDIR)$(WWWDIR)
 
+prepare_locale: prepare_build
+       for lang in $(localeweblang) ; do \
+               mkdir -p $(DESTDIR)$(LOCALEDIR)/$$lang/LC_MESSAGES ; \
+               mkdir -p $(DESTDIR)$(WWWDIR)/$(localewebdirsrc)/$$lang ; \
+               install -m 644 $(localewebdirsrc)/$$lang/$(localefile) $(DESTDIR)$(LOCALEDIR)/$$lang/LC_MESSAGES/$(NAME)-web.mo ; \
+               ln -s $(DESTDIR)$(LOCALEDIR)/$$lang/LC_MESSAGES/$(NAME)-web.mo $(DESTDIR)$(WWWDIR)/$(localewebdirsrc)/$$lang/$(localefile) ; \
+       done
+       for lang in $(localeapilang) ; do \
+               mkdir -p $(DESTDIR)$(LOCALEDIR)/$$lang/LC_MESSAGES ; \
+               mkdir -p $(DESTDIR)$(WWWDIR)/$(localeapidirsrc)/$$lang ; \
+               install -m 644 $(localeapidirsrc)/$$lang/$(localefile) $(DESTDIR)$(LOCALEDIR)/$$lang/LC_MESSAGES/$(NAME)-api.mo ; \
+               ln -s $(DESTDIR)$(LOCALEDIR)/$$lang/LC_MESSAGES/$(NAME)-api.mo $(DESTDIR)$(WWWDIR)/$(localeapidirsrc)/$$lang/$(localefile) ; \
+       done
+
 prepare_samples:
-       install -m 640 $(samplesdir)/$(NAME)-lighttpd.conf $(DESTDIR)$(CONFDIR)
-       install -m 644 $(samplesdir)/$(NAME)-lighttpd.service $(DESTDIR)$(UNITDIR)
-       install -m 640 $(samplesdir)/$(NAME)-apache.conf $(DESTDIR)$(HTTPDCONFDIR)/$(NAME).conf
-       install -m 600 $(samplesdir)/$(NAME).users $(DESTDIR)$(WWWDIR)/$(configdir)
+       install -m 640 $(samplesdir)/$(NAME)-api-lighttpd.conf $(DESTDIR)$(CONFDIR)
+       install -m 640 $(samplesdir)/$(NAME)-web-lighttpd.conf $(DESTDIR)$(CONFDIR)
+       install -m 644 $(samplesdir)/$(NAME)-api-lighttpd.service $(DESTDIR)$(UNITDIR)
+       install -m 644 $(samplesdir)/$(NAME)-web-lighttpd.service $(DESTDIR)$(UNITDIR)
+       install -m 640 $(samplesdir)/$(NAME)-api-apache.conf $(DESTDIR)$(HTTPDCONFDIR)/$(NAME)-api.conf
+       install -m 640 $(samplesdir)/$(NAME)-web-apache.conf $(DESTDIR)$(HTTPDCONFDIR)/$(NAME)-web.conf
+       install -m 600 $(samplesdir)/$(NAME).users $(DESTDIR)$(CONFDIR)/$(configdir)-api-lighttpd
+       install -m 600 $(samplesdir)/$(NAME).users $(DESTDIR)$(CONFDIR)/$(configdir)-api-apache
+       install -m 600 $(samplesdir)/$(NAME).users $(DESTDIR)$(CONFDIR)/$(configdir)-web-lighttpd
+       install -m 600 $(samplesdir)/$(NAME).users $(DESTDIR)$(CONFDIR)/$(configdir)-web-apache
+       # Default link apache config file
+       #ln -s $(DESTDIR)$(CONFDIR)/$(configdir)-api-apache $(DESTDIR)$(WWWDIR)/$(datadir)/$(configdir)
 
 setup: prepare_samples
-       sed -i -e "s#%DOCUMENTROOT#$(WWWDIR)#g" -e "s#%LOGDIR#$(HTTPDLOGS)#g" $(DESTDIR)$(HTTPDCONFDIR)/$(NAME).conf
-       sed -i -e "s#%DOCUMENTROOT#$(WWWDIR)#g" -e "s#%LOGDIR#$(LIGHTTPDLOGS)#g" $(DESTDIR)$(CONFDIR)/$(NAME)-lighttpd.conf
-       sed -i -e "s#%CONFDIR#$(CONFDIR)#g" $(DESTDIR)$(UNITDIR)/$(NAME)-lighttpd.service
+       sed -i -e "s#%DOCUMENTROOT#$(WWWDIR)#g" -e "s#%LOGDIR#$(HTTPDLOGS)#g" $(DESTDIR)$(HTTPDCONFDIR)/$(NAME)-api.conf
+       sed -i -e "s#%DOCUMENTROOT#$(WWWDIR)#g" -e "s#%LOGDIR#$(HTTPDLOGS)#g" $(DESTDIR)$(HTTPDCONFDIR)/$(NAME)-web.conf
+       sed -i -e "s#%DOCUMENTROOT#$(WWWDIR)#g" -e "s#%LOGDIR#$(LIGHTTPDLOGS)#g" $(DESTDIR)$(CONFDIR)/$(NAME)-api-lighttpd.conf
+       sed -i -e "s#%DOCUMENTROOT#$(WWWDIR)#g" -e "s#%LOGDIR#$(LIGHTTPDLOGS)#g" $(DESTDIR)$(CONFDIR)/$(NAME)-web-lighttpd.conf
+       sed -i -e "s#%CONFDIR#$(CONFDIR)#g" $(DESTDIR)$(UNITDIR)/$(NAME)-api-lighttpd.service
+       sed -i -e "s#%CONFDIR#$(CONFDIR)#g" $(DESTDIR)$(UNITDIR)/$(NAME)-web-lighttpd.service
+       find $(DESTDIR)/ -type f -name .gitignore -exec rm -f {} \;