[PATCH Libgpg-error] m4: Fix detection of gpgrt's libdir.

Jeffrey Walton noloader at gmail.com
Wed Sep 21 07:24:23 CEST 2022


On Tue, Sep 20, 2022 at 5:29 PM Damien Goutte-Gattat via Gnupg-devel
<gnupg-devel at gnupg.org> wrote:
>
> * src/gpg-error.m4 (GPGRT_CONFIG): Handle the case where none of the
> system lib directories contain a pkgconfig subdirectory.
> --
>
> When we look for gpgrt_libdir, there's a corner case if we had been able
> to obtain system libdirs (using `cc -print-search-dirs`) *but* none of
> those system libdirs happen to contain a valid pkgconfig subdirectory
> (which may be unlikely but can and does happen when cross-compiling).
>
> We do test for the case where we have not obtained any system libdir at
> all, in which case we fallback to `${gpgrt_prefix}/lib`
> (`possible_libdir1`), but we do not test if the list of libdir
> candidates is reduced to nothing after we have eliminated all the
> libdirs that do not contain a pkgconfig subdirectory.
>
> This patch adds a test for this precise case.
>
> Signed-off-by: Damien Goutte-Gattat <dgouttegattat at incenp.org>
> ---
>  src/gpg-error.m4 | 4 ++++
>  1 file changed, 4 insertions(+)
>
> diff --git a/src/gpg-error.m4 b/src/gpg-error.m4
> index 4b5cd40..a9b96af 100644
> --- a/src/gpg-error.m4
> +++ b/src/gpg-error.m4
> @@ -120,6 +120,10 @@ AC_DEFUN([AM_PATH_GPG_ERROR],
>          fi
>          if test -n "$gpgrt_libdir"; then break; fi
>        done
> +      if test -z "$libdir_candidates"; then
> +        # No valid pkgconfig dir in any of the system directories, fallback
> +        gpgrt_libdir=${possible_libdir1}
> +      fi
>      else
>        # When we cannot determine system libdir-format, use this:
>        gpgrt_libdir=${possible_libdir1}
> --
> 2.35.3

I think the portable test is:

    if test x"$libdir_candidates" = "x"; then

I don't recall why it is preferred.

Jeff



More information about the Gnupg-devel mailing list