cmake_minimum_required(VERSION 3.0)

set(CMAKE_CXX_STANDARD 11)

project(easyedge_demo)

# 如果需要自定义opencv路径：
#find_package(OpenCV REQUIRED PATHS /usr/local/Cellar/opencv/3.4.2 NO_DEFAULT_PATH)
find_package(OpenCV REQUIRED)

message(STATUS "OpenCV library status:")
message(STATUS "    version: ${OpenCV_VERSION}")
message(STATUS "    libraries: ${OpenCV_LIBS}")
message(STATUS "    include path: ${OpenCV_INCLUDE_DIRS}")

find_package(Threads REQUIRED)

include_directories(
        ${OpenCV_INCLUDE_DIRS}
        ${CMAKE_SOURCE_DIR}/../include/
)
link_directories(
        ${CMAKE_SOURCE_DIR}/../lib/
)
add_executable(easyedge_batch_inference demo_batch_inference.cpp)
add_executable(easyedge_serving demo_serving.cpp)
add_executable(easyedge_multi_thread demo_multi_thread.cpp)

target_link_libraries(easyedge_batch_inference ${OpenCV_LIBS} easyedge)
target_link_libraries(easyedge_serving ${OpenCV_LIBS} easyedge)
target_link_libraries(easyedge_multi_thread ${OpenCV_LIBS} easyedge pthread)

if (EDGE_BUILD_OPENCV)
    add_dependencies(easyedge_batch_inference OpenCV)
    add_dependencies(easyedge_serving OpenCV)
    add_dependencies(easyedge_multi_thread OpenCV)
endif ()

message(STATUS "Project will be installed to ${CMAKE_INSTALL_PREFIX}")

INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/../lib/
        DESTINATION "${CMAKE_INSTALL_PREFIX}/lib"
        PATTERN "lib*.[a|so]*")

INSTALL(DIRECTORY ${CMAKE_SOURCE_DIR}/../include/easyedge
        DESTINATION "${CMAKE_INSTALL_PREFIX}/include")