# -*- Python -*-
import talk

Import('env')

# local sources
talk.Library(
  env,
  name = 'webrtcv1',
  srcs = [
    'peerconnectionimpl.cc',
    'peerconnectionproxy.cc',
    'peerconnectionfactory.cc',
    'webrtcjson.cc',
    'webrtcsession.cc',
  ],
)

talk.Unittest(
  env,
  name = 'webrtcv1',
  srcs = [
    'peerconnection_unittest.cc',
    'unittest_utilities.cc',
    'webrtcsession_unittest.cc',
  ],
  libs = [
    'base',
    'expat',
    'jpeg',
    'json',
    'p2p',
    'phone',
    'srtp',
    'webrtcv1',
    'xmpp',
    'xmllite',
    'yuvscaler'
  ],
  include_talk_media_libs = True,
  mac_libs = [
    'crypto',
    'ssl',
  ],
  mac_FRAMEWORKS = [
    'Foundation',
    'IOKit',
    'QTKit',
  ],
  win_link_flags = [('', '/nodefaultlib:libcmt')[env.Bit('debug')]],
  lin_libs = [
    'rt',
    'dl',
    'sound',
    'X11',
    'Xext',
    'Xfixes',
    'Xrandr'
  ],
)
