CMakeLists.txt 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. set(MODULE_NAME "libfacecapture")
  2. set(MODULE_PREFIX "LIB_FACECAPTURE_FUNC")
  3. set(CUSTOM_OPENCV_INCLUDES_DIR ${CONAN_INCLUDE_DIRS_OPENCV})
  4. set(CUSTOM_OPENCV_LIBS_DIR ${CONAN_LIB_DIRS_OPENCV})
  5. set(CUSTOM_OPENCV_LIBS ${CONAN_LIBS_OPENCV})
  6. set(${MODULE_PREFIX}_SRCS
  7. libfacecapture.cpp
  8. libfacecapture.h
  9. )
  10. add_library(${MODULE_NAME} SHARED ${${MODULE_PREFIX}_SRCS})
  11. target_include_directories(${MODULE_NAME} PRIVATE
  12. ${RVC_COMMON_INCLUDE_DIR}
  13. ${OTHER_LIB_PLATFORM_BASE_DIR}/libvideoqueue
  14. ${OTHER_LIB_PLATFORM_BASE_DIR}/libsharememory
  15. ${CUSTOM_OPENCV_INCLUDES_DIR}
  16. ${CUSTOM_OPENCV_INCLUDES_DIR}/opencv
  17. )
  18. target_compile_definitions(${MODULE_NAME} PUBLIC "LIBFACECAPTURE_EXPORTS")
  19. # 添加需要依赖的其他共享库(包括系统库)
  20. target_link_directories(${MODULE_NAME} PRIVATE
  21. ${CUSTOM_OPENCV_LIBS_DIR}
  22. )
  23. target_link_libraries(${MODULE_NAME} PRIVATE ${${MODULE_PREFIX}_LIBS}
  24. videoqueue
  25. ${CUSTOM_OPENCV_LIBS}
  26. )
  27. if(MSVC)
  28. install(TARGETS ${MODULE_NAME}
  29. RUNTIME DESTINATION "${RVC_RUNTIME_PATH}" COMPONENT libraries
  30. ARCHIVE DESTINATION "${RVC_LIBRARY_PATH}" COMPONENT develops EXCLUDE_FROM_ALL
  31. LIBRARY DESTINATION "${RVC_LIBRARY_PATH}" COMPONENT libraries
  32. )
  33. else()
  34. install(TARGETS ${MODULE_NAME}
  35. RUNTIME DESTINATION "${RVC_RUNTIME_PATH}"
  36. ARCHIVE DESTINATION "${RVC_LIBRARY_PATH}"
  37. LIBRARY DESTINATION "${RVC_RUNTIME_PATH}"
  38. COMPONENT libraries)
  39. endif(MSVC)
  40. # 设置要依赖拷贝的第三方库
  41. if(MSVC)
  42. set(OTHER_CONAN_DEP_LIBS ${OTHER_CONAN_DEP_LIBS} ${CONAN_BIN_DIRS} PARENT_SCOPE)
  43. else()
  44. set(OTHER_CONAN_DEP_LIBS ${OTHER_CONAN_DEP_LIBS} ${CONAN_LIB_DIRS} ${CONAN_BIN_DIRS_OPENCV} PARENT_SCOPE)
  45. ENDIF(MSVC)
  46. set_property(TARGET ${MODULE_NAME} PROPERTY FOLDER "other/")