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

Unified Diff: remoting/host/BUILD.gn

Issue 977943003: Fix remoting GN Mac build. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 10 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.gn ('k') | no next file » | 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 2b380378655f00bb26d9c85ffb491d559e4ca0a3..417fc010f3f7dcae8468a23a4f4bb28bf0339de7 100644
--- a/remoting/host/BUILD.gn
+++ b/remoting/host/BUILD.gn
@@ -9,322 +9,332 @@ import("//remoting/remoting_srcs.gni")
import("//remoting/remoting_version.gni")
import("//remoting/tools/build/remoting_localize.gni")
-# This must be a static library instead of a source set because
-# remoting_unittests requires that remoting_me2me_host.cc not be pulled in,
-# which in turn depends on remoting_me2me_host_static which isn't part of that
-# build.
-#
-# TODO fix this, successful builds should not depend on static libraries
-# stripping code.
-static_library("host") {
- sources = rebase_path(remoting_host_srcs_gypi_values.remoting_host_sources,
- ".",
- "//remoting")
-
- libs = []
-
- configs += [ "//build/config/compiler:wexit_time_destructors" ]
-
- defines = [ "WEBRTC_CHROMIUM_BUILD" ]
-
- deps = [
- "//base:i18n",
- "//components/policy:policy",
- "//components/policy:policy_component_common",
- "//crypto",
- "//google_apis",
- "//ipc",
- "//remoting/base",
- "//remoting/protocol",
- "//remoting/resources",
- "//ui/events/platform",
- "//ui/events:dom4_keycode_converter",
- ]
-
- if (is_linux && !is_chromeos) {
- libs += [ "pam" ]
+if (is_mac) { # TODO(GYP) Mac build of remoting host.
+ group("host") {
}
-
- if (use_x11) {
- configs += [
- "//build/config/linux:x11",
- "//build/config/linux:xrandr",
- ]
- if (!is_chromeos) {
- deps += [ "//build/config/linux/gtk" ]
- }
- } else {
- sources -= [
- "clipboard_x11.cc",
- "input_injector_x11.cc",
- "local_input_monitor_x11.cc",
- ]
- if (is_linux) {
- # These will already be filtered out on non-Linux.
- sources -= [
- "linux/x_server_clipboard.cc",
- "linux/x_server_clipboard.h",
- ]
- }
+ group("test_support") {
+ }
+ group("unit_tests") {
}
+} else {
+ # This must be a static library instead of a source set because
+ # remoting_unittests requires that remoting_me2me_host.cc not be pulled in,
+ # which in turn depends on remoting_me2me_host_static which isn't part of that
+ # build.
+ #
+ # TODO fix this, successful builds should not depend on static libraries
+ # stripping code.
+ static_library("host") {
+ sources = rebase_path(remoting_host_srcs_gypi_values.remoting_host_sources,
+ ".",
+ "//remoting")
- if (is_chromeos) {
- deps += [
- "//cc",
- "//ppapi/host",
- "//skia",
- "//ui/aura",
- "//ui/compositor",
- "//ui/events",
- "//ui/views",
- ]
+ libs = []
- if (use_ash) {
- deps += [ "//ash" ]
- }
+ configs += [ "//build/config/compiler:wexit_time_destructors" ]
+
+ defines = [ "WEBRTC_CHROMIUM_BUILD" ]
+
+ deps = [
+ "//base:i18n",
+ "//components/policy:policy",
+ "//components/policy:policy_component_common",
+ "//crypto",
+ "//google_apis",
+ "//ipc",
+ "//remoting/base",
+ "//remoting/protocol",
+ "//remoting/resources",
+ "//ui/events/platform",
+ "//ui/events:dom4_keycode_converter",
+ ]
- if (!use_x11) {
- sources -= [ "input_injector_x11.cc" ]
+ if (is_linux && !is_chromeos) {
+ libs += [ "pam" ]
}
- if (use_ozone) {
- deps += [ "//ui/ozone" ]
+ if (use_x11) {
+ configs += [
+ "//build/config/linux:x11",
+ "//build/config/linux:xrandr",
+ ]
+ if (!is_chromeos) {
+ deps += [ "//build/config/linux/gtk" ]
+ }
} else {
sources -= [
"clipboard_x11.cc",
- "input_injector_chromeos.cc",
- "input_injector_chromeos.h",
- "linux/x_server_clipboard.cc",
- "linux/x_server_clipboard.h",
+ "input_injector_x11.cc",
"local_input_monitor_x11.cc",
]
+ if (is_linux) {
+ # These will already be filtered out on non-Linux.
+ sources -= [
+ "linux/x_server_clipboard.cc",
+ "linux/x_server_clipboard.h",
+ ]
+ }
}
- sources -= [
- "continue_window_linux.cc",
- "disconnect_window_linux.cc",
- ]
- }
+ if (is_chromeos) {
+ deps += [
+ "//cc",
+ "//ppapi/host",
+ "//skia",
+ "//ui/aura",
+ "//ui/compositor",
+ "//ui/events",
+ "//ui/views",
+ ]
- if (is_mac) {
- # TODO(GYP) Mac host_bundle_name and prefpane_bundle_name.
- # Note if you are looking at this: It really sucks to have to synchronously
- # call into python twice to get these values. They should instead be
- # written into a generated header via the process_version template, and we
- # change the source files to include that header rather than rely on these
- # defines being set in the build.
- #defines += [
- # "HOST_BUNDLE_NAME=\"$host_bundle_name\"",
- # "PREFPANE_BUNDLE_NAME=\"$prefpane_bundle_name\"",
- #]
-
- libs += [
- "Accelerate.framework",
- "libpam.a",
- ]
+ if (use_ash) {
+ deps += [ "//ash" ]
+ }
+
+ if (!use_x11) {
+ sources -= [ "input_injector_x11.cc" ]
+ }
+
+ if (use_ozone) {
+ deps += [ "//ui/ozone" ]
+ } else {
+ sources -= [
+ "clipboard_x11.cc",
+ "input_injector_chromeos.cc",
+ "input_injector_chromeos.h",
+ "linux/x_server_clipboard.cc",
+ "linux/x_server_clipboard.h",
+ "local_input_monitor_x11.cc",
+ ]
+ }
- deps += [ "//google_toolbox_for_mac" ]
- }
+ sources -= [
+ "continue_window_linux.cc",
+ "disconnect_window_linux.cc",
+ ]
+ }
- if (is_win) {
- deps += [
- ":messages",
- ":remoting_lib_idl",
- ]
- }
+ if (is_mac) {
+ # TODO(GYP) Mac host_bundle_name and prefpane_bundle_name.
+ # Note if you are looking at this: It really sucks to have to synchronously
+ # call into python twice to get these values. They should instead be
+ # written into a generated header via the process_version template, and we
+ # change the source files to include that header rather than rely on these
+ # defines being set in the build.
+ #defines += [
+ # "HOST_BUNDLE_NAME=\"$host_bundle_name\"",
+ # "PREFPANE_BUNDLE_NAME=\"$prefpane_bundle_name\"",
+ #]
+
+ libs += [
+ "Accelerate.framework",
+ "libpam.a",
+ ]
- if (enable_webrtc) {
- deps += [
- "//third_party/libjingle:libpeerconnection",
- "//third_party/webrtc/modules/desktop_capture",
- ]
+ deps += [ "//third_party/google_toolbox_for_mac" ]
+ }
- sources += rebase_path(remoting_host_srcs_gypi_values.remoting_cast_sources,
- ".",
- "//remoting")
- }
-}
+ if (is_win) {
+ deps += [
+ ":messages",
+ ":remoting_lib_idl",
+ ]
+ }
-source_set("test_support") {
- testonly = true
-
- sources = [
- "fake_desktop_capturer.cc",
- "fake_desktop_capturer.h",
- "fake_desktop_environment.cc",
- "fake_desktop_environment.h",
- "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",
- ]
-
- deps = [
- "//remoting/proto",
- "//testing/gtest",
- ]
- public_deps = [
- ":host",
- ]
-
- if (enable_webrtc) {
- public_deps += [
- "//third_party/libjingle:libpeerconnection",
- "//third_party/webrtc/modules/desktop_capture",
- ]
- }
-}
+ if (enable_webrtc) {
+ deps += [
+ "//third_party/libjingle:libpeerconnection",
+ "//third_party/webrtc/modules/desktop_capture",
+ ]
-# The host portions of the remoting unit tests.
-source_set("unit_tests") {
- testonly = true
-
- sources = [
- "audio_pump_unittest.cc",
- "audio_silence_detector_unittest.cc",
- "capture_scheduler_unittest.cc",
- "chromeos/aura_desktop_capturer_unittest.cc",
- "chromeos/clipboard_aura_unittest.cc",
- "chromoting_host_context_unittest.cc",
- "chromoting_host_unittest.cc",
- "client_session_unittest.cc",
- "config_file_watcher_unittest.cc",
- "daemon_process_unittest.cc",
- "desktop_process_unittest.cc",
- "desktop_shape_tracker_unittest.cc",
- "gnubby_auth_handler_posix_unittest.cc",
- "heartbeat_sender_unittest.cc",
- "host_change_notification_listener_unittest.cc",
- "host_config_unittest.cc",
- "host_extension_session_manager_unittest.cc",
- "host_mock_objects.cc",
- "host_status_logger_unittest.cc",
- "ipc_desktop_environment_unittest.cc",
- "it2me/it2me_confirmation_dialog_proxy_unittest.cc",
- "it2me/it2me_native_messaging_host_unittest.cc",
- "linux/audio_pipe_reader_unittest.cc",
- "linux/unicode_to_keysym_unittest.cc",
- "linux/x_server_clipboard_unittest.cc",
- "local_input_monitor_unittest.cc",
- "mouse_shape_pump_unittest.cc",
- "native_messaging/native_messaging_reader_unittest.cc",
- "native_messaging/native_messaging_writer_unittest.cc",
- "pairing_registry_delegate_linux_unittest.cc",
- "pairing_registry_delegate_win_unittest.cc",
- "pin_hash_unittest.cc",
- "policy_watcher_unittest.cc",
- "register_support_host_request_unittest.cc",
- "remote_input_filter_unittest.cc",
- "resizing_host_observer_unittest.cc",
- "screen_resolution_unittest.cc",
- "server_log_entry_host_unittest.cc",
- "setup/me2me_native_messaging_host_unittest.cc",
- "setup/oauth_helper_unittest.cc",
- "setup/pin_validator_unittest.cc",
- "shaped_desktop_capturer_unittest.cc",
- "token_validator_factory_impl_unittest.cc",
- "video_frame_pump_unittest.cc",
- "video_frame_recorder_unittest.cc",
- "win/rdp_client_unittest.cc",
- "win/worker_process_launcher.cc",
- "win/worker_process_launcher.h",
- "win/worker_process_launcher_unittest.cc",
- ]
-
- if (use_ozone || is_chromeos) {
- sources -= [ "local_input_monitor_unittest.cc" ]
- }
- if (is_chromeos) {
- sources -= [ "linux/x_server_clipboard_unittest.cc" ]
+ sources +=
+ rebase_path(remoting_host_srcs_gypi_values.remoting_cast_sources,
+ ".",
+ "//remoting")
+ }
}
- deps = [
- ":host",
- ":test_support",
- "//components/policy:policy_component_test_support",
- "//remoting/host/setup",
- "//remoting/host/it2me:common",
- "//remoting/host/native_messaging",
- "//remoting/proto",
- "//skia",
- "//testing/gmock",
- "//testing/gtest",
- ]
-}
+ source_set("test_support") {
+ testonly = true
-if (is_win) {
- import("//build/toolchain/win/midl.gni")
- import("//remoting/tools/build/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",
- [
- remoting_srcs_gypi_values.daemon_controller_guid,
- remoting_srcs_gypi_values.rdp_desktop_session_guid,
- 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),
+ sources = [
+ "fake_desktop_capturer.cc",
+ "fake_desktop_capturer.h",
+ "fake_desktop_environment.cc",
+ "fake_desktop_environment.h",
+ "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",
]
- }
- midl("remoting_lib_idl") {
- sources = get_target_outputs(":generate_idl")
deps = [
- ":generate_idl",
+ "//remoting/proto",
+ "//testing/gtest",
]
+ public_deps = [
+ ":host",
+ ]
+
+ if (enable_webrtc) {
+ public_deps += [
+ "//third_party/libjingle:libpeerconnection",
+ "//third_party/webrtc/modules/desktop_capture",
+ ]
+ }
}
- # Makes the .mc file from the .mc.jinja file.
- remoting_localize("messages_localizing") {
+ # The host portions of the remoting unit tests.
+ source_set("unit_tests") {
+ testonly = true
+
sources = [
- "win/host_messages.mc.jinja2",
+ "audio_pump_unittest.cc",
+ "audio_silence_detector_unittest.cc",
+ "capture_scheduler_unittest.cc",
+ "chromeos/aura_desktop_capturer_unittest.cc",
+ "chromeos/clipboard_aura_unittest.cc",
+ "chromoting_host_context_unittest.cc",
+ "chromoting_host_unittest.cc",
+ "client_session_unittest.cc",
+ "config_file_watcher_unittest.cc",
+ "daemon_process_unittest.cc",
+ "desktop_process_unittest.cc",
+ "desktop_shape_tracker_unittest.cc",
+ "gnubby_auth_handler_posix_unittest.cc",
+ "heartbeat_sender_unittest.cc",
+ "host_change_notification_listener_unittest.cc",
+ "host_config_unittest.cc",
+ "host_extension_session_manager_unittest.cc",
+ "host_mock_objects.cc",
+ "host_status_logger_unittest.cc",
+ "ipc_desktop_environment_unittest.cc",
+ "it2me/it2me_confirmation_dialog_proxy_unittest.cc",
+ "it2me/it2me_native_messaging_host_unittest.cc",
+ "linux/audio_pipe_reader_unittest.cc",
+ "linux/unicode_to_keysym_unittest.cc",
+ "linux/x_server_clipboard_unittest.cc",
+ "local_input_monitor_unittest.cc",
+ "mouse_shape_pump_unittest.cc",
+ "native_messaging/native_messaging_reader_unittest.cc",
+ "native_messaging/native_messaging_writer_unittest.cc",
+ "pairing_registry_delegate_linux_unittest.cc",
+ "pairing_registry_delegate_win_unittest.cc",
+ "pin_hash_unittest.cc",
+ "policy_watcher_unittest.cc",
+ "register_support_host_request_unittest.cc",
+ "remote_input_filter_unittest.cc",
+ "resizing_host_observer_unittest.cc",
+ "screen_resolution_unittest.cc",
+ "server_log_entry_host_unittest.cc",
+ "setup/me2me_native_messaging_host_unittest.cc",
+ "setup/oauth_helper_unittest.cc",
+ "setup/pin_validator_unittest.cc",
+ "shaped_desktop_capturer_unittest.cc",
+ "token_validator_factory_impl_unittest.cc",
+ "video_frame_pump_unittest.cc",
+ "video_frame_recorder_unittest.cc",
+ "win/rdp_client_unittest.cc",
+ "win/worker_process_launcher.cc",
+ "win/worker_process_launcher.h",
+ "win/worker_process_launcher_unittest.cc",
]
- 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") {
- sources = get_target_outputs(":messages_localizing")
+ if (use_ozone || is_chromeos) {
+ sources -= [ "local_input_monitor_unittest.cc" ]
+ }
+ if (is_chromeos) {
+ sources -= [ "linux/x_server_clipboard_unittest.cc" ]
+ }
+
deps = [
- ":messages_localizing",
+ ":host",
+ ":test_support",
+ "//components/policy:policy_component_test_support",
+ "//remoting/host/setup",
+ "//remoting/host/it2me:common",
+ "//remoting/host/native_messaging",
+ "//remoting/proto",
+ "//skia",
+ "//testing/gmock",
+ "//testing/gtest",
]
}
- # TODO(GYP) More Windows remoting targets from remoting_host_win.gypi
+ if (is_win) {
+ import("//build/toolchain/win/midl.gni")
+ import("//remoting/tools/build/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",
+ [
+ remoting_srcs_gypi_values.daemon_controller_guid,
+ remoting_srcs_gypi_values.rdp_desktop_session_guid,
+ 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",
+ ]
+ }
+
+ # 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") {
+ sources = get_target_outputs(":messages_localizing")
+ deps = [
+ ":messages_localizing",
+ ]
+ }
+
+ # TODO(GYP) More Windows remoting targets from remoting_host_win.gypi
+ }
}
« no previous file with comments | « remoting/BUILD.gn ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698