blob: ecef934a3e610e6b3db3071ae165bdfc149b08d3 [file] [log] [blame]
# 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.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",
]
}
}