98 lines
2.6 KiB
Makefile
98 lines
2.6 KiB
Makefile
prefix=@prefix@
|
|
exec_prefix=@exec_prefix@
|
|
|
|
WWW_CONF_PATH=@www_conf_path@
|
|
INSTALL=@INSTALL@
|
|
INSTALL_OPTS=@INSTALL_OPTS@
|
|
INSTALL_OPTS_WEB=@INSTALL_OPTS_WEB@
|
|
|
|
default:
|
|
@echo "Icinga2Web make targets: "
|
|
@printf "%b" " -install:\t\t\tInstall the application and overwrite configs\n"
|
|
@printf "%b" " -update:\t\t\tInstall the application without touching the configs\n"
|
|
@printf "%b" " -install-apache-config:\tInstall the apache configuration\n"
|
|
|
|
#
|
|
# Installs the whole application w\o httpd configurations
|
|
#
|
|
install: install-static-files install-runtime-dirs
|
|
|
|
update: install-application
|
|
#
|
|
# Removes files created by ./configure
|
|
#
|
|
clean:
|
|
fi; \
|
|
if [ -f ./Makefile ];then \
|
|
rm ./Makefile; \
|
|
fi; \
|
|
if [ -f ./etc/apache/icinga2web.conf ];then \
|
|
rm ./etc/apache/icinga2web.conf; \
|
|
fi;
|
|
|
|
#
|
|
# Installs/copies all static files (executables, scripts, html, etc)
|
|
#
|
|
install-static-files: install-application copy-web-files-public copy-web-files-config copy-web-files-modules
|
|
$(INSTALL) -m 644 $(INSTALL_OPTS) "./public/.htaccess" $(DESTDIR)$(prefix)/public/.htaccess;
|
|
|
|
#
|
|
# Installs runtime directories like the application cache
|
|
#
|
|
install-runtime-dirs:
|
|
$(INSTALL) -m 755 $(INSTALL_OPTS_WEB) -d $(DESTDIR)$(prefix)/application/cache
|
|
|
|
#
|
|
# Copies the tests into the installation directory
|
|
#
|
|
install-tests: copy-folder-tests
|
|
|
|
#
|
|
# Install configurations for apache2
|
|
#
|
|
install-apache-config:
|
|
$(INSTALL) -m 644 $(INSTALL_OPTS) "./etc/apache/icinga2web.conf" $(WWW_CONF_PATH)/icinga2web.conf;
|
|
|
|
#
|
|
# Installs the php files to the prefix
|
|
#
|
|
install-application: copy-web-files-application copy-web-files-library
|
|
|
|
#
|
|
# Rule for coying folders and containing files (arbitary types), hidden files are excluded
|
|
#
|
|
copy-folder-%:
|
|
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(prefix)/$*
|
|
|
|
@dirs=`find ./$* -mindepth 1 -type d `;\
|
|
for dir in $$dirs; do \
|
|
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(prefix)/"$$dir"; \
|
|
done;
|
|
|
|
@files=`find ./$* -mindepth 1 -type f \
|
|
-and ! -name ".*"`; \
|
|
for file in $$files; do \
|
|
$(INSTALL) -m 644 $(INSTALL_OPTS) "$$file" $(DESTDIR)$(prefix)/"$$file"; \
|
|
done
|
|
|
|
|
|
#
|
|
# Rule for copying only php, *html, js and ini files. Hidden files are ignored
|
|
#
|
|
copy-web-files-%:
|
|
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(prefix)/$*
|
|
|
|
@dirs=`find ./$* -mindepth 1 -type d `;\
|
|
for dir in $$dirs; do \
|
|
$(INSTALL) -m 755 $(INSTALL_OPTS) -d $(DESTDIR)$(prefix)/"$$dir"; \
|
|
done;
|
|
|
|
@files=`find ./$* -mindepth 1 -type f \
|
|
-name "*.php" -or -name "*.ini" -or -name "*.*html" -or -name "*.js" \
|
|
-and ! -name ".*"`; \
|
|
for file in $$files; do \
|
|
$(INSTALL) -m 644 $(INSTALL_OPTS) "$$file" $(DESTDIR)$(prefix)/"$$file"; \
|
|
done
|
|
|
|
|