| # Copyright 2018 The Chromium Authors |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| import("//testing/test.gni") |
| import("//third_party/libaom/options.gni") |
| |
| component("mirroring_service") { |
| sources = [ |
| "captured_audio_input.cc", |
| "captured_audio_input.h", |
| "media_remoter.cc", |
| "media_remoter.h", |
| "mirror_settings.cc", |
| "mirror_settings.h", |
| "mirroring_features.cc", |
| "mirroring_features.h", |
| "mirroring_gpu_factories_factory.cc", |
| "mirroring_gpu_factories_factory.h", |
| "mirroring_logger.cc", |
| "mirroring_logger.h", |
| "mirroring_service.cc", |
| "mirroring_service.h", |
| "openscreen_message_port.cc", |
| "openscreen_message_port.h", |
| "openscreen_session_host.cc", |
| "openscreen_session_host.h", |
| "openscreen_stats_client.cc", |
| "openscreen_stats_client.h", |
| "remoting_sender.cc", |
| "remoting_sender.h", |
| "rpc_dispatcher.h", |
| "rpc_dispatcher_impl.cc", |
| "rpc_dispatcher_impl.h", |
| "rtp_stream.cc", |
| "rtp_stream.h", |
| "video_capture_client.cc", |
| "video_capture_client.h", |
| ] |
| |
| public_deps = [ "//base" ] |
| |
| deps = [ |
| "//components/mirroring/mojom:service", |
| "//components/openscreen_platform", |
| "//crypto", |
| "//gpu/config", |
| "//media", |
| "//media/capture:capture_base", |
| "//media/capture/mojom:video_capture", |
| "//media/cast:common", |
| "//media/cast:encoding", |
| "//media/cast:sender", |
| "//media/cast/openscreen:config_conversions", |
| "//media/cast/openscreen:decoder_buffer_reader", |
| "//media/cast/openscreen:remoting_utils", |
| "//media/gpu", |
| "//media/mojo/clients", |
| "//media/mojo/common", |
| "//media/mojo/mojom", |
| "//media/mojo/mojom:remoting", |
| "//media/remoting:remoting_device_capability", |
| "//mojo/public/cpp/bindings", |
| "//mojo/public/cpp/system", |
| "//net", |
| "//services/viz/public/cpp/gpu", |
| "//third_party/jsoncpp", # Required by Open Screen API. |
| "//third_party/openscreen/src/cast/streaming:common", |
| "//third_party/openscreen/src/cast/streaming:sender", |
| "//ui/base", |
| "//ui/gfx", |
| ] |
| |
| # Make sure to use the Chromium protobuf headers, and not the ones in |
| # //third_party/openscreen/src/third_party/protobuf. direct include_dirs |
| # takes precedence over those pulled in from configs. |
| include_dirs = [ "//third_party/protobuf/src" ] |
| configs += |
| [ "//third_party/openscreen/src/build_overrides:openscreen_include_dirs" ] |
| defines = [ "IS_MIRRORING_SERVICE_IMPL" ] |
| } |
| |
| source_set("unittests") { |
| testonly = true |
| sources = [ |
| "captured_audio_input_unittest.cc", |
| "fake_network_service.cc", |
| "fake_network_service.h", |
| "fake_video_capture_host.cc", |
| "fake_video_capture_host.h", |
| "media_remoter_unittest.cc", |
| "openscreen_message_port_unittest.cc", |
| "openscreen_session_host_unittest.cc", |
| "openscreen_stats_client_unittest.cc", |
| "remoting_sender_unittest.cc", |
| "rpc_dispatcher_impl_unittest.cc", |
| "rtp_stream_unittest.cc", |
| "value_util.cc", |
| "value_util.h", |
| "video_capture_client_unittest.cc", |
| ] |
| |
| deps = [ |
| ":mirroring_service", |
| "//base", |
| "//base/test:test_support", |
| "//components/mirroring/mojom:service", |
| "//components/openscreen_platform", |
| "//gpu:test_support", |
| "//gpu/ipc/common:test_support", |
| "//media", |
| "//media:test_support", |
| "//media/capture/mojom:video_capture", |
| "//media/cast:common", |
| "//media/cast:encoding", |
| "//media/cast:sender", |
| "//media/cast:test_support", |
| "//media/cast/openscreen:remoting_utils", |
| "//media/mojo/common", |
| "//media/mojo/mojom", |
| "//media/mojo/mojom:remoting", |
| "//mojo/public/cpp/bindings", |
| "//net", |
| "//services/network:test_support", |
| "//services/network/public/mojom", |
| "//services/viz/public/cpp/gpu", |
| "//testing/gmock", |
| "//testing/gtest", |
| "//third_party/openscreen/src/cast/streaming:common", |
| "//third_party/openscreen/src/cast/streaming:sender", |
| ] |
| |
| # Make sure to use the Chromium protobuf headers, and not the ones in |
| # //third_party/openscreen/src/third_party/protobuf. direct include_dirs |
| # takes precedence over those pulled in from configs. |
| include_dirs = [ "//third_party/protobuf/src" ] |
| configs += |
| [ "//third_party/openscreen/src/build_overrides:openscreen_include_dirs" ] |
| |
| # TODO(crbug.com/40031409): Fix code that adds exit-time destructors and |
| # enable the diagnostic by removing this line. |
| configs += [ "//build/config/compiler:no_exit_time_destructors" ] |
| } |