qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH] configure: For libgcrypt if pkg-config is available use it
@ 2017-01-04 14:56 Nathan Rossi
  2017-01-04 15:27 ` Daniel P. Berrange
  0 siblings, 1 reply; 3+ messages in thread
From: Nathan Rossi @ 2017-01-04 14:56 UTC (permalink / raw)
  To: qemu-devel; +Cc: Nathan Rossi, Alistair Francis

If libgcrypt info is available with pkg-config use it over using the
libgcrypt-config. pkg-config is preferred due to is compatibility with
cross-compilation (where you cannot execute the targets version of
libgcrypt-config).

This change makes configure check for libgcrypt in pkg-config first,
then falling back to use libgcrypt-config if available. This follows a
similar process to how libsdl is handled.

Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
---
 configure | 14 +++++++++++---
 1 file changed, 11 insertions(+), 3 deletions(-)

diff --git a/configure b/configure
index 218df87d21..6558121de8 100755
--- a/configure
+++ b/configure
@@ -2386,9 +2386,17 @@ has_libgcrypt_config() {
 }
 
 if test "$gcrypt" != "no"; then
-    if has_libgcrypt_config; then
-        gcrypt_cflags=$(libgcrypt-config --cflags)
-        gcrypt_libs=$(libgcrypt-config --libs)
+    gcrypt_config=""
+    # If libgcrypt in pkg-config use it over using libgcrypt-config
+    if $pkg_config --exists "libgcrypt"; then
+      gcrypt_config="$pkg_config libgcrypt"
+    elif has_libgcrypt_config; then
+      gcrypt_config="libgcrypt-config"
+    fi
+
+    if test -n "$gcrypt_config"; then
+        gcrypt_cflags=$($gcrypt_config --cflags)
+        gcrypt_libs=$($gcrypt_config --libs)
         # Debian has remove -lgpg-error from libgcrypt-config
         # as it "spreads unnecessary dependencies" which in
         # turn breaks static builds...
-- 
2.11.0

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [Qemu-devel] [PATCH] configure: For libgcrypt if pkg-config is available use it
  2017-01-04 14:56 [Qemu-devel] [PATCH] configure: For libgcrypt if pkg-config is available use it Nathan Rossi
@ 2017-01-04 15:27 ` Daniel P. Berrange
  2017-01-04 16:01   ` Nathan Rossi
  0 siblings, 1 reply; 3+ messages in thread
From: Daniel P. Berrange @ 2017-01-04 15:27 UTC (permalink / raw)
  To: Nathan Rossi; +Cc: qemu-devel, Alistair Francis

On Thu, Jan 05, 2017 at 12:56:52AM +1000, Nathan Rossi wrote:
> If libgcrypt info is available with pkg-config use it over using the
> libgcrypt-config. pkg-config is preferred due to is compatibility with
> cross-compilation (where you cannot execute the targets version of
> libgcrypt-config).

It can be made to work, but you need to modify $PATH to ensure it finds
the build target libgcrypt-config first.

eg on Fedora you'd do this with mingw32

   PATH=/usr/i686-w64-mingw32/sys-root/mingw/bin:$PATH ./configure ...

> This change makes configure check for libgcrypt in pkg-config first,
> then falling back to use libgcrypt-config if available. This follows a
> similar process to how libsdl is handled.

AFAIK, no version of libgcrypt has ever shipped a pkg-config file. Their
maintainers have explicitly rejected patches adding that, ironically
because they claim pkg-config doesn't handle cross-compilation and
libgcrypt-config does :-)

https://lists.gnupg.org/pipermail/gcrypt-devel/2007-February/001109.html
https://lists.gnupg.org/pipermail/gcrypt-devel/2015-September/003569.html


So overall, I don't think this patch is needed/desirable for QEMU.

Regards,
Daniel
-- 
|: http://berrange.com      -o-    http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org              -o-             http://virt-manager.org :|
|: http://entangle-photo.org       -o-    http://search.cpan.org/~danberr/ :|

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [Qemu-devel] [PATCH] configure: For libgcrypt if pkg-config is available use it
  2017-01-04 15:27 ` Daniel P. Berrange
@ 2017-01-04 16:01   ` Nathan Rossi
  0 siblings, 0 replies; 3+ messages in thread
From: Nathan Rossi @ 2017-01-04 16:01 UTC (permalink / raw)
  To: Daniel P. Berrange; +Cc: qemu-devel, Alistair Francis

On 5 January 2017 at 01:27, Daniel P. Berrange <berrange@redhat.com> wrote:
> On Thu, Jan 05, 2017 at 12:56:52AM +1000, Nathan Rossi wrote:
>> If libgcrypt info is available with pkg-config use it over using the
>> libgcrypt-config. pkg-config is preferred due to is compatibility with
>> cross-compilation (where you cannot execute the targets version of
>> libgcrypt-config).
>
> It can be made to work, but you need to modify $PATH to ensure it finds
> the build target libgcrypt-config first.
>
> eg on Fedora you'd do this with mingw32
>
>    PATH=/usr/i686-w64-mingw32/sys-root/mingw/bin:$PATH ./configure ...
>
>> This change makes configure check for libgcrypt in pkg-config first,
>> then falling back to use libgcrypt-config if available. This follows a
>> similar process to how libsdl is handled.
>
> AFAIK, no version of libgcrypt has ever shipped a pkg-config file. Their
> maintainers have explicitly rejected patches adding that, ironically
> because they claim pkg-config doesn't handle cross-compilation and
> libgcrypt-config does :-)
>
> https://lists.gnupg.org/pipermail/gcrypt-devel/2007-February/001109.html
> https://lists.gnupg.org/pipermail/gcrypt-devel/2015-September/003569.html
>

Sorry for the noise. Turns out Yocto/OE patches support in to
libgcrypt for pkg-config, I did not realize (too many different things
in play :| ).

Regards,
Nathan

>
> So overall, I don't think this patch is needed/desirable for QEMU.
>
> Regards,
> Daniel
> --
> |: http://berrange.com      -o-    http://www.flickr.com/photos/dberrange/ :|
> |: http://libvirt.org              -o-             http://virt-manager.org :|
> |: http://entangle-photo.org       -o-    http://search.cpan.org/~danberr/ :|

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2017-01-04 16:01 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-01-04 14:56 [Qemu-devel] [PATCH] configure: For libgcrypt if pkg-config is available use it Nathan Rossi
2017-01-04 15:27 ` Daniel P. Berrange
2017-01-04 16:01   ` Nathan Rossi

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).