CMakeLists.txt 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  1. set(MODULE_NAME "libwmvrecord")
  2. set(MODULE_PREFIX "LIBWMVRECORD_FUNC")
  3. set(${MODULE_PREFIX}_SRCS
  4. libwmvrecord.h
  5. libwmvrecord.cpp
  6. FFmpegWriter.h
  7. FFmpegWriter.cpp
  8. CvxText.h
  9. CvxText.cpp
  10. )
  11. add_library(${MODULE_NAME} SHARED ${${MODULE_PREFIX}_SRCS})
  12. conan_cmake_run(REQUIRES opencv/3.1.0@LR04.02_ThirdParty/testing
  13. BASIC_SETUP CMAKE_TARGETS
  14. BUILD missing)
  15. if(WIN32)
  16. conan_cmake_run(REQUIRES ffmpeg/4.1@LR04.02_ThirdParty/testing
  17. BASIC_SETUP CMAKE_TARGETS
  18. BUILD missing)
  19. else(WIN32)
  20. conan_cmake_run(REQUIRES ffmpeg/4.1@LR04.02_ThirdParty/testing
  21. BASIC_SETUP CMAKE_TARGETS
  22. BUILD missing)
  23. endif(WIN32)
  24. if(WIN32)
  25. conan_cmake_run(REQUIRES SpeexDSP/1.2rc3@LR04.02_ThirdParty/testing
  26. BASIC_SETUP CMAKE_TARGETS
  27. BUILD missing)
  28. else(WIN32)
  29. conan_cmake_run(REQUIRES SpeexDSP/1.2rc3@LR04.02_ThirdParty/testing
  30. BASIC_SETUP CMAKE_TARGETS
  31. BUILD missing)
  32. endif(WIN32)
  33. if(WIN32)
  34. conan_cmake_run(REQUIRES freetype/2.10.0@LR04.02_ThirdParty/testing
  35. BASIC_SETUP CMAKE_TARGETS
  36. BUILD missing)
  37. else(WIN32)
  38. conan_cmake_run(REQUIRES freetype/2.10.0@LR04.02_ThirdParty/testing
  39. BASIC_SETUP CMAKE_TARGETS
  40. BUILD missing)
  41. endif(WIN32)
  42. target_include_directories(${MODULE_NAME} PRIVATE
  43. "${CONAN_RVCFRAMEWORK_ROOT}/include"
  44. ${RVC_COMMON_INCLUDE_DIR}
  45. ${CONAN_INCLUDE_DIRS_FFMPEG}
  46. ${CONAN_INCLUDE_DIRS_FREETYPE}
  47. ${CONAN_INCLUDE_DIRS_SPEEXDSP}
  48. ${CONAN_INCLUDE_DIRS_OPENCV}
  49. ${CONAN_INCLUDE_DIRS_OPENCV}/opencv
  50. ${OTHER_LIB_BASE_DIR}/libaudioqueue
  51. ${OTHER_LIB_BASE_DIR}/libvideoqueue
  52. ${OTHER_LIB_BASE_DIR}/libaudions
  53. ${OTHER_LIB_BASE_DIR}/libaudiotransqueue
  54. ${OTHER_LIB_BASE_DIR}/rvcmediacommon/common_video
  55. ${OTHER_LIB_BASE_DIR}/libvideoframework
  56. )
  57. target_link_directories(${MODULE_NAME} PRIVATE
  58. ${CONAN_LIB_DIRS_FFMPEG}
  59. ${CONAN_LIB_DIRS_SPEEXDSP}
  60. ${CONAN_LIB_DIRS_OPENCV}
  61. ${CONAN_LIB_DIRS_FREETYPE}
  62. audioqueue
  63. videoqueue
  64. )
  65. target_link_libraries(${MODULE_NAME} PRIVATE ${${MODULE_PREFIX}_LIBS} PRIVATE
  66. ${CONAN_LIBS_FFMPEG}
  67. ${CONAN_LIBS_SPEEXDSP}
  68. ${CONAN_LIBS_OPENCV}
  69. ${CONAN_LIBS_FREETYPE}
  70. audioqueue
  71. videoqueue
  72. )
  73. target_compile_definitions(${MODULE_NAME} PUBLIC "LIBWMVRECORD_API")
  74. if(MSVC)
  75. install(TARGETS ${MODULE_NAME}
  76. RUNTIME DESTINATION "${RVC_RUNTIME_PATH}" COMPONENT libraries
  77. ARCHIVE DESTINATION "${RVC_LIBRARY_PATH}" COMPONENT develops EXCLUDE_FROM_ALL
  78. LIBRARY DESTINATION "${RVC_LIBRARY_PATH}" COMPONENT libraries
  79. )
  80. else()
  81. install(TARGETS ${MODULE_NAME}
  82. RUNTIME DESTINATION "${RVC_RUNTIME_PATH}"
  83. ARCHIVE DESTINATION "${RVC_LIBRARY_PATH}"
  84. LIBRARY DESTINATION "${RVC_RUNTIME_PATH}"
  85. COMPONENT libraries)
  86. endif(MSVC)
  87. # 设置要依赖拷贝的第三方库
  88. if(MSVC)
  89. set(OTHER_CONAN_DEP_LIBS ${OTHER_CONAN_DEP_LIBS} ${CONAN_BIN_DIRS} PARENT_SCOPE)
  90. else()
  91. set(OTHER_CONAN_DEP_LIBS ${OTHER_CONAN_DEP_LIBS} ${CONAN_LIB_DIRS} PARENT_SCOPE)
  92. ENDIF(MSVC)