From 1f04e2e4a1119b73e7d2246c72237b28c0a8d310 Mon Sep 17 00:00:00 2001 From: MerryMage Date: Wed, 7 Feb 2018 21:31:46 +0000 Subject: [PATCH] externals: Update cryptopp to 6.0.0 MSVC C++17 support --- externals/cryptopp/CMakeLists.txt | 17 +++++++++++++++++ externals/cryptopp/cryptopp | 2 +- 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/externals/cryptopp/CMakeLists.txt b/externals/cryptopp/CMakeLists.txt index a724eb524..add5fb444 100644 --- a/externals/cryptopp/CMakeLists.txt +++ b/externals/cryptopp/CMakeLists.txt @@ -157,11 +157,18 @@ set(cryptopp_SOURCES cryptopp/queue.cpp cryptopp/randpool.cpp cryptopp/rdtables.cpp + cryptopp/rijndael-simd.cpp cryptopp/rijndael.cpp cryptopp/rng.cpp + cryptopp/sha-simd.cpp cryptopp/sha.cpp + cryptopp/sse-simd.cpp ) +if (MINGW OR WIN32) + list(APPEND cryptopp_SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/cryptopp/winpipes.cpp) +endif () + if(MSVC AND NOT CRYPTOPP_DISABLE_ASM) if(${CMAKE_GENERATOR} MATCHES ".*ARM") message(STATUS "Disabling ASM because ARM is specified as target platform.") @@ -181,6 +188,16 @@ if(MSVC AND NOT CRYPTOPP_DISABLE_ASM) endif() endif() +if ((CMAKE_CXX_COMPILER_ID MATCHES "Clang" OR CMAKE_CXX_COMPILER_ID STREQUAL "GNU") AND NOT CRYPTOPP_DISABLE_ASM) + if(${CMAKE_GENERATOR} MATCHES ".*ARM") + message(STATUS "Disabling ASM because ARM is specified as target platform.") + else() + set_source_files_properties(${CMAKE_CURRENT_SOURCE_DIR}/cryptopp/rijndael-simd.cpp PROPERTIES COMPILE_FLAGS "-msse4.1 -maes") + set_source_files_properties(${CMAKE_CURRENT_SOURCE_DIR}/cryptopp/sha-simd.cpp PROPERTIES COMPILE_FLAGS "-msse4.2 -msha") + set_source_files_properties(${CMAKE_CURRENT_SOURCE_DIR}/cryptopp/sse-simd.cpp PROPERTIES COMPILE_FLAGS "-msse2") + endif() +endif() + #============================================================================ # Compile targets #============================================================================ diff --git a/externals/cryptopp/cryptopp b/externals/cryptopp/cryptopp index 24bc2b856..b6c668445 160000 --- a/externals/cryptopp/cryptopp +++ b/externals/cryptopp/cryptopp @@ -1 +1 @@ -Subproject commit 24bc2b85674254fb294e717eb5b47d9f53e786b8 +Subproject commit b6c6684451f925ab2e0b99acbaf66fd487ebfbd5