blob: 4a3cf4850de5e3ae5ad950f70568f72a388aee92 [file] [log] [blame]
# Copyright 2017 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import("//build/config/chromecast_build.gni")
group("webrtc_overrides") {
public_deps = [
":webrtc",
]
}
config("jingle_unexported_configs") {
include_dirs = [
"../../third_party/webrtc_overrides",
"../../testing/gtest/include",
"../../third_party/libyuv/include",
"../../third_party/usrsctp/usrsctplib",
"../../third_party/webrtc",
]
}
config("jingle_public_configs") {
include_dirs = [
"../../third_party/webrtc_overrides",
"../../testing/gtest/include",
"../../third_party/webrtc",
]
}
group("jingle_deps") {
public_deps = [
"//third_party/expat",
]
deps = [
"//base",
"//crypto:platform",
"//net",
]
}
static_library("webrtc") {
# TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
configs += [ "//build/config/compiler:no_size_t_to_int_warning" ]
public_deps = [
":jingle_deps",
# TODO(kjellander): Start cleaning up this target as soon as
# https://codereview.chromium.org/2022833002/ is landed. The target should
# be removed entirely if possible.
"//third_party/libjingle_xmpp:rtc_task_runner",
"//third_party/webrtc/rtc_base:rtc_base_approved",
]
deps = [
"//third_party/webrtc/p2p:rtc_p2p",
]
if (is_win) {
cflags = [ "/wd4005" ]
}
if (is_nacl) {
# For NACL, we have to add a default implementation for field_trial and
# runtime_enabled_features.
deps += [
"//native_client_sdk/src/libraries/nacl_io",
"//third_party/webrtc/system_wrappers:field_trial_default",
"//third_party/webrtc/system_wrappers:runtime_enabled_features_default",
]
} else if (is_chromecast) {
# Cast builds use the default implementation for field_trial and
# runtime_enabled_features.
deps += [
"//third_party/webrtc/system_wrappers:field_trial_default",
"//third_party/webrtc/system_wrappers:runtime_enabled_features_default",
]
} else {
# Otherwise, we just add the field_trial which redirects to base and
# runtime_enabled_features which redirects to content/public/common.
sources = [
"field_trial.cc",
"runtime_enabled_features.cc",
]
}
configs += [
":jingle_unexported_configs",
"//third_party/webrtc:common_config",
]
public_configs = [
":jingle_public_configs",
"//third_party/webrtc:common_inherited_config",
]
}
static_library("init_webrtc") {
sources = [
"init_webrtc.cc",
"init_webrtc.h",
]
configs += [
":jingle_unexported_configs",
"//third_party/webrtc:common_config",
]
public_configs = [
":jingle_public_configs",
"//third_party/webrtc:common_inherited_config",
]
public_deps = [
":libjingle_webrtc_common",
]
deps = [
":task_queue_impl",
]
}
source_set("libjingle_webrtc_common") {
configs += [
":jingle_unexported_configs",
"//third_party/webrtc:common_config",
]
public_configs = [
":jingle_public_configs",
"//third_party/webrtc:common_inherited_config",
]
deps = [
":webrtc",
"//third_party/libsrtp",
"//third_party/usrsctp",
"//third_party/webrtc/media:rtc_media",
"//third_party/webrtc/media:rtc_media_base",
"//third_party/webrtc/modules/media_file",
"//third_party/webrtc/modules/video_capture",
"//third_party/webrtc/pc:libjingle_peerconnection",
"//third_party/webrtc/pc:rtc_pc",
"//third_party/webrtc/system_wrappers",
]
}
source_set("task_queue_impl") {
sources = [
"rtc_base/task_queue.cc",
]
deps = [
"//third_party/webrtc/rtc_base:rtc_task_queue_api",
]
}