Ensure proper linking with OpenSSL with recent versions of MinGW.
[oweals/tinc.git] / m4 / openssl.m4
index 0bc99766796c468ef8098893729385bc5945a568..59f0d4504fb3b1ac71e30029588473138bcd8c61 100644 (file)
@@ -21,24 +21,20 @@ AC_DEFUN([tinc_OPENSSL],
      LDFLAGS="$LDFLAGS -L$withval"]
   )
 
-  AC_CHECK_HEADERS(openssl/evp.h openssl/rsa.h openssl/rand.h openssl/err.h openssl/sha.h openssl/pem.h,
+  AC_CHECK_HEADERS(openssl/evp.h openssl/rsa.h openssl/rand.h openssl/err.h openssl/sha.h openssl/pem.h openssl/engine.h,
     [],
     [AC_MSG_ERROR([OpenSSL header files not found.]); break]
   )
 
+  AC_CHECK_LIB(crypto, EVP_EncryptInit_ex,
+    [LIBS="-lcrypto $LIBS"],
+    [AC_MSG_ERROR([OpenSSL libraries not found.])]
+  )
+
 case $host_os in
   *mingw*)
-    AC_CHECK_LIB(crypto, SHA1_version,
-      [LIBS="$LIBS -lcrypto -lgdi32"],
-      [AC_MSG_ERROR([OpenSSL libraries not found.])]
-    )
   ;;
   *)
-    AC_CHECK_LIB(crypto, SHA1_version,
-      [LIBS="$LIBS -lcrypto"],
-      [AC_MSG_ERROR([OpenSSL libraries not found.])]
-    )
-
     AC_CHECK_FUNC(dlopen,
       [],
       [AC_CHECK_LIB(dl, dlopen,