import talk
Import("env")

talk.Library(env, name = "expat",
             cppdefines = [
               "XML_STATIC",
             ],
             srcs = [
               "third_party/expat-2.0.1/lib/xmlparse.c",
               "third_party/expat-2.0.1/lib/xmlrole.c",
               "third_party/expat-2.0.1/lib/xmltok.c",
             ],
             includedirs = [
               "third_party/expat-2.0.1/lib",
             ],
             win_cppdefines = [
               "COMPILED_FROM_DSP",
             ],
             posix_cppdefines = [
               "HAVE_EXPAT_CONFIG_H",
             ],
)
talk.Library(env, name = "gunit",
             srcs = [
               "testing/gtest/src/gtest-all.cc",
             ],
             includedirs = [
               "testing/gtest/include",
               "third_party/expat-2.0.1/lib",
               "third_party/srtp",
               "testing/gtest",
             ],
             cppdefines = [
               "EXPAT_RELATIVE_PATH",
               "GTEST_RELATIVE_PATH",
               "SRTP_RELATIVE_PATH",
             ],
)
talk.Library(env, name = "srtp",
             srcs = [
               "third_party/srtp/crypto/cipher/aes.c",
               "third_party/srtp/crypto/cipher/aes_cbc.c",
               "third_party/srtp/crypto/cipher/aes_icm.c",
               "third_party/srtp/crypto/cipher/cipher.c",
               "third_party/srtp/crypto/cipher/null_cipher.c",
               "third_party/srtp/crypto/hash/auth.c",
               "third_party/srtp/crypto/hash/hmac.c",
               "third_party/srtp/crypto/hash/null_auth.c",
               "third_party/srtp/crypto/hash/sha1.c",
               "third_party/srtp/crypto/replay/rdb.c",
               "third_party/srtp/crypto/replay/rdbx.c",
               "third_party/srtp/crypto/replay/ut_sim.c",
               "third_party/srtp/crypto/math/datatypes.c",
               "third_party/srtp/crypto/math/stat.c",
               "third_party/srtp/crypto/kernel/alloc.c",
               "third_party/srtp/crypto/kernel/crypto_kernel.c",
               "third_party/srtp/crypto/kernel/err.c",
               "third_party/srtp/crypto/kernel/key.c",
               "third_party/srtp/crypto/rng/ctr_prng.c",
               "third_party/srtp/crypto/rng/rand_source.c",
               "third_party/srtp/srtp/ekt.c",
               "third_party/srtp/srtp/srtp.c",
             ],
             includedirs = [
               "third_party/srtp/include",
               "third_party/srtp/crypto/include",
             ],
             win_ccflags = [
               "/wd4701",
               "/wd4702",
             ],
)
# Set up the SSL/TLS includes
if 'NSS_BUILD_PLATFORM' in env['ENV']:
             SSL_INCLUDES = [
               "third_party/mozilla/dist/public/nss",
               "third_party/mozilla/dist/" + env['ENV']['NSS_BUILD_PLATFORM']+ "/include"
             ]
             SSL_LIBS = [
               "ssl3",
               "nss3",
               "nssutil3",
               "plc4",
               "plds4",
               "nspr4",
             ]
else:
             SSL_INCLUDES = ["third_party/openssl/include"]
             SSL_LIBS = ["crypto", "ssl"]

