blob: 29ff042954b2ac4bdeac0fe4d6fef28831909322 [file] [log] [blame]
kjellander@webrtc.org1227ab82014-06-23 19:21:07 +00001# Copyright (c) 2014 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
mbonadei9aa3f0a2017-01-24 06:58:22 -08009import("../../webrtc.gni")
kjellander@webrtc.org1227ab82014-06-23 19:21:07 +000010
kjellanderb62dbbe2016-09-23 00:38:52 -070011rtc_static_library("utility") {
kjellander@webrtc.org1227ab82014-06-23 19:21:07 +000012 sources = [
Henrik Kjellanderff761fb2015-11-04 08:31:52 +010013 "include/audio_frame_operations.h",
solenberg71b9b582016-11-25 11:45:05 -080014 "include/helpers_android.h",
15 "include/jvm_android.h",
Henrik Kjellanderff761fb2015-11-04 08:31:52 +010016 "include/process_thread.h",
solenberg71b9b582016-11-25 11:45:05 -080017 "source/helpers_android.cc",
18 "source/jvm_android.cc",
kjellander@webrtc.org1227ab82014-06-23 19:21:07 +000019 "source/process_thread_impl.cc",
20 "source/process_thread_impl.h",
kjellander@webrtc.org1227ab82014-06-23 19:21:07 +000021 ]
22
kjellandere40a7ee2016-10-16 23:56:12 -070023 if (!build_with_chromium && is_clang) {
24 # Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163).
ehmaldonado38a21322016-09-02 04:10:34 -070025 suppressed_configs += [ "//build/config/clang:find_bad_constructs" ]
kjellander@webrtc.org42ee5b52014-08-25 14:15:35 +000026 }
27
kjellander94cee312016-06-10 01:56:57 -070028 if (is_ios) {
29 libs = [ "AVFoundation.framework" ]
30 }
31
kjellander@webrtc.org1227ab82014-06-23 19:21:07 +000032 deps = [
mbonadei1140f972017-04-26 03:38:35 -070033 "..:module_api",
kwiberg@webrtc.orgac2d27d2015-02-26 13:59:22 +000034 "../..:webrtc_common",
aleloi6321b492016-12-05 01:46:09 -080035 "../../audio/utility:audio_frame_operations",
kjellander@webrtc.org1227ab82014-06-23 19:21:07 +000036 "../../common_audio",
ehmaldonadof6a861a2017-07-19 10:40:47 -070037 "../../rtc_base:rtc_task_queue",
kjellander@webrtc.org1227ab82014-06-23 19:21:07 +000038 "../../system_wrappers",
kjellander@webrtc.org1227ab82014-06-23 19:21:07 +000039 "../media_file",
40 ]
kjellander@webrtc.org1227ab82014-06-23 19:21:07 +000041}
ehmaldonado36268652017-01-19 08:27:11 -080042
mbonadei5166e542017-08-03 05:57:11 -070043rtc_source_set("mock_process_thread") {
44 testonly = true
45 sources = [
46 "include/mock/mock_process_thread.h",
47 ]
48 deps = [
49 ":utility",
50 "../../rtc_base:rtc_base_approved",
51 "../../test:test_support",
52 ]
53}
54
ehmaldonado36268652017-01-19 08:27:11 -080055if (rtc_include_tests) {
56 rtc_source_set("utility_unittests") {
57 testonly = true
kjellandere0629c02017-04-25 04:04:50 -070058
59 # Skip restricting visibility on mobile platforms since the tests on those
60 # gets additional generated targets which would require many lines here to
61 # cover (which would be confusing to read and hard to maintain).
62 if (!is_android && !is_ios) {
jianjun.zhuc0247402017-07-11 06:20:45 -070063 visibility = [ "..:modules_unittests" ]
kjellandere0629c02017-04-25 04:04:50 -070064 }
ehmaldonado36268652017-01-19 08:27:11 -080065 sources = [
66 "source/process_thread_impl_unittest.cc",
67 ]
68 deps = [
69 ":utility",
mbonadei1140f972017-04-26 03:38:35 -070070 "..:module_api",
ehmaldonadof6a861a2017-07-19 10:40:47 -070071 "../../rtc_base:rtc_task_queue",
ehmaldonado36268652017-01-19 08:27:11 -080072 "../../test:test_support",
73 "//testing/gmock",
74 ]
75 }
76}