blob: f77d14a48db65b0ffc7307561e5af1752e1d549c [file] [log] [blame]
# Copyright 2016 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("//media/media_options.gni")
import("//testing/test.gni")
import("//third_party/protobuf/proto_library.gni")
# This target is separate from "remoting" because this code is shared by the
# receiver implementation (currently outside of the Chromium project).
source_set("rpc") {
sources = [
"proto_enum_utils.cc",
"proto_enum_utils.h",
"proto_utils.cc",
"proto_utils.h",
]
public_configs =
[ "//third_party/openscreen/src/build:openscreen_include_dirs" ]
deps = [
"//base",
"//components/openscreen_platform:openscreen_platform",
"//components/openscreen_platform:openscreen_platform_network_service",
"//media",
]
public_deps = [
"//third_party/openscreen/src/cast/streaming:common",
"//third_party/openscreen/src/cast/streaming:remoting_proto",
]
}
source_set("remoting_sender") {
sources = [
"courier_renderer_factory.cc",
"courier_renderer_factory.h",
"metrics.cc",
"metrics.h",
"renderer_controller.cc",
"renderer_controller.h",
]
deps = [
"//base",
"//media",
"//media/mojo/common",
"//media/mojo/mojom:remoting",
"//mojo/public/cpp/bindings",
"//ui/gfx",
"//url",
]
public_deps = []
if (enable_media_remoting_rpc) {
sources += [
"courier_renderer.cc",
"courier_renderer.h",
"demuxer_stream_adapter.cc",
"demuxer_stream_adapter.h",
"triggers.h",
]
# Consumers of the CourierRenderer implicitly take a dependency on the
# generated remoting.pb.h file.
public_deps += [ ":rpc" ]
}
}
source_set("remoting_constants") {
sources = [ "remoting_constants.h" ]
}
source_set("remoting_renderer") {
sources = [
"receiver.cc",
"receiver.h",
"receiver_controller.cc",
"receiver_controller.h",
"remoting_renderer_factory.cc",
"remoting_renderer_factory.h",
"stream_provider.cc",
"stream_provider.h",
]
deps = [
":remoting_constants",
":rpc",
"//media/mojo/common:common",
"//media/mojo/mojom:remoting",
]
# Consumers of the ReceiverController implicitly take a dependency on the
# generated remoting.pb.h file.
public_deps = [ ":rpc" ]
}
source_set("media_remoting_tests") {
testonly = true
sources = [
"fake_remoter.cc",
"fake_remoter.h",
"mock_receiver_controller.cc",
"mock_receiver_controller.h",
"receiver_unittest.cc",
"renderer_controller_unittest.cc",
"stream_provider_unittest.cc",
"test_utils.cc",
"test_utils.h",
]
deps = [
":remoting_renderer",
":remoting_sender",
":rpc",
"//base",
"//base/test:test_support",
"//media:test_support",
"//media/mojo/common",
"//media/mojo/mojom:remoting",
"//testing/gmock",
"//testing/gtest",
"//url",
]
if (enable_media_remoting_rpc) {
sources += [
"courier_renderer_unittest.cc",
"demuxer_stream_adapter_unittest.cc",
"end2end_test_renderer.cc",
"end2end_test_renderer.h",
"fake_media_resource.cc",
"fake_media_resource.h",
"integration_test.cc",
"metrics_unittest.cc",
"proto_utils_unittest.cc",
]
deps += [
":rpc",
"//media/test:pipeline_integration_test_base",
"//services/service_manager/public/cpp:cpp",
"//ui/gfx:test_support",
"//ui/gfx/geometry",
]
}
}
test("media_remoting_unittests") {
data = [ "//media/test/data/" ]
deps = [
":media_remoting_tests",
"//media/test:run_all_unittests",
]
}