From e733310db58160074f574c429d48f8308c0afe17 Mon Sep 17 00:00:00 2001 From: Allan Sandfeld Jensen Date: Wed, 8 Mar 2017 10:28:10 +0100 Subject: BASELINE: Update Chromium to 56.0.2924.122 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: I4e04de8f47e47e501c46ed934c76a431c6337ced Reviewed-by: Michael BrĂ¼ning --- chromium/remoting/BUILD.gn | 4 +- chromium/remoting/base/BUILD.gn | 1 + chromium/remoting/client/BUILD.gn | 11 +- chromium/remoting/client/ios/BUILD.gn | 43 ++ chromium/remoting/client/ios/bridge/BUILD.gn | 93 ++++ chromium/remoting/codec/BUILD.gn | 90 +++- chromium/remoting/host/BUILD.gn | 609 ++---------------------- chromium/remoting/host/installer/linux/BUILD.gn | 86 ++++ chromium/remoting/host/installer/mac/BUILD.gn | 160 +++++++ chromium/remoting/host/installer/win/BUILD.gn | 4 + chromium/remoting/host/it2me/BUILD.gn | 4 +- chromium/remoting/host/linux/BUILD.gn | 98 ++++ chromium/remoting/host/mac/BUILD.gn | 282 +++++++++++ chromium/remoting/host/security_key/BUILD.gn | 6 +- chromium/remoting/host/setup/BUILD.gn | 4 + chromium/remoting/host/win/BUILD.gn | 1 + chromium/remoting/protocol/BUILD.gn | 13 + chromium/remoting/remoting_enable.gni | 6 +- chromium/remoting/remoting_version.gni | 11 + chromium/remoting/signaling/BUILD.gn | 2 + chromium/remoting/webapp/build_template.gni | 1 + 21 files changed, 932 insertions(+), 597 deletions(-) create mode 100644 chromium/remoting/client/ios/BUILD.gn create mode 100644 chromium/remoting/client/ios/bridge/BUILD.gn create mode 100644 chromium/remoting/host/installer/linux/BUILD.gn create mode 100644 chromium/remoting/host/installer/mac/BUILD.gn create mode 100644 chromium/remoting/host/linux/BUILD.gn create mode 100644 chromium/remoting/host/mac/BUILD.gn (limited to 'chromium/remoting') diff --git a/chromium/remoting/BUILD.gn b/chromium/remoting/BUILD.gn index 646b78787be..5ed0fff7f83 100644 --- a/chromium/remoting/BUILD.gn +++ b/chromium/remoting/BUILD.gn @@ -59,7 +59,7 @@ group("remoting_all") { } if (is_linux && !is_chromeos) { - deps += [ "//remoting/host:remoting_dev_me2me_host" ] + deps += [ "//remoting/host/linux:remoting_dev_me2me_host" ] } } @@ -140,6 +140,7 @@ test("remoting_unittests") { deps = [ ":test_support", "//base", + "//base/test:test_support", "//google_apis", "//remoting/base:unit_tests", "//remoting/client:unit_tests", @@ -148,7 +149,6 @@ test("remoting_unittests") { "//remoting/test:unit_tests", "//testing/gmock", "//testing/gtest", - "//third_party/webrtc", ] if (enable_remoting_host) { diff --git a/chromium/remoting/base/BUILD.gn b/chromium/remoting/base/BUILD.gn index c8f5a2d7c31..2295e58f7cd 100644 --- a/chromium/remoting/base/BUILD.gn +++ b/chromium/remoting/base/BUILD.gn @@ -116,6 +116,7 @@ source_set("unit_tests") { ":base", ":breakpad", "//base", + "//mojo/edk/system", "//net:test_support", "//testing/gmock", "//testing/gtest", diff --git a/chromium/remoting/client/BUILD.gn b/chromium/remoting/client/BUILD.gn index cff4a2d29cf..b5ff104c1f1 100644 --- a/chromium/remoting/client/BUILD.gn +++ b/chromium/remoting/client/BUILD.gn @@ -98,7 +98,7 @@ source_set("opengl_renderer") { deps = [ "//remoting/proto", "//third_party/libyuv", - "//third_party/webrtc", + "//third_party/webrtc/base:rtc_base", ] configs += [ "//third_party/khronos:khronos_headers" ] @@ -111,6 +111,13 @@ source_set("opengl_renderer") { libs = [ "OpenGL.framework" ] } + if (is_ios) { + libs = [ + "GLKit.framework", + "OpenGLES.framework", + ] + } + if (is_win) { deps += [ "//third_party/angle:libGLESv2" ] } @@ -150,7 +157,7 @@ source_set("unit_tests") { "//remoting/proto", "//testing/gmock", "//testing/gtest", - "//third_party/webrtc", + "//third_party/webrtc/base:rtc_base", ] if (!is_win) { diff --git a/chromium/remoting/client/ios/BUILD.gn b/chromium/remoting/client/ios/BUILD.gn new file mode 100644 index 00000000000..92c8a24a0e9 --- /dev/null +++ b/chromium/remoting/client/ios/BUILD.gn @@ -0,0 +1,43 @@ +# 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. + +group("all") { + testonly = true + + deps = [ + "./bridge:all", + ] +} + +group("all_test") { + testonly = true + + deps = [ + "./bridge:bridge_unit_tests", + ] +} + +source_set("ios_core") { + sources = [ + "utility.h", + "utility.mm", + ] + + public_deps = [ + "//third_party/webrtc/base:rtc_base", + "//third_party/webrtc/modules/desktop_capture:primitives", + ] + + deps = [ + "//base", + ] + + libs = [ + "CoreGraphics.framework", + "GLKit.framework", + "OpenGLES.framework", + ] + + configs += [ "//build/config/compiler:enable_arc" ] +} diff --git a/chromium/remoting/client/ios/bridge/BUILD.gn b/chromium/remoting/client/ios/bridge/BUILD.gn new file mode 100644 index 00000000000..bc4c658bb67 --- /dev/null +++ b/chromium/remoting/client/ios/bridge/BUILD.gn @@ -0,0 +1,93 @@ +# 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("//build/config/ios/rules.gni") + +group("all") { + testonly = true + + deps = [ + ":bridge", + ":bridge_unit_tests", + ] +} + +source_set("bridge") { + include_dirs = [ + "$root_gen_dir", + "//third_party/protobuf/src", + ] + + sources = [ + "client_instance.cc", + "client_instance.h", + "client_proxy.h", + "client_proxy.mm", + "client_proxy_delegate.h", + "client_proxy_delegate_wrapper.h", + "client_proxy_delegate_wrapper.mm", + "frame_consumer_bridge.cc", + "frame_consumer_bridge.h", + "host_proxy.h", + "host_proxy.mm", + ] + + public_deps = [ + "//remoting/protocol", + "//third_party/webrtc/base:rtc_base", + "//third_party/webrtc/modules/desktop_capture:primitives", + ] + + deps = [ + "//base", + "//net", + "//remoting/client/ios:ios_core", + "//remoting/resources:strings", + "//ui/base", + "//ui/gfx", + "//ui/resources", + "//ui/strings:ui_strings", + ] + + libs = [ + "Accelerate.framework", + "AudioToolbox.framework", + "CoreAudio.framework", + "CoreData.framework", + "CoreMIDI.framework", + "CoreVideo.framework", + "CoreGraphics.framework", + "GLKit.framework", + "OpenGLES.framework", + "Webkit.framework", + ] + + configs += [ "//build/config/compiler:enable_arc" ] +} + +source_set("bridge_unit_tests") { + testonly = true + + include_dirs = [ + "$root_gen_dir", + "//third_party/protobuf/src", + ] + + sources = [ + "client_instance_unittest.mm", + "client_proxy_unittest.mm", + + # "frame_consumer_bridge_unittest.cc", + "host_proxy_unittest.mm", + ] + + deps = [ + ":bridge", + "//testing/gtest", + ] + + configs += [ "//build/config/compiler:enable_arc" ] + + data = [] +} diff --git a/chromium/remoting/codec/BUILD.gn b/chromium/remoting/codec/BUILD.gn index 6c555bf0e66..5c5707bdde4 100644 --- a/chromium/remoting/codec/BUILD.gn +++ b/chromium/remoting/codec/BUILD.gn @@ -3,21 +3,17 @@ # found in the LICENSE file. source_set("codec") { + deps = [ + ":decoder", + ":encoder", + ] +} + +source_set("encoder") { sources = [ - "audio_decoder.cc", - "audio_decoder.h", - "audio_decoder_opus.cc", - "audio_decoder_opus.h", "audio_encoder.h", "audio_encoder_opus.cc", "audio_encoder_opus.h", - "scoped_vpx_codec.cc", - "scoped_vpx_codec.h", - "video_decoder.h", - "video_decoder_verbatim.cc", - "video_decoder_verbatim.h", - "video_decoder_vpx.cc", - "video_decoder_vpx.h", "video_encoder.cc", "video_encoder.h", "video_encoder_helper.cc", @@ -33,6 +29,7 @@ source_set("codec") { configs += [ "//build/config/compiler:wexit_time_destructors" ] deps = [ + ":vpx_codec", "//base/third_party/dynamic_annotations", "//media", "//media:shared_memory_support", @@ -44,10 +41,6 @@ source_set("codec") { ] if (is_nacl) { - deps -= [ - "//media", - "//media:shared_memory_support", - ] sources -= [ "audio_encoder.h", "audio_encoder_opus.cc", @@ -63,9 +56,72 @@ source_set("codec") { "webrtc_video_encoder_vpx.cc", "webrtc_video_encoder_vpx.h", ] + deps -= [ + "//media", + "//media:shared_memory_support", + ] + } + + # Opus depends on //media, which is not a supported include for iOS. + # Removing Opus for iOS builds. + if (is_ios) { + sources -= [ + "audio_encoder_opus.cc", + "audio_encoder_opus.h", + ] + deps -= [ + "//media", + "//media:shared_memory_support", + ] } } +source_set("decoder") { + sources = [ + "audio_decoder.cc", + "audio_decoder.h", + "audio_decoder_opus.cc", + "audio_decoder_opus.h", + "video_decoder.h", + "video_decoder_verbatim.cc", + "video_decoder_verbatim.h", + "video_decoder_vpx.cc", + "video_decoder_vpx.h", + ] + + configs += [ "//build/config/compiler:wexit_time_destructors" ] + + deps = [ + ":vpx_codec", + "//base/third_party/dynamic_annotations", + "//remoting/proto", + "//third_party/libvpx", + "//third_party/libyuv", + "//third_party/opus", + "//third_party/webrtc/modules/desktop_capture:primitives", + ] +} + +source_set("vpx_codec") { + sources = [ + "scoped_vpx_codec.cc", + "scoped_vpx_codec.h", + ] + + configs += [ "//build/config/compiler:wexit_time_destructors" ] + + public_deps = [ + "//third_party/libvpx", + ] + + deps = [ + "//base/third_party/dynamic_annotations", + "//remoting/proto", + "//third_party/libyuv", + "//third_party/webrtc/modules/desktop_capture:primitives", + ] +} + source_set("unit_tests") { testonly = true @@ -86,4 +142,8 @@ source_set("unit_tests") { "//testing/gtest", "//third_party/webrtc/modules/desktop_capture", ] + + if (is_ios) { + sources -= [ "audio_encoder_opus_unittest.cc" ] + } } diff --git a/chromium/remoting/host/BUILD.gn b/chromium/remoting/host/BUILD.gn index 098a633dcad..3fc21fae56c 100644 --- a/chromium/remoting/host/BUILD.gn +++ b/chromium/remoting/host/BUILD.gn @@ -100,8 +100,6 @@ static_library("host") { "config_file_watcher.cc", "config_file_watcher.h", "config_watcher.h", - "constants_mac.cc", - "constants_mac.h", "continue_window.cc", "continue_window.h", "continue_window_chromeos.cc", @@ -118,6 +116,8 @@ static_library("host") { "desktop_capturer_proxy.cc", "desktop_capturer_proxy.h", "desktop_environment.h", + "desktop_environment_options.cc", + "desktop_environment_options.h", "desktop_process.cc", "desktop_process.h", "desktop_resizer.h", @@ -147,6 +147,8 @@ static_library("host") { "gcd_state_updater.h", "heartbeat_sender.cc", "heartbeat_sender.h", + "host_attributes.cc", + "host_attributes.h", "host_change_notification_listener.cc", "host_change_notification_listener.h", "host_config.cc", @@ -196,7 +198,6 @@ static_library("host") { "ipc_screen_controls.cc", "ipc_screen_controls.h", "ipc_util.h", - "ipc_util_posix.cc", "ipc_util_win.cc", "ipc_video_frame_capturer.cc", "ipc_video_frame_capturer.h", @@ -448,7 +449,6 @@ static_library("test_support") { "fake_host_extension.cc", "fake_host_extension.h", "fake_host_status_monitor.h", - "fake_host_status_monitor.h", "fake_mouse_cursor_monitor.cc", "fake_mouse_cursor_monitor.h", "fake_oauth_token_getter.cc", @@ -499,6 +499,7 @@ source_set("unit_tests") { "gcd_rest_client_unittest.cc", "gcd_state_updater_unittest.cc", "heartbeat_sender_unittest.cc", + "host_attributes_unittest.cc", "host_change_notification_listener_unittest.cc", "host_config_unittest.cc", "host_extension_session_manager_unittest.cc", @@ -675,22 +676,6 @@ if (enable_remoting_host) { ] } - if (is_mac) { - foreach(locale, remoting_locales_with_underscores) { - bundle_data("remoting_host_locale_${locale}_bundle_data") { - sources = [ - "$root_build_dir/remoting/resources/$locale.lproj/locale.pak", - ] - outputs = [ - "{{bundle_resources_dir}}/$locale.lproj/{{source_file_part}}", - ] - deps = [ - "//remoting/resources:copy_locales", - ] - } - } - } - action_foreach("remoting_infoplist_strings") { sources = [ "installer/mac/uninstaller/remoting_uninstaller-InfoPlist.strings.jinja2", @@ -777,6 +762,10 @@ if (enable_me2me_host) { if (is_mac && is_official_build) { sources += [ "internal/internal_mac-inl.h" ] } + + if (remoting_multi_process != 0) { + deps += [ "//mojo/edk/system" ] + } } if (is_win) { @@ -791,299 +780,55 @@ if (enable_me2me_host) { ] } } else { - if (is_mac) { - app_target_type = "mac_app_bundle" - } else { - app_target_type = "executable" + source_set("main") { + sources = [ + "host_main.cc", + "host_main.h", + ] } - if (is_mac) { - # remoting_me2me_host-InfoPlist.strings - foreach(locale, remoting_locales_with_underscores) { - bundle_data("remoting_me2me_host_strings_${locale}_bundle_data") { - sources = [ - "$root_gen_dir/remoting/host/remoting_me2me_host-InfoPlist.strings/$locale.lproj/InfoPlist.strings", - ] - outputs = [ - "{{bundle_resources_dir}}/$locale.lproj/{{source_file_part}}", - ] - deps = [ - ":remoting_infoplist_strings", - ] - } - } - - mac_xib_bundle_data("remoting_host_xibs") { - sources = [ - "disconnect_window.xib", + group("remoting_me2me_host") { + deps = [ + "//remoting/host/mac:remoting_me2me_host", ] } + } else { + target("executable", "remoting_me2me_host") { + configs += [ "//remoting/build/config:version" ] - bundle_data("remoting_host_resources") { sources = [ - "$root_gen_dir/remoting/CREDITS.txt", - "remoting_me2me_host.icns", - ] - - outputs = [ - "{{bundle_resources_dir}}/{{source_file_part}}", + "host_main.cc", + "host_main.h", ] - public_deps = [ + deps = [ + ":remoting_me2me_host_static", + "//build/config/sanitizers:deps", + "//remoting/base:breakpad", "//remoting/host/installer:credits", - ] - - if (icu_use_data_file) { - sources += [ "$root_out_dir/icudtl.dat" ] - public_deps += [ "//third_party/icu:icudata" ] - } - } - } - - target(app_target_type, "remoting_me2me_host") { - if (is_mac) { - extra_configs = [ "//remoting/build/config:version" ] - info_plist = "remoting_me2me_host-Info.plist" - extra_substitutions = [ - "BUNDLE_ID=$host_bundle_id", - "VERSION_FULL=$remoting_version_full", - "VERSION_SHORT=$remoting_version_short", - "MACOSX_DEPLOYMENT_TARGET=10.7", - ] - } else { - configs += [ "//remoting/build/config:version" ] - } - - sources = [ - "host_main.cc", - "host_main.h", - ] - - if (is_mac && is_chrome_branded && is_official_build) { - defines = [ "REMOTING_ENABLE_BREAKPAD" ] - } - - deps = [ - ":remoting_me2me_host_static", - "//build/config/sanitizers:deps", - "//remoting/base:breakpad", - "//remoting/host/installer:credits", - "//remoting/resources", - ] - if (is_mac) { - foreach(locale, remoting_locales_with_underscores) { - deps += [ - ":remoting_host_locale_${locale}_bundle_data", - ":remoting_me2me_host_strings_${locale}_bundle_data", - ] - } - deps += [ - ":remoting_host_resources", - ":remoting_host_xibs", - ":remoting_infoplist_strings", - "//remoting/resources:copy_locales", + "//remoting/resources", ] } } - if (is_linux) { - copy("remoting_me2me_host_copy_script") { - sources = [ - "linux/linux_me2me_host.py", - ] - outputs = [ - "$root_build_dir/remoting/chrome-remote-desktop", - ] - } - copy("remoting_me2me_host_copy_host") { - sources = [ - "linux/remoting_me2me_host_wrapper.sh", - ] - outputs = [ - "$root_build_dir/remoting/chrome-remote-desktop-host", - ] + if (is_mac) { + group("remoting_native_messaging_host") { deps = [ - ":remoting_me2me_host", + "//remoting/host/mac:remoting_native_messaging_host", ] } - group("remoting_dev_me2me_host") { + } else { + group("remoting_native_messaging_host") { deps = [ - ":remoting_me2me_host", - ":remoting_me2me_host_copy_host", - ":remoting_me2me_host_copy_script", + "//remoting/host/linux:remoting_native_messaging_host", ] } } - - if (is_mac) { - # native_messaging_host-InfoPlist.strings - foreach(locale, remoting_locales_with_underscores) { - bundle_data("native_messaging_host_strings_${locale}_bundle_data") { - sources = [ - "$root_gen_dir/remoting/host/native_messaging_host-InfoPlist.strings/$locale.lproj/InfoPlist.strings", - ] - outputs = [ - "{{bundle_resources_dir}}/$locale.lproj/{{source_file_part}}", - ] - deps = [ - ":remoting_infoplist_strings", - ] - } - } - } - - # The [remoting_]native_messaging_host target is called differently on - # Linux and Mac vs Windows. - # TODO(sergeyu): Rename it to remoting_native_messaging_host on all - # platforms. - # TODO(nicholss): To aid in the rename effort, I am adding a link to - # native_messaging_host from remoting_native_messaging_host so up stream - # build targets need to only know about remoting_native_messaging_host. - # The issue is changing the target changes the executable, we could force - # a name in the build target or we could update the install packages to use - # the new name. Holding off making that choice for now. - group("remoting_native_messaging_host") { - deps = [ - ":native_messaging_host", - ] - } - - target(app_target_type, "native_messaging_host") { - if (is_mac) { - info_plist = "setup/native_messaging_host-Info.plist" - extra_configs = [ "//build/config/compiler:wexit_time_destructors" ] - extra_substitutions = [ - "BUNDLE_ID=$native_messaging_host_bundle_id", - "VERSION_FULL=$remoting_version_full", - "VERSION_SHORT=$remoting_version_short", - "MACOSX_DEPLOYMENT_TARGET=10.7", - ] - } else { - configs += [ "//build/config/compiler:wexit_time_destructors" ] - } - - sources = [ - "setup/me2me_native_messaging_host_entry_point.cc", - "setup/me2me_native_messaging_host_main.cc", - "setup/me2me_native_messaging_host_main.h", - ] - - deps = [ - ":remoting_infoplist_strings", - "//base", - "//remoting/base:breakpad", - "//remoting/host", - "//remoting/host/native_messaging", - "//remoting/host/setup", - ] - - if (is_mac) { - foreach(locale, remoting_locales_with_underscores) { - deps += [ - ":native_messaging_host_strings_${locale}_bundle_data", - ":remoting_host_locale_${locale}_bundle_data", - ] - } - deps += [ "//remoting/resources:copy_locales" ] - } - - # The |major|, |build| and |patch| versions are inherited from Chrome. - # Since Chrome's |minor| version is always '0', we replace it with a - # Chromoting-specific patch version. - defines = [ "VERSION=" + "$chrome_version_major" + "." + - "$remoting_version_patch" + "." + "$chrome_version_build" + - "." + "$chrome_version_patch" ] - } } - if (is_chrome_branded && enable_me2me_host && is_linux && !is_chromeos) { - # TODO(GYP): add support for archive_chromoting_tests variable? - - import("//build/config/zip.gni") - - build_deb_script = "installer/linux/build_deb.py" - deb_filename = - "$root_build_dir/" + exec_script(build_deb_script, - [ - "-p", - "-s", - rebase_path("//"), - ], - "string", - [ "installer/linux/build-deb.sh" ]) - changes_filename = - "$root_build_dir/" + get_path_info(deb_filename, "name") + ".changes" - - packaging_outputs = [ - deb_filename, - changes_filename, - - # TODO(GYP): Check that these are generated by build_deb.py. - #"$root_build_dir/remoting_me2me_host.debug", - #"$root_build_dir/remoting_start_host.debug", - #"$root_build_dir/native_messaging_host.debug", - #"$root_build_dir/remote_assistance_host.debug", - ] - - zip("remoting_me2me_host_archive") { - # Store the installer package(s) into a zip file so there is a - # consistent filename to reference for build archiving (i.e. in - # FILES.cfg). This also avoids possible conflicts with "wildcard" - # package handling in other build/signing scripts. - inputs = packaging_outputs - output = "$root_build_dir/remoting-me2me-host-linux.zip" - deps = [ - ":remoting_me2me_host_copy", - ] - } - - copy("remoting_me2me_host_copy") { - # Copy the debian package file, which has version info in it, - # to a consistewnt filename for use on Chromoting swarming bots. - sources = [ - deb_filename, - ] - outputs = [ - "$root_build_dir/remoting-me2me-host.deb", - ] - public_deps = [ - ":remoting_me2me_host_deb_installer", - ] - } - - action("remoting_me2me_host_deb_installer") { - script = build_deb_script - inputs = [ - build_deb_script, - "installer/linux/Makefile", - "installer/linux/debian/chrome-remote-desktop.init", - "installer/linux/debian/chrome-remote-desktop.pam", - "installer/linux/debian/compat", - "installer/linux/debian/control", - "installer/linux/debian/copyright", - "installer/linux/debian/postinst", - "installer/linux/debian/preinst", - "installer/linux/debian/rules", - ] - outputs = packaging_outputs - sources = [ - "installer/linux/build-deb.sh", - ] - args = [ - "-s", - rebase_path("//"), - "-o", - rebase_path("$root_build_dir"), - ] - + group("remoting_me2me_host_archive") { deps = [ - ":remoting_me2me_host", - ":remoting_native_messaging_host", - ":remoting_native_messaging_manifests", - ":remoting_start_host", - "//remoting/host/it2me:remote_assistance_host", - "//remoting/resources", - "//third_party/icu:icudata", + "//remoting/host/installer/linux:remoting_me2me_host_archive", ] } } else if (is_win) { @@ -1093,289 +838,9 @@ if (enable_me2me_host) { ] } } else if (is_mac) { - import("//build/config/zip.gni") - - action("remoting_me2me_host_archive") { - # TODO(GYP) TODO(crbug.com/622415) This needs work and testing. - - # TODO(GYP) At the very least, we need to add in the localized strings. - - _installer_mac_files = [ - "installer/mac/do_signing.sh", - "installer/mac/do_signing.props", - "installer/mac/ChromotingHost.pkgproj", - "installer/mac/ChromotingHostService.pkgproj", - "installer/mac/ChromotingHostUninstaller.pkgproj", - "installer/mac/LaunchAgents/org.chromium.chromoting.plist", - "installer/mac/PrivilegedHelperTools/org.chromium.chromoting.me2me.sh", - "installer/mac/Scripts/keystone_install.sh", - "installer/mac/Scripts/remoting_postflight.sh", - "installer/mac/Scripts/remoting_preflight.sh", - "installer/mac/Keystone/GoogleSoftwareUpdate.pkg", - "//chrome/installer/mac/pkg-dmg", - ] - - inputs = _installer_mac_files - - zip_path = "$root_build_dir/remoting-me2me-host-mac.zip" - - outputs = [ - "$root_build_dir/remoting-me2me-host-mac.zip", - ] - - script = "installer/build-installer-archive.py" - - # TODO(GYP) TODO(crbug.com/622415): Fill these in. - host_name_nospace = host_name - host_service_name_nospace = host_service_name - host_uninstaller_name_nospace = host_uninstaller_name - - args = [ - rebase_path("$target_gen_dir/remoting_installation", - root_build_dir), - rebase_path(zip_path, root_build_dir), - "--source-file-roots", - rebase_path("installer/mac/", root_build_dir), - rebase_path("//chrome/installer/mac", root_build_dir), - "--source-files", - ] + rebase_path(_installer_mac_files, root_build_dir) + [ - "--generated-files", - "remoting_host_prefpane.prefPane", - "remoting_me2me_host.app", - "native_messaging_host.app", - "remote_assistance_host.app", - "remoting_host_uninstaller.app", - "remoting/com.google.chrome.remote_desktop.json", - "remoting/com.google.chrome.remote_assistance.json", - "--generated-files-dst", - "PreferencePanes/$prefpane_bundle_name", - "PrivilegedHelperTools/$host_bundle_name", - "PrivilegedHelperTools/$host_bundle_name/Contents/MacOS/$native_messaging_host_bundle_name", - "PrivilegedHelperTools/$host_bundle_name/Contents/MacOS/$remote_assistance_host_bundle_name", - "Applications/$host_uninstaller_name.app", - "Config/com.google.chrome.remote_desktop.json", - "Config/com.google.chrome.remote_assistance.json", - "--defs", - "VERSION=$chrome_version_full", - "VERSION_SHORT=$chrome_version_major.$chrome_version_minor.$chrome_version_build", - "VERSION_MAJOR=$chrome_version_major", - "VERSION_MINOR=$chrome_version_minor", - "HOST_NAME=$host_name", - "HOST_BUNDLE_NAME=$me2me_host_bundle_name", - "HOST_SERVICE_NAME=$host_service_name", - "HOST_UNINSTALLER_NAME=$host_uninstaller_name", - "HOST_PKG=$host_name", - "HOST_SERVICE_PKG=$host_service_name_nospace", - "HOST_UNINSTALLER_PKG=$host_uninstaller_name_nospace", - "BUNDLE_ID_HOST=$bundle_prefix.$host_name_nospace", - "BUNDLE_ID_HOST_SERVICE=$bundle_prefix.$host_service_name_nospace", - "BUNDLE_ID_HOST_UNINSTALLER=$bundle_prefix.$host_uninstaller_name_nospace", - "DMG_VOLUME_NAME=$host_name $chrome_version_full", - "DMG_FILE_NAME=$host_name_nospace-$chrome_version_full", - "NATIVE_MESSAGING_HOST_BUNDLE_NAME=$native_messaging_host_bundle_name", - "REMOTE_ASSISTANCE_HOST_BUNDLE_NAME=$remote_assistance_host_bundle_name", - "PREFPANE_BUNDLE_NAME=$prefpane_bundle_name", - ] - - deps = [ - ":remoting_host_prefpane.prefPane", - ":remoting_host_uninstaller", - ":remoting_me2me_host", - ":remoting_native_messaging_host", - ":remoting_native_messaging_manifests", - "//remoting/host/it2me:remote_assistance_host", - ] - } - - _uninstaller_plist = - "installer/mac/uninstaller/remoting_uninstaller-Info.plist" - - # remoting_uninstaller-InfoPlist.strings - foreach(locale, remoting_locales_with_underscores) { - bundle_data("remoting_uninstaller_strings_${locale}_bundle_data") { - sources = [ - "$root_gen_dir/remoting/host/remoting_uninstaller-InfoPlist.strings/$locale.lproj/InfoPlist.strings", - ] - outputs = [ - "{{bundle_resources_dir}}/$locale.lproj/{{source_file_part}}", - ] - deps = [ - ":remoting_infoplist_strings", - ] - } - } - - mac_app_bundle("remoting_host_uninstaller") { - info_plist = _uninstaller_plist - extra_substitutions = [ - "BUNDLE_ID=$uninstaller_bundle_id", - "VERSION_FULL=$remoting_version_full", - "VERSION_SHORT=$remoting_version_short", - "MACOSX_DEPLOYMENT_TARGET=10.7", - ] - - defines = [ - "HOST_BUNDLE_NAME=\"" + host_bundle_name + "\"", - "PREFPANE_BUNDLE_NAME=\"" + prefpane_bundle_name + "\"", - ] - - sources = [ - "constants_mac.cc", - "constants_mac.h", - "installer/mac/uninstaller/remoting_uninstaller.h", - "installer/mac/uninstaller/remoting_uninstaller.mm", - "installer/mac/uninstaller/remoting_uninstaller_app.h", - "installer/mac/uninstaller/remoting_uninstaller_app.mm", - ] - - libs = [ - "Cocoa.framework", - "CoreFoundation.framework", - "Security.framework", - ] - - deps = [ - ":remoting_host_uninstaller_resources", - ":remoting_host_uninstaller_xibs", - ":remoting_infoplist_strings", - "//base", - ] - foreach(locale, remoting_locales_with_underscores) { - deps += [ ":remoting_uninstaller_strings_${locale}_bundle_data" ] - } - } - - mac_xib_bundle_data("remoting_host_uninstaller_xibs") { - sources = [ - "installer/mac/uninstaller/remoting_uninstaller.xib", - ] - } - - bundle_data("remoting_host_uninstaller_resources") { - sources = [ - "installer/mac/uninstaller/remoting_uninstaller.icns", - ] - - outputs = [ - "{{bundle_resources_dir}}/{{source_file_part}}", - ] - } - - create_bundle("remoting_host_prefpane.prefPane") { - bundle_root_dir = "$root_build_dir/$target_name/Contents" - bundle_resources_dir = bundle_root_dir + "/Resources" - bundle_executable_dir = bundle_root_dir + "/MacOS" - - deps = [ - ":remoting_host_prefpane", - ":remoting_host_prefpane_bundle_data", - ":remoting_host_prefpane_plist_bundle_data", - ":remoting_host_prefpane_resources", - ":remoting_host_prefpane_xibs", - ":remoting_infoplist_strings", - ] - - foreach(locale, remoting_locales_with_underscores) { - deps += [ ":remoting_host_prefpane_strings_${locale}_bundle_data" ] - } - } - - bundle_data("remoting_host_prefpane_bundle_data") { - deps = [ - ":remoting_host_prefpane", - ] - sources = [ - "$root_build_dir/gen/remoting/host/remoting_host_prefpane", - ] - outputs = [ - "{{bundle_executable_dir}}/{{source_file_part}}", - ] - } - - bundle_data("remoting_host_prefpane_resources") { - sources = [ - "//remoting/resources/chromoting128.png", - ] - - outputs = [ - "{{bundle_resources_dir}}/{{source_file_part}}", - ] - } - - loadable_module("remoting_host_prefpane") { - output_dir = "$root_out_dir/gen/remoting/host" - output_extension = "" - - sources = [ - "mac/me2me_preference_pane.h", - "mac/me2me_preference_pane.mm", - "mac/me2me_preference_pane_confirm_pin.h", - "mac/me2me_preference_pane_confirm_pin.mm", - "mac/me2me_preference_pane_disable.h", - "mac/me2me_preference_pane_disable.mm", - ] - - libs = [ - "Cocoa.framework", - "CoreFoundation.framework", - "PreferencePanes.framework", - "Security.framework", - ] - + group("remoting_me2me_host_archive") { deps = [ - ":host", - ":remoting_infoplist_strings", - "//remoting/base", - "//remoting/resources:copy_locales", - "//third_party/jsoncpp", - ] - foreach(locale, remoting_locales_with_underscores) { - deps += [ ":remoting_host_prefpane_strings_${locale}_bundle_data" ] - } - } - - mac_info_plist("remoting_host_prefpane_plist") { - info_plist = "mac/me2me_preference_pane-Info.plist" - extra_substitutions = [ - "BUNDLE_ID=$prefpane_bundle_id", - "VERSION_FULL=$remoting_version_full", - "VERSION_SHORT=$remoting_version_short", - "MACOSX_DEPLOYMENT_TARGET=10.7", - ] - executable_name = "remoting_host_prefpane" - } - - bundle_data("remoting_host_prefpane_plist_bundle_data") { - sources = get_target_outputs(":remoting_host_prefpane_plist") - outputs = [ - "{{bundle_root_dir}}/Info.plist", - ] - public_deps = [ - ":remoting_host_prefpane_plist", - ] - } - - foreach(locale, remoting_locales_with_underscores) { - bundle_data("remoting_host_prefpane_strings_${locale}_bundle_data") { - sources = [ - "$root_gen_dir/remoting/host/me2me_preference_pane-InfoPlist.strings/$locale.lproj/InfoPlist.strings", - ] - outputs = [ - "{{bundle_resources_dir}}/$locale.lproj/{{source_file_part}}", - ] - deps = [ - ":remoting_infoplist_strings", - ] - } - } - - mac_xib_bundle_data("remoting_host_prefpane_xibs") { - sources = [ - "mac/me2me_preference_pane.xib", - "mac/me2me_preference_pane_confirm_pin.xib", - "mac/me2me_preference_pane_disable.xib", - - #"mac/me2me_preference_pane-Info.plist", + "//remoting/host/installer/mac:remoting_me2me_host_archive", ] } } else { diff --git a/chromium/remoting/host/installer/linux/BUILD.gn b/chromium/remoting/host/installer/linux/BUILD.gn new file mode 100644 index 00000000000..f99db93a7d3 --- /dev/null +++ b/chromium/remoting/host/installer/linux/BUILD.gn @@ -0,0 +1,86 @@ +# 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("//remoting/build/config/remoting_build.gni") + +import("//build/config/zip.gni") + +build_deb_script = "build_deb.py" +deb_filename = "$root_build_dir/" + exec_script(build_deb_script, + [ + "-p", + "-s", + rebase_path("//"), + ], + "string", + [ "build-deb.sh" ]) +changes_filename = + "$root_build_dir/" + get_path_info(deb_filename, "name") + ".changes" + +packaging_outputs = [ + deb_filename, + changes_filename, +] + +zip("remoting_me2me_host_archive") { + # Store the installer package(s) into a zip file so there is a + # consistent filename to reference for build archiving (i.e. in + # FILES.cfg). This also avoids possible conflicts with "wildcard" + # package handling in other build/signing scripts. + inputs = packaging_outputs + output = "$root_build_dir/remoting-me2me-host-linux.zip" + deps = [ + ":remoting_me2me_host_copy", + ] +} + +copy("remoting_me2me_host_copy") { + # Copy the debian package file, which has version info in it, + # to a consistewnt filename for use on Chromoting swarming bots. + sources = [ + deb_filename, + ] + outputs = [ + "$root_build_dir/remoting-me2me-host.deb", + ] + public_deps = [ + ":remoting_me2me_host_deb_installer", + ] +} + +action("remoting_me2me_host_deb_installer") { + script = build_deb_script + inputs = [ + build_deb_script, + "Makefile", + "debian/chrome-remote-desktop.init", + "debian/chrome-remote-desktop.pam", + "debian/compat", + "debian/control", + "debian/copyright", + "debian/postinst", + "debian/preinst", + "debian/rules", + ] + outputs = packaging_outputs + sources = [ + "build-deb.sh", + ] + args = [ + "-s", + rebase_path("//"), + "-o", + rebase_path("$root_build_dir"), + ] + + deps = [ + "//remoting/host:remoting_me2me_host", + "//remoting/host:remoting_native_messaging_host", + "//remoting/host:remoting_native_messaging_manifests", + "//remoting/host:remoting_start_host", + "//remoting/host/it2me:remote_assistance_host", + "//remoting/resources", + "//third_party/icu:icudata", + ] +} diff --git a/chromium/remoting/host/installer/mac/BUILD.gn b/chromium/remoting/host/installer/mac/BUILD.gn new file mode 100644 index 00000000000..973d20dbbf7 --- /dev/null +++ b/chromium/remoting/host/installer/mac/BUILD.gn @@ -0,0 +1,160 @@ +# 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("//remoting/build/config/remoting_build.gni") + +import("//build/config/zip.gni") + +action("remoting_me2me_host_archive") { + # TODO(GYP) TODO(crbug.com/622415) This needs work and testing. + + # TODO(GYP) At the very least, we need to add in the localized strings. + + _installer_mac_files = [ + "do_signing.sh", + "do_signing.props", + "ChromotingHost.pkgproj", + "ChromotingHostService.pkgproj", + "ChromotingHostUninstaller.pkgproj", + "LaunchAgents/org.chromium.chromoting.plist", + "PrivilegedHelperTools/org.chromium.chromoting.me2me.sh", + "Scripts/keystone_install.sh", + "Scripts/remoting_postflight.sh", + "Scripts/remoting_preflight.sh", + "Keystone/GoogleSoftwareUpdate.pkg", + "//chrome/installer/mac/pkg-dmg", + ] + + inputs = _installer_mac_files + + zip_path = "$root_build_dir/remoting-me2me-host-mac.zip" + + outputs = [ + "$root_build_dir/remoting-me2me-host-mac.zip", + ] + + script = "//remoting/host/installer/build-installer-archive.py" + + args = [ + rebase_path("$target_gen_dir/remoting_installation", root_build_dir), + rebase_path(zip_path, root_build_dir), + "--source-file-roots", + rebase_path("//remoting/host/installer/mac/", root_build_dir), + rebase_path("//chrome/installer/mac", root_build_dir), + "--source-files", + ] + rebase_path(_installer_mac_files, root_build_dir) + [ + "--generated-files", + "remoting_host_prefpane.prefPane", + "remoting_me2me_host.app", + "native_messaging_host.app", + "remote_assistance_host.app", + "remoting_host_uninstaller.app", + "remoting/com.google.chrome.remote_desktop.json", + "remoting/com.google.chrome.remote_assistance.json", + "--generated-files-dst", + "PreferencePanes/$prefpane_bundle_name", + "PrivilegedHelperTools/$host_bundle_name", + "PrivilegedHelperTools/$host_bundle_name/Contents/MacOS/$native_messaging_host_bundle_name", + "PrivilegedHelperTools/$host_bundle_name/Contents/MacOS/$remote_assistance_host_bundle_name", + "Applications/$host_uninstaller_name.app", + "Config/com.google.chrome.remote_desktop.json", + "Config/com.google.chrome.remote_assistance.json", + "--defs", + "VERSION=$chrome_version_full", + "VERSION_SHORT=$chrome_version_major.$chrome_version_minor.$chrome_version_build", + "VERSION_MAJOR=$chrome_version_major", + "VERSION_MINOR=$chrome_version_minor", + "HOST_NAME=$host_name", + "HOST_BUNDLE_NAME=$me2me_host_bundle_name", + "HOST_SERVICE_NAME=$host_service_name", + "HOST_UNINSTALLER_NAME=$host_uninstaller_name", + "HOST_PKG=$host_name", + "HOST_SERVICE_PKG=$host_service_name_nospace", + "HOST_UNINSTALLER_PKG=$host_uninstaller_name_nospace", + "BUNDLE_ID_HOST=$bundle_prefix.$host_name_nospace", + "BUNDLE_ID_HOST_SERVICE=$bundle_prefix.$host_service_name_nospace", + "BUNDLE_ID_HOST_UNINSTALLER=$bundle_prefix.$host_uninstaller_name_nospace", + "DMG_VOLUME_NAME=$host_name $chrome_version_full", + "DMG_FILE_NAME=$host_name_nospace-$chrome_version_full", + "NATIVE_MESSAGING_HOST_BUNDLE_NAME=$native_messaging_host_bundle_name", + "REMOTE_ASSISTANCE_HOST_BUNDLE_NAME=$remote_assistance_host_bundle_name", + "PREFPANE_BUNDLE_NAME=$prefpane_bundle_name", + ] + + deps = [ + ":remoting_host_uninstaller", + "//remoting/host:remoting_me2me_host", + "//remoting/host:remoting_native_messaging_host", + "//remoting/host:remoting_native_messaging_manifests", + "//remoting/host/it2me:remote_assistance_host", + "//remoting/host/mac:remoting_host_prefpane.prefPane", + ] +} + +_uninstaller_plist = "uninstaller/remoting_uninstaller-Info.plist" + +# remoting_uninstaller-InfoPlist.strings +foreach(locale, remoting_locales_with_underscores) { + bundle_data("remoting_uninstaller_strings_${locale}_bundle_data") { + sources = [ + "$root_gen_dir/remoting/host/remoting_uninstaller-InfoPlist.strings/$locale.lproj/InfoPlist.strings", + ] + outputs = [ + "{{bundle_resources_dir}}/$locale.lproj/{{source_file_part}}", + ] + deps = [ + "//remoting/host:remoting_infoplist_strings", + ] + } +} + +mac_app_bundle("remoting_host_uninstaller") { + info_plist = _uninstaller_plist + extra_substitutions = [ + "BUNDLE_ID=$uninstaller_bundle_id", + "VERSION_FULL=$remoting_version_full", + "VERSION_SHORT=$remoting_version_short", + "MACOSX_DEPLOYMENT_TARGET=10.7", + ] + + sources = [ + "uninstaller/remoting_uninstaller.h", + "uninstaller/remoting_uninstaller.mm", + "uninstaller/remoting_uninstaller_app.h", + "uninstaller/remoting_uninstaller_app.mm", + ] + + libs = [ + "Cocoa.framework", + "CoreFoundation.framework", + "Security.framework", + ] + + deps = [ + ":remoting_host_uninstaller_resources", + ":remoting_host_uninstaller_xibs", + "//base", + "//remoting/host:remoting_infoplist_strings", + "//remoting/host/mac:constants", + ] + foreach(locale, remoting_locales_with_underscores) { + deps += [ ":remoting_uninstaller_strings_${locale}_bundle_data" ] + } +} + +mac_xib_bundle_data("remoting_host_uninstaller_xibs") { + sources = [ + "uninstaller/remoting_uninstaller.xib", + ] +} + +bundle_data("remoting_host_uninstaller_resources") { + sources = [ + "uninstaller/remoting_uninstaller.icns", + ] + + outputs = [ + "{{bundle_resources_dir}}/{{source_file_part}}", + ] +} diff --git a/chromium/remoting/host/installer/win/BUILD.gn b/chromium/remoting/host/installer/win/BUILD.gn index 372ff3745fb..08908831142 100644 --- a/chromium/remoting/host/installer/win/BUILD.gn +++ b/chromium/remoting/host/installer/win/BUILD.gn @@ -140,5 +140,9 @@ if (is_chrome_branded && !is_component_build && target_cpu == "x86") { } } else { group("remoting_host_installation") { + # We still want to build host archive under other configurations. + deps = [ + "//remoting/host:remoting_me2me_host_archive", + ] } } diff --git a/chromium/remoting/host/it2me/BUILD.gn b/chromium/remoting/host/it2me/BUILD.gn index 0ab457b8a52..d2d84cfe657 100644 --- a/chromium/remoting/host/it2me/BUILD.gn +++ b/chromium/remoting/host/it2me/BUILD.gn @@ -153,7 +153,7 @@ if (!is_chromeos && enable_remoting_host) { mac_xib_bundle_data("remote_assistance_host_xibs") { sources = [ - "//remoting/host/disconnect_window.xib", + "//remoting/host/mac/disconnect_window.xib", ] } @@ -214,7 +214,7 @@ if (!is_chromeos && enable_remoting_host) { foreach(locale, remoting_locales_with_underscores) { deps += [ ":remote_assistance_host_strings_${locale}_bundle_data", - "//remoting/host:remoting_host_locale_${locale}_bundle_data", + "//remoting/host/mac:remoting_host_locale_${locale}_bundle_data", ] } deps += [ diff --git a/chromium/remoting/host/linux/BUILD.gn b/chromium/remoting/host/linux/BUILD.gn new file mode 100644 index 00000000000..0745dc5e5fd --- /dev/null +++ b/chromium/remoting/host/linux/BUILD.gn @@ -0,0 +1,98 @@ +# 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("//remoting/build/config/remoting_build.gni") + +group("all_tests") { + testonly = true +} + +if (enable_me2me_host) { + copy("remoting_me2me_host_copy_script") { + sources = [ + "linux_me2me_host.py", + ] + outputs = [ + "$root_build_dir/remoting/chrome-remote-desktop", + ] + } + + copy("remoting_me2me_host_copy_host") { + sources = [ + "remoting_me2me_host_wrapper.sh", + ] + outputs = [ + "$root_build_dir/remoting/chrome-remote-desktop-host", + ] + + deps = [ + "//remoting/host:remoting_me2me_host", + ] + } + + group("remoting_dev_me2me_host") { + deps = [ + ":remoting_me2me_host_copy_host", + ":remoting_me2me_host_copy_script", + ] + } +} + +source_set("linux") { + sources = [ + "audio_pipe_reader.cc", + "audio_pipe_reader.h", + "certificate_watcher.cc", + "certificate_watcher.h", + "unicode_to_keysym.cc", + "unicode_to_keysym.h", + ] + + deps = [ + "//remoting/protocol", + "//third_party/webrtc/modules/desktop_capture", + ] + + if (use_x11) { + deps += [ ":x11" ] + } +} + +source_set("x11") { + sources = [ + "x11_util.cc", + "x11_util.h", + "x_server_clipboard.cc", + "x_server_clipboard.h", + ] + deps = [ + "//third_party/webrtc/modules/desktop_capture", + ] +} + +target("executable", "remoting_native_messaging_host") { + configs += [ "//build/config/compiler:wexit_time_destructors" ] + + sources = [ + "//remoting/host/setup/me2me_native_messaging_host_entry_point.cc", + "//remoting/host/setup/me2me_native_messaging_host_main.cc", + "//remoting/host/setup/me2me_native_messaging_host_main.h", + ] + + deps = [ + "//base", + "//remoting/base:breakpad", + "//remoting/host", + "//remoting/host:remoting_infoplist_strings", + "//remoting/host/native_messaging", + "//remoting/host/setup", + ] + + # The |major|, |build| and |patch| versions are inherited from Chrome. + # Since Chrome's |minor| version is always '0', we replace it with a + # Chromoting-specific patch version. + defines = + [ "VERSION=" + "$chrome_version_major" + "." + "$remoting_version_patch" + + "." + "$chrome_version_build" + "." + "$chrome_version_patch" ] +} diff --git a/chromium/remoting/host/mac/BUILD.gn b/chromium/remoting/host/mac/BUILD.gn new file mode 100644 index 00000000000..96ac977b20d --- /dev/null +++ b/chromium/remoting/host/mac/BUILD.gn @@ -0,0 +1,282 @@ +# 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("//remoting/build/config/remoting_build.gni") + +source_set("constants") { + defines = [ + "HOST_BUNDLE_NAME=\"" + host_bundle_name + "\"", + "PREFPANE_BUNDLE_NAME=\"" + prefpane_bundle_name + "\"", + ] + + sources = [ + "constants_mac.cc", + "constants_mac.h", + ] +} + +# remoting_me2me_host-InfoPlist.strings +foreach(locale, remoting_locales_with_underscores) { + bundle_data("remoting_me2me_host_strings_${locale}_bundle_data") { + sources = [ + "$root_gen_dir/remoting/host/remoting_me2me_host-InfoPlist.strings/$locale.lproj/InfoPlist.strings", + ] + outputs = [ + "{{bundle_resources_dir}}/$locale.lproj/{{source_file_part}}", + ] + deps = [ + "//remoting/host:remoting_infoplist_strings", + ] + } +} + +mac_xib_bundle_data("remoting_host_xibs") { + sources = [ + "disconnect_window.xib", + ] +} + +bundle_data("remoting_host_resources") { + sources = [ + "$root_gen_dir/remoting/CREDITS.txt", + "remoting_me2me_host.icns", + ] + + outputs = [ + "{{bundle_resources_dir}}/{{source_file_part}}", + ] + + public_deps = [ + "//remoting/host/installer:credits", + ] + + if (icu_use_data_file) { + sources += [ "$root_out_dir/icudtl.dat" ] + public_deps += [ "//third_party/icu:icudata" ] + } +} + +target("mac_app_bundle", "remoting_me2me_host") { + extra_configs = [ "//remoting/build/config:version" ] + info_plist = "remoting_me2me_host-Info.plist" + extra_substitutions = [ + "BUNDLE_ID=$host_bundle_id", + "VERSION_FULL=$remoting_version_full", + "VERSION_SHORT=$remoting_version_short", + "MACOSX_DEPLOYMENT_TARGET=10.7", + ] + + if (is_chrome_branded && is_official_build) { + defines = [ "REMOTING_ENABLE_BREAKPAD" ] + } + + deps = [ + "//build/config/sanitizers:deps", + "//remoting/base:breakpad", + "//remoting/host:main", + "//remoting/host:remoting_me2me_host_static", + "//remoting/host/installer:credits", + "//remoting/resources", + ] + + foreach(locale, remoting_locales_with_underscores) { + deps += [ + ":remoting_host_locale_${locale}_bundle_data", + ":remoting_me2me_host_strings_${locale}_bundle_data", + ] + } + deps += [ + ":remoting_host_resources", + ":remoting_host_xibs", + "//remoting/host:remoting_infoplist_strings", + "//remoting/resources:copy_locales", + ] +} + +create_bundle("remoting_host_prefpane.prefPane") { + bundle_root_dir = "$root_build_dir/$target_name/Contents" + bundle_resources_dir = bundle_root_dir + "/Resources" + bundle_executable_dir = bundle_root_dir + "/MacOS" + + deps = [ + ":remoting_host_prefpane", + ":remoting_host_prefpane_bundle_data", + ":remoting_host_prefpane_plist_bundle_data", + ":remoting_host_prefpane_resources", + ":remoting_host_prefpane_xibs", + "//remoting/host:remoting_infoplist_strings", + ] + + foreach(locale, remoting_locales_with_underscores) { + deps += [ ":remoting_host_prefpane_strings_${locale}_bundle_data" ] + } +} + +foreach(locale, remoting_locales_with_underscores) { + bundle_data("remoting_host_locale_${locale}_bundle_data") { + sources = [ + "$root_build_dir/remoting/resources/$locale.lproj/locale.pak", + ] + outputs = [ + "{{bundle_resources_dir}}/$locale.lproj/{{source_file_part}}", + ] + deps = [ + "//remoting/resources:copy_locales", + ] + } +} + +bundle_data("remoting_host_prefpane_bundle_data") { + deps = [ + ":remoting_host_prefpane", + ] + sources = [ + "$root_build_dir/gen/remoting/host/remoting_host_prefpane", + ] + outputs = [ + "{{bundle_executable_dir}}/{{source_file_part}}", + ] +} + +bundle_data("remoting_host_prefpane_resources") { + sources = [ + "//remoting/resources/chromoting128.png", + ] + + outputs = [ + "{{bundle_resources_dir}}/{{source_file_part}}", + ] +} + +# native_messaging_host-InfoPlist.strings +foreach(locale, remoting_locales_with_underscores) { + bundle_data("native_messaging_host_strings_${locale}_bundle_data") { + sources = [ + "$root_gen_dir/remoting/host/native_messaging_host-InfoPlist.strings/$locale.lproj/InfoPlist.strings", + ] + outputs = [ + "{{bundle_resources_dir}}/$locale.lproj/{{source_file_part}}", + ] + deps = [ + "//remoting/host:remoting_infoplist_strings", + ] + } +} + +target("mac_app_bundle", "remoting_native_messaging_host") { + output_name = "native_messaging_host" + info_plist = "../setup/native_messaging_host-Info.plist" + extra_configs = [ "//build/config/compiler:wexit_time_destructors" ] + extra_substitutions = [ + "BUNDLE_ID=$native_messaging_host_bundle_id", + "VERSION_FULL=$remoting_version_full", + "VERSION_SHORT=$remoting_version_short", + "MACOSX_DEPLOYMENT_TARGET=10.7", + ] + + sources = [ + "../setup/me2me_native_messaging_host_entry_point.cc", + "../setup/me2me_native_messaging_host_main.cc", + "../setup/me2me_native_messaging_host_main.h", + ] + + deps = [ + "//base", + "//remoting/base:breakpad", + "//remoting/host", + "//remoting/host:remoting_infoplist_strings", + "//remoting/host/native_messaging", + "//remoting/host/setup", + ] + foreach(locale, remoting_locales_with_underscores) { + deps += [ + ":native_messaging_host_strings_${locale}_bundle_data", + "//remoting/host/mac:remoting_host_locale_${locale}_bundle_data", + ] + } + deps += [ "//remoting/resources:copy_locales" ] + + # The |major|, |build| and |patch| versions are inherited from Chrome. + # Since Chrome's |minor| version is always '0', we replace it with a + # Chromoting-specific patch version. + defines = + [ "VERSION=" + "$chrome_version_major" + "." + "$remoting_version_patch" + + "." + "$chrome_version_build" + "." + "$chrome_version_patch" ] +} + +loadable_module("remoting_host_prefpane") { + output_dir = "$root_out_dir/gen/remoting/host" + output_extension = "" + + sources = [ + "me2me_preference_pane.h", + "me2me_preference_pane.mm", + "me2me_preference_pane_confirm_pin.h", + "me2me_preference_pane_confirm_pin.mm", + "me2me_preference_pane_disable.h", + "me2me_preference_pane_disable.mm", + ] + + libs = [ + "Cocoa.framework", + "CoreFoundation.framework", + "PreferencePanes.framework", + "Security.framework", + ] + + deps = [ + ":constants", + "//remoting/base", + "//remoting/host:host", + "//remoting/host:remoting_infoplist_strings", + "//remoting/resources:copy_locales", + "//third_party/jsoncpp", + ] + foreach(locale, remoting_locales_with_underscores) { + deps += [ ":remoting_host_prefpane_strings_${locale}_bundle_data" ] + } +} + +mac_info_plist("remoting_host_prefpane_plist") { + info_plist = "me2me_preference_pane-Info.plist" + extra_substitutions = [ + "BUNDLE_ID=$prefpane_bundle_id", + "VERSION_FULL=$remoting_version_full", + "VERSION_SHORT=$remoting_version_short", + "MACOSX_DEPLOYMENT_TARGET=10.7", + ] + executable_name = "remoting_host_prefpane" +} + +bundle_data("remoting_host_prefpane_plist_bundle_data") { + sources = get_target_outputs(":remoting_host_prefpane_plist") + outputs = [ + "{{bundle_root_dir}}/Info.plist", + ] + public_deps = [ + ":remoting_host_prefpane_plist", + ] +} + +foreach(locale, remoting_locales_with_underscores) { + bundle_data("remoting_host_prefpane_strings_${locale}_bundle_data") { + sources = [ + "$root_gen_dir/remoting/host/me2me_preference_pane-InfoPlist.strings/$locale.lproj/InfoPlist.strings", + ] + outputs = [ + "{{bundle_resources_dir}}/$locale.lproj/{{source_file_part}}", + ] + deps = [ + "//remoting/host:remoting_infoplist_strings", + ] + } +} + +mac_xib_bundle_data("remoting_host_prefpane_xibs") { + sources = [ + "me2me_preference_pane.xib", + "me2me_preference_pane_confirm_pin.xib", + "me2me_preference_pane_disable.xib", + ] +} diff --git a/chromium/remoting/host/security_key/BUILD.gn b/chromium/remoting/host/security_key/BUILD.gn index 8008b74d2fb..b67c5179894 100644 --- a/chromium/remoting/host/security_key/BUILD.gn +++ b/chromium/remoting/host/security_key/BUILD.gn @@ -36,6 +36,7 @@ source_set("security_key") { ] deps = [ + "//mojo/edk/system", "//remoting/proto", "//third_party/webrtc/modules/desktop_capture", ] @@ -90,14 +91,15 @@ source_set("unit_tests") { public_deps = [ ":test_support", ] + deps = [ + "//mojo/edk/test:test_support", + ] } static_library("test_support") { testonly = true sources = [ - "fake_ipc_security_key_auth_handler.cc", - "fake_ipc_security_key_auth_handler.h", "fake_security_key_ipc_client.cc", "fake_security_key_ipc_client.h", "fake_security_key_ipc_server.cc", diff --git a/chromium/remoting/host/setup/BUILD.gn b/chromium/remoting/host/setup/BUILD.gn index 75926e68e59..d0e992e8032 100644 --- a/chromium/remoting/host/setup/BUILD.gn +++ b/chromium/remoting/host/setup/BUILD.gn @@ -43,6 +43,10 @@ source_set("setup") { "//remoting/host/native_messaging", ] + if (is_mac || is_ios) { + deps += [ "//remoting/host/mac:constants" ] + } + if (is_win) { deps += [ "//remoting/host/win:remoting_lib_idl" ] } diff --git a/chromium/remoting/host/win/BUILD.gn b/chromium/remoting/host/win/BUILD.gn index 470e8e4bf57..d9f0c8a6072 100644 --- a/chromium/remoting/host/win/BUILD.gn +++ b/chromium/remoting/host/win/BUILD.gn @@ -378,6 +378,7 @@ shared_library("remoting_core") { "//base/third_party/dynamic_annotations", "//build/win:default_exe_manifest", "//ipc", + "//mojo/edk/system", "//net", "//remoting/base", "//remoting/base:breakpad", diff --git a/chromium/remoting/protocol/BUILD.gn b/chromium/remoting/protocol/BUILD.gn index 42f29841cdf..3c839d91321 100644 --- a/chromium/remoting/protocol/BUILD.gn +++ b/chromium/remoting/protocol/BUILD.gn @@ -76,6 +76,8 @@ static_library("protocol") { "ice_transport.h", "ice_transport_channel.cc", "ice_transport_channel.h", + "input_event_timestamps.cc", + "input_event_timestamps.h", "input_event_tracker.cc", "input_event_tracker.h", "input_filter.cc", @@ -165,6 +167,7 @@ static_library("protocol") { "v2_authenticator.h", "validating_authenticator.cc", "validating_authenticator.h", + "video_channel_state_observer.h", "video_renderer.h", "video_stats_stub.h", "video_stub.h", @@ -206,6 +209,12 @@ static_library("protocol") { "video_frame_pump.h", "webrtc_audio_module.cc", "webrtc_audio_module.h", + "webrtc_audio_sink_adapter.cc", + "webrtc_audio_sink_adapter.h", + "webrtc_audio_source_adapter.cc", + "webrtc_audio_source_adapter.h", + "webrtc_audio_stream.cc", + "webrtc_audio_stream.h", "webrtc_connection_to_client.cc", "webrtc_connection_to_client.h", "webrtc_connection_to_host.cc", @@ -247,6 +256,8 @@ static_library("test_support") { testonly = true sources = [ + "fake_audio_source.cc", + "fake_audio_source.h", "fake_authenticator.cc", "fake_authenticator.h", "fake_connection_to_client.cc", @@ -314,6 +325,8 @@ source_set("unit_tests") { "v2_authenticator_unittest.cc", "validating_authenticator_unittest.cc", "video_frame_pump_unittest.cc", + "webrtc_audio_source_adapter_unittest.cc", + "webrtc_frame_scheduler_unittest.cc", "webrtc_transport_unittest.cc", ] diff --git a/chromium/remoting/remoting_enable.gni b/chromium/remoting/remoting_enable.gni index 2262ccffec8..0160893bfc4 100644 --- a/chromium/remoting/remoting_enable.gni +++ b/chromium/remoting/remoting_enable.gni @@ -2,10 +2,12 @@ # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. -# Keep in sync with remoting/remoting_enable.gypi. - import("//build/config/ui.gni") +declare_args() { + enable_remoting = !is_ios && !is_chromecast +} + enable_remoting_host = false enable_me2me_host = false diff --git a/chromium/remoting/remoting_version.gni b/chromium/remoting/remoting_version.gni index 565011b15e3..8a0df67463f 100644 --- a/chromium/remoting/remoting_version.gni +++ b/chromium/remoting/remoting_version.gni @@ -77,4 +77,15 @@ if (is_mac) { prefpane_bundle_id = _result.prefpane_bundle_id remote_assistance_host_bundle_id = _result.remote_assistance_host_bundle_id uninstaller_bundle_id = _result.uninstaller_bundle_id + + host_name_nospace = exec_script("//remoting/tools/remove_spaces.py", + [ "$host_name" ], + "trim string") + host_service_name_nospace = exec_script("//remoting/tools/remove_spaces.py", + [ "$host_service_name" ], + "trim string") + host_uninstaller_name_nospace = + exec_script("//remoting/tools/remove_spaces.py", + [ "$host_uninstaller_name" ], + "trim string") } diff --git a/chromium/remoting/signaling/BUILD.gn b/chromium/remoting/signaling/BUILD.gn index 7f0e2c5fd68..7490c7ec93b 100644 --- a/chromium/remoting/signaling/BUILD.gn +++ b/chromium/remoting/signaling/BUILD.gn @@ -14,6 +14,8 @@ static_library("signaling") { "log_to_server.h", "push_notification_subscriber.cc", "push_notification_subscriber.h", + "remoting_bot.cc", + "remoting_bot.h", "server_log_entry.cc", "server_log_entry.h", "signal_strategy.h", diff --git a/chromium/remoting/webapp/build_template.gni b/chromium/remoting/webapp/build_template.gni index 1c893570bcb..e3c03393a9c 100644 --- a/chromium/remoting/webapp/build_template.gni +++ b/chromium/remoting/webapp/build_template.gni @@ -7,6 +7,7 @@ import("//build/config/chrome_build.gni") import("//build/config/features.gni") import("//build/util/version.gni") +import("//remoting/remoting_enable.gni") import("//remoting/remoting_locales.gni") import("//remoting/remoting_options.gni") import("//remoting/remoting_version.gni") -- cgit v1.2.1