blob: 27e5c37aab7863668dbe24e58643a3f34cb7d566 [file] [log] [blame]
andrew@webrtc.orgf589dfe2012-03-27 17:05:44 +00001# Copyright (c) 2012 The WebRTC project authors. All Rights Reserved.
niklase@google.com470e71d2011-07-07 08:21:25 +00002#
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
9{
niklase@google.com470e71d2011-07-07 08:21:25 +000010 'targets': [
11 {
12 'target_name': 'NetEq',
wjia@webrtc.orga3c82bf2013-01-18 23:42:21 +000013 'type': 'static_library',
niklase@google.com470e71d2011-07-07 08:21:25 +000014 'dependencies': [
xians@google.comd3185fe2011-09-12 12:24:39 +000015 'CNG',
andrew@webrtc.org34235372013-04-30 23:43:26 +000016 '<(webrtc_root)/common_audio/common_audio.gyp:common_audio',
niklase@google.com470e71d2011-07-07 08:21:25 +000017 ],
18 'defines': [
xians@google.comd3185fe2011-09-12 12:24:39 +000019 'NETEQ_VOICEENGINE_CODECS', # TODO: Should create a Chrome define which
20 'SCRATCH', # specifies a subset of codecs to support.
niklase@google.com470e71d2011-07-07 08:21:25 +000021 ],
22 'include_dirs': [
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +000023 'interface',
pbos@webrtc.org57eb8582013-11-11 10:20:27 +000024 '<(webrtc_root)',
niklase@google.com470e71d2011-07-07 08:21:25 +000025 ],
26 'direct_dependent_settings': {
27 'include_dirs': [
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +000028 'interface',
pbos@webrtc.org57eb8582013-11-11 10:20:27 +000029 '<(webrtc_root)',
niklase@google.com470e71d2011-07-07 08:21:25 +000030 ],
31 },
32 'sources': [
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +000033 'interface/webrtc_neteq.h',
34 'interface/webrtc_neteq_help_macros.h',
35 'interface/webrtc_neteq_internal.h',
niklase@google.com470e71d2011-07-07 08:21:25 +000036 'accelerate.c',
37 'automode.c',
38 'automode.h',
39 'bgn_update.c',
40 'buffer_stats.h',
41 'bufstats_decision.c',
42 'cng_internal.c',
43 'codec_db.c',
44 'codec_db.h',
45 'codec_db_defines.h',
46 'correlator.c',
47 'delay_logging.h',
48 'dsp.c',
49 'dsp.h',
50 'dsp_helpfunctions.c',
51 'dsp_helpfunctions.h',
52 'dtmf_buffer.c',
53 'dtmf_buffer.h',
54 'dtmf_tonegen.c',
55 'dtmf_tonegen.h',
56 'expand.c',
57 'mcu.h',
58 'mcu_address_init.c',
59 'mcu_dsp_common.c',
60 'mcu_dsp_common.h',
61 'mcu_reset.c',
62 'merge.c',
63 'min_distortion.c',
64 'mix_voice_unvoice.c',
65 'mute_signal.c',
66 'neteq_defines.h',
67 'neteq_error_codes.h',
68 'neteq_statistics.h',
69 'normal.c',
70 'packet_buffer.c',
71 'packet_buffer.h',
72 'peak_detection.c',
73 'preemptive_expand.c',
74 'random_vector.c',
75 'recin.c',
76 'recout.c',
77 'rtcp.c',
78 'rtcp.h',
79 'rtp.c',
80 'rtp.h',
81 'set_fs.c',
82 'signal_mcu.c',
83 'split_and_insert.c',
84 'unmute_signal.c',
85 'webrtc_neteq.c',
86 ],
87 },
xians@google.comf67f1972011-08-08 12:56:26 +000088 ], # targets
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +000089 'conditions': [
mflodman@webrtc.org6af95942012-05-24 13:23:35 +000090 ['include_tests==1', {
xians@google.comf67f1972011-08-08 12:56:26 +000091 'targets': [
92 {
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +000093 'target_name': 'neteq_unittests',
henrike@webrtc.org89c67402013-08-02 16:53:47 +000094 'type': '<(gtest_target_type)',
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +000095 'dependencies': [
96 'NetEq',
97 'NetEqTestTools',
turaj@webrtc.org6388c3e2013-02-12 21:42:18 +000098 'neteq_unittest_tools',
andrew@webrtc.org81cf5e42012-06-27 01:41:54 +000099 '<(DEPTH)/testing/gtest.gyp:gtest',
100 '<(webrtc_root)/test/test.gyp:test_support_main',
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +0000101 ],
102 'sources': [
henrik.lundin@webrtc.org0fcc2eb2011-11-25 13:43:42 +0000103 'webrtc_neteq_unittest.cc',
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +0000104 ],
kjellander@webrtc.orgfa53d872013-02-04 10:07:17 +0000105 # Disable warnings to enable Win64 build, issue 1323.
106 'msvs_disabled_warnings': [
107 4267, # size_t to int truncation.
108 ],
henrike@webrtc.org89c67402013-08-02 16:53:47 +0000109 'conditions': [
110 # TODO(henrike): remove build_with_chromium==1 when the bots are
111 # using Chromium's buildbots.
112 ['build_with_chromium==1 and OS=="android" and gtest_target_type=="shared_library"', {
113 'dependencies': [
114 '<(DEPTH)/testing/android/native_test.gyp:native_test_native_code',
115 ],
116 }],
117 ],
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +0000118 }, # neteq_unittests
119 {
xians@google.comf67f1972011-08-08 12:56:26 +0000120 'target_name': 'NetEqRTPplay',
121 'type': 'executable',
122 'dependencies': [
andrew@webrtc.orgf589dfe2012-03-27 17:05:44 +0000123 'NetEq', # NetEQ library defined above
124 'NetEqTestTools', # Test helpers
xians@google.comd3185fe2011-09-12 12:24:39 +0000125 'G711',
126 'G722',
127 'PCM16B',
128 'iLBC',
129 'iSAC',
130 'CNG',
niklase@google.com470e71d2011-07-07 08:21:25 +0000131 ],
xians@google.comf67f1972011-08-08 12:56:26 +0000132 'defines': [
133 # TODO: Make codec selection conditional on definitions in target NetEq
134 'CODEC_ILBC',
135 'CODEC_PCM16B',
136 'CODEC_G711',
137 'CODEC_G722',
138 'CODEC_ISAC',
139 'CODEC_PCM16B_WB',
140 'CODEC_ISAC_SWB',
turaj@webrtc.orgb0dff122012-12-03 17:43:52 +0000141 'CODEC_ISAC_FB',
xians@google.comf67f1972011-08-08 12:56:26 +0000142 'CODEC_PCM16B_32KHZ',
143 'CODEC_CNGCODEC8',
144 'CODEC_CNGCODEC16',
145 'CODEC_CNGCODEC32',
146 'CODEC_ATEVENT_DECODE',
147 'CODEC_RED',
148 ],
149 'include_dirs': [
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +0000150 '.',
151 'test',
xians@google.comf67f1972011-08-08 12:56:26 +0000152 ],
153 'sources': [
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +0000154 'test/NetEqRTPplay.cc',
xians@google.comf67f1972011-08-08 12:56:26 +0000155 ],
kjellander@webrtc.orgfa53d872013-02-04 10:07:17 +0000156 # Disable warnings to enable Win64 build, issue 1323.
157 'msvs_disabled_warnings': [
158 4267, # size_t to int truncation.
159 ],
xians@google.comf67f1972011-08-08 12:56:26 +0000160 },
henrik.lundin@webrtc.orgd94659d2013-01-29 12:09:21 +0000161
andrew@webrtc.orgf589dfe2012-03-27 17:05:44 +0000162 {
henrik.lundin@webrtc.org5a433702013-09-18 20:58:33 +0000163 'target_name': 'neteq3_speed_test',
164 'type': 'executable',
165 'dependencies': [
166 'NetEq',
167 'PCM16B',
168 'neteq_unittest_tools',
169 '<(DEPTH)/third_party/gflags/gflags.gyp:gflags',
170 ],
171 'sources': [
172 'test/neteq_speed_test.cc',
173 ],
174 },
175
176 {
xians@google.comf67f1972011-08-08 12:56:26 +0000177 'target_name': 'NetEqTestTools',
178 # Collection of useful functions used in other tests
wjia@webrtc.orga3c82bf2013-01-18 23:42:21 +0000179 'type': 'static_library',
andrew@webrtc.orgf589dfe2012-03-27 17:05:44 +0000180 'variables': {
181 # Expects RTP packets without payloads when enabled.
182 'neteq_dummy_rtp%': 0,
183 },
xians@google.comf67f1972011-08-08 12:56:26 +0000184 'dependencies': [
xians@google.comd3185fe2011-09-12 12:24:39 +0000185 'G711',
186 'G722',
187 'PCM16B',
188 'iLBC',
189 'iSAC',
190 'CNG',
andrew@webrtc.org81cf5e42012-06-27 01:41:54 +0000191 '<(DEPTH)/testing/gtest.gyp:gtest',
xians@google.comf67f1972011-08-08 12:56:26 +0000192 ],
193 'direct_dependent_settings': {
194 'include_dirs': [
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +0000195 'interface',
196 'test',
xians@google.comf67f1972011-08-08 12:56:26 +0000197 ],
198 },
199 'defines': [
200 # TODO: Make codec selection conditional on definitions in target NetEq
201 'CODEC_ILBC',
202 'CODEC_PCM16B',
203 'CODEC_G711',
204 'CODEC_G722',
205 'CODEC_ISAC',
206 'CODEC_PCM16B_WB',
207 'CODEC_ISAC_SWB',
turaj@webrtc.orgb0dff122012-12-03 17:43:52 +0000208 'CODEC_ISAC_FB',
xians@google.comf67f1972011-08-08 12:56:26 +0000209 'CODEC_PCM16B_32KHZ',
210 'CODEC_CNGCODEC8',
211 'CODEC_CNGCODEC16',
212 'CODEC_CNGCODEC32',
213 'CODEC_ATEVENT_DECODE',
214 'CODEC_RED',
215 ],
216 'include_dirs': [
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +0000217 'interface',
218 'test',
xians@google.comf67f1972011-08-08 12:56:26 +0000219 ],
220 'sources': [
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +0000221 'test/NETEQTEST_CodecClass.cc',
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +0000222 'test/NETEQTEST_CodecClass.h',
andrew@webrtc.orgf589dfe2012-03-27 17:05:44 +0000223 'test/NETEQTEST_DummyRTPpacket.cc',
224 'test/NETEQTEST_DummyRTPpacket.h',
225 'test/NETEQTEST_NetEQClass.cc',
226 'test/NETEQTEST_NetEQClass.h',
227 'test/NETEQTEST_RTPpacket.cc',
228 'test/NETEQTEST_RTPpacket.h',
xians@google.comf67f1972011-08-08 12:56:26 +0000229 ],
kjellander@webrtc.orgfa53d872013-02-04 10:07:17 +0000230 # Disable warnings to enable Win64 build, issue 1323.
231 'msvs_disabled_warnings': [
232 4267, # size_t to int truncation.
233 ],
xians@google.comf67f1972011-08-08 12:56:26 +0000234 },
235 ], # targets
henrike@webrtc.org89c67402013-08-02 16:53:47 +0000236 'conditions': [
237 # TODO(henrike): remove build_with_chromium==1 when the bots are using
238 # Chromium's buildbots.
239 ['build_with_chromium==1 and OS=="android" and gtest_target_type=="shared_library"', {
240 'targets': [
241 {
242 'target_name': 'neteq_unittests_apk_target',
243 'type': 'none',
244 'dependencies': [
245 '<(apk_tests_path):neteq_unittests_apk',
246 ],
247 },
248 ],
249 }],
kjellander@webrtc.org33654222013-08-22 07:57:00 +0000250 ['test_isolation_mode != "noop"', {
251 'targets': [
252 {
253 'target_name': 'neteq_unittests_run',
254 'type': 'none',
255 'dependencies': [
kjellander@webrtc.org33654222013-08-22 07:57:00 +0000256 'neteq_unittests',
257 ],
258 'includes': [
kjellander@webrtc.org2a973172013-10-02 19:31:16 +0000259 '../../../build/isolate.gypi',
kjellander@webrtc.org33654222013-08-22 07:57:00 +0000260 'neteq_unittests.isolate',
261 ],
262 'sources': [
263 'neteq_unittests.isolate',
264 ],
265 },
266 ],
267 }],
henrike@webrtc.org89c67402013-08-02 16:53:47 +0000268 ],
mflodman@webrtc.org6af95942012-05-24 13:23:35 +0000269 }], # include_tests
xians@google.comf67f1972011-08-08 12:56:26 +0000270 ], # conditions
niklase@google.com470e71d2011-07-07 08:21:25 +0000271}