On Thu, Aug 29, 2019 at 04:53:02PM +0800, zhe...@windriver.com wrote: > From: He Zhe <zhe...@windriver.com> > > libgcrypt may also be controlled by pkg-config, this patch adds pkg-config > handling for libgcrypt.
Where are you seeing pkg-config files for libgcrypt ? The upstream project has (frustratingly) been hostile to any proposal to add pkg-config support saying people should stick with their custom libgcrypt-config tool https://dev.gnupg.org/T2037 Even if this is something added by some distro downstream, what is the benefit in using it, compared with libgcrypt-confg which should already work & is portable. > > Signed-off-by: He Zhe <zhe...@windriver.com> > --- > configure | 48 ++++++++++++++++++++++++++++++++++++++++-------- > 1 file changed, 40 insertions(+), 8 deletions(-) > > diff --git a/configure b/configure > index e44e454..0f362a7 100755 > --- a/configure > +++ b/configure > @@ -2875,6 +2875,30 @@ has_libgcrypt() { > return 0 > } > > +has_libgcrypt_pkgconfig() { > + if ! has $pkg_config ; then > + return 1 > + fi > + > + if ! $pkg_config --list-all | grep libgcrypt > /dev/null 2>&1 ; then > + return 1 > + fi > + > + if test -n "$cross_prefix" ; then > + host=$($pkg_config --variable=host libgcrypt) > + if test "${host%-gnu}-" != "${cross_prefix%-gnu}" ; then > + print_error "host($host) does not match > cross_prefix($cross_prefix)" > + return 1 > + fi > + fi > + > + if ! $pkg_config --atleast-version=1.5.0 libgcrypt ; then > + print_error "libgcrypt version is $($pkg_config --modversion > libgcrypt)" > + return 1 > + fi > + > + return 0 > +} > > if test "$nettle" != "no"; then > pass="no" > @@ -2902,7 +2926,14 @@ fi > > if test "$gcrypt" != "no"; then > pass="no" > - if has_libgcrypt; then > + if has_libgcrypt_pkgconfig; then > + gcrypt_cflags=$($pkg_config --cflags libgcrypt) > + if test "$static" = "yes" ; then > + gcrypt_libs=$($pkg_config --libs --static libgcrypt) > + else > + gcrypt_libs=$($pkg_config --libs libgcrypt) > + fi > + elif has_libgcrypt; then > gcrypt_cflags=$(libgcrypt-config --cflags) > gcrypt_libs=$(libgcrypt-config --libs) > # Debian has removed -lgpg-error from libgcrypt-config > @@ -2912,15 +2943,16 @@ if test "$gcrypt" != "no"; then > then > gcrypt_libs="$gcrypt_libs -lgpg-error" > fi > + fi > > - # Link test to make sure the given libraries work (e.g for static). > - write_c_skeleton > - if compile_prog "" "$gcrypt_libs" ; then > - LIBS="$gcrypt_libs $LIBS" > - QEMU_CFLAGS="$QEMU_CFLAGS $gcrypt_cflags" > - pass="yes" > - fi > + # Link test to make sure the given libraries work (e.g for static). > + write_c_skeleton > + if compile_prog "" "$gcrypt_libs" ; then > + LIBS="$gcrypt_libs $LIBS" > + QEMU_CFLAGS="$QEMU_CFLAGS $gcrypt_cflags" > + pass="yes" > fi > + > if test "$pass" = "yes"; then > gcrypt="yes" > cat > $TMPC << EOF > -- > 2.7.4 > Regards, Daniel -- |: https://berrange.com -o- https://www.flickr.com/photos/dberrange :| |: https://libvirt.org -o- https://fstop138.berrange.com :| |: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|