talk.Library(env, name = "jingle",
             lin_packages = [
               "x11",
               "xcomposite",
               "xrender",
             ],
             lin_srcs = [
               "base/latebindingsymboltable.cc",
               "base/latebindingsymboltable.h.def",
               "base/latebindingsymboltable.cc.def",
               "base/linux.cc",
               "base/linuxfdwalk.c",
               "base/linuxwindowpicker.cc",
               "media/devices/libudevsymboltable.cc",
               "media/devices/linuxdeviceinfo.cc",
               "media/devices/linuxdevicemanager.cc",
               "media/devices/v4llookup.cc",
               "sound/alsasoundsystem.cc",
               "sound/alsasymboltable.cc",
               "sound/linuxsoundsystem.cc",
               "sound/pulseaudiosoundsystem.cc",
               "sound/pulseaudiosymboltable.cc",
             ],
             dependent_target_settings = {
               'lin_libs': [
                 "dl",
                 "pthread",
                 "rt",
                 "gthread-2.0",
               ],
               'mac_libs': SSL_LIBS,
               'win_libs': [
                 "winmm.lib",
               ],
             },
             mac_srcs = [
               "base/macasyncsocket.cc",
               "base/maccocoasocketserver.mm",
               "base/maccocoathreadhelper.mm",
               "base/macconversion.cc",
               "base/macsocketserver.cc",
               "base/macutils.cc",
               "base/macwindowpicker.cc",
               "base/scoped_autorelease_pool.mm",
               "media/devices/carbonvideorenderer.cc",
               "media/devices/macdeviceinfo.cc",
               "media/devices/macdevicemanager.cc",
               "media/devices/macdevicemanagermm.mm",
             ],
             posix_srcs = [
               "base/unixfilesystem.cc",
               "base/posix.cc",
             ],
             linphone_srcs = [
               "media/other/linphonemediaengine.cc",
             ],
             cppdefines = [
               "FEATURE_ENABLE_VOICEMAIL",
               "EXPAT_RELATIVE_PATH",
               "GTEST_RELATIVE_PATH",
               "SRTP_RELATIVE_PATH",
               "XML_STATIC",
             ],
             srcs = [
               "base/asyncfile.cc",
               "base/asynchttprequest.cc",
               "base/asyncinvoker.cc",
               "base/asyncsocket.cc",
               "base/asynctcpsocket.cc",
               "base/asyncudpsocket.cc",
               "base/autodetectproxy.cc",
               "base/bandwidthsmoother.cc",
               "base/base64.cc",
               "base/basicpacketsocketfactory.cc",
               "base/bytebuffer.cc",
               "base/checks.cc",
               "base/common.cc",
               "base/cpumonitor.cc",
               "base/crc32.cc",
               "base/diskcache.cc",
               "base/event.cc",
               "base/filelock.cc",
               "base/fileutils.cc",
               "base/firewallsocketserver.cc",
               "base/flags.cc",
               "base/helpers.cc",
               "base/host.cc",
               "base/httpbase.cc",
               "base/httpclient.cc",
               "base/httpcommon.cc",
               "base/httprequest.cc",
               "base/httpserver.cc",
               "base/ipaddress.cc",
               "base/logging.cc",
               "base/md5.cc",
               "base/messagedigest.cc",
               "base/messagehandler.cc",
               "base/messagequeue.cc",
               "base/multipart.cc",
               "base/natserver.cc",
               "base/natsocketfactory.cc",
               "base/nattypes.cc",
               "base/nethelpers.cc",
               "base/network.cc",
               "base/nssidentity.cc",
               "base/nssstreamadapter.cc",
               "base/openssladapter.cc",
               "base/openssldigest.cc",
               "base/opensslidentity.cc",
               "base/opensslstreamadapter.cc",
               "base/optionsfile.cc",
               "base/pathutils.cc",
               "base/physicalsocketserver.cc",
               "base/profiler.cc",
               "base/proxydetect.cc",
               "base/proxyinfo.cc",
               "base/proxyserver.cc",
               "base/ratelimiter.cc",
               "base/ratetracker.cc",
               "base/sha1.cc",
               "base/sharedexclusivelock.cc",
               "base/signalthread.cc",
               "base/socketadapters.cc",
               "base/socketaddress.cc",
               "base/socketaddresspair.cc",
               "base/socketpool.cc",
               "base/socketstream.cc",
               "base/ssladapter.cc",
               "base/sslsocketfactory.cc",
               "base/sslidentity.cc",
               "base/sslstreamadapter.cc",
               "base/sslstreamadapterhelper.cc",
               "base/stream.cc",
               "base/stringencode.cc",
               "base/stringutils.cc",
               "base/systeminfo.cc",
               "base/task.cc",
               "base/taskparent.cc",
               "base/taskrunner.cc",
               "base/testclient.cc",
               "base/thread.cc",
               "base/timeutils.cc",
               "base/timing.cc",
               "base/transformadapter.cc",
               "base/urlencode.cc",
               "base/versionparsing.cc",
               "base/virtualsocketserver.cc",
               "base/worker.cc",
               "p2p/base/constants.cc",
               "p2p/base/dtlstransportchannel.cc",
               "p2p/base/p2ptransport.cc",
               "p2p/base/p2ptransportchannel.cc",
               "p2p/base/parsing.cc",
               "p2p/base/port.cc",
               "p2p/base/portallocator.cc",
               "p2p/base/portallocatorsessionproxy.cc",
               "p2p/base/portproxy.cc",
               "p2p/base/pseudotcp.cc",
               "p2p/base/relayport.cc",
               "p2p/base/relayserver.cc",
               "p2p/base/rawtransport.cc",
               "p2p/base/rawtransportchannel.cc",
               "p2p/base/session.cc",
               "p2p/base/sessiondescription.cc",
               "p2p/base/sessionmanager.cc",
               "p2p/base/sessionmessages.cc",
               "p2p/base/stun.cc",
               "p2p/base/stunport.cc",
               "p2p/base/stunrequest.cc",
               "p2p/base/stunserver.cc",
               "p2p/base/tcpport.cc",
               "p2p/base/transport.cc",
               "p2p/base/transportchannel.cc",
               "p2p/base/transportchannelproxy.cc",
               "p2p/base/transportdescriptionfactory.cc",
               "p2p/base/turnport.cc",
               "p2p/base/turnserver.cc",
               "p2p/client/basicportallocator.cc",
               "p2p/client/connectivitychecker.cc",
               "p2p/client/httpportallocator.cc",
               "p2p/client/socketmonitor.cc",
               "session/tunnel/pseudotcpchannel.cc",
               "session/tunnel/tunnelsessionclient.cc",
               "session/tunnel/securetunnelsessionclient.cc",
               "media/base/capturemanager.cc",
               "media/base/capturerenderadapter.cc",
               "media/base/codec.cc",
               "media/base/constants.cc",
               "media/base/cpuid.cc",
               "media/base/filemediaengine.cc",
               "media/base/hybridvideoengine.cc",
               "media/base/mediaengine.cc",
               "media/base/rtpdataengine.cc",
               "media/base/rtpdump.cc",
               "media/base/rtputils.cc",
               "media/base/streamparams.cc",
               "media/base/videoadapter.cc",
               "media/base/videocapturer.cc",
               "media/base/mutedvideocapturer.cc",
               "media/base/videocommon.cc",
               "media/base/videoframe.cc",
               "media/devices/devicemanager.cc",
               "media/devices/filevideocapturer.cc",
               "session/media/audiomonitor.cc",
               "session/media/call.cc",
               "session/media/channel.cc",
               "session/media/channelmanager.cc",
               "session/media/currentspeakermonitor.cc",
               "session/media/mediamessages.cc",
               "session/media/mediamonitor.cc",
               "session/media/mediarecorder.cc",
               "session/media/mediasession.cc",
               "session/media/mediasessionclient.cc",
               "session/media/rtcpmuxfilter.cc",
               "session/media/rtcpmuxfilter.cc",
               "session/media/soundclip.cc",
               "session/media/srtpfilter.cc",
               "session/media/ssrcmuxfilter.cc",
               "session/media/typingmonitor.cc",
               "sound/nullsoundsystem.cc",
               "sound/nullsoundsystemfactory.cc",
               "sound/platformsoundsystem.cc",
               "sound/platformsoundsystemfactory.cc",
               "sound/soundsysteminterface.cc",
               "sound/soundsystemproxy.cc",
               "xmllite/qname.cc",
               "xmllite/xmlbuilder.cc",
               "xmllite/xmlconstants.cc",
               "xmllite/xmlelement.cc",
               "xmllite/xmlnsstack.cc",
               "xmllite/xmlparser.cc",
               "xmllite/xmlprinter.cc",
               "xmpp/chatroommoduleimpl.cc",
               "xmpp/constants.cc",
               "xmpp/discoitemsquerytask.cc",
               "xmpp/hangoutpubsubclient.cc",
               "xmpp/iqtask.cc",
               "xmpp/jid.cc",
               "xmpp/jingleinfotask.cc",
               "xmpp/moduleimpl.cc",
               "xmpp/mucroomconfigtask.cc",
               "xmpp/mucroomdiscoverytask.cc",
               "xmpp/mucroomlookuptask.cc",
               "xmpp/mucroomuniquehangoutidtask.cc",
               "xmpp/pingtask.cc",
               "xmpp/presenceouttask.cc",
               "xmpp/presencereceivetask.cc",
               "xmpp/presencestatus.cc",
               "xmpp/pubsubclient.cc",
               "xmpp/pubsub_task.cc",
               "xmpp/pubsubtasks.cc",
               "xmpp/receivetask.cc",
               "xmpp/rostermoduleimpl.cc",
               "xmpp/saslmechanism.cc",
               "xmpp/xmppclient.cc",
               "xmpp/xmppengineimpl.cc",
               "xmpp/xmppengineimpl_iq.cc",
               "xmpp/xmpplogintask.cc",
               "xmpp/xmppstanzaparser.cc",
               "xmpp/xmpptask.cc",
               "xmpp/xmppauth.cc",
               "xmpp/xmpppump.cc",
               "xmpp/xmppsocket.cc",
               "xmpp/xmppthread.cc",
             ],
             includedirs = [
               "third_party/libudev",
               "third_party/expat-2.0.1/lib",
               "testing/gtest/include",
               "third_party/srtp/include",
               "third_party/srtp/crypto/include",
             ] + SSL_INCLUDES,
             win_srcs = [
               "base/diskcache_win32.cc",
               "base/schanneladapter.cc",
               "base/win32.cc",
               "base/win32regkey.cc",
               "base/win32filesystem.cc",
               "base/win32securityerrors.cc",
               "base/win32socketserver.cc",
               "base/win32socketinit.cc",
               "base/win32window.cc",
               "base/win32windowpicker.cc",
               "base/winfirewall.cc",
               "base/winping.cc",
               "media/devices/gdivideorenderer.cc",
               "media/devices/win32deviceinfo.cc",
               "media/devices/win32devicemanager.cc",
             ],
             mac_ccflags = [
               "-Wno-deprecated-declarations",
             ],
             extra_srcs = [
               "media/devices/dummydevicemanager.cc",
               "base/dbus.cc",
               "base/libdbusglibsymboltable.cc",
               "base/json.cc",
               "base/natserver_main.cc",
             ],
)
talk.Library(env, name = "videorenderer",
             lin_srcs = [
               "media/devices/gtkvideorenderer.cc",
             ],
             lin_packages = [
               "gobject-2.0",
               "gthread-2.0",
               "gtk+-2.0",
             ],
)
talk.Library(env, name = "unittest_main",
             libs = [
               "gunit",
             ],
             srcs = [
               "base/unittest_main.cc",
             ],
             includedirs = [
               "testing/gtest/include",
               "third_party/expat-2.0.1/lib",
               "third_party/srtp",
               "testing/gtest",
             ],
             cppdefines = [
               "EXPAT_RELATIVE_PATH",
               "GTEST_RELATIVE_PATH",
               "SRTP_RELATIVE_PATH",
             ],
)
talk.App(env, name = "login",
         libs = [
           "jingle",
           "expat",
         ],
         srcs = [
           "examples/login/login_main.cc",
         ],
         posix_libs = SSL_LIBS,
         lin_libs = [
           "videorenderer",
         ],
)
talk.App(env, name = "chat",
         libs = [
           "jingle",
           "expat",
         ],
         srcs = [
           "examples/chat/chatapp.cc",
           "examples/chat/chat_main.cc",
           "examples/chat/consoletask.cc",
           "examples/chat/textchatreceivetask.cc",
           "examples/chat/textchatsendtask.cc",
         ],
         posix_libs = SSL_LIBS,
)
talk.App(env, name = "call",
         mac_frameworks = [
           "AudioToolbox",
           "AudioUnit",
           "Cocoa",
           "CoreAudio",
           "CoreFoundation",
           "IOKit",
           "QTKit",
           "QuickTime",
         ],
         win_libs = [
           "d3d9.lib",
           "gdi32.lib",
           "powrprof.lib",
           "strmiids.lib",
           "winmm.lib",
         ],
         posix_libs = SSL_LIBS,
         lin_libs = [
           "videorenderer",
         ],
         srcs = [
           "examples/call/call_main.cc",
           "examples/call/callclient.cc",
           "examples/call/console.cc",
           "examples/call/friendinvitesendtask.cc",
           "examples/call/mediaenginefactory.cc",
           "examples/call/mucinviterecvtask.cc",
           "examples/call/mucinvitesendtask.cc",
           "examples/call/presencepushtask.cc",
         ],
         libs = [
           "jingle",
           "expat",
           "srtp",
         ],
)
talk.App(env, name = "relayserver",
         libs = [
           "jingle",
         ],
         srcs = [
           "examples/relayserver/relayserver_main.cc",
         ],
)
talk.App(env, name = "stunserver",
         libs = [
           "jingle",
         ],
         srcs = [
           "examples/stunserver/stunserver_main.cc",
         ],
)
talk.App(env, name = "turnserver",
         lin_libs = [
           "crypto",
           "ssl",
         ],
         srcs = [
           "examples/turnserver/turnserver_main.cc",
         ],
         libs = [
           "jingle",
         ],
)
talk.Unittest(env, name = "base",
              lin_srcs = [
                "base/latebindingsymboltable_unittest.cc",
                "base/linux_unittest.cc",
                "base/linuxfdwalk_unittest.cc",
              ],
              mac_srcs = [
                "base/macsocketserver_unittest.cc",
                "base/macutils_unittest.cc",
                "base/macwindowpicker_unittest.cc",
              ],
              posix_srcs = [
                "base/sslidentity_unittest.cc",
                "base/sslstreamadapter_unittest.cc",
              ],
              cppdefines = [
                "EXPAT_RELATIVE_PATH",
                "GTEST_RELATIVE_PATH",
                "SRTP_RELATIVE_PATH",
              ],
              srcs = [
                "base/asynchttprequest_unittest.cc",
                "base/atomicops_unittest.cc",
                "base/autodetectproxy_unittest.cc",
                "base/bandwidthsmoother_unittest.cc",
                "base/base64_unittest.cc",
                "base/basictypes_unittest.cc",
                "base/bind_unittest.cc",
                "base/buffer_unittest.cc",
                "base/bytebuffer_unittest.cc",
                "base/byteorder_unittest.cc",
                "base/callback_unittest.cc",
                "base/cpumonitor_unittest.cc",
                "base/crc32_unittest.cc",
                "base/event_unittest.cc",
                "base/filelock_unittest.cc",
                "base/fileutils_unittest.cc",
                "base/helpers_unittest.cc",
                "base/host_unittest.cc",
                "base/httpbase_unittest.cc",
                "base/httpcommon_unittest.cc",
                "base/httpserver_unittest.cc",
                "base/ipaddress_unittest.cc",
                "base/logging_unittest.cc",
                "base/md5digest_unittest.cc",
                "base/messagedigest_unittest.cc",
                "base/messagequeue_unittest.cc",
                "base/multipart_unittest.cc",
                "base/nat_unittest.cc",
                "base/network_unittest.cc",
                "base/nullsocketserver_unittest.cc",
                "base/optionsfile_unittest.cc",
                "base/pathutils_unittest.cc",
                "base/physicalsocketserver_unittest.cc",
                "base/profiler_unittest.cc",
                "base/proxy_unittest.cc",
                "base/proxydetect_unittest.cc",
                "base/ratelimiter_unittest.cc",
                "base/ratetracker_unittest.cc",
                "base/referencecountedsingletonfactory_unittest.cc",
                "base/rollingaccumulator_unittest.cc",
                "base/scopedptrcollection_unittest.cc",
                "base/sha1digest_unittest.cc",
                "base/sharedexclusivelock_unittest.cc",
                "base/signalthread_unittest.cc",
                "base/sigslot_unittest.cc",
                "base/socket_unittest.cc",
                "base/socketaddress_unittest.cc",
                "base/stream_unittest.cc",
                "base/stringencode_unittest.cc",
                "base/stringutils_unittest.cc",
                "base/systeminfo_unittest.cc",
                "base/task_unittest.cc",
                "base/testclient_unittest.cc",
                "base/thread_unittest.cc",
                "base/timeutils_unittest.cc",
                "base/urlencode_unittest.cc",
                "base/versionparsing_unittest.cc",
                "base/virtualsocket_unittest.cc",
                "base/windowpicker_unittest.cc",
              ],
              includedirs = [
                "testing/gtest/include",
                "third_party/expat-2.0.1/lib",
                "third_party/srtp",
                "testing/gtest",
              ],
              win_srcs = [
                "base/win32_unittest.cc",
                "base/win32regkey_unittest.cc",
                "base/win32socketserver_unittest.cc",
                "base/win32toolhelp_unittest.cc",
                "base/win32window_unittest.cc",
                "base/win32windowpicker_unittest.cc",
                "base/winfirewall_unittest.cc",
              ],
              libs = [
                "jingle",
              ],
              extra_srcs = [
                "base/dbus_unittest.cc",
                "base/json_unittest.cc",
                "base/linuxwindowpicker_unittest.cc",
              ],
)
talk.Unittest(env, name = "p2p",
              mac_FRAMEWORKS = [
                "Foundation",
                "IOKit",
                "QTKit",
              ],
              mac_libs = SSL_LIBS,
              cppdefines = [
                "EXPAT_RELATIVE_PATH",
                "GTEST_RELATIVE_PATH",
                "SRTP_RELATIVE_PATH",
              ],
              srcs = [
                "p2p/base/dtlstransportchannel_unittest.cc",
                "p2p/base/p2ptransportchannel_unittest.cc",
                "p2p/base/port_unittest.cc",
                "p2p/base/portallocatorsessionproxy_unittest.cc",
                "p2p/base/pseudotcp_unittest.cc",
                "p2p/base/relayport_unittest.cc",
                "p2p/base/relayserver_unittest.cc",
                "p2p/base/session_unittest.cc",
                "p2p/base/stun_unittest.cc",
                "p2p/base/stunport_unittest.cc",
                "p2p/base/stunrequest_unittest.cc",
                "p2p/base/stunserver_unittest.cc",
                "p2p/base/transport_unittest.cc",
                "p2p/base/transportdescriptionfactory_unittest.cc",
                "p2p/base/turnport_unittest.cc",
                "p2p/client/connectivitychecker_unittest.cc",
                "p2p/client/portallocator_unittest.cc",
              ],
              includedirs = [
                "testing/gtest/include",
                "third_party/expat-2.0.1/lib",
                "third_party/srtp",
                "testing/gtest",
              ],
              libs = [
                "jingle",
                "expat",
              ],
)
talk.Unittest(env, name = "media",
              win_libs = [
                "winmm.lib",
                "strmiids",
              ],
              cppdefines = [
                "EXPAT_RELATIVE_PATH",
                "GTEST_RELATIVE_PATH",
                "SRTP_RELATIVE_PATH",
              ],
              srcs = [
                "media/base/capturemanager_unittest.cc",
                "media/base/codec_unittest.cc",
                "media/base/filemediaengine_unittest.cc",
                "media/base/rtpdataengine_unittest.cc",
                "media/base/rtpdump_unittest.cc",
                "media/base/rtputils_unittest.cc",
                "media/base/testutils.cc",
                "media/base/videocapturer_unittest.cc",
                "media/base/videocommon_unittest.cc",
                "media/devices/devicemanager_unittest.cc",
                "media/devices/filevideocapturer_unittest.cc",
                "media/sctp/sctputils_unittest.cc",
                "session/media/channel_unittest.cc",
                "session/media/channelmanager_unittest.cc",
                "session/media/currentspeakermonitor_unittest.cc",
                "session/media/mediarecorder_unittest.cc",
                "session/media/mediamessages_unittest.cc",
                "session/media/mediasession_unittest.cc",
                "session/media/mediasessionclient_unittest.cc",
                "session/media/rtcpmuxfilter_unittest.cc",
                "session/media/srtpfilter_unittest.cc",
                "session/media/ssrcmuxfilter_unittest.cc",
              ],
              includedirs = [
                "testing/gtest/include",
                "third_party/expat-2.0.1/lib",
                "third_party/srtp",
                "testing/gtest",
              ],
              libs = [
                "jingle",
                "expat",
                "srtp",
              ],
              extra_srcs = [
                "media/devices/dummydevicemanager_unittest.cc",
              ],
)
talk.Unittest(env, name = "sound",
              libs = [
                "jingle",
              ],
              srcs = [
                "sound/automaticallychosensoundsystem_unittest.cc",
              ],
              mac_libs = SSL_LIBS,

              includedirs = [
                "testing/gtest/include",
                "third_party/expat-2.0.1/lib",
                "third_party/srtp",
                "testing/gtest",
              ],
              cppdefines = [
                "EXPAT_RELATIVE_PATH",
                "GTEST_RELATIVE_PATH",
                "SRTP_RELATIVE_PATH",
              ],
)
talk.Unittest(env, name = "xmllite",
              libs = [
                "jingle",
                "expat",
              ],
              srcs = [
                "xmllite/qname_unittest.cc",
                "xmllite/xmlbuilder_unittest.cc",
                "xmllite/xmlelement_unittest.cc",
                "xmllite/xmlnsstack_unittest.cc",
                "xmllite/xmlparser_unittest.cc",
                "xmllite/xmlprinter_unittest.cc",
              ],
              mac_libs = SSL_LIBS,
              includedirs = [
                "testing/gtest/include",
                "third_party/expat-2.0.1/lib",
                "third_party/srtp",
                "testing/gtest",
              ],
              cppdefines = [
                "EXPAT_RELATIVE_PATH",
                "GTEST_RELATIVE_PATH",
                "SRTP_RELATIVE_PATH",
              ],
)
talk.Unittest(env, name = "xmpp",
              mac_libs = SSL_LIBS,
              cppdefines = [
                "EXPAT_RELATIVE_PATH",
                "GTEST_RELATIVE_PATH",
                "SRTP_RELATIVE_PATH",
              ],
              srcs = [
                "xmpp/hangoutpubsubclient_unittest.cc",
                "xmpp/jid_unittest.cc",
                "xmpp/mucroomconfigtask_unittest.cc",
                "xmpp/mucroomdiscoverytask_unittest.cc",
                "xmpp/mucroomlookuptask_unittest.cc",
                "xmpp/mucroomuniquehangoutidtask_unittest.cc",
                "xmpp/pingtask_unittest.cc",
                "xmpp/pubsubclient_unittest.cc",
                "xmpp/pubsubtasks_unittest.cc",
                "xmpp/util_unittest.cc",
                "xmpp/xmppengine_unittest.cc",
                "xmpp/xmpplogintask_unittest.cc",
                "xmpp/xmppstanzaparser_unittest.cc",
              ],
              includedirs = [
                "testing/gtest/include",
                "third_party/expat-2.0.1/lib",
                "third_party/srtp",
                "testing/gtest",
              ],
              libs = [
                "jingle",
                "expat",
              ],
              extra_srcs = [
                "xmpp/chatroommodule_unittest.cc",
                "xmpp/rostermodule_unittest.cc",
              ],
)
