1 # Copyright (c) 2011 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 { 6 'variables': { 7 'no_libjingle_logging%': 0, 8 }, 9 'target_defaults': { 10 'defines': [ 11 'FEATURE_ENABLE_SSL', 12 'FEATURE_ENABLE_VOICEMAIL', # TODO(ncarter): Do we really need this? 13 '_USE_32BIT_TIME_T', 14 'SAFE_TO_DEFINE_TALK_BASE_LOGGING_MACROS', 15 'EXPAT_RELATIVE_PATH', 16 ], 17 'configurations': { 18 'Debug': { 19 'defines': [ 20 # TODO(sergeyu): Fix libjingle to use NDEBUG instead of 21 # _DEBUG and remove this define. See below as well. 22 '_DEBUG', 23 ], 24 } 25 }, 26 'include_dirs': [ 27 './overrides', 28 './source', 29 '../../third_party/expat/files' 30 ], 31 'dependencies': [ 32 '../expat/expat.gyp:expat', 33 '../../base/base.gyp:base', 34 '../../net/net.gyp:net_base', 35 ], 36 'direct_dependent_settings': { 37 'include_dirs': [ 38 './overrides', 39 './source', 40 '../../third_party/expat/files' 41 ], 42 'defines': [ 43 'FEATURE_ENABLE_SSL', 44 'FEATURE_ENABLE_VOICEMAIL', 45 'EXPAT_RELATIVE_PATH', 46 ], 47 'conditions': [ 48 ['OS=="win"', { 49 'link_settings': { 50 'libraries': [ 51 '-lsecur32.lib', 52 '-lcrypt32.lib', 53 '-liphlpapi.lib', 54 ], 55 }, 56 }], 57 ['OS=="win"', { 58 'include_dirs': [ 59 '../third_party/platformsdk_win7/files/Include', 60 ], 61 'defines': [ 62 '_CRT_SECURE_NO_WARNINGS', # Suppres warnings about _vsnprinf 63 ], 64 }], 65 ['OS=="linux"', { 66 'defines': [ 67 'LINUX', 68 ], 69 }], 70 ['OS=="mac"', { 71 'defines': [ 72 'OSX', 73 ], 74 }], 75 ['OS=="linux" or OS=="mac" or OS=="freebsd" or OS=="openbsd"', { 76 'defines': [ 77 'POSIX', 78 ], 79 }], 80 ['OS=="openbsd" or OS=="freebsd"', { 81 'defines': [ 82 'BSD', 83 ], 84 }], 85 ['no_libjingle_logging==1', { 86 'defines': [ 87 'NO_LIBJINGLE_LOGGING', 88 ], 89 }], 90 ], 91 }, 92 'all_dependent_settings': { 93 'configurations': { 94 'Debug': { 95 'defines': [ 96 # TODO(sergeyu): Fix libjingle to use NDEBUG instead of 97 # _DEBUG and remove this define. See above as well. 98 '_DEBUG', 99 ], 100 } 101 }, 102 }, 103 'conditions': [ 104 ['OS=="win"', { 105 'include_dirs': [ 106 '../third_party/platformsdk_win7/files/Include', 107 ], 108 }], 109 ['OS=="linux"', { 110 'defines': [ 111 'LINUX', 112 ], 113 }], 114 ['OS=="mac"', { 115 'defines': [ 116 'OSX', 117 ], 118 }], 119 ['OS=="linux" or OS=="mac" or OS=="freebsd" or OS=="openbsd"', { 120 'defines': [ 121 'POSIX', 122 ], 123 }], 124 ['OS=="openbsd" or OS=="freebsd"', { 125 'defines': [ 126 'BSD', 127 ], 128 }], 129 ], 130 }, 131 'targets': [ 132 { 133 'target_name': 'libjingle', 134 'type': '<(library)', 135 'sources': [ 136 'overrides/talk/base/basictypes.h', 137 'overrides/talk/base/constructormagic.h', 138 139 # Need to override logging.h because we need 140 # SAFE_TO_DEFINE_TALK_BASE_LOGGING_MACROS to work. 141 # TODO(sergeyu): push SAFE_TO_DEFINE_TALK_BASE_LOGGING_MACROS to 142 # libjingle and remove this override. 143 'overrides/talk/base/logging.h', 144 145 'overrides/talk/base/scoped_ptr.h', 146 147 # Libjingle's QName is not threadsafe, so we need to use our own version 148 # here. 149 # TODO(sergeyu): Fix QName in Libjingle. 150 'overrides/talk/xmllite/qname.cc', 151 'overrides/talk/xmllite/qname.h', 152 153 'source/talk/base/Equifax_Secure_Global_eBusiness_CA-1.h', 154 'source/talk/base/asyncfile.cc', 155 'source/talk/base/asyncfile.h', 156 'source/talk/base/asynchttprequest.cc', 157 'source/talk/base/asynchttprequest.h', 158 'source/talk/base/asyncpacketsocket.h', 159 'source/talk/base/asyncsocket.cc', 160 'source/talk/base/asyncsocket.h', 161 'source/talk/base/asynctcpsocket.cc', 162 'source/talk/base/asynctcpsocket.h', 163 'source/talk/base/asyncudpsocket.cc', 164 'source/talk/base/asyncudpsocket.h', 165 'source/talk/base/autodetectproxy.cc', 166 'source/talk/base/autodetectproxy.h', 167 'source/talk/base/base64.cc', 168 'source/talk/base/base64.h', 169 'source/talk/base/basicdefs.h', 170 'source/talk/base/basicpacketsocketfactory.cc', 171 'source/talk/base/basicpacketsocketfactory.h', 172 'source/talk/base/bytebuffer.cc', 173 'source/talk/base/bytebuffer.h', 174 'source/talk/base/byteorder.h', 175 'source/talk/base/checks.cc', 176 'source/talk/base/checks.h', 177 'source/talk/base/common.cc', 178 'source/talk/base/common.h', 179 'source/talk/base/criticalsection.h', 180 'source/talk/base/cryptstring.h', 181 'source/talk/base/diskcache.cc', 182 'source/talk/base/diskcache.h', 183 'source/talk/base/event.cc', 184 'source/talk/base/event.h', 185 'source/talk/base/fileutils.cc', 186 'source/talk/base/fileutils.h', 187 'source/talk/base/firewallsocketserver.cc', 188 'source/talk/base/firewallsocketserver.h', 189 'source/talk/base/flags.cc', 190 'source/talk/base/flags.h', 191 'source/talk/base/helpers.cc', 192 'source/talk/base/helpers.h', 193 'source/talk/base/host.cc', 194 'source/talk/base/host.h', 195 'source/talk/base/httpbase.cc', 196 'source/talk/base/httpbase.h', 197 'source/talk/base/httpclient.h', 198 'source/talk/base/httpclient.cc', 199 'source/talk/base/httpcommon-inl.h', 200 'source/talk/base/httpcommon.cc', 201 'source/talk/base/httpcommon.h', 202 'source/talk/base/httprequest.cc', 203 'source/talk/base/httprequest.h', 204 'source/talk/base/linked_ptr.h', 205 'source/talk/base/logging.cc', 206 'source/talk/base/md5.h', 207 'source/talk/base/md5c.c', 208 'source/talk/base/messagehandler.cc', 209 'source/talk/base/messagehandler.h', 210 'source/talk/base/messagequeue.cc', 211 'source/talk/base/messagequeue.h', 212 'source/talk/base/nethelpers.cc', 213 'source/talk/base/nethelpers.h', 214 'source/talk/base/network.cc', 215 'source/talk/base/network.h', 216 'source/talk/base/pathutils.cc', 217 'source/talk/base/pathutils.h', 218 'source/talk/base/physicalsocketserver.cc', 219 'source/talk/base/physicalsocketserver.h', 220 'source/talk/base/proxydetect.cc', 221 'source/talk/base/proxydetect.h', 222 'source/talk/base/proxyinfo.cc', 223 'source/talk/base/proxyinfo.h', 224 'source/talk/base/ratetracker.cc', 225 'source/talk/base/ratetracker.h', 226 'source/talk/base/sec_buffer.h', 227 'source/talk/base/signalthread.cc', 228 'source/talk/base/signalthread.h', 229 'source/talk/base/sigslot.h', 230 'source/talk/base/sigslotrepeater.h', 231 'source/talk/base/socket.h', 232 'source/talk/base/socketadapters.cc', 233 'source/talk/base/socketadapters.h', 234 'source/talk/base/socketaddress.cc', 235 'source/talk/base/socketaddress.h', 236 'source/talk/base/socketaddresspair.cc', 237 'source/talk/base/socketaddresspair.h', 238 'source/talk/base/socketfactory.h', 239 'source/talk/base/socketpool.cc', 240 'source/talk/base/socketpool.h', 241 'source/talk/base/socketserver.h', 242 'source/talk/base/socketstream.cc', 243 'source/talk/base/socketstream.h', 244 'source/talk/base/ssladapter.cc', 245 'source/talk/base/ssladapter.h', 246 'source/talk/base/sslsocketfactory.cc', 247 'source/talk/base/sslsocketfactory.h', 248 'source/talk/base/stream.cc', 249 'source/talk/base/stream.h', 250 'source/talk/base/stringdigest.cc', 251 'source/talk/base/stringdigest.h', 252 'source/talk/base/stringencode.cc', 253 'source/talk/base/stringencode.h', 254 'source/talk/base/stringutils.cc', 255 'source/talk/base/stringutils.h', 256 'source/talk/base/task.cc', 257 'source/talk/base/task.h', 258 'source/talk/base/taskparent.cc', 259 'source/talk/base/taskparent.h', 260 'source/talk/base/taskrunner.cc', 261 'source/talk/base/taskrunner.h', 262 'source/talk/base/thread.cc', 263 'source/talk/base/thread.h', 264 'source/talk/base/time.cc', 265 'source/talk/base/time.h', 266 'source/talk/base/urlencode.cc', 267 'source/talk/base/urlencode.h', 268 'source/talk/xmllite/xmlbuilder.cc', 269 'source/talk/xmllite/xmlbuilder.h', 270 'source/talk/xmllite/xmlconstants.cc', 271 'source/talk/xmllite/xmlconstants.h', 272 'source/talk/xmllite/xmlelement.cc', 273 'source/talk/xmllite/xmlelement.h', 274 'source/talk/xmllite/xmlnsstack.cc', 275 'source/talk/xmllite/xmlnsstack.h', 276 'source/talk/xmllite/xmlparser.cc', 277 'source/talk/xmllite/xmlparser.h', 278 'source/talk/xmllite/xmlprinter.cc', 279 'source/talk/xmllite/xmlprinter.h', 280 'source/talk/xmpp/asyncsocket.h', 281 'source/talk/xmpp/constants.cc', 282 'source/talk/xmpp/constants.h', 283 'source/talk/xmpp/jid.cc', 284 'source/talk/xmpp/jid.h', 285 'source/talk/xmpp/plainsaslhandler.h', 286 'source/talk/xmpp/prexmppauth.h', 287 'source/talk/xmpp/ratelimitmanager.cc', 288 'source/talk/xmpp/ratelimitmanager.h', 289 'source/talk/xmpp/saslcookiemechanism.h', 290 'source/talk/xmpp/saslhandler.h', 291 'source/talk/xmpp/saslmechanism.cc', 292 'source/talk/xmpp/saslmechanism.h', 293 'source/talk/xmpp/saslplainmechanism.h', 294 'source/talk/xmpp/xmppclient.cc', 295 'source/talk/xmpp/xmppclient.h', 296 'source/talk/xmpp/xmppclientsettings.h', 297 'source/talk/xmpp/xmppengine.h', 298 'source/talk/xmpp/xmppengineimpl.cc', 299 'source/talk/xmpp/xmppengineimpl.h', 300 'source/talk/xmpp/xmppengineimpl_iq.cc', 301 'source/talk/xmpp/xmpplogintask.cc', 302 'source/talk/xmpp/xmpplogintask.h', 303 'source/talk/xmpp/xmppstanzaparser.cc', 304 'source/talk/xmpp/xmppstanzaparser.h', 305 'source/talk/xmpp/xmpptask.cc', 306 'source/talk/xmpp/xmpptask.h', 307 ], 308 'conditions': [ 309 ['OS=="win"', { 310 'sources': [ 311 'overrides/talk/base/win32socketinit.cc', 312 'source/talk/base/schanneladapter.cc', 313 'source/talk/base/schanneladapter.h', 314 'source/talk/base/win32.h', 315 'source/talk/base/win32.cc', 316 'source/talk/base/win32filesystem.cc', 317 'source/talk/base/win32filesystem.h', 318 'source/talk/base/win32window.h', 319 'source/talk/base/win32window.cc', 320 'source/talk/base/win32securityerrors.cc', 321 'source/talk/base/winfirewall.cc', 322 'source/talk/base/winfirewall.h', 323 'source/talk/base/winping.cc', 324 'source/talk/base/winping.h', 325 ], 326 }], 327 ['OS=="linux" or OS=="mac" or OS=="freebsd" or OS=="openbsd"', { 328 'sources': [ 329 'source/talk/base/sslstreamadapter.cc', 330 'source/talk/base/sslstreamadapter.h', 331 'source/talk/base/unixfilesystem.cc', 332 'source/talk/base/unixfilesystem.h', 333 ], 334 }], 335 ['OS=="linux"', { 336 'sources': [ 337 'source/talk/base/linux.cc', 338 'source/talk/base/linux.h', 339 ], 340 }], 341 ['OS=="mac"', { 342 'sources': [ 343 'source/talk/base/macconversion.cc', 344 'source/talk/base/macconversion.h', 345 'source/talk/base/macutils.cc', 346 'source/talk/base/macutils.h', 347 ], 348 }], 349 ], 350 }, 351 # This has to be is a separate project due to a bug in MSVS: 352 # https://connect.microsoft.com/VisualStudio/feedback/details/368272/duplicate-cpp-filename-in-c-project-visual-studio-2008 353 # We have two files named "constants.cc" and MSVS doesn't handle this 354 # properly. 355 { 356 'target_name': 'libjingle_p2p', 357 'type': '<(library)', 358 'sources': [ 359 'source/talk/p2p/base/candidate.h', 360 'source/talk/p2p/base/common.h', 361 'source/talk/p2p/base/constants.cc', 362 'source/talk/p2p/base/constants.h', 363 'source/talk/p2p/base/p2ptransport.cc', 364 'source/talk/p2p/base/p2ptransport.h', 365 'source/talk/p2p/base/p2ptransportchannel.cc', 366 'source/talk/p2p/base/p2ptransportchannel.h', 367 'source/talk/p2p/base/port.cc', 368 'source/talk/p2p/base/port.h', 369 'source/talk/p2p/base/portallocator.h', 370 'source/talk/p2p/base/pseudotcp.cc', 371 'source/talk/p2p/base/pseudotcp.h', 372 'source/talk/p2p/base/rawtransport.cc', 373 'source/talk/p2p/base/rawtransport.h', 374 'source/talk/p2p/base/rawtransportchannel.cc', 375 'source/talk/p2p/base/rawtransportchannel.h', 376 'source/talk/p2p/base/relayport.cc', 377 'source/talk/p2p/base/relayport.h', 378 'source/talk/p2p/base/session.cc', 379 'source/talk/p2p/base/session.h', 380 'source/talk/p2p/base/sessionclient.h', 381 'source/talk/p2p/base/sessiondescription.cc', 382 'source/talk/p2p/base/sessiondescription.h', 383 'source/talk/p2p/base/sessionid.h', 384 'source/talk/p2p/base/sessionmanager.cc', 385 'source/talk/p2p/base/sessionmanager.h', 386 'source/talk/p2p/base/sessionmessages.cc', 387 'source/talk/p2p/base/sessionmessages.h', 388 'source/talk/p2p/base/parsing.cc', 389 'source/talk/p2p/base/parsing.h', 390 'source/talk/p2p/base/stun.cc', 391 'source/talk/p2p/base/stun.h', 392 'source/talk/p2p/base/stunport.cc', 393 'source/talk/p2p/base/stunport.h', 394 'source/talk/p2p/base/stunrequest.cc', 395 'source/talk/p2p/base/stunrequest.h', 396 'source/talk/p2p/base/tcpport.cc', 397 'source/talk/p2p/base/tcpport.h', 398 'source/talk/p2p/base/transport.cc', 399 'source/talk/p2p/base/transport.h', 400 'source/talk/p2p/base/transportchannel.cc', 401 'source/talk/p2p/base/transportchannel.h', 402 'source/talk/p2p/base/transportchannelimpl.h', 403 'source/talk/p2p/base/transportchannelproxy.cc', 404 'source/talk/p2p/base/transportchannelproxy.h', 405 'source/talk/p2p/base/udpport.cc', 406 'source/talk/p2p/base/udpport.h', 407 'source/talk/p2p/client/basicportallocator.cc', 408 'source/talk/p2p/client/basicportallocator.h', 409 'source/talk/p2p/client/httpportallocator.cc', 410 'source/talk/p2p/client/httpportallocator.h', 411 'source/talk/p2p/client/sessionmanagertask.h', 412 'source/talk/p2p/client/sessionsendtask.h', 413 'source/talk/p2p/client/socketmonitor.cc', 414 'source/talk/p2p/client/socketmonitor.h', 415 'source/talk/session/tunnel/pseudotcpchannel.cc', 416 'source/talk/session/tunnel/pseudotcpchannel.h', 417 'source/talk/session/tunnel/tunnelsessionclient.cc', 418 'source/talk/session/tunnel/tunnelsessionclient.h', 419 ], 420 'dependencies': [ 421 'libjingle', 422 ], 423 }, 424 ], 425 } 426 427 # Local Variables: 428 # tab-width:2 429 # indent-tabs-mode:nil 430 # End: 431 # vim: set expandtab tabstop=2 shiftwidth=2: 432