From a8139d5442cc713d5b3da9fa630fa08459307b3f Mon Sep 17 00:00:00 2001 From: Eric Le Bihan Date: Mon, 23 Jun 2014 11:52:06 +0200 Subject: [PATCH] systemd: rework network/tty units installation The installation of the network.service and serial-getty.service unit files are now performed via the _INIT_SYSTEMD mechanism instead of an installation hook. Signed-off-by: Eric Le Bihan Reviewed-by: Arnout Vandecappelle (Essensium/Mind) Signed-off-by: Thomas Petazzoni --- package/systemd/systemd.mk | 35 +++++++++++++++++------------------ 1 file changed, 17 insertions(+), 18 deletions(-) diff --git a/package/systemd/systemd.mk b/package/systemd/systemd.mk index f3874dbfc..95e72148f 100644 --- a/package/systemd/systemd.mk +++ b/package/systemd/systemd.mk @@ -101,6 +101,13 @@ ifeq ($(BR2_PACKAGE_SYSTEMD_NETWORKD),y) SYSTEMD_CONF_OPT += --enable-networkd else SYSTEMD_CONF_OPT += --disable-networkd +define SYSTEMD_INSTALL_SERVICE_NETWORK + $(INSTALL) -D -m 644 package/systemd/network.service \ + $(TARGET_DIR)/etc/systemd/system/network.service + mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants + ln -fs ../network.service \ + $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/network.service +endef endif ifeq ($(BR2_PACKAGE_SYSTEMD_TIMESYNCD),y) @@ -131,11 +138,6 @@ define SYSTEMD_INSTALL_INIT_HOOK ln -fs ../../../lib/systemd/system/multi-user.target $(TARGET_DIR)/etc/systemd/system/default.target endef -define SYSTEMD_INSTALL_TTY_HOOK - rm -f $(TARGET_DIR)/etc/systemd/system/getty.target.wants/getty@tty1.service - ln -fs ../../../../lib/systemd/system/serial-getty@.service $(TARGET_DIR)/etc/systemd/system/getty.target.wants/serial-getty@$(BR2_TARGET_GENERIC_GETTY_PORT).service -endef - define SYSTEMD_INSTALL_MACHINEID_HOOK touch $(TARGET_DIR)/etc/machine-id endef @@ -145,28 +147,25 @@ define SYSTEMD_SANITIZE_PATH_IN_UNITS -exec $(SED) 's,$(HOST_DIR),,g' {} \; endef -define SYSTEMD_INSTALL_NETWORK_HOOK - $(INSTALL) -D -m 644 package/systemd/network.service \ - $(TARGET_DIR)/etc/systemd/system/network.service - mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants - ln -fs ../network.service \ - $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/network.service -endef - SYSTEMD_POST_INSTALL_TARGET_HOOKS += \ SYSTEMD_INSTALL_INIT_HOOK \ - SYSTEMD_INSTALL_TTY_HOOK \ SYSTEMD_INSTALL_MACHINEID_HOOK \ SYSTEMD_SANITIZE_PATH_IN_UNITS -ifeq ($(BR2_PACKAGE_SYSTEMD_NETWORKD),) -SYSTEMD_POST_INSTALL_TARGET_HOOKS += SYSTEMD_INSTALL_NETWORK_HOOK -endif - define SYSTEMD_USERS systemd-journal -1 systemd-journal -1 * /var/log/journal - - Journal systemd-journal-gateway -1 systemd-journal-gateway -1 * /var/log/journal - - Journal Gateway $(SYSTEMD_USER_TIMESYNC) endef +define SYSTEMD_INSTALL_SERVICE_TTY + rm -f $(TARGET_DIR)/etc/systemd/system/getty.target.wants/getty@tty1.service + ln -fs ../../../../lib/systemd/system/serial-getty@.service $(TARGET_DIR)/etc/systemd/system/getty.target.wants/serial-getty@$(BR2_TARGET_GENERIC_GETTY_PORT).service +endef + +define SYSTEMD_INSTALL_INIT_SYSTEMD + $(SYSTEMD_INSTALL_SERVICE_TTY) + $(SYSTEMD_INSTALL_SERVICE_NETWORK) +endef + $(eval $(autotools-package))