From: Aurélien Chabot Date: Sat, 3 Oct 2015 19:29:09 +0000 (+0200) Subject: nfs-utils: systemd support X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=9b19438c2c0a89fe4da757571604a7ca2fe0663b;p=buildroot.git nfs-utils: systemd support nfs-utils has been patched to install only the needed systemd unit files supported. Also tmpfiles was needed because the folder /run/nfs is a tmpfs and nfs-utils need some files to be there to work correctly. Signed-off-by: Aurélien Chabot [Maxime: Remove patches included originally in the patch as they have have been merged upstream in v1.3.3] Signed-off-by Maxime Hadjinlian [Thomas: - add comment in nfs-utils_env.sh to explain why an empty script is needed. - remove incorrect indentation.] Signed-off-by: Thomas Petazzoni --- diff --git a/package/nfs-utils/nfs-utils.mk b/package/nfs-utils/nfs-utils.mk index 8c06d8eab5..30f12fd445 100644 --- a/package/nfs-utils/nfs-utils.mk +++ b/package/nfs-utils/nfs-utils.mk @@ -41,11 +41,38 @@ define NFS_UTILS_INSTALL_FIXUP endef NFS_UTILS_POST_INSTALL_TARGET_HOOKS += NFS_UTILS_INSTALL_FIXUP +ifeq ($(BR2_INIT_SYSTEMD),y) +NFS_UTILS_CONF_OPTS += --with-systemd=/usr/lib/systemd/system +NFS_UTILS_DEPENDENCIES += systemd +else +NFS_UTILS_CONF_OPTS += --without-systemd +endif + define NFS_UTILS_INSTALL_INIT_SYSV $(INSTALL) -D -m 0755 package/nfs-utils/S60nfs \ $(TARGET_DIR)/etc/init.d/S60nfs endef +define NFS_UTILS_INSTALL_INIT_SYSTEMD + mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants + + ln -fs ../../../../usr/lib/systemd/system/nfs-server.service \ + $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/nfs-server.service + ln -fs ../../../../usr/lib/systemd/system/nfs-client.target \ + $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/nfs-client.target + + mkdir -p $(TARGET_DIR)/etc/systemd/system/remote-fs.target.wants + + ln -fs ../../../../usr/lib/systemd/system/nfs-client.target \ + $(TARGET_DIR)/etc/systemd/system/remote-fs.target.wants/nfs-client.target + + $(INSTALL) -D -m 0755 package/nfs-utils/nfs-utils_env.sh \ + $(TARGET_DIR)/usr/lib/systemd/scripts/nfs-utils_env.sh + + $(INSTALL) -D -m 0644 package/nfs-utils/nfs-utils_tmpfiles.conf \ + $(TARGET_DIR)/usr/lib/tmpfiles.d/nfs-utils.conf +endef + define NFS_UTILS_REMOVE_NFSIOSTAT rm -f $(TARGET_DIR)/usr/sbin/nfsiostat endef diff --git a/package/nfs-utils/nfs-utils_env.sh b/package/nfs-utils/nfs-utils_env.sh new file mode 100755 index 0000000000..82284cef93 --- /dev/null +++ b/package/nfs-utils/nfs-utils_env.sh @@ -0,0 +1,3 @@ +#!/bin/sh +# This script is empty, it simply needs to exist to make the +# nfs-config.service happy. diff --git a/package/nfs-utils/nfs-utils_tmpfiles.conf b/package/nfs-utils/nfs-utils_tmpfiles.conf new file mode 100644 index 0000000000..f87939fe2d --- /dev/null +++ b/package/nfs-utils/nfs-utils_tmpfiles.conf @@ -0,0 +1,4 @@ +d /run/nfs/sm 0700 root root - +d /run/nfs/sm.bak 0700 root root - +f /run/nfs/rmtab 0644 root root - +f /run/nfs/etab 0644 root root -