blob: 9deef234a356ed214a27c3b7c38a2692ff49eaeb [file] [log] [blame]
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 = [
"third_party/gtest/src/gtest-all.cc",
],
includedirs = [
"third_party/gtest/include",
"third_party/expat-2.0.1/lib",
"third_party/srtp",
"third_party/gtest",
],
cppdefines = [
"LIBJINGLE_UNITTEST",
"EXPAT_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",
],
)
talk.Library(env, name = "jingle",
lin_srcs = [
"base/latebindingsymboltable.cc",
"base/linux.cc",
"base/linuxfdwalk.c",
"base/libdbusglibsymboltable.cc",
"session/phone/libudevsymboltable.cc",
"session/phone/linuxdevicemanager.cc",
"session/phone/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",
],
'mac_libs': [
"-lcrypto",
"-lssl",
],
},
mac_srcs = [
"base/macasyncsocket.cc",
"base/macconversion.cc",
"base/macsocketserver.cc",
"base/macutils.cc",
"base/macwindowpicker.cc",
"base/scoped_autorelease_pool.mm",
"session/phone/carbonvideorenderer.cc",
"session/phone/macdevicemanager.cc",
"session/phone/macdevicemanagermm.mm",
],
posix_srcs = [
"base/unixfilesystem.cc",
"base/opensslidentity.cc",
"base/opensslstreamadapter.cc",
"base/posix.cc",
"base/sslidentity.cc",
"base/sslstreamadapter.cc",
],
linphone_srcs = [
"session/phone/linphonemediaengine.cc",
],
cppdefines = [
"FEATURE_ENABLE_VOICEMAIL",
"EXPAT_RELATIVE_PATH",
"SRTP_RELATIVE_PATH",
"XML_STATIC",
"HAVE_WEBRTC_VOICE",
"HAVE_WEBRTC_VIDEO",
],
srcs = [
"base/asyncfile.cc",
"base/asynchttprequest.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/cpuid.cc",
"base/cpumonitor.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/md5c.c",
"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/openssladapter.cc",
"base/optionsfile.cc",
"base/pathutils.cc",
"base/physicalsocketserver.cc",
"base/proxydetect.cc",
"base/proxyinfo.cc",
"base/proxyserver.cc",
"base/ratetracker.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/stream.cc",
"base/stringdigest.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/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/udpport.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",
"session/phone/audiomonitor.cc",
"session/phone/call.cc",
"session/phone/channel.cc",
"session/phone/channelmanager.cc",
"session/phone/codec.cc",
"session/phone/currentspeakermonitor.cc",
"session/phone/devicemanager.cc",
"session/phone/dummydevicemanager.cc",
"session/phone/filemediaengine.cc",
"session/phone/filevideocapturer.cc",
"session/phone/mediaengine.cc",
"session/phone/mediamessages.cc",
"session/phone/mediamonitor.cc",
"session/phone/mediarecorder.cc",
"session/phone/mediasession.cc",
"session/phone/mediasessionclient.cc",
"session/phone/rtpdump.cc",
"session/phone/rtputils.cc",
"session/phone/rtcpmuxfilter.cc",
"session/phone/soundclip.cc",
"session/phone/srtpfilter.cc",
"session/phone/ssrcmuxfilter.cc",
"session/phone/streamparams.cc",
"session/phone/videoadapter.cc",
"session/phone/videocapturer.cc",
"session/phone/videocommon.cc",
"session/phone/videoframe.cc",
"session/phone/webrtcpassthroughrender.cc",
"session/phone/webrtcvideocapturer.cc",
"session/phone/webrtcvideoengine.cc",
"session/phone/webrtcvideoframe.cc",
"session/phone/webrtcvoiceengine.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/constants.cc",
"xmpp/hangoutpubsubclient.cc",
"xmpp/iqtask.cc",
"xmpp/jid.cc",
"xmpp/moduleimpl.cc",
"xmpp/mucroomconfigtask.cc",
"xmpp/mucroomhistorytask.cc",
"xmpp/mucroomlookuptask.cc",
"xmpp/pubsubclient.cc",
"xmpp/pubsub_task.cc",
"xmpp/pubsubtasks.cc",
"xmpp/receivetask.cc",
"xmpp/saslmechanism.cc",
"xmpp/xmppclient.cc",
"xmpp/xmppengineimpl.cc",
"xmpp/xmppengineimpl_iq.cc",
"xmpp/xmpplogintask.cc",
"xmpp/xmppstanzaparser.cc",
"xmpp/xmpptask.cc",
],
includedirs = [
"third_party/libudev",
"third_party/expat-2.0.1/lib",
"third_party/srtp/include",
"third_party/srtp/crypto/include",
"third_party/openssl/include",
],
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",
"session/phone/win32devicemanager.cc",
"session/phone/gdivideorenderer.cc",
],
mac_ccflags = [
"-Wno-deprecated-declarations",
],
extra_srcs = [
"base/dbus.cc",
"base/json.cc",
"base/linuxwindowpicker.cc",
"base/natserver_main.cc",
"base/maccocoasocketserver.mm",
"base/maccocoathreadhelper.mm",
"xmpp/chatroommoduleimpl.cc",
"xmpp/rostermoduleimpl.cc",
],
)
talk.Library(env, name = "xmpphelp",
libs = [
"jingle",
],
srcs = [
"examples/login/jingleinfotask.cc",
"examples/login/xmppauth.cc",
"examples/login/xmpppump.cc",
"examples/login/xmppsocket.cc",
],
)
talk.Library(env, name = "unittest_main",
libs = [
"gunit",
],
srcs = [
"base/unittest_main.cc",
],
includedirs = [
"third_party/gtest/include",
"third_party/expat-2.0.1/lib",
"third_party/srtp",
"third_party/gtest",
],
cppdefines = [
"LIBJINGLE_UNITTEST",
"EXPAT_RELATIVE_PATH",
"SRTP_RELATIVE_PATH",
],
)
talk.App(env, name = "login",
libs = [
"jingle",
"expat",
"xmpphelp",
],
srcs = [
"examples/login/xmppthread.cc",
"examples/login/login_main.cc",
],
posix_libs = [
"crypto",
"ssl",
],
lin_libs = [
# :TODO: (kedong) add nexus videorenderer later
# "videorenderer",
],
)
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 = [
"crypto",
"ssl",
],
lin_libs = [
# :TODO: (kedong) add nexus videorenderer later
# "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/presenceouttask.cc",
"examples/call/presencepushtask.cc",
],
libs = [
"jingle",
"expat",
"srtp",
"xmpphelp",
"VoiceEngine_Linux_gcc",
"WebRtcMediaEngine",
"vcme_audio",
"nexus",
],
)
talk.App(env, name = "relayserver",
libs = [
"jingle",
],
srcs = [
"p2p/base/relayserver_main.cc",
],
)
talk.App(env, name = "stunserver",
libs = [
"jingle",
],
srcs = [
"p2p/base/stunserver_main.cc",
],
)
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 = [
"LIBJINGLE_UNITTEST",
"EXPAT_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/buffer_unittest.cc",
"base/bytebuffer_unittest.cc",
"base/cpuid_unittest.cc",
"base/cpumonitor_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/messagequeue_unittest.cc",
"base/multipart_unittest.cc",
"base/nat_unittest.cc",
"base/network_unittest.cc",
"base/optionsfile_unittest.cc",
"base/pathutils_unittest.cc",
"base/physicalsocketserver_unittest.cc",
"base/proxy_unittest.cc",
"base/proxydetect_unittest.cc",
"base/ratetracker_unittest.cc",
"base/referencecountedsingletonfactory_unittest.cc",
"base/rollingaccumulator_unittest.cc",
"base/sharedexclusivelock_unittest.cc",
"base/signalthread_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",
],
includedirs = [
"third_party/gtest/include",
"third_party/expat-2.0.1/lib",
"third_party/srtp",
"third_party/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 = [
"crypto",
"ssl",
],
cppdefines = [
"LIBJINGLE_UNITTEST",
"EXPAT_RELATIVE_PATH",
"SRTP_RELATIVE_PATH",
],
srcs = [
"p2p/base/p2ptransportchannel_unittest.cc",
"p2p/base/port_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/client/connectivitychecker_unittest.cc",
"p2p/client/portallocator_unittest.cc",
],
includedirs = [
"third_party/gtest/include",
"third_party/expat-2.0.1/lib",
"third_party/srtp",
"third_party/gtest",
],
libs = [
"jingle",
"expat",
],
)
talk.Unittest(env, name = "media",
libs = [
"jingle",
"expat",
"srtp",
],
srcs = [
"session/phone/channel_unittest.cc",
"session/phone/channelmanager_unittest.cc",
"session/phone/codec_unittest.cc",
"session/phone/currentspeakermonitor_unittest.cc",
"session/phone/devicemanager_unittest.cc",
"session/phone/dummydevicemanager_unittest.cc",
"session/phone/filemediaengine_unittest.cc",
"session/phone/filevideocapturer_unittest.cc",
"session/phone/mediarecorder_unittest.cc",
"session/phone/mediamessages_unittest.cc",
"session/phone/mediasession_unittest.cc",
"session/phone/mediasessionclient_unittest.cc",
"session/phone/rtcpmuxfilter_unittest.cc",
"session/phone/rtpdump_unittest.cc",
"session/phone/rtputils_unittest.cc",
"session/phone/srtpfilter_unittest.cc",
"session/phone/ssrcmuxfilter_unittest.cc",
"session/phone/testutils.cc",
"session/phone/videocapturer_unittest.cc",
"session/phone/videocommon_unittest.cc",
"session/phone/webrtcpassthroughrender_unittest.cc",
"session/phone/webrtcvideocapturer_unittest.cc",
"session/phone/webrtcvideoengine_unittest.cc",
"session/phone/webrtcvideoframe_unittest.cc",
"session/phone/webrtcvoiceengine_unittest.cc",
],
includedirs = [
"third_party/gtest/include",
"third_party/expat-2.0.1/lib",
"third_party/srtp",
"third_party/gtest",
],
cppdefines = [
"LIBJINGLE_UNITTEST",
"EXPAT_RELATIVE_PATH",
"SRTP_RELATIVE_PATH",
],
win_libs = [
"winmm.lib",
"strmiids",
],
)
talk.Unittest(env, name = "sound",
libs = [
"jingle",
],
srcs = [
"sound/automaticallychosensoundsystem_unittest.cc",
],
mac_libs = [
"crypto",
"ssl",
],
includedirs = [
"third_party/gtest/include",
"third_party/expat-2.0.1/lib",
"third_party/srtp",
"third_party/gtest",
],
cppdefines = [
"LIBJINGLE_UNITTEST",
"EXPAT_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 = [
"crypto",
"ssl",
],
includedirs = [
"third_party/gtest/include",
"third_party/expat-2.0.1/lib",
"third_party/srtp",
"third_party/gtest",
],
cppdefines = [
"LIBJINGLE_UNITTEST",
"EXPAT_RELATIVE_PATH",
"SRTP_RELATIVE_PATH",
],
)
talk.Unittest(env, name = "xmpp",
mac_libs = [
"crypto",
"ssl",
],
cppdefines = [
"LIBJINGLE_UNITTEST",
"EXPAT_RELATIVE_PATH",
"SRTP_RELATIVE_PATH",
],
srcs = [
"xmpp/hangoutpubsubclient_unittest.cc",
"xmpp/jid_unittest.cc",
"xmpp/mucroomconfigtask_unittest.cc",
"xmpp/mucroomlookuptask_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 = [
"third_party/gtest/include",
"third_party/expat-2.0.1/lib",
"third_party/srtp",
"third_party/gtest",
],
libs = [
"jingle",
"expat",
],
extra_srcs = [
"xmpp/chatroommodule_unittest.cc",
],
)