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