# Copyright (c) 2016 The WebRTC project authors. All Rights Reserved. # # Use of this source code is governed by a BSD-style license # that can be found in the LICENSE file in the root of the source # tree. An additional intellectual property rights grant can be found # in the file PATENTS. All contributing project authors may # be found in the AUTHORS file in the root of the source tree. import("../../build/webrtc.gni") group("xmpp") { deps = [ ":rtc_xmpp", ] } config("xmpp_warnings_config") { # GN orders flags on a target before flags from configs. The default config # adds these flags so to cancel them out they need to come from a config and # cannot be on the target directly. if (is_android) { cflags = [ "-Wno-error" ] } } config("xmpp_inherited_config") { defines = [ "FEATURE_ENABLE_SSL", "FEATURE_ENABLE_VOICEMAIL", ] } source_set("rtc_xmpp") { cflags = [] sources = [ "asyncsocket.h", "constants.cc", "constants.h", "jid.cc", "jid.h", "plainsaslhandler.h", "prexmppauth.h", "saslcookiemechanism.h", "saslhandler.h", "saslmechanism.cc", "saslmechanism.h", "saslplainmechanism.h", "xmppclient.cc", "xmppclient.h", "xmppclientsettings.h", "xmppengine.h", "xmppengineimpl.cc", "xmppengineimpl.h", "xmppengineimpl_iq.cc", "xmpplogintask.cc", "xmpplogintask.h", "xmppstanzaparser.cc", "xmppstanzaparser.h", "xmpptask.cc", "xmpptask.h", ] defines = [ "FEATURE_ENABLE_SSL" ] deps = [ "../../base:rtc_base", "../xmllite", ] if (rtc_build_expat) { deps += [ "//third_party/expat" ] public_deps = [ "//third_party/expat", ] } configs += [ "../..:common_config", ":xmpp_warnings_config", ] public_configs = [ "../..:common_inherited_config", ":xmpp_inherited_config", ] if (build_with_chromium) { if (is_nacl) { deps += [ "//native_client_sdk/src/libraries/nacl_io" ] } } else { sources += [ "chatroommodule.h", "chatroommoduleimpl.cc", "discoitemsquerytask.cc", "discoitemsquerytask.h", "hangoutpubsubclient.cc", "hangoutpubsubclient.h", "iqtask.cc", "iqtask.h", "module.h", "moduleimpl.cc", "moduleimpl.h", "mucroomconfigtask.cc", "mucroomconfigtask.h", "mucroomdiscoverytask.cc", "mucroomdiscoverytask.h", "mucroomlookuptask.cc", "mucroomlookuptask.h", "mucroomuniquehangoutidtask.cc", "mucroomuniquehangoutidtask.h", "pingtask.cc", "pingtask.h", "presenceouttask.cc", "presenceouttask.h", "presencereceivetask.cc", "presencereceivetask.h", "presencestatus.cc", "presencestatus.h", "pubsub_task.cc", "pubsub_task.h", "pubsubclient.cc", "pubsubclient.h", "pubsubstateclient.cc", "pubsubstateclient.h", "pubsubtasks.cc", "pubsubtasks.h", "receivetask.cc", "receivetask.h", "rostermodule.h", "rostermoduleimpl.cc", "rostermoduleimpl.h", "xmppauth.cc", "xmppauth.h", "xmpppump.cc", "xmpppump.h", "xmppsocket.cc", "xmppsocket.h", "xmppthread.cc", "xmppthread.h", ] defines += [ "FEATURE_ENABLE_VOICEMAIL", "FEATURE_ENABLE_PSTN", ] if (is_clang) { # Suppress warnings from Chrome's Clang plugins. # See http://code.google.com/p/webrtc/issues/detail?id=163 for details. configs -= [ "//build/config/clang:find_bad_constructs" ] } } if (is_posix && is_debug) { # The Chromium build/common.gypi defines this for all posix # _except_ for ios & mac. We want it there as well, e.g. # because ASSERT and friends trigger off of it. defines += [ "_DEBUG" ] } }