You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

CMakeLists.txt 1.6KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. SET(CHACHASRC ${CMAKE_CURRENT_SOURCE_DIR}/chacha20/chacha.c
  2. ${CMAKE_CURRENT_SOURCE_DIR}/chacha20/ref.c)
  3. SET(BASE64SRC ${CMAKE_CURRENT_SOURCE_DIR}/base64/ref.c
  4. ${CMAKE_CURRENT_SOURCE_DIR}/base64/base64.c)
  5. IF (HAVE_AVX2)
  6. IF ("${ARCH}" STREQUAL "x86_64")
  7. SET(CHACHASRC ${CHACHASRC} ${CMAKE_CURRENT_SOURCE_DIR}/chacha20/avx2.S)
  8. MESSAGE(STATUS "Cryptobox: AVX2 support is added (chacha20)")
  9. ENDIF ()
  10. SET(BASE64SRC ${BASE64SRC} ${CMAKE_CURRENT_SOURCE_DIR}/base64/avx2.c)
  11. MESSAGE(STATUS "Cryptobox: AVX2 support is added (base64)")
  12. ENDIF (HAVE_AVX2)
  13. IF (HAVE_AVX)
  14. IF ("${ARCH}" STREQUAL "x86_64")
  15. SET(CHACHASRC ${CHACHASRC} ${CMAKE_CURRENT_SOURCE_DIR}/chacha20/avx.S)
  16. MESSAGE(STATUS "Cryptobox: AVX support is added (chacha20)")
  17. ENDIF ()
  18. ENDIF (HAVE_AVX)
  19. IF (HAVE_SSE2)
  20. IF ("${ARCH}" STREQUAL "x86_64")
  21. SET(CHACHASRC ${CHACHASRC} ${CMAKE_CURRENT_SOURCE_DIR}/chacha20/sse2.S)
  22. MESSAGE(STATUS "Cryptobox: SSE2 support is added (chacha20)")
  23. ENDIF ()
  24. ENDIF (HAVE_SSE2)
  25. IF (HAVE_SSE42)
  26. IF ("${ARCH}" STREQUAL "x86_64")
  27. SET(BASE64SRC ${BASE64SRC} ${CMAKE_CURRENT_SOURCE_DIR}/base64/sse42.c)
  28. MESSAGE(STATUS "Cryptobox: SSE42 support is added (base64)")
  29. ENDIF ()
  30. ENDIF (HAVE_SSE42)
  31. CONFIGURE_FILE(platform_config.h.in platform_config.h)
  32. INCLUDE_DIRECTORIES("${CMAKE_CURRENT_BINARY_DIR}")
  33. SET(LIBCRYPTOBOXSRC ${CMAKE_CURRENT_SOURCE_DIR}/cryptobox.c
  34. ${CMAKE_CURRENT_SOURCE_DIR}/keypair.c
  35. ${CMAKE_CURRENT_SOURCE_DIR}/keypairs_cache.c
  36. ${CMAKE_CURRENT_SOURCE_DIR}/catena/catena.c)
  37. SET(RSPAMD_CRYPTOBOX ${LIBCRYPTOBOXSRC} ${CHACHASRC} ${BASE64SRC} PARENT_SCOPE)