diff options
-rw-r--r-- | cmake/checks.cmake | 4 | ||||
-rw-r--r-- | src/crypto/mac/ghash/pclmulqdq/CMakeLists.txt | 4 |
2 files changed, 8 insertions, 0 deletions
diff --git a/cmake/checks.cmake b/cmake/checks.cmake index cd80856..225c443 100644 --- a/cmake/checks.cmake +++ b/cmake/checks.cmake @@ -1,9 +1,13 @@ +include(CheckCCompilerFlag) include(CheckCSourceCompiles) include(CheckPrototypeDefinition) include(CheckSymbolExists) include(CheckTypeSize) set(CMAKE_REQUIRED_DEFINITIONS "-D_GNU_SOURCE") +if(ARCH_X86 OR ARCH_X86_64) + check_c_compiler_flag("-mpclmul" HAVE_PCLMUL) +endif(ARCH_X86 OR ARCH_X86_64) check_c_source_compiles(" #include <sys/types.h> diff --git a/src/crypto/mac/ghash/pclmulqdq/CMakeLists.txt b/src/crypto/mac/ghash/pclmulqdq/CMakeLists.txt index a11ad02..59bc09d 100644 --- a/src/crypto/mac/ghash/pclmulqdq/CMakeLists.txt +++ b/src/crypto/mac/ghash/pclmulqdq/CMakeLists.txt @@ -1,4 +1,8 @@ if(ARCH_X86 OR ARCH_X86_64) + if(NOT HAVE_PCLMUL) + message(FATAL_ERROR "WITH_MAC_GHASH_PCLMULQDQ enabled, but there is no compiler support for -mpclmul") + endif(NOT HAVE_PCLMUL) + fastd_mac_impl(ghash pclmulqdq ghash_pclmulqdq.c ghash_pclmulqdq_impl.c |