X-Git-Url: https://tinc-vpn.org/git/browse?p=tinc;a=blobdiff_plain;f=m4%2Fopenssl.m4;h=32e41de76db75c55ecab6c75f862ac739f8c9761;hp=40ad4fd0d220936837e204fc11bf6cdd15308037;hb=2236e05e518c9e317d82c027596bea5228725214;hpb=8988b127e18435054e48cbcca8ac712ddda3d6d2 diff --git a/m4/openssl.m4 b/m4/openssl.m4 index 40ad4fd0..32e41de7 100644 --- a/m4/openssl.m4 +++ b/m4/openssl.m4 @@ -4,15 +4,23 @@ AC_DEFUN(tinc_OPENSSL, [ tinc_ac_save_CPPFLAGS="$CPPFLAGS" + AC_ARG_WITH(openssl, + AC_HELP_STRING([--with-openssl=DIR], [OpenSSL base directory, or:]), + [openssl="$withval" + CFLAGS="$CFLAGS -I$withval/include" + CPPFLAGS="$CPPFLAGS -I$withval/include" + LIBS="$LIBS -L$withval/lib"] + ) + AC_ARG_WITH(openssl-include, - [ --with-openssl-include=DIR OpenSSL headers directory (without trailing /openssl)], + AC_HELP_STRING([--with-openssl-include=DIR], [OpenSSL headers directory (without trailing /openssl)]), [openssl_include="$withval" CFLAGS="$CFLAGS -I$withval" CPPFLAGS="$CPPFLAGS -I$withval"] ) AC_ARG_WITH(openssl-lib, - [ --with-openssl-lib=DIR OpenSSL library directory], + AC_HELP_STRING([--with-openssl-lib=DIR], [OpenSSL library directory]), [openssl_lib="$withval" LIBS="$LIBS -L$withval"] ) @@ -24,26 +32,35 @@ AC_DEFUN(tinc_OPENSSL, CPPFLAGS="$tinc_ac_save_CPPFLAGS" - AC_CHECK_LIB(crypto, SHA1_version, - [LIBS="$LIBS -lcrypto"], - [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_FUNCS(RAND_pseudo_bytes) + AC_CHECK_FUNC(dlopen, + [], + [AC_CHECK_LIB(dl, dlopen, + [LIBS="$LIBS -ldl"], + [AC_MSG_ERROR([OpenSSL depends on libdl.]); break] + )] + ) + ;; +esac - AC_CHECK_FUNC(OpenSSL_add_all_algorithms, - [], - [AC_CHECK_FUNC(SSLeay_add_all_algorithms, - [AC_DEFINE(HAVE_SSLEAY_ADD_ALL_ALGORITHMS, 1, [Defined if this function should be used instead of OpenSLL_add_all_algorithms])], - [AC_MSG_ERROR([Missing required OpenSSL functionality!])] - )] + AC_CHECK_FUNCS([RAND_pseudo_bytes EVP_EncryptInit_ex], , + [AC_MSG_ERROR([Missing OpenSSL functionality, make sure you have installed the latest version.]); break], ) - AC_CHECK_FUNC(dlopen, - [], - [AC_CHECK_LIB(dl, dlopen, - [LIBS="$LIBS -ldl"], - [AC_MSG_ERROR([OpenSSL depends on libdl.])] - )] + AC_CHECK_DECL([OpenSSL_add_all_algorithms], , + [AC_MSG_ERROR([Missing OpenSSL functionality, make sure you have installed the latest version.]); break], + [#include ] ) ])