diff mbox series

meson.build: fix libgcrypt detection on system without libgcrypt-config

Message ID 20240706201226.46089-1-ziyao@disroot.org
State New
Headers show
Series meson.build: fix libgcrypt detection on system without libgcrypt-config | expand

Commit Message

Yao Zi July 6, 2024, 8:12 p.m. UTC
libgcrypt starts providing correct pkg-config configuration and dropping
libgcrypt-config since 1.11.0. So use auto method for detection of
libgcrypt, in which meson will try both pkg-config and libgcrypt-config.

This fixes build failure when libgcrypt is enabled on a system without
ligcrypt-config. Auto method for libgcrypt is supported by meson since
0.49.0, which is higher than the version qemu requires.

Signed-off-by: Yao Zi <ziyao@disroot.org>
---
 meson.build | 1 -
 1 file changed, 1 deletion(-)

Comments

Daniel P. Berrangé July 12, 2024, 1:52 p.m. UTC | #1
On Sat, Jul 06, 2024 at 08:12:26PM +0000, Yao Zi wrote:
> libgcrypt starts providing correct pkg-config configuration and dropping
> libgcrypt-config since 1.11.0. So use auto method for detection of
> libgcrypt, in which meson will try both pkg-config and libgcrypt-config.

The pkg-config file seems to be provided since 1.9 in fact.

Where do you see that ligcrypt-config is dropped ?  It still
exists in the gcrypt  git repo and in Fedora 1.11.0 packages.

> 
> This fixes build failure when libgcrypt is enabled on a system without
> ligcrypt-config. Auto method for libgcrypt is supported by meson since
> 0.49.0, which is higher than the version qemu requires.
> 
> Signed-off-by: Yao Zi <ziyao@disroot.org>
> ---
>  meson.build | 1 -
>  1 file changed, 1 deletion(-)
> 
> diff --git a/meson.build b/meson.build
> index 6a93da48e1..1b71824548 100644
> --- a/meson.build
> +++ b/meson.build
> @@ -1695,7 +1695,6 @@ endif
>  if not gnutls_crypto.found()
>    if (not get_option('gcrypt').auto() or have_system) and not get_option('nettle').enabled()
>      gcrypt = dependency('libgcrypt', version: '>=1.8',
> -                        method: 'config-tool',
>                          required: get_option('gcrypt'))
>      # Debian has removed -lgpg-error from libgcrypt-config
>      # as it "spreads unnecessary dependencies" which in

Despite the misleading commit message the change is good and I'll
queue it.

Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>


With regards,
Daniel
Yao Zi July 15, 2024, 1:21 p.m. UTC | #2
On Fri, Jul 12, 2024 at 02:52:02PM +0100, Daniel P. Berrangé wrote:
> On Sat, Jul 06, 2024 at 08:12:26PM +0000, Yao Zi wrote:
> > libgcrypt starts providing correct pkg-config configuration and dropping
> > libgcrypt-config since 1.11.0. So use auto method for detection of
> > libgcrypt, in which meson will try both pkg-config and libgcrypt-config.
> 
> The pkg-config file seems to be provided since 1.9 in fact.
> 
> Where do you see that ligcrypt-config is dropped ?

Commit 2db5b5e9
("build: When no gpg-error-config, not install libgcrypt-config")[1] in
libgcrypt says that

> When system will migrate use of gpgrt-config and removal of
> gpg-error-config, libgcrypt-config will not be installed

1.11.0 is the first release containing this commit.

> It still
> exists in the gcrypt  git repo and in Fedora 1.11.0 packages.

It does not on Arch Linux. For Fedora, I have no idea.

[1]: https://github.com/gpg/libgcrypt/commit/2db5b5e995c21c5bd9cd193c2ed1109ba9b1a440
[2]: https://archlinux.org/packages/core/x86_64/libgcrypt/

Best regards,
Yao Zi
diff mbox series

Patch

diff --git a/meson.build b/meson.build
index 6a93da48e1..1b71824548 100644
--- a/meson.build
+++ b/meson.build
@@ -1695,7 +1695,6 @@  endif
 if not gnutls_crypto.found()
   if (not get_option('gcrypt').auto() or have_system) and not get_option('nettle').enabled()
     gcrypt = dependency('libgcrypt', version: '>=1.8',
-                        method: 'config-tool',
                         required: get_option('gcrypt'))
     # Debian has removed -lgpg-error from libgcrypt-config
     # as it "spreads unnecessary dependencies" which in