1 # Copyright 2014 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file.
5 import("//build/config/features.gni")
6 import("//build/config/ui.gni")
7 import("//remoting/remoting_srcs.gni")
9 # This must be a static library instead of a source set because
10 # remoting_unittests requires that remoting_me2me_host.cc not be pulled in,
11 # which in turn depends on remoting_me2me_host_static which isn't part of that
14 # TODO fix this, successful builds should not depend on static libraries
16 static_library("host") {
17 sources = rebase_path(remoting_host_srcs_gypi_values.remoting_host_sources,
23 configs += [ "//build/config/compiler:wexit_time_destructors" ]
25 defines = [ "WEBRTC_CHROMIUM_BUILD" ]
29 "//components/policy:policy",
30 "//components/policy:policy_component_common",
35 "//remoting/protocol",
36 "//remoting/resources",
37 "//ui/events/platform",
38 "//ui/events:dom4_keycode_converter",
47 "//build/config/linux:x11",
48 "//build/config/linux:xrandr",
51 deps += [ "//build/config/linux/gtk" ]
54 sources -= [ "clipboard_x11.cc" ]
56 # These will already be filtered out on non-Linux.
58 "linux/x_server_clipboard.cc",
59 "linux/x_server_clipboard.h",
80 sources -= [ "input_injector_x11.cc" ]
81 deps += [ "//ui/ozone" ]
85 "input_injector_chromeos.cc",
86 "input_injector_chromeos.h",
87 "linux/x_server_clipboard.cc",
88 "linux/x_server_clipboard.h",
93 "continue_window_linux.cc",
94 "disconnect_window_linux.cc",
95 "local_input_monitor_x11.cc",
96 "remoting_me2me_host.cc",
101 # TODO(GYP) Mac host_bundle_name and prefpane_bundle_name.
102 # Note if you are looking at this: It really sucks to have to synchronously
103 # call into python twice to get these values. They should instead be
104 # written into a generated header via the process_version template, and we
105 # change the source files to include that header rather than rely on these
106 # defines being set in the build.
108 # "HOST_BUNDLE_NAME=\"$host_bundle_name\"",
109 # "PREFPANE_BUNDLE_NAME=\"$prefpane_bundle_name\"",
113 "Accelerate.framework",
117 deps += [ "//google_toolbox_for_mac" ]
122 "//third_party/libjingle:libpeerconnection",
123 "//third_party/webrtc/modules/desktop_capture",
126 sources += rebase_path(remoting_host_srcs_gypi_values.remoting_cast_sources,
132 source_set("test_support") {
136 "fake_desktop_capturer.cc",
137 "fake_desktop_capturer.h",
138 "fake_desktop_environment.cc",
139 "fake_desktop_environment.h",
140 "fake_host_extension.cc",
141 "fake_host_extension.h",
142 "fake_host_status_monitor.h",
143 "fake_host_status_monitor.h",
144 "fake_mouse_cursor_monitor.cc",
145 "fake_mouse_cursor_monitor.h",
157 "//third_party/libjingle:libpeerconnection",
158 "//third_party/webrtc/modules/desktop_capture",
163 # The host portions of the remoting unit tests.
164 source_set("unit_tests") {
168 "audio_pump_unittest.cc",
169 "audio_silence_detector_unittest.cc",
170 "capture_scheduler_unittest.cc",
171 "chromeos/aura_desktop_capturer_unittest.cc",
172 "chromeos/clipboard_aura_unittest.cc",
173 "chromoting_host_context_unittest.cc",
174 "chromoting_host_unittest.cc",
175 "client_session_unittest.cc",
176 "config_file_watcher_unittest.cc",
177 "daemon_process_unittest.cc",
178 "desktop_process_unittest.cc",
179 "desktop_shape_tracker_unittest.cc",
180 "gnubby_auth_handler_posix_unittest.cc",
181 "heartbeat_sender_unittest.cc",
182 "host_change_notification_listener_unittest.cc",
183 "host_config_unittest.cc",
184 "host_extension_session_manager_unittest.cc",
185 "host_mock_objects.cc",
186 "host_status_logger_unittest.cc",
187 "ipc_desktop_environment_unittest.cc",
188 "it2me/it2me_confirmation_dialog_proxy_unittest.cc",
189 "it2me/it2me_native_messaging_host_unittest.cc",
190 "linux/audio_pipe_reader_unittest.cc",
191 "linux/unicode_to_keysym_unittest.cc",
192 "linux/x_server_clipboard_unittest.cc",
193 "local_input_monitor_unittest.cc",
194 "mouse_shape_pump_unittest.cc",
195 "native_messaging/native_messaging_reader_unittest.cc",
196 "native_messaging/native_messaging_writer_unittest.cc",
197 "pairing_registry_delegate_linux_unittest.cc",
198 "pairing_registry_delegate_win_unittest.cc",
199 "pin_hash_unittest.cc",
200 "policy_watcher_unittest.cc",
201 "register_support_host_request_unittest.cc",
202 "remote_input_filter_unittest.cc",
203 "resizing_host_observer_unittest.cc",
204 "screen_resolution_unittest.cc",
205 "server_log_entry_host_unittest.cc",
206 "setup/me2me_native_messaging_host_unittest.cc",
207 "setup/oauth_helper_unittest.cc",
208 "setup/pin_validator_unittest.cc",
209 "shaped_desktop_capturer_unittest.cc",
210 "token_validator_factory_impl_unittest.cc",
211 "video_frame_pump_unittest.cc",
212 "video_frame_recorder_unittest.cc",
213 "win/rdp_client_unittest.cc",
214 "win/worker_process_launcher.cc",
215 "win/worker_process_launcher.h",
216 "win/worker_process_launcher_unittest.cc",
219 if (use_ozone || is_chromeos) {
220 sources -= [ "local_input_monitor_unittest.cc" ]
223 sources -= [ "linux/x_server_clipboard_unittest.cc" ]
229 "//components/policy:policy_component_test_support",
230 "//remoting/host/setup",
231 "//remoting/host/it2me:common",
232 "//remoting/host/native_messaging",