diff options
-rw-r--r-- | CMakeLists.txt | 12 | ||||
-rw-r--r-- | cmake/Modules/FindGcrypt.cmake | 36 | ||||
-rw-r--r-- | cmake/Modules/FindGpg_Error.cmake | 36 |
3 files changed, 84 insertions, 0 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 46895666..0c78d15c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -303,8 +303,20 @@ endif() option(ENABLE_GNUTLS "Enable protocol encryption and advanced authentication" ON) if(ENABLE_GNUTLS) find_package(GnuTLS) + find_package(Gcrypt) + find_package(Gpg_Error) if (GNUTLS_FOUND) include_directories(${GNUTLS_INCLUDE_DIR}) + if (GCRYPT_FOUND) + include_directories(${GCRYPT_INCLUDE_DIR}) + set(GNUTLS_LIBRARIES ${GNUTLS_LIBRARIES};${GCRYPT_LIBRARIES}) + set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} ${GCRYPT_LIBRARIES}) + if (GPG_ERROR_FOUND) + include_directories(${GPG_ERROR_INCLUDE_DIR}) + set(GNUTLS_LIBRARIES ${GNUTLS_LIBRARIES};${GPG_ERROR_LIBRARIES}) + set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} ${GPG_ERROR_LIBRARIES}) + endif() + endif() add_definitions("-DHAVE_GNUTLS") add_definitions(${GNUTLS_DEFINITIONS}) diff --git a/cmake/Modules/FindGcrypt.cmake b/cmake/Modules/FindGcrypt.cmake new file mode 100644 index 00000000..2158081a --- /dev/null +++ b/cmake/Modules/FindGcrypt.cmake @@ -0,0 +1,36 @@ +# - Find gcrypt +# Find the native GCRYPT includes and library +# +# GCRYPT_FOUND - True if gcrypt found. +# GCRYPT_INCLUDE_DIR - where to find gcrypt.h, etc. +# GCRYPT_LIBRARIES - List of libraries when using gcrypt. + +if (GCRYPT_INCLUDE_DIR AND GCRYPT_LIBRARIES) + set(GCRYPT_FIND_QUIETLY TRUE) +endif (GCRYPT_INCLUDE_DIR AND GCRYPT_LIBRARIES) + +# Include dir +find_path(GCRYPT_INCLUDE_DIR + NAMES + gcrypt.h +) + +# Library +find_library(GCRYPT_LIBRARY + NAMES gcrypt +) + +# handle the QUIETLY and REQUIRED arguments and set GCRYPT_FOUND to TRUE if +# all listed variables are TRUE +INCLUDE(FindPackageHandleStandardArgs) +FIND_PACKAGE_HANDLE_STANDARD_ARGS(GCRYPT DEFAULT_MSG GCRYPT_LIBRARY GCRYPT_INCLUDE_DIR) + +IF(GCRYPT_FOUND) + SET( GCRYPT_LIBRARIES ${GCRYPT_LIBRARY} ) +ELSE(GCRYPT_FOUND) + SET( GCRYPT_LIBRARIES ) +ENDIF(GCRYPT_FOUND) + +# Lastly make it so that the GCRYPT_LIBRARY and GCRYPT_INCLUDE_DIR variables +# only show up under the advanced options in the gui cmake applications. +MARK_AS_ADVANCED( GCRYPT_LIBRARY GCRYPT_INCLUDE_DIR ) diff --git a/cmake/Modules/FindGpg_Error.cmake b/cmake/Modules/FindGpg_Error.cmake new file mode 100644 index 00000000..2f1d3725 --- /dev/null +++ b/cmake/Modules/FindGpg_Error.cmake @@ -0,0 +1,36 @@ +# - Find gpg-error +# Find the native GPG_ERROR includes and library +# +# GPG_ERROR_FOUND - True if gpg-error found. +# GPG_ERROR_INCLUDE_DIR - where to find gpg-error.h, etc. +# GPG_ERROR_LIBRARIES - List of libraries when using gpg-error. + +if (GPG_ERROR_INCLUDE_DIR AND GPG_ERROR_LIBRARIES) + set(GPG_ERROR_FIND_QUIETLY TRUE) +endif (GPG_ERROR_INCLUDE_DIR AND GPG_ERROR_LIBRARIES) + +# Include dir +find_path(GPG_ERROR_INCLUDE_DIR + NAMES + gpg-error.h +) + +# Library +find_library(GPG_ERROR_LIBRARY + NAMES gpg-error +) + +# handle the QUIETLY and REQUIRED arguments and set GPG_ERROR_FOUND to TRUE if +# all listed variables are TRUE +INCLUDE(FindPackageHandleStandardArgs) +FIND_PACKAGE_HANDLE_STANDARD_ARGS(GPG_ERROR DEFAULT_MSG GPG_ERROR_LIBRARY GPG_ERROR_INCLUDE_DIR) + +IF(GPG_ERROR_FOUND) + SET( GPG_ERROR_LIBRARIES ${GPG_ERROR_LIBRARY} ) +ELSE(GPG_ERROR_FOUND) + SET( GPG_ERROR_LIBRARIES ) +ENDIF(GPG_ERROR_FOUND) + +# Lastly make it so that the GPG_ERROR_LIBRARY and GPG_ERROR_INCLUDE_DIR variables +# only show up under the advanced options in the gui cmake applications. +MARK_AS_ADVANCED( GPG_ERROR_LIBRARY GPG_ERROR_INCLUDE_DIR ) |