blob: c94f7f89628513835759c3bd7d18c69048bb095f [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 {
xians@google.comf67f1972011-08-08 12:56:26 +0000161 'target_name': 'NetEqTestTools',
162 # Collection of useful functions used in other tests
wjia@webrtc.orga3c82bf2013-01-18 23:42:21 +0000163 'type': 'static_library',
andrew@webrtc.orgf589dfe2012-03-27 17:05:44 +0000164 'variables': {
165 # Expects RTP packets without payloads when enabled.
166 'neteq_dummy_rtp%': 0,
167 },
xians@google.comf67f1972011-08-08 12:56:26 +0000168 'dependencies': [
xians@google.comd3185fe2011-09-12 12:24:39 +0000169 'G711',
170 'G722',
171 'PCM16B',
172 'iLBC',
173 'iSAC',
174 'CNG',
andrew@webrtc.org81cf5e42012-06-27 01:41:54 +0000175 '<(DEPTH)/testing/gtest.gyp:gtest',
xians@google.comf67f1972011-08-08 12:56:26 +0000176 ],
177 'direct_dependent_settings': {
178 'include_dirs': [
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +0000179 'interface',
180 'test',
xians@google.comf67f1972011-08-08 12:56:26 +0000181 ],
182 },
183 'defines': [
184 # TODO: Make codec selection conditional on definitions in target NetEq
185 'CODEC_ILBC',
186 'CODEC_PCM16B',
187 'CODEC_G711',
188 'CODEC_G722',
189 'CODEC_ISAC',
190 'CODEC_PCM16B_WB',
191 'CODEC_ISAC_SWB',
turaj@webrtc.orgb0dff122012-12-03 17:43:52 +0000192 'CODEC_ISAC_FB',
xians@google.comf67f1972011-08-08 12:56:26 +0000193 'CODEC_PCM16B_32KHZ',
194 'CODEC_CNGCODEC8',
195 'CODEC_CNGCODEC16',
196 'CODEC_CNGCODEC32',
197 'CODEC_ATEVENT_DECODE',
198 'CODEC_RED',
199 ],
200 'include_dirs': [
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +0000201 'interface',
202 'test',
xians@google.comf67f1972011-08-08 12:56:26 +0000203 ],
204 'sources': [
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +0000205 'test/NETEQTEST_CodecClass.cc',
kjellander@webrtc.orgbf483842011-11-07 16:05:19 +0000206 'test/NETEQTEST_CodecClass.h',
andrew@webrtc.orgf589dfe2012-03-27 17:05:44 +0000207 'test/NETEQTEST_DummyRTPpacket.cc',
208 'test/NETEQTEST_DummyRTPpacket.h',
209 'test/NETEQTEST_NetEQClass.cc',
210 'test/NETEQTEST_NetEQClass.h',
211 'test/NETEQTEST_RTPpacket.cc',
212 'test/NETEQTEST_RTPpacket.h',
xians@google.comf67f1972011-08-08 12:56:26 +0000213 ],
kjellander@webrtc.orgfa53d872013-02-04 10:07:17 +0000214 # Disable warnings to enable Win64 build, issue 1323.
215 'msvs_disabled_warnings': [
216 4267, # size_t to int truncation.
217 ],
xians@google.comf67f1972011-08-08 12:56:26 +0000218 },
219 ], # targets
henrike@webrtc.org89c67402013-08-02 16:53:47 +0000220 'conditions': [
221 # TODO(henrike): remove build_with_chromium==1 when the bots are using
222 # Chromium's buildbots.
223 ['build_with_chromium==1 and OS=="android" and gtest_target_type=="shared_library"', {
224 'targets': [
225 {
226 'target_name': 'neteq_unittests_apk_target',
227 'type': 'none',
228 'dependencies': [
229 '<(apk_tests_path):neteq_unittests_apk',
230 ],
231 },
232 ],
233 }],
kjellander@webrtc.org33654222013-08-22 07:57:00 +0000234 ['test_isolation_mode != "noop"', {
235 'targets': [
236 {
237 'target_name': 'neteq_unittests_run',
238 'type': 'none',
239 'dependencies': [
240 '<(import_isolate_path):import_isolate_gypi',
241 'neteq_unittests',
242 ],
243 'includes': [
244 'neteq_unittests.isolate',
245 ],
246 'sources': [
247 'neteq_unittests.isolate',
248 ],
249 },
250 ],
251 }],
henrike@webrtc.org89c67402013-08-02 16:53:47 +0000252 ],
mflodman@webrtc.org6af95942012-05-24 13:23:35 +0000253 }], # include_tests
xians@google.comf67f1972011-08-08 12:56:26 +0000254 ], # conditions
niklase@google.com470e71d2011-07-07 08:21:25 +0000255}