diff --git a/CMakeLists.txt b/CMakeLists.txt index 7a4f1d2d..1748038a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -118,6 +118,16 @@ execute_process(COMMAND ${SHELL_CMD} "${CMAKE_CXX_COMPILER} -dumpmachine 2>&1" OUTPUT_VARIABLE CRYPTOPP_I386 OUTPUT_STRIP_TRAILING_WHITESPACE) +execute_process(COMMAND ${SHELL_CMD} "${CMAKE_CXX_COMPILER} -dumpmachine 2>&1" + COMMAND ${GREP_CMD} "\\" + OUTPUT_VARIABLE CRYPTOPP_MINGW32 + OUTPUT_STRIP_TRAILING_WHITESPACE) + +execute_process(COMMAND ${SHELL_CMD} "${CMAKE_CXX_COMPILER} -dumpmachine 2>&1" + COMMAND ${GREP_CMD} "mingw64|w64-mingw32" + OUTPUT_VARIABLE CRYPTOPP_MINGW64 + OUTPUT_STRIP_TRAILING_WHITESPACE) + execute_process(COMMAND ${SHELL_CMD} "${CMAKE_CXX_COMPILER} -dumpmachine 2>&1" COMMAND ${GREP_CMD} "x32" OUTPUT_VARIABLE CRYPTOPP_X32 @@ -149,15 +159,16 @@ execute_process(COMMAND ${SHELL_CMD} "${CMAKE_CXX_COMPILER} -dumpmachine 2>&1" OUTPUT_VARIABLE CRYPTOPP_ARM7L OUTPUT_STRIP_TRAILING_WHITESPACE) -# OpenBSD and Clang -if ("${CRYPTOPP_X86_64}" STREQUAL "1") +# MinGW32 +if ("${CRYPTOPP_MINGW32}" STREQUAL "1") + set(CRYPTOPP_I386 "1") +endif() +# OpenBSD and MinGW64 +if ("${CRYPTOPP_X86_64}" STREQUAL "1" OR "${CRYPTOPP_MINGW64}" STREQUAL "1") set(CRYPTOPP_AMD64 "1") endif() # arm7l is another 32-bit hard float machine. RPI-3 is arm7l on 64-bit hardware -if ("${CRYPTOPP_ARM}" STREQUAL "1") - set(CRYPTOPP_ARMHF "1") -endif() -if ("${CRYPTOPP_ARM7L}" STREQUAL "1") +if ("${CRYPTOPP_ARM}" STREQUAL "1" OR "${CRYPTOPP_ARM7L}" STREQUAL "1") set(CRYPTOPP_ARMHF "1") endif()