Commit 9ea98642 by Xiaofeng Wang Committed by GitHub

Merge pull request #1837 from wasphin/feature/cmake-fix-sctp

修正启用 SCTP 后编译问题
parents d0f0c69f b1ccbcc4
......@@ -14,7 +14,7 @@ jobs:
run: mv -f .gitmodules_github .gitmodules && git submodule sync && git submodule update --init
- name: apt-get安装依赖库(非必选)
run: sudo apt-get update && sudo apt-get install -y cmake libssl-dev libsdl-dev libavcodec-dev libavutil-dev libswscale-dev libresample-dev
run: sudo apt-get update && sudo apt-get install -y cmake libssl-dev libsdl-dev libavcodec-dev libavutil-dev libswscale-dev libresample-dev libusrsctp-dev
- name: 下载 SRTP
uses: actions/checkout@v2
......
......@@ -35,12 +35,17 @@ include_directories(SYSTEM ${SRTP_INCLUDE_DIRS})
set(LINK_LIBRARIES ${SRTP_LIBRARIES})
set(COMPILE_DEFINITIONS)
set(INCLUDE_DIRECTORIES)
find_package(SCTP QUIET)
if(SCTP_FOUND)
message(STATUS "found library: ${SCTP_INCLUDE_DIRS} ${SCTP_LIBRARIES}")
include_directories(SYSTEM ${SCTP_INCLUDE_DIRS})
update_cached_list(MK_COMPILE_DEFINITIONS ENABLE_SCTP)
update_cached_list(LINK_LIBRARIES ${SCTP_LIBRARIES})
# TODO: 避免暴露 SCTP 到 WebRTC 模块外
list(APPEND COMPILE_DEFINITIONS ENABLE_SCTP)
list(APPEND INCLUDE_DIRECTORIES ${SCTP_INCLUDE_DIRS})
list(APPEND LINK_LIBRARIES ${SCTP_LIBRARIES})
message(STATUS "WebRTC datachannel 功能已打开")
endif()
......@@ -50,19 +55,22 @@ file(GLOB WEBRTC_SRC_LIST
${CMAKE_CURRENT_SOURCE_DIR}/*.hpp)
add_library(webrtc ${WEBRTC_SRC_LIST})
add_library(ZLMediaKit::WebRTC ALIAS webrtc)
target_compile_definitions(webrtc
# ENABLE_SCTP 暂时需要暴露
PUBLIC ${COMPILE_DEFINITIONS})
target_compile_options(webrtc
PRIVATE ${COMPILE_OPTIONS_DEFAULT})
target_link_libraries(webrtc
PRIVATE
ZLMediaKit::MediaKit
ZLMediaKit::ToolKit
PUBLIC
${LINK_LIBRARIES})
target_include_directories(webrtc
PRIVATE
"$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>"
PUBLIC
"$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/..>")
"$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/..>"
${INCLUDE_DIRECTORIES})
message(STATUS "WebRTC 功能已开启")
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论