blob: e460853ac10b4b9fbc84bedb4c3a95966dac35ac [file] [log] [blame]
kjellander@webrtc.orga33f05e2015-01-29 14:29:45 +00001# Copyright (c) 2015 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
9{
10 'includes': [
11 '../../build/common.gypi',
12 'codecs/interfaces.gypi',
13 'codecs/cng/cng.gypi',
14 'codecs/g711/g711.gypi',
15 'codecs/g722/g722.gypi',
16 'codecs/ilbc/ilbc.gypi',
kjellander@webrtc.orge35fa962015-02-16 12:46:41 +000017 'codecs/isac/isac.gypi',
kwiberg608c3cf2015-08-24 02:03:23 -070018 'codecs/isac/isac_common.gypi',
kjellander@webrtc.orge35fa962015-02-16 12:46:41 +000019 'codecs/isac/isacfix.gypi',
kjellander@webrtc.orga33f05e2015-01-29 14:29:45 +000020 'codecs/pcm16b/pcm16b.gypi',
21 'codecs/red/red.gypi',
kjellander@webrtc.orga33f05e2015-01-29 14:29:45 +000022 'neteq/neteq.gypi',
23 ],
kjellander3e6db232015-11-26 04:44:54 -080024 'variables': {
kwiberg0edb05b2016-01-19 05:54:28 -080025 'variables': {
26 'audio_codec_dependencies': [
27 'cng',
28 'g711',
29 'pcm16b',
30 ],
31 'audio_codec_defines': [],
32 'conditions': [
33 ['include_ilbc==1', {
34 'audio_codec_dependencies': ['ilbc',],
35 'audio_codec_defines': ['WEBRTC_CODEC_ILBC',],
36 }],
37 ['include_opus==1', {
38 'audio_codec_dependencies': ['webrtc_opus',],
39 'audio_codec_defines': ['WEBRTC_CODEC_OPUS',],
40 }],
41 ['build_with_mozilla==0', {
42 'conditions': [
43 ['target_arch=="arm"', {
44 'audio_codec_dependencies': ['isac_fix',],
45 'audio_codec_defines': ['WEBRTC_CODEC_ISACFX',],
46 }, {
47 'audio_codec_dependencies': ['isac',],
48 'audio_codec_defines': ['WEBRTC_CODEC_ISAC',],
49 }],
50 ],
51 'audio_codec_dependencies': ['g722',],
52 'audio_codec_defines': ['WEBRTC_CODEC_G722',],
53 }],
54 ['build_with_mozilla==0 and build_with_chromium==0', {
55 'audio_codec_dependencies': ['red',],
56 'audio_codec_defines': ['WEBRTC_CODEC_RED',],
57 }],
58 ],
59 },
60 'audio_codec_dependencies': '<(audio_codec_dependencies)',
61 'audio_codec_defines': '<(audio_codec_defines)',
kjellander3e6db232015-11-26 04:44:54 -080062 'audio_coding_dependencies': [
kwiberg0edb05b2016-01-19 05:54:28 -080063 '<@(audio_codec_dependencies)',
kjellander3e6db232015-11-26 04:44:54 -080064 '<(webrtc_root)/common.gyp:webrtc_common',
65 '<(webrtc_root)/common_audio/common_audio.gyp:common_audio',
66 '<(webrtc_root)/system_wrappers/system_wrappers.gyp:system_wrappers',
67 ],
kwiberg0edb05b2016-01-19 05:54:28 -080068 'audio_coding_defines': '<(audio_codec_defines)',
kjellander3e6db232015-11-26 04:44:54 -080069 },
70 'targets': [
71 {
72 'target_name': 'rent_a_codec',
73 'type': 'static_library',
74 'defines': [
kwiberg0edb05b2016-01-19 05:54:28 -080075 '<@(audio_codec_defines)',
kjellander3e6db232015-11-26 04:44:54 -080076 ],
77 'dependencies': [
78 '<(webrtc_root)/common.gyp:webrtc_common',
kwiberg0edb05b2016-01-19 05:54:28 -080079 '<@(audio_codec_dependencies)',
kjellander3e6db232015-11-26 04:44:54 -080080 ],
81 'include_dirs': [
82 '<(webrtc_root)',
83 ],
84 'direct_dependent_settings': {
85 'include_dirs': [
86 '<(webrtc_root)',
87 ],
88 },
89 'sources': [
90 'acm2/acm_codec_database.cc',
91 'acm2/acm_codec_database.h',
92 'acm2/rent_a_codec.cc',
93 'acm2/rent_a_codec.h',
94 ],
95 },
96 {
97 'target_name': 'audio_coding_module',
98 'type': 'static_library',
99 'defines': [
100 '<@(audio_coding_defines)',
101 ],
102 'dependencies': [
103 '<@(audio_coding_dependencies)',
104 '<(webrtc_root)/common.gyp:webrtc_common',
105 '<(webrtc_root)/webrtc.gyp:rtc_event_log',
106 'neteq',
107 'rent_a_codec',
108 ],
109 'include_dirs': [
110 'include',
111 '../include',
112 '<(webrtc_root)',
113 ],
114 'direct_dependent_settings': {
115 'include_dirs': [
116 'include',
117 '../include',
118 '<(webrtc_root)',
119 ],
120 },
121 'conditions': [
122 ['include_opus==1', {
123 'export_dependent_settings': ['webrtc_opus'],
124 }],
125 ],
126 'sources': [
127 'acm2/acm_common_defs.h',
128 'acm2/acm_receiver.cc',
129 'acm2/acm_receiver.h',
130 'acm2/acm_resampler.cc',
131 'acm2/acm_resampler.h',
132 'acm2/audio_coding_module.cc',
133 'acm2/audio_coding_module_impl.cc',
134 'acm2/audio_coding_module_impl.h',
135 'acm2/call_statistics.cc',
136 'acm2/call_statistics.h',
137 'acm2/codec_manager.cc',
138 'acm2/codec_manager.h',
139 'acm2/initial_delay_manager.cc',
140 'acm2/initial_delay_manager.h',
141 'include/audio_coding_module.h',
142 'include/audio_coding_module_typedefs.h',
143 ],
144 },
145 ],
kjellander@webrtc.orga33f05e2015-01-29 14:29:45 +0000146 'conditions': [
147 ['include_opus==1', {
148 'includes': ['codecs/opus/opus.gypi',],
149 }],
kjellander3e6db232015-11-26 04:44:54 -0800150 ['include_tests==1', {
151 'targets': [
152 {
153 'target_name': 'acm_receive_test',
154 'type': 'static_library',
155 'defines': [
156 '<@(audio_coding_defines)',
157 ],
158 'dependencies': [
159 '<@(audio_coding_dependencies)',
160 'audio_coding_module',
161 'neteq_unittest_tools',
162 '<(DEPTH)/testing/gtest.gyp:gtest',
163 ],
164 'sources': [
165 'acm2/acm_receive_test_oldapi.cc',
166 'acm2/acm_receive_test_oldapi.h',
167 ],
168 }, # acm_receive_test
169 {
170 'target_name': 'acm_send_test',
171 'type': 'static_library',
172 'defines': [
173 '<@(audio_coding_defines)',
174 ],
175 'dependencies': [
176 '<@(audio_coding_dependencies)',
177 'audio_coding_module',
178 'neteq_unittest_tools',
179 '<(DEPTH)/testing/gtest.gyp:gtest',
180 ],
181 'sources': [
182 'acm2/acm_send_test_oldapi.cc',
183 'acm2/acm_send_test_oldapi.h',
184 ],
185 }, # acm_send_test
186 {
187 'target_name': 'delay_test',
188 'type': 'executable',
189 'dependencies': [
190 'audio_coding_module',
191 '<(DEPTH)/testing/gtest.gyp:gtest',
192 '<(webrtc_root)/common.gyp:webrtc_common',
193 '<(webrtc_root)/test/test.gyp:test_support',
194 '<(webrtc_root)/system_wrappers/system_wrappers.gyp:system_wrappers',
195 '<(webrtc_root)/system_wrappers/system_wrappers.gyp:system_wrappers_default',
196 '<(DEPTH)/third_party/gflags/gflags.gyp:gflags',
197 ],
198 'sources': [
199 'test/delay_test.cc',
200 'test/Channel.cc',
201 'test/PCMFile.cc',
202 'test/utility.cc',
203 ],
204 }, # delay_test
205 {
206 'target_name': 'insert_packet_with_timing',
207 'type': 'executable',
208 'dependencies': [
209 'audio_coding_module',
210 '<(DEPTH)/testing/gtest.gyp:gtest',
211 '<(webrtc_root)/common.gyp:webrtc_common',
212 '<(webrtc_root)/test/test.gyp:test_support',
213 '<(webrtc_root)/system_wrappers/system_wrappers.gyp:system_wrappers',
214 '<(webrtc_root)/system_wrappers/system_wrappers.gyp:system_wrappers_default',
215 '<(DEPTH)/third_party/gflags/gflags.gyp:gflags',
216 ],
217 'sources': [
218 'test/insert_packet_with_timing.cc',
219 'test/Channel.cc',
220 'test/PCMFile.cc',
221 ],
222 }, # delay_test
223 ],
224 }],
kjellander@webrtc.orga33f05e2015-01-29 14:29:45 +0000225 ],
226}