CMakeLists.txt 2.2 KB
Newer Older
J
jinhai 已提交
1 2 3 4 5 6
#-------------------------------------------------------------------------------
# Copyright 上海赜睿信息科技有限公司(Zilliz) - All Rights Reserved
# Unauthorized copying of this file, via any medium is strictly prohibited.
# Proprietary and confidential.
#-------------------------------------------------------------------------------

J
jinhai 已提交
7 8 9 10
aux_source_directory(cache cache_files)
aux_source_directory(config config_files)
aux_source_directory(server server_files)
aux_source_directory(utils utils_files)
G
groot 已提交
11
aux_source_directory(db db_files)
X
xj.lin 已提交
12
aux_source_directory(wrapper wrapper_files)
G
groot 已提交
13

J
jinhai 已提交
14 15 16 17
set(license_check_files
        ${CMAKE_CURRENT_SOURCE_DIR}/license/License.cpp
        )

G
groot 已提交
18 19 20
set(service_files
        thrift/gen-cpp/VecService.cpp
        thrift/gen-cpp/VectorService_constants.cpp
G
groot 已提交
21 22
        thrift/gen-cpp/VectorService_types.cpp
        )
G
groot 已提交
23

J
jinhai 已提交
24 25
set(vecwise_engine_src
        ${CMAKE_CURRENT_SOURCE_DIR}/main.cpp
G
groot 已提交
26
        ${cache_files}
G
groot 已提交
27
        ${db_files}
G
groot 已提交
28 29
        ${wrapper_files}
        )
X
xj.lin 已提交
30

G
groot 已提交
31
include_directories(/usr/include)
X
xj.lin 已提交
32 33
include_directories(/usr/local/cuda/include)
find_library(cuda_library cudart cublas HINTS /usr/local/cuda/lib64)
J
jinhai 已提交
34

G
groot 已提交
35 36 37 38
cuda_add_library(vecwise_engine STATIC ${vecwise_engine_src})

set(engine_libs
        pthread
J
jinhai 已提交
39 40 41 42 43
        libfaiss.a
        libgomp.a
        libopenblas.a
        libgfortran.a
        libquadmath.a
G
groot 已提交
44 45
        cudart
        cublas
J
jinhai 已提交
46
        libsqlite3.a
G
groot 已提交
47
        )
G
groot 已提交
48

G
groot 已提交
49 50 51
target_link_libraries(vecwise_engine ${engine_libs} ${cuda_library})

add_executable(vecwise_server
G
groot 已提交
52 53 54
        ${config_files}
        ${server_files}
        ${utils_files}
G
groot 已提交
55
        ${service_files}
J
jinhai 已提交
56
        ${license_check_files}
G
groot 已提交
57
        ${VECWISE_THIRD_PARTY_BUILD}/include/easylogging++.cc
G
groot 已提交
58 59
        )

G
groot 已提交
60
set(server_libs
G
groot 已提交
61
        vecwise_engine
J
jinhai 已提交
62 63
        librocksdb.a
        libthrift.a
G
groot 已提交
64
        pthread
J
jinhai 已提交
65 66 67
        libyaml-cpp.a
        libboost_system.a
        libboost_filesystem.a
G
groot 已提交
68
        pthread
J
jinhai 已提交
69 70 71 72
        libsnappy.a
        libbz2.a
        libz.a
        libzstd.a
73
        liblz4.a
G
groot 已提交
74
        )
G
groot 已提交
75 76

target_link_libraries(vecwise_server ${server_libs})
J
jinhai 已提交
77 78 79 80 81

set(license_generator_src
        ${CMAKE_CURRENT_SOURCE_DIR}/license/LicenseGenerator.cpp)

add_executable(license_generator ${license_generator_src})
82 83

install(TARGETS vecwise_server DESTINATION bin)