[Buildroot] [PATCH v4] package/nfs-utils: enable IPv6 if libtirpc is selected

Carlos Santos unixmania at gmail.com
Tue Sep 10 13:07:53 UTC 2019


Answering from my phone and too tired to fight. 🙄

Carlos Santos <unixmania at gmail.com>

Em 10 de set de 2019, à(s) 09:23, Arnout Vandecappelle <arnout at mind.be> escreveu:

> Oh dear, we're running in circles here...
> 
> 
>> On 10/09/2019 12:59, unixmania at gmail.com wrote:
>> From: Carlos Santos <unixmania at gmail.com>
>> 
>> IPv6 support requires libtirpc, so enable it if libtirpc is selected.
>> 
>> In practice this always enables IPv6, since nfs-utils needs rpcbind,
>> which in its turn selects libtirpc.
> 
> So somehow, Thomas and I completely missed this bit...
> 
>> 
>> Fixes: https://bugs.busybox.net/show_bug.cgi?id=10806
>> 
>> Signed-off-by: Carlos Santos <unixmania at gmail.com>
>> ---
>> CC: nathan.renniewaldock at gmail.com
>> CC: Peter Seiderer <ps.report at gmx.net>
>> CC: Arnout Vandecappelle <arnout at mind.be>
>> CC: Thomas Petazzoni <thomas.petazzoni at bootlin.com>
>> --
>> Changes v1->v2
>> - Select LIBTIRPC unconditionally.
>> Changes v2->v3
>> - Do not select libtirpc inconditionally
>> Changes v3->v4
>> - Restore v1 commit message
>> - Add comment about selecting libtirpc to Config.in
>> 
>> So we're back to v1 with a lot of discussion in between. I want the bike
>> shed purple.
>> ---
>> package/nfs-utils/Config.in    | 3 +++
>> package/nfs-utils/nfs-utils.mk | 6 +++---
>> 2 files changed, 6 insertions(+), 3 deletions(-)
>> 
>> diff --git a/package/nfs-utils/Config.in b/package/nfs-utils/Config.in
>> index 04ea4db3ed..966fe1406a 100644
>> --- a/package/nfs-utils/Config.in
>> +++ b/package/nfs-utils/Config.in
>> @@ -6,11 +6,14 @@ config BR2_PACKAGE_NFS_UTILS
>>    bool "nfs-utils"
>>    depends on BR2_TOOLCHAIN_HAS_THREADS # libtirpc, rpcbind
>>    depends on BR2_USE_MMU # fork()
>> +    # Just in case, since rpcbind already selects libtirpc
>>    select BR2_PACKAGE_LIBTIRPC if !BR2_TOOLCHAIN_HAS_NATIVE_RPC
> 
> But this doesn't really make sense then... We can just put
> 
>    select BR2_PACKAGE_LIBTIRPC
> 
> Even the comment above is not really needed - we can get that from the git log.
> 
>>    select BR2_PACKAGE_RPCBIND # runtime
>>    help
>>      The NFS Linux kernel server.
>> 
>> +      For IPv6 support, ensure that libtirpc is selected too.
>> +
>>      http://linux-nfs.org/
>> 
>> if BR2_PACKAGE_NFS_UTILS
>> diff --git a/package/nfs-utils/nfs-utils.mk b/package/nfs-utils/nfs-utils.mk
>> index dc20942f71..3d5f5412cf 100644
>> --- a/package/nfs-utils/nfs-utils.mk
>> +++ b/package/nfs-utils/nfs-utils.mk
>> @@ -19,7 +19,6 @@ NFS_UTILS_CONF_OPTS = \
>>    --disable-nfsv41 \
>>    --disable-gss \
>>    --disable-uuid \
>> -    --disable-ipv6 \
>>    --without-tcp-wrappers \
>>    --with-statedir=/run/nfs \
>>    --with-rpcgen=internal
>> @@ -51,11 +50,12 @@ else
>> NFS_UTILS_CONF_OPTS += --disable-caps
>> endif
>> 
>> +# IPv6 requires libtirpc
>> ifeq ($(BR2_PACKAGE_LIBTIRPC),y)
>> -NFS_UTILS_CONF_OPTS += --enable-tirpc
>> +NFS_UTILS_CONF_OPTS += --enable-tirpc --enable-ipv6
>> NFS_UTILS_DEPENDENCIES += libtirpc
> 
> Due to the select, all of this becomes unconditional.
> 
> In other words, we should:
> 
> - select libtirpc unconditionally;
> - add libtirpc to _DEPENDENCIES unconditionally;
> - add --enable-tirpc --enable-ipv6 to CONF_OPTS unconditionally;
> - leave the help text unchanged since libtirpc is anyway selected;
> - make it clear in the commit message that libtirpc is anyway selected by
> rpcbind, so we can just as well select it unconditionally in nfs-utils.
> 
> Again, I'm very sorry that it takes us five iterations and several months to
> come to this conclusion...
> 
> Regards,
> Arnout
> 
> 
>> else
>> -NFS_UTILS_CONF_OPTS += --disable-tirpc
>> +NFS_UTILS_CONF_OPTS += --disable-tirpc --disable-ipv6
>> endif
>> 
>> define NFS_UTILS_INSTALL_FIXUP
>> 



More information about the buildroot mailing list