1 # Copyright (c) 2012 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. 4 5 { 6 'includes': [ 7 'remoting_host_linux.gypi', 8 'remoting_host_mac.gypi', 9 'remoting_host_win.gypi', 10 ], 11 12 'variables': { 13 'conditions': [ 14 # Remoting host is supported only on Windows, OSX and Linux (with X11). 15 ['OS=="win" or OS=="mac" or (OS=="linux" and use_x11==1)', { 16 'enable_me2me_host': 1, 17 'enable_it2me_host': 1, 18 'enable_remoting_host': 1, 19 }, { 20 'enable_me2me_host': 0, 21 'enable_it2me_host': 0, 22 'enable_remoting_host': 0, 23 }], 24 ['chromeos==1', { 25 'enable_me2me_host': 0, 26 'enable_it2me_host': 0, 27 }], 28 ], 29 }, 30 31 'conditions': [ 32 ['enable_remoting_host==1', { 33 'targets': [ 34 { 35 'target_name': 'remoting_host', 36 'type': 'static_library', 37 'variables': { 38 'enable_wexit_time_destructors': 1, 39 'host_bundle_name': '<!(python <(version_py_path) -f <(branding_path) -t "@MAC_HOST_BUNDLE_NAME@")', 40 'prefpane_bundle_name': '<!(python <(version_py_path) -f <(branding_path) -t "@MAC_PREFPANE_BUNDLE_NAME@")', 41 }, 42 'dependencies': [ 43 'remoting_base', 44 'remoting_protocol', 45 'remoting_resources', 46 '../base/base.gyp:base_i18n', 47 '../crypto/crypto.gyp:crypto', 48 '../google_apis/google_apis.gyp:google_apis', 49 '../ipc/ipc.gyp:ipc', 50 '../ui/events/events.gyp:dom4_keycode_converter', 51 ], 52 'defines': [ 53 'HOST_BUNDLE_NAME="<(host_bundle_name)"', 54 'PREFPANE_BUNDLE_NAME="<(prefpane_bundle_name)"', 55 'VERSION=<(version_full)', 56 ], 57 'sources': [ 58 'host/audio_capturer.cc', 59 'host/audio_capturer.h', 60 'host/audio_capturer_linux.cc', 61 'host/audio_capturer_linux.h', 62 'host/audio_capturer_mac.cc', 63 'host/audio_capturer_win.cc', 64 'host/audio_capturer_win.h', 65 'host/audio_scheduler.cc', 66 'host/audio_scheduler.h', 67 'host/audio_silence_detector.cc', 68 'host/audio_silence_detector.h', 69 'host/basic_desktop_environment.cc', 70 'host/basic_desktop_environment.h', 71 'host/branding.cc', 72 'host/branding.h', 73 'host/capture_scheduler.cc', 74 'host/capture_scheduler.h', 75 'host/chromeos/aura_desktop_capturer.cc', 76 'host/chromeos/aura_desktop_capturer.h', 77 'host/chromium_port_allocator_factory.cc', 78 'host/chromium_port_allocator_factory.h', 79 'host/chromoting_host.cc', 80 'host/chromoting_host.h', 81 'host/chromoting_host_context.cc', 82 'host/chromoting_host_context.h', 83 'host/chromoting_messages.cc', 84 'host/chromoting_messages.h', 85 'host/chromoting_param_traits.cc', 86 'host/chromoting_param_traits.h', 87 'host/client_session.cc', 88 'host/client_session.h', 89 'host/client_session_control.h', 90 'host/clipboard.h', 91 'host/clipboard_mac.mm', 92 'host/clipboard_win.cc', 93 'host/clipboard_x11.cc', 94 'host/config_file_watcher.cc', 95 'host/config_file_watcher.h', 96 'host/config_watcher.h', 97 'host/constants_mac.cc', 98 'host/constants_mac.h', 99 'host/continue_window.cc', 100 'host/continue_window.h', 101 'host/continue_window_linux.cc', 102 'host/continue_window_mac.mm', 103 'host/continue_window_win.cc', 104 'host/daemon_process.cc', 105 'host/daemon_process.h', 106 'host/daemon_process_win.cc', 107 'host/desktop_environment.h', 108 'host/desktop_process.cc', 109 'host/desktop_process.h', 110 'host/desktop_resizer.h', 111 'host/desktop_resizer_linux.cc', 112 'host/desktop_session.cc', 113 'host/desktop_session.h', 114 'host/desktop_session_agent.cc', 115 'host/desktop_session_agent.h', 116 'host/desktop_session_win.cc', 117 'host/desktop_session_win.h', 118 'host/desktop_resizer_mac.cc', 119 'host/desktop_resizer_win.cc', 120 'host/desktop_session_connector.h', 121 'host/desktop_session_proxy.cc', 122 'host/desktop_session_proxy.h', 123 'host/desktop_shape_tracker.h', 124 'host/desktop_shape_tracker_mac.cc', 125 'host/desktop_shape_tracker_win.cc', 126 'host/desktop_shape_tracker_x11.cc', 127 'host/disconnect_window_linux.cc', 128 'host/disconnect_window_mac.h', 129 'host/disconnect_window_mac.mm', 130 'host/disconnect_window_win.cc', 131 'host/dns_blackhole_checker.cc', 132 'host/dns_blackhole_checker.h', 133 'host/gnubby_auth_handler.h', 134 'host/gnubby_auth_handler_posix.cc', 135 'host/gnubby_auth_handler_posix.h', 136 'host/gnubby_auth_handler_win.cc', 137 'host/gnubby_socket.cc', 138 'host/gnubby_socket.h', 139 'host/heartbeat_sender.cc', 140 'host/heartbeat_sender.h', 141 'host/host_change_notification_listener.cc', 142 'host/host_change_notification_listener.h', 143 'host/host_config.cc', 144 'host/host_config.h', 145 'host/host_event_logger.h', 146 'host/host_event_logger_posix.cc', 147 'host/host_event_logger_win.cc', 148 'host/host_exit_codes.cc', 149 'host/host_exit_codes.h', 150 'host/host_export.h', 151 'host/host_extension.h', 152 'host/host_extension_session.cc', 153 'host/host_extension_session.h', 154 'host/host_extension_session_manager.cc', 155 'host/host_extension_session_manager.h', 156 'host/host_secret.cc', 157 'host/host_secret.h', 158 'host/host_status_logger.cc', 159 'host/host_status_logger.h', 160 'host/host_status_monitor.h', 161 'host/host_status_observer.h', 162 'host/host_status_sender.cc', 163 'host/host_status_sender.h', 164 'host/host_window.h', 165 'host/host_window_proxy.cc', 166 'host/host_window_proxy.h', 167 'host/in_memory_host_config.cc', 168 'host/in_memory_host_config.h', 169 'host/input_injector.h', 170 'host/input_injector_linux.cc', 171 'host/input_injector_mac.cc', 172 'host/input_injector_win.cc', 173 'host/ipc_audio_capturer.cc', 174 'host/ipc_audio_capturer.h', 175 'host/ipc_constants.cc', 176 'host/ipc_constants.h', 177 'host/ipc_desktop_environment.cc', 178 'host/ipc_desktop_environment.h', 179 'host/ipc_host_event_logger.cc', 180 'host/ipc_host_event_logger.h', 181 'host/ipc_input_injector.cc', 182 'host/ipc_input_injector.h', 183 'host/ipc_mouse_cursor_monitor.cc', 184 'host/ipc_mouse_cursor_monitor.h', 185 'host/ipc_screen_controls.cc', 186 'host/ipc_screen_controls.h', 187 'host/ipc_util.h', 188 'host/ipc_util_posix.cc', 189 'host/ipc_util_win.cc', 190 'host/ipc_video_frame_capturer.cc', 191 'host/ipc_video_frame_capturer.h', 192 'host/it2me_desktop_environment.cc', 193 'host/it2me_desktop_environment.h', 194 'host/json_host_config.cc', 195 'host/json_host_config.h', 196 'host/linux/audio_pipe_reader.cc', 197 'host/linux/audio_pipe_reader.h', 198 'host/linux/unicode_to_keysym.cc', 199 'host/linux/unicode_to_keysym.h', 200 'host/linux/x11_util.cc', 201 'host/linux/x11_util.h', 202 'host/linux/x_server_clipboard.cc', 203 'host/linux/x_server_clipboard.h', 204 'host/local_input_monitor.h', 205 'host/local_input_monitor_linux.cc', 206 'host/local_input_monitor_mac.mm', 207 'host/local_input_monitor_win.cc', 208 'host/logging.h', 209 'host/logging_posix.cc', 210 'host/logging_win.cc', 211 'host/me2me_desktop_environment.cc', 212 'host/me2me_desktop_environment.h', 213 'host/mouse_clamping_filter.cc', 214 'host/mouse_clamping_filter.h', 215 'host/oauth_token_getter.cc', 216 'host/oauth_token_getter.h', 217 'host/pairing_registry_delegate.cc', 218 'host/pairing_registry_delegate.h', 219 'host/pairing_registry_delegate_linux.cc', 220 'host/pairing_registry_delegate_linux.h', 221 'host/pairing_registry_delegate_mac.cc', 222 'host/pairing_registry_delegate_win.cc', 223 'host/pairing_registry_delegate_win.h', 224 'host/pam_authorization_factory_posix.cc', 225 'host/pam_authorization_factory_posix.h', 226 'host/pin_hash.cc', 227 'host/pin_hash.h', 228 'host/policy_hack/policy_watcher.cc', 229 'host/policy_hack/policy_watcher.h', 230 'host/policy_hack/policy_watcher_linux.cc', 231 'host/policy_hack/policy_watcher_mac.mm', 232 'host/policy_hack/policy_watcher_win.cc', 233 'host/register_support_host_request.cc', 234 'host/register_support_host_request.h', 235 'host/remote_input_filter.cc', 236 'host/remote_input_filter.h', 237 'host/remoting_me2me_host.cc', 238 'host/resizing_host_observer.cc', 239 'host/resizing_host_observer.h', 240 'host/sas_injector.h', 241 'host/sas_injector_win.cc', 242 'host/screen_controls.h', 243 'host/screen_resolution.cc', 244 'host/screen_resolution.h', 245 'host/server_log_entry_host.cc', 246 'host/server_log_entry_host.h', 247 'host/session_manager_factory.cc', 248 'host/session_manager_factory.h', 249 'host/shaped_desktop_capturer.cc', 250 'host/shaped_desktop_capturer.h', 251 'host/signaling_connector.cc', 252 'host/signaling_connector.h', 253 'host/single_window_desktop_environment.cc', 254 'host/single_window_desktop_environment.h', 255 'host/single_window_input_injector.h', 256 'host/single_window_input_injector_linux.cc', 257 'host/single_window_input_injector_mac.cc', 258 'host/single_window_input_injector_win.cc', 259 'host/token_validator_base.cc', 260 'host/token_validator_base.h', 261 'host/token_validator_factory_impl.cc', 262 'host/token_validator_factory_impl.h', 263 'host/usage_stats_consent.h', 264 'host/usage_stats_consent_mac.cc', 265 'host/usage_stats_consent_win.cc', 266 'host/username.cc', 267 'host/username.h', 268 'host/video_frame_recorder.cc', 269 'host/video_frame_recorder.h', 270 'host/video_frame_recorder_host_extension.cc', 271 'host/video_frame_recorder_host_extension.h', 272 'host/video_scheduler.cc', 273 'host/video_scheduler.h', 274 'host/win/com_imported_mstscax.tlh', 275 'host/win/com_security.cc', 276 'host/win/com_security.h', 277 'host/win/launch_process_with_token.cc', 278 'host/win/launch_process_with_token.h', 279 'host/win/omaha.cc', 280 'host/win/omaha.h', 281 'host/win/rdp_client.cc', 282 'host/win/rdp_client.h', 283 'host/win/rdp_client_window.cc', 284 'host/win/rdp_client_window.h', 285 'host/win/security_descriptor.cc', 286 'host/win/security_descriptor.h', 287 'host/win/session_desktop_environment.cc', 288 'host/win/session_desktop_environment.h', 289 'host/win/session_input_injector.cc', 290 'host/win/session_input_injector.h', 291 'host/win/window_station_and_desktop.cc', 292 'host/win/window_station_and_desktop.h', 293 'host/win/wts_terminal_monitor.cc', 294 'host/win/wts_terminal_monitor.h', 295 'host/win/wts_terminal_observer.h', 296 ], 297 'conditions': [ 298 ['OS=="linux"', { 299 'dependencies': [ 300 '../build/linux/system.gyp:x11', 301 '../build/linux/system.gyp:xext', 302 '../build/linux/system.gyp:xfixes', 303 '../build/linux/system.gyp:xi', 304 '../build/linux/system.gyp:xrandr', 305 '../build/linux/system.gyp:xtst', 306 ], 307 'link_settings': { 308 'libraries': [ 309 '-lpam', 310 ], 311 }, 312 }], 313 ['OS=="linux" and chromeos==0', { 314 'dependencies' : [ 315 # Always use GTK on Linux, even for Aura builds. 316 '../build/linux/system.gyp:gtk', 317 ], 318 }], 319 ['chromeos==1', { 320 'dependencies' : [ 321 '../ash/ash.gyp:ash', 322 '../cc/cc.gyp:cc', 323 '../content/content.gyp:content', 324 '../ppapi/ppapi_internal.gyp:ppapi_host', 325 '../skia/skia.gyp:skia', 326 '../ui/aura/aura.gyp:aura', 327 '../ui/compositor/compositor.gyp:compositor', 328 ], 329 'include_dirs': [ 330 '../third_party/skia/include/utils', 331 ], 332 'sources!' : [ 333 'host/continue_window.cc', 334 'host/continue_window.h', 335 'host/continue_window_linux.cc', 336 'host/disconnect_window.cc', 337 'host/disconnect_window_linux.cc', 338 'host/remoting_me2me_host.cc', 339 ] 340 }, { # chromeos==0 341 'sources!' : [ 342 'host/chromeos/aura_desktop_capturer.cc', 343 'host/chromeos/aura_desktop_capturer.h', 344 ], 345 }], 346 ['OS=="mac"', { 347 'dependencies': [ 348 '../third_party/google_toolbox_for_mac/google_toolbox_for_mac.gyp:google_toolbox_for_mac', 349 ], 350 'link_settings': { 351 'libraries': [ 352 '$(SDKROOT)/System/Library/Frameworks/OpenGL.framework', 353 'libpam.a', 354 ], 355 }, 356 }], 357 ['OS=="win"', { 358 'defines': [ 359 '_ATL_NO_EXCEPTIONS', 360 'ISOLATION_AWARE_ENABLED=1', 361 ], 362 'dependencies': [ 363 '../sandbox/sandbox.gyp:sandbox', 364 'remoting_host_messages', 365 'remoting_lib_idl', 366 ], 367 'msvs_settings': { 368 'VCCLCompilerTool': { 369 # /MP conflicts with #import directive so we limit the number 370 # of processes to spawn to 1. 371 'AdditionalOptions': ['/MP1'], 372 }, 373 }, 374 'variables': { 375 'output_dir': '<(SHARED_INTERMEDIATE_DIR)/remoting/host', 376 }, 377 'sources': [ 378 '<(output_dir)/remoting_host_messages.mc', 379 ], 380 'include_dirs': [ 381 '<(output_dir)', 382 ], 383 'direct_dependent_settings': { 384 'include_dirs': [ 385 '<(output_dir)', 386 ], 387 }, 388 'rules': [{ 389 # Rule to run the message compiler. 390 'rule_name': 'message_compiler', 391 'extension': 'mc', 392 'outputs': [ 393 '<(output_dir)/<(RULE_INPUT_ROOT).h', 394 '<(output_dir)/<(RULE_INPUT_ROOT).rc', 395 ], 396 'action': [ 397 'mc.exe', 398 '-h', '<(output_dir)', 399 '-r', '<(output_dir)/.', 400 '-u', 401 '<(RULE_INPUT_PATH)', 402 ], 403 'process_outputs_as_sources': 1, 404 'message': 'Running message compiler on <(RULE_INPUT_PATH)', 405 }], 406 }], 407 ['enable_webrtc==1', { 408 'dependencies': [ 409 '../third_party/webrtc/modules/modules.gyp:desktop_capture', 410 '../third_party/libjingle/libjingle.gyp:libpeerconnection', 411 ], 412 'sources': [ 413 'host/cast_extension.cc', 414 'host/cast_extension.h', 415 'host/cast_extension_session.cc', 416 'host/cast_extension_session.h', 417 'host/cast_video_capturer_adapter.cc', 418 'host/cast_video_capturer_adapter.h', 419 ], 420 }], 421 ], 422 }, # end of target 'remoting_host' 423 424 { 425 'target_name': 'remoting_native_messaging_base', 426 'type': 'static_library', 427 'variables': { 'enable_wexit_time_destructors': 1, }, 428 'dependencies': [ 429 '../base/base.gyp:base', 430 ], 431 'sources': [ 432 'host/native_messaging/pipe_messaging_channel.cc', 433 'host/native_messaging/pipe_messaging_channel.h', 434 'host/native_messaging/native_messaging_reader.cc', 435 'host/native_messaging/native_messaging_reader.h', 436 'host/native_messaging/native_messaging_writer.cc', 437 'host/native_messaging/native_messaging_writer.h', 438 ], 439 }, # end of target 'remoting_native_messaging_base' 440 441 { 442 'target_name': 'remoting_host_setup_base', 443 'type': 'static_library', 444 'variables': { 'enable_wexit_time_destructors': 1, }, 445 'dependencies': [ 446 '../base/base.gyp:base', 447 '../google_apis/google_apis.gyp:google_apis', 448 'remoting_host', 449 ], 450 'defines': [ 451 'VERSION=<(version_full)', 452 ], 453 'sources': [ 454 'host/setup/daemon_controller.cc', 455 'host/setup/daemon_controller.h', 456 'host/setup/daemon_controller_delegate_linux.cc', 457 'host/setup/daemon_controller_delegate_linux.h', 458 'host/setup/daemon_controller_delegate_mac.h', 459 'host/setup/daemon_controller_delegate_mac.mm', 460 'host/setup/daemon_controller_delegate_win.cc', 461 'host/setup/daemon_controller_delegate_win.h', 462 'host/setup/daemon_installer_win.cc', 463 'host/setup/daemon_installer_win.h', 464 'host/setup/me2me_native_messaging_host.cc', 465 'host/setup/me2me_native_messaging_host.h', 466 'host/setup/oauth_client.cc', 467 'host/setup/oauth_client.h', 468 'host/setup/oauth_helper.cc', 469 'host/setup/oauth_helper.h', 470 'host/setup/pin_validator.cc', 471 'host/setup/pin_validator.h', 472 'host/setup/service_client.cc', 473 'host/setup/service_client.h', 474 'host/setup/test_util.cc', 475 'host/setup/test_util.h', 476 'host/setup/win/auth_code_getter.cc', 477 'host/setup/win/auth_code_getter.h', 478 ], 479 'conditions': [ 480 ['OS=="win"', { 481 'dependencies': [ 482 '../google_update/google_update.gyp:google_update', 483 'remoting_lib_idl', 484 ], 485 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations. 486 'msvs_disabled_warnings': [4267, ], 487 }], 488 ], 489 }, # end of target 'remoting_host_setup_base' 490 491 # Generates native messaging manifest files. 492 { 493 'target_name': 'remoting_native_messaging_manifests', 494 'type': 'none', 495 'conditions': [ 496 [ 'OS == "win"', { 497 'variables': { 498 'me2me_host_path': 'remoting_native_messaging_host.exe', 499 'it2me_host_path': 'remote_assistance_host.exe', 500 }, 501 }], 502 [ 'OS == "mac"', { 503 'variables': { 504 'me2me_host_bundle_name': '<!(python <(version_py_path) -f <(branding_path) -t "@MAC_HOST_BUNDLE_NAME@")', 505 'native_messaging_host_bundle_name': '<!(python <(version_py_path) -f <(branding_path) -t "@MAC_NATIVE_MESSAGING_HOST_BUNDLE_NAME@")', 506 'remote_assistance_host_bundle_name': '<!(python <(version_py_path) -f <(branding_path) -t "@MAC_REMOTE_ASSISTANCE_HOST_BUNDLE_NAME@")', 507 'me2me_host_path': 508 '/Library/PrivilegedHelperTools/<(me2me_host_bundle_name)/Contents/MacOS/<(native_messaging_host_bundle_name)/Contents/MacOS/native_messaging_host', 509 'it2me_host_path': 510 '/Library/PrivilegedHelperTools/<(me2me_host_bundle_name)/Contents/MacOS/<(remote_assistance_host_bundle_name)/Contents/MacOS/remote_assistance_host', 511 }, 512 }], 513 [ 'OS != "mac" and OS != "win"', { 514 'variables': { 515 'me2me_host_path': 516 '/opt/google/chrome-remote-desktop/native-messaging-host', 517 'it2me_host_path': 518 '/opt/google/chrome-remote-desktop/remote-assistance-host', 519 }, 520 }], 521 ], # conditions 522 'sources': [ 523 'host/it2me/com.google.chrome.remote_assistance.json.jinja2', 524 'host/setup/com.google.chrome.remote_desktop.json.jinja2', 525 ], 526 'rules': [{ 527 'rule_name': 'generate_manifest', 528 'extension': 'jinja2', 529 'inputs': [ 530 '<(remoting_localize_path)', 531 '<(branding_path)', 532 ], 533 'outputs': [ 534 '<(PRODUCT_DIR)/remoting/<(RULE_INPUT_ROOT)', 535 ], 536 'action': [ 537 'python', '<(remoting_localize_path)', 538 '--define', 'ME2ME_HOST_PATH=<(me2me_host_path)', 539 '--define', 'IT2ME_HOST_PATH=<(it2me_host_path)', 540 '--variables', '<(branding_path)', 541 '--template', '<(RULE_INPUT_PATH)', 542 '--locale_output', '<@(_outputs)', 543 'en', 544 ], 545 }], 546 }, # end of target 'remoting_native_messaging_manifests' 547 { 548 'target_name': 'remoting_start_host', 549 'type': 'executable', 550 'dependencies': [ 551 'remoting_host_setup_base', 552 ], 553 'sources': [ 554 'host/setup/host_starter.cc', 555 'host/setup/host_starter.h', 556 'host/setup/start_host.cc', 557 ], 558 'conditions': [ 559 ['OS=="linux" and use_allocator!="none"', { 560 'dependencies': [ 561 '../base/allocator/allocator.gyp:allocator', 562 ], 563 }], 564 ], 565 }, # end of target 'remoting_start_host' 566 { 567 'target_name': 'remoting_infoplist_strings', 568 'type': 'none', 569 'dependencies': [ 570 'remoting_resources', 571 ], 572 'sources': [ 573 'host/remoting_me2me_host-InfoPlist.strings.jinja2', 574 'host/mac/me2me_preference_pane-InfoPlist.strings.jinja2', 575 'host/installer/mac/uninstaller/remoting_uninstaller-InfoPlist.strings.jinja2', 576 'host/setup/native_messaging_host-InfoPlist.strings.jinja2', 577 'host/it2me/remote_assistance_host-InfoPlist.strings.jinja2', 578 ], 579 'rules': [{ 580 'rule_name': 'generate_strings', 581 'extension': 'jinja2', 582 'inputs': [ 583 '<(remoting_localize_path)', 584 ], 585 'outputs': [ 586 '<!@pymod_do_main(remoting_localize --locale_output ' 587 '"<(SHARED_INTERMEDIATE_DIR)/remoting/<(RULE_INPUT_ROOT)/@{json_suffix}.lproj/InfoPlist.strings" ' 588 '--print_only <(remoting_locales))', 589 ], 590 'action': [ 591 'python', '<(remoting_localize_path)', 592 '--locale_dir', '<(webapp_locale_dir)', 593 '--template', '<(RULE_INPUT_PATH)', 594 '--locale_output', 595 '<(SHARED_INTERMEDIATE_DIR)/remoting/<(RULE_INPUT_ROOT)/@{json_suffix}.lproj/InfoPlist.strings', 596 '<@(remoting_locales)', 597 ]}, 598 ], 599 }, # end of target 'remoting_infoplist_strings' 600 ], # end of 'targets' 601 }], # 'enable_remoting_host==1' 602 603 ['enable_me2me_host==1', { 604 'targets': [ 605 { 606 'target_name': 'remoting_me2me_host_static', 607 'type': 'static_library', 608 'variables': { 'enable_wexit_time_destructors': 1, }, 609 'dependencies': [ 610 '../base/base.gyp:base', 611 '../base/base.gyp:base_i18n', 612 '../net/net.gyp:net', 613 '../third_party/webrtc/modules/modules.gyp:desktop_capture', 614 'remoting_base', 615 'remoting_breakpad', 616 'remoting_host', 617 'remoting_protocol', 618 ], 619 'defines': [ 620 'VERSION=<(version_full)', 621 ], 622 'sources': [ 623 'host/curtain_mode.h', 624 'host/curtain_mode_linux.cc', 625 'host/curtain_mode_mac.cc', 626 'host/curtain_mode_win.cc', 627 'host/posix/signal_handler.cc', 628 'host/posix/signal_handler.h', 629 ], 630 'conditions': [ 631 ['os_posix != 1', { 632 'sources/': [ 633 ['exclude', '^host/posix/'], 634 ], 635 }], 636 ], # end of 'conditions' 637 }, # end of target 'remoting_me2me_host_static' 638 ] # end of targets 639 }], # end of enable_me2me_host==1 640 641 ['enable_it2me_host==1', { 642 'targets': [ 643 { 644 'target_name': 'remoting_it2me_host_static', 645 'type': 'static_library', 646 'variables': { 'enable_wexit_time_destructors': 1, }, 647 'dependencies': [ 648 '../base/base.gyp:base_i18n', 649 '../net/net.gyp:net', 650 'remoting_base', 651 'remoting_host', 652 'remoting_infoplist_strings', 653 'remoting_protocol', 654 'remoting_resources', 655 ], 656 'defines': [ 657 'VERSION=<(version_full)', 658 ], 659 'sources': [ 660 'host/it2me/it2me_host.cc', 661 'host/it2me/it2me_host.h', 662 'host/it2me/it2me_native_messaging_host.cc', 663 'host/it2me/it2me_native_messaging_host.h', 664 ], 665 }, # end of target 'remoting_it2me_host_static' 666 ] # end of targets 667 }], # end of 'enable_it2me_host==1' 668 669 ['OS!="win" and enable_me2me_host==1', { 670 'targets': [ 671 { 672 'target_name': 'remoting_me2me_host', 673 'type': 'executable', 674 'variables': { 'enable_wexit_time_destructors': 1, }, 675 'dependencies': [ 676 '../base/base.gyp:base', 677 '../base/base.gyp:base_i18n', 678 '<(icu_gyp_path):icudata', 679 '../net/net.gyp:net', 680 '../third_party/webrtc/modules/modules.gyp:desktop_capture', 681 'remoting_base', 682 'remoting_breakpad', 683 'remoting_host', 684 'remoting_infoplist_strings', 685 'remoting_me2me_host_static', 686 'remoting_protocol', 687 ], 688 'defines': [ 689 'VERSION=<(version_full)', 690 ], 691 'sources': [ 692 'host/host_main.cc', 693 'host/host_main.h', 694 ], 695 'conditions': [ 696 ['OS=="mac"', { 697 'mac_bundle': 1, 698 'variables': { 699 'host_bundle_id': '<!(python <(version_py_path) -f <(branding_path) -t "@MAC_HOST_BUNDLE_ID@")', 700 }, 701 'xcode_settings': { 702 'INFOPLIST_FILE': 'host/remoting_me2me_host-Info.plist', 703 'INFOPLIST_PREPROCESS': 'YES', 704 'INFOPLIST_PREPROCESSOR_DEFINITIONS': 'VERSION_FULL="<(version_full)" VERSION_SHORT="<(version_short)" BUNDLE_ID="<(host_bundle_id)"', 705 }, 706 'mac_bundle_resources': [ 707 '<(PRODUCT_DIR)/icudtl.dat', 708 'host/disconnect_window.xib', 709 'host/remoting_me2me_host.icns', 710 'host/remoting_me2me_host-Info.plist', 711 '<!@pymod_do_main(remoting_copy_locales -o -p <(OS) -x <(PRODUCT_DIR) <(remoting_locales))', 712 713 # Localized strings for 'Info.plist' 714 '<!@pymod_do_main(remoting_localize --locale_output ' 715 '"<(SHARED_INTERMEDIATE_DIR)/remoting/remoting_me2me_host-InfoPlist.strings/@{json_suffix}.lproj/InfoPlist.strings" ' 716 '--print_only <(remoting_locales))', 717 ], 718 'mac_bundle_resources!': [ 719 'host/remoting_me2me_host-Info.plist', 720 ], 721 'conditions': [ 722 ['mac_breakpad==1', { 723 'variables': { 724 # A real .dSYM is needed for dump_syms to operate on. 725 'mac_real_dsym': 1, 726 }, 727 'copies': [ 728 { 729 'destination': '<(PRODUCT_DIR)/$(CONTENTS_FOLDER_PATH)/Resources', 730 'files': [ 731 '<(PRODUCT_DIR)/crash_inspector', 732 '<(PRODUCT_DIR)/crash_report_sender.app' 733 ], 734 }, 735 ], 736 'dependencies': [ 737 '../breakpad/breakpad.gyp:dump_syms', 738 ], 739 'postbuilds': [ 740 { 741 'postbuild_name': 'Dump Symbols', 742 'variables': { 743 'dump_product_syms_path': 744 'scripts/mac/dump_product_syms', 745 }, 746 'action': [ 747 '<(dump_product_syms_path)', 748 '<(version_full)', 749 ], 750 }, # end of postbuild 'dump_symbols' 751 ], # end of 'postbuilds' 752 }], # mac_breakpad==1 753 ], # conditions 754 }], # OS=mac 755 ['OS=="linux" and use_allocator!="none"', { 756 'dependencies': [ 757 '../base/allocator/allocator.gyp:allocator', 758 ], 759 }], # OS=linux 760 ], # end of 'conditions' 761 }, # end of target 'remoting_me2me_host' 762 { 763 'target_name': 'remoting_me2me_native_messaging_host', 764 'type': 'executable', 765 'product_name': 'native_messaging_host', 766 'variables': { 'enable_wexit_time_destructors': 1, }, 767 'dependencies': [ 768 '../base/base.gyp:base', 769 'remoting_breakpad', 770 'remoting_host', 771 'remoting_host_setup_base', 772 'remoting_infoplist_strings', 773 'remoting_native_messaging_base', 774 ], 775 'defines': [ 776 'VERSION=<(version_full)', 777 ], 778 'sources': [ 779 'host/setup/me2me_native_messaging_host_entry_point.cc', 780 'host/setup/me2me_native_messaging_host_main.cc', 781 'host/setup/me2me_native_messaging_host_main.h', 782 ], 783 'conditions': [ 784 ['OS=="linux" and use_allocator!="none"', { 785 'dependencies': [ 786 '../base/allocator/allocator.gyp:allocator', 787 ], 788 }], 789 ['OS=="mac"', { 790 'mac_bundle': 1, 791 'variables': { 792 'host_bundle_id': '<!(python <(version_py_path) -f <(branding_path) -t "@MAC_NATIVE_MESSAGING_HOST_BUNDLE_ID@")', 793 }, 794 'xcode_settings': { 795 'INFOPLIST_FILE': 'host/setup/native_messaging_host-Info.plist', 796 'INFOPLIST_PREPROCESS': 'YES', 797 'INFOPLIST_PREPROCESSOR_DEFINITIONS': 'VERSION_FULL="<(version_full)" VERSION_SHORT="<(version_short)" BUNDLE_ID="<(host_bundle_id)"', 798 }, 799 'mac_bundle_resources': [ 800 'host/setup/native_messaging_host-Info.plist', 801 '<!@pymod_do_main(remoting_copy_locales -o -p <(OS) -x <(PRODUCT_DIR) <(remoting_locales))', 802 803 # Localized strings for 'Info.plist' 804 '<!@pymod_do_main(remoting_localize --locale_output ' 805 '"<(SHARED_INTERMEDIATE_DIR)/remoting/native_messaging_host-InfoPlist.strings/@{json_suffix}.lproj/InfoPlist.strings" ' 806 '--print_only <(remoting_locales))', 807 ], 808 'mac_bundle_resources!': [ 809 'host/setup/native_messaging_host-Info.plist', 810 ], 811 'conditions': [ 812 ['mac_breakpad==1', { 813 'variables': { 814 # A real .dSYM is needed for dump_syms to operate on. 815 'mac_real_dsym': 1, 816 }, 817 'copies': [ 818 { 819 'destination': '<(PRODUCT_DIR)/$(CONTENTS_FOLDER_PATH)/Resources', 820 'files': [ 821 '<(PRODUCT_DIR)/crash_inspector', 822 '<(PRODUCT_DIR)/crash_report_sender.app' 823 ], 824 }, 825 ], 826 'dependencies': [ 827 '../breakpad/breakpad.gyp:dump_syms', 828 ], 829 'postbuilds': [ 830 { 831 'postbuild_name': 'Dump Symbols', 832 'variables': { 833 'dump_product_syms_path': 834 'scripts/mac/dump_product_syms', 835 }, 836 'action': [ 837 '<(dump_product_syms_path)', 838 '<(version_full)', 839 ], 840 }, # end of postbuild 'dump_symbols' 841 ], # end of 'postbuilds' 842 }], # mac_breakpad==1 843 ], # conditions 844 }], # OS=mac 845 ], 846 }, # end of target 'remoting_me2me_native_messaging_host' 847 ], # targets 848 }], # end of OS!="win" and enable_me2me_host==1 849 850 ['OS!="win" and enable_it2me_host==1', { 851 'targets': [ 852 { 853 'target_name': 'remoting_it2me_native_messaging_host', 854 'type': 'executable', 855 'product_name': 'remote_assistance_host', 856 'variables': { 'enable_wexit_time_destructors': 1, }, 857 'dependencies': [ 858 '../base/base.gyp:base', 859 'remoting_base', 860 'remoting_breakpad', 861 'remoting_host', 862 'remoting_it2me_host_static', 863 'remoting_native_messaging_base', 864 'remoting_protocol', 865 ], 866 'defines': [ 867 'VERSION=<(version_full)', 868 ], 869 'sources': [ 870 'host/it2me/it2me_native_messaging_host_entry_point.cc', 871 'host/it2me/it2me_native_messaging_host_main.cc', 872 'host/it2me/it2me_native_messaging_host_main.h', 873 ], 874 'conditions': [ 875 ['OS=="linux" and chromeos==0', { 876 'dependencies': [ 877 # Always use GTK on Linux, even for Aura builds. 878 '../build/linux/system.gyp:gtk', 879 ], 880 }], 881 ['OS=="linux" and use_allocator!="none"', { 882 'dependencies': [ 883 '../base/allocator/allocator.gyp:allocator', 884 ], 885 }], 886 ['OS=="mac"', { 887 'mac_bundle': 1, 888 'variables': { 889 'host_bundle_id': '<!(python <(version_py_path) -f <(branding_path) -t "@MAC_REMOTE_ASSISTANCE_HOST_BUNDLE_ID@")', 890 }, 891 'xcode_settings': { 892 'INFOPLIST_FILE': 'host/it2me/remote_assistance_host-Info.plist', 893 'INFOPLIST_PREPROCESS': 'YES', 894 'INFOPLIST_PREPROCESSOR_DEFINITIONS': 'VERSION_FULL="<(version_full)" VERSION_SHORT="<(version_short)" BUNDLE_ID="<(host_bundle_id)"', 895 }, 896 'mac_bundle_resources': [ 897 '<(PRODUCT_DIR)/icudtl.dat', 898 'host/disconnect_window.xib', 899 'host/it2me/remote_assistance_host-Info.plist', 900 '<!@pymod_do_main(remoting_copy_locales -o -p <(OS) -x <(PRODUCT_DIR) <(remoting_locales))', 901 902 # Localized strings for 'Info.plist' 903 '<!@pymod_do_main(remoting_localize --locale_output ' 904 '"<(SHARED_INTERMEDIATE_DIR)/remoting/remote_assistance_host-InfoPlist.strings/@{json_suffix}.lproj/InfoPlist.strings" ' 905 '--print_only <(remoting_locales))', 906 ], 907 'mac_bundle_resources!': [ 908 'host/it2me/remote_assistance_host-Info.plist', 909 ], 910 'conditions': [ 911 ['mac_breakpad==1', { 912 'variables': { 913 # A real .dSYM is needed for dump_syms to operate on. 914 'mac_real_dsym': 1, 915 }, 916 'copies': [ 917 { 918 'destination': '<(PRODUCT_DIR)/$(CONTENTS_FOLDER_PATH)/Resources', 919 'files': [ 920 '<(PRODUCT_DIR)/crash_inspector', 921 '<(PRODUCT_DIR)/crash_report_sender.app' 922 ], 923 }, 924 ], 925 'dependencies': [ 926 '../breakpad/breakpad.gyp:dump_syms', 927 ], 928 'postbuilds': [ 929 { 930 'postbuild_name': 'Dump Symbols', 931 'variables': { 932 'dump_product_syms_path': 933 'scripts/mac/dump_product_syms', 934 }, 935 'action': [ 936 '<(dump_product_syms_path)', 937 '<(version_full)', 938 ], 939 }, # end of postbuild 'dump_symbols' 940 ], # end of 'postbuilds' 941 }], # mac_breakpad==1 942 ], # conditions 943 }], # OS=mac 944 ], 945 }, # end of target 'remoting_it2me_native_messaging_host' 946 ], # end of 'targets' 947 }], # # end of OS!="win" and enable_it2me_host==1 948 949 ], # end of 'conditions' 950 } 951