From 4e8145bc6d04fa0223a8108edf50bb88f76e48ba Mon Sep 17 00:00:00 2001 From: Steve Lhomme Date: Tue, 19 May 2020 16:23:40 +0200 Subject: win32: link with crypt32 Since 5d03564cccd2c10c41252ea468d4a098bd08e9c1 we use CertOpenStore(). To properly link it needs to be linked with the crypt32.dll. https://docs.microsoft.com/en-us/windows/win32/api/wincrypt/nf-wincrypt-certopenstore This library was missing from the pkg-config library. It exists in thirdparty_libadd to link gnutls as a DLL. Signed-off-by: Steve Lhomme --- configure.ac | 2 ++ lib/Makefile.am | 6 +----- lib/gnutls.pc.in | 2 +- 3 files changed, 4 insertions(+), 6 deletions(-) diff --git a/configure.ac b/configure.ac index 2aca4b9fca..3413a3dc99 100644 --- a/configure.ac +++ b/configure.ac @@ -119,6 +119,8 @@ case "$host" in *mingw32* | *mingw64*) have_win=yes AC_DEFINE([_UNICODE], [1], [Defined to 1 for Unicode (wide chars) APIs]) + LIB_CRYPT32="-lcrypt32" + AC_SUBST([LIB_CRYPT32]) ;; *darwin*) have_macosx=yes diff --git a/lib/Makefile.am b/lib/Makefile.am index eddd1167a7..f55f298f7b 100644 --- a/lib/Makefile.am +++ b/lib/Makefile.am @@ -151,7 +151,7 @@ libgnutls_la_LIBADD = ../gl/libgnu.la x509/libgnutls_x509.la \ auth/libgnutls_auth.la algorithms/libgnutls_alg.la \ extras/libgnutls_extras.la thirdparty_libadd = $(LTLIBZ) $(LTLIBINTL) $(LIBSOCKET) $(LTLIBNSL) \ - $(P11_KIT_LIBS) $(LIB_SELECT) + $(P11_KIT_LIBS) $(LIB_SELECT) $(LIB_CRYPT32) if HAVE_LIBIDN2 thirdparty_libadd += $(LIBIDN2_LIBS) @@ -208,10 +208,6 @@ defexec_DATA = libgnutls-$(DLL_VERSION).def DISTCLEANFILES += $(defexec_DATA) endif -if WINDOWS -thirdparty_libadd += -lcrypt32 -endif - if MACOSX libgnutls_la_LDFLAGS += -framework Security -framework CoreFoundation endif diff --git a/lib/gnutls.pc.in b/lib/gnutls.pc.in index 4b6b5578f5..46a1eb5d85 100644 --- a/lib/gnutls.pc.in +++ b/lib/gnutls.pc.in @@ -19,6 +19,6 @@ Description: Transport Security Layer implementation for the GNU system URL: https://www.gnutls.org/ Version: @VERSION@ Libs: -L${libdir} -lgnutls -Libs.private: @LIBINTL@ @LIBSOCKET@ @INET_PTON_LIB@ @LIBPTHREAD@ @LIB_SELECT@ @TSS_LIBS@ @GMP_LIBS@ @LIBUNISTRING@ @LIBATOMIC_LIBS@ +Libs.private: @LIBINTL@ @LIBSOCKET@ @INET_PTON_LIB@ @LIBPTHREAD@ @LIB_SELECT@ @TSS_LIBS@ @GMP_LIBS@ @LIBUNISTRING@ @LIBATOMIC_LIBS@ @LIB_CRYPT32@ @GNUTLS_REQUIRES_PRIVATE@ Cflags: -I${includedir} -- cgit v1.2.1