CMakeLists.txt 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. set(MODULE_NAME "videocapture")
  2. set(MODULE_PREFIX "LIB_VIDEOCAPTURE_FUNC")
  3. set(SPBASE_LIB spbase)
  4. if(MSVC)
  5. set(${MODULE_PREFIX}_SRCS
  6. ivideocaptureinterface.h
  7. ivideocaptureinterface.cpp
  8. ./win/videocapture_win.h
  9. ./win/videocapture_win.cpp
  10. )
  11. else()
  12. set(${MODULE_PREFIX}_SRCS
  13. ivideocaptureinterface.h
  14. ivideocaptureinterface.cpp
  15. ./linux/videocapture_linux.h
  16. ./linux/videocapture_linux.cpp
  17. )
  18. endif(MSVC)
  19. add_library(${MODULE_NAME} SHARED ${${MODULE_PREFIX}_SRCS})
  20. message(STATUS "CONAN_INCLUDE_DIRS_LIBYUV = ${CONAN_INCLUDE_DIRS_LIBYUV}")
  21. target_include_directories(${MODULE_NAME} PRIVATE
  22. ${CMAKE_CURRENT_SOURCE_DIR}
  23. ${OTHER_LIB_BASE_DIR}/rvcmediacommon
  24. ${OTHER_LIB_PLATFORM_BASE_DIR}/libvideoframework
  25. ${CONAN_INCLUDE_DIRS_FFMPEG}
  26. ${CONAN_INCLUDE_DIRS_LIBYUV}
  27. ${CONAN_INCLUDE_DIRS_LIBJPEG}
  28. )
  29. message(STATUS "CONAN_LIB_DIRS_LIBYUV = ${CONAN_LIB_DIRS_LIBYUV}")
  30. target_link_directories(${MODULE_NAME} PRIVATE
  31. ${CONAN_LIB_DIRS_FFMPEG}
  32. ${CONAN_LIB_DIRS_LIBYUV}
  33. ${CONAN_LIB_DIRS_LIBJPEG}
  34. )
  35. message(STATUS "CONAN_LIBS_LIBYUV = ${CONAN_LIBS_LIBYUV}")
  36. target_link_libraries(${MODULE_NAME} PRIVATE ${${MODULE_PREFIX}_LIBS}
  37. ${CONAN_LIBS_FFMPEG}
  38. ${CONAN_LIBS_LIBYUV}
  39. ${CONAN_LIBS_LIBJPEG}
  40. libvideoframework
  41. ${SPBASE_LIB}
  42. )
  43. target_compile_definitions(${MODULE_NAME} PUBLIC "LIBVIDEOCAPTURE_EXPORTS")
  44. if(MSVC)
  45. install(TARGETS ${MODULE_NAME}
  46. RUNTIME DESTINATION "${RVC_RUNTIME_PATH}" COMPONENT libraries
  47. ARCHIVE DESTINATION "${RVC_LIBRARY_PATH}" COMPONENT develops EXCLUDE_FROM_ALL
  48. LIBRARY DESTINATION "${RVC_LIBRARY_PATH}" COMPONENT libraries
  49. )
  50. else()
  51. install(TARGETS ${MODULE_NAME}
  52. RUNTIME DESTINATION "${RVC_RUNTIME_PATH}"
  53. ARCHIVE DESTINATION "${RVC_LIBRARY_PATH}"
  54. LIBRARY DESTINATION "${RVC_RUNTIME_PATH}"
  55. COMPONENT libraries)
  56. endif(MSVC)