mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-11-27 18:12:02 +00:00
Make usearch dependencies separate submodules
This commit is contained in:
parent
ac7a27b7ff
commit
c823d1f619
9
.gitmodules
vendored
9
.gitmodules
vendored
@ -350,3 +350,12 @@
|
|||||||
[submodule "contrib/usearch"]
|
[submodule "contrib/usearch"]
|
||||||
path = contrib/usearch
|
path = contrib/usearch
|
||||||
url = https://github.com/unum-cloud/usearch.git
|
url = https://github.com/unum-cloud/usearch.git
|
||||||
|
[submodule "contrib/SimSIMD"]
|
||||||
|
path = contrib/SimSIMD
|
||||||
|
url = https://github.com/ashvardanian/SimSIMD.git
|
||||||
|
[submodule "contrib/FP16"]
|
||||||
|
path = contrib/FP16
|
||||||
|
url = https://github.com/Maratyszcza/FP16.git
|
||||||
|
[submodule "contrib/robin-map"]
|
||||||
|
path = contrib/robin-map
|
||||||
|
url = https://github.com/Tessil/robin-map.git
|
||||||
|
12
contrib/CMakeLists.txt
vendored
12
contrib/CMakeLists.txt
vendored
@ -196,7 +196,17 @@ if (ARCH_S390X)
|
|||||||
add_contrib(crc32-s390x-cmake crc32-s390x)
|
add_contrib(crc32-s390x-cmake crc32-s390x)
|
||||||
endif()
|
endif()
|
||||||
add_contrib (annoy-cmake annoy)
|
add_contrib (annoy-cmake annoy)
|
||||||
add_contrib (usearch-cmake usearch)
|
|
||||||
|
option(ENABLE_USEARCH "Enable USearch (Approximate Neighborhood Search, HNSW) support" ${ENABLE_LIBRARIES})
|
||||||
|
if (ENABLE_USEARCH)
|
||||||
|
add_contrib (FP16-cmake FP16)
|
||||||
|
add_contrib (robin-map-cmake robin-map)
|
||||||
|
add_contrib (SimSIMD-cmake SimSIMD)
|
||||||
|
add_contrib (usearch-cmake usearch) # requires: FP16, robin-map, SimdSIMD
|
||||||
|
else ()
|
||||||
|
message(STATUS "Not using USearch")
|
||||||
|
endif ()
|
||||||
|
|
||||||
add_contrib (xxHash-cmake xxHash)
|
add_contrib (xxHash-cmake xxHash)
|
||||||
|
|
||||||
add_contrib (libbcrypt-cmake libbcrypt)
|
add_contrib (libbcrypt-cmake libbcrypt)
|
||||||
|
1
contrib/FP16
vendored
Submodule
1
contrib/FP16
vendored
Submodule
@ -0,0 +1 @@
|
|||||||
|
Subproject commit 0a92994d729ff76a58f692d3028ca1b64b145d91
|
1
contrib/FP16-cmake/CMakeLists.txt
Normal file
1
contrib/FP16-cmake/CMakeLists.txt
Normal file
@ -0,0 +1 @@
|
|||||||
|
# See contrib/usearch-cmake/CMakeLists.txt
|
1
contrib/SimSIMD
vendored
Submodule
1
contrib/SimSIMD
vendored
Submodule
@ -0,0 +1 @@
|
|||||||
|
Subproject commit de2cb75b9e9e3389d5e1e51fd9f8ed151f3c17cf
|
1
contrib/SimSIMD-cmake/CMakeLists.txt
Normal file
1
contrib/SimSIMD-cmake/CMakeLists.txt
Normal file
@ -0,0 +1 @@
|
|||||||
|
# See contrib/usearch-cmake/CMakeLists.txt
|
1
contrib/robin-map
vendored
Submodule
1
contrib/robin-map
vendored
Submodule
@ -0,0 +1 @@
|
|||||||
|
Subproject commit 851a59e0e3063ee0e23089062090a73fd3de482d
|
1
contrib/robin-map-cmake/CMakeLists.txt
Normal file
1
contrib/robin-map-cmake/CMakeLists.txt
Normal file
@ -0,0 +1 @@
|
|||||||
|
# See contrib/usearch-cmake/CMakeLists.txt
|
@ -1,15 +1,17 @@
|
|||||||
option(ENABLE_USEARCH "Enable USearch (Approximate Neighborhood Search, HNSW) support" ${ENABLE_LIBRARIES})
|
|
||||||
|
|
||||||
if (NOT ENABLE_USEARCH)
|
|
||||||
message (STATUS "Not using usearch")
|
|
||||||
return()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(USEARCH_PROJECT_DIR "${ClickHouse_SOURCE_DIR}/contrib/usearch")
|
set(USEARCH_PROJECT_DIR "${ClickHouse_SOURCE_DIR}/contrib/usearch")
|
||||||
set(USEARCH_SOURCE_DIR "${USEARCH_PROJECT_DIR}/include")
|
set(USEARCH_SOURCE_DIR "${USEARCH_PROJECT_DIR}/include")
|
||||||
|
|
||||||
|
set(FP16_PROJECT_DIR "${ClickHouse_SOURCE_DIR}/contrib/FP16")
|
||||||
|
set(ROBIN_MAP_PROJECT_DIR "${ClickHouse_SOURCE_DIR}/contrib/robin-map")
|
||||||
|
set(SIMSIMD_PROJECT_DIR "${ClickHouse_SOURCE_DIR}/contrib/SimSIMD-map")
|
||||||
|
|
||||||
add_library(_usearch INTERFACE)
|
add_library(_usearch INTERFACE)
|
||||||
target_include_directories(_usearch SYSTEM INTERFACE ${USEARCH_PROJECT_DIR}/fp16/include ${USEARCH_PROJECT_DIR}/robin-map/include ${USEARCH_PROJECT_DIR}/simsimd/include ${USEARCH_SOURCE_DIR})
|
|
||||||
|
target_include_directories(_usearch SYSTEM INTERFACE
|
||||||
|
${FP16_PROJECT_DIR}/include
|
||||||
|
${ROBIN_MAP_PROJECT_DIR}/include
|
||||||
|
${SIMSIMD_PROJECT_DIR}/include
|
||||||
|
${USEARCH_SOURCE_DIR})
|
||||||
|
|
||||||
add_library(ch_contrib::usearch ALIAS _usearch)
|
add_library(ch_contrib::usearch ALIAS _usearch)
|
||||||
target_compile_definitions(_usearch INTERFACE ENABLE_USEARCH)
|
target_compile_definitions(_usearch INTERFACE ENABLE_USEARCH)
|
Loading…
Reference in New Issue
Block a user