Skip to content

Commit

Permalink
link cardinal by cmake (#469)
Browse files Browse the repository at this point in the history
Signed-off-by: xianliang.li <[email protected]>
  • Loading branch information
foxspy committed Mar 15, 2024
1 parent fde76ec commit 052f596
Show file tree
Hide file tree
Showing 5 changed files with 34 additions and 5 deletions.
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,8 @@ venv/
**/knowhere/swigknowhere.py
wheelhouse/*

**/thirdparty/cardinal

*.bin

CMakeUserPresets.json
Expand Down
3 changes: 0 additions & 3 deletions .gitmodules

This file was deleted.

3 changes: 2 additions & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -113,9 +113,10 @@ knowhere_file_glob(GLOB_RECURSE KNOWHERE_SRCS src/common/*.cc src/index/*.cc

set(KNOWHERE_LINKER_LIBS "")


if(WITH_CARDINAL)
add_definitions(-DKNOWHERE_WITH_CARDINAL)
include(thirdparty/cardinal/know/libcardinal.cmake)
include(cmake/libs/libcardinal.cmake)
endif()

if(WITH_DISKANN)
Expand Down
30 changes: 30 additions & 0 deletions cmake/libs/libcardinal.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
set(CARDINAL_VERSION master)
set(CARDINAL_REPO_URL "https://github.com/zilliztech/cardinal.git")

set(CARDINAL_REPO_DIR "${CMAKE_SOURCE_DIR}/thirdparty/cardinal")

message(STATUS "Build Cardinal-${CARDINAL_VERSION}")

if (NOT EXISTS "${CARDINAL_REPO_DIR}/.git")
execute_process(COMMAND git clone ${CARDINAL_REPO_URL} ${CARDINAL_REPO_DIR}
RESULT_VARIABLE CARDINAL_CLONE_RESULT
OUTPUT_VARIABLE CARDINAL_CLONE_OUTPUT
ERROR_VARIABLE CARDINAL_CLONE_ERROR
OUTPUT_STRIP_TRAILING_WHITESPACE
ERROR_STRIP_TRAILING_WHITESPACE)
if (NOT CARDINAL_CLONE_RESULT EQUAL "0")
message(FATAL_ERROR "Failed to clone cardinal: ${CARDINAL_CLONE_ERROR}")
else()
execute_process(COMMAND git -C ${CARDINAL_REPO_DIR} checkout ${CARDINAL_VERSION}
RESULT_VARIABLE CARDINAL_CHECKOUT_RESULT
OUTPUT_VARIABLE CARDINAL_CHECKOUT_OUTPUT
ERROR_VARIABLE CARDINAL_CHECKOUT_ERROR
OUTPUT_STRIP_TRAILING_WHITESPACE
ERROR_STRIP_TRAILING_WHITESPACE)
if (NOT CARDINAL_CHECKOUT_RESULT EQUAL "0")
message(FATAL_ERROR "Failed to checkout cardinal: ${CARDINAL_CHECKOUT_ERROR}")
endif()
endif()
endif()

include(${CARDINAL_REPO_DIR}/know/libcardinal.cmake)
1 change: 0 additions & 1 deletion thirdparty/cardinal
Submodule cardinal deleted from a60b00

0 comments on commit 052f596

Please sign in to comment.