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.

package_lite.cmake 14 kB

5 years ago
5 years ago
5 years ago
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234
  1. include(CMakePackageConfigHelpers)
  2. set(RUNTIME_PKG_NAME ${MAIN_DIR}-${RUNTIME_COMPONENT_NAME})
  3. set(CONVERTER_PKG_NAME ${MAIN_DIR}-${CONVERTER_COMPONENT_NAME})
  4. set(RUNTIME_ROOT_DIR ${RUNTIME_PKG_NAME}/)
  5. set(CONVERTER_ROOT_DIR ${CONVERTER_PKG_NAME}/)
  6. set(RUNTIME_LIB_DIR ${RUNTIME_PKG_NAME}/lib)
  7. set(RUNTIME_INC_DIR ${RUNTIME_PKG_NAME}/include)
  8. set(CONVERTER_LIB_DIR ${CONVERTER_PKG_NAME}/lib)
  9. set(TURBO_DIR ${RUNTIME_PKG_NAME}/minddata/third_party/libjpeg-turbo)
  10. set(MIND_DATA_INC_DIR ${RUNTIME_PKG_NAME}/minddata/include)
  11. set(MIND_DATA_LIB_DIR ${RUNTIME_PKG_NAME}/minddata/lib)
  12. set(LIB_DIR_RUN_X86 ${RUNTIME_PKG_NAME}/lib)
  13. if(BUILD_MINDDATA STREQUAL "full" OR BUILD_MINDDATA STREQUAL "wrapper")
  14. install(DIRECTORY ${TOP_DIR}/mindspore/ccsrc/minddata/dataset/include/ DESTINATION ${MIND_DATA_INC_DIR}
  15. COMPONENT ${RUNTIME_COMPONENT_NAME} FILES_MATCHING PATTERN "*.h" PATTERN "vision.h" EXCLUDE)
  16. if(PLATFORM_ARM64)
  17. file(GLOB JPEGTURBO_LIB_LIST ${jpeg_turbo_LIBPATH}/*.so)
  18. install(FILES ${TOP_DIR}/mindspore/lite/build/minddata/libminddata-lite.so DESTINATION ${MIND_DATA_LIB_DIR}
  19. COMPONENT ${RUNTIME_COMPONENT_NAME})
  20. install(FILES ${JPEGTURBO_LIB_LIST} DESTINATION ${TURBO_DIR}/lib COMPONENT ${RUNTIME_COMPONENT_NAME})
  21. elseif(PLATFORM_ARM32)
  22. file(GLOB JPEGTURBO_LIB_LIST ${jpeg_turbo_LIBPATH}/*.so)
  23. install(FILES ${TOP_DIR}/mindspore/lite/build/minddata/libminddata-lite.so DESTINATION ${MIND_DATA_LIB_DIR}
  24. COMPONENT ${RUNTIME_COMPONENT_NAME})
  25. install(FILES ${JPEGTURBO_LIB_LIST} DESTINATION ${TURBO_DIR}/lib COMPONENT ${RUNTIME_COMPONENT_NAME})
  26. else()
  27. install(FILES ${TOP_DIR}/mindspore/lite/build/minddata/libminddata-lite.so DESTINATION ${MIND_DATA_LIB_DIR}
  28. COMPONENT ${RUNTIME_COMPONENT_NAME})
  29. install(FILES ${jpeg_turbo_LIBPATH}/libjpeg.so.62.3.0 DESTINATION ${TURBO_DIR}/lib RENAME libjpeg.so.62
  30. COMPONENT ${RUNTIME_COMPONENT_NAME})
  31. install(FILES ${jpeg_turbo_LIBPATH}/libturbojpeg.so.0.2.0 DESTINATION ${TURBO_DIR}/lib RENAME libturbojpeg.so.0
  32. COMPONENT ${RUNTIME_COMPONENT_NAME})
  33. endif()
  34. endif()
  35. if(BUILD_MINDDATA STREQUAL "lite")
  36. install(DIRECTORY ${TOP_DIR}/mindspore/ccsrc/minddata/dataset/include/ DESTINATION ${MIND_DATA_INC_DIR}
  37. COMPONENT ${RUNTIME_COMPONENT_NAME} FILES_MATCHING PATTERN "*.h")
  38. if(PLATFORM_ARM64)
  39. install(FILES ${TOP_DIR}/mindspore/lite/build/minddata/libminddata-lite.so DESTINATION ${MIND_DATA_LIB_DIR}
  40. COMPONENT ${RUNTIME_COMPONENT_NAME})
  41. install(FILES ${TOP_DIR}/third_party/libjpeg-turbo/lib/libjpeg.so DESTINATION ${TURBO_DIR}/lib
  42. COMPONENT ${RUNTIME_COMPONENT_NAME})
  43. install(FILES ${TOP_DIR}/third_party/libjpeg-turbo/lib/libturbojpeg.so DESTINATION ${TURBO_DIR}/lib
  44. COMPONENT ${RUNTIME_COMPONENT_NAME})
  45. elseif(PLATFORM_ARM32)
  46. install(FILES ${TOP_DIR}/mindspore/lite/build/minddata/libminddata-lite.so DESTINATION ${MIND_DATA_LIB_DIR}
  47. COMPONENT ${RUNTIME_COMPONENT_NAME})
  48. install(FILES ${TOP_DIR}/third_party/libjpeg-turbo/lib/libjpeg.so DESTINATION ${TURBO_DIR}/lib
  49. COMPONENT ${RUNTIME_COMPONENT_NAME})
  50. install(FILES ${TOP_DIR}/third_party/libjpeg-turbo/lib/libturbojpeg.so DESTINATION ${TURBO_DIR}/lib
  51. COMPONENT ${RUNTIME_COMPONENT_NAME})
  52. else()
  53. install(FILES ${TOP_DIR}/mindspore/lite/build/minddata/libminddata-lite.so DESTINATION ${MIND_DATA_LIB_DIR}
  54. COMPONENT ${RUNTIME_COMPONENT_NAME})
  55. install(FILES ${TOP_DIR}/third_party/libjpeg-turbo/lib/libjpeg.so.62.3.0
  56. DESTINATION ${TURBO_DIR}/lib RENAME libjpeg.so.62 COMPONENT ${RUNTIME_COMPONENT_NAME})
  57. install(FILES ${TOP_DIR}/third_party/libjpeg-turbo/lib/libturbojpeg.so.0.2.0
  58. DESTINATION ${TURBO_DIR}/lib RENAME libturbojpeg.so.0 COMPONENT ${RUNTIME_COMPONENT_NAME})
  59. endif()
  60. endif()
  61. if(BUILD_MINDDATA STREQUAL "lite_cv")
  62. if(PLATFORM_ARM64)
  63. install(DIRECTORY ${TOP_DIR}/mindspore/ccsrc/minddata/dataset/kernels/image/lite_cv
  64. DESTINATION ${MIND_DATA_INC_DIR} COMPONENT ${RUNTIME_COMPONENT_NAME} FILES_MATCHING PATTERN "*.h")
  65. install(FILES ${TOP_DIR}/mindspore/lite/build/minddata/libminddata-lite.so
  66. DESTINATION ${MIND_DATA_LIB_DIR} COMPONENT ${RUNTIME_COMPONENT_NAME})
  67. elseif(PLATFORM_ARM32)
  68. install(DIRECTORY ${TOP_DIR}/mindspore/ccsrc/minddata/dataset/kernels/image/lite_cv
  69. DESTINATION ${MIND_DATA_INC_DIR} COMPONENT ${RUNTIME_COMPONENT_NAME} FILES_MATCHING PATTERN "*.h")
  70. install(FILES ${TOP_DIR}/mindspore/lite/build/minddata/libminddata-lite.so DESTINATION ${MIND_DATA_LIB_DIR}
  71. COMPONENT ${RUNTIME_COMPONENT_NAME})
  72. else()
  73. install(DIRECTORY ${TOP_DIR}/mindspore/ccsrc/minddata/dataset/kernels/image/lite_cv
  74. DESTINATION ${MIND_DATA_INC_DIR} COMPONENT ${RUNTIME_COMPONENT_NAME} FILES_MATCHING PATTERN "*.h")
  75. install(FILES ${TOP_DIR}/mindspore/lite/build/minddata/libminddata-lite.so DESTINATION ${MIND_DATA_LIB_DIR}
  76. COMPONENT ${RUNTIME_COMPONENT_NAME})
  77. endif()
  78. endif()
  79. if(PLATFORM_ARM64)
  80. install(FILES ${TOP_DIR}/mindspore/lite/build/.commit_id DESTINATION ${RUNTIME_PKG_NAME}
  81. COMPONENT ${RUNTIME_COMPONENT_NAME})
  82. if(SUPPORT_NPU)
  83. install(FILES ${DDK_LIB_PATH}/libhiai.so DESTINATION ${RUNTIME_PKG_NAME}/third_party/hiai_ddk/lib
  84. COMPONENT ${RUNTIME_COMPONENT_NAME})
  85. install(FILES ${DDK_LIB_PATH}/libhiai_ir.so DESTINATION ${RUNTIME_PKG_NAME}/third_party/hiai_ddk/lib
  86. COMPONENT ${RUNTIME_COMPONENT_NAME})
  87. install(FILES ${DDK_LIB_PATH}/libhiai_ir_build.so DESTINATION ${RUNTIME_PKG_NAME}/third_party/hiai_ddk/lib
  88. COMPONENT ${RUNTIME_COMPONENT_NAME})
  89. endif()
  90. if(SUPPORT_TRAIN)
  91. install(DIRECTORY ${TOP_DIR}/mindspore/lite/include/ DESTINATION ${RUNTIME_INC_DIR}
  92. COMPONENT ${RUNTIME_COMPONENT_NAME} FILES_MATCHING PATTERN "*.h")
  93. else()
  94. install(DIRECTORY ${TOP_DIR}/mindspore/lite/include/ DESTINATION ${RUNTIME_INC_DIR}
  95. COMPONENT ${RUNTIME_COMPONENT_NAME} FILES_MATCHING PATTERN "*.h" PATTERN "train*" EXCLUDE)
  96. endif()
  97. install(FILES ${TOP_DIR}/mindspore/lite/build/src/libmindspore-lite.so DESTINATION ${RUNTIME_LIB_DIR}
  98. COMPONENT ${RUNTIME_COMPONENT_NAME})
  99. install(FILES ${TOP_DIR}/mindspore/lite/build/src/libmindspore-lite.a DESTINATION ${RUNTIME_LIB_DIR}
  100. COMPONENT ${RUNTIME_COMPONENT_NAME})
  101. install(FILES ${TOP_DIR}/mindspore/core/ir/dtype/type_id.h DESTINATION ${RUNTIME_INC_DIR}/ir/dtype
  102. COMPONENT ${RUNTIME_COMPONENT_NAME})
  103. install(DIRECTORY ${TOP_DIR}/include/api/ DESTINATION ${RUNTIME_INC_DIR}/api
  104. COMPONENT ${RUNTIME_COMPONENT_NAME} FILES_MATCHING PATTERN "*.h" PATTERN "ascend* ops*" EXCLUDE)
  105. if(ENABLE_TOOLS)
  106. install(TARGETS benchmark RUNTIME DESTINATION ${RUNTIME_PKG_NAME}/benchmark COMPONENT ${RUNTIME_COMPONENT_NAME})
  107. endif()
  108. elseif(PLATFORM_ARM32)
  109. install(FILES ${TOP_DIR}/mindspore/lite/build/.commit_id DESTINATION ${RUNTIME_PKG_NAME}
  110. COMPONENT ${RUNTIME_COMPONENT_NAME})
  111. if(SUPPORT_TRAIN)
  112. install(DIRECTORY ${TOP_DIR}/mindspore/lite/include/ DESTINATION ${RUNTIME_INC_DIR}
  113. COMPONENT ${RUNTIME_COMPONENT_NAME} FILES_MATCHING PATTERN "*.h")
  114. else()
  115. install(DIRECTORY ${TOP_DIR}/mindspore/lite/include/ DESTINATION ${RUNTIME_INC_DIR}
  116. COMPONENT ${RUNTIME_COMPONENT_NAME} FILES_MATCHING PATTERN "*.h" PATTERN "train*" EXCLUDE)
  117. endif()
  118. install(FILES ${TOP_DIR}/mindspore/lite/build/src/libmindspore-lite.so DESTINATION ${RUNTIME_LIB_DIR}
  119. COMPONENT ${RUNTIME_COMPONENT_NAME})
  120. install(FILES ${TOP_DIR}/mindspore/lite/build/src/libmindspore-lite.a DESTINATION ${RUNTIME_LIB_DIR}
  121. COMPONENT ${RUNTIME_COMPONENT_NAME})
  122. install(FILES ${TOP_DIR}/mindspore/core/ir/dtype/type_id.h DESTINATION ${RUNTIME_INC_DIR}/ir/dtype
  123. COMPONENT ${RUNTIME_COMPONENT_NAME})
  124. install(DIRECTORY ${TOP_DIR}/include/api/ DESTINATION ${RUNTIME_INC_DIR}/api
  125. COMPONENT ${RUNTIME_COMPONENT_NAME} FILES_MATCHING PATTERN "*.h" PATTERN "ascend*" EXCLUDE)
  126. if(ENABLE_TOOLS)
  127. install(TARGETS benchmark RUNTIME DESTINATION ${RUNTIME_PKG_NAME}/benchmark COMPONENT ${RUNTIME_COMPONENT_NAME})
  128. endif()
  129. elseif(WIN32)
  130. install(FILES ${TOP_DIR}/build/.commit_id DESTINATION ${RUNTIME_PKG_NAME}
  131. COMPONENT ${RUNTIME_COMPONENT_NAME})
  132. get_filename_component(CXX_DIR ${CMAKE_CXX_COMPILER} PATH)
  133. file(GLOB LIB_LIST ${CXX_DIR}/libstdc++-6.dll ${CXX_DIR}/libwinpthread-1.dll
  134. ${CXX_DIR}/libssp-0.dll ${CXX_DIR}/libgcc_s_seh-1.dll)
  135. if(ENABLE_CONVERTER)
  136. install(FILES ${TOP_DIR}/build/.commit_id DESTINATION ${CONVERTER_PKG_NAME}
  137. COMPONENT ${CONVERTER_COMPONENT_NAME})
  138. install(TARGETS converter_lite RUNTIME DESTINATION ${CONVERTER_PKG_NAME}/converter
  139. COMPONENT ${CONVERTER_COMPONENT_NAME})
  140. install(FILES ${LIB_LIST} DESTINATION ${CONVERTER_PKG_NAME}/converter COMPONENT ${CONVERTER_COMPONENT_NAME})
  141. install(FILES ${TOP_DIR}/build/mindspore/tools/converter/mindspore_core/gvar/libmindspore_gvar.dll
  142. DESTINATION ${CONVERTER_PKG_NAME}/converter COMPONENT ${CONVERTER_COMPONENT_NAME})
  143. install(FILES ${glog_LIBPATH}/../bin/libglog.dll DESTINATION ${CONVERTER_PKG_NAME}/converter
  144. COMPONENT ${CONVERTER_COMPONENT_NAME})
  145. endif()
  146. if(ENABLE_TOOLS)
  147. install(TARGETS benchmark RUNTIME DESTINATION ${RUNTIME_PKG_NAME}/benchmark COMPONENT ${RUNTIME_COMPONENT_NAME})
  148. install(FILES ${LIB_LIST} DESTINATION ${RUNTIME_PKG_NAME}/benchmark COMPONENT ${RUNTIME_COMPONENT_NAME})
  149. install(DIRECTORY ${flatbuffers_INC} DESTINATION ${RUNTIME_PKG_NAME}/third_party/flatbuffers
  150. COMPONENT ${RUNTIME_COMPONENT_NAME})
  151. if(SUPPORT_TRAIN)
  152. install(DIRECTORY ${TOP_DIR}/mindspore/lite/include/ DESTINATION ${RUNTIME_INC_DIR}
  153. COMPONENT ${RUNTIME_COMPONENT_NAME} FILES_MATCHING PATTERN "*.h")
  154. else()
  155. install(DIRECTORY ${TOP_DIR}/mindspore/lite/include/ DESTINATION ${RUNTIME_INC_DIR}
  156. COMPONENT ${RUNTIME_COMPONENT_NAME} FILES_MATCHING PATTERN "*.h" PATTERN "train*" EXCLUDE)
  157. endif()
  158. install(FILES ${TOP_DIR}/mindspore/core/ir/dtype/type_id.h DESTINATION ${RUNTIME_INC_DIR}/ir/dtype
  159. COMPONENT ${RUNTIME_COMPONENT_NAME})
  160. install(DIRECTORY ${TOP_DIR}/include/api/ DESTINATION ${RUNTIME_INC_DIR}/api
  161. COMPONENT ${RUNTIME_COMPONENT_NAME} FILES_MATCHING PATTERN "*.h" PATTERN "ascend*" EXCLUDE)
  162. set(WIN_LIB_DIR_RUN_X86 ${RUNTIME_PKG_NAME}/benchmark)
  163. install(FILES ${TOP_DIR}/build/mindspore/src/libmindspore-lite.a DESTINATION ${WIN_LIB_DIR_RUN_X86}
  164. COMPONENT ${RUNTIME_COMPONENT_NAME})
  165. install(FILES ${TOP_DIR}/build/mindspore/src/libmindspore-lite.dll.a DESTINATION ${WIN_LIB_DIR_RUN_X86}
  166. COMPONENT ${RUNTIME_COMPONENT_NAME})
  167. install(FILES ${TOP_DIR}/build/mindspore/src/libmindspore-lite.dll DESTINATION ${WIN_LIB_DIR_RUN_X86}
  168. COMPONENT ${RUNTIME_COMPONENT_NAME})
  169. endif()
  170. else()
  171. install(FILES ${TOP_DIR}/mindspore/lite/build/.commit_id DESTINATION ${RUNTIME_PKG_NAME}
  172. COMPONENT ${RUNTIME_COMPONENT_NAME})
  173. if(SUPPORT_TRAIN)
  174. install(DIRECTORY ${TOP_DIR}/mindspore/lite/include/ DESTINATION ${RUNTIME_INC_DIR}
  175. COMPONENT ${RUNTIME_COMPONENT_NAME} FILES_MATCHING PATTERN "*.h")
  176. else()
  177. install(DIRECTORY ${TOP_DIR}/mindspore/lite/include/ DESTINATION ${RUNTIME_INC_DIR}
  178. COMPONENT ${RUNTIME_COMPONENT_NAME} FILES_MATCHING PATTERN "*.h" PATTERN "train*" EXCLUDE)
  179. endif()
  180. install(FILES ${TOP_DIR}/mindspore/core/ir/dtype/type_id.h DESTINATION ${RUNTIME_INC_DIR}/ir/dtype
  181. COMPONENT ${RUNTIME_COMPONENT_NAME})
  182. install(DIRECTORY ${TOP_DIR}/include/api/ DESTINATION ${RUNTIME_INC_DIR}/api
  183. COMPONENT ${RUNTIME_COMPONENT_NAME} FILES_MATCHING PATTERN "*.h" PATTERN "ascend*" EXCLUDE)
  184. install(FILES ${TOP_DIR}/mindspore/lite/build/src/libmindspore-lite.so DESTINATION ${RUNTIME_LIB_DIR}
  185. COMPONENT ${RUNTIME_COMPONENT_NAME})
  186. install(FILES ${TOP_DIR}/mindspore/lite/build/src/libmindspore-lite.a DESTINATION ${RUNTIME_LIB_DIR}
  187. COMPONENT ${RUNTIME_COMPONENT_NAME})
  188. if(ENABLE_CONVERTER)
  189. install(FILES ${TOP_DIR}/mindspore/lite/build/.commit_id DESTINATION ${CONVERTER_PKG_NAME}
  190. COMPONENT ${CONVERTER_COMPONENT_NAME})
  191. install(TARGETS converter_lite RUNTIME DESTINATION ${CONVERTER_PKG_NAME}/converter
  192. COMPONENT ${CONVERTER_COMPONENT_NAME})
  193. install(FILES ${TOP_DIR}/mindspore/lite/build/tools/converter/mindspore_core/gvar/libmindspore_gvar.so
  194. DESTINATION ${CONVERTER_PKG_NAME}/lib COMPONENT ${CONVERTER_COMPONENT_NAME})
  195. install(FILES ${glog_LIBPATH}/libglog.so.0.4.0
  196. DESTINATION ${CONVERTER_PKG_NAME}/third_party/glog/lib RENAME libglog.so.0
  197. COMPONENT ${CONVERTER_COMPONENT_NAME})
  198. endif()
  199. if(ENABLE_TOOLS)
  200. install(TARGETS benchmark RUNTIME DESTINATION ${RUNTIME_PKG_NAME}/benchmark COMPONENT ${RUNTIME_COMPONENT_NAME})
  201. install(TARGETS cropper RUNTIME DESTINATION ${RUNTIME_PKG_NAME}/cropper COMPONENT ${RUNTIME_COMPONENT_NAME})
  202. install(FILES ${TOP_DIR}/mindspore/lite/build/tools/cropper/cropper_mapping_cpu.cfg
  203. DESTINATION ${RUNTIME_PKG_NAME}/cropper COMPONENT ${RUNTIME_COMPONENT_NAME})
  204. endif()
  205. endif()
  206. if(CMAKE_SYSTEM_NAME MATCHES "Windows")
  207. set(CPACK_GENERATOR ZIP)
  208. else()
  209. set(CPACK_GENERATOR TGZ)
  210. endif()
  211. set(CPACK_ARCHIVE_COMPONENT_INSTALL ON)
  212. if(PLATFORM_ARM64 OR PLATFORM_ARM32)
  213. set(CPACK_COMPONENTS_ALL ${RUNTIME_COMPONENT_NAME})
  214. else()
  215. set(CPACK_COMPONENTS_ALL ${RUNTIME_COMPONENT_NAME} ${CONVERTER_COMPONENT_NAME})
  216. endif()
  217. set(CPACK_PACKAGE_FILE_NAME ${MAIN_DIR})
  218. if(WIN32)
  219. set(CPACK_PACKAGE_DIRECTORY ${TOP_DIR}/output)
  220. else()
  221. set(CPACK_PACKAGE_DIRECTORY ${TOP_DIR}/output/tmp)
  222. endif()
  223. set(CPACK_PACKAGE_CHECKSUM SHA256)
  224. include(CPack)