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.
7 '../../build/win_precompile.gypi',
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,
19 'EXPAT_RELATIVE_PATH',
21 'GTEST_RELATIVE_PATH',
25 'JSONCPP_RELATIVE_PATH',
26 'LOGGING_INSIDE_LIBJINGLE',
27 'NO_MAIN_THREAD_WRAPPING',
30 'USE_WEBRTC_DEV_BRANCH',
35 # TODO(sergeyu): Fix libjingle to use NDEBUG instead of
36 # _DEBUG and remove this define. See below as well.
43 './<(libjingle_source)',
44 '../../testing/gtest/include',
46 '../../third_party/libyuv/include',
47 '../../third_party/usrsctp',
48 '../../third_party/webrtc',
51 '<(DEPTH)/base/base.gyp:base',
52 '<(DEPTH)/net/net.gyp:net',
53 '<(DEPTH)/third_party/expat/expat.gyp:expat',
55 'export_dependent_settings': [
56 '<(DEPTH)/third_party/expat/expat.gyp:expat',
58 'direct_dependent_settings': {
61 './<(libjingle_source)',
62 '../../testing/gtest/include',
64 '../../third_party/webrtc',
68 'FEATURE_ENABLE_VOICEMAIL',
69 'EXPAT_RELATIVE_PATH',
70 'GTEST_RELATIVE_PATH',
71 'JSONCPP_RELATIVE_PATH',
72 'NO_MAIN_THREAD_WRAPPING',
87 '../third_party/platformsdk_win7/files/Include',
90 '_CRT_SECURE_NO_WARNINGS', # Suppres warnings about _vsnprinf
92 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
93 'msvs_disabled_warnings': [ 4267 ],
137 'all_dependent_settings': {
141 # TODO(sergeyu): Fix libjingle to use NDEBUG instead of
142 # _DEBUG and remove this define. See above as well.
149 ['"<(libpeer_target_type)"=="static_library"', {
150 'defines': [ 'LIBPEERCONNECTION_LIB=1' ],
155 'HAVE_OPENSSL_SSL_H',
158 '../../third_party/openssl/openssl.gyp:openssl',
167 ['os_posix == 1 and OS != "mac" and OS != "ios" and OS != "android"', {
169 '<(DEPTH)/build/linux/system.gyp:ssl',
172 ['OS == "mac" or OS == "ios" or OS == "win"', {
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',
183 '../third_party/platformsdk_win7/files/Include',
186 ['target_arch == "ia32"', {
196 # Don't warn about string->bool used in asserts.
197 '-Wstring-conversion',
201 '-Wstring-conversion',
243 'target_name': 'libjingle',
244 'type': 'static_library',
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',
512 '<(DEPTH)/third_party/jsoncpp/jsoncpp.gyp:jsoncpp',
513 'libjingle_p2p_constants',
514 '<@(libjingle_additional_deps)',
516 'export_dependent_settings': [
517 '<(DEPTH)/third_party/jsoncpp/jsoncpp.gyp:jsoncpp',
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',
537 # Suppress warnings about WIN32_LEAN_AND_MEAN.
538 'msvs_disabled_warnings': [ 4005, 4267 ],
542 '<(libjingle_source)/talk/base/unixfilesystem.cc',
543 '<(libjingle_source)/talk/base/unixfilesystem.h',
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',
554 ['OS=="mac" or OS=="ios"', {
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',
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',
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',
580 '<(DEPTH)/third_party/jsoncpp/jsoncpp.gyp:jsoncpp',
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',
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).
601 'target_name': 'libjingle_p2p_constants',
602 'type': 'static_library',
604 '<(libjingle_source)/talk/p2p/base/constants.cc',
605 '<(libjingle_source)/talk/p2p/base/constants.h',
607 }, # target libjingle_p2p_constants
609 'target_name': 'peerconnection_server',
610 'type': 'executable',
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',
621 '<(libjingle_source)',
626 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
627 'msvs_disabled_warnings': [ 4309, ],
628 }, # target peerconnection_server
631 ['enable_webrtc==1', {
634 'target_name': 'libjingle_webrtc_common',
635 'type': 'static_library',
636 'all_dependent_settings': {
638 ['"<(libpeer_target_type)"=="static_library"', {
639 'defines': [ 'LIBPEERCONNECTION_LIB=1' ],
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',
787 ['libpeer_allocator_shim==1 and '
788 'libpeer_target_type!="static_library" and OS!="mac"', {
790 'overrides/allocator_shim/allocator_stub.cc',
791 'overrides/allocator_shim/allocator_stub.h',
794 # TODO(mallinath) - Enable SCTP for iOS.
800 '<(libjingle_source)/talk/media/sctp/sctpdataengine.cc',
801 '<(libjingle_source)/talk/media/sctp/sctpdataengine.h',
804 '<(DEPTH)/third_party/usrsctp/usrsctp.gyp:usrsctplib',
807 ['enabled_libjingle_device_manager==1', {
809 '<(libjingle_source)/talk/media/devices/dummydevicemanager.cc',
810 '<(libjingle_source)/talk/media/devices/dummydevicemanager.h',
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',
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',
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',
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',
872 # Suppres warnings about using deprecated functions in
873 # macdevicemanager.cc.
874 '-Wno-deprecated-declarations',
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',
888 }, # target libjingle_webrtc_common
890 'target_name': 'libjingle_webrtc',
891 'type': 'static_library',
893 'overrides/init_webrtc.cc',
894 'overrides/init_webrtc.h',
897 'libjingle_webrtc_common',
901 'target_name': 'libpeerconnection',
902 'type': '<(libpeer_target_type)',
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',
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',
917 ['libpeer_target_type!="static_library"', {
919 'overrides/initialize_module.cc',
922 ['OS!="mac" and OS!="android"', {
924 'overrides/allocator_shim/allocator_proxy.cc',
929 ['"<(libpeer_target_type)"!="static_library"', {
930 # Used to control symbol export/import.
931 'defines': [ 'LIBPEERCONNECTION_IMPLEMENTATION=1' ],
933 ['OS=="win" and "<(libpeer_target_type)"!="static_library"', {
942 ['OS!="win" and "<(libpeer_target_type)"!="static_library"', {
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',
951 ['OS=="mac" and libpeer_target_type!="static_library"', {
952 'product_name': 'libpeerconnection',
954 ['OS=="android" and "<(libpeer_target_type)"=="static_library"', {
955 'standalone_static_library': 1,
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',
964 }, # target libpeerconnection