aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--CMakeLists.txt12
-rw-r--r--cmake/Modules/FindGcrypt.cmake36
-rw-r--r--cmake/Modules/FindGpg_Error.cmake36
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 )