diff options
author | Florent Le Coz <louiz@louiz.org> | 2013-12-08 15:31:20 +0100 |
---|---|---|
committer | Florent Le Coz <louiz@louiz.org> | 2013-12-08 15:57:06 +0100 |
commit | 2c9680bc0392a33d32b90723228ec60753070a9f (patch) | |
tree | cf9016ef3fb0def9cf20168830e87162da694b37 /cmake/Modules/FindCryptopp.cmake | |
parent | e2117bcb0abfde30ad503b99da58699cf0f2a95b (diff) | |
download | biboumi-2c9680bc0392a33d32b90723228ec60753070a9f.tar.gz biboumi-2c9680bc0392a33d32b90723228ec60753070a9f.tar.bz2 biboumi-2c9680bc0392a33d32b90723228ec60753070a9f.tar.xz biboumi-2c9680bc0392a33d32b90723228ec60753070a9f.zip |
Rewrite the FindCryptopp cmake module cleanly
Diffstat (limited to 'cmake/Modules/FindCryptopp.cmake')
-rw-r--r-- | cmake/Modules/FindCryptopp.cmake | 84 |
1 files changed, 51 insertions, 33 deletions
diff --git a/cmake/Modules/FindCryptopp.cmake b/cmake/Modules/FindCryptopp.cmake index 7a8ac31..9835b6f 100644 --- a/cmake/Modules/FindCryptopp.cmake +++ b/cmake/Modules/FindCryptopp.cmake @@ -1,35 +1,53 @@ # - Find Crypto++ +# Find the Crypto++ library +# +# This module defines the following variables: +# CRYPTO++_FOUND - True if library and include directory are found +# If set to TRUE, the following are also defined: +# CRYPTO++_LIBRARIES - Where to find the library file +# CRYPTO++_INCLUDE_DIRS - The directory where to find the header files +# +# For conveniance, these variables are also set. They have the same values +# than the variables above. The user can thus choose his/her prefered way +# to way to write them. +# +# CRYPTOPP_FOUND +# +# CRYPTO++_LIBRARY +# CRYPTOPP_LIBRARY +# CRYPTOPP_LIBRARIES +# +# CRYPTO++_INCLUDE_DIR +# CRYPTOPP_INCLUDE_DIRS +# CRYPTOPP_INCLUDE_DIR +# +# This file is in the public domain. + +find_path(CRYPTO++_INCLUDE_DIRS NAMES cryptlib.h + PATH_SUFFIXES "crypto++" "cryptopp" + DOC "The Crypto++ include directory") + +find_library(CRYPTO++_LIBRARIES NAMES cryptopp + DOC "The Crypto++ library") + +# Use some standard module to handle the QUIETLY and REQUIRED arguments, and +# set CRYPTO++_FOUND to TRUE if these two variables are set. +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(Crypto++ REQUIRED_VARS CRYPTO++_LIBRARIES CRYPTO++_INCLUDE_DIRS) + +# Compatibility for all the ways of writing these variables +if(CRYPTO++_FOUND) + set(CRYPTOPP_FOUND ${CRYPTO++_FOUND}) + + set(CRYPTO++_LIBRARY ${CRYPTO++_LIBRARIES}) + set(CRYPTOPP_LIBRARY ${CRYPTO++_LIBRARIES}) + set(CRYPTOPP_LIBRARIES ${CRYPTO++_LIBRARIES}) + + set(CRYPTO++_INCLUDE_DIR ${CRYPTO++_INCLUDE_DIRS}) + set(CRYPTOPP_INCLUDE_DIR ${CRYPTO++_INCLUDE_DIRS}) + set(CRYPTOPP_INCLUDE_DIRS ${CRYPTO++_INCLUDE_DIRS}) +endif() + +mark_as_advanced(CRYPTO++_INCLUDE_DIRS CRYPTO++_LIBRARIES) + -if(CRYPTO++_INCLUDE_DIR AND CRYPTO++_LIBRARIES) - set(CRYPTO++_FOUND TRUE) - -else(CRYPTO++_INCLUDE_DIR AND CRYPTO++_LIBRARIES) - find_path(CRYPTO++_INCLUDE_DIR cryptlib.h - /usr/include/crypto++ - /usr/include/cryptopp - /usr/local/include/crypto++ - /usr/local/include/cryptopp - /opt/local/include/crypto++ - /opt/local/include/cryptopp - $ENV{SystemDrive}/Crypto++/include - ) - - find_library(CRYPTO++_LIBRARIES NAMES cryptopp - PATHS - /usr/lib - /usr/local/lib - /opt/local/lib - $ENV{SystemDrive}/Crypto++/lib - ) - - if(CRYPTO++_INCLUDE_DIR AND CRYPTO++_LIBRARIES) - set(CRYPTO++_FOUND TRUE) - message(STATUS "Found Crypto++: ${CRYPTO++_INCLUDE_DIR}, ${CRYPTO++_LIBRARIES}") - else(CRYPTO++_INCLUDE_DIR AND CRYPTO++_LIBRARIES) - set(CRYPTO++_FOUND FALSE) - message(STATUS "Crypto++ not found.") - endif(CRYPTO++_INCLUDE_DIR AND CRYPTO++_LIBRARIES) - - mark_as_advanced(CRYPTO++_INCLUDE_DIR CRYPTO++_LIBRARIES) - -endif(CRYPTO++_INCLUDE_DIR AND CRYPTO++_LIBRARIES) |