blob: 789770ab87dda87ddf004cebb9b36a3b51694f36 [file] [log] [blame]
Sebastian Janssonfc7ec8e2018-02-28 16:48:00 +01001# Copyright (c) 2018 The WebRTC project authors. All Rights Reserved.
2#
3# Use of this source code is governed by a BSD-style license
4# that can be found in the LICENSE file in the root of the source
5# tree. An additional intellectual property rights grant can be found
6# in the file PATENTS. All contributing project authors may
7# be found in the AUTHORS file in the root of the source tree.
8
9import("../../../webrtc.gni")
10
11config("bwe_test_logging") {
12 if (rtc_enable_bwe_test_logging) {
13 defines = [ "BWE_TEST_LOGGING_COMPILE_TIME_ENABLE=1" ]
14 } else {
15 defines = [ "BWE_TEST_LOGGING_COMPILE_TIME_ENABLE=0" ]
16 }
17}
18
19rtc_static_library("goog_cc") {
20 configs += [ ":bwe_test_logging" ]
21 sources = [
22 "alr_detector.cc",
23 "alr_detector.h",
24 "goog_cc_factory.cc",
25 "goog_cc_network_control.cc",
26 "goog_cc_network_control.h",
27 "include/goog_cc_factory.h",
28 "probe_controller.cc",
29 "probe_controller.h",
30 ]
31
32 # TODO(jschuh): Bug 1348: fix this warning.
33 configs += [ "//build/config/compiler:no_size_t_to_int_warning" ]
34
35 if (!build_with_chromium && is_clang) {
36 # Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163).
37 suppressed_configs += [ "//build/config/clang:find_bad_constructs" ]
38 }
39
40 deps = [
41 ":delay_based_bwe",
42 ":estimators",
43 "../..:module_api",
44 "../../..:webrtc_common",
45 "../../../:typedefs",
46 "../../../api:optional",
Sebastian Janssonc6c44262018-05-09 10:33:39 +020047 "../../../api/transport:network_control",
Sebastian Janssonfc7ec8e2018-02-28 16:48:00 +010048 "../../../logging:rtc_event_log_api",
49 "../../../logging:rtc_event_pacing",
50 "../../../rtc_base:checks",
51 "../../../rtc_base:rtc_base_approved",
52 "../../../rtc_base/experiments:alr_experiment",
53 "../../../system_wrappers",
54 "../../../system_wrappers:field_trial_api",
55 "../../../system_wrappers:metrics_api",
56 "../../bitrate_controller",
57 "../../pacing",
58 "../../remote_bitrate_estimator",
59 "../../rtp_rtcp:rtp_rtcp_format",
Sebastian Janssonfc7ec8e2018-02-28 16:48:00 +010060 ]
61}
62
63rtc_source_set("estimators") {
64 configs += [ ":bwe_test_logging" ]
65 sources = [
66 "acknowledged_bitrate_estimator.cc",
67 "acknowledged_bitrate_estimator.h",
68 "bitrate_estimator.cc",
69 "bitrate_estimator.h",
70 "delay_increase_detector_interface.h",
71 "median_slope_estimator.cc",
72 "median_slope_estimator.h",
73 "probe_bitrate_estimator.cc",
74 "probe_bitrate_estimator.h",
75 "trendline_estimator.cc",
76 "trendline_estimator.h",
77 ]
78
79 # TODO(jschuh): Bug 1348: fix this warning.
80 configs += [ "//build/config/compiler:no_size_t_to_int_warning" ]
81
82 if (!build_with_chromium && is_clang) {
83 # Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163).
84 suppressed_configs += [ "//build/config/clang:find_bad_constructs" ]
85 }
86
87 deps = [
88 "../../../api:optional",
89 "../../../logging:rtc_event_bwe",
90 "../../../logging:rtc_event_log_api",
91 "../../../rtc_base:checks",
92 "../../../rtc_base:rtc_base_approved",
93 "../../../rtc_base:rtc_numerics",
Karl Wiberg12edf4c2018-03-07 14:18:56 +010094 "../../../rtc_base:safe_minmax",
Sebastian Janssonfc7ec8e2018-02-28 16:48:00 +010095 "../../../system_wrappers:field_trial_api",
96 "../../../system_wrappers:metrics_api",
97 "../../remote_bitrate_estimator",
98 "../../rtp_rtcp:rtp_rtcp_format",
99 ]
100}
101
102rtc_source_set("delay_based_bwe") {
103 configs += [ ":bwe_test_logging" ]
104 sources = [
105 "delay_based_bwe.cc",
106 "delay_based_bwe.h",
107 ]
108
109 deps = [
110 ":estimators",
111 "../../../:typedefs",
112 "../../../logging:rtc_event_bwe",
113 "../../../logging:rtc_event_log_api",
114 "../../../rtc_base:checks",
115 "../../../rtc_base:rtc_base_approved",
116 "../../../system_wrappers:field_trial_api",
117 "../../../system_wrappers:metrics_api",
118 "../../pacing",
119 "../../remote_bitrate_estimator",
120 ]
121
122 if (!build_with_chromium && is_clang) {
123 # Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163).
124 suppressed_configs += [ "//build/config/clang:find_bad_constructs" ]
125 }
126}
127
128if (rtc_include_tests) {
129 rtc_source_set("goog_cc_unittests") {
130 testonly = true
131
132 sources = [
133 "acknowledged_bitrate_estimator_unittest.cc",
134 "alr_detector_unittest.cc",
135 "delay_based_bwe_unittest.cc",
136 "delay_based_bwe_unittest_helper.cc",
137 "delay_based_bwe_unittest_helper.h",
138 "median_slope_estimator_unittest.cc",
139 "probe_bitrate_estimator_unittest.cc",
140 "probe_controller_unittest.cc",
141 "trendline_estimator_unittest.cc",
142 ]
143 deps = [
144 ":delay_based_bwe",
145 ":estimators",
146 ":goog_cc",
Sebastian Janssonc6c44262018-05-09 10:33:39 +0200147 "../../../api/transport:network_control",
148 "../../../api/transport:network_control_test",
Sebastian Janssonfc7ec8e2018-02-28 16:48:00 +0100149 "../../../rtc_base:checks",
150 "../../../rtc_base:rtc_base_approved",
151 "../../../rtc_base:rtc_base_tests_utils",
152 "../../../rtc_base/experiments:alr_experiment",
153 "../../../system_wrappers",
154 "../../../test:field_trial",
155 "../../../test:test_support",
156 "../../pacing",
157 "../../remote_bitrate_estimator",
158 "../../rtp_rtcp:rtp_rtcp_format",
Sebastian Janssonfc7ec8e2018-02-28 16:48:00 +0100159 "//testing/gmock",
160 ]
161 if (!build_with_chromium && is_clang) {
162 # Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163).
163 suppressed_configs += [ "//build/config/clang:find_bad_constructs" ]
164 }
165 }
166}