OLD | NEW |
---|---|
1 # Copyright (c) 2015 The WebRTC project authors. All Rights Reserved. | 1 # Copyright (c) 2015 The WebRTC project authors. All Rights Reserved. |
2 # | 2 # |
3 # Use of this source code is governed by a BSD-style license | 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 | 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 | 5 # tree. An additional intellectual property rights grant can be found |
6 # in the file PATENTS. All contributing project authors may | 6 # in the file PATENTS. All contributing project authors may |
7 # be found in the AUTHORS file in the root of the source tree. | 7 # be found in the AUTHORS file in the root of the source tree. |
8 | 8 |
9 import("../build/webrtc.gni") | 9 import("../build/webrtc.gni") |
10 import("//testing/test.gni") | |
10 | 11 |
11 group("api") { | 12 group("api") { |
12 deps = [ | 13 deps = [ |
13 ":libjingle_peerconnection", | 14 ":libjingle_peerconnection", |
14 ] | 15 ] |
15 } | 16 } |
16 | 17 |
17 config("libjingle_peerconnection_warnings_config") { | 18 config("libjingle_peerconnection_warnings_config") { |
18 # GN orders flags on a target before flags from configs. The default config | 19 # GN orders flags on a target before flags from configs. The default config |
19 # adds these flags so to cancel them out they need to come from a config and | 20 # adds these flags so to cancel them out they need to come from a config and |
(...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
98 "webrtcsessiondescriptionfactory.h", | 99 "webrtcsessiondescriptionfactory.h", |
99 ] | 100 ] |
100 | 101 |
101 configs += [ | 102 configs += [ |
102 "..:common_config", | 103 "..:common_config", |
103 ":libjingle_peerconnection_warnings_config", | 104 ":libjingle_peerconnection_warnings_config", |
104 ] | 105 ] |
105 public_configs = [ "..:common_inherited_config" ] | 106 public_configs = [ "..:common_inherited_config" ] |
106 | 107 |
107 if (is_clang) { | 108 if (is_clang) { |
108 # Suppress warnings from Chrome's Clang plugins. | 109 # Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163). |
109 # See http://code.google.com/p/webrtc/issues/detail?id=163 for details. | |
110 configs -= [ "//build/config/clang:extra_warnings" ] | |
111 configs -= [ "//build/config/clang:find_bad_constructs" ] | 110 configs -= [ "//build/config/clang:find_bad_constructs" ] |
112 } | 111 } |
113 | 112 |
114 if (is_win) { | 113 if (is_win) { |
115 cflags += [ "/wd4389" ] # signed/unsigned mismatch. | 114 cflags += [ "/wd4389" ] # signed/unsigned mismatch. |
116 } | 115 } |
117 | 116 |
118 deps = [ | 117 deps = [ |
119 "../call", | 118 "../call", |
120 "../media", | 119 "../media", |
121 "../pc", | 120 "../pc", |
122 ] | 121 ] |
123 | 122 |
124 if (rtc_use_quic) { | 123 if (rtc_use_quic) { |
125 sources += [ | 124 sources += [ |
126 "quicdatachannel.cc", | 125 "quicdatachannel.cc", |
127 "quicdatachannel.h", | 126 "quicdatachannel.h", |
128 "quicdatatransport.cc", | 127 "quicdatatransport.cc", |
129 "quicdatatransport.h", | 128 "quicdatatransport.h", |
130 ] | 129 ] |
131 deps += [ "//third_party/libquic" ] | 130 deps += [ "//third_party/libquic" ] |
132 public_deps = [ | 131 public_deps = [ |
133 "//third_party/libquic", | 132 "//third_party/libquic", |
134 ] | 133 ] |
135 } | 134 } |
136 } | 135 } |
136 | |
137 if (is_android) { | |
138 config("libjingle_peerconnection_jni_warnings_config") { | |
139 # GN orders flags on a target before flags from configs. The default config | |
140 # adds these flags so to cancel them out they need to come from a config and | |
perkj_webrtc
2016/06/13 14:57:03
Can this sentence be rephrased a bit. I am having
kjellander_webrtc
2016/06/13 18:41:23
Done.
| |
141 # cannot be on the target directly. | |
142 if (!is_win) { | |
143 cflags = [ | |
144 "-Wno-sign-compare", | |
145 "-Wno-unused-variable", | |
146 ] | |
147 } | |
148 } | |
149 | |
150 source_set("libjingle_peerconnection_jni") { | |
151 sources = [ | |
152 "androidvideocapturer.cc", | |
153 "androidvideocapturer.h", | |
154 "java/jni/androidmediacodeccommon.h", | |
155 "java/jni/androidmediadecoder_jni.cc", | |
156 "java/jni/androidmediadecoder_jni.h", | |
157 "java/jni/androidmediaencoder_jni.cc", | |
158 "java/jni/androidmediaencoder_jni.h", | |
159 "java/jni/androidmetrics_jni.cc", | |
160 "java/jni/androidnetworkmonitor_jni.cc", | |
161 "java/jni/androidnetworkmonitor_jni.h", | |
162 "java/jni/androidvideocapturer_jni.cc", | |
163 "java/jni/androidvideocapturer_jni.h", | |
164 "java/jni/classreferenceholder.cc", | |
165 "java/jni/classreferenceholder.h", | |
166 "java/jni/jni_helpers.cc", | |
167 "java/jni/jni_helpers.h", | |
168 "java/jni/native_handle_impl.cc", | |
169 "java/jni/native_handle_impl.h", | |
170 "java/jni/peerconnection_jni.cc", | |
171 "java/jni/surfacetexturehelper_jni.cc", | |
172 "java/jni/surfacetexturehelper_jni.h", | |
173 ] | |
174 | |
175 configs += [ | |
176 "..:common_config", | |
177 ":libjingle_peerconnection_jni_warnings_config", | |
178 ] | |
179 public_configs = [ "..:common_inherited_config" ] | |
180 | |
181 if (is_clang) { | |
182 # Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163). | |
183 configs -= [ | |
184 "//build/config/clang:extra_warnings", | |
185 "//build/config/clang:find_bad_constructs", | |
186 ] | |
187 } | |
188 | |
189 # TODO(jschuh): Bug 1348: fix this warning. | |
190 configs += [ "//build/config/compiler:no_size_t_to_int_warning" ] | |
191 | |
192 if (is_win) { | |
193 cflags += [ | |
194 "/wd4245", # conversion from "int" to "size_t", signed/unsigned mismatc h. | |
195 "/wd4389", # signed/unsigned mismatch. | |
196 ] | |
197 } | |
198 | |
199 deps = [ | |
200 ":libjingle_peerconnection", | |
201 "../system_wrappers:field_trial_default", | |
202 "../system_wrappers:metrics_default", | |
203 ] | |
204 | |
205 if (rtc_build_libyuv) { | |
206 deps += [ "$rtc_libyuv_dir" ] | |
207 public_deps = [ | |
208 "$rtc_libyuv_dir", | |
209 ] | |
210 } else { | |
211 # Need to add a directory normally exported by libyuv. | |
212 include_dirs += [ "$rtc_libyuv_dir/include" ] | |
213 } | |
214 } | |
215 } | |
216 | |
217 if (rtc_include_tests) { | |
218 config("peerconnection_unittests_config") { | |
219 # GN orders flags on a target before flags from configs. The default config | |
220 # adds -Wall, and this flag have to be after -Wall -- so they need to | |
perkj_webrtc
2016/06/13 14:57:03
this/ these? .. this flag have to be after -- so t
kjellander_webrtc
2016/06/13 18:41:23
You're right, I clarified this and the above.
| |
221 # come from a config and can"t be on the target directly. | |
222 # TODO(kjellander): Make the code compile without disabling these flags. | |
223 # See https://bugs.webrtc.org/3307. | |
224 if (is_clang && is_win) { | |
225 cflags = [ "-Wno-unused-function" ] | |
226 } | |
227 | |
228 if (!is_win) { | |
229 cflags = [ "-Wno-sign-compare" ] | |
230 cflags_cc = [ "-Wno-overloaded-virtual" ] | |
231 } | |
232 } | |
233 | |
234 test("peerconnection_unittests") { | |
235 testonly = true | |
236 sources = [ | |
237 "datachannel_unittest.cc", | |
238 "dtmfsender_unittest.cc", | |
239 "fakemetricsobserver.cc", | |
240 "fakemetricsobserver.h", | |
241 "jsepsessiondescription_unittest.cc", | |
242 "localaudiosource_unittest.cc", | |
243 "mediaconstraintsinterface_unittest.cc", | |
244 "mediastream_unittest.cc", | |
245 "peerconnection_unittest.cc", | |
246 "peerconnectionendtoend_unittest.cc", | |
247 "peerconnectionfactory_unittest.cc", | |
248 "peerconnectioninterface_unittest.cc", | |
249 "proxy_unittest.cc", | |
250 "rtpsenderreceiver_unittest.cc", | |
251 "statscollector_unittest.cc", | |
252 "test/fakeaudiocapturemodule.cc", | |
253 "test/fakeaudiocapturemodule.h", | |
254 "test/fakeaudiocapturemodule_unittest.cc", | |
255 "test/fakeconstraints.h", | |
256 "test/fakedatachannelprovider.h", | |
257 "test/fakeperiodicvideocapturer.h", | |
258 "test/fakertccertificategenerator.h", | |
259 "test/fakevideotrackrenderer.h", | |
260 "test/mockpeerconnectionobservers.h", | |
261 "test/peerconnectiontestwrapper.cc", | |
262 "test/peerconnectiontestwrapper.h", | |
263 "test/testsdpstrings.h", | |
264 "videocapturertracksource_unittest.cc", | |
265 "videotrack_unittest.cc", | |
266 "webrtcsdp_unittest.cc", | |
267 "webrtcsession_unittest.cc", | |
268 ] | |
269 | |
270 defines = [ "HAVE_SCTP" ] | |
271 | |
272 configs += [ | |
273 "..:common_config", | |
274 ":peerconnection_unittests_config", | |
275 ] | |
276 public_configs = [ "..:common_inherited_config" ] | |
277 | |
278 if (is_clang) { | |
279 # Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163). | |
280 configs -= [ "//build/config/clang:find_bad_constructs" ] | |
281 } | |
282 | |
283 # TODO(jschuh): Bug 1348: fix this warning. | |
284 configs += [ "//build/config/compiler:no_size_t_to_int_warning" ] | |
285 | |
286 if (is_win) { | |
287 cflags = [ | |
288 "/wd4245", # conversion from int to size_t, signed/unsigned mismatch. | |
289 "/wd4389", # signed/unsigned mismatch. | |
290 ] | |
291 } | |
292 | |
293 if (rtc_use_quic) { | |
294 public_deps = [ | |
295 "//third_party/libquic", | |
296 ] | |
297 sources += [ | |
298 "quicdatachannel_unittest.cc", | |
299 "quicdatatransport_unittest.cc", | |
300 ] | |
301 } | |
302 | |
303 deps = [] | |
304 if (is_android) { | |
305 sources += [ | |
306 "test/androidtestinitializer.cc", | |
307 "test/androidtestinitializer.h", | |
308 ] | |
309 deps += [ | |
310 ":libjingle_peerconnection_jni", | |
311 "//testing/android/native_test:native_test_support", | |
312 ] | |
313 } | |
314 | |
315 deps += [ | |
316 ":libjingle_peerconnection", | |
317 "..:webrtc_common", | |
318 "../base:rtc_base_tests_utils", | |
319 "../media:rtc_unittest_main", | |
320 "../pc:rtc_pc", | |
321 "../system_wrappers:metrics_default", | |
322 "//testing/gmock", | |
323 ] | |
324 | |
325 if (is_android) { | |
326 deps += [ "//testing/android/native_test:native_test_support" ] | |
327 } | |
328 } | |
329 } | |
OLD | NEW |