Home | History | Annotate | Download | only in libjingle
      1 # Copyright 2014 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.
      4 
      5 import("//build/config/crypto.gni")
      6 import("//build/config/features.gni")
      7 
      8 # From third_party/libjingle/libjingle.gyp's target_defaults.
      9 config("jingle_unexported_configs") {
     10   defines = [
     11     "EXPAT_RELATIVE_PATH",
     12     "FEATURE_ENABLE_SSL",
     13     "GTEST_RELATIVE_PATH",
     14     "HAVE_SRTP",
     15     "HAVE_WEBRTC_VIDEO",
     16     "HAVE_WEBRTC_VOICE",
     17     "LOGGING_INSIDE_WEBRTC",
     18     "NO_MAIN_THREAD_WRAPPING",
     19     "NO_SOUND_SYSTEM",
     20     "SRTP_RELATIVE_PATH",
     21     "USE_WEBRTC_DEV_BRANCH",
     22     "ENABLE_EXTERNAL_AUTH",
     23     "WEBRTC_CHROMIUM_BUILD",
     24   ]
     25 
     26   include_dirs = [
     27     "overrides",
     28     "../../third_party/webrtc/overrides",
     29     "source",
     30     "../../testing/gtest/include",
     31     "../../third_party",
     32     "../../third_party/libyuv/include",
     33     "../../third_party/usrsctp",
     34   ]
     35 
     36   # Assumes libpeer is linked statically.
     37   defines += [ "LIBPEERCONNECTION_LIB=1" ]
     38 
     39   if (is_win && cpu_arch == "x86") {
     40     defines += [ "_USE_32BIT_TIME_T" ]
     41   }
     42 
     43   if (use_openssl) {
     44     defines += [
     45       "SSL_USE_OPENSSL",
     46       "HAVE_OPENSSL_SSL_H",
     47     ]
     48   } else {
     49     defines += [
     50       "SSL_USE_NSS",
     51       "HAVE_NSS_SSL_H",
     52       "SSL_USE_NSS_RNG",
     53     ]
     54   }
     55 
     56 }
     57 
     58 # From third_party/libjingle/libjingle.gyp's target_defaults.
     59 config("jingle_direct_dependent_configs") {
     60   include_dirs = [
     61     "../../third_party/webrtc/overrides",
     62     "overrides",
     63     "source",
     64     "../../testing/gtest/include",
     65     "../../third_party",
     66   ]
     67   defines = [
     68     "FEATURE_ENABLE_SSL",
     69     "FEATURE_ENABLE_VOICEMAIL",
     70     "EXPAT_RELATIVE_PATH",
     71     "GTEST_RELATIVE_PATH",
     72     "NO_MAIN_THREAD_WRAPPING",
     73     "NO_SOUND_SYSTEM",
     74   ]
     75   # TODO(GYP): Port is_win blocks.
     76   if (is_linux) {
     77     defines += [ "LINUX", "WEBRTC_LINUX" ]
     78   }
     79   if (is_mac) {
     80     defines += [ "OSX", "WEBRTC_MAC" ]
     81   }
     82   if (is_ios) {
     83     defines += [ "IOS", "WEBRTC_MAC", "WEBRTC_IOS" ]
     84   }
     85   if (is_win) {
     86     defines += [ "WEBRTC_WIN" ]
     87   }
     88   if (is_android) {
     89     defines += [ "ANDROID" ]
     90   }
     91   if (is_posix) {
     92     defines += [ "POSIX", "WEBRTC_POSIX" ]
     93   }
     94   # TODO(GYP): Support these in GN.
     95   # if (is_bsd) {
     96   #   defines += [ "BSD" ]
     97   # }
     98   # if (is_openbsd) {
     99   #   defines += [ "OPENBSD" ]
    100   # }
    101   # if (is_freebsd) {
    102   #   defines += [ "FREEBSD" ]
    103   # }
    104   if (is_chromeos) {
    105     defines += [ "CHROMEOS" ]
    106   }
    107 }
    108 
    109 # From third_party/libjingle/libjingle.gyp's target_defaults.
    110 config("jingle_all_dependent_configs") {
    111   if (is_debug) {
    112     # TODO(sergeyu): Fix libjingle to use NDEBUG instead of
    113     # _DEBUG and remove this define. See GYP file as well.
    114     defines = [ "_DEBUG" ]
    115   }
    116 }
    117 
    118 # From third_party/libjingle/libjingle.gyp's target_defaults.
    119 group("jingle_deps") {
    120   public_deps = [
    121     "//third_party/expat",
    122   ]
    123   deps = [
    124     "//base",
    125     "//net",
    126     "//crypto:platform",
    127   ]
    128 }
    129 
    130 # GYP version: third_party/libjingle.gyp:libjingle
    131 static_library("libjingle") {
    132   sources = [
    133     # List from third_party/libjingle/libjingle_common.gypi
    134     "source/talk/p2p/base/asyncstuntcpsocket.cc",
    135     "source/talk/p2p/base/asyncstuntcpsocket.h",
    136     "source/talk/p2p/base/basicpacketsocketfactory.cc",
    137     "source/talk/p2p/base/basicpacketsocketfactory.h",
    138     "source/talk/p2p/base/candidate.h",
    139     "source/talk/p2p/base/common.h",
    140     "source/talk/p2p/base/constants.cc",
    141     "source/talk/p2p/base/constants.h",
    142     "source/talk/p2p/base/dtlstransport.h",
    143     "source/talk/p2p/base/dtlstransportchannel.cc",
    144     "source/talk/p2p/base/dtlstransportchannel.h",
    145     "source/talk/p2p/base/p2ptransport.cc",
    146     "source/talk/p2p/base/p2ptransport.h",
    147     "source/talk/p2p/base/p2ptransportchannel.cc",
    148     "source/talk/p2p/base/p2ptransportchannel.h",
    149     "source/talk/p2p/base/parsing.cc",
    150     "source/talk/p2p/base/parsing.h",
    151     "source/talk/p2p/base/port.cc",
    152     "source/talk/p2p/base/port.h",
    153     "source/talk/p2p/base/portallocator.cc",
    154     "source/talk/p2p/base/portallocator.h",
    155     "source/talk/p2p/base/portallocatorsessionproxy.cc",
    156     "source/talk/p2p/base/portallocatorsessionproxy.h",
    157     "source/talk/p2p/base/portproxy.cc",
    158     "source/talk/p2p/base/portproxy.h",
    159     "source/talk/p2p/base/pseudotcp.cc",
    160     "source/talk/p2p/base/pseudotcp.h",
    161     "source/talk/p2p/base/rawtransport.cc",
    162     "source/talk/p2p/base/rawtransport.h",
    163     "source/talk/p2p/base/rawtransportchannel.cc",
    164     "source/talk/p2p/base/rawtransportchannel.h",
    165     "source/talk/p2p/base/relayport.cc",
    166     "source/talk/p2p/base/relayport.h",
    167     "source/talk/p2p/base/session.cc",
    168     "source/talk/p2p/base/session.h",
    169     "source/talk/p2p/base/sessionclient.h",
    170     "source/talk/p2p/base/sessiondescription.cc",
    171     "source/talk/p2p/base/sessiondescription.h",
    172     "source/talk/p2p/base/sessionid.h",
    173     "source/talk/p2p/base/sessionmanager.cc",
    174     "source/talk/p2p/base/sessionmanager.h",
    175     "source/talk/p2p/base/sessionmessages.cc",
    176     "source/talk/p2p/base/sessionmessages.h",
    177     "source/talk/p2p/base/stun.cc",
    178     "source/talk/p2p/base/stun.h",
    179     "source/talk/p2p/base/stunport.cc",
    180     "source/talk/p2p/base/stunport.h",
    181     "source/talk/p2p/base/stunrequest.cc",
    182     "source/talk/p2p/base/stunrequest.h",
    183     "source/talk/p2p/base/tcpport.cc",
    184     "source/talk/p2p/base/tcpport.h",
    185     "source/talk/p2p/base/transport.cc",
    186     "source/talk/p2p/base/transport.h",
    187     "source/talk/p2p/base/transportchannel.cc",
    188     "source/talk/p2p/base/transportchannel.h",
    189     "source/talk/p2p/base/transportchannelimpl.h",
    190     "source/talk/p2p/base/transportchannelproxy.cc",
    191     "source/talk/p2p/base/transportchannelproxy.h",
    192     "source/talk/p2p/base/transportdescription.cc",
    193     "source/talk/p2p/base/transportdescription.h",
    194     "source/talk/p2p/base/transportdescriptionfactory.cc",
    195     "source/talk/p2p/base/transportdescriptionfactory.h",
    196     "source/talk/p2p/base/turnport.cc",
    197     "source/talk/p2p/base/turnport.h",
    198     "source/talk/p2p/client/basicportallocator.cc",
    199     "source/talk/p2p/client/basicportallocator.h",
    200     "source/talk/p2p/client/httpportallocator.cc",
    201     "source/talk/p2p/client/httpportallocator.h",
    202     "source/talk/p2p/client/sessionmanagertask.h",
    203     "source/talk/p2p/client/sessionsendtask.h",
    204     "source/talk/p2p/client/socketmonitor.cc",
    205     "source/talk/p2p/client/socketmonitor.h",
    206     "source/talk/xmllite/qname.cc",
    207     "source/talk/xmllite/qname.h",
    208     "source/talk/xmllite/xmlbuilder.cc",
    209     "source/talk/xmllite/xmlbuilder.h",
    210     "source/talk/xmllite/xmlconstants.cc",
    211     "source/talk/xmllite/xmlconstants.h",
    212     "source/talk/xmllite/xmlelement.cc",
    213     "source/talk/xmllite/xmlelement.h",
    214     "source/talk/xmllite/xmlnsstack.cc",
    215     "source/talk/xmllite/xmlnsstack.h",
    216     "source/talk/xmllite/xmlparser.cc",
    217     "source/talk/xmllite/xmlparser.h",
    218     "source/talk/xmllite/xmlprinter.cc",
    219     "source/talk/xmllite/xmlprinter.h",
    220     "source/talk/xmpp/asyncsocket.h",
    221     "source/talk/xmpp/constants.cc",
    222     "source/talk/xmpp/constants.h",
    223     "source/talk/xmpp/jid.cc",
    224     "source/talk/xmpp/jid.h",
    225     "source/talk/xmpp/plainsaslhandler.h",
    226     "source/talk/xmpp/prexmppauth.h",
    227     "source/talk/xmpp/saslcookiemechanism.h",
    228     "source/talk/xmpp/saslhandler.h",
    229     "source/talk/xmpp/saslmechanism.cc",
    230     "source/talk/xmpp/saslmechanism.h",
    231     "source/talk/xmpp/saslplainmechanism.h",
    232     "source/talk/xmpp/xmppclient.cc",
    233     "source/talk/xmpp/xmppclient.h",
    234     "source/talk/xmpp/xmppclientsettings.h",
    235     "source/talk/xmpp/xmppengine.h",
    236     "source/talk/xmpp/xmppengineimpl.cc",
    237     "source/talk/xmpp/xmppengineimpl.h",
    238     "source/talk/xmpp/xmppengineimpl_iq.cc",
    239     "source/talk/xmpp/xmpplogintask.cc",
    240     "source/talk/xmpp/xmpplogintask.h",
    241     "source/talk/xmpp/xmppstanzaparser.cc",
    242     "source/talk/xmpp/xmppstanzaparser.h",
    243     "source/talk/xmpp/xmpptask.cc",
    244     "source/talk/xmpp/xmpptask.h",
    245   ]
    246   sources -= [
    247     # Compiled as part of libjingle_p2p_constants.
    248     "source/talk/p2p/base/constants.cc",
    249     "source/talk/p2p/base/constants.h",
    250   ]
    251   public_deps = [
    252     ":jingle_deps"
    253   ]
    254   deps = [
    255     "//third_party/webrtc/base:webrtc_base",
    256     ":libjingle_p2p_constants",
    257   ]
    258 
    259   # From libjingle_common.gypi's conditions list.
    260   if (is_win) {
    261     cflags = [ "/wd4005", "/wd4267" ]
    262   }
    263 
    264   configs += [
    265     ":jingle_unexported_configs"
    266   ]
    267   public_configs = [
    268     ":jingle_direct_dependent_configs",
    269   ]
    270   all_dependent_configs = [
    271     ":jingle_all_dependent_configs",
    272   ]
    273 }
    274 
    275 # This has to be is a separate project due to a bug in MSVS 2008 and the
    276 # current toolset on android.  The problem is that we have two files named
    277 # "constants.cc" and MSVS/android doesn't handle this properly.
    278 # GYP currently has guards to catch this, so if you want to remove it,
    279 # run GYP and if GYP has removed the validation check, then we can assume
    280 # that the toolchains have been fixed (we currently use VS2010 and later,
    281 # so VS2008 isn't a concern anymore).
    282 #
    283 # GYP version: third_party/libjingle.gyp:libjingle_p2p_constants
    284 static_library("libjingle_p2p_constants") {
    285   sources = [
    286     "source/talk/p2p/base/constants.cc",
    287     "source/talk/p2p/base/constants.h",
    288   ]
    289   public_deps = [
    290     ":jingle_deps",
    291   ]
    292   configs += [
    293     ":jingle_unexported_configs"
    294   ]
    295   public_configs = [
    296     ":jingle_direct_dependent_configs",
    297   ]
    298   all_dependent_configs = [
    299     ":jingle_all_dependent_configs",
    300   ]
    301 }
    302 
    303 # GYP version: third_party/libjingle.gyp:peerconnnection_server
    304 #TODO(GYP): Switch to executable when WebRTC dependency is resolved.
    305 source_set("peerconnnection_server") {
    306   sources = [
    307     "source/talk/examples/peerconnection/server/data_socket.cc",
    308     "source/talk/examples/peerconnection/server/data_socket.h",
    309     "source/talk/examples/peerconnection/server/main.cc",
    310     "source/talk/examples/peerconnection/server/peer_channel.cc",
    311     "source/talk/examples/peerconnection/server/peer_channel.h",
    312     "source/talk/examples/peerconnection/server/utils.cc",
    313     "source/talk/examples/peerconnection/server/utils.h",
    314   ]
    315   include_dirs = [
    316     "source",
    317   ]
    318   public_deps = [
    319     ":jingle_deps",
    320   ]
    321   deps = [
    322     ":libjingle",
    323     ":jingle_deps",
    324   ]
    325   configs += [
    326     ":jingle_unexported_configs"
    327   ]
    328   public_configs = [
    329     ":jingle_direct_dependent_configs",
    330   ]
    331   all_dependent_configs = [
    332     ":jingle_all_dependent_configs",
    333   ]
    334   if (is_win) {
    335     # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
    336     cflags = [ "/wd4309" ]
    337   }
    338 }
    339 
    340 if (enable_webrtc) {
    341 
    342   source_set("libjingle_webrtc") {
    343     sources = [
    344       "overrides/init_webrtc.cc",
    345       "overrides/init_webrtc.h",
    346     ]
    347     configs += [ ":jingle_unexported_configs" ]
    348     public_configs = [ ":jingle_direct_dependent_configs" ]
    349     deps = [ ":libjingle_webrtc_common" ]
    350   }
    351 
    352   # Note: this does not support the shared library build of libpeerconnection
    353   # as is supported in the GYP build. It's not clear what this is used for.
    354   source_set("libjingle_webrtc_common") {
    355     sources = [
    356       "overrides/talk/media/webrtc/webrtcexport.h",
    357 
    358       "source/talk/app/webrtc/audiotrack.cc",
    359       "source/talk/app/webrtc/audiotrack.h",
    360       "source/talk/app/webrtc/audiotrackrenderer.cc",
    361       "source/talk/app/webrtc/audiotrackrenderer.h",
    362       "source/talk/app/webrtc/datachannel.cc",
    363       "source/talk/app/webrtc/datachannel.h",
    364       "source/talk/app/webrtc/dtmfsender.cc",
    365       "source/talk/app/webrtc/dtmfsender.h",
    366       "source/talk/app/webrtc/jsep.h",
    367       "source/talk/app/webrtc/jsepicecandidate.cc",
    368       "source/talk/app/webrtc/jsepicecandidate.h",
    369       "source/talk/app/webrtc/jsepsessiondescription.cc",
    370       "source/talk/app/webrtc/jsepsessiondescription.h",
    371       "source/talk/app/webrtc/localaudiosource.cc",
    372       "source/talk/app/webrtc/localaudiosource.h",
    373       "source/talk/app/webrtc/mediaconstraintsinterface.cc",
    374       "source/talk/app/webrtc/mediaconstraintsinterface.h",
    375       "source/talk/app/webrtc/mediastream.cc",
    376       "source/talk/app/webrtc/mediastream.h",
    377       "source/talk/app/webrtc/mediastreamhandler.cc",
    378       "source/talk/app/webrtc/mediastreamhandler.h",
    379       "source/talk/app/webrtc/mediastreaminterface.h",
    380       "source/talk/app/webrtc/mediastreamprovider.h",
    381       "source/talk/app/webrtc/mediastreamproxy.h",
    382       "source/talk/app/webrtc/mediastreamsignaling.cc",
    383       "source/talk/app/webrtc/mediastreamsignaling.h",
    384       "source/talk/app/webrtc/mediastreamtrack.h",
    385       "source/talk/app/webrtc/mediastreamtrackproxy.h",
    386       "source/talk/app/webrtc/notifier.h",
    387       "source/talk/app/webrtc/peerconnection.cc",
    388       "source/talk/app/webrtc/peerconnection.h",
    389       "source/talk/app/webrtc/peerconnectionfactory.cc",
    390       "source/talk/app/webrtc/peerconnectionfactory.h",
    391       "source/talk/app/webrtc/peerconnectioninterface.h",
    392       "source/talk/app/webrtc/portallocatorfactory.cc",
    393       "source/talk/app/webrtc/portallocatorfactory.h",
    394       "source/talk/app/webrtc/remoteaudiosource.cc",
    395       "source/talk/app/webrtc/remoteaudiosource.h",
    396       "source/talk/app/webrtc/remotevideocapturer.cc",
    397       "source/talk/app/webrtc/remotevideocapturer.h",
    398       "source/talk/app/webrtc/sctputils.cc",
    399       "source/talk/app/webrtc/sctputils.h",
    400       "source/talk/app/webrtc/statscollector.cc",
    401       "source/talk/app/webrtc/statscollector.h",
    402       "source/talk/app/webrtc/statstypes.h",
    403       "source/talk/app/webrtc/streamcollection.h",
    404       "source/talk/app/webrtc/umametrics.h",
    405       "source/talk/app/webrtc/videosource.cc",
    406       "source/talk/app/webrtc/videosource.h",
    407       "source/talk/app/webrtc/videosourceinterface.h",
    408       "source/talk/app/webrtc/videosourceproxy.h",
    409       "source/talk/app/webrtc/videotrack.cc",
    410       "source/talk/app/webrtc/videotrack.h",
    411       "source/talk/app/webrtc/videotrackrenderers.cc",
    412       "source/talk/app/webrtc/videotrackrenderers.h",
    413       "source/talk/app/webrtc/webrtcsdp.cc",
    414       "source/talk/app/webrtc/webrtcsdp.h",
    415       "source/talk/app/webrtc/webrtcsession.cc",
    416       "source/talk/app/webrtc/webrtcsession.h",
    417       "source/talk/app/webrtc/webrtcsessiondescriptionfactory.cc",
    418       "source/talk/app/webrtc/webrtcsessiondescriptionfactory.h",
    419       "source/talk/media/base/audiorenderer.h",
    420       "source/talk/media/base/capturemanager.cc",
    421       "source/talk/media/base/capturemanager.h",
    422       "source/talk/media/base/capturerenderadapter.cc",
    423       "source/talk/media/base/capturerenderadapter.h",
    424       "source/talk/media/base/codec.cc",
    425       "source/talk/media/base/codec.h",
    426       "source/talk/media/base/constants.cc",
    427       "source/talk/media/base/constants.h",
    428       "source/talk/media/base/cryptoparams.h",
    429       "source/talk/media/base/filemediaengine.cc",
    430       "source/talk/media/base/filemediaengine.h",
    431       "source/talk/media/base/hybriddataengine.h",
    432       "source/talk/media/base/mediachannel.h",
    433       "source/talk/media/base/mediaengine.cc",
    434       "source/talk/media/base/mediaengine.h",
    435       "source/talk/media/base/rtpdataengine.cc",
    436       "source/talk/media/base/rtpdataengine.h",
    437       "source/talk/media/base/rtpdump.cc",
    438       "source/talk/media/base/rtpdump.h",
    439       "source/talk/media/base/rtputils.cc",
    440       "source/talk/media/base/rtputils.h",
    441       "source/talk/media/base/streamparams.cc",
    442       "source/talk/media/base/streamparams.h",
    443       "source/talk/media/base/videoadapter.cc",
    444       "source/talk/media/base/videoadapter.h",
    445       "source/talk/media/base/videocapturer.cc",
    446       "source/talk/media/base/videocapturer.h",
    447       "source/talk/media/base/videocommon.cc",
    448       "source/talk/media/base/videocommon.h",
    449       "source/talk/media/base/videoframe.cc",
    450       "source/talk/media/base/videoframe.h",
    451       "source/talk/media/devices/dummydevicemanager.cc",
    452       "source/talk/media/devices/dummydevicemanager.h",
    453       "source/talk/media/devices/filevideocapturer.cc",
    454       "source/talk/media/devices/filevideocapturer.h",
    455       "source/talk/media/webrtc/webrtccommon.h",
    456       "source/talk/media/webrtc/webrtcpassthroughrender.cc",
    457       "source/talk/media/webrtc/webrtcpassthroughrender.h",
    458       "source/talk/media/webrtc/webrtctexturevideoframe.cc",
    459       "source/talk/media/webrtc/webrtctexturevideoframe.h",
    460       "source/talk/media/webrtc/webrtcvideocapturer.cc",
    461       "source/talk/media/webrtc/webrtcvideocapturer.h",
    462       "source/talk/media/webrtc/webrtcvideoframe.cc",
    463       "source/talk/media/webrtc/webrtcvideoframe.h",
    464       "source/talk/media/webrtc/webrtcvideoframefactory.cc",
    465       "source/talk/media/webrtc/webrtcvideoframefactory.h",
    466       "source/talk/media/webrtc/webrtcvie.h",
    467       "source/talk/media/webrtc/webrtcvoe.h",
    468       "source/talk/session/media/audiomonitor.cc",
    469       "source/talk/session/media/audiomonitor.h",
    470       "source/talk/session/media/bundlefilter.cc",
    471       "source/talk/session/media/bundlefilter.h",
    472       "source/talk/session/media/call.cc",
    473       "source/talk/session/media/call.h",
    474       "source/talk/session/media/channel.cc",
    475       "source/talk/session/media/channel.h",
    476       "source/talk/session/media/channelmanager.cc",
    477       "source/talk/session/media/channelmanager.h",
    478       "source/talk/session/media/currentspeakermonitor.cc",
    479       "source/talk/session/media/currentspeakermonitor.h",
    480       "source/talk/session/media/externalhmac.cc",
    481       "source/talk/session/media/externalhmac.h",
    482       "source/talk/session/media/mediamessages.cc",
    483       "source/talk/session/media/mediamessages.h",
    484       "source/talk/session/media/mediamonitor.cc",
    485       "source/talk/session/media/mediamonitor.h",
    486       "source/talk/session/media/mediasession.cc",
    487       "source/talk/session/media/mediasession.h",
    488       "source/talk/session/media/mediasessionclient.cc",
    489       "source/talk/session/media/mediasessionclient.h",
    490       "source/talk/session/media/mediasink.h",
    491       "source/talk/session/media/rtcpmuxfilter.cc",
    492       "source/talk/session/media/rtcpmuxfilter.h",
    493       "source/talk/session/media/soundclip.cc",
    494       "source/talk/session/media/soundclip.h",
    495       "source/talk/session/media/srtpfilter.cc",
    496       "source/talk/session/media/srtpfilter.h",
    497       "source/talk/session/media/typingmonitor.cc",
    498       "source/talk/session/media/typingmonitor.h",
    499       "source/talk/session/media/voicechannel.h",
    500       "source/talk/session/tunnel/pseudotcpchannel.cc",
    501       "source/talk/session/tunnel/pseudotcpchannel.h",
    502       "source/talk/session/tunnel/tunnelsessionclient.cc",
    503       "source/talk/session/tunnel/tunnelsessionclient.h",
    504     ]
    505 
    506     configs += [ ":jingle_unexported_configs" ]
    507     public_configs = [ ":jingle_direct_dependent_configs" ]
    508 
    509     deps = [
    510       "//third_party/libsrtp",
    511       "//third_party/webrtc/modules/media_file",
    512       "//third_party/webrtc/modules/video_capture",
    513       "//third_party/webrtc/modules/video_render",
    514     ]
    515 
    516     if (!is_ios) {
    517       # TODO(mallinath) - Enable SCTP for iOS.
    518       sources += [
    519         "source/talk/media/sctp/sctpdataengine.cc",
    520         "source/talk/media/sctp/sctpdataengine.h",
    521       ]
    522       defines = [ "HAVE_SCTP" ]
    523       deps += [ "//third_party/usrsctp" ]
    524     }
    525 
    526     if (is_clang) {
    527       cflags = [ "-Wno-unused-private-field" ]
    528     }
    529   }
    530 
    531   # Note: this does not support the shared library build of libpeerconnection
    532   # as is supported in the GYP build. It's not clear what this is used for.
    533   source_set("libpeerconnection") {
    534     sources = [
    535       "source/talk/media/webrtc/webrtcmediaengine.cc",
    536       "source/talk/media/webrtc/webrtcmediaengine.h",
    537       "source/talk/media/webrtc/webrtcvideoengine.cc",
    538       "source/talk/media/webrtc/webrtcvideoengine.h",
    539       "source/talk/media/webrtc/webrtcvideoengine2.cc",
    540       "source/talk/media/webrtc/webrtcvideoengine2.h",
    541       "source/talk/media/webrtc/webrtcvoiceengine.cc",
    542       "source/talk/media/webrtc/webrtcvoiceengine.h",
    543     ]
    544 
    545     configs += [ ":jingle_unexported_configs" ]
    546     public_configs = [ ":jingle_direct_dependent_configs" ]
    547 
    548     deps = [
    549       ":libjingle_webrtc_common",
    550       "//third_party/webrtc",
    551       "//third_party/webrtc/system_wrappers",
    552       "//third_party/webrtc/voice_engine",
    553     ]
    554   }
    555 
    556 }  # enable_webrtc
    557 
    558 # TODO(GYP): Port libjingle.gyp's enable_webrtc condition block.
    559