• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1set(SECURE_CXX_FLAGS "")
2if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
3    if(WIN32)
4        set(SECURE_CXX_FLAGS "-fstack-protector-all")
5    else()
6    set(SECURE_CXX_FLAGS "-fstack-protector-all -Wl,-z,relro,-z,now,-z,noexecstack")
7    endif()
8endif()
9set(_ms_tmp_CMAKE_CXX_FLAGS_F ${CMAKE_CXX_FLAGS})
10
11if(NOT MSVC)
12    set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden")
13endif()
14
15set(TOP_DIR ${CMAKE_SOURCE_DIR})
16
17include(cmake/utils.cmake)
18include(${CMAKE_SOURCE_DIR}/cmake/external_libs/robin.cmake)
19include(${CMAKE_SOURCE_DIR}/cmake/external_libs/eigen.cmake)
20include(${CMAKE_SOURCE_DIR}/cmake/external_libs/json.cmake)
21include(${CMAKE_SOURCE_DIR}/cmake/dependency_securec.cmake)
22include(${CMAKE_SOURCE_DIR}/cmake/external_libs/protobuf.cmake)
23
24if(MS_BUILD_GRPC)
25    # build dependencies of gRPC
26    include(${CMAKE_SOURCE_DIR}/cmake/external_libs/openssl.cmake)
27    include(${CMAKE_SOURCE_DIR}/cmake/external_libs/absl.cmake)
28    include(${CMAKE_SOURCE_DIR}/cmake/external_libs/c-ares.cmake)
29    include(${CMAKE_SOURCE_DIR}/cmake/external_libs/zlib.cmake)
30    include(${CMAKE_SOURCE_DIR}/cmake/external_libs/re2.cmake)
31    # build gRPC
32    include(${CMAKE_SOURCE_DIR}/cmake/external_libs/grpc.cmake)
33    # build event
34    include(${CMAKE_SOURCE_DIR}/cmake/external_libs/libevent.cmake)
35endif()
36
37include(${CMAKE_SOURCE_DIR}/cmake/external_libs/pybind11.cmake)
38MESSAGE("go to link flatbuffers")
39include(${CMAKE_SOURCE_DIR}/cmake/external_libs/flatbuffers.cmake)
40if(USE_GLOG)
41    include(${CMAKE_SOURCE_DIR}/cmake/external_libs/glog.cmake)
42endif()
43
44find_package(Python3)
45include_directories(${Python3_INCLUDE_DIRS})
46include_directories(${CMAKE_SOURCE_DIR}/third_party)
47if(ENABLE_MPI)
48    include(${CMAKE_SOURCE_DIR}/cmake/external_libs/ompi.cmake)
49endif()
50
51if(ENABLE_CPU)
52    include(${CMAKE_SOURCE_DIR}/cmake/external_libs/mkl_dnn.cmake)
53endif()
54
55if(MSVC)
56    include(${CMAKE_SOURCE_DIR}/cmake/external_libs/dirent.cmake)
57endif()
58
59if(ENABLE_GPU AND GPU_BACKEND_CUDA)
60    include(${CMAKE_SOURCE_DIR}/cmake/external_libs/cub.cmake)
61    include(${CMAKE_SOURCE_DIR}/cmake/external_libs/cucollections.cmake)
62    if(ENABLE_MPI)
63        include(${CMAKE_SOURCE_DIR}/cmake/external_libs/nccl.cmake)
64    endif()
65endif()
66
67if(ENABLE_MINDDATA)
68    include(${CMAKE_SOURCE_DIR}/cmake/external_libs/icu4c.cmake)
69    include(${CMAKE_SOURCE_DIR}/cmake/external_libs/opencv.cmake)
70    include(${CMAKE_SOURCE_DIR}/cmake/external_libs/sqlite.cmake)
71    include(${CMAKE_SOURCE_DIR}/cmake/external_libs/tinyxml2.cmake)
72    include(${CMAKE_SOURCE_DIR}/cmake/external_libs/cppjieba.cmake)
73    include(${CMAKE_SOURCE_DIR}/cmake/external_libs/sentencepiece.cmake)
74    include(${CMAKE_SOURCE_DIR}/cmake/external_libs/jemalloc.cmake)
75    if(ENABLE_FFMPEG)
76        include(${CMAKE_SOURCE_DIR}/cmake/external_libs/ffmpeg.cmake)
77    endif()
78endif()
79
80if(ENABLE_MINDDATA)
81    include(${CMAKE_SOURCE_DIR}/cmake/external_libs/jpeg_turbo.cmake)
82endif()
83
84if(ENABLE_TESTCASES OR ENABLE_CPP_ST)
85    include(${CMAKE_SOURCE_DIR}/cmake/external_libs/gtest.cmake)
86    include(${CMAKE_SOURCE_DIR}/cmake/external_libs/mockcpp.cmake)
87endif()
88
89set(CMAKE_CXX_FLAGS ${_ms_tmp_CMAKE_CXX_FLAGS_F})
90