You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

CMakeLists.txt 2.5 kB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. cmake_minimum_required(VERSION 3.14)
  2. project (MindSpore)
  3. include(${CMAKE_SOURCE_DIR}/cmake/options.cmake)
  4. set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake/modules/")
  5. set(CMAKE_CXX_FLAGS_DEBUG "$ENV{CXXFLAGS} -O0 -g2 -ggdb -fno-inline-functions -fno-omit-frame-pointer -Wl,--allow-shlib-undefined -D_LIBCPP_INLINE_VISIBILITY='' -D'_LIBCPP_EXTERN_TEMPLATE(...)=' -DHALF_ENABLE_CPP11_USER_LITERALS=0 -D_FORTIFY_SOURCE=2 -Wno-cpp")
  6. set(CMAKE_CXX_FLAGS_RELEASE "$ENV{CXXFLAGS} -O2 -Wl,--allow-shlib-undefined -DHALF_ENABLE_CPP11_USER_LITERALS=0 -D_FORTIFY_SOURCE=2")
  7. set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -I/usr/local/include -std=c++17 -Werror -Wall -Wno-deprecated-declarations -fPIC")
  8. set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
  9. set(PYBIND11_CPP_STANDARD -std=c++17)
  10. set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OPTION_CXX_FLAGS}")
  11. find_package(Threads)
  12. include(${CMAKE_SOURCE_DIR}/cmake/mind_expression.cmake)
  13. include_directories(${CMAKE_CURRENT_SOURCE_DIR})
  14. include_directories(${CMAKE_CURRENT_SOURCE_DIR}/third_party/flatbuffers/include)
  15. include_directories(${CMAKE_CURRENT_SOURCE_DIR}/third_party/flatbuffers/include/flatbuffers)
  16. include(${CMAKE_SOURCE_DIR}/cmake/dependency_utils.cmake)
  17. find_package(Python3 COMPONENTS Interpreter Development)
  18. if(Python3_FOUND)
  19. set(PYTHON_INCLUDE_DIRS "${Python3_INCLUDE_DIRS}")
  20. set(PYTHON_LIBRARIES "${Python3_LIBRARIES}")
  21. else()
  22. find_python_package(py_inc py_lib)
  23. set(PYTHON_INCLUDE_DIRS "${py_inc}")
  24. set(PYTHON_LIBRARIES "${py_lib}")
  25. endif()
  26. message("PYTHON_INCLUDE_DIRS = ${PYTHON_INCLUDE_DIRS}")
  27. message("PYTHON_LIBRARIES = ${PYTHON_LIBRARIES}")
  28. include_directories(${PYTHON_INCLUDE_DIRS})
  29. set(MS_CCSRC_PATH ${CMAKE_SOURCE_DIR}/mindspore/ccsrc)
  30. set(MS_CCSRC_BUILD_PATH ${BUILD_PATH}/mindspore/mindspore/ccsrc)
  31. if (ENABLE_GE)
  32. link_directories(${CMAKE_SOURCE_DIR}/third_party/ge/lib)
  33. else()
  34. include(${CMAKE_SOURCE_DIR}/cmake/dependency_graphengine.cmake)
  35. endif()
  36. include_directories(${CMAKE_CURRENT_SOURCE_DIR}/graphengine/inc)
  37. include_directories(${CMAKE_CURRENT_SOURCE_DIR}/graphengine/inc/external)
  38. include_directories(${CMAKE_CURRENT_SOURCE_DIR}/graphengine/inc/framework)
  39. include_directories(${CMAKE_CURRENT_SOURCE_DIR}/graphengine/third_party/fwkacllib/inc)
  40. include_directories(${CMAKE_CURRENT_SOURCE_DIR}/graphengine/third_party/fwkacllib/inc/toolchain)
  41. set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden")
  42. add_subdirectory(mindspore/ccsrc)
  43. if (ENABLE_TESTCASES)
  44. add_subdirectory(tests)
  45. endif()