aboutsummaryrefslogtreecommitdiff
path: root/libcmix-crypto/CMakeLists.txt
diff options
context:
space:
mode:
authorDennis Brentjes <d.brentjes@gmail.com>2016-08-31 14:09:51 +0200
committerDennis Brentjes <d.brentjes@gmail.com>2016-09-01 13:08:52 +0200
commit9d7701c370f06be663f2a485507d388ab5194ca8 (patch)
treeaea0b55017b7a6003dbd042cdb113ec6fb5ab2e9 /libcmix-crypto/CMakeLists.txt
parentd55e5c77d3cd2a1be150666e92e5b4f3b922f0fc (diff)
downloadcmix-9d7701c370f06be663f2a485507d388ab5194ca8.tar.gz
cmix-9d7701c370f06be663f2a485507d388ab5194ca8.tar.bz2
cmix-9d7701c370f06be663f2a485507d388ab5194ca8.zip
Added a CMake system to easily add and choose crypto implementations.
Diffstat (limited to 'libcmix-crypto/CMakeLists.txt')
-rw-r--r--libcmix-crypto/CMakeLists.txt23
1 files changed, 17 insertions, 6 deletions
diff --git a/libcmix-crypto/CMakeLists.txt b/libcmix-crypto/CMakeLists.txt
index 37e60aa..907c601 100644
--- a/libcmix-crypto/CMakeLists.txt
+++ b/libcmix-crypto/CMakeLists.txt
@@ -1,10 +1,21 @@
+add_library(cmix-crypto-interface INTERFACE)
+
+target_include_directories(cmix-crypto-interface
+ INTERFACE ${CMAKE_CURRENT_SOURCE_DIR}
+)
+
+include(curve25519_implementations)
+add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/curve25519/)
+
+include(rsa_implementations)
+add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/rsa)
+
+
add_library(cmix-crypto
message.h message.c
keymanagement.h keymanagement.c
keypair.h
- curve25519.h
-
)
target_include_directories(cmix-crypto
@@ -15,10 +26,10 @@ target_compile_options(cmix-crypto
PRIVATE "-std=c99"
)
-add_library(libsodium_curve25519
- libsodium_curve25519.c
-)
+option(UseEC "Use curve25519 instead of RSA" ON)
+
target_link_libraries(cmix-crypto
- PUBLIC libsodium_curve25519
+ PUBLIC curve25519-implementation
+# PUBLIC rsa-implementation
)