make/*.mk: Add support for systemd service files

Signed-off-by: Jan Lindemann <jan@janware.com>
This commit is contained in:
Jan Lindemann 2014-06-26 10:15:58 +00:00
commit a28d8f5f30
5 changed files with 27 additions and 3 deletions

View file

@ -3,7 +3,8 @@ include $(MODDIR)/make/rules.mk
all: all:
clean: clean.conf clean: clean.conf
install: install_CFG install_SYSCFG install_LOGROT install_CRONTAB install_RSYSLOG install_APACHE_CONF install_SITE $(CONF_D) install: install_CFG install_SYSCFG install_LOGROT install_CRONTAB install_RSYSLOG \
install_APACHE_CONF install_SITE install_SYSTEMD $(CONF_D)
clean.conf: clean.conf:
rm -rf *.h *~ .*.swp *.done rm -rf *.h *~ .*.swp *.done

View file

@ -11,7 +11,8 @@ VAR_PREFIX ?= $(PREFIX)/var
DOC_PREFIX ?= $(PREFIX)/doc/$(PROJECT) DOC_PREFIX ?= $(PREFIX)/doc/$(PROJECT)
EXE_PREFIX ?= $(PREFIX) EXE_PREFIX ?= $(PREFIX)
INIT_PREFIX ?= $(EXE_PREFIX) INIT_PREFIX ?= $(EXE_PREFIX)
HTDOCS_PREFIX ?= $(ENV_PREFIX)$(HOME)/srv/www HTDOCS_PREFIX ?= $(PREFIX)/srv/www
SYSTEMD_DIR ?= $(PREFIX)/usr/lib/systemd/system
SYSCFG_DIR ?= $(PREFIX)/sysconfig SYSCFG_DIR ?= $(PREFIX)/sysconfig
CONFIG_DIR ?= $(ENV_PREFIX)$(HOME)/etc/$(FLAVOUR_PATH_PREFIX)$(PROJECT_DIRNAME) CONFIG_DIR ?= $(ENV_PREFIX)$(HOME)/etc/$(FLAVOUR_PATH_PREFIX)$(PROJECT_DIRNAME)
LD_CONF_DIR ?= $(ENV_PREFIX)$(HOME)/etc/ld.so.conf.d LD_CONF_DIR ?= $(ENV_PREFIX)$(HOME)/etc/ld.so.conf.d
@ -102,6 +103,12 @@ HTMLMODE ?= 644
HTMLDIROWNER ?= $(shell id -un) HTMLDIROWNER ?= $(shell id -un)
HTMLDIRGROUP ?= $(shell id -gn) HTMLDIRGROUP ?= $(shell id -gn)
HTMLDIRMODE ?= 755 HTMLDIRMODE ?= 755
SYSTEMDOWNER ?= $(shell id -un)
SYSTEMDGROUP ?= $(shell id -gn)
SYSTEMDMODE ?= 644
SYSTEMDDIROWNER ?= $(shell id -un)
SYSTEMDDIRGROUP ?= $(shell id -gn)
SYSTEMDDIRMODE ?= 755
LIBOWNER ?= $(EXEOWNER) LIBOWNER ?= $(EXEOWNER)
LIBGROUP ?= $(EXEGROUP) LIBGROUP ?= $(EXEGROUP)
LIBMODE ?= $(EXEMODE) LIBMODE ?= $(EXEMODE)

View file

@ -12,6 +12,7 @@ DOC_PREFIX ?= $(ENV_PREFIX)/usr/share/doc/packages/$(FLAVOUR_PREFIX)$(PROJ
EXE_PREFIX ?= $(PREFIX) EXE_PREFIX ?= $(PREFIX)
INIT_PREFIX ?= $(ENV_PREFIX)/etc$(FLAVOUR_PATH_SUFFIX) INIT_PREFIX ?= $(ENV_PREFIX)/etc$(FLAVOUR_PATH_SUFFIX)
HTDOCS_PREFIX ?= $(ENV_PREFIX)/srv/www HTDOCS_PREFIX ?= $(ENV_PREFIX)/srv/www
SYSTEMD_DIR ?= $(ENV_PREFIX)/usr/lib/systemd/system
SYSCFG_DIR ?= $(ENV_PREFIX)/etc/$(FLAVOUR_PATH_PREFIX)sysconfig SYSCFG_DIR ?= $(ENV_PREFIX)/etc/$(FLAVOUR_PATH_PREFIX)sysconfig
CONFIG_DIR ?= $(ENV_PREFIX)/etc/opt/$(FLAVOUR_PATH_PREFIX)$(PROJECT_DIRNAME) CONFIG_DIR ?= $(ENV_PREFIX)/etc/opt/$(FLAVOUR_PATH_PREFIX)$(PROJECT_DIRNAME)
LD_CONF_DIR ?= $(ENV_PREFIX)/etc/ld.so.conf.d LD_CONF_DIR ?= $(ENV_PREFIX)/etc/ld.so.conf.d
@ -38,7 +39,6 @@ HTML_PROJECT ?= $(PROJECT)
PROJECT_HTML_BASE_DIR ?= $(HTDOCS_PREFIX)/proj PROJECT_HTML_BASE_DIR ?= $(HTDOCS_PREFIX)/proj
PROJECT_HTMLDIR ?= $(PROJECT_HTML_BASE_DIR)/$(HTML_PROJECT) PROJECT_HTMLDIR ?= $(PROJECT_HTML_BASE_DIR)/$(HTML_PROJECT)
PROJECT_HTML_THEMES_DIR ?= $(PROJECT_HTML_BASE_DIR)/themes PROJECT_HTML_THEMES_DIR ?= $(PROJECT_HTML_BASE_DIR)/themes
PROJECT_HTMLDIR ?= $(PROJECT_HTML_BASE_DIR)/$(PROJECT)
SITE_MODULES_DIR ?= $(HTDOCS_PREFIX)/proj/site/modules.d SITE_MODULES_DIR ?= $(HTDOCS_PREFIX)/proj/site/modules.d
CGI_DIR ?= $(HTDOCS_PREFIX)/cgi-bin CGI_DIR ?= $(HTDOCS_PREFIX)/cgi-bin
@ -104,6 +104,12 @@ HTMLMODE ?= 644
HTMLDIROWNER ?= root HTMLDIROWNER ?= root
HTMLDIRGROUP ?= root HTMLDIRGROUP ?= root
HTMLDIRMODE ?= 755 HTMLDIRMODE ?= 755
SYSTEMDOWNER ?= root
SYSTEMDGROUP ?= root
SYSTEMDMODE ?= 644
SYSTEMDDIROWNER ?= root
SYSTEMDDIRGROUP ?= root
SYSTEMDDIRMODE ?= 755
LIBOWNER ?= $(EXEOWNER) LIBOWNER ?= $(EXEOWNER)
LIBGROUP ?= $(EXEGROUP) LIBGROUP ?= $(EXEGROUP)
LIBMODE ?= $(EXEMODE) LIBMODE ?= $(EXEMODE)

View file

@ -413,6 +413,13 @@ INSTALL_HTMLDIR = $(PROJECT_HTMLDIR)/$(HTML_SUBDIR)
endif endif
INSTALLED_HTML += $(addprefix $(INSTALL_HTMLDIR)/,$(LOCAL_HTML)) INSTALLED_HTML += $(addprefix $(INSTALL_HTMLDIR)/,$(LOCAL_HTML))
# -- SYSTEMD
INSTALLATION_FILE_TYPES += SYSTEMD
BUILD_SYSTEMDDIR = $(TOPDIR)/bin/systemd
LOCAL_SYSTEMD += $(filter-out $(DONT_INSTALL),$(wildcard *.service))
INSTALL_SYSTEMDDIR = $(SYSTEMD_DIR)
INSTALLED_SYSTEMD += $(addprefix $(INSTALL_SYSTEMDDIR)/,$(LOCAL_SYSTEMD))
# -- INIT # -- INIT
INSTALLATION_FILE_TYPES += INIT INSTALLATION_FILE_TYPES += INIT
BUILD_INITDIR = $(TOPDIR)/bin BUILD_INITDIR = $(TOPDIR)/bin

View file

@ -303,6 +303,9 @@ endef
$(INSTALL_INITDIR)/%: %.init | install_dir_INIT $(INSTALL_INITDIR)/%: %.init | install_dir_INIT
$(INSTALL) -o $(INITOWNER) -g $(INITGROUP) -m $(INITMODE) $< $@ $(INSTALL) -o $(INITOWNER) -g $(INITGROUP) -m $(INITMODE) $< $@
$(INSTALL_SYSTEMDDIR)/%.service: %.service | install_dir_SYSTEMD
$(INSTALL) -o $(SYSTEMDOWNER) -g $(SYSTEMDGROUP) -m $(SYSTEMDMODE) $< $@
$(INSTALL_LOGROTDIR)/%: %.logrotate | install_dir_LOGROT $(INSTALL_LOGROTDIR)/%: %.logrotate | install_dir_LOGROT
$(INSTALL) -o $(LOGROTOWNER) -g $(LOGROTGROUP) -m $(LOGROTMODE) $< $@ $(INSTALL) -o $(LOGROTOWNER) -g $(LOGROTGROUP) -m $(LOGROTMODE) $< $@