135 lines
3.1 KiB
Plaintext
135 lines
3.1 KiB
Plaintext
|
# Copyright (c) 2016 The WebRTC project authors. All Rights Reserved.
|
||
|
#
|
||
|
# Use of this source code is governed by a BSD-style license
|
||
|
# that can be found in the LICENSE file in the root of the source
|
||
|
# tree. An additional intellectual property rights grant can be found
|
||
|
# in the file PATENTS. All contributing project authors may
|
||
|
# be found in the AUTHORS file in the root of the source tree.
|
||
|
|
||
|
import("../build/webrtc.gni")
|
||
|
import("//testing/test.gni")
|
||
|
|
||
|
group("pc") {
|
||
|
deps = [
|
||
|
":rtc_pc",
|
||
|
]
|
||
|
}
|
||
|
|
||
|
config("rtc_pc_config") {
|
||
|
defines = [
|
||
|
"SRTP_RELATIVE_PATH",
|
||
|
"HAVE_SCTP",
|
||
|
"HAVE_SRTP",
|
||
|
]
|
||
|
}
|
||
|
|
||
|
source_set("rtc_pc") {
|
||
|
defines = []
|
||
|
sources = [
|
||
|
"audiomonitor.cc",
|
||
|
"audiomonitor.h",
|
||
|
"bundlefilter.cc",
|
||
|
"bundlefilter.h",
|
||
|
"channel.cc",
|
||
|
"channel.h",
|
||
|
"channelmanager.cc",
|
||
|
"channelmanager.h",
|
||
|
"currentspeakermonitor.cc",
|
||
|
"currentspeakermonitor.h",
|
||
|
"mediamonitor.cc",
|
||
|
"mediamonitor.h",
|
||
|
"mediasession.cc",
|
||
|
"mediasession.h",
|
||
|
"mediasink.h",
|
||
|
"rtcpmuxfilter.cc",
|
||
|
"rtcpmuxfilter.h",
|
||
|
"srtpfilter.cc",
|
||
|
"srtpfilter.h",
|
||
|
"voicechannel.h",
|
||
|
]
|
||
|
|
||
|
deps = [
|
||
|
"../base:rtc_base",
|
||
|
"../media",
|
||
|
]
|
||
|
|
||
|
if (build_with_chromium) {
|
||
|
sources += [
|
||
|
"externalhmac.cc",
|
||
|
"externalhmac.h",
|
||
|
]
|
||
|
}
|
||
|
if (rtc_build_libsrtp) {
|
||
|
deps += [ "//third_party/libsrtp" ]
|
||
|
}
|
||
|
|
||
|
configs += [ "..:common_config" ]
|
||
|
public_configs = [
|
||
|
"..:common_inherited_config",
|
||
|
":rtc_pc_config",
|
||
|
]
|
||
|
|
||
|
if (is_clang) {
|
||
|
# Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163).
|
||
|
configs -= [ "//build/config/clang:find_bad_constructs" ]
|
||
|
}
|
||
|
}
|
||
|
|
||
|
if (rtc_include_tests) {
|
||
|
config("rtc_pc_unittests_config") {
|
||
|
# GN orders flags on a target before flags from configs. The default config
|
||
|
# adds -Wall, and this flag have to be after -Wall -- so they need to
|
||
|
# come from a config and can't be on the target directly.
|
||
|
if (!is_win && !is_clang) {
|
||
|
cflags = [ "-Wno-maybe-uninitialized" ] # Only exists for GCC.
|
||
|
}
|
||
|
}
|
||
|
|
||
|
test("rtc_pc_unittests") {
|
||
|
testonly = true
|
||
|
|
||
|
sources = [
|
||
|
"bundlefilter_unittest.cc",
|
||
|
"channel_unittest.cc",
|
||
|
"channelmanager_unittest.cc",
|
||
|
"currentspeakermonitor_unittest.cc",
|
||
|
"mediasession_unittest.cc",
|
||
|
"rtcpmuxfilter_unittest.cc",
|
||
|
"srtpfilter_unittest.cc",
|
||
|
]
|
||
|
|
||
|
include_dirs = [ "//third_party/libsrtp/srtp" ]
|
||
|
|
||
|
configs += [
|
||
|
"..:common_config",
|
||
|
":rtc_pc_unittests_config",
|
||
|
]
|
||
|
public_configs = [ "..:common_inherited_config" ]
|
||
|
|
||
|
if (is_clang) {
|
||
|
# Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163).
|
||
|
configs -= [ "//build/config/clang:find_bad_constructs" ]
|
||
|
}
|
||
|
|
||
|
if (is_win) {
|
||
|
libs = [ "strmiids.lib" ]
|
||
|
}
|
||
|
|
||
|
deps = [
|
||
|
":rtc_pc",
|
||
|
"../api:libjingle_peerconnection",
|
||
|
"../base:rtc_base_tests_utils",
|
||
|
"../media:rtc_unittest_main",
|
||
|
"../system_wrappers:metrics_default",
|
||
|
]
|
||
|
|
||
|
if (rtc_build_libsrtp) {
|
||
|
deps += [ "//third_party/libsrtp" ]
|
||
|
}
|
||
|
|
||
|
if (is_android) {
|
||
|
deps += [ "//testing/android/native_test:native_test_support" ]
|
||
|
}
|
||
|
}
|
||
|
}
|