CMakeLists.txt 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190
  1. define_module("sipphone")
  2. set(CUSTOM_OPENCV_INCLUDES_DIR ${CONAN_INCLUDE_DIRS_OPENCV})
  3. set(CUSTOM_OPENCV_LIBS_DIR ${CONAN_LIB_DIRS_OPENCV})
  4. set(CUSTOM_OPENCV_LIBS ${CONAN_LIBS_OPENCV})
  5. if(MSVC)
  6. set(STDAFXCPP stdafx.cpp)
  7. else()
  8. set(STDAFXCPP )
  9. endif(MSVC)
  10. if(MSVC)
  11. set(${SIPPHONE_PLATFORM}_SRCS
  12. uuid.cpp
  13. volumekeeper.h
  14. volumekeeper.cpp
  15. )
  16. else()
  17. set(${SIPPHONE_PLATFORM}_SRCS
  18. )
  19. endif(MSVC)
  20. set(${MODULE_PREFIX}_SRCS
  21. audio_session.h
  22. endpoint.h
  23. Event.h
  24. SIPPhone_msg_g.h
  25. SIPPhone_client_g.h
  26. SIPPhone_def_g.h
  27. SIPPhone_server_g.h
  28. video_session.h
  29. mod_sipphone.h
  30. video_render.h
  31. video_render.cpp
  32. endpoint.cpp
  33. audio_session.cpp
  34. mod_sipphone.cpp
  35. ${CMAKE_CURRENT_SOURCE_DIR}/${MODULE_PLAFORM_SUBDIR}/video_session.cpp
  36. ${${SIPPHONE_PLATFORM}_SRCS}
  37. ${ThirdPartyHeadRoot}/CJson/cJSON.c
  38. )
  39. set(MOD_VERSION_STRING "0.0.1-dev1")
  40. add_module_libraries(${MODULE_PREFIX} ${MODULE_NAME} ${MOD_VERSION_STRING})
  41. target_include_directories(${MODULE_NAME} PRIVATE
  42. ${CONAN_INCLUDE_DIRS_APR}/apr-1
  43. ${RVC_TOOLKIT_INCLUDE_DIR}
  44. ${CONAN_INCLUDE_DIRS_FFMPEG}
  45. ${CUSTOM_OPENCV_INCLUDES_DIR}
  46. ${CUSTOM_OPENCV_INCLUDES_DIR}/opencv
  47. ${RVC_TOOLKIT_INCLUDE_DIR}
  48. ${RVC_FRAMEWORK_INCLUDES_DIR}
  49. ${MODULE_BASE_DIR}
  50. ${MODULE_BASE_DIR}/mod_healthmanager
  51. ${CMAKE_CURRENT_SOURCE_DIR}
  52. ${OTHER_LIB_PLATFORM_BASE_DIR}/libvideoframework
  53. ${OTHER_LIB_PLATFORM_BASE_DIR}/libaudioframework
  54. ${OTHER_LIB_BASE_DIR}/rvcmediacommon
  55. ${OTHER_LIB_BASE_DIR}/libaudioqueue
  56. ${OTHER_LIB_BASE_DIR}/libvideoqueue
  57. ${OTHER_LIB_BASE_DIR}/libvideorender
  58. ${OTHER_LIB_BASE_DIR}/libaudions
  59. ${OTHER_LIB_PLATFORM_BASE_DIR}/libvideohorflip
  60. ${OTHER_LIB_BASE_DIR}/libaudiomgr
  61. ${OTHER_LIB_PLATFORM_BASE_DIR}/libvideorender
  62. ${OTHER_LIB_PLATFORM_BASE_DIR}/libvideocapture
  63. if(WIN32)
  64. ${CONAN_INCLUDE_DIRS_PORTAUDIO}
  65. ${CONAN_INCLUDE_DIRS_IPP}
  66. ${CONAN_INCLUDE_DIRS_APACHE-APR}/include
  67. ${CONAN_INCLUDE_DIRS_SOFIA}/libsofia-sip-ua/su
  68. ${CONAN_INCLUDE_DIRS_SOFIA}/win32
  69. ${CONAN_INCLUDE_DIRS_SOFIA}/libsofia-sip-ua/nua
  70. ${CONAN_INCLUDE_DIRS_SOFIA}/libsofia-sip-ua/url
  71. ${CONAN_INCLUDE_DIRS_SOFIA}/libsofia-sip-ua/sip
  72. ${CONAN_INCLUDE_DIRS_SOFIA}/libsofia-sip-ua/msg
  73. ${CONAN_INCLUDE_DIRS_SOFIA}/libsofia-sip-ua/sdp
  74. ${CONAN_INCLUDE_DIRS_SOFIA}/libsofia-sip-ua/nta
  75. ${CONAN_INCLUDE_DIRS_SOFIA}/libsofia-sip-ua/nea
  76. ${CONAN_INCLUDE_DIRS_SOFIA}/libsofia-sip-ua/soa
  77. else()
  78. ${CONAN_INCLUDE_DIRS_PULSEAUDIO}
  79. ${CONAN_INCLUDE_DIRS_APR}/apr-1
  80. ${CONAN_INCLUDE_DIRS_SOFIA}/sofia-sip-1.13
  81. endif(WIN32)
  82. )
  83. message(STATUS "CONAN_INCLUDE_DIRS_SOFIA == ${CONAN_INCLUDE_DIRS_SOFIA}")
  84. message(STATUS "CONAN_LIB_DIRS_LIBYUV == ${CONAN_LIB_DIRS_LIBYUV}")
  85. if(MSVC)
  86. target_link_directories(${MODULE_NAME} PRIVATE
  87. ${CONAN_LIB_DIRS_FFMPEG}
  88. ${CUSTOM_OPENCV_LIBS_DIR}
  89. ${CONAN_LIB_DIRS_SPANDSP}
  90. ${CONAN_LIB_DIRS_SOFIA}
  91. ${CONAN_LIB_DIRS_SPEEXDSP}
  92. ${CONAN_LIB_DIRS_LIBKYSM}
  93. ${CONAN_LIB_DIRS_PORTAUDIO}
  94. ${CONAN_LIB_DIRS_IPP}
  95. ${CONAN_LIB_DIRS_LIB8K}
  96. ${CONAN_LIB_DIRS_APACHE-APR}
  97. #TODO
  98. ${CONAN_LIB_DIRS_LIBYUV}
  99. )
  100. else()
  101. target_link_directories(${MODULE_NAME} PRIVATE
  102. ${CONAN_LIB_DIRS_PULSEAUDIO}
  103. ${CONAN_LIB_DIRS_FFMPEG}
  104. ${CUSTOM_OPENCV_LIBS_DIR}
  105. ${CONAN_LIB_DIRS_SPANDSP}
  106. ${CONAN_LIB_DIRS_SOFIA}
  107. ${CONAN_LIB_DIRS_SPEEXDSP}
  108. ${CONAN_LIB_DIRS_LIBKYSM}
  109. ${CONAN_LIB_DIRS_APR}
  110. )
  111. endif(MSVC)
  112. # 添加实体需要依赖的其他共享库(包括系统库)
  113. if(WIN32)
  114. set(${MODULE_PREFIX}_LIBS ${MODULE_BASE_LIBS}
  115. ${CONAN_PKG_LIBS_PORTAUDIO}
  116. ${CONAN_PKG_LIBS_FFMPEG}
  117. ${CUSTOM_OPENCV_LIBS}
  118. ${SPBASE_LIB}
  119. ${TOOLKIT_LIB}
  120. ${CONAN_PKG_LIBS_APACHE-APR}
  121. ${CONAN_PKG_LIBS_LIB8K}
  122. ${CONAN_PKG_LIBS_SPANDSP}
  123. ${CONAN_PKG_LIBS_SOFIA}
  124. ${CONAN_PKG_LIBS_IPP}
  125. ${CONAN_PKG_LIBS_SPEEXDSP}
  126. ws2_32
  127. dbghelp
  128. strmiids
  129. Vfw32
  130. winmm
  131. Msdmo
  132. dmoguids
  133. wmcodecdspuuid
  134. uuid
  135. amstrmid
  136. mfuuid
  137. libaudioframework
  138. libvideoframework
  139. audioqueue
  140. videoqueue
  141. libvideohorflip
  142. libaudions
  143. audiomgr
  144. videorender
  145. )
  146. else(WIN32)
  147. set(${MODULE_PREFIX}_LIBS ${MODULE_BASE_LIBS}
  148. ${CONAN_PKG_LIBS_FFMPEG}
  149. ${CUSTOM_OPENCV_LIBS}
  150. ${SPBASE_LIB}
  151. ${TOOLKIT_LIB}
  152. ${CONAN_PKG_LIBS_APR}
  153. ${CONAN_PKG_LIBS_SPANDSP}
  154. ${CONAN_PKG_LIBS_SOFIA}
  155. ${CONAN_PKG_LIBS_SPEEXDSP}
  156. libaudioframework
  157. libvideoframework
  158. audioqueue
  159. videoqueue
  160. asound
  161. pthread
  162. ${RVCCOMM_LIB}
  163. ${CONAN_PKG_LIBS_LIBKYSM}
  164. ${WINPR_LIB}
  165. videorender
  166. audiomgr
  167. libaudions
  168. )
  169. endif(WIN32)
  170. target_link_libraries(${MODULE_NAME} ${${MODULE_PREFIX}_LIBS})
  171. deploy_module(${MODULE_PREFIX} ${MODULE_NAME})
  172. if(MSVC)
  173. set(MODULE_CONAN_DEP_LIBS ${MODULE_CONAN_DEP_LIBS} ${CONAN_BIN_DIRS} PARENT_SCOPE)
  174. else()
  175. set(MODULE_CONAN_DEP_LIBS ${MODULE_CONAN_DEP_LIBS} ${CONAN_LIB_DIRS} PARENT_SCOPE)
  176. endif(MSVC)