# Copyright 2014 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import("//build/config/chromeos/ui_mode.gni")
static_library("client") {
sources = [
"chromoting_client.cc",
"chromoting_client.h",
"chromoting_client_runtime.cc",
"chromoting_client_runtime.h",
"chromoting_session.cc",
"chromoting_session.h",
"client_context.cc",
"client_context.h",
"client_telemetry_logger.cc",
"client_telemetry_logger.h",
"client_user_interface.h",
"connect_to_host_info.cc",
"connect_to_host_info.h",
"cursor_shape_stub_proxy.cc",
"cursor_shape_stub_proxy.h",
"dual_buffer_frame_consumer.cc",
"dual_buffer_frame_consumer.h",
"empty_cursor_filter.cc",
"empty_cursor_filter.h",
"feedback_data.cc",
"feedback_data.h",
"host_experiment_sender.cc",
"host_experiment_sender.h",
"in_memory_log_handler.cc",
"in_memory_log_handler.h",
"software_video_renderer.cc",
"software_video_renderer.h",
]
configs += [
"//build/config/compiler:wexit_time_destructors",
"//remoting/build/config:version",
]
public_deps = [ "//remoting/base" ]
deps = [
"//components/webrtc:thread_wrapper",
"//mojo/core/embedder",
"//remoting/base:authorization",
"//remoting/base:name_value_map",
"//remoting/client/audio",
"//remoting/client/input",
"//remoting/client/notification",
"//remoting/client/ui",
"//remoting/client/ui:ui_manipulation",
"//remoting/codec:decoder",
"//remoting/protocol",
"//remoting/signaling",
"//services/network:network_service",
"//services/network/public/cpp",
"//services/network/public/mojom",
"//third_party/libjingle_xmpp:rtc_xmllite",
"//third_party/libyuv",
"//third_party/webrtc_overrides:webrtc_component",
"//ui/events:dom_keycode_converter",
]
libs = []
if (!is_chromeos) {
# GestureInterpreter depends on //remoting/client/display, which currently
# doesn't build on CrOS. crbug.com/869578
sources += [
"gesture_interpreter.cc",
"gesture_interpreter.h",
]
deps += [ "//remoting/client/display" ]
}
if (is_android) {
libs += [ "android" ]
}
}
source_set("unit_tests") {
testonly = true
sources = [
"chromoting_client_runtime_unittest.cc",
"client_telemetry_logger_unittest.cc",
"dual_buffer_frame_consumer_unittest.cc",
"empty_cursor_filter_unittest.cc",
"software_video_renderer_unittest.cc",
]
configs += [ "//remoting/build/config:version" ]
deps = [
":client",
"//base/test:test_support",
"//remoting/codec:encoder",
"//remoting/proto",
"//remoting/protocol",
"//remoting/protocol:test_support",
"//testing/gmock",
"//testing/gtest",
"//third_party/webrtc_overrides:webrtc_component",
]
}