# Copyright (c) 2015 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("api") { deps = [ ":libjingle_peerconnection", ] } config("libjingle_peerconnection_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_win) { cflags = [ "-Wno-sign-compare" ] if (!is_clang) { cflags += [ "-Wno-maybe-uninitialized" ] # Only exists for GCC. } } } source_set("libjingle_peerconnection") { cflags = [] sources = [ "audiotrack.cc", "audiotrack.h", "datachannel.cc", "datachannel.h", "datachannelinterface.h", "dtlsidentitystore.cc", "dtlsidentitystore.h", "dtmfsender.cc", "dtmfsender.h", "dtmfsenderinterface.h", "jsep.h", "jsepicecandidate.cc", "jsepicecandidate.h", "jsepsessiondescription.cc", "jsepsessiondescription.h", "localaudiosource.cc", "localaudiosource.h", "mediaconstraintsinterface.cc", "mediaconstraintsinterface.h", "mediacontroller.cc", "mediacontroller.h", "mediastream.cc", "mediastream.h", "mediastreaminterface.h", "mediastreamobserver.cc", "mediastreamobserver.h", "mediastreamprovider.h", "mediastreamproxy.h", "mediastreamtrack.h", "mediastreamtrackproxy.h", "notifier.h", "peerconnection.cc", "peerconnection.h", "peerconnectionfactory.cc", "peerconnectionfactory.h", "peerconnectionfactoryproxy.h", "peerconnectioninterface.h", "peerconnectionproxy.h", "proxy.h", "remoteaudiosource.cc", "remoteaudiosource.h", "rtpparameters.h", "rtpreceiver.cc", "rtpreceiver.h", "rtpreceiverinterface.h", "rtpsender.cc", "rtpsender.h", "rtpsenderinterface.h", "sctputils.cc", "sctputils.h", "statscollector.cc", "statscollector.h", "statstypes.cc", "statstypes.h", "streamcollection.h", "videocapturertracksource.cc", "videocapturertracksource.h", "videosourceproxy.h", "videotrack.cc", "videotrack.h", "videotracksource.cc", "videotracksource.h", "webrtcsdp.cc", "webrtcsdp.h", "webrtcsession.cc", "webrtcsession.h", "webrtcsessiondescriptionfactory.cc", "webrtcsessiondescriptionfactory.h", ] configs += [ "..:common_config", ":libjingle_peerconnection_warnings_config", ] public_configs = [ "..:common_inherited_config" ] 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:extra_warnings" ] configs -= [ "//build/config/clang:find_bad_constructs" ] } if (is_win) { cflags += [ "/wd4389" ] # signed/unsigned mismatch. } deps = [ "../call", "../media", "../pc", ] if (rtc_use_quic) { sources += [ "quicdatachannel.cc", "quicdatachannel.h", "quicdatatransport.cc", "quicdatatransport.h", ] deps += [ "//third_party/libquic" ] public_deps = [ "//third_party/libquic", ] } }