Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(854)

Unified Diff: remoting/host/BUILD.gn

Issue 2339163004: Revert of Moving CRD Windows targets to subdirectories. (Closed)
Patch Set: Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « remoting/build/config/BUILD.gn ('k') | remoting/host/desktop_session_win.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: remoting/host/BUILD.gn
diff --git a/remoting/host/BUILD.gn b/remoting/host/BUILD.gn
index 92263a850882578a6dbb04a4e316a151252fe53f..fd1745dc51e5f3963f5c483aa2f10deb425215e6 100644
--- a/remoting/host/BUILD.gn
+++ b/remoting/host/BUILD.gn
@@ -3,38 +3,6 @@
# found in the LICENSE file.
import("//remoting/build/config/remoting_build.gni")
-
-group("all_tests") {
- testonly = true
-
- deps = [
- ":unit_tests",
- ]
-}
-
-group("all") {
- testonly = true
-
- deps = [
- ":host",
- ]
- if (enable_me2me_host) {
- deps += [ "//remoting/host:remoting_me2me_host" ]
- }
-
- if (is_chrome_branded) {
- deps += [ ":remoting_host_branded" ]
- }
-
- if (!is_chromeos && !is_android && !is_ios) {
- deps += [
- "//remoting/host:remoting_native_messaging_host",
- "//remoting/host:remoting_native_messaging_manifests",
- "//remoting/host:remoting_start_host",
- "//remoting/host/it2me:remote_assistance_host",
- ]
- }
-}
process_version("remoting_version") {
template_file = "//remoting/host/version.h.in"
@@ -42,6 +10,85 @@
branding_path,
]
output = "$target_gen_dir/version.h"
+}
+
+if (is_win) {
+ import("//remoting/host/predefines_win.gni")
+} else if (is_mac) {
+ import("//build/config/mac/rules.gni")
+ import("//third_party/icu/config.gni")
+}
+
+if (is_win) {
+ # Reference this manifest to indicate that a process is per-monitor DPI aware.
+ dpi_aware_manifest = "//remoting/host/win/dpi_aware.manifest"
+
+ # Reference this manifest to give the binary the uiAccess privilege.
+ enable_uiaccess_manifest = "//remoting/host/win/enable_uiaccess.manifest"
+
+ # Depending on this target gives the executable a default manifest with the
+ # addition of the DPI aware tag.
+ windows_manifest("dpi_aware_exe_manifest") {
+ sources = [
+ as_invoker_manifest,
+ common_controls_manifest,
+ default_compatibility_manifest,
+ dpi_aware_manifest,
+ ]
+ type = "exe"
+ }
+
+ # Depending on this target gives the executable a default manifest with the
+ # addition of the DPI aware tag and requestedExecutionLevel of
+ # requireAdministrator.
+ windows_manifest("dpi_aware_elevated_exe_manifest") {
+ sources = [
+ common_controls_manifest,
+ default_compatibility_manifest,
+ dpi_aware_manifest,
+ require_administrator_manifest,
+ ]
+ type = "exe"
+ }
+
+ # Depending on this target gives the executable a default manifest with the
+ # addition of the DPI aware tag and enables uiAccess.
+ windows_manifest("dpi_aware_uiaccess_exe_manifest") {
+ sources = [
+ common_controls_manifest,
+ default_compatibility_manifest,
+ dpi_aware_manifest,
+ enable_uiaccess_manifest,
+ ]
+ type = "exe"
+ }
+}
+
+action("credits") {
+ # We put this in $root_build_dir/gen/remoting instead of
+ # $root_build_dir/gen/remoting/host (target_gen_dir) for
+ # compatibility w/ GYP, since the installer needs the file to
+ # be at the same location.
+ about_credits_file = "$root_build_dir/gen/remoting/CREDITS.txt"
+ script = "//tools/licenses.py"
+
+ inputs = [
+ "installer/credits.tmpl",
+ "installer/credits_entry.tmpl",
+ ]
+
+ outputs = [
+ about_credits_file,
+ ]
+
+ args = [
+ "credits",
+ rebase_path(about_credits_file, root_build_dir),
+ "--file-template",
+ rebase_path("installer/credits.tmpl", root_build_dir),
+ "--entry-template",
+ rebase_path("installer/credits_entry.tmpl", root_build_dir),
+ ]
}
# This must be a static library instead of a source set because
@@ -296,6 +343,32 @@
"usage_stats_consent_win.cc",
"username.cc",
"username.h",
+ "win/com_imported_mstscax.tlh",
+ "win/com_security.cc",
+ "win/com_security.h",
+ "win/elevation_helpers.cc",
+ "win/elevation_helpers.h",
+ "win/launch_process_with_token.cc",
+ "win/launch_process_with_token.h",
+ "win/omaha.cc",
+ "win/omaha.h",
+ "win/rdp_client.cc",
+ "win/rdp_client.h",
+ "win/rdp_client_window.cc",
+ "win/rdp_client_window.h",
+ "win/security_descriptor.cc",
+ "win/security_descriptor.h",
+ "win/session_desktop_environment.cc",
+ "win/session_desktop_environment.h",
+ "win/session_input_injector.cc",
+ "win/session_input_injector.h",
+ "win/window_station_and_desktop.cc",
+ "win/window_station_and_desktop.h",
+ "win/worker_process_launcher.cc",
+ "win/worker_process_launcher.h",
+ "win/wts_terminal_monitor.cc",
+ "win/wts_terminal_monitor.h",
+ "win/wts_terminal_observer.h",
]
libs = []
@@ -324,8 +397,6 @@
"//ui/events/platform",
]
- public_deps = []
-
if (enable_configuration_policy) {
deps += [ "//components/policy:generated" ]
}
@@ -425,12 +496,9 @@
if (is_win) {
deps += [
- "//remoting/host/win",
- "//remoting/host/win:messages",
- "//remoting/host/win:remoting_lib_idl",
- ]
-
- public_deps += [ "//remoting/host/win" ]
+ ":messages",
+ ":remoting_lib_idl",
+ ]
}
if (enable_webrtc) {
@@ -539,6 +607,8 @@
"third_party_auth_config_unittest.cc",
"token_validator_factory_impl_unittest.cc",
"touch_injector_win_unittest.cc",
+ "win/rdp_client_unittest.cc",
+ "win/worker_process_launcher_unittest.cc",
]
if (!use_x11 && is_linux) {
@@ -552,6 +622,14 @@
}
if (is_android) {
sources -= [ "it2me/it2me_native_messaging_host_unittest.cc" ]
+ }
+ if (is_win) {
+ sources += [
+ "win/elevated_native_messaging_host.cc",
+ "win/elevated_native_messaging_host.h",
+ "win/launch_native_messaging_host_process.cc",
+ "win/launch_native_messaging_host_process.h",
+ ]
}
configs += [ "//remoting/build/config:version" ]
@@ -569,33 +647,341 @@
"//testing/gmock",
"//testing/gtest",
]
- if (is_win) {
- deps += [ "//remoting/host/win:unit_tests" ]
- }
if (enable_configuration_policy) {
deps += [ "//components/policy/core/browser:test_support" ]
}
}
-group("remoting_host_branded") {
- testonly = true
- deps = []
- if (enable_remoting_host) {
- deps += [ ":remoting_host_installation" ]
- }
- if (enable_me2me_host) {
- deps += [ "//remoting/host:remoting_me2me_host_archive" ]
- }
-}
-
-if (enable_remoting_host) {
- group("remoting_host_installation") {
- deps = []
- if (is_win) {
- deps += [ "//remoting/host/installer/win:remoting_host_installation" ]
- }
- }
+if (is_win) {
+ import("//build/toolchain/win/midl.gni")
+ import("//build/win/message_compiler.gni")
+
+ # TODO(brettw) these should not be generated via exec_script. This should be
+ # part of the build process rather than the metabuild. Instead, a script
+ # should generate a header containing the #defines for this as well as the
+ # IDL file with the values.
+ clsids = exec_script("win/get_clsids.py",
+ [
+ daemon_controller_guid,
+ rdp_desktop_session_guid,
+ chrome_version_full,
+ ],
+ "value")
+ daemon_controller_clsid = clsids[0]
+ rdp_desktop_session_clsid = clsids[1]
+
+ action("generate_idl") {
+ script = "//build/util/version.py"
+
+ inputs = [
+ "win/chromoting_lib_idl.templ",
+ ]
+ outputs = [
+ "$target_gen_dir/chromoting_lib.idl",
+ ]
+
+ args = [
+ "-e",
+ "DAEMON_CONTROLLER_CLSID='$daemon_controller_clsid'",
+ "-e",
+ "RDP_DESKTOP_SESSION_CLSID='$rdp_desktop_session_clsid'",
+ rebase_path(inputs[0], root_build_dir),
+ rebase_path(outputs[0], root_build_dir),
+ ]
+ }
+
+ midl("remoting_lib_idl") {
+ sources = get_target_outputs(":generate_idl")
+ deps = [
+ ":generate_idl",
+ ]
+ }
+
+ config("MIDL_config") {
+ if (is_clang) {
+ cflags = [
+ # MIDL generated code has a habit of omitting optional braces.
+ "-Wno-missing-braces",
+
+ # Source files generated by the MIDL compiler trigger warnings with
+ # -Wincompatible-pointer-types enabled.
+ "-Wno-incompatible-pointer-types",
+
+ # Generated code contains unused variables.
+ "-Wno-unused-variable",
+
+ # PROXYFILE_LIST_START is an extern with initializer.
+ "-Wno-extern-initializer",
+ ]
+ }
+ }
+
+ static_library("remoting_lib_ps") {
+ configs += [ ":MIDL_config" ]
+
+ defines = [
+ "ENTRY_PREFIX=Ps",
+ "REGISTER_PROXY_DLL",
+ ]
+
+ deps = [
+ ":remoting_lib_idl",
+ ]
+
+ sources = [
+ "$root_gen_dir/remoting/host/chromoting_lib.dlldata.c",
+ "$root_gen_dir/remoting/host/chromoting_lib_p.c",
+ ]
+ }
+
+ # Makes the .mc file from the .mc.jinja file.
+ remoting_localize("messages_localizing") {
+ sources = [
+ "win/host_messages.mc.jinja2",
+ ]
+ locales = remoting_locales
+ locale_dir = webapp_locale_dir
+ encoding = "utf-16"
+
+ # This target is funny. It only produces one file and the output doesn't
+ # match the input. We want to generate remoting_host_messages.mc from
+ # host_messages.mg.jinja2. GN complains if it doesn't see a pattern in the
+ # output, so the following pattern produces the name we want with a template
+ # based on the input.
+ #
+ # TODO: This is for GYP compat. We should just make the names match instead.
+ output = "$target_gen_dir/remoting_{{source_name_part}}"
+ }
+
+ # Makes the .h/.rc files from the .mc file.
+ message_compiler("messages") {
+ compile_generated_code = false
+ sources = get_target_outputs(":messages_localizing")
+ deps = [
+ ":messages_localizing",
+ ]
+ }
+
+ executable("remoting_console") {
+ configs += [ "//build/config/compiler:wexit_time_destructors" ]
+
+ defines = host_predefines + [ "BINARY=BINARY_HOST_ME2ME" ]
+
+ deps = [
+ ":dpi_aware_exe_manifest",
+ ":remoting_core",
+ ":remoting_windows_resources",
+ ]
+
+ sources = [
+ "$root_gen_dir/remoting/version.rc",
+ "win/entry_point.cc",
+ ]
+
+ ldflags = [
+ "/ENTRY:HostEntryPoint",
+ # "/NODEFAULTLIB",
+ ]
+ }
+
+ shared_library("remoting_core") {
+ configs += [ "//build/config/compiler:wexit_time_destructors" ]
+
+ defines = host_predefines + [
+ "_ATL_APARTMENT_THREADED",
+ "_ATL_CSTRING_EXPLICIT_CONSTRUCTORS",
+ "_ATL_NO_AUTOMATIC_NAMESPACE",
+ "_ATL_NO_EXCEPTIONS",
+ "BINARY=BINARY_CORE",
+ "DAEMON_CONTROLLER_CLSID=\"$daemon_controller_clsid\"",
+ "RDP_DESKTOP_SESSION_CLSID=\"$rdp_desktop_session_clsid\"",
+ "HOST_IMPLEMENTATION",
+ "ISOLATION_AWARE_ENABLED=1",
+ "STRICT",
+ "VERSION=$chrome_version_full",
+ ]
+
+ if (remoting_multi_process != 0 && remoting_rdp_session != 0) {
+ defines += [ "REMOTING_RDP_SESSION" ]
+ }
+
+ if (remoting_multi_process != 0) {
+ defines += [ "REMOTING_MULTI_PROCESS" ]
+ }
+
+ deps = [
+ ":host",
+ ":messages",
+ ":remoting_lib_idl",
+ ":remoting_lib_ps",
+ ":remoting_me2me_host_static",
+ ":remoting_windows_resources",
+ "//base",
+ "//base:base_static",
+ "//base/allocator",
+ "//base/third_party/dynamic_annotations",
+ "//build/win:default_exe_manifest",
+ "//ipc",
+ "//net",
+ "//remoting/base",
+ "//remoting/base:breakpad",
+ "//remoting/codec",
+ "//remoting/host/it2me:common",
+ "//remoting/host/native_messaging",
+ "//remoting/host/security_key:main",
+ "//remoting/host/setup",
+ "//remoting/protocol",
+ "//sandbox/win:sandbox", # Should always use Windows version
+ "//third_party/webrtc/modules/desktop_capture",
+ ]
+
+ sources = [
+ "$root_gen_dir/remoting/core.rc",
+ "$root_gen_dir/remoting/host/remoting_host_messages.rc",
+ "$root_gen_dir/remoting/version.rc",
+ "desktop_process_main.cc",
+ "host_main.cc",
+ "host_main.h",
+ "it2me/it2me_native_messaging_host_main.cc",
+ "it2me/it2me_native_messaging_host_main.h",
+ "setup/host_starter.cc",
+ "setup/host_starter.h",
+ "setup/me2me_native_messaging_host_main.cc",
+ "setup/me2me_native_messaging_host_main.h",
+ "setup/start_host_main.cc",
+ "setup/start_host_main.h",
+ "win/chromoting_lib.rc",
+ "win/chromoting_module.cc",
+ "win/chromoting_module.h",
+ "win/core.cc",
+ "win/core_resource.h",
+ "win/elevated_native_messaging_host.cc",
+ "win/elevated_native_messaging_host.h",
+ "win/host_service.cc",
+ "win/host_service.h",
+ "win/launch_native_messaging_host_process.cc",
+ "win/launch_native_messaging_host_process.h",
+ "win/omaha.cc",
+ "win/omaha.h",
+ "win/rdp_desktop_session.cc",
+ "win/rdp_desktop_session.h",
+ "win/unprivileged_process_delegate.cc",
+ "win/unprivileged_process_delegate.h",
+ "win/wts_session_process_delegate.cc",
+ "win/wts_session_process_delegate.h",
+ "worker_process_ipc_delegate.h",
+ ]
+
+ ldflags = [
+ "/EXPORT:DllGetClassObject=PsDllGetClassObject,PRIVATE",
+ "/EXPORT:DllCanUnloadNow=PsDllCanUnloadNow,PRIVATE",
+ "/EXPORT:DllRegisterServer=PsDllRegisterServer,PRIVATE",
+ "/EXPORT:DllUnregisterServer=PsDllUnregisterServer,PRIVATE",
+ ]
+
+ libs = [
+ "comctl32.lib",
+ "rpcns4.lib",
+ "rpcrt4.lib",
+ "sas.lib",
+ "uuid.lib",
+ "wtsapi32.lib",
+ ]
+
+ if (is_clang) {
+ cflags = [ "-Wno-header-hygiene" ]
+ }
+ }
+
+ executable("remoting_desktop") {
+ configs += [
+ "//build/config/compiler:wexit_time_destructors",
+ "//build/config/win:windowed",
+ ]
+
+ defines = host_predefines + [ "BINARY=BINARY_DESKTOP" ]
+
+ deps = [
+ ":remoting_core",
+ ":remoting_windows_resources",
+ ]
+
+ if (is_official_build) {
+ deps += [ ":dpi_aware_elevated_exe_manifest" ]
+ } else {
+ deps += [ ":dpi_aware_exe_manifest" ]
+ }
+
+ sources = [
+ "$root_gen_dir/remoting/version.rc",
+ "win/entry_point.cc",
+ ]
+
+ ldflags = [
+ "/ENTRY:HostEntryPoint",
+ # "/NODEFAULTLIB",
+ ]
+ }
+
+ executable("remoting_native_messaging_host") {
+ configs += [ "//build/config/compiler:wexit_time_destructors" ]
+
+ defines = host_predefines + [ "BINARY=BINARY_NATIVE_MESSAGING_HOST" ]
+
+ deps = [
+ ":remoting_core",
+ ":remoting_windows_resources",
+ "//build/win:default_exe_manifest",
+ ]
+
+ 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_infoplist_strings",
+ "//remoting/resources:copy_locales",
+ ]
+ }
+
+ sources = [
+ "$root_gen_dir/remoting/version.rc",
+ "setup/me2me_native_messaging_host_entry_point.cc",
+ ]
+ }
+
+ remoting_localize("remoting_windows_resources") {
+ deps = [
+ "//remoting/resources",
+ ]
+
+ sources = [
+ "win/core.rc.jinja2",
+ "win/version.rc.jinja2",
+ ]
+
+ # TODO(zijiehe): Export lastchange_path from
+ # //chrome/version.gni:process_version
+ variables = [
+ rebase_path(chrome_version_file),
+ rebase_path(remoting_version_file),
+ rebase_path("//build/util/LASTCHANGE"),
+ ]
+
+ output = "$root_gen_dir/remoting/{{source_name_part}}"
+
+ locale_dir = webapp_locale_dir
+
+ encoding = "utf-16"
+
+ locales = remoting_locales
+ }
+
+ # TODO(GYP) More Windows remoting targets from remoting_host_win.gypi
}
if (enable_remoting_host && !is_android) {
@@ -614,9 +1000,9 @@
defines = host_predefines + [ "BINARY=BINARY_REMOTING_START_HOST" ]
deps += [
+ ":remoting_core",
+ ":remoting_windows_resources",
"//build/win:default_exe_manifest",
- "//remoting/host/win:remoting_core",
- "//remoting/host/win:remoting_windows_resources",
]
} else {
sources += [
@@ -742,10 +1128,7 @@
]
defines = []
- configs += [
- "//remoting/build/config:version",
- "//remoting/build/config:remoting_me2me_host",
- ]
+ configs += [ "//remoting/build/config:version" ]
deps = [
"//base",
@@ -779,18 +1162,43 @@
if (is_mac && is_official_build) {
sources += [ "internal/internal_mac-inl.h" ]
+ defines += [ "USE_REMOTING_MACOSX_INTERNAL" ]
+ }
+
+ if (is_win && remoting_multi_process != 0 && remoting_rdp_session != 0) {
+ defines += [ "REMOTING_RDP_SESSION" ]
+ }
+
+ if (remoting_multi_process != 0) {
+ defines += [ "REMOTING_MULTI_PROCESS" ]
}
}
if (is_win) {
- group("remoting_me2me_host") {
+ executable("remoting_me2me_host") {
+ configs += [
+ "//build/config/compiler:wexit_time_destructors",
+ "//build/config/win:windowed",
+ ]
+
+ defines = host_predefines + [ "BINARY=BINARY_HOST_ME2ME" ]
+
deps = [
- "//remoting/host/win:remoting_me2me_host",
- ]
- }
- group("remoting_native_messaging_host") {
- deps = [
- "//remoting/host/win:remoting_native_messaging_host",
+ ":dpi_aware_exe_manifest",
+ ":remoting_core",
+ ":remoting_windows_resources",
+ ]
+
+ sources = [
+ "$root_gen_dir/remoting/version.rc",
+ "win/entry_point.cc",
+ ]
+
+ output_name = "remoting_host"
+
+ ldflags = [
+ "/ENTRY:HostEntryPoint",
+ # "/NODEFAULTLIB",
]
}
} else {
@@ -833,7 +1241,7 @@
]
public_deps = [
- "//remoting/host/installer:credits",
+ ":credits",
]
if (icu_use_data_file) {
@@ -867,10 +1275,10 @@
}
deps = [
+ ":credits",
":remoting_me2me_host_static",
"//build/config/sanitizers:deps",
"//remoting/base:breakpad",
- "//remoting/host/installer:credits",
"//remoting/resources",
]
if (is_mac) {
@@ -935,7 +1343,7 @@
}
}
- target(app_target_type, "remoting_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" ]
@@ -1064,8 +1472,8 @@
]
deps = [
+ ":native_messaging_host",
":remoting_me2me_host",
- ":remoting_native_messaging_host",
":remoting_native_messaging_manifests",
":remoting_start_host",
"//remoting/host/it2me:remote_assistance_host",
@@ -1074,10 +1482,107 @@
]
}
} else if (is_win) {
- group("remoting_me2me_host_archive") {
+ action("remoting_me2me_host_archive") {
+ script = "//remoting/host/installer/build-installer-archive.py"
+
deps = [
- "//remoting/host/installer/win:remoting_me2me_host_archive",
- ]
+ ":credits",
+ ":remoting_core",
+ ":remoting_desktop",
+ ":remoting_me2me_host",
+ ":remoting_native_messaging_host",
+ ":remoting_native_messaging_manifests",
+ ":remoting_start_host",
+ "it2me:remote_assistance_host",
+ "it2me:remote_assistance_host_uiaccess",
+ "//remoting/host/security_key:remote_security_key",
+ "//third_party/icu:icudata",
+ ]
+
+ _output = "$root_out_dir/remoting-me2me-host-$target_os.zip"
+
+ outputs = [
+ _output,
+ ]
+ if (is_chrome_branded) {
+ _branding = "Chrome"
+ } else {
+ _branding = "Chromium"
+ }
+
+ if (is_official_build) {
+ _official_build = "1"
+ } else {
+ _official_build = "0"
+ }
+
+ # Due to GN build issue http://crbug.com/633650, we need to actively set
+ # inputs parameter to tell GN to depend on these files. So change to each
+ # following files will trigger this target to be rebuilt.
+ # TODO(zijiehe): Remove inputs parameter once bug 633650 has been
+ # addressed.
+ inputs = [
+ "$root_out_dir/remote_assistance_host.exe",
+ "$root_out_dir/remote_assistance_host_uiaccess.exe",
+ "$root_out_dir/remote_security_key.exe",
+ "$root_out_dir/remoting_core.dll",
+ "$root_out_dir/remoting_desktop.exe",
+ "$root_out_dir/remoting_host.exe",
+ "$root_out_dir/remoting_native_messaging_host.exe",
+ "$root_out_dir/remoting_start_host.exe",
+ "$root_gen_dir/remoting/CREDITS.txt",
+ "$root_out_dir/remoting/com.google.chrome.remote_assistance.json",
+ "$root_out_dir/remoting/com.google.chrome.remote_desktop.json",
+ "$root_out_dir/icudtl.dat",
+ ]
+
+ _generated_files = rebase_path(inputs, root_build_dir)
+ _generated_files += [ rebase_path("//remoting/resources/chromoting.ico") ]
+
+ # _generated_dst_files must contain the same files in the same order as
+ # _generated_files, otherwise the Windows MSI will not be built correctly.
+ _generated_dst_files = [
+ "files/remote_assistance_host.exe",
+ "files/remote_assistance_host_uiaccess.exe",
+ "files/remote_security_key.exe",
+ "files/remoting_core.dll",
+ "files/remoting_desktop.exe",
+ "files/remoting_host.exe",
+ "files/remoting_native_messaging_host.exe",
+ "files/remoting_start_host.exe",
+ "files/CREDITS.txt",
+ "files/com.google.chrome.remote_assistance.json",
+ "files/com.google.chrome.remote_desktop.json",
+ "files/icudtl.dat",
+ "files/chromoting.ico",
+ ]
+
+ args =
+ [
+ rebase_path("$root_gen_dir/remoting_installation", root_build_dir),
+ rebase_path(_output, root_build_dir),
+ "--source-file-roots",
+ rebase_path("//remoting/host/installer/win"),
+ "--source-files",
+ rebase_path("//remoting/host/installer/win/chromoting.wxs"),
+ rebase_path("//remoting/host/installer/win/parameters.json"),
+
+ # Input files
+ "--generated-files",
+ ] + _generated_files +
+ [
+ # Position of files in zip file
+ "--generated-files-dst",
+ ] + _generated_dst_files +
+ [
+ # Defs
+ "--defs",
+ "BRANDING=$_branding",
+ "DAEMON_CONTROLLER_CLSID={$daemon_controller_clsid}",
+ "RDP_DESKTOP_SESSION_CLSID={$rdp_desktop_session_clsid}",
+ "VERSION=$chrome_version_full",
+ "OFFICIAL_BUILD=$_official_build",
+ ]
}
} else if (is_mac) {
import("//build/config/zip.gni")
@@ -1165,10 +1670,10 @@
]
deps = [
+ ":native_messaging_host",
":remoting_host_prefpane.prefPane",
":remoting_host_uninstaller",
":remoting_me2me_host",
- ":remoting_native_messaging_host",
":remoting_native_messaging_manifests",
"//remoting/host/it2me:remote_assistance_host",
]
@@ -1369,4 +1874,37 @@
group("remoting_me2me_host_archive") {
}
}
+
+ if (is_win && is_chrome_branded) {
+ # We do not release a 64 bits binary. So to avoid any potential
+ # misunderstanding, we only build 32 bits MSI file.
+ if (!is_component_build && target_cpu == "x86") {
+ # The script uses "ia32" instead of "x86".
+ msi_script_arch = "ia32"
+
+ action("remoting_host_installation") {
+ deps = [
+ "//remoting/host:remoting_me2me_host_archive",
+ ]
+ script = "../tools/zip2msi.py"
+ outputs = [
+ "$root_out_dir/chromoting.msi",
+ ]
+ args = [
+ "--wix_path",
+ rebase_path("//third_party/wix"),
+ "--intermediate_dir",
+ rebase_path("$root_gen_dir/remoting_installation", root_build_dir),
+ "--target_arch",
+ msi_script_arch,
+ rebase_path("$root_out_dir/remoting-me2me-host-$current_os.zip",
+ root_build_dir),
+ rebase_path(outputs[0], root_build_dir),
+ ]
+ }
+ } else {
+ group("remoting_host_installation") {
+ }
+ }
+ }
}
« no previous file with comments | « remoting/build/config/BUILD.gn ('k') | remoting/host/desktop_session_win.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698