package/nfs-utils: always use libtirpc and enable IPv6

nfs-utils selects rpcbind, and rpcbind unconditionally selects
libtirpc. Therefore, nfs-utils will never be used with the C library
RPC implementation: libtirpc will always be used. Consequently, all
the conditional logic to use libtirpc only if available is useless,
and we can use libtirpc unconditionally.

As an added bonus, this means that we can enable IPv6, because
libtirpc provides an IPv6-compatible RPC implementation.

Fixes: https://bugs.busybox.net/show_bug.cgi?id=10806

Signed-off-by: Carlos Santos <unixmania@gmail.com>
[Thomas: rework commit log]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
This commit is contained in:
Carlos Santos 2019-09-11 17:33:44 -03:00 committed by Thomas Petazzoni
parent 3f08ffa423
commit 749334cb36
2 changed files with 4 additions and 10 deletions

View File

@ -6,7 +6,7 @@ config BR2_PACKAGE_NFS_UTILS
bool "nfs-utils"
depends on BR2_TOOLCHAIN_HAS_THREADS # libtirpc, rpcbind
depends on BR2_USE_MMU # fork()
select BR2_PACKAGE_LIBTIRPC if !BR2_TOOLCHAIN_HAS_NATIVE_RPC
select BR2_PACKAGE_LIBTIRPC # IPv6 requires libtirpc
select BR2_PACKAGE_RPCBIND # runtime
help
The NFS Linux kernel server.

View File

@ -10,7 +10,7 @@ NFS_UTILS_SITE = https://www.kernel.org/pub/linux/utils/nfs-utils/$(NFS_UTILS_VE
NFS_UTILS_LICENSE = GPL-2.0+
NFS_UTILS_LICENSE_FILES = COPYING
NFS_UTILS_AUTORECONF = YES
NFS_UTILS_DEPENDENCIES = host-pkgconf
NFS_UTILS_DEPENDENCIES = host-pkgconf libtirpc
NFS_UTILS_CONF_ENV = knfsd_cv_bsd_signals=no
@ -19,7 +19,8 @@ NFS_UTILS_CONF_OPTS = \
--disable-nfsv41 \
--disable-gss \
--disable-uuid \
--disable-ipv6 \
--enable-tirpc \
--enable-ipv6 \
--without-tcp-wrappers \
--with-statedir=/run/nfs \
--with-rpcgen=internal
@ -51,13 +52,6 @@ else
NFS_UTILS_CONF_OPTS += --disable-caps
endif
ifeq ($(BR2_PACKAGE_LIBTIRPC),y)
NFS_UTILS_CONF_OPTS += --enable-tirpc
NFS_UTILS_DEPENDENCIES += libtirpc
else
NFS_UTILS_CONF_OPTS += --disable-tirpc
endif
define NFS_UTILS_INSTALL_FIXUP
cd $(TARGET_DIR) && rm -f $(NFS_UTILS_TARGETS_)
touch $(TARGET_DIR)/etc/exports