Mercurial > hg > freeDiameter-dtls
diff cmake/Modules/FindGnuTLS.cmake @ 1223:33ad82ffbdde
Make GNU TLS 3.x mandatory since we want to support DTLS. Removed the old compatibility code.
author | Sebastien Decugis <sdecugis@freediameter.net> |
---|---|
date | Wed, 19 Jun 2013 14:38:57 +0800 |
parents | 56c36d1007b4 |
children | def1b0ac48dc |
line wrap: on
line diff
--- a/cmake/Modules/FindGnuTLS.cmake Tue Jun 18 17:05:44 2013 +0800 +++ b/cmake/Modules/FindGnuTLS.cmake Wed Jun 19 14:38:57 2013 +0800 @@ -1,13 +1,11 @@ # - Find gnutls -# Find the native GNUTLS includes and library +# Find the native GNUTLS includes and library. Version 3.0.0 at least is required # # GNUTLS_FOUND - True if gnutls found. # GNUTLS_INCLUDE_DIR - where to find gnutls.h, etc. # GNUTLS_LIBRARIES - List of libraries when using gnutls. -# GNUTLS_VERSION_210 - true if GnuTLS version is >= 2.10.0 (does not require additional separate gcrypt initialization) -# GNUTLS_VERSION_212 - true if GnuTLS version is >= 2.12.0 (supports gnutls_transport_set_vec_push_function) -# GNUTLS_VERSION_300 - true if GnuTLS version is >= 3.00.0 (x509 verification functions changed) # GNUTLS_VERSION_310 - true if GnuTLS version is >= 3.01.0 (stabilization branch with new APIs) +# GNUTLS_VERSION_322 - true if GnuTLS version is >= 3.2.2 (DTLS over SCTP improvements) if (GNUTLS_INCLUDE_DIR AND GNUTLS_LIBRARIES) set(GNUTLS_FIND_QUIETLY TRUE) @@ -46,19 +44,17 @@ IF( NOT( "${GNUTLS_VERSION_TEST_FOR}" STREQUAL "${GNUTLS_LIBRARY}" )) INCLUDE (CheckLibraryExists) MESSAGE(STATUS "Checking GNUTLS version") - UNSET(GNUTLS_VERSION_210) - UNSET(GNUTLS_VERSION_210 CACHE) - UNSET(GNUTLS_VERSION_212) - UNSET(GNUTLS_VERSION_212 CACHE) - UNSET(GNUTLS_VERSION_300) - UNSET(GNUTLS_VERSION_300 CACHE) UNSET(GNUTLS_VERSION_310) UNSET(GNUTLS_VERSION_310 CACHE) + UNSET(GNUTLS_VERSION_322) + UNSET(GNUTLS_VERSION_322 CACHE) GET_FILENAME_COMPONENT(GNUTLS_PATH ${GNUTLS_LIBRARY} PATH) - CHECK_LIBRARY_EXISTS(gnutls gnutls_hash ${GNUTLS_PATH} GNUTLS_VERSION_210) - CHECK_LIBRARY_EXISTS(gnutls gnutls_transport_set_vec_push_function ${GNUTLS_PATH} GNUTLS_VERSION_212) CHECK_LIBRARY_EXISTS(gnutls gnutls_x509_trust_list_verify_crt ${GNUTLS_PATH} GNUTLS_VERSION_300) + IF(!GNUTLS_VERSION_300) + MESSAGE(FATAL_ERROR "GnuTLS found but version is too old, need 3.x at least for DTLS support") + ENDIF(!GNUTLS_VERSION_300) CHECK_LIBRARY_EXISTS(gnutls gnutls_handshake_set_timeout ${GNUTLS_PATH} GNUTLS_VERSION_310) + CHECK_LIBRARY_EXISTS(gnutls gnutls_handshake_set_hook_function ${GNUTLS_PATH} GNUTLS_VERSION_322) SET( GNUTLS_VERSION_TEST_FOR ${GNUTLS_LIBRARY} CACHE INTERNAL "Version the test was made against" ) ENDIF (NOT( "${GNUTLS_VERSION_TEST_FOR}" STREQUAL "${GNUTLS_LIBRARY}" )) ENDIF(GNUTLS_FOUND)