mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-11-30 11:32:03 +00:00
34 lines
1.1 KiB
CMake
34 lines
1.1 KiB
CMake
if (HAVE_SSSE3)
|
|
option (ENABLE_HYPERSCAN "Enable hyperscan" ON)
|
|
endif ()
|
|
|
|
if (ENABLE_HYPERSCAN)
|
|
|
|
option (USE_INTERNAL_HYPERSCAN_LIBRARY "Set to FALSE to use system hyperscan instead of the bundled" ${NOT_UNBUNDLED})
|
|
|
|
if (NOT EXISTS "${ClickHouse_SOURCE_DIR}/contrib/hyperscan/CMakeLists.txt")
|
|
if (USE_INTERNAL_HYPERSCAN_LIBRARY)
|
|
message (WARNING "submodule contrib/hyperscan is missing. to fix try run: \n git submodule update --init --recursive")
|
|
endif ()
|
|
set (MISSING_INTERNAL_HYPERSCAN_LIBRARY 1)
|
|
set (USE_INTERNAL_HYPERSCAN_LIBRARY 0)
|
|
endif ()
|
|
|
|
if (NOT USE_INTERNAL_HYPERSCAN_LIBRARY)
|
|
find_library (HYPERSCAN_LIBRARY hs)
|
|
find_path (HYPERSCAN_INCLUDE_DIR NAMES hs/hs.h hs.h PATHS ${HYPERSCAN_INCLUDE_PATHS})
|
|
endif ()
|
|
|
|
if (HYPERSCAN_LIBRARY AND HYPERSCAN_INCLUDE_DIR)
|
|
set (USE_HYPERSCAN 1)
|
|
elseif (NOT MISSING_INTERNAL_HYPERSCAN_LIBRARY)
|
|
set (HYPERSCAN_INCLUDE_DIR ${ClickHouse_SOURCE_DIR}/contrib/hyperscan/src)
|
|
set (HYPERSCAN_LIBRARY hs)
|
|
set (USE_HYPERSCAN 1)
|
|
set (USE_INTERNAL_HYPERSCAN_LIBRARY 1)
|
|
endif()
|
|
|
|
message (STATUS "Using hyperscan=${USE_HYPERSCAN}: ${HYPERSCAN_INCLUDE_DIR} : ${HYPERSCAN_LIBRARY}")
|
|
|
|
endif ()
|