CMakeLists.txt 1.8 KB

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