On 10/29/18 4:46 AM, Luca Boccassi wrote:
> If libc does not provide strlcpy check for libbsd with pkg-config to
> avoid relying on inline version.
> 
> Signed-off-by: Luca Boccassi <bl...@debian.org>
> ---
> This allows distro maintainers to be able to choose to reduce
> duplication and let this code be maintained in one place, in the
> external library.
> 
>  configure | 12 ++++++++++--
>  1 file changed, 10 insertions(+), 2 deletions(-)
> 
> diff --git a/configure b/configure
> index 744d6282..1dd9ce84 100755
> --- a/configure
> +++ b/configure
> @@ -330,8 +330,16 @@ EOF
>      then
>       echo "no"
>      else
> -     echo 'CFLAGS += -DNEED_STRLCPY' >>$CONFIG
> -     echo "yes"
> +     if ${PKG_CONFIG} libbsd --exists
> +     then
> +             echo 'CFLAGS += -include' `${PKG_CONFIG} libbsd 
> --variable=includedir`'/bsd/string.h' \
> +                     `${PKG_CONFIG} libbsd --cflags` >>$CONFIG
> +             echo 'LDLIBS +=' `${PKG_CONFIG} libbsd --libs` >> $CONFIG
> +             echo "no"
> +     else
> +             echo 'CFLAGS += -DNEED_STRLCPY' >>$CONFIG
> +             echo "yes"
> +     fi
>      fi
>      rm -f $TMPDIR/strtest.c $TMPDIR/strtest
>  }
> 

How long has libbsd had an implementation of strlcpy? Would be safer to
have a compile test to verify libbsd has it.

Reply via email to