cmake_minimum_required(VERSION 3.16)
project(zl_inference CXX)

set(CMAKE_CXX_STANDARD 14)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_BUILD_TYPE Release CACHE STRING "" FORCE)

set(RKNN_VENDOR ${CMAKE_SOURCE_DIR}/../vendor/rknn)

include_directories(
  ${RKNN_VENDOR}/include
  /usr/include/rockchip
  /usr/include/rga
)
link_directories(${RKNN_VENDOR}/lib)

add_executable(shimeta_rknn
  src/main.cpp
  src/stream_source.cpp
  src/mpp_decoder.cpp
  src/mpp_encoder.cpp
  src/rga_scaler.cpp
  src/rknn_engine.cpp
  src/detect_post.cpp
)

target_link_libraries(shimeta_rknn PRIVATE rockchip_mpp rga rknnrt pthread dl)

# librknnrt.so 在 vendor 目录，编进 rpath 免去运行时设 LD_LIBRARY_PATH
set_target_properties(shimeta_rknn PROPERTIES
  BUILD_RPATH "${RKNN_VENDOR}/lib"
  INSTALL_RPATH "$ORIGIN/../vendor/rknn/lib"
)
