CMakeLists.txt 2.4 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
include_directories(/usr/local/cuda/include)
J
jinhai 已提交
33

X
xj.lin 已提交
34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55
if (GPU_VERSION STREQUAL "ON")
    link_directories(/usr/local/cuda/lib64)
    set(engine_libs
            pthread
            libfaiss.a
            libgomp.a
            libopenblas.a
            libgfortran.a
            libquadmath.a
            cudart
            cublas
            libsqlite3.a
            )
else()
    set(engine_libs
            pthread
            libfaiss.a
            libgomp.a
            libopenblas.a
            libgfortran.a
            libquadmath.a
            libsqlite3.a
G
groot 已提交
56
        )
X
xj.lin 已提交
57 58 59
endif ()

cuda_add_library(vecwise_engine STATIC ${vecwise_engine_src})
G
groot 已提交
60

X
xj.lin 已提交
61
target_link_libraries(vecwise_engine ${engine_libs})
G
groot 已提交
62 63

add_executable(vecwise_server
G
groot 已提交
64 65 66
        ${config_files}
        ${server_files}
        ${utils_files}
G
groot 已提交
67
        ${service_files}
J
jinhai 已提交
68
        ${license_check_files}
G
groot 已提交
69
        ${VECWISE_THIRD_PARTY_BUILD}/include/easylogging++.cc
G
groot 已提交
70 71
        )

G
groot 已提交
72
set(server_libs
G
groot 已提交
73
        vecwise_engine
J
jinhai 已提交
74 75
        librocksdb.a
        libthrift.a
G
groot 已提交
76
        pthread
J
jinhai 已提交
77 78 79
        libyaml-cpp.a
        libboost_system.a
        libboost_filesystem.a
G
groot 已提交
80
        pthread
J
jinhai 已提交
81 82 83 84
        libsnappy.a
        libbz2.a
        libz.a
        libzstd.a
85
        liblz4.a
X
xj.lin 已提交
86
        dl
G
groot 已提交
87
        )
G
groot 已提交
88 89

target_link_libraries(vecwise_server ${server_libs})
J
jinhai 已提交
90 91 92 93 94

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

add_executable(license_generator ${license_generator_src})
95 96

install(TARGETS vecwise_server DESTINATION bin)