blob: 31297ffe6cad242d1202ea19628596ff4f3d8733 [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',
niklase@google.com470e71d2011-07-07 08:21:25 +000024 ],
25 'direct_dependent_settings': {
26 'include_dirs': [
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +000027 'interface',
niklase@google.com470e71d2011-07-07 08:21:25 +000028 ],
29 },
30 'sources': [
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +000031 'interface/webrtc_neteq.h',
32 'interface/webrtc_neteq_help_macros.h',
33 'interface/webrtc_neteq_internal.h',
niklase@google.com470e71d2011-07-07 08:21:25 +000034 'accelerate.c',
35 'automode.c',
36 'automode.h',
37 'bgn_update.c',
38 'buffer_stats.h',
39 'bufstats_decision.c',
40 'cng_internal.c',
41 'codec_db.c',
42 'codec_db.h',
43 'codec_db_defines.h',
44 'correlator.c',
45 'delay_logging.h',
46 'dsp.c',
47 'dsp.h',
48 'dsp_helpfunctions.c',
49 'dsp_helpfunctions.h',
50 'dtmf_buffer.c',
51 'dtmf_buffer.h',
52 'dtmf_tonegen.c',
53 'dtmf_tonegen.h',
54 'expand.c',
55 'mcu.h',
56 'mcu_address_init.c',
57 'mcu_dsp_common.c',
58 'mcu_dsp_common.h',
59 'mcu_reset.c',
60 'merge.c',
61 'min_distortion.c',
62 'mix_voice_unvoice.c',
63 'mute_signal.c',
64 'neteq_defines.h',
65 'neteq_error_codes.h',
66 'neteq_statistics.h',
67 'normal.c',
68 'packet_buffer.c',
69 'packet_buffer.h',
70 'peak_detection.c',
71 'preemptive_expand.c',
72 'random_vector.c',
73 'recin.c',
74 'recout.c',
75 'rtcp.c',
76 'rtcp.h',
77 'rtp.c',
78 'rtp.h',
79 'set_fs.c',
80 'signal_mcu.c',
81 'split_and_insert.c',
82 'unmute_signal.c',
83 'webrtc_neteq.c',
84 ],
85 },
xians@google.comf67f1972011-08-08 12:56:26 +000086 ], # targets
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +000087 'conditions': [
mflodman@webrtc.org6af95942012-05-24 13:23:35 +000088 ['include_tests==1', {
xians@google.comf67f1972011-08-08 12:56:26 +000089 'targets': [
90 {
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +000091 'target_name': 'neteq_unittests',
henrike@webrtc.org89c67402013-08-02 16:53:47 +000092 'type': '<(gtest_target_type)',
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +000093 'dependencies': [
94 'NetEq',
95 'NetEqTestTools',
turaj@webrtc.org6388c3e2013-02-12 21:42:18 +000096 'neteq_unittest_tools',
andrew@webrtc.org81cf5e42012-06-27 01:41:54 +000097 '<(DEPTH)/testing/gtest.gyp:gtest',
98 '<(webrtc_root)/test/test.gyp:test_support_main',
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +000099 ],
100 'sources': [
henrik.lundin@webrtc.org0fcc2eb2011-11-25 13:43:42 +0000101 'webrtc_neteq_unittest.cc',
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +0000102 ],
kjellander@webrtc.orgfa53d872013-02-04 10:07:17 +0000103 # Disable warnings to enable Win64 build, issue 1323.
104 'msvs_disabled_warnings': [
105 4267, # size_t to int truncation.
106 ],
henrike@webrtc.org89c67402013-08-02 16:53:47 +0000107 'conditions': [
108 # TODO(henrike): remove build_with_chromium==1 when the bots are
109 # using Chromium's buildbots.
110 ['build_with_chromium==1 and OS=="android" and gtest_target_type=="shared_library"', {
111 'dependencies': [
112 '<(DEPTH)/testing/android/native_test.gyp:native_test_native_code',
113 ],
114 }],
115 ],
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +0000116 }, # neteq_unittests
117 {
xians@google.comf67f1972011-08-08 12:56:26 +0000118 'target_name': 'NetEqRTPplay',
119 'type': 'executable',
120 'dependencies': [
andrew@webrtc.orgf589dfe2012-03-27 17:05:44 +0000121 'NetEq', # NetEQ library defined above
122 'NetEqTestTools', # Test helpers
xians@google.comd3185fe2011-09-12 12:24:39 +0000123 'G711',
124 'G722',
125 'PCM16B',
126 'iLBC',
127 'iSAC',
128 'CNG',
niklase@google.com470e71d2011-07-07 08:21:25 +0000129 ],
xians@google.comf67f1972011-08-08 12:56:26 +0000130 'defines': [
131 # TODO: Make codec selection conditional on definitions in target NetEq
132 'CODEC_ILBC',
133 'CODEC_PCM16B',
134 'CODEC_G711',
135 'CODEC_G722',
136 'CODEC_ISAC',
137 'CODEC_PCM16B_WB',
138 'CODEC_ISAC_SWB',
turaj@webrtc.orgb0dff122012-12-03 17:43:52 +0000139 'CODEC_ISAC_FB',
xians@google.comf67f1972011-08-08 12:56:26 +0000140 'CODEC_PCM16B_32KHZ',
141 'CODEC_CNGCODEC8',
142 'CODEC_CNGCODEC16',
143 'CODEC_CNGCODEC32',
144 'CODEC_ATEVENT_DECODE',
145 'CODEC_RED',
146 ],
147 'include_dirs': [
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +0000148 '.',
149 'test',
xians@google.comf67f1972011-08-08 12:56:26 +0000150 ],
151 'sources': [
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +0000152 'test/NetEqRTPplay.cc',
xians@google.comf67f1972011-08-08 12:56:26 +0000153 ],
kjellander@webrtc.orgfa53d872013-02-04 10:07:17 +0000154 # Disable warnings to enable Win64 build, issue 1323.
155 'msvs_disabled_warnings': [
156 4267, # size_t to int truncation.
157 ],
xians@google.comf67f1972011-08-08 12:56:26 +0000158 },
henrik.lundin@webrtc.orgd94659d2013-01-29 12:09:21 +0000159
andrew@webrtc.orgf589dfe2012-03-27 17:05:44 +0000160 {
henrik.lundin@webrtc.org5a433702013-09-18 20:58:33 +0000161 'target_name': 'neteq3_speed_test',
162 'type': 'executable',
163 'dependencies': [
164 'NetEq',
165 'PCM16B',
166 'neteq_unittest_tools',
167 '<(DEPTH)/third_party/gflags/gflags.gyp:gflags',
168 ],
169 'sources': [
170 'test/neteq_speed_test.cc',
171 ],
172 },
173
174 {
xians@google.comf67f1972011-08-08 12:56:26 +0000175 'target_name': 'NetEqTestTools',
176 # Collection of useful functions used in other tests
wjia@webrtc.orga3c82bf2013-01-18 23:42:21 +0000177 'type': 'static_library',
andrew@webrtc.orgf589dfe2012-03-27 17:05:44 +0000178 'variables': {
179 # Expects RTP packets without payloads when enabled.
180 'neteq_dummy_rtp%': 0,
181 },
xians@google.comf67f1972011-08-08 12:56:26 +0000182 'dependencies': [
xians@google.comd3185fe2011-09-12 12:24:39 +0000183 'G711',
184 'G722',
185 'PCM16B',
186 'iLBC',
187 'iSAC',
188 'CNG',
andrew@webrtc.org81cf5e42012-06-27 01:41:54 +0000189 '<(DEPTH)/testing/gtest.gyp:gtest',
xians@google.comf67f1972011-08-08 12:56:26 +0000190 ],
191 'direct_dependent_settings': {
192 'include_dirs': [
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +0000193 'interface',
194 'test',
xians@google.comf67f1972011-08-08 12:56:26 +0000195 ],
196 },
197 'defines': [
198 # TODO: Make codec selection conditional on definitions in target NetEq
199 'CODEC_ILBC',
200 'CODEC_PCM16B',
201 'CODEC_G711',
202 'CODEC_G722',
203 'CODEC_ISAC',
204 'CODEC_PCM16B_WB',
205 'CODEC_ISAC_SWB',
turaj@webrtc.orgb0dff122012-12-03 17:43:52 +0000206 'CODEC_ISAC_FB',
xians@google.comf67f1972011-08-08 12:56:26 +0000207 'CODEC_PCM16B_32KHZ',
208 'CODEC_CNGCODEC8',
209 'CODEC_CNGCODEC16',
210 'CODEC_CNGCODEC32',
211 'CODEC_ATEVENT_DECODE',
212 'CODEC_RED',
213 ],
214 'include_dirs': [
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +0000215 'interface',
216 'test',
xians@google.comf67f1972011-08-08 12:56:26 +0000217 ],
218 'sources': [
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +0000219 'test/NETEQTEST_CodecClass.cc',
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +0000220 'test/NETEQTEST_CodecClass.h',
andrew@webrtc.orgf589dfe2012-03-27 17:05:44 +0000221 'test/NETEQTEST_DummyRTPpacket.cc',
222 'test/NETEQTEST_DummyRTPpacket.h',
223 'test/NETEQTEST_NetEQClass.cc',
224 'test/NETEQTEST_NetEQClass.h',
225 'test/NETEQTEST_RTPpacket.cc',
226 'test/NETEQTEST_RTPpacket.h',
xians@google.comf67f1972011-08-08 12:56:26 +0000227 ],
kjellander@webrtc.orgfa53d872013-02-04 10:07:17 +0000228 # Disable warnings to enable Win64 build, issue 1323.
229 'msvs_disabled_warnings': [
230 4267, # size_t to int truncation.
231 ],
xians@google.comf67f1972011-08-08 12:56:26 +0000232 },
233 ], # targets
henrike@webrtc.org89c67402013-08-02 16:53:47 +0000234 'conditions': [
235 # TODO(henrike): remove build_with_chromium==1 when the bots are using
236 # Chromium's buildbots.
237 ['build_with_chromium==1 and OS=="android" and gtest_target_type=="shared_library"', {
238 'targets': [
239 {
240 'target_name': 'neteq_unittests_apk_target',
241 'type': 'none',
242 'dependencies': [
243 '<(apk_tests_path):neteq_unittests_apk',
244 ],
245 },
246 ],
247 }],
kjellander@webrtc.org33654222013-08-22 07:57:00 +0000248 ['test_isolation_mode != "noop"', {
249 'targets': [
250 {
251 'target_name': 'neteq_unittests_run',
252 'type': 'none',
253 'dependencies': [
254 '<(import_isolate_path):import_isolate_gypi',
255 'neteq_unittests',
256 ],
257 'includes': [
258 'neteq_unittests.isolate',
259 ],
260 'sources': [
261 'neteq_unittests.isolate',
262 ],
263 },
264 ],
265 }],
henrike@webrtc.org89c67402013-08-02 16:53:47 +0000266 ],
mflodman@webrtc.org6af95942012-05-24 13:23:35 +0000267 }], # include_tests
xians@google.comf67f1972011-08-08 12:56:26 +0000268 ], # conditions
niklase@google.com470e71d2011-07-07 08:21:25 +0000269}