diff --git a/CMakeLists.txt b/CMakeLists.txt index d9948535..13156275 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -7,6 +7,7 @@ INCLUDE(CMakePushCheckState) INCLUDE(CheckCSourceCompiles) INCLUDE(deps/picotls/cmake/boringssl-adjust.cmake) INCLUDE(deps/picotls/cmake/dtrace-utils.cmake) +INCLUDE(deps/picotls/cmake/fusion.cmake) FIND_PACKAGE(OpenSSL REQUIRED) BORINGSSL_ADJUST() @@ -20,15 +21,7 @@ IF (WITH_DTRACE) MESSAGE(STATUS "Enabling USDT support") ENDIF () -CMAKE_PUSH_CHECK_STATE() -SET(CMAKE_REQUIRED_FLAGS "${CMAKE_REQUIRED_FLAGS} -mavx2 -maes -mpclmul -mvaes -mvpclmulqdq") -CHECK_C_SOURCE_COMPILES("int main(void) {}" CC_HAS_AESNI256) -CMAKE_POP_CHECK_STATE() -IF (CC_HAS_AESNI256) - SET(WITH_FUSION_DEFAULT "ON") -ELSE () - SET(WITH_FUSION_DEFAULT "OFF") -ENDIF () +CHECK_FUSION_PREREQUISITES() OPTION(WITH_FUSION "whether or not to use the Fusion AES-GCM engine in the cli binary" ${WITH_FUSION_DEFAULT}) # CMake defaults to a Debug build, whereas quicly defaults to an optimized (Release) build diff --git a/deps/picotls b/deps/picotls index 3b3a910c..73d64a3c 160000 --- a/deps/picotls +++ b/deps/picotls @@ -1 +1 @@ -Subproject commit 3b3a910c5cad139e3ac3ebca1a4b93604263e6c8 +Subproject commit 73d64a3c5df2699ff1ecd30b9d15d37d098397a0