blob: c665e03914dad5c39505fa3592ea0560cb85175a [file] [log] [blame]
Henrik Kjellanderc0362762017-06-29 08:03:04 +02001# Copyright (c) 2014 The WebRTC project authors. All Rights Reserved.
Henrik Kjellander73e21802017-06-20 08:38:58 +02002#
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
Henrik Kjellanderc0362762017-06-29 08:03:04 +02009import("//build/config/crypto.gni")
10import("//build/config/ui.gni")
Henrik Kjellander73e21802017-06-20 08:38:58 +020011import("../webrtc.gni")
12
13if (is_android) {
14 import("//build/config/android/config.gni")
15 import("//build/config/android/rules.gni")
16}
Henrik Kjellanderc0362762017-06-29 08:03:04 +020017if (is_win) {
18 import("//build/config/clang/clang.gni")
19}
Henrik Kjellander73e21802017-06-20 08:38:58 +020020
Henrik Kjellanderc0362762017-06-29 08:03:04 +020021group("base") {
22 public_deps = [
23 ":rtc_base",
24 ":rtc_base_approved",
25 ":rtc_task_queue",
26 ":sequenced_task_checker",
27 ":weak_ptr",
28 ]
Henrik Kjellander73e21802017-06-20 08:38:58 +020029 if (is_android) {
30 public_deps += [ ":base_java" ]
31 }
32}
33
Henrik Kjellanderc0362762017-06-29 08:03:04 +020034config("rtc_base_chromium_config") {
35 defines = [ "NO_MAIN_THREAD_WRAPPING" ]
36}
37
38config("rtc_base_all_dependent_config") {
39 if (is_ios) {
40 libs = [
41 "CFNetwork.framework",
42 "Security.framework",
43 "SystemConfiguration.framework",
44 "UIKit.framework",
45 ]
46 }
47 if (is_mac) {
48 libs = [
49 "Cocoa.framework",
50 "Foundation.framework",
51 "IOKit.framework",
52 "Security.framework",
53 "SystemConfiguration.framework",
54 ]
55 }
56}
57
Dan Minor9cdd8762018-01-16 10:40:39 -050058if (!rtc_build_ssl) {
Henrik Kjellanderc0362762017-06-29 08:03:04 +020059 config("external_ssl_library") {
60 assert(rtc_ssl_root != "",
61 "You must specify rtc_ssl_root when rtc_build_ssl==0.")
62 include_dirs = [ rtc_ssl_root ]
63 }
64}
65
66source_set("protobuf_utils") {
Per Kjellandera7f2d842018-01-10 15:54:53 +000067 visibility = [ "*" ]
Henrik Kjellanderc0362762017-06-29 08:03:04 +020068 sources = [
69 "protobuf_utils.h",
70 ]
71 if (rtc_enable_protobuf) {
72 public_deps = [
73 "//third_party/protobuf:protobuf_lite",
74 ]
75 }
76}
77
78source_set("compile_assert_c") {
79 sources = [
80 "compile_assert_c.h",
81 ]
82}
83
mbonadeibc378472017-09-11 03:43:34 -070084rtc_source_set("rtc_base_approved") {
Per Kjellandera7f2d842018-01-10 15:54:53 +000085 visibility = [ "*" ]
mbonadeibc378472017-09-11 03:43:34 -070086 public_deps = [
87 ":rtc_base_approved_generic",
88 ]
89 if (is_mac && !build_with_chromium) {
90 public_deps += [ ":rtc_base_approved_objc" ]
91 }
92}
93
Patrik Höglunda8005cf2017-12-13 16:05:42 +010094rtc_source_set("checks") {
95 sources = [
96 "checks.cc",
97 "checks.h",
98 ]
99 deps = [
100 ":safe_compare",
Patrik Höglund3e113432017-12-15 14:40:10 +0100101 "..:typedefs",
Patrik Höglunda8005cf2017-12-13 16:05:42 +0100102 ]
103}
104
Patrik Höglund3e113432017-12-15 14:40:10 +0100105rtc_source_set("rate_limiter") {
Patrik Höglunda8005cf2017-12-13 16:05:42 +0100106 sources = [
Patrik Höglund3e113432017-12-15 14:40:10 +0100107 "rate_limiter.cc",
108 "rate_limiter.h",
109 ]
110 deps = [
111 ":rtc_base_approved",
112 "../system_wrappers",
Patrik Höglunda8005cf2017-12-13 16:05:42 +0100113 ]
114}
115
116rtc_source_set("sanitizer") {
117 sources = [
118 "sanitizer.h",
119 ]
120}
121
122rtc_source_set("safe_compare") {
123 sources = [
124 "numerics/safe_compare.h",
125 ]
126 deps = [
127 ":type_traits",
128 ]
129}
130
Patrik Höglund3e113432017-12-15 14:40:10 +0100131rtc_source_set("stringutils") {
Patrik Höglunda8005cf2017-12-13 16:05:42 +0100132 sources = [
Patrik Höglund3e113432017-12-15 14:40:10 +0100133 "stringutils.cc",
134 "stringutils.h",
Patrik Höglunda8005cf2017-12-13 16:05:42 +0100135 ]
136 deps = [
Patrik Höglund3e113432017-12-15 14:40:10 +0100137 ":checks",
138 ]
139}
140
141rtc_source_set("type_traits") {
142 sources = [
143 "type_traits.h",
144 ]
145}
146
147rtc_source_set("deprecation") {
148 sources = [
149 "deprecation.h",
Patrik Höglunda8005cf2017-12-13 16:05:42 +0100150 ]
151}
152
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200153# The subset of rtc_base approved for use outside of libjingle.
mbonadeibc378472017-09-11 03:43:34 -0700154rtc_source_set("rtc_base_approved_generic") {
155 visibility = [
156 ":rtc_base_approved",
157 ":rtc_base_approved_objc",
Tommi897e1362017-12-01 18:56:43 +0100158 ":weak_ptr_unittests",
mbonadeibc378472017-09-11 03:43:34 -0700159 ]
160
Patrik Höglunda8005cf2017-12-13 16:05:42 +0100161 cflags = []
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200162 defines = []
163 libs = []
Patrik Höglunda8005cf2017-12-13 16:05:42 +0100164 deps = [
165 ":checks",
166 ":safe_compare",
Patrik Höglund3e113432017-12-15 14:40:10 +0100167 ":stringutils",
Patrik Höglunda8005cf2017-12-13 16:05:42 +0100168 ":type_traits",
Patrik Höglund3e113432017-12-15 14:40:10 +0100169 "../:typedefs",
Patrik Höglunda8005cf2017-12-13 16:05:42 +0100170 ]
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200171
172 sources = [
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200173 "arraysize.h",
174 "atomicops.h",
175 "base64.cc",
176 "base64.h",
177 "basictypes.h",
178 "bind.h",
179 "bitbuffer.cc",
180 "bitbuffer.h",
Alex Narest78609d52017-10-20 10:37:47 +0200181 "bitrateallocationstrategy.cc",
182 "bitrateallocationstrategy.h",
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200183 "buffer.h",
184 "bufferqueue.cc",
185 "bufferqueue.h",
186 "bytebuffer.cc",
187 "bytebuffer.h",
188 "byteorder.h",
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200189 "constructormagic.h",
190 "copyonwritebuffer.cc",
191 "copyonwritebuffer.h",
192 "criticalsection.cc",
193 "criticalsection.h",
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200194 "event_tracer.cc",
195 "event_tracer.h",
196 "file.cc",
197 "file.h",
198 "flags.cc",
199 "flags.h",
200 "format_macros.h",
201 "function_view.h",
202 "ignore_wundef.h",
203 "location.cc",
204 "location.h",
Karl Wiberg65c39222017-11-22 12:25:14 +0100205 "numerics/histogram_percentile_counter.cc",
206 "numerics/histogram_percentile_counter.h",
207 "numerics/mod_ops.h",
208 "numerics/moving_max_counter.h",
Karl Wiberge40468b2017-11-22 10:42:26 +0100209 "numerics/safe_conversions.h",
210 "numerics/safe_conversions_impl.h",
211 "numerics/safe_minmax.h",
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200212 "onetimeevent.h",
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200213 "pathutils.cc",
214 "pathutils.h",
215 "platform_file.cc",
216 "platform_file.h",
217 "platform_thread.cc",
218 "platform_thread.h",
219 "platform_thread_types.h",
220 "ptr_util.h",
221 "race_checker.cc",
222 "race_checker.h",
223 "random.cc",
224 "random.h",
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200225 "rate_statistics.cc",
226 "rate_statistics.h",
227 "ratetracker.cc",
228 "ratetracker.h",
229 "refcount.h",
230 "refcountedobject.h",
Niels Möller9155e492017-10-23 11:22:30 +0200231 "refcounter.h",
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200232 "scoped_ref_ptr.h",
233 "string_to_number.cc",
234 "string_to_number.h",
235 "stringencode.cc",
236 "stringencode.h",
237 "stringize_macros.h",
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200238 "swap_queue.h",
239 "template_util.h",
240 "thread_annotations.h",
241 "thread_checker.h",
242 "thread_checker_impl.cc",
243 "thread_checker_impl.h",
244 "timestampaligner.cc",
245 "timestampaligner.h",
246 "timeutils.cc",
247 "timeutils.h",
248 "trace_event.h",
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200249 ]
250
Patrik Höglunda8005cf2017-12-13 16:05:42 +0100251 deps += [
252 "..:webrtc_common",
253 "../api:array_view",
254 "../api:optional",
255 ]
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200256
257 if (is_android) {
258 libs += [ "log" ]
259 }
260
261 if (is_posix) {
262 sources += [ "file_posix.cc" ]
263 }
264
265 if (is_win) {
266 sources += [ "file_win.cc" ]
267 }
268
269 if (build_with_chromium) {
270 # Dependency on chromium's logging (in //base).
271 deps += [ "//base:base" ]
272 sources += [
Tommi06483ca2017-11-26 18:22:52 +0100273 "../../webrtc_overrides/rtc_base/event.cc",
274 "../../webrtc_overrides/rtc_base/event.h",
Mirko Bonadei92ea95e2017-09-15 06:47:31 +0200275 "../../webrtc_overrides/rtc_base/logging.cc",
276 "../../webrtc_overrides/rtc_base/logging.h",
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200277 ]
278 } else {
279 sources += [
Tommi06483ca2017-11-26 18:22:52 +0100280 "event.cc",
281 "event.h",
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200282 "logging.cc",
283 "logging.h",
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200284 ]
285 }
286 if (is_component_build && is_win) {
287 # Copy the VS runtime DLLs into the isolate so that they don't have to be
288 # preinstalled on the target machine. The debug runtimes have a "d" at
289 # the end.
290 # This is a copy of https://codereview.chromium.org/1783973002.
291 # TODO(ehmaldonado): We'd like Chromium to make this changes easier to use,
292 # so we don't have to copy their changes and risk breakages.
293 # See http://crbug.com/653569
294 if (is_debug) {
295 vcrt_suffix = "d"
296 } else {
297 vcrt_suffix = ""
298 }
299
300 # These runtime files are copied to the output directory by the
301 # vs_toolchain script that runs as part of toolchain configuration.
302 data = [
303 "$root_out_dir/msvcp140${vcrt_suffix}.dll",
304 "$root_out_dir/vccorlib140${vcrt_suffix}.dll",
305 "$root_out_dir/vcruntime140${vcrt_suffix}.dll",
306
307 # Universal Windows 10 CRT files
308 "$root_out_dir/api-ms-win-core-console-l1-1-0.dll",
309 "$root_out_dir/api-ms-win-core-datetime-l1-1-0.dll",
310 "$root_out_dir/api-ms-win-core-debug-l1-1-0.dll",
311 "$root_out_dir/api-ms-win-core-errorhandling-l1-1-0.dll",
312 "$root_out_dir/api-ms-win-core-file-l1-1-0.dll",
313 "$root_out_dir/api-ms-win-core-file-l1-2-0.dll",
314 "$root_out_dir/api-ms-win-core-file-l2-1-0.dll",
315 "$root_out_dir/api-ms-win-core-handle-l1-1-0.dll",
316 "$root_out_dir/api-ms-win-core-heap-l1-1-0.dll",
317 "$root_out_dir/api-ms-win-core-interlocked-l1-1-0.dll",
318 "$root_out_dir/api-ms-win-core-libraryloader-l1-1-0.dll",
319 "$root_out_dir/api-ms-win-core-localization-l1-2-0.dll",
320 "$root_out_dir/api-ms-win-core-memory-l1-1-0.dll",
321 "$root_out_dir/api-ms-win-core-namedpipe-l1-1-0.dll",
322 "$root_out_dir/api-ms-win-core-processenvironment-l1-1-0.dll",
323 "$root_out_dir/api-ms-win-core-processthreads-l1-1-0.dll",
324 "$root_out_dir/api-ms-win-core-processthreads-l1-1-1.dll",
325 "$root_out_dir/api-ms-win-core-profile-l1-1-0.dll",
326 "$root_out_dir/api-ms-win-core-rtlsupport-l1-1-0.dll",
327 "$root_out_dir/api-ms-win-core-string-l1-1-0.dll",
328 "$root_out_dir/api-ms-win-core-synch-l1-1-0.dll",
329 "$root_out_dir/api-ms-win-core-synch-l1-2-0.dll",
330 "$root_out_dir/api-ms-win-core-sysinfo-l1-1-0.dll",
331 "$root_out_dir/api-ms-win-core-timezone-l1-1-0.dll",
332 "$root_out_dir/api-ms-win-core-util-l1-1-0.dll",
333 "$root_out_dir/api-ms-win-crt-conio-l1-1-0.dll",
334 "$root_out_dir/api-ms-win-crt-convert-l1-1-0.dll",
335 "$root_out_dir/api-ms-win-crt-environment-l1-1-0.dll",
336 "$root_out_dir/api-ms-win-crt-filesystem-l1-1-0.dll",
337 "$root_out_dir/api-ms-win-crt-heap-l1-1-0.dll",
338 "$root_out_dir/api-ms-win-crt-locale-l1-1-0.dll",
339 "$root_out_dir/api-ms-win-crt-math-l1-1-0.dll",
340 "$root_out_dir/api-ms-win-crt-multibyte-l1-1-0.dll",
341 "$root_out_dir/api-ms-win-crt-private-l1-1-0.dll",
342 "$root_out_dir/api-ms-win-crt-process-l1-1-0.dll",
343 "$root_out_dir/api-ms-win-crt-runtime-l1-1-0.dll",
344 "$root_out_dir/api-ms-win-crt-stdio-l1-1-0.dll",
345 "$root_out_dir/api-ms-win-crt-string-l1-1-0.dll",
346 "$root_out_dir/api-ms-win-crt-time-l1-1-0.dll",
347 "$root_out_dir/api-ms-win-crt-utility-l1-1-0.dll",
348 "$root_out_dir/ucrtbase${vcrt_suffix}.dll",
349 ]
350 if (is_asan) {
351 if (current_cpu == "x64") {
352 data += [ "$clang_base_path/lib/clang/$clang_version/lib/windows/clang_rt.asan_dynamic-x86_64.dll" ]
353 } else {
354 data += [ "$clang_base_path/lib/clang/$clang_version/lib/windows/clang_rt.asan_dynamic-i386.dll" ]
355 }
356 }
357 }
358 if (is_nacl) {
359 deps += [ "//native_client_sdk/src/libraries/nacl_io" ]
360 }
361}
362
mbonadeibc378472017-09-11 03:43:34 -0700363if (is_mac && !build_with_chromium) {
364 config("rtc_base_approved_objc_all_dependent_config") {
365 visibility = [ ":rtc_base_approved_objc" ]
366 libs = [ "Foundation.framework" ] # needed for logging_mac.mm
367 }
368
369 rtc_source_set("rtc_base_approved_objc") {
370 visibility = [ ":rtc_base_approved" ]
371 all_dependent_configs = [ ":rtc_base_approved_objc_all_dependent_config" ]
372 sources = [
373 "logging_mac.mm",
374 ]
375 deps = [
376 ":rtc_base_approved_generic",
377 ]
378 }
379}
380
perkj650fdae2017-08-25 05:00:11 -0700381rtc_source_set("rtc_task_queue") {
Per Kjellandera7f2d842018-01-10 15:54:53 +0000382 visibility = [ "*" ]
mbonadei95c8f652017-08-27 23:40:10 -0700383 deps = [
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200384 ":rtc_base_approved",
mbonadei95c8f652017-08-27 23:40:10 -0700385 ]
386 public_deps = [
perkj650fdae2017-08-25 05:00:11 -0700387 ":rtc_task_queue_api",
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200388 ]
389
perkj650fdae2017-08-25 05:00:11 -0700390 if (rtc_link_task_queue_impl) {
mbonadei95c8f652017-08-27 23:40:10 -0700391 deps += [ ":rtc_task_queue_impl" ]
perkj650fdae2017-08-25 05:00:11 -0700392 }
393}
394
395# WebRTC targets must not directly depend on rtc_task_queue_api or
396# rtc_task_queue_impl. Instead, depend on rtc_task_queue.
397# The build flag |rtc_link_task_queue_impl| decides if WebRTC targets will link
398# to the default implemenation in rtc_task_queue_impl or if an externally
399# provided implementation should be used. An external implementation should
400# depend on rtc_task_queue_api.
401rtc_source_set("rtc_task_queue_api") {
nisse75dd6d42017-09-19 08:28:00 -0700402 sources = [
403 "task_queue.h",
404 ]
perkj650fdae2017-08-25 05:00:11 -0700405 deps = [
406 ":rtc_base_approved",
407 ]
408}
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200409
perkj650fdae2017-08-25 05:00:11 -0700410rtc_source_set("rtc_task_queue_impl") {
Per Kjellandera7f2d842018-01-10 15:54:53 +0000411 visibility = [ "*" ]
perkj650fdae2017-08-25 05:00:11 -0700412 deps = [
Patrik Höglunda8005cf2017-12-13 16:05:42 +0100413 ":checks",
perkj650fdae2017-08-25 05:00:11 -0700414 ":rtc_base_approved",
415 ":rtc_task_queue_api",
416 ]
Niels Möller15c9cf72017-10-19 12:38:09 +0200417 if (rtc_build_libevent) {
418 deps += [ "//base/third_party/libevent" ]
419 }
420 if (rtc_enable_libevent) {
perkj650fdae2017-08-25 05:00:11 -0700421 sources = [
Niels Möller15c9cf72017-10-19 12:38:09 +0200422 "task_queue_libevent.cc",
423 "task_queue_posix.cc",
424 "task_queue_posix.h",
perkj650fdae2017-08-25 05:00:11 -0700425 ]
426 } else {
Niels Möller15c9cf72017-10-19 12:38:09 +0200427 if (is_mac || is_ios) {
Niels Möller17a04742017-09-27 10:53:21 +0200428 sources = [
Niels Möller15c9cf72017-10-19 12:38:09 +0200429 "task_queue_gcd.cc",
Henrik Boströma9a27712017-10-03 08:01:07 +0000430 "task_queue_posix.cc",
431 "task_queue_posix.h",
Niels Möller17a04742017-09-27 10:53:21 +0200432 ]
Niels Möller15c9cf72017-10-19 12:38:09 +0200433 }
434 if (is_win) {
435 sources = [
436 "task_queue_win.cc",
437 ]
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200438 }
439 }
440}
441
442rtc_static_library("sequenced_task_checker") {
443 sources = [
444 "sequenced_task_checker.h",
445 "sequenced_task_checker_impl.cc",
446 "sequenced_task_checker_impl.h",
447 ]
448 deps = [
Patrik Höglunda8005cf2017-12-13 16:05:42 +0100449 ":checks",
mbonadei95c8f652017-08-27 23:40:10 -0700450 ":rtc_base_approved",
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200451 ":rtc_task_queue",
452 ]
453}
454
455rtc_static_library("weak_ptr") {
456 sources = [
457 "weak_ptr.cc",
458 "weak_ptr.h",
459 ]
460 deps = [
461 ":rtc_base_approved",
462 ":sequenced_task_checker",
463 ]
464}
465
466rtc_static_library("rtc_numerics") {
467 sources = [
468 "numerics/exp_filter.cc",
469 "numerics/exp_filter.h",
Ilya Nikolaevskiyb9685752017-11-01 14:01:00 +0100470 "numerics/moving_median_filter.h",
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200471 "numerics/percentile_filter.h",
Bjorn Tereliusa194e582017-10-25 13:07:09 +0200472 "numerics/sequence_number_util.h",
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200473 ]
474 deps = [
Patrik Höglunda8005cf2017-12-13 16:05:42 +0100475 ":checks",
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200476 ":rtc_base_approved",
Patrik Höglunda8005cf2017-12-13 16:05:42 +0100477 ":safe_compare",
Bjorn Tereliusa194e582017-10-25 13:07:09 +0200478 "../api:optional",
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200479 ]
480}
481
482config("rtc_base_warnings_config") {
483 if (is_win && is_clang) {
484 cflags = [
485 # Disable warnings failing when compiling with Clang on Windows.
486 # https://bugs.chromium.org/p/webrtc/issues/detail?id=5366
487 "-Wno-sign-compare",
488 "-Wno-missing-braces",
489 ]
490 }
491}
492
493rtc_source_set("rtc_json") {
494 defines = []
495 sources = [
496 "json.cc",
497 "json.h",
498 ]
499 if (rtc_build_json) {
500 public_deps = [
501 "//third_party/jsoncpp",
502 ]
503 } else {
504 include_dirs = [ "$rtc_jsoncpp_root" ]
505
506 # When defined changes the include path for json.h to where it is
507 # expected to be when building json outside of the standalone build.
508 defines += [ "WEBRTC_EXTERNAL_JSON" ]
509 }
510}
511
mbonadei9c5e5112017-09-05 05:17:02 -0700512rtc_static_library("rtc_base") {
Per Kjellandera7f2d842018-01-10 15:54:53 +0000513 visibility = [ "*" ]
Dan Minor9c686132018-01-15 10:20:00 -0500514 public_deps = []
515 if (!build_with_mozilla) {
516 public_deps += [ ":rtc_base_generic" ]
517 }
mbonadei310e32b2017-09-07 07:36:28 -0700518 if (is_win) {
519 sources = [
520 "noop.cc",
521 ]
522 }
523 if (is_ios || is_mac) {
524 sources = [
525 "noop.mm",
526 ]
527 public_deps += [ ":rtc_base_objc" ]
528 }
529}
530
531if (is_ios || is_mac) {
532 rtc_source_set("rtc_base_objc") {
533 sources = [
534 "thread_darwin.mm",
535 ]
536 deps = [
537 ":rtc_base_generic",
538 ]
539 visibility = [ ":rtc_base" ]
540 }
541}
542
543rtc_static_library("rtc_base_generic") {
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200544 cflags = []
545 cflags_cc = []
546 libs = []
547 defines = []
548 deps = [
Patrik Höglunda8005cf2017-12-13 16:05:42 +0100549 ":checks",
Patrik Höglund3e113432017-12-15 14:40:10 +0100550 ":stringutils",
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200551 "..:webrtc_common",
Joachim Bauch58daf402017-12-21 22:00:34 +0100552 "../api:array_view",
kwiberg84f6a3f2017-09-05 08:43:13 -0700553 "../api:optional",
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200554 ]
555 public_deps = [
556 ":rtc_base_approved",
557 ]
558 public_configs = []
559
560 all_dependent_configs = [ ":rtc_base_all_dependent_config" ]
561
562 sources = [
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200563 "asyncinvoker-inl.h",
564 "asyncinvoker.cc",
565 "asyncinvoker.h",
566 "asyncpacketsocket.cc",
567 "asyncpacketsocket.h",
568 "asyncresolverinterface.cc",
569 "asyncresolverinterface.h",
570 "asyncsocket.cc",
571 "asyncsocket.h",
572 "asynctcpsocket.cc",
573 "asynctcpsocket.h",
574 "asyncudpsocket.cc",
575 "asyncudpsocket.h",
576 "crc32.cc",
577 "crc32.h",
578 "cryptstring.cc",
579 "cryptstring.h",
Patrik Höglund76df0df2017-12-19 11:50:21 +0100580 "dscp.h",
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200581 "filerotatingstream.cc",
582 "filerotatingstream.h",
583 "fileutils.cc",
584 "fileutils.h",
585 "gunit_prod.h",
586 "helpers.cc",
587 "helpers.h",
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200588 "httpcommon-inl.h",
589 "httpcommon.cc",
590 "httpcommon.h",
591 "ipaddress.cc",
592 "ipaddress.h",
Patrik Höglund76df0df2017-12-19 11:50:21 +0100593 "keep_ref_until_done.h",
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200594 "messagedigest.cc",
595 "messagedigest.h",
596 "messagehandler.cc",
597 "messagehandler.h",
598 "messagequeue.cc",
599 "messagequeue.h",
Zhi Huang942bc2e2017-11-13 13:26:07 -0800600 "nethelper.cc",
601 "nethelper.h",
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200602 "nethelpers.cc",
603 "nethelpers.h",
604 "network.cc",
605 "network.h",
Patrik Höglunde2d6a062017-10-05 14:53:33 +0200606 "network_constants.h",
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200607 "networkmonitor.cc",
608 "networkmonitor.h",
Patrik Höglund76df0df2017-12-19 11:50:21 +0100609 "networkroute.h",
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200610 "nullsocketserver.cc",
611 "nullsocketserver.h",
612 "openssl.h",
613 "openssladapter.cc",
614 "openssladapter.h",
615 "openssldigest.cc",
616 "openssldigest.h",
617 "opensslidentity.cc",
618 "opensslidentity.h",
619 "opensslstreamadapter.cc",
620 "opensslstreamadapter.h",
621 "physicalsocketserver.cc",
622 "physicalsocketserver.h",
623 "proxyinfo.cc",
624 "proxyinfo.h",
625 "ratelimiter.cc",
626 "ratelimiter.h",
627 "rtccertificate.cc",
628 "rtccertificate.h",
629 "rtccertificategenerator.cc",
630 "rtccertificategenerator.h",
deadbeef8290ddf2017-07-11 16:56:05 -0700631 "signalthread.cc",
632 "signalthread.h",
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200633 "sigslot.cc",
634 "sigslot.h",
Taylor Brandstettere68b6c92017-10-05 09:13:55 -0700635 "sigslotrepeater.h",
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200636 "socket.h",
637 "socketadapters.cc",
638 "socketadapters.h",
639 "socketaddress.cc",
640 "socketaddress.h",
641 "socketaddresspair.cc",
642 "socketaddresspair.h",
643 "socketfactory.h",
644 "socketserver.h",
645 "socketstream.cc",
646 "socketstream.h",
647 "ssladapter.cc",
648 "ssladapter.h",
649 "sslfingerprint.cc",
650 "sslfingerprint.h",
651 "sslidentity.cc",
652 "sslidentity.h",
653 "sslstreamadapter.cc",
654 "sslstreamadapter.h",
655 "stream.cc",
656 "stream.h",
657 "thread.cc",
658 "thread.h",
Joachim Bauch58daf402017-12-21 22:00:34 +0100659 "zero_memory.cc",
660 "zero_memory.h",
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200661 ]
662
mbonadei310e32b2017-09-07 07:36:28 -0700663 visibility = [
664 ":rtc_base",
665 ":rtc_base_objc",
666 ]
667
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200668 # TODO(henrike): issue 3307, make rtc_base build with the Chromium default
669 # compiler settings.
670 suppressed_configs += [ "//build/config/compiler:chromium_code" ]
671 configs += [ "//build/config/compiler:no_chromium_code" ]
672 if (!is_win) {
673 cflags += [ "-Wno-uninitialized" ]
674 }
675
676 if (build_with_chromium) {
677 if (is_win) {
Mirko Bonadei92ea95e2017-09-15 06:47:31 +0200678 sources += [ "../../webrtc_overrides/rtc_base/win32socketinit.cc" ]
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200679 }
680 include_dirs = [ "../../boringssl/src/include" ]
681 public_configs += [ ":rtc_base_chromium_config" ]
682 } else {
683 configs += [ ":rtc_base_warnings_config" ]
684 sources += [
685 "callback.h",
686 "logsinks.cc",
687 "logsinks.h",
Karl Wiberg65c39222017-11-22 12:25:14 +0100688 "numerics/mathutils.h",
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200689 "optionsfile.cc",
690 "optionsfile.h",
691 "rollingaccumulator.h",
692 "sslroots.h",
693 "transformadapter.cc",
694 "transformadapter.h",
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200695 ]
696
697 if (is_win) {
698 sources += [
699 "win32socketinit.cc",
700 "win32socketinit.h",
701 "win32socketserver.cc",
702 "win32socketserver.h",
703 ]
704 }
705 } # !build_with_chromium
706
707 if (rtc_build_ssl) {
708 deps += [ "//third_party/boringssl" ]
Dan Minor9cdd8762018-01-16 10:40:39 -0500709 } else {
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200710 configs += [ ":external_ssl_library" ]
711 }
712
713 if (is_android) {
714 sources += [
715 "ifaddrs-android.cc",
716 "ifaddrs-android.h",
717 ]
718
719 libs += [
720 "log",
721 "GLESv2",
722 ]
723 }
724
725 if (is_ios || is_mac) {
mbonadei310e32b2017-09-07 07:36:28 -0700726 sources += [ "macifaddrs_converter.cc" ]
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200727 }
728
Joachim Bauch75f18fc2017-12-20 21:25:47 +0100729 if (rtc_use_x11) {
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200730 libs += [
731 "dl",
732 "rt",
733 "Xext",
734 "X11",
735 "Xcomposite",
736 "Xrender",
737 ]
738 }
739
740 if (is_linux) {
741 libs += [
742 "dl",
743 "rt",
744 ]
745 }
746
747 if (is_mac) {
748 sources += [
749 "macutils.cc",
750 "macutils.h",
751 ]
752 libs += [
753 # For ProcessInformationCopyDictionary in unixfilesystem.cc.
754 "ApplicationServices.framework",
755 ]
756 }
757
758 if (is_win) {
759 sources += [
760 "win32.cc",
761 "win32.h",
762 "win32filesystem.cc",
763 "win32filesystem.h",
764 "win32securityerrors.cc",
765 "win32window.cc",
766 "win32window.h",
767 ]
768
769 libs += [
770 "crypt32.lib",
771 "iphlpapi.lib",
772 "secur32.lib",
773 ]
774
775 cflags += [
776 # Suppress warnings about WIN32_LEAN_AND_MEAN.
777 "/wd4005",
778 "/wd4703",
779 ]
780
781 defines += [ "_CRT_NONSTDC_NO_DEPRECATE" ]
782 }
783
784 if (is_posix) {
785 sources += [
786 "ifaddrs_converter.cc",
787 "ifaddrs_converter.h",
788 "unixfilesystem.cc",
789 "unixfilesystem.h",
790 ]
791 }
792
793 if (is_nacl) {
794 deps += [ "//native_client_sdk/src/libraries/nacl_io" ]
795 defines += [ "timezone=_timezone" ]
796 sources -= [ "ifaddrs_converter.cc" ]
797 }
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200798}
799
800rtc_source_set("gtest_prod") {
Per Kjellandera7f2d842018-01-10 15:54:53 +0000801 visibility = [ "*" ]
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200802 sources = [
803 "gtest_prod_util.h",
804 ]
805}
806
807config("rtc_base_tests_utils_exported_config") {
808 defines = [ "GTEST_RELATIVE_PATH" ]
809}
810
811config("rtc_base_tests_utils_warnings_config") {
812 if (is_win && is_clang) {
813 cflags = [
814 # See https://bugs.chromium.org/p/webrtc/issues/detail?id=6270
815 "-Wno-reorder",
816 "-Wno-sign-compare",
817 ]
818 }
819}
820
821rtc_source_set("rtc_base_tests_utils") {
822 testonly = true
823 sources = [
824 # Also use this as a convenient dumping ground for misc files that are
825 # included by multiple targets below.
826 "cpu_time.cc",
827 "cpu_time.h",
828 "fakeclock.cc",
829 "fakeclock.h",
830 "fakenetwork.h",
Steve Anton9de3aac2017-10-24 10:08:26 -0700831 "fakesslidentity.cc",
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200832 "fakesslidentity.h",
833 "firewallsocketserver.cc",
834 "firewallsocketserver.h",
835 "gunit.h",
Niels Möller3c8a5f22017-12-15 16:04:21 +0100836 "httpbase.cc",
837 "httpbase.h",
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200838 "httpserver.cc",
839 "httpserver.h",
840 "md5.cc",
841 "md5.h",
842 "md5digest.cc",
843 "md5digest.h",
844 "memory_usage.cc",
845 "memory_usage.h",
846 "natserver.cc",
847 "natserver.h",
848 "natsocketfactory.cc",
849 "natsocketfactory.h",
850 "nattypes.cc",
851 "nattypes.h",
852 "proxyserver.cc",
853 "proxyserver.h",
Patrik Höglund563934e2017-09-15 09:04:28 +0200854 "refcount.h",
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200855 "sha1.cc",
856 "sha1.h",
857 "sha1digest.cc",
858 "sha1digest.h",
859 "sigslottester.h",
860 "sigslottester.h.pump",
861 "testbase64.h",
862 "testclient.cc",
863 "testclient.h",
Steve Anton9de3aac2017-10-24 10:08:26 -0700864 "testechoserver.cc",
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200865 "testechoserver.h",
Steve Anton9de3aac2017-10-24 10:08:26 -0700866 "testutils.cc",
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200867 "testutils.h",
868 "timedelta.h",
869 "virtualsocketserver.cc",
870 "virtualsocketserver.h",
871 ]
872 configs += [ ":rtc_base_tests_utils_warnings_config" ]
873 public_configs = [ ":rtc_base_tests_utils_exported_config" ]
874 deps = [
Patrik Höglunda8005cf2017-12-13 16:05:42 +0100875 ":checks",
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200876 ":rtc_base",
Patrik Höglund3e113432017-12-15 14:40:10 +0100877 ":stringutils",
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200878 "../test:field_trial",
879 "../test:test_support",
880 ]
881 public_deps = [
882 "//testing/gmock",
883 "//testing/gtest",
884 ]
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200885}
886
887if (rtc_include_tests) {
888 rtc_source_set("rtc_base_tests_main") {
889 testonly = true
890 sources = [
891 "unittest_main.cc",
892 ]
893 public_configs = [ ":rtc_base_tests_utils_exported_config" ]
894 deps = [
895 ":rtc_base",
896 ":rtc_base_approved",
897 ":rtc_base_tests_utils",
898 "../test:field_trial",
899 "../test:test_support",
900 ]
901
902 public_deps = [
903 "//testing/gmock",
904 "//testing/gtest",
905 ]
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200906 }
907
908 rtc_source_set("rtc_base_nonparallel_tests") {
909 testonly = true
910
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200911 sources = [
912 "cpu_time_unittest.cc",
913 "filerotatingstream_unittest.cc",
914 "nullsocketserver_unittest.cc",
915 "physicalsocketserver_unittest.cc",
916 "socket_unittest.cc",
917 "socket_unittest.h",
918 "socketaddress_unittest.cc",
919 ]
920 deps = [
Patrik Höglunda8005cf2017-12-13 16:05:42 +0100921 ":checks",
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200922 ":rtc_base",
923 ":rtc_base_tests_main",
924 ":rtc_base_tests_utils",
925 "../system_wrappers:system_wrappers",
926 "../test:test_support",
927 "//testing/gtest",
928 ]
929 if (is_win) {
930 sources += [ "win32socketserver_unittest.cc" ]
931 }
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200932 }
933
934 rtc_source_set("rtc_base_approved_unittests") {
935 testonly = true
936
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200937 sources = [
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200938 "atomicops_unittest.cc",
939 "base64_unittest.cc",
940 "basictypes_unittest.cc",
941 "bind_unittest.cc",
942 "bitbuffer_unittest.cc",
Alex Narestd0e196b2017-11-22 17:22:35 +0100943 "bitrateallocationstrategy_unittest.cc",
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200944 "buffer_unittest.cc",
945 "bufferqueue_unittest.cc",
946 "bytebuffer_unittest.cc",
947 "byteorder_unittest.cc",
948 "copyonwritebuffer_unittest.cc",
949 "criticalsection_unittest.cc",
950 "event_tracer_unittest.cc",
951 "event_unittest.cc",
952 "file_unittest.cc",
953 "function_view_unittest.cc",
954 "logging_unittest.cc",
955 "md5digest_unittest.cc",
Karl Wiberg65c39222017-11-22 12:25:14 +0100956 "numerics/histogram_percentile_counter_unittest.cc",
957 "numerics/mod_ops_unittest.cc",
958 "numerics/moving_max_counter_unittest.cc",
Karl Wiberge40468b2017-11-22 10:42:26 +0100959 "numerics/safe_compare_unittest.cc",
960 "numerics/safe_minmax_unittest.cc",
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200961 "onetimeevent_unittest.cc",
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200962 "pathutils_unittest.cc",
963 "platform_thread_unittest.cc",
964 "random_unittest.cc",
965 "rate_limiter_unittest.cc",
966 "rate_statistics_unittest.cc",
967 "ratetracker_unittest.cc",
968 "refcountedobject_unittest.cc",
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200969 "string_to_number_unittest.cc",
970 "stringencode_unittest.cc",
971 "stringize_macros_unittest.cc",
972 "stringutils_unittest.cc",
973 "swap_queue_unittest.cc",
974 "thread_annotations_unittest.cc",
975 "thread_checker_unittest.cc",
976 "timestampaligner_unittest.cc",
977 "timeutils_unittest.cc",
978 "virtualsocket_unittest.cc",
979 ]
980 deps = [
Patrik Höglunda8005cf2017-12-13 16:05:42 +0100981 ":checks",
982 ":rate_limiter",
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200983 ":rtc_base",
984 ":rtc_base_approved",
985 ":rtc_base_tests_main",
986 ":rtc_base_tests_utils",
987 ":rtc_task_queue",
Patrik Höglunda8005cf2017-12-13 16:05:42 +0100988 ":safe_compare",
Patrik Höglund3e113432017-12-15 14:40:10 +0100989 ":stringutils",
kwiberg529662a2017-09-04 05:43:17 -0700990 "../api:array_view",
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200991 "../system_wrappers:system_wrappers",
992 "../test:test_support",
993 ]
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200994 }
995
996 rtc_source_set("rtc_task_queue_unittests") {
Per Kjellandera7f2d842018-01-10 15:54:53 +0000997 visibility = [ "*" ]
Henrik Kjellanderc0362762017-06-29 08:03:04 +0200998 testonly = true
999
Henrik Kjellanderc0362762017-06-29 08:03:04 +02001000 sources = [
1001 "task_queue_unittest.cc",
1002 ]
1003 deps = [
mbonadei95c8f652017-08-27 23:40:10 -07001004 ":rtc_base_approved",
Henrik Kjellanderc0362762017-06-29 08:03:04 +02001005 ":rtc_base_tests_main",
1006 ":rtc_base_tests_utils",
1007 ":rtc_task_queue",
1008 "../test:test_support",
1009 ]
Henrik Kjellanderc0362762017-06-29 08:03:04 +02001010 }
1011
1012 rtc_source_set("sequenced_task_checker_unittests") {
1013 testonly = true
1014
Henrik Kjellanderc0362762017-06-29 08:03:04 +02001015 sources = [
1016 "sequenced_task_checker_unittest.cc",
1017 ]
1018 deps = [
Patrik Höglunda8005cf2017-12-13 16:05:42 +01001019 ":checks",
Henrik Kjellanderc0362762017-06-29 08:03:04 +02001020 ":rtc_base_approved",
1021 ":rtc_base_tests_main",
1022 ":rtc_task_queue",
1023 ":sequenced_task_checker",
1024 "../test:test_support",
1025 ]
1026 }
1027
1028 rtc_source_set("weak_ptr_unittests") {
1029 testonly = true
1030
Henrik Kjellanderc0362762017-06-29 08:03:04 +02001031 sources = [
1032 "weak_ptr_unittest.cc",
1033 ]
1034 deps = [
Tommi897e1362017-12-01 18:56:43 +01001035 ":rtc_base_approved_generic",
Henrik Kjellanderc0362762017-06-29 08:03:04 +02001036 ":rtc_base_tests_main",
1037 ":rtc_base_tests_utils",
1038 ":rtc_task_queue",
1039 ":weak_ptr",
1040 "../test:test_support",
1041 ]
1042 }
1043
1044 rtc_source_set("rtc_numerics_unittests") {
1045 testonly = true
1046
Henrik Kjellanderc0362762017-06-29 08:03:04 +02001047 sources = [
1048 "numerics/exp_filter_unittest.cc",
Ilya Nikolaevskiyb9685752017-11-01 14:01:00 +01001049 "numerics/moving_median_filter_unittest.cc",
Henrik Kjellanderc0362762017-06-29 08:03:04 +02001050 "numerics/percentile_filter_unittest.cc",
Bjorn Tereliusa194e582017-10-25 13:07:09 +02001051 "numerics/sequence_number_util_unittest.cc",
Henrik Kjellanderc0362762017-06-29 08:03:04 +02001052 ]
1053 deps = [
1054 ":rtc_base_approved",
1055 ":rtc_base_tests_main",
1056 ":rtc_numerics",
1057 "../test:test_support",
1058 ]
1059 }
1060
1061 config("rtc_base_unittests_config") {
1062 if (is_clang) {
1063 cflags = [ "-Wno-unused-const-variable" ]
1064 }
1065 }
1066 rtc_source_set("rtc_base_unittests") {
1067 testonly = true
1068
Henrik Kjellanderc0362762017-06-29 08:03:04 +02001069 sources = [
1070 "callback_unittest.cc",
1071 "crc32_unittest.cc",
Henrik Kjellanderc0362762017-06-29 08:03:04 +02001072 "helpers_unittest.cc",
1073 "httpbase_unittest.cc",
1074 "httpcommon_unittest.cc",
1075 "httpserver_unittest.cc",
1076 "ipaddress_unittest.cc",
1077 "memory_usage_unittest.cc",
1078 "messagedigest_unittest.cc",
1079 "messagequeue_unittest.cc",
1080 "nat_unittest.cc",
1081 "network_unittest.cc",
1082 "optionsfile_unittest.cc",
1083 "proxy_unittest.cc",
1084 "ptr_util_unittest.cc",
1085 "ratelimiter_unittest.cc",
1086 "rollingaccumulator_unittest.cc",
1087 "rtccertificate_unittest.cc",
1088 "rtccertificategenerator_unittest.cc",
1089 "sha1digest_unittest.cc",
deadbeef8290ddf2017-07-11 16:56:05 -07001090 "signalthread_unittest.cc",
Henrik Kjellanderc0362762017-06-29 08:03:04 +02001091 "sigslot_unittest.cc",
1092 "sigslottester_unittest.cc",
1093 "stream_unittest.cc",
1094 "testclient_unittest.cc",
1095 "thread_unittest.cc",
Joachim Bauch58daf402017-12-21 22:00:34 +01001096 "zero_memory_unittest.cc",
Henrik Kjellanderc0362762017-06-29 08:03:04 +02001097 ]
1098 if (is_win) {
1099 sources += [
1100 "win32_unittest.cc",
1101 "win32window_unittest.cc",
1102 ]
1103 }
Henrik Kjellanderc0362762017-06-29 08:03:04 +02001104 if (is_posix) {
1105 sources += [
Diogo Real1dca9d52017-08-29 12:18:32 -07001106 "openssladapter_unittest.cc",
Henrik Kjellanderc0362762017-06-29 08:03:04 +02001107 "ssladapter_unittest.cc",
1108 "sslidentity_unittest.cc",
1109 "sslstreamadapter_unittest.cc",
1110 ]
1111 }
1112 deps = [
Patrik Höglunda8005cf2017-12-13 16:05:42 +01001113 ":checks",
Henrik Kjellanderc0362762017-06-29 08:03:04 +02001114 ":rtc_base_tests_main",
1115 ":rtc_base_tests_utils",
Patrik Höglund3e113432017-12-15 14:40:10 +01001116 ":stringutils",
Joachim Bauch58daf402017-12-21 22:00:34 +01001117 "../api:array_view",
kwiberg84f6a3f2017-09-05 08:43:13 -07001118 "../api:optional",
Henrik Kjellanderc0362762017-06-29 08:03:04 +02001119 "../test:test_support",
1120 ]
1121 public_deps = [
1122 ":rtc_base",
1123 ]
1124 configs += [ ":rtc_base_unittests_config" ]
Diogo Real1dca9d52017-08-29 12:18:32 -07001125 if (build_with_chromium) {
1126 include_dirs = [ "../../boringssl/src/include" ]
1127 }
1128 if (rtc_build_ssl) {
1129 deps += [ "//third_party/boringssl" ]
1130 } else {
1131 configs += [ ":external_ssl_library" ]
1132 }
Henrik Kjellanderc0362762017-06-29 08:03:04 +02001133 }
1134}
1135
Henrik Kjellander73e21802017-06-20 08:38:58 +02001136if (is_android) {
Mirko Bonadeifbb3b7d2017-11-07 15:36:33 +00001137 rtc_android_library("base_java") {
Henrik Kjellanderc0362762017-06-29 08:03:04 +02001138 java_files = [
1139 "java/src/org/webrtc/ContextUtils.java",
1140 "java/src/org/webrtc/Logging.java",
1141 "java/src/org/webrtc/Size.java",
1142 "java/src/org/webrtc/ThreadUtils.java",
1143 ]
Henrik Kjellander73e21802017-06-20 08:38:58 +02001144 }
1145}