From 754897490d9478025d174c2b1c1849305f728324 Mon Sep 17 00:00:00 2001 From: Thomas Petazzoni Date: Mon, 28 Dec 2015 12:13:07 +0100 Subject: [PATCH] libsecret.pc: add Libs.private field for libgcrypt When libgcrypt is available, libsecret links with it. When dynamic linking is used, there is no problem: libsecret.so has a NEEDED pointing to libgcrypt, so linking an application with -lsecret works fine. However, when doing static linking, you must specify the entire chain of libraries, otherwise you get unresolved symbols errors, such as: host/usr/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/lib/libsecret-1.a(libsecret_1_la-secret-session.o): In function `request_open_session_aes': build/libsecret-0.18.3/libsecret/secret-session.c:99: undefined reference to `gcry_mpi_release' build/libsecret-0.18.3/libsecret/secret-session.c:101: undefined reference to `gcry_mpi_aprint' build/libsecret-0.18.3/libsecret/secret-session.c:107: undefined reference to `gcry_free' In order to solve this, we simply need to indicate in the Libs.private field of the .pc file that we depend on libgcrypt. Signed-off-by: Thomas Petazzoni --- libsecret/libsecret.pc.in | 1 + 1 file changed, 1 insertion(+) diff --git a/libsecret/libsecret.pc.in b/libsecret/libsecret.pc.in index 0c342ef..d99cf44 100644 --- a/libsecret/libsecret.pc.in +++ b/libsecret/libsecret.pc.in @@ -11,4 +11,5 @@ Description: GObject bindings for Secret Service API Version: @VERSION@ Requires: glib-2.0 gobject-2.0 gio-2.0 Libs: -L${libdir} -lsecret-@SECRET_MAJOR@ +Libs.private: @LIBGCRYPT_LIBS@ Cflags: -I${includedir}/libsecret-@SECRET_MAJOR@ -- 2.6.4