One reason for the circular deps is that common_types.h is a historical dumping ground for various structs and defines that are believed to be generally useful. I tried moving things out that did not appear to be used downstream (StreamCounters, RtpCounters etc) and moved the things that seemed used (RtpHeader + supporting structs) to a new file api/rtp_headers.h. This makes their place in the api more clear while moving out the things that don't belong in the API in the first place. I had to extract out typedefs.h from webrtc_common to resolve another circular dependency. I believe checks includes typedefs, but common depends on checks. Bug: webrtc:7745 Change-Id: I725d49616b1ec0cdc8b74be7c078f7a4d46f084b Reviewed-on: https://webrtc-review.googlesource.com/33001 Commit-Queue: Patrik Höglund <phoglund@webrtc.org> Reviewed-by: Karl Wiberg <kwiberg@webrtc.org> Cr-Commit-Position: refs/heads/master@{#21295}
98 lines
2.6 KiB
Plaintext
98 lines
2.6 KiB
Plaintext
# Copyright (c) 2014 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("../../webrtc.gni")
|
|
|
|
rtc_static_library("pacing") {
|
|
sources = [
|
|
"alr_detector.cc",
|
|
"alr_detector.h",
|
|
"bitrate_prober.cc",
|
|
"bitrate_prober.h",
|
|
"interval_budget.cc",
|
|
"interval_budget.h",
|
|
"paced_sender.cc",
|
|
"paced_sender.h",
|
|
"pacer.h",
|
|
"packet_queue.cc",
|
|
"packet_queue.h",
|
|
"packet_queue2.cc",
|
|
"packet_queue2.h",
|
|
"packet_router.cc",
|
|
"packet_router.h",
|
|
]
|
|
|
|
if (!build_with_chromium && is_clang) {
|
|
# Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163).
|
|
suppressed_configs += [ "//build/config/clang:find_bad_constructs" ]
|
|
}
|
|
|
|
deps = [
|
|
"..:module_api",
|
|
"../../:typedefs",
|
|
"../../:webrtc_common",
|
|
"../../api:optional",
|
|
"../../logging:rtc_event_log_api",
|
|
"../../rtc_base:checks",
|
|
"../../rtc_base:rtc_base_approved",
|
|
"../../system_wrappers",
|
|
"../../system_wrappers:field_trial_api",
|
|
"../remote_bitrate_estimator",
|
|
"../rtp_rtcp",
|
|
"../rtp_rtcp:rtp_rtcp_format",
|
|
"../utility",
|
|
]
|
|
}
|
|
|
|
if (rtc_include_tests) {
|
|
rtc_source_set("pacing_unittests") {
|
|
testonly = true
|
|
|
|
sources = [
|
|
"alr_detector_unittest.cc",
|
|
"bitrate_prober_unittest.cc",
|
|
"interval_budget_unittest.cc",
|
|
"paced_sender_unittest.cc",
|
|
"packet_router_unittest.cc",
|
|
]
|
|
deps = [
|
|
":pacing",
|
|
"../../rtc_base:checks",
|
|
"../../rtc_base:rtc_base_approved",
|
|
"../../rtc_base:rtc_base_tests_utils",
|
|
"../../system_wrappers",
|
|
"../../system_wrappers:field_trial_api",
|
|
"../../test:field_trial",
|
|
"../../test:test_support",
|
|
"../rtp_rtcp",
|
|
"../rtp_rtcp:mock_rtp_rtcp",
|
|
"../rtp_rtcp:rtp_rtcp_format",
|
|
"//testing/gmock",
|
|
]
|
|
|
|
# TODO(jschuh): bugs.webrtc.org/1348: fix this warning.
|
|
configs += [ "//build/config/compiler:no_size_t_to_int_warning" ]
|
|
if (!build_with_chromium && is_clang) {
|
|
# Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163).
|
|
suppressed_configs += [ "//build/config/clang:find_bad_constructs" ]
|
|
}
|
|
}
|
|
|
|
rtc_source_set("mock_paced_sender") {
|
|
testonly = true
|
|
sources = [
|
|
"mock/mock_paced_sender.h",
|
|
]
|
|
deps = [
|
|
":pacing",
|
|
"../../system_wrappers",
|
|
"../../test:test_support",
|
|
]
|
|
}
|
|
}
|