Add git cl format presubmit warning for extension and apps.
[chromium-blink-merge.git] / third_party / libjingle / libjingle.gyp
blob653686e5aab6fb62af95e058b4caed54d2d3fc47
1 # Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file.
6   'includes': [
7     '../../build/win_precompile.gypi',
8   ],
9   'variables': {
10     'enabled_libjingle_device_manager%': 0,
11     'libjingle_additional_deps%': [],
12     'libjingle_peerconnection_additional_deps%': [],
13     'libjingle_source%': "source",
14     'libpeer_target_type%': 'static_library',
15     'libpeer_allocator_shim%': 0,
16   },
17   'target_defaults': {
18     'defines': [
19       'EXPAT_RELATIVE_PATH',
20       'FEATURE_ENABLE_SSL',
21       'GTEST_RELATIVE_PATH',
22       'HAVE_SRTP',
23       'HAVE_WEBRTC_VIDEO',
24       'HAVE_WEBRTC_VOICE',
25       'JSONCPP_RELATIVE_PATH',
26       'LOGGING_INSIDE_LIBJINGLE',
27       'NO_MAIN_THREAD_WRAPPING',
28       'NO_SOUND_SYSTEM',
29       'SRTP_RELATIVE_PATH',
30       'USE_WEBRTC_DEV_BRANCH',
31     ],
32     'configurations': {
33       'Debug': {
34         'defines': [
35           # TODO(sergeyu): Fix libjingle to use NDEBUG instead of
36           # _DEBUG and remove this define. See below as well.
37           '_DEBUG',
38         ],
39       }
40     },
41     'include_dirs': [
42       './overrides',
43       './<(libjingle_source)',
44       '../../testing/gtest/include',
45       '../../third_party',
46       '../../third_party/libyuv/include',
47       '../../third_party/usrsctp',
48       '../../third_party/webrtc',
49     ],
50     'dependencies': [
51       '<(DEPTH)/base/base.gyp:base',
52       '<(DEPTH)/net/net.gyp:net',
53       '<(DEPTH)/third_party/expat/expat.gyp:expat',
54     ],
55     'export_dependent_settings': [
56       '<(DEPTH)/third_party/expat/expat.gyp:expat',
57     ],
58     'direct_dependent_settings': {
59       'include_dirs': [
60         './overrides',
61         './<(libjingle_source)',
62         '../../testing/gtest/include',
63         '../../third_party',
64         '../../third_party/webrtc',
65       ],
66       'defines': [
67         'FEATURE_ENABLE_SSL',
68         'FEATURE_ENABLE_VOICEMAIL',
69         'EXPAT_RELATIVE_PATH',
70         'GTEST_RELATIVE_PATH',
71         'JSONCPP_RELATIVE_PATH',
72         'NO_MAIN_THREAD_WRAPPING',
73         'NO_SOUND_SYSTEM',
74       ],
75       'conditions': [
76         ['OS=="win"', {
77           'link_settings': {
78             'libraries': [
79               '-lsecur32.lib',
80               '-lcrypt32.lib',
81               '-liphlpapi.lib',
82             ],
83           },
84         }],
85         ['OS=="win"', {
86           'include_dirs': [
87             '../third_party/platformsdk_win7/files/Include',
88           ],
89           'defines': [
90             '_CRT_SECURE_NO_WARNINGS',  # Suppres warnings about _vsnprinf
91           ],
92           # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
93           'msvs_disabled_warnings': [ 4267 ],
94         }],
95         ['OS=="linux"', {
96           'defines': [
97             'LINUX',
98           ],
99         }],
100         ['OS=="mac"', {
101           'defines': [
102             'OSX',
103           ],
104         }],
105         ['OS=="android"', {
106           'defines': [
107             'ANDROID',
108           ],
109         }],
110         ['os_posix==1', {
111           'defines': [
112             'POSIX',
113           ],
114         }],
115         ['os_bsd==1', {
116           'defines': [
117             'BSD',
118           ],
119         }],
120         ['OS=="openbsd"', {
121           'defines': [
122             'OPENBSD',
123           ],
124         }],
125         ['OS=="freebsd"', {
126           'defines': [
127             'FREEBSD',
128           ],
129         }],
130         ['chromeos==1', {
131           'defines': [
132             'CHROMEOS',
133           ],
134         }],
135       ],
136     },
137     'all_dependent_settings': {
138       'configurations': {
139         'Debug': {
140           'defines': [
141             # TODO(sergeyu): Fix libjingle to use NDEBUG instead of
142             # _DEBUG and remove this define. See above as well.
143             '_DEBUG',
144           ],
145         }
146       },
147     },
148     'conditions': [
149       ['"<(libpeer_target_type)"=="static_library"', {
150         'defines': [ 'LIBPEERCONNECTION_LIB=1' ],
151       }],
152       ['use_openssl==1', {
153         'defines': [
154           'SSL_USE_OPENSSL',
155           'HAVE_OPENSSL_SSL_H',
156         ],
157         'dependencies': [
158           '../../third_party/openssl/openssl.gyp:openssl',
159         ],
160       }, {
161         'defines': [
162           'SSL_USE_NSS',
163           'HAVE_NSS_SSL_H',
164           'SSL_USE_NSS_RNG',
165         ],
166         'conditions': [
167           ['os_posix == 1 and OS != "mac" and OS != "ios" and OS != "android"', {
168             'dependencies': [
169               '<(DEPTH)/build/linux/system.gyp:ssl',
170             ],
171           }],
172           ['OS == "mac" or OS == "ios" or OS == "win"', {
173             'dependencies': [
174               '<(DEPTH)/net/third_party/nss/ssl.gyp:libssl',
175               '<(DEPTH)/third_party/nss/nss.gyp:nspr',
176               '<(DEPTH)/third_party/nss/nss.gyp:nss',
177             ],
178           }],
179         ],
180       }],
181       ['OS=="win"', {
182         'include_dirs': [
183           '../third_party/platformsdk_win7/files/Include',
184         ],
185         'conditions' : [
186           ['target_arch == "ia32"', {
187             'defines': [
188               '_USE_32BIT_TIME_T',
189             ],
190           }],
191         ],
192       }],
193       ['clang == 1', {
194         'xcode_settings': {
195           'WARNING_CFLAGS!': [
196             # Don't warn about string->bool used in asserts.
197             '-Wstring-conversion',
198           ],
199         },
200         'cflags!': [
201           '-Wstring-conversion',
202         ],
203       }],
204       ['OS=="linux"', {
205         'defines': [
206           'LINUX',
207         ],
208       }],
209       ['OS=="mac"', {
210         'defines': [
211           'OSX',
212         ],
213       }],
214       ['OS=="ios"', {
215         'defines': [
216           'IOS',
217         ],
218       }],
219       ['os_posix == 1', {
220         'defines': [
221           'POSIX',
222         ],
223       }],
224       ['os_bsd==1', {
225         'defines': [
226           'BSD',
227         ],
228       }],
229       ['OS=="openbsd"', {
230         'defines': [
231           'OPENBSD',
232         ],
233       }],
234       ['OS=="freebsd"', {
235         'defines': [
236           'FREEBSD',
237         ],
238       }],
239     ],
240   },
241   'targets': [
242     {
243       'target_name': 'libjingle',
244       'type': 'static_library',
245       'sources': [
246         'overrides/talk/base/basictypes.h',
247         'overrides/talk/base/constructormagic.h',
249         # Overrides logging.h/.cc because libjingle logging should be done to
250         # the same place as the chromium logging.
251         'overrides/talk/base/logging.cc',
252         'overrides/talk/base/logging.h',
254         '<(libjingle_source)/talk/base/asyncfile.cc',
255         '<(libjingle_source)/talk/base/asyncfile.h',
256         '<(libjingle_source)/talk/base/asynchttprequest.cc',
257         '<(libjingle_source)/talk/base/asynchttprequest.h',
258         '<(libjingle_source)/talk/base/asyncpacketsocket.h',
259         '<(libjingle_source)/talk/base/asyncsocket.cc',
260         '<(libjingle_source)/talk/base/asyncsocket.h',
261         '<(libjingle_source)/talk/base/asynctcpsocket.cc',
262         '<(libjingle_source)/talk/base/asynctcpsocket.h',
263         '<(libjingle_source)/talk/base/asyncudpsocket.cc',
264         '<(libjingle_source)/talk/base/asyncudpsocket.h',
265         '<(libjingle_source)/talk/base/autodetectproxy.cc',
266         '<(libjingle_source)/talk/base/autodetectproxy.h',
267         '<(libjingle_source)/talk/base/base64.cc',
268         '<(libjingle_source)/talk/base/base64.h',
269         '<(libjingle_source)/talk/base/basicdefs.h',
270         '<(libjingle_source)/talk/base/bytebuffer.cc',
271         '<(libjingle_source)/talk/base/bytebuffer.h',
272         '<(libjingle_source)/talk/base/byteorder.h',
273         '<(libjingle_source)/talk/base/checks.cc',
274         '<(libjingle_source)/talk/base/checks.h',
275         '<(libjingle_source)/talk/base/common.cc',
276         '<(libjingle_source)/talk/base/common.h',
277         '<(libjingle_source)/talk/base/compile_assert.h',
278         '<(libjingle_source)/talk/base/cpumonitor.cc',
279         '<(libjingle_source)/talk/base/cpumonitor.h',
280         '<(libjingle_source)/talk/base/crc32.cc',
281         '<(libjingle_source)/talk/base/crc32.h',
282         '<(libjingle_source)/talk/base/criticalsection.h',
283         '<(libjingle_source)/talk/base/cryptstring.h',
284         '<(libjingle_source)/talk/base/diskcache.cc',
285         '<(libjingle_source)/talk/base/diskcache.h',
286         '<(libjingle_source)/talk/base/dscp.h',
287         '<(libjingle_source)/talk/base/event.cc',
288         '<(libjingle_source)/talk/base/event.h',
289         '<(libjingle_source)/talk/base/fileutils.cc',
290         '<(libjingle_source)/talk/base/fileutils.h',
291         '<(libjingle_source)/talk/base/firewallsocketserver.cc',
292         '<(libjingle_source)/talk/base/firewallsocketserver.h',
293         '<(libjingle_source)/talk/base/flags.cc',
294         '<(libjingle_source)/talk/base/flags.h',
295         '<(libjingle_source)/talk/base/helpers.cc',
296         '<(libjingle_source)/talk/base/helpers.h',
297         '<(libjingle_source)/talk/base/httpbase.cc',
298         '<(libjingle_source)/talk/base/httpbase.h',
299         '<(libjingle_source)/talk/base/httpclient.cc',
300         '<(libjingle_source)/talk/base/httpclient.h',
301         '<(libjingle_source)/talk/base/httpcommon-inl.h',
302         '<(libjingle_source)/talk/base/httpcommon.cc',
303         '<(libjingle_source)/talk/base/httpcommon.h',
304         '<(libjingle_source)/talk/base/httprequest.cc',
305         '<(libjingle_source)/talk/base/httprequest.h',
306         '<(libjingle_source)/talk/base/ipaddress.cc',
307         '<(libjingle_source)/talk/base/ipaddress.h',
308         '<(libjingle_source)/talk/base/json.cc',
309         '<(libjingle_source)/talk/base/json.h',
310         '<(libjingle_source)/talk/base/linked_ptr.h',
311         '<(libjingle_source)/talk/base/md5.cc',
312         '<(libjingle_source)/talk/base/md5.h',
313         '<(libjingle_source)/talk/base/md5digest.h',
314         '<(libjingle_source)/talk/base/messagedigest.cc',
315         '<(libjingle_source)/talk/base/messagedigest.h',
316         '<(libjingle_source)/talk/base/messagehandler.cc',
317         '<(libjingle_source)/talk/base/messagehandler.h',
318         '<(libjingle_source)/talk/base/messagequeue.cc',
319         '<(libjingle_source)/talk/base/messagequeue.h',
320         '<(libjingle_source)/talk/base/move.h',
321         '<(libjingle_source)/talk/base/nethelpers.cc',
322         '<(libjingle_source)/talk/base/nethelpers.h',
323         '<(libjingle_source)/talk/base/network.cc',
324         '<(libjingle_source)/talk/base/network.h',
325         '<(libjingle_source)/talk/base/nssidentity.cc',
326         '<(libjingle_source)/talk/base/nssidentity.h',
327         '<(libjingle_source)/talk/base/nssstreamadapter.cc',
328         '<(libjingle_source)/talk/base/nssstreamadapter.h',
329         '<(libjingle_source)/talk/base/nullsocketserver.h',
330         '<(libjingle_source)/talk/base/pathutils.cc',
331         '<(libjingle_source)/talk/base/pathutils.h',
332         '<(libjingle_source)/talk/base/physicalsocketserver.cc',
333         '<(libjingle_source)/talk/base/physicalsocketserver.h',
334         '<(libjingle_source)/talk/base/proxydetect.cc',
335         '<(libjingle_source)/talk/base/proxydetect.h',
336         '<(libjingle_source)/talk/base/proxyinfo.cc',
337         '<(libjingle_source)/talk/base/proxyinfo.h',
338         '<(libjingle_source)/talk/base/ratelimiter.cc',
339         '<(libjingle_source)/talk/base/ratelimiter.h',
340         '<(libjingle_source)/talk/base/ratetracker.cc',
341         '<(libjingle_source)/talk/base/ratetracker.h',
342         '<(libjingle_source)/talk/base/scoped_ptr.h',
343         '<(libjingle_source)/talk/base/sec_buffer.h',
344         '<(libjingle_source)/talk/base/sha1.cc',
345         '<(libjingle_source)/talk/base/sha1.h',
346         '<(libjingle_source)/talk/base/sha1digest.h',
347         '<(libjingle_source)/talk/base/signalthread.cc',
348         '<(libjingle_source)/talk/base/signalthread.h',
349         '<(libjingle_source)/talk/base/sigslot.h',
350         '<(libjingle_source)/talk/base/sigslotrepeater.h',
351         '<(libjingle_source)/talk/base/socket.h',
352         '<(libjingle_source)/talk/base/socketadapters.cc',
353         '<(libjingle_source)/talk/base/socketadapters.h',
354         '<(libjingle_source)/talk/base/socketaddress.cc',
355         '<(libjingle_source)/talk/base/socketaddress.h',
356         '<(libjingle_source)/talk/base/socketaddresspair.cc',
357         '<(libjingle_source)/talk/base/socketaddresspair.h',
358         '<(libjingle_source)/talk/base/socketfactory.h',
359         '<(libjingle_source)/talk/base/socketpool.cc',
360         '<(libjingle_source)/talk/base/socketpool.h',
361         '<(libjingle_source)/talk/base/socketserver.h',
362         '<(libjingle_source)/talk/base/socketstream.cc',
363         '<(libjingle_source)/talk/base/socketstream.h',
364         '<(libjingle_source)/talk/base/ssladapter.cc',
365         '<(libjingle_source)/talk/base/ssladapter.h',
366         '<(libjingle_source)/talk/base/sslfingerprint.cc',
367         '<(libjingle_source)/talk/base/sslfingerprint.h',
368         '<(libjingle_source)/talk/base/sslidentity.cc',
369         '<(libjingle_source)/talk/base/sslidentity.h',
370         '<(libjingle_source)/talk/base/sslsocketfactory.cc',
371         '<(libjingle_source)/talk/base/sslsocketfactory.h',
372         '<(libjingle_source)/talk/base/sslstreamadapter.cc',
373         '<(libjingle_source)/talk/base/sslstreamadapter.h',
374         '<(libjingle_source)/talk/base/sslstreamadapterhelper.cc',
375         '<(libjingle_source)/talk/base/sslstreamadapterhelper.h',
376         '<(libjingle_source)/talk/base/stream.cc',
377         '<(libjingle_source)/talk/base/stream.h',
378         '<(libjingle_source)/talk/base/stringencode.cc',
379         '<(libjingle_source)/talk/base/stringencode.h',
380         '<(libjingle_source)/talk/base/stringutils.cc',
381         '<(libjingle_source)/talk/base/stringutils.h',
382         '<(libjingle_source)/talk/base/systeminfo.cc',
383         '<(libjingle_source)/talk/base/systeminfo.h',
384         '<(libjingle_source)/talk/base/task.cc',
385         '<(libjingle_source)/talk/base/task.h',
386         '<(libjingle_source)/talk/base/taskparent.cc',
387         '<(libjingle_source)/talk/base/taskparent.h',
388         '<(libjingle_source)/talk/base/taskrunner.cc',
389         '<(libjingle_source)/talk/base/taskrunner.h',
390         '<(libjingle_source)/talk/base/template_util.h',
391         '<(libjingle_source)/talk/base/thread.cc',
392         '<(libjingle_source)/talk/base/thread.h',
393         '<(libjingle_source)/talk/base/timeutils.cc',
394         '<(libjingle_source)/talk/base/timeutils.h',
395         '<(libjingle_source)/talk/base/timing.cc',
396         '<(libjingle_source)/talk/base/timing.h',
397         '<(libjingle_source)/talk/base/urlencode.cc',
398         '<(libjingle_source)/talk/base/urlencode.h',
399         '<(libjingle_source)/talk/base/worker.cc',
400         '<(libjingle_source)/talk/base/worker.h',
401         '<(libjingle_source)/talk/p2p/base/asyncstuntcpsocket.cc',
402         '<(libjingle_source)/talk/p2p/base/asyncstuntcpsocket.h',
403         '<(libjingle_source)/talk/p2p/base/basicpacketsocketfactory.cc',
404         '<(libjingle_source)/talk/p2p/base/basicpacketsocketfactory.h',
405         '<(libjingle_source)/talk/p2p/base/candidate.h',
406         '<(libjingle_source)/talk/p2p/base/common.h',
407         '<(libjingle_source)/talk/p2p/base/dtlstransport.h',
408         '<(libjingle_source)/talk/p2p/base/dtlstransportchannel.cc',
409         '<(libjingle_source)/talk/p2p/base/dtlstransportchannel.h',
410         '<(libjingle_source)/talk/p2p/base/p2ptransport.cc',
411         '<(libjingle_source)/talk/p2p/base/p2ptransport.h',
412         '<(libjingle_source)/talk/p2p/base/p2ptransportchannel.cc',
413         '<(libjingle_source)/talk/p2p/base/p2ptransportchannel.h',
414         '<(libjingle_source)/talk/p2p/base/parsing.cc',
415         '<(libjingle_source)/talk/p2p/base/parsing.h',
416         '<(libjingle_source)/talk/p2p/base/port.cc',
417         '<(libjingle_source)/talk/p2p/base/port.h',
418         '<(libjingle_source)/talk/p2p/base/portallocator.cc',
419         '<(libjingle_source)/talk/p2p/base/portallocator.h',
420         '<(libjingle_source)/talk/p2p/base/portallocatorsessionproxy.cc',
421         '<(libjingle_source)/talk/p2p/base/portallocatorsessionproxy.h',
422         '<(libjingle_source)/talk/p2p/base/portproxy.cc',
423         '<(libjingle_source)/talk/p2p/base/portproxy.h',
424         '<(libjingle_source)/talk/p2p/base/pseudotcp.cc',
425         '<(libjingle_source)/talk/p2p/base/pseudotcp.h',
426         '<(libjingle_source)/talk/p2p/base/rawtransport.cc',
427         '<(libjingle_source)/talk/p2p/base/rawtransport.h',
428         '<(libjingle_source)/talk/p2p/base/rawtransportchannel.cc',
429         '<(libjingle_source)/talk/p2p/base/rawtransportchannel.h',
430         '<(libjingle_source)/talk/p2p/base/relayport.cc',
431         '<(libjingle_source)/talk/p2p/base/relayport.h',
432         '<(libjingle_source)/talk/p2p/base/session.cc',
433         '<(libjingle_source)/talk/p2p/base/session.h',
434         '<(libjingle_source)/talk/p2p/base/sessionclient.h',
435         '<(libjingle_source)/talk/p2p/base/sessiondescription.cc',
436         '<(libjingle_source)/talk/p2p/base/sessiondescription.h',
437         '<(libjingle_source)/talk/p2p/base/sessionid.h',
438         '<(libjingle_source)/talk/p2p/base/sessionmanager.cc',
439         '<(libjingle_source)/talk/p2p/base/sessionmanager.h',
440         '<(libjingle_source)/talk/p2p/base/sessionmessages.cc',
441         '<(libjingle_source)/talk/p2p/base/sessionmessages.h',
442         '<(libjingle_source)/talk/p2p/base/stun.cc',
443         '<(libjingle_source)/talk/p2p/base/stun.h',
444         '<(libjingle_source)/talk/p2p/base/stunport.cc',
445         '<(libjingle_source)/talk/p2p/base/stunport.h',
446         '<(libjingle_source)/talk/p2p/base/stunrequest.cc',
447         '<(libjingle_source)/talk/p2p/base/stunrequest.h',
448         '<(libjingle_source)/talk/p2p/base/tcpport.cc',
449         '<(libjingle_source)/talk/p2p/base/tcpport.h',
450         '<(libjingle_source)/talk/p2p/base/transport.cc',
451         '<(libjingle_source)/talk/p2p/base/transport.h',
452         '<(libjingle_source)/talk/p2p/base/transportchannel.cc',
453         '<(libjingle_source)/talk/p2p/base/transportchannel.h',
454         '<(libjingle_source)/talk/p2p/base/transportchannelimpl.h',
455         '<(libjingle_source)/talk/p2p/base/transportchannelproxy.cc',
456         '<(libjingle_source)/talk/p2p/base/transportchannelproxy.h',
457         '<(libjingle_source)/talk/p2p/base/transportdescription.cc',
458         '<(libjingle_source)/talk/p2p/base/transportdescription.h',
459         '<(libjingle_source)/talk/p2p/base/transportdescriptionfactory.cc',
460         '<(libjingle_source)/talk/p2p/base/transportdescriptionfactory.h',
461         '<(libjingle_source)/talk/p2p/base/turnport.cc',
462         '<(libjingle_source)/talk/p2p/base/turnport.h',
463         '<(libjingle_source)/talk/p2p/client/basicportallocator.cc',
464         '<(libjingle_source)/talk/p2p/client/basicportallocator.h',
465         '<(libjingle_source)/talk/p2p/client/httpportallocator.cc',
466         '<(libjingle_source)/talk/p2p/client/httpportallocator.h',
467         '<(libjingle_source)/talk/p2p/client/sessionmanagertask.h',
468         '<(libjingle_source)/talk/p2p/client/sessionsendtask.h',
469         '<(libjingle_source)/talk/p2p/client/socketmonitor.cc',
470         '<(libjingle_source)/talk/p2p/client/socketmonitor.h',
471         '<(libjingle_source)/talk/xmllite/qname.cc',
472         '<(libjingle_source)/talk/xmllite/qname.h',
473         '<(libjingle_source)/talk/xmllite/xmlbuilder.cc',
474         '<(libjingle_source)/talk/xmllite/xmlbuilder.h',
475         '<(libjingle_source)/talk/xmllite/xmlconstants.cc',
476         '<(libjingle_source)/talk/xmllite/xmlconstants.h',
477         '<(libjingle_source)/talk/xmllite/xmlelement.cc',
478         '<(libjingle_source)/talk/xmllite/xmlelement.h',
479         '<(libjingle_source)/talk/xmllite/xmlnsstack.cc',
480         '<(libjingle_source)/talk/xmllite/xmlnsstack.h',
481         '<(libjingle_source)/talk/xmllite/xmlparser.cc',
482         '<(libjingle_source)/talk/xmllite/xmlparser.h',
483         '<(libjingle_source)/talk/xmllite/xmlprinter.cc',
484         '<(libjingle_source)/talk/xmllite/xmlprinter.h',
485         '<(libjingle_source)/talk/xmpp/asyncsocket.h',
486         '<(libjingle_source)/talk/xmpp/constants.cc',
487         '<(libjingle_source)/talk/xmpp/constants.h',
488         '<(libjingle_source)/talk/xmpp/jid.cc',
489         '<(libjingle_source)/talk/xmpp/jid.h',
490         '<(libjingle_source)/talk/xmpp/plainsaslhandler.h',
491         '<(libjingle_source)/talk/xmpp/prexmppauth.h',
492         '<(libjingle_source)/talk/xmpp/saslcookiemechanism.h',
493         '<(libjingle_source)/talk/xmpp/saslhandler.h',
494         '<(libjingle_source)/talk/xmpp/saslmechanism.cc',
495         '<(libjingle_source)/talk/xmpp/saslmechanism.h',
496         '<(libjingle_source)/talk/xmpp/saslplainmechanism.h',
497         '<(libjingle_source)/talk/xmpp/xmppclient.cc',
498         '<(libjingle_source)/talk/xmpp/xmppclient.h',
499         '<(libjingle_source)/talk/xmpp/xmppclientsettings.h',
500         '<(libjingle_source)/talk/xmpp/xmppengine.h',
501         '<(libjingle_source)/talk/xmpp/xmppengineimpl.cc',
502         '<(libjingle_source)/talk/xmpp/xmppengineimpl.h',
503         '<(libjingle_source)/talk/xmpp/xmppengineimpl_iq.cc',
504         '<(libjingle_source)/talk/xmpp/xmpplogintask.cc',
505         '<(libjingle_source)/talk/xmpp/xmpplogintask.h',
506         '<(libjingle_source)/talk/xmpp/xmppstanzaparser.cc',
507         '<(libjingle_source)/talk/xmpp/xmppstanzaparser.h',
508         '<(libjingle_source)/talk/xmpp/xmpptask.cc',
509         '<(libjingle_source)/talk/xmpp/xmpptask.h',
510       ],
511       'dependencies': [
512         '<(DEPTH)/third_party/jsoncpp/jsoncpp.gyp:jsoncpp',
513         'libjingle_p2p_constants',
514         '<@(libjingle_additional_deps)',
515       ],
516       'export_dependent_settings': [
517         '<(DEPTH)/third_party/jsoncpp/jsoncpp.gyp:jsoncpp',
518       ],
519       'conditions': [
520         ['OS=="win"', {
521           'sources': [
522             'overrides/talk/base/win32socketinit.cc',
523             '<(libjingle_source)/talk/base/schanneladapter.cc',
524             '<(libjingle_source)/talk/base/schanneladapter.h',
525             '<(libjingle_source)/talk/base/win32.cc',
526             '<(libjingle_source)/talk/base/win32.h',
527             '<(libjingle_source)/talk/base/win32filesystem.cc',
528             '<(libjingle_source)/talk/base/win32filesystem.h',
529             '<(libjingle_source)/talk/base/win32window.h',
530             '<(libjingle_source)/talk/base/win32window.cc',
531             '<(libjingle_source)/talk/base/win32securityerrors.cc',
532             '<(libjingle_source)/talk/base/winfirewall.cc',
533             '<(libjingle_source)/talk/base/winfirewall.h',
534             '<(libjingle_source)/talk/base/winping.cc',
535             '<(libjingle_source)/talk/base/winping.h',
536           ],
537           # Suppress warnings about WIN32_LEAN_AND_MEAN.
538           'msvs_disabled_warnings': [ 4005, 4267 ],
539         }],
540         ['os_posix == 1', {
541           'sources': [
542             '<(libjingle_source)/talk/base/unixfilesystem.cc',
543             '<(libjingle_source)/talk/base/unixfilesystem.h',
544           ],
545         }],
546         ['OS=="linux"', {
547           'sources': [
548             '<(libjingle_source)/talk/base/latebindingsymboltable.cc',
549             '<(libjingle_source)/talk/base/latebindingsymboltable.h',
550             '<(libjingle_source)/talk/base/linux.cc',
551             '<(libjingle_source)/talk/base/linux.h',
552           ],
553         }],
554         ['OS=="mac" or OS=="ios"', {
555           'sources': [
556             '<(libjingle_source)/talk/base/macconversion.cc',
557             '<(libjingle_source)/talk/base/macconversion.h',
558             '<(libjingle_source)/talk/base/maccocoathreadhelper.h',
559             '<(libjingle_source)/talk/base/maccocoathreadhelper.mm',
560             '<(libjingle_source)/talk/base/macutils.cc',
561             '<(libjingle_source)/talk/base/macutils.h',
562             '<(libjingle_source)/talk/base/scoped_autorelease_pool.h',
563             '<(libjingle_source)/talk/base/scoped_autorelease_pool.mm',
564           ],
565         }],
566         ['OS=="android"', {
567           'sources': [
568             '<(libjingle_source)/talk/base/ifaddrs-android.cc',
569             '<(libjingle_source)/talk/base/ifaddrs-android.h',
570             '<(libjingle_source)/talk/base/linux.cc',
571             '<(libjingle_source)/talk/base/linux.h',
572           ],
573           'sources!': [
574             # These depend on jsoncpp which we don't load because we probably
575             # don't actually need this code at all.
576             '<(libjingle_source)/talk/base/json.cc',
577             '<(libjingle_source)/talk/base/json.h',
578           ],
579           'dependencies!': [
580             '<(DEPTH)/third_party/jsoncpp/jsoncpp.gyp:jsoncpp',
581           ],
582         }],
583         ['use_openssl==1', {
584           'sources': [
585             '<(libjingle_source)/talk/base/openssladapter.cc',
586             '<(libjingle_source)/talk/base/openssldigest.cc',
587             '<(libjingle_source)/talk/base/opensslidentity.cc',
588             '<(libjingle_source)/talk/base/opensslstreamadapter.cc',
589           ],
590         }],
591       ],
592     },  # target libjingle
593     # This has to be is a separate project due to a bug in MSVS 2008 and the
594     # current toolset on android.  The problem is that we have two files named
595     # "constants.cc" and MSVS/android doesn't handle this properly.
596     # GYP currently has guards to catch this, so if you want to remove it,
597     # run GYP and if GYP has removed the validation check, then we can assume
598     # that the toolchains have been fixed (we currently use VS2010 and later,
599     # so VS2008 isn't a concern anymore).
600     {
601       'target_name': 'libjingle_p2p_constants',
602       'type': 'static_library',
603       'sources': [
604         '<(libjingle_source)/talk/p2p/base/constants.cc',
605         '<(libjingle_source)/talk/p2p/base/constants.h',
606       ],
607     },  # target libjingle_p2p_constants
608     {
609       'target_name': 'peerconnection_server',
610       'type': 'executable',
611       'sources': [
612         '<(libjingle_source)/talk/examples/peerconnection/server/data_socket.cc',
613         '<(libjingle_source)/talk/examples/peerconnection/server/data_socket.h',
614         '<(libjingle_source)/talk/examples/peerconnection/server/main.cc',
615         '<(libjingle_source)/talk/examples/peerconnection/server/peer_channel.cc',
616         '<(libjingle_source)/talk/examples/peerconnection/server/peer_channel.h',
617         '<(libjingle_source)/talk/examples/peerconnection/server/utils.cc',
618         '<(libjingle_source)/talk/examples/peerconnection/server/utils.h',
619       ],
620       'include_dirs': [
621         '<(libjingle_source)',
622       ],
623       'dependencies': [
624         'libjingle',
625       ],
626       # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
627       'msvs_disabled_warnings': [ 4309, ],
628     }, # target peerconnection_server
629   ],
630   'conditions': [
631     ['enable_webrtc==1', {
632       'targets': [
633         {
634           'target_name': 'libjingle_webrtc_common',
635           'type': 'static_library',
636           'all_dependent_settings': {
637             'conditions': [
638               ['"<(libpeer_target_type)"=="static_library"', {
639                 'defines': [ 'LIBPEERCONNECTION_LIB=1' ],
640               }],
641             ],
642           },
643           'sources': [
644             'overrides/talk/media/webrtc/webrtcexport.h',
646             '<(libjingle_source)/talk/app/webrtc/audiotrack.cc',
647             '<(libjingle_source)/talk/app/webrtc/audiotrack.h',
648             '<(libjingle_source)/talk/app/webrtc/audiotrackrenderer.cc',
649             '<(libjingle_source)/talk/app/webrtc/audiotrackrenderer.h',
650             '<(libjingle_source)/talk/app/webrtc/datachannel.cc',
651             '<(libjingle_source)/talk/app/webrtc/datachannel.h',
652             '<(libjingle_source)/talk/app/webrtc/dtmfsender.cc',
653             '<(libjingle_source)/talk/app/webrtc/dtmfsender.h',
654             '<(libjingle_source)/talk/app/webrtc/jsep.h',
655             '<(libjingle_source)/talk/app/webrtc/jsepicecandidate.cc',
656             '<(libjingle_source)/talk/app/webrtc/jsepicecandidate.h',
657             '<(libjingle_source)/talk/app/webrtc/jsepsessiondescription.cc',
658             '<(libjingle_source)/talk/app/webrtc/jsepsessiondescription.h',
659             '<(libjingle_source)/talk/app/webrtc/localaudiosource.cc',
660             '<(libjingle_source)/talk/app/webrtc/localaudiosource.h',
661             '<(libjingle_source)/talk/app/webrtc/mediaconstraintsinterface.cc',
662             '<(libjingle_source)/talk/app/webrtc/mediaconstraintsinterface.h',
663             '<(libjingle_source)/talk/app/webrtc/mediastream.cc',
664             '<(libjingle_source)/talk/app/webrtc/mediastream.h',
665             '<(libjingle_source)/talk/app/webrtc/mediastreamhandler.cc',
666             '<(libjingle_source)/talk/app/webrtc/mediastreamhandler.h',
667             '<(libjingle_source)/talk/app/webrtc/mediastreaminterface.h',
668             '<(libjingle_source)/talk/app/webrtc/mediastreamprovider.h',
669             '<(libjingle_source)/talk/app/webrtc/mediastreamproxy.h',
670             '<(libjingle_source)/talk/app/webrtc/mediastreamsignaling.cc',
671             '<(libjingle_source)/talk/app/webrtc/mediastreamsignaling.h',
672             '<(libjingle_source)/talk/app/webrtc/mediastreamtrack.h',
673             '<(libjingle_source)/talk/app/webrtc/mediastreamtrackproxy.h',
674             '<(libjingle_source)/talk/app/webrtc/notifier.h',
675             '<(libjingle_source)/talk/app/webrtc/peerconnection.cc',
676             '<(libjingle_source)/talk/app/webrtc/peerconnection.h',
677             '<(libjingle_source)/talk/app/webrtc/peerconnectionfactory.cc',
678             '<(libjingle_source)/talk/app/webrtc/peerconnectionfactory.h',
679             '<(libjingle_source)/talk/app/webrtc/peerconnectioninterface.h',
680             '<(libjingle_source)/talk/app/webrtc/portallocatorfactory.cc',
681             '<(libjingle_source)/talk/app/webrtc/portallocatorfactory.h',
682             '<(libjingle_source)/talk/app/webrtc/remotevideocapturer.cc',
683             '<(libjingle_source)/talk/app/webrtc/remotevideocapturer.h',
684             '<(libjingle_source)/talk/app/webrtc/sctputils.cc',
685             '<(libjingle_source)/talk/app/webrtc/sctputils.h',
686             '<(libjingle_source)/talk/app/webrtc/statscollector.cc',
687             '<(libjingle_source)/talk/app/webrtc/statscollector.h',
688             '<(libjingle_source)/talk/app/webrtc/statstypes.h',
689             '<(libjingle_source)/talk/app/webrtc/streamcollection.h',
690             '<(libjingle_source)/talk/app/webrtc/videosource.cc',
691             '<(libjingle_source)/talk/app/webrtc/videosource.h',
692             '<(libjingle_source)/talk/app/webrtc/videosourceinterface.h',
693             '<(libjingle_source)/talk/app/webrtc/videosourceproxy.h',
694             '<(libjingle_source)/talk/app/webrtc/videotrack.cc',
695             '<(libjingle_source)/talk/app/webrtc/videotrack.h',
696             '<(libjingle_source)/talk/app/webrtc/videotrackrenderers.cc',
697             '<(libjingle_source)/talk/app/webrtc/videotrackrenderers.h',
698             '<(libjingle_source)/talk/app/webrtc/webrtcsdp.cc',
699             '<(libjingle_source)/talk/app/webrtc/webrtcsdp.h',
700             '<(libjingle_source)/talk/app/webrtc/webrtcsession.cc',
701             '<(libjingle_source)/talk/app/webrtc/webrtcsession.h',
702             '<(libjingle_source)/talk/app/webrtc/webrtcsessiondescriptionfactory.cc',
703             '<(libjingle_source)/talk/app/webrtc/webrtcsessiondescriptionfactory.h',
704             '<(libjingle_source)/talk/media/base/audiorenderer.h',
705             '<(libjingle_source)/talk/media/base/capturemanager.cc',
706             '<(libjingle_source)/talk/media/base/capturemanager.h',
707             '<(libjingle_source)/talk/media/base/capturerenderadapter.cc',
708             '<(libjingle_source)/talk/media/base/capturerenderadapter.h',
709             '<(libjingle_source)/talk/media/base/codec.cc',
710             '<(libjingle_source)/talk/media/base/codec.h',
711             '<(libjingle_source)/talk/media/base/constants.cc',
712             '<(libjingle_source)/talk/media/base/constants.h',
713             '<(libjingle_source)/talk/media/base/cryptoparams.h',
714             '<(libjingle_source)/talk/media/base/filemediaengine.cc',
715             '<(libjingle_source)/talk/media/base/filemediaengine.h',
716             '<(libjingle_source)/talk/media/base/hybriddataengine.h',
717             '<(libjingle_source)/talk/media/base/mediachannel.h',
718             '<(libjingle_source)/talk/media/base/mediaengine.cc',
719             '<(libjingle_source)/talk/media/base/mediaengine.h',
720             '<(libjingle_source)/talk/media/base/rtpdataengine.cc',
721             '<(libjingle_source)/talk/media/base/rtpdataengine.h',
722             '<(libjingle_source)/talk/media/base/rtpdump.cc',
723             '<(libjingle_source)/talk/media/base/rtpdump.h',
724             '<(libjingle_source)/talk/media/base/rtputils.cc',
725             '<(libjingle_source)/talk/media/base/rtputils.h',
726             '<(libjingle_source)/talk/media/base/streamparams.cc',
727             '<(libjingle_source)/talk/media/base/streamparams.h',
728             '<(libjingle_source)/talk/media/base/videoadapter.cc',
729             '<(libjingle_source)/talk/media/base/videoadapter.h',
730             '<(libjingle_source)/talk/media/base/videocapturer.cc',
731             '<(libjingle_source)/talk/media/base/videocapturer.h',
732             '<(libjingle_source)/talk/media/base/videocommon.cc',
733             '<(libjingle_source)/talk/media/base/videocommon.h',
734             '<(libjingle_source)/talk/media/base/videoframe.cc',
735             '<(libjingle_source)/talk/media/base/videoframe.h',
736             '<(libjingle_source)/talk/media/devices/dummydevicemanager.cc',
737             '<(libjingle_source)/talk/media/devices/dummydevicemanager.h',
738             '<(libjingle_source)/talk/media/devices/filevideocapturer.cc',
739             '<(libjingle_source)/talk/media/devices/filevideocapturer.h',
740             '<(libjingle_source)/talk/media/webrtc/webrtccommon.h',
741             '<(libjingle_source)/talk/media/webrtc/webrtcpassthroughrender.cc',
742             '<(libjingle_source)/talk/media/webrtc/webrtcpassthroughrender.h',
743             '<(libjingle_source)/talk/media/webrtc/webrtctexturevideoframe.cc',
744             '<(libjingle_source)/talk/media/webrtc/webrtctexturevideoframe.h',
745             '<(libjingle_source)/talk/media/webrtc/webrtcvideocapturer.cc',
746             '<(libjingle_source)/talk/media/webrtc/webrtcvideocapturer.h',
747             '<(libjingle_source)/talk/media/webrtc/webrtcvideoframe.cc',
748             '<(libjingle_source)/talk/media/webrtc/webrtcvideoframe.h',
749             '<(libjingle_source)/talk/media/webrtc/webrtcvie.h',
750             '<(libjingle_source)/talk/media/webrtc/webrtcvoe.h',
751             '<(libjingle_source)/talk/session/media/audiomonitor.cc',
752             '<(libjingle_source)/talk/session/media/audiomonitor.h',
753             '<(libjingle_source)/talk/session/media/call.cc',
754             '<(libjingle_source)/talk/session/media/call.h',
755             '<(libjingle_source)/talk/session/media/channel.cc',
756             '<(libjingle_source)/talk/session/media/channel.h',
757             '<(libjingle_source)/talk/session/media/channelmanager.cc',
758             '<(libjingle_source)/talk/session/media/channelmanager.h',
759             '<(libjingle_source)/talk/session/media/currentspeakermonitor.cc',
760             '<(libjingle_source)/talk/session/media/currentspeakermonitor.h',
761             '<(libjingle_source)/talk/session/media/mediamessages.cc',
762             '<(libjingle_source)/talk/session/media/mediamessages.h',
763             '<(libjingle_source)/talk/session/media/mediamonitor.cc',
764             '<(libjingle_source)/talk/session/media/mediamonitor.h',
765             '<(libjingle_source)/talk/session/media/mediasession.cc',
766             '<(libjingle_source)/talk/session/media/mediasession.h',
767             '<(libjingle_source)/talk/session/media/mediasessionclient.cc',
768             '<(libjingle_source)/talk/session/media/mediasessionclient.h',
769             '<(libjingle_source)/talk/session/media/mediasink.h',
770             '<(libjingle_source)/talk/session/media/rtcpmuxfilter.cc',
771             '<(libjingle_source)/talk/session/media/rtcpmuxfilter.h',
772             '<(libjingle_source)/talk/session/media/soundclip.cc',
773             '<(libjingle_source)/talk/session/media/soundclip.h',
774             '<(libjingle_source)/talk/session/media/srtpfilter.cc',
775             '<(libjingle_source)/talk/session/media/srtpfilter.h',
776             '<(libjingle_source)/talk/session/media/ssrcmuxfilter.cc',
777             '<(libjingle_source)/talk/session/media/ssrcmuxfilter.h',
778             '<(libjingle_source)/talk/session/media/typingmonitor.cc',
779             '<(libjingle_source)/talk/session/media/typingmonitor.h',
780             '<(libjingle_source)/talk/session/media/voicechannel.h',
781             '<(libjingle_source)/talk/session/tunnel/pseudotcpchannel.cc',
782             '<(libjingle_source)/talk/session/tunnel/pseudotcpchannel.h',
783             '<(libjingle_source)/talk/session/tunnel/tunnelsessionclient.cc',
784             '<(libjingle_source)/talk/session/tunnel/tunnelsessionclient.h',
785           ],
786           'conditions': [
787             ['libpeer_allocator_shim==1 and '
788              'libpeer_target_type!="static_library" and OS!="mac"', {
789               'sources': [
790                 'overrides/allocator_shim/allocator_stub.cc',
791                 'overrides/allocator_shim/allocator_stub.h',
792               ],
793             }],
794             # TODO(mallinath) - Enable SCTP for iOS.
795             ['OS!="ios"', {
796               'defines': [
797                 'HAVE_SCTP',
798               ],
799               'sources': [
800                 '<(libjingle_source)/talk/media/sctp/sctpdataengine.cc',
801                 '<(libjingle_source)/talk/media/sctp/sctpdataengine.h',
802               ],
803               'dependencies': [
804                 '<(DEPTH)/third_party/usrsctp/usrsctp.gyp:usrsctplib',
805               ],
806             }],
807             ['enabled_libjingle_device_manager==1', {
808               'sources!': [
809                 '<(libjingle_source)/talk/media/devices/dummydevicemanager.cc',
810                 '<(libjingle_source)/talk/media/devices/dummydevicemanager.h',
811               ],
812               'sources': [
813                 '<(libjingle_source)/talk/media/devices/devicemanager.cc',
814                 '<(libjingle_source)/talk/media/devices/devicemanager.h',
815                 '<(libjingle_source)/talk/sound/nullsoundsystem.cc',
816                 '<(libjingle_source)/talk/sound/nullsoundsystem.h',
817                 '<(libjingle_source)/talk/sound/nullsoundsystemfactory.cc',
818                 '<(libjingle_source)/talk/sound/nullsoundsystemfactory.h',
819                 '<(libjingle_source)/talk/sound/platformsoundsystem.cc',
820                 '<(libjingle_source)/talk/sound/platformsoundsystem.h',
821                 '<(libjingle_source)/talk/sound/platformsoundsystemfactory.cc',
822                 '<(libjingle_source)/talk/sound/platformsoundsystemfactory.h',
823                 '<(libjingle_source)/talk/sound/soundsysteminterface.cc',
824                 '<(libjingle_source)/talk/sound/soundsysteminterface.h',
825                 '<(libjingle_source)/talk/sound/soundsystemproxy.cc',
826                 '<(libjingle_source)/talk/sound/soundsystemproxy.h',
827               ],
828               'conditions': [
829                 ['OS=="win"', {
830                   'sources': [
831                     '<(libjingle_source)/talk/base/win32window.cc',
832                     '<(libjingle_source)/talk/base/win32window.h',
833                     '<(libjingle_source)/talk/base/win32windowpicker.cc',
834                     '<(libjingle_source)/talk/base/win32windowpicker.h',
835                     '<(libjingle_source)/talk/media/devices/win32deviceinfo.cc',
836                     '<(libjingle_source)/talk/media/devices/win32devicemanager.cc',
837                     '<(libjingle_source)/talk/media/devices/win32devicemanager.h',
838                   ],
839                 }],
840                 ['OS=="linux"', {
841                   'sources': [
842                     '<(libjingle_source)/talk/base/linuxwindowpicker.cc',
843                     '<(libjingle_source)/talk/base/linuxwindowpicker.h',
844                     '<(libjingle_source)/talk/media/devices/libudevsymboltable.cc',
845                     '<(libjingle_source)/talk/media/devices/libudevsymboltable.h',
846                     '<(libjingle_source)/talk/media/devices/linuxdeviceinfo.cc',
847                     '<(libjingle_source)/talk/media/devices/linuxdevicemanager.cc',
848                     '<(libjingle_source)/talk/media/devices/linuxdevicemanager.h',
849                     '<(libjingle_source)/talk/media/devices/v4llookup.cc',
850                     '<(libjingle_source)/talk/media/devices/v4llookup.h',
851                     '<(libjingle_source)/talk/sound/alsasoundsystem.cc',
852                     '<(libjingle_source)/talk/sound/alsasoundsystem.h',
853                     '<(libjingle_source)/talk/sound/alsasymboltable.cc',
854                     '<(libjingle_source)/talk/sound/alsasymboltable.h',
855                     '<(libjingle_source)/talk/sound/linuxsoundsystem.cc',
856                     '<(libjingle_source)/talk/sound/linuxsoundsystem.h',
857                     '<(libjingle_source)/talk/sound/pulseaudiosoundsystem.cc',
858                     '<(libjingle_source)/talk/sound/pulseaudiosoundsystem.h',
859                     '<(libjingle_source)/talk/sound/pulseaudiosymboltable.cc',
860                     '<(libjingle_source)/talk/sound/pulseaudiosymboltable.h',
861                   ],
862                 }],
863                 ['OS=="mac"', {
864                   'sources': [
865                     '<(libjingle_source)/talk/media/devices/macdeviceinfo.cc',
866                     '<(libjingle_source)/talk/media/devices/macdevicemanager.cc',
867                     '<(libjingle_source)/talk/media/devices/macdevicemanager.h',
868                     '<(libjingle_source)/talk/media/devices/macdevicemanagermm.mm',
869                   ],
870                   'xcode_settings': {
871                     'WARNING_CFLAGS': [
872                       # Suppres warnings about using deprecated functions in
873                       # macdevicemanager.cc.
874                       '-Wno-deprecated-declarations',
875                     ],
876                   },
877                 }],
878               ],
879             }],
880           ],
881           'dependencies': [
882             '<(DEPTH)/third_party/libsrtp/libsrtp.gyp:libsrtp',
883             '<(DEPTH)/third_party/webrtc/modules/modules.gyp:media_file',
884             '<(DEPTH)/third_party/webrtc/modules/modules.gyp:video_capture_module',
885             '<(DEPTH)/third_party/webrtc/modules/modules.gyp:video_render_module',
886             'libjingle',
887           ],
888         },  # target libjingle_webrtc_common
889         {
890           'target_name': 'libjingle_webrtc',
891           'type': 'static_library',
892           'sources': [
893             'overrides/init_webrtc.cc',
894             'overrides/init_webrtc.h',
895           ],
896           'dependencies': [
897             'libjingle_webrtc_common',
898           ],
899         },
900         {
901           'target_name': 'libpeerconnection',
902           'type': '<(libpeer_target_type)',
903           'sources': [
904             '<(libjingle_source)/talk/media/webrtc/webrtcvideoengine.cc',
905             '<(libjingle_source)/talk/media/webrtc/webrtcvideoengine.h',
906             '<(libjingle_source)/talk/media/webrtc/webrtcvoiceengine.cc',
907             '<(libjingle_source)/talk/media/webrtc/webrtcvoiceengine.h',
908           ],
909           'dependencies': [
910             '<(DEPTH)/third_party/webrtc/system_wrappers/source/system_wrappers.gyp:system_wrappers',
911             '<(DEPTH)/third_party/webrtc/video_engine/video_engine.gyp:video_engine_core',
912             '<(DEPTH)/third_party/webrtc/voice_engine/voice_engine.gyp:voice_engine',
913             '<@(libjingle_peerconnection_additional_deps)',
914             'libjingle_webrtc_common',
915           ],
916           'conditions': [
917             ['libpeer_target_type!="static_library"', {
918               'sources': [
919                 'overrides/initialize_module.cc',
920               ],
921               'conditions': [
922                 ['OS!="mac" and OS!="android"', {
923                   'sources': [
924                     'overrides/allocator_shim/allocator_proxy.cc',
925                   ],
926                 }],
927               ],
928             }],
929             ['"<(libpeer_target_type)"!="static_library"', {
930               # Used to control symbol export/import.
931               'defines': [ 'LIBPEERCONNECTION_IMPLEMENTATION=1' ],
932             }],
933             ['OS=="win" and "<(libpeer_target_type)"!="static_library"', {
934               'link_settings': {
935                 'libraries': [
936                   '-lsecur32.lib',
937                   '-lcrypt32.lib',
938                   '-liphlpapi.lib',
939                 ],
940               },
941             }],
942             ['OS!="win" and "<(libpeer_target_type)"!="static_library"', {
943               'cflags': [
944                 # For compatibility with how we export symbols from this
945                 # target on Windows.  This also prevents the linker from
946                 # picking up symbols from this target that should be linked
947                 # in from other libjingle libs.
948                 '-fvisibility=hidden',
949               ],
950             }],
951             ['OS=="mac" and libpeer_target_type!="static_library"', {
952               'product_name': 'libpeerconnection',
953             }],
954             ['OS=="android" and "<(libpeer_target_type)"=="static_library"', {
955               'standalone_static_library': 1,
956             }],
957             ['OS=="linux" and libpeer_target_type!="static_library"', {
958               # The installer and various tools depend on finding the .so
959               # in this directory and not lib.target as will otherwise be
960               # the case with make builds.
961               'product_dir': '<(PRODUCT_DIR)/lib',
962             }],
963           ],
964         },  # target libpeerconnection
965       ],
966     }],
967   ],