diff options
| author | Dennis Brentjes <d.brentjes@gmail.com> | 2016-10-01 10:02:15 +0200 |
|---|---|---|
| committer | Dennis Brentjes <d.brentjes@gmail.com> | 2016-10-01 10:02:15 +0200 |
| commit | 7e30f35cfc42ac3983dfa281d554df9aa9485a99 (patch) | |
| tree | 5b11a3e14a2a60cdb80db1fca1d0d3f850f97bac | |
| parent | 37effc3e136c73afd4d6ba37d23a91766795d0f7 (diff) | |
| download | cmix-7e30f35cfc42ac3983dfa281d554df9aa9485a99.tar.gz cmix-7e30f35cfc42ac3983dfa281d554df9aa9485a99.tar.bz2 cmix-7e30f35cfc42ac3983dfa281d554df9aa9485a99.zip | |
Fixes the build for mxe-cross-builds, and if building shared libraries.
| -rw-r--r-- | CMakeModules/gmpConfig.cmake | 14 | ||||
| -rw-r--r-- | CMakeModules/sodiumConfig.cmake | 6 | ||||
| -rw-r--r-- | libcmix-crypto/CMakeLists.txt | 2 | ||||
| -rw-r--r-- | libcmix-crypto/curve25519/CMakeLists.txt | 1 | ||||
| -rw-r--r-- | libcmix-crypto/curve25519/null/CMakeLists.txt | 1 | ||||
| -rw-r--r-- | libcmix-crypto/curve25519/sodium/CMakeLists.txt | 1 | ||||
| -rw-r--r-- | libcmix-crypto/elgamal/CMakeLists.txt | 3 | ||||
| -rw-r--r-- | libcmix-crypto/elgamal/null/CMakeLists.txt | 1 | ||||
| -rw-r--r-- | libcmix-crypto/elgamal/null/null_elgamal.c | 25 | ||||
| -rw-r--r-- | libcmix-network/CMakeLists.txt | 12 | ||||
| -rw-r--r-- | liblog/CMakeLists.txt | 2 | ||||
| -rw-r--r-- | node/CMakeLists.txt | 13 | ||||
| -rw-r--r-- | node/node.cpp | 2 |
13 files changed, 65 insertions, 18 deletions
diff --git a/CMakeModules/gmpConfig.cmake b/CMakeModules/gmpConfig.cmake index a6e6682..f810a3f 100644 --- a/CMakeModules/gmpConfig.cmake +++ b/CMakeModules/gmpConfig.cmake @@ -1,13 +1,19 @@ + add_library(gmp UNKNOWN IMPORTED) find_library(gmp_LIBRARY NAMES "gmp") +find_path(gmp_INCLUDE_DIR NAMES "gmp.h") + +find_package_handle_standard_args(gmp DEFAULT_MSG gmp_LIBRARY gmp_INCLUDE_DIR) + +set_property(TARGET gmp PROPERTY INCLUDE_DIRECTORIES ${gmp_INCLUDE_DIR}) set_property(TARGET gmp PROPERTY IMPORTED_LOCATION "${gmp_LIBRARY}") add_library(gmpxx UNKNOWN IMPORTED) find_library(gmpxx_LIBRARY NAMES "gmpxx") -set_property(TARGET gmpxx PROPERTY IMPORTED_LOCATION "${gmpxx_LIBRARY}") +find_path(gmpxx_INCLUDE_DIR NAMES "gmpxx.h") -find_path(gmp_INCLUDE_DIR NAMES "gmp.h") -set_property(TARGET gmp PROPERTY INCLUDE_DIRECTORIES ${gmp_INCLUDE_DIR}) +find_package_handle_standard_args(gmpxx DEFAULT_MSG gmpxx_LIBRARY gmpxx_INCLUDE_DIR) -find_path(gmpxx_INCLUDE_DIR NAMES "gmpxx.h") +set_property(TARGET gmpxx PROPERTY IMPORTED_LOCATION "${gmpxx_LIBRARY}") set_property(TARGET gmpxx PROPERTY INCLUDE_DIRECTORIES ${gmpxx_INCLUDE_DIR}) + diff --git a/CMakeModules/sodiumConfig.cmake b/CMakeModules/sodiumConfig.cmake index f1c0760..4ddcbac 100644 --- a/CMakeModules/sodiumConfig.cmake +++ b/CMakeModules/sodiumConfig.cmake @@ -2,9 +2,9 @@ add_library(sodium UNKNOWN IMPORTED) find_library(sodium_LIBRARY NAMES "sodium") - -set_property(TARGET sodium PROPERTY IMPORTED_LOCATION "${sodium_LIBRARY}") - find_path(sodium_INCLUDE_DIR NAMES "sodium.h") +find_package_handle_standard_args(sodium DEFAULT_MSG sodium_LIBRARY sodium_INCLUDE_DIR) + +set_property(TARGET sodium PROPERTY IMPORTED_LOCATION "${sodium_LIBRARY}") set_property(TARGET sodium PROPERTY INCLUDE_DIRECTORIES ${sodium_INCLUDE_DIR}) diff --git a/libcmix-crypto/CMakeLists.txt b/libcmix-crypto/CMakeLists.txt index dea1196..0986024 100644 --- a/libcmix-crypto/CMakeLists.txt +++ b/libcmix-crypto/CMakeLists.txt @@ -37,4 +37,4 @@ option(UseEC "Use curve25519 instead of RSA" ON) target_link_libraries(cmix-crypto INTERFACE curve25519-implementation INTERFACE elgamal-implementation -) +)
\ No newline at end of file diff --git a/libcmix-crypto/curve25519/CMakeLists.txt b/libcmix-crypto/curve25519/CMakeLists.txt index ba79d87..afcc1b4 100644 --- a/libcmix-crypto/curve25519/CMakeLists.txt +++ b/libcmix-crypto/curve25519/CMakeLists.txt @@ -26,6 +26,7 @@ target_include_directories(curve25519-implementation ) target_link_libraries(curve25519-implementation + PUBLIC curve25519-interface PUBLIC curve25519-${curve25519_implementation} ) diff --git a/libcmix-crypto/curve25519/null/CMakeLists.txt b/libcmix-crypto/curve25519/null/CMakeLists.txt index 12264db..e5cefdd 100644 --- a/libcmix-crypto/curve25519/null/CMakeLists.txt +++ b/libcmix-crypto/curve25519/null/CMakeLists.txt @@ -11,6 +11,5 @@ target_compile_options(${target_name} ) target_link_libraries(${target_name} - INTERFACE cmix-crypto PRIVATE curve25519-interface ) diff --git a/libcmix-crypto/curve25519/sodium/CMakeLists.txt b/libcmix-crypto/curve25519/sodium/CMakeLists.txt index 7679a88..78561ce 100644 --- a/libcmix-crypto/curve25519/sodium/CMakeLists.txt +++ b/libcmix-crypto/curve25519/sodium/CMakeLists.txt @@ -13,7 +13,6 @@ target_compile_options(${target_name} ) target_link_libraries(${target_name} - INTERFACE cmix-crypto PRIVATE curve25519-interface PUBLIC sodium ) diff --git a/libcmix-crypto/elgamal/CMakeLists.txt b/libcmix-crypto/elgamal/CMakeLists.txt index 88f5ba8..b92e5ae 100644 --- a/libcmix-crypto/elgamal/CMakeLists.txt +++ b/libcmix-crypto/elgamal/CMakeLists.txt @@ -25,5 +25,6 @@ target_include_directories(elgamal-implementation ) target_link_libraries(elgamal-implementation + PUBLIC elgamal-interface PUBLIC elgamal-${elgamal_implementation} -) +) diff --git a/libcmix-crypto/elgamal/null/CMakeLists.txt b/libcmix-crypto/elgamal/null/CMakeLists.txt index 39db0f0..76cd77c 100644 --- a/libcmix-crypto/elgamal/null/CMakeLists.txt +++ b/libcmix-crypto/elgamal/null/CMakeLists.txt @@ -11,6 +11,5 @@ target_compile_options(${target_name} ) target_link_libraries(${target_name} - INTERFACE cmix-crypto PRIVATE elgamal-interface ) diff --git a/libcmix-crypto/elgamal/null/null_elgamal.c b/libcmix-crypto/elgamal/null/null_elgamal.c index e69de29..ef98912 100644 --- a/libcmix-crypto/elgamal/null/null_elgamal.c +++ b/libcmix-crypto/elgamal/null/null_elgamal.c @@ -0,0 +1,25 @@ + +#include "api.h" + +#include <stddef.h> +#include <stdbool.h> + +void elgamal_keypair_deleter(struct KeyPair p) {} + +struct KeyPair elgamal_create_keypair() { + return (struct KeyPair){ + NULL, + NULL, + 0, + 0 + }; +} + +void elgamal_shared_key_deleter(struct SharedKey s) {} + +struct SharedKey elgamal_derive_shared_key(struct KeyPair pair, unsigned char* pub_key, bool swap_pub_order) { + return (struct SharedKey){ + NULL, + 0 + }; +} diff --git a/libcmix-network/CMakeLists.txt b/libcmix-network/CMakeLists.txt index 1420d69..5891254 100644 --- a/libcmix-network/CMakeLists.txt +++ b/libcmix-network/CMakeLists.txt @@ -24,15 +24,23 @@ target_include_directories(cmix-network target_link_libraries(cmix-network PRIVATE Boost::boost PUBLIC Boost::system - PUBLIC OpenSSL::SSL PUBLIC ${CMAKE_THREAD_LIBS_INIT} PRIVATE cmix PRIVATE log ) if(WIN32) + target_include_directories(cmix-network + PUBLIC ${OPENSSL_INCLUDE_DIRS} + ) + target_link_libraries(cmix-network PUBLIC wsock32 PUBLIC ws2_32 + PUBLIC ${OPENSSL_LIBRARIES} + ) +else(WIN32) + target_link_libraries(cmix-network + PUBLIC OpenSSL::SSL ) -endif() +endif(WIN32) diff --git a/liblog/CMakeLists.txt b/liblog/CMakeLists.txt index cb4ce84..3ecce93 100644 --- a/liblog/CMakeLists.txt +++ b/liblog/CMakeLists.txt @@ -18,7 +18,7 @@ target_compile_options(log ) target_link_libraries(log - PRIVATE Boost::log PRIVATE Boost::system + PUBLIC Boost::log PUBLIC ${CMAKE_THREAD_LIBS_INIT} )
\ No newline at end of file diff --git a/node/CMakeLists.txt b/node/CMakeLists.txt index adbedb1..6fe0ef7 100644 --- a/node/CMakeLists.txt +++ b/node/CMakeLists.txt @@ -8,9 +8,16 @@ add_executable(node nextnode.hpp nextnode.cpp ) -target_compile_options(node - PRIVATE "-std=c++11" -) +if(WIN32) + target_compile_options(node + PRIVATE "-std=gnu++11" + ) +else(WIN32) + target_compile_options(node + PRIVATE "-std=c++11" + ) +endif(WIN32) + target_link_libraries(node PRIVATE Boost::boost diff --git a/node/node.cpp b/node/node.cpp index 92c51ec..b8416e1 100644 --- a/node/node.cpp +++ b/node/node.cpp @@ -18,6 +18,8 @@ Node::Node(ListenSettings const& listen_settings, NodeNetworkSettings network_se , keypair(api.create_key_pair()) , network_pub_key() { + GOOGLE_PROTOBUF_VERIFY_VERSION; + auto on_connect = [this, network_settings](){ BOOST_LOG_TRIVIAL(trace) << "is first: " << std::boolalpha << network_settings.is_first; if(network_settings.is_first) { |
