kjellander@webrtc.org | 1227ab8 | 2014-06-23 19:21:07 +0000 | [diff] [blame] | 1 | # 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 | |
mbonadei | 9aa3f0a | 2017-01-24 06:58:22 -0800 | [diff] [blame] | 9 | import("../../webrtc.gni") |
ehmaldonado | 38a2132 | 2016-09-02 04:10:34 -0700 | [diff] [blame] | 10 | |
kjellander@webrtc.org | f21ea91 | 2014-09-28 17:37:22 +0000 | [diff] [blame] | 11 | config("audio_conference_mixer_config") { |
brettw@chromium.org | 519c9e2 | 2014-09-08 22:45:18 +0000 | [diff] [blame] | 12 | visibility = [ ":*" ] # Only targets in this file can depend on this. |
kjellander@webrtc.org | 1227ab8 | 2014-06-23 19:21:07 +0000 | [diff] [blame] | 13 | include_dirs = [ |
Henrik Kjellander | ff761fb | 2015-11-04 08:31:52 +0100 | [diff] [blame] | 14 | "include", |
| 15 | "../include", |
kjellander@webrtc.org | 1227ab8 | 2014-06-23 19:21:07 +0000 | [diff] [blame] | 16 | ] |
| 17 | } |
| 18 | |
kjellander | b62dbbe | 2016-09-23 00:38:52 -0700 | [diff] [blame] | 19 | rtc_static_library("audio_conference_mixer") { |
kjellander@webrtc.org | 1227ab8 | 2014-06-23 19:21:07 +0000 | [diff] [blame] | 20 | sources = [ |
Henrik Kjellander | ff761fb | 2015-11-04 08:31:52 +0100 | [diff] [blame] | 21 | "include/audio_conference_mixer.h", |
| 22 | "include/audio_conference_mixer_defines.h", |
kjellander@webrtc.org | 1227ab8 | 2014-06-23 19:21:07 +0000 | [diff] [blame] | 23 | "source/audio_conference_mixer_impl.cc", |
| 24 | "source/audio_conference_mixer_impl.h", |
| 25 | "source/audio_frame_manipulator.cc", |
| 26 | "source/audio_frame_manipulator.h", |
kjellander@webrtc.org | 1227ab8 | 2014-06-23 19:21:07 +0000 | [diff] [blame] | 27 | "source/memory_pool.h", |
| 28 | "source/memory_pool_posix.h", |
| 29 | "source/memory_pool_win.h", |
| 30 | "source/time_scheduler.cc", |
| 31 | "source/time_scheduler.h", |
| 32 | ] |
| 33 | |
ehmaldonado | e9cc686 | 2016-09-05 06:10:18 -0700 | [diff] [blame] | 34 | public_configs = [ ":audio_conference_mixer_config" ] |
kjellander@webrtc.org | 1227ab8 | 2014-06-23 19:21:07 +0000 | [diff] [blame] | 35 | |
kjellander | e40a7ee | 2016-10-16 23:56:12 -0700 | [diff] [blame] | 36 | if (!build_with_chromium && is_clang) { |
| 37 | # Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163). |
ehmaldonado | 38a2132 | 2016-09-02 04:10:34 -0700 | [diff] [blame] | 38 | suppressed_configs += [ "//build/config/clang:find_bad_constructs" ] |
kjellander@webrtc.org | 42ee5b5 | 2014-08-25 14:15:35 +0000 | [diff] [blame] | 39 | } |
| 40 | |
kjellander@webrtc.org | 1227ab8 | 2014-06-23 19:21:07 +0000 | [diff] [blame] | 41 | deps = [ |
mbonadei | 1140f97 | 2017-04-26 03:38:35 -0700 | [diff] [blame] | 42 | "..:module_api", |
mbonadei | 000d163 | 2016-12-22 06:56:21 -0800 | [diff] [blame] | 43 | "../..:webrtc_common", |
aleloi | 6321b49 | 2016-12-05 01:46:09 -0800 | [diff] [blame] | 44 | "../../audio/utility:audio_frame_operations", |
ehmaldonado | f6a861a | 2017-07-19 10:40:47 -0700 | [diff] [blame] | 45 | "../../rtc_base:rtc_base_approved", |
kjellander@webrtc.org | 1227ab8 | 2014-06-23 19:21:07 +0000 | [diff] [blame] | 46 | "../../system_wrappers", |
| 47 | "../audio_processing", |
kjellander@webrtc.org | 1227ab8 | 2014-06-23 19:21:07 +0000 | [diff] [blame] | 48 | ] |
| 49 | } |
ehmaldonado | 3626865 | 2017-01-19 08:27:11 -0800 | [diff] [blame] | 50 | |
| 51 | if (rtc_include_tests) { |
| 52 | rtc_source_set("audio_conference_mixer_unittests") { |
| 53 | testonly = true |
kjellander | e0629c0 | 2017-04-25 04:04:50 -0700 | [diff] [blame] | 54 | |
| 55 | # Skip restricting visibility on mobile platforms since the tests on those |
| 56 | # gets additional generated targets which would require many lines here to |
| 57 | # cover (which would be confusing to read and hard to maintain). |
| 58 | if (!is_android && !is_ios) { |
jianjun.zhu | c024740 | 2017-07-11 06:20:45 -0700 | [diff] [blame] | 59 | visibility = [ "..:modules_unittests" ] |
kjellander | e0629c0 | 2017-04-25 04:04:50 -0700 | [diff] [blame] | 60 | } |
ehmaldonado | 3626865 | 2017-01-19 08:27:11 -0800 | [diff] [blame] | 61 | sources = [ |
| 62 | "test/audio_conference_mixer_unittest.cc", |
| 63 | ] |
| 64 | deps = [ |
| 65 | ":audio_conference_mixer", |
| 66 | "../../test:test_support", |
| 67 | "//testing/gmock", |
| 68 | ] |
ehmaldonado | 9410b51 | 2017-01-19 11:57:56 -0800 | [diff] [blame] | 69 | if (is_win) { |
| 70 | cflags = [ |
| 71 | # TODO(kjellander): bugs.webrtc.org/261: Fix this warning. |
| 72 | "/wd4373", # virtual function override. |
| 73 | ] |
| 74 | } |
ehmaldonado | 3626865 | 2017-01-19 08:27:11 -0800 | [diff] [blame] | 75 | if (!build_with_chromium && is_clang) { |
| 76 | # Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163). |
| 77 | suppressed_configs += [ "//build/config/clang:find_bad_constructs" ] |
| 78 | } |
| 79 | } |
| 80 | } |