[wasi-nn] Add a new wasi-nn backend openvino (#3603)
This commit is contained in:
@ -3,13 +3,30 @@
|
||||
|
||||
list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_LIST_DIR})
|
||||
|
||||
# Find tensorflow-lite
|
||||
find_package(tensorflow_lite REQUIRED)
|
||||
if(WAMR_BUILD_WASI_NN_TFLITE EQUAL 1)
|
||||
# Find tensorflow-lite
|
||||
find_package(tensorflow_lite REQUIRED)
|
||||
endif()
|
||||
|
||||
set(WASI_NN_ROOT ${CMAKE_CURRENT_LIST_DIR}/..)
|
||||
if(WAMR_BUILD_WASI_NN_OPENVINO EQUAL 1)
|
||||
if(NOT DEFINED ENV{OpenVINO_DIR})
|
||||
message(FATAL_ERROR
|
||||
"OpenVINO_DIR is not defined. "
|
||||
"Please follow https://docs.openvino.ai/2024/get-started/install-openvino.html,"
|
||||
"install openvino, and set environment variable OpenVINO_DIR."
|
||||
"Like OpenVINO_DIR=/usr/lib/openvino-2023.2/ cmake ..."
|
||||
"Or OpenVINO_DIR=/opt/intel/openvino/ cmake ..."
|
||||
)
|
||||
endif()
|
||||
|
||||
list(APPEND CMAKE_MODULE_PATH $ENV{OpenVINO_DIR})
|
||||
# Find OpenVINO
|
||||
find_package(OpenVINO REQUIRED COMPONENTS Runtime)
|
||||
endif()
|
||||
|
||||
#
|
||||
# wasi-nn general
|
||||
set(WASI_NN_ROOT ${CMAKE_CURRENT_LIST_DIR}/..)
|
||||
add_library(
|
||||
wasi-nn-general
|
||||
SHARED
|
||||
@ -37,20 +54,34 @@ target_compile_definitions(
|
||||
|
||||
#
|
||||
# wasi-nn backends
|
||||
add_library(
|
||||
wasi-nn-tflite
|
||||
SHARED
|
||||
${WASI_NN_ROOT}/src/wasi_nn_tensorflowlite.cpp
|
||||
)
|
||||
#target_link_options(
|
||||
# wasi-nn-tflite
|
||||
# PRIVATE
|
||||
# -Wl,--whole-archive libwasi-nn-general.a
|
||||
# -Wl,--no-whole-archive
|
||||
#)
|
||||
target_link_libraries(
|
||||
wasi-nn-tflite
|
||||
PUBLIC
|
||||
tensorflow-lite
|
||||
wasi-nn-general
|
||||
)
|
||||
|
||||
# - tflite
|
||||
if(WAMR_BUILD_WASI_NN_TFLITE EQUAL 1)
|
||||
add_library(
|
||||
wasi-nn-tflite
|
||||
SHARED
|
||||
${WASI_NN_ROOT}/src/wasi_nn_tensorflowlite.cpp
|
||||
)
|
||||
target_link_libraries(
|
||||
wasi-nn-tflite
|
||||
PUBLIC
|
||||
tensorflow-lite
|
||||
wasi-nn-general
|
||||
)
|
||||
endif()
|
||||
|
||||
# - openvino
|
||||
if(WAMR_BUILD_WASI_NN_OPENVINO EQUAL 1)
|
||||
add_library(
|
||||
wasi-nn-openvino
|
||||
SHARED
|
||||
${WASI_NN_ROOT}/src/wasi_nn_openvino.c
|
||||
)
|
||||
target_link_libraries(
|
||||
wasi-nn-openvino
|
||||
PUBLIC
|
||||
openvino::runtime
|
||||
openvino::runtime::c
|
||||
wasi-nn-general
|
||||
)
|
||||
endif()
|
||||
Reference in New Issue
Block a user