mirror of
https://github.com/PaddlePaddle/FastDeploy.git
synced 2025-10-12 03:50:39 +08:00

* update * update * Update infer_ppyoloe_demo.cc --------- Co-authored-by: DefTruth <31974251+DefTruth@users.noreply.github.com>
55 lines
2.1 KiB
CMake
55 lines
2.1 KiB
CMake
# set path
|
|
|
|
set(TVM_URL_BASE "https://bj.bcebos.com/fastdeploy/third_libs/")
|
|
set(TVM_VERSION "0.12.0")
|
|
set(TVM_SYSTEM "")
|
|
|
|
if (${CMAKE_SYSTEM} MATCHES "Darwin")
|
|
if(CMAKE_HOST_SYSTEM_PROCESSOR MATCHES "arm64")
|
|
set(TVM_SYSTEM "macos-arm64")
|
|
endif ()
|
|
elseif (${CMAKE_SYSTEM} MATCHES "Linux")
|
|
if(CMAKE_HOST_SYSTEM_PROCESSOR MATCHES "x86")
|
|
set(TVM_SYSTEM "linux-x86")
|
|
endif ()
|
|
else ()
|
|
error("TVM only support MacOS in Arm64 or linux in x86")
|
|
endif ()
|
|
set(TVM_FILE "tvm-${TVM_SYSTEM}-${TVM_VERSION}.tgz")
|
|
set(TVM_URL "${TVM_URL_BASE}${TVM_FILE}")
|
|
|
|
set(TVM_RUNTIME_PATH "${THIRD_PARTY_PATH}/install/tvm")
|
|
execute_process(COMMAND ${CMAKE_COMMAND} -E make_directory "${TVM_RUNTIME_PATH}")
|
|
download_and_decompress(${TVM_URL}
|
|
"${CMAKE_CURRENT_BINARY_DIR}/${TVM_FILE}"
|
|
"${THIRD_PARTY_PATH}/install/")
|
|
include_directories(${TVM_RUNTIME_PATH}/include)
|
|
|
|
# copy dlpack to third_party
|
|
set(DLPACK_PATH "${THIRD_PARTY_PATH}/install/dlpack")
|
|
execute_process(COMMAND ${CMAKE_COMMAND} -E make_directory "${DLPACK_PATH}")
|
|
execute_process(COMMAND ${CMAKE_COMMAND} -E copy_directory
|
|
"${PROJECT_SOURCE_DIR}/third_party/dlpack"
|
|
"${THIRD_PARTY_PATH}/install/dlpack")
|
|
include_directories(${DLPACK_PATH}/include)
|
|
|
|
set(DMLC_CORE_PATH "${THIRD_PARTY_PATH}/install/dmlc-core")
|
|
execute_process(COMMAND ${CMAKE_COMMAND} -E make_directory "${DMLC_CORE_PATH}")
|
|
set(DMLC_CORE_URL https://bj.bcebos.com/fastdeploy/third_libs/dmlc-core.tgz)
|
|
download_and_decompress(${DMLC_CORE_URL}
|
|
"${CMAKE_CURRENT_BINARY_DIR}/dmlc-core.tgz"
|
|
"${THIRD_PARTY_PATH}/install/")
|
|
include_directories(${DMLC_CORE_PATH}/include)
|
|
|
|
# include lib
|
|
if (EXISTS ${TVM_RUNTIME_PATH})
|
|
if (${CMAKE_SYSTEM} MATCHES "Darwin")
|
|
set(TVM_RUNTIME_LIB ${TVM_RUNTIME_PATH}/lib/libtvm_runtime.dylib)
|
|
elseif (${CMAKE_SYSTEM} MATCHES "Linux")
|
|
set(TVM_RUNTIME_LIB ${TVM_RUNTIME_PATH}/lib/libtvm_runtime.so)
|
|
endif ()
|
|
include(${TVM_RUNTIME_PATH}/lib/cmake/tvm/tvmConfig.cmake)
|
|
add_definitions(-DDMLC_USE_LOGGING_LIBRARY=<tvm/runtime/logging.h>)
|
|
else ()
|
|
error(FATAL_ERROR "[tvm.cmake] TVM_RUNTIME_PATH does not exist.")
|
|
endif () |