nfs-utils.mk 2.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. ################################################################################
  2. #
  3. # nfs-utils
  4. #
  5. ################################################################################
  6. NFS_UTILS_VERSION = 1.3.3
  7. NFS_UTILS_SOURCE = nfs-utils-$(NFS_UTILS_VERSION).tar.xz
  8. NFS_UTILS_SITE = https://www.kernel.org/pub/linux/utils/nfs-utils/$(NFS_UTILS_VERSION)
  9. NFS_UTILS_LICENSE = GPLv2+
  10. NFS_UTILS_LICENSE_FILES = COPYING
  11. NFS_UTILS_AUTORECONF = YES
  12. NFS_UTILS_DEPENDENCIES = host-pkgconf
  13. NFS_UTILS_CONF_ENV = knfsd_cv_bsd_signals=no
  14. NFS_UTILS_CONF_OPTS = \
  15. --disable-nfsv4 \
  16. --disable-nfsv41 \
  17. --disable-gss \
  18. --disable-uuid \
  19. --disable-ipv6 \
  20. --without-tcp-wrappers \
  21. --with-statedir=/run/nfs \
  22. --with-rpcgen=internal
  23. NFS_UTILS_TARGETS_$(BR2_PACKAGE_NFS_UTILS_RPCDEBUG) += usr/sbin/rpcdebug
  24. NFS_UTILS_TARGETS_$(BR2_PACKAGE_NFS_UTILS_RPC_LOCKD) += usr/sbin/rpc.lockd
  25. NFS_UTILS_TARGETS_$(BR2_PACKAGE_NFS_UTILS_RPC_RQUOTAD) += usr/sbin/rpc.rquotad
  26. ifeq ($(BR2_PACKAGE_LIBCAP),y)
  27. NFS_UTILS_CONF_OPTS += --enable-caps
  28. NFS_UTILS_DEPENDENCIES += libcap
  29. else
  30. NFS_UTILS_CONF_OPTS += --disable-caps
  31. endif
  32. ifeq ($(BR2_PACKAGE_LIBTIRPC),y)
  33. NFS_UTILS_CONF_OPTS += --enable-tirpc
  34. NFS_UTILS_DEPENDENCIES += libtirpc
  35. else
  36. NFS_UTILS_CONF_OPTS += --disable-tirpc
  37. endif
  38. define NFS_UTILS_INSTALL_FIXUP
  39. rm -f $(NFS_UTILS_TARGETS_)
  40. touch $(TARGET_DIR)/etc/exports
  41. $(INSTALL) -D -m 644 \
  42. $(@D)/utils/mount/nfsmount.conf $(TARGET_DIR)/etc/nfsmount.conf
  43. endef
  44. NFS_UTILS_POST_INSTALL_TARGET_HOOKS += NFS_UTILS_INSTALL_FIXUP
  45. ifeq ($(BR2_INIT_SYSTEMD),y)
  46. NFS_UTILS_CONF_OPTS += --with-systemd=/usr/lib/systemd/system
  47. NFS_UTILS_DEPENDENCIES += systemd
  48. else
  49. NFS_UTILS_CONF_OPTS += --without-systemd
  50. endif
  51. define NFS_UTILS_INSTALL_INIT_SYSV
  52. $(INSTALL) -D -m 0755 package/nfs-utils/S60nfs \
  53. $(TARGET_DIR)/etc/init.d/S60nfs
  54. endef
  55. define NFS_UTILS_INSTALL_INIT_SYSTEMD
  56. mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants
  57. ln -fs ../../../../usr/lib/systemd/system/nfs-server.service \
  58. $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/nfs-server.service
  59. ln -fs ../../../../usr/lib/systemd/system/nfs-client.target \
  60. $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/nfs-client.target
  61. mkdir -p $(TARGET_DIR)/etc/systemd/system/remote-fs.target.wants
  62. ln -fs ../../../../usr/lib/systemd/system/nfs-client.target \
  63. $(TARGET_DIR)/etc/systemd/system/remote-fs.target.wants/nfs-client.target
  64. $(INSTALL) -D -m 0755 package/nfs-utils/nfs-utils_env.sh \
  65. $(TARGET_DIR)/usr/lib/systemd/scripts/nfs-utils_env.sh
  66. $(INSTALL) -D -m 0644 package/nfs-utils/nfs-utils_tmpfiles.conf \
  67. $(TARGET_DIR)/usr/lib/tmpfiles.d/nfs-utils.conf
  68. endef
  69. define NFS_UTILS_REMOVE_NFSIOSTAT
  70. rm -f $(TARGET_DIR)/usr/sbin/nfsiostat
  71. endef
  72. # nfsiostat is interpreted python, so remove it unless it's in the target
  73. NFS_UTILS_POST_INSTALL_TARGET_HOOKS += $(if $(BR2_PACKAGE_PYTHON),,NFS_UTILS_REMOVE_NFSIOSTAT)
  74. $(eval $(autotools-package))