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}) 10set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden") 11 12include(cmake/utils.cmake) 13include(${CMAKE_SOURCE_DIR}/cmake/external_libs/eigen.cmake) 14include(${CMAKE_SOURCE_DIR}/cmake/external_libs/json.cmake) 15include(${CMAKE_SOURCE_DIR}/cmake/dependency_securec.cmake) 16include(${CMAKE_SOURCE_DIR}/cmake/external_libs/protobuf.cmake) 17 18if(MS_BUILD_GRPC) 19 # build dependencies of gRPC 20 include(${CMAKE_SOURCE_DIR}/cmake/external_libs/openssl.cmake) 21 include(${CMAKE_SOURCE_DIR}/cmake/external_libs/absl.cmake) 22 include(${CMAKE_SOURCE_DIR}/cmake/external_libs/c-ares.cmake) 23 include(${CMAKE_SOURCE_DIR}/cmake/external_libs/zlib.cmake) 24 include(${CMAKE_SOURCE_DIR}/cmake/external_libs/re2.cmake) 25 # build gRPC 26 include(${CMAKE_SOURCE_DIR}/cmake/external_libs/grpc.cmake) 27 # build event 28 include(${CMAKE_SOURCE_DIR}/cmake/external_libs/libevent.cmake) 29endif() 30 31include(${CMAKE_SOURCE_DIR}/cmake/external_libs/pybind11.cmake) 32MESSAGE("go to link flatbuffers") 33include(${CMAKE_SOURCE_DIR}/cmake/external_libs/flatbuffers.cmake) 34if(USE_GLOG) 35 include(${CMAKE_SOURCE_DIR}/cmake/external_libs/glog.cmake) 36endif() 37 38find_package(Python3) 39include_directories(${Python3_INCLUDE_DIRS}) 40include_directories(${CMAKE_SOURCE_DIR}/third_party) 41if(ENABLE_MPI) 42 include(${CMAKE_SOURCE_DIR}/cmake/external_libs/ompi.cmake) 43endif() 44 45if(ENABLE_CPU) 46 include(${CMAKE_SOURCE_DIR}/cmake/external_libs/mkl_dnn.cmake) 47endif() 48 49if(ENABLE_GPU) 50 if(ENABLE_MPI) 51 include(${CMAKE_SOURCE_DIR}/cmake/external_libs/nccl.cmake) 52 endif() 53endif() 54 55if(ENABLE_GE) 56 include_directories(${CMAKE_SOURCE_DIR}/third_party/ge/include) 57 include_directories(${CMAKE_SOURCE_DIR}/third_party/ge/include/external) 58 include_directories(${CMAKE_SOURCE_DIR}/third_party/ge/include/external/graph) 59 link_directories(${CMAKE_SOURCE_DIR}/third_party/ge/lib) 60elseif(ENABLE_D OR ENABLE_ACL OR ENABLE_TESTCASES) 61 include_directories(${CMAKE_SOURCE_DIR}/graphengine/inc) 62 include_directories(${CMAKE_SOURCE_DIR}/graphengine/inc/external) 63 include_directories(${CMAKE_SOURCE_DIR}/graphengine/metadef/inc) 64 include_directories(${CMAKE_SOURCE_DIR}/graphengine/metadef/inc/external) 65 include_directories(${CMAKE_SOURCE_DIR}/graphengine/metadef/inc/external/graph) 66endif() 67 68if(ENABLE_GE OR ENABLE_D OR ENABLE_ACL OR ENABLE_TESTCASES) 69 include_directories(${CMAKE_SOURCE_DIR}/graphengine/inc) 70 include_directories(${CMAKE_SOURCE_DIR}/graphengine/inc/external) 71 include_directories(${CMAKE_SOURCE_DIR}/graphengine/inc/framework) 72 include_directories(${CMAKE_SOURCE_DIR}/graphengine/third_party/fwkacllib/inc) 73 include_directories(${CMAKE_SOURCE_DIR}/graphengine/third_party/fwkacllib/inc/toolchain) 74 include_directories(${CMAKE_SOURCE_DIR}/graphengine/metadef/inc) 75 include_directories(${CMAKE_SOURCE_DIR}/graphengine/metadef/inc/external) 76 include_directories(${CMAKE_SOURCE_DIR}/graphengine/metadef/inc/external/graph) 77endif() 78 79if(ENABLE_MINDDATA) 80 include(${CMAKE_SOURCE_DIR}/cmake/external_libs/icu4c.cmake) 81 include(${CMAKE_SOURCE_DIR}/cmake/external_libs/libtiff.cmake) 82 include(${CMAKE_SOURCE_DIR}/cmake/external_libs/opencv.cmake) 83 include(${CMAKE_SOURCE_DIR}/cmake/external_libs/sqlite.cmake) 84 include(${CMAKE_SOURCE_DIR}/cmake/external_libs/tinyxml2.cmake) 85 include(${CMAKE_SOURCE_DIR}/cmake/external_libs/cppjieba.cmake) 86 include(${CMAKE_SOURCE_DIR}/cmake/external_libs/sentencepiece.cmake) 87endif() 88 89if(ENABLE_MINDDATA) 90 include(${CMAKE_SOURCE_DIR}/cmake/external_libs/jpeg_turbo.cmake) 91endif() 92 93if(ENABLE_TESTCASES OR ENABLE_CPP_ST) 94 include(${CMAKE_SOURCE_DIR}/cmake/external_libs/gtest.cmake) 95endif() 96 97set(CMAKE_CXX_FLAGS ${_ms_tmp_CMAKE_CXX_FLAGS_F}) 98