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 16 kB

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