| # Copyright 2014 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("//extensions/features/features.gni") |
| |
| if (!is_android) { |
| import("//build/config/features.gni") |
| import("//chrome/common/features.gni") |
| import("//tools/grit/grit_rule.gni") |
| } |
| |
| action("devtools_protocol_constants") { |
| script = "devtools_protocol_constants_generator.py" |
| deps = [ |
| "//third_party/WebKit/Source/core/inspector:protocol_version", |
| ] |
| blink_protocol = "$root_gen_dir/blink/core/inspector/protocol.json" |
| inputs = [ |
| blink_protocol, |
| ] |
| outputs = [ |
| "$target_gen_dir/devtools_protocol_constants.cc", |
| "$target_gen_dir/devtools_protocol_constants.h", |
| ] |
| |
| args = [ "chrome" ] |
| args += rebase_path(outputs, root_build_dir) |
| args += [ rebase_path(blink_protocol, root_build_dir) ] |
| } |
| |
| if (!is_android) { |
| _inspector_protocol = "//third_party/inspector_protocol" |
| import("$_inspector_protocol/inspector_protocol.gni") |
| |
| _protocol_generated = [ |
| "protocol/browser.cc", |
| "protocol/browser.h", |
| "protocol/forward.h", |
| "protocol/page.cc", |
| "protocol/page.h", |
| "protocol/protocol.cc", |
| "protocol/protocol.h", |
| ] |
| |
| if (is_chromeos) { |
| _protocol_generated += [ |
| "protocol/window_manager.cc", |
| "protocol/window_manager.h", |
| ] |
| } |
| |
| _concatenated_protocol_path = |
| "$root_gen_dir/chrome/browser/devtools/protocol.json" |
| action("concatenate_protocols") { |
| script = _inspector_protocol + "/ConcatenateProtocols.py" |
| |
| deps = [ |
| "//third_party/WebKit/Source/core/inspector:protocol_version", |
| ] |
| |
| _blink_protocol_path = "$root_gen_dir/blink/core/inspector/protocol.json" |
| inputs = [ |
| _blink_protocol_path, |
| ] |
| output_file = _concatenated_protocol_path |
| outputs = [ |
| output_file, |
| ] |
| |
| args = [ rebase_path(_blink_protocol_path, root_build_dir) ] |
| if (is_chromeos) { |
| inputs += [ "cros_protocol.json" ] |
| args += [ rebase_path("cros_protocol.json", root_build_dir) ] |
| } |
| |
| args += [ rebase_path(output_file, root_build_dir) ] |
| } |
| |
| inspector_protocol_generate("protocol_generated_sources") { |
| inspector_protocol_dir = _inspector_protocol |
| visibility = [ ":*" ] # Only targets in this file can depend on this. |
| deps = [ |
| ":concatenate_protocols", |
| ] |
| out_dir = target_gen_dir |
| config_file = "inspector_protocol_config.json" |
| |
| protocol_path = rebase_path(_concatenated_protocol_path, root_build_dir) |
| config_values = [ "protocol.path=$protocol_path" ] |
| |
| inputs = [ |
| _concatenated_protocol_path, |
| "inspector_protocol_config.json", |
| ] |
| |
| outputs = _protocol_generated |
| } |
| } |
| |
| static_library("devtools") { |
| # Note: new sources and deps should be generally added in (!is_android) below. |
| sources = [ |
| "devtools_protocol.cc", |
| "devtools_protocol.h", |
| ] |
| sources += get_target_outputs(":devtools_protocol_constants") |
| |
| configs += [ |
| "//build/config/compiler:no_size_t_to_int_warning", |
| "//build/config/compiler:wexit_time_destructors", |
| "//build/config:precompiled_headers", |
| ] |
| |
| deps = [ |
| ":devtools_protocol_constants", |
| "//base", |
| "//content/public/browser", |
| "//net", |
| "//third_party/WebKit/public:features", |
| "//ui/events:dom_keycode_converter", |
| ] |
| |
| if (!is_android) { |
| deps += [ |
| "//chrome:extra_resources", |
| "//chrome:resources", |
| "//chrome:strings", |
| "//chrome/app/theme:theme_resources", |
| "//chrome/common", |
| "//net:http_server", |
| "//skia", |
| "//third_party/icu", |
| "//third_party/leveldatabase", |
| ] |
| sources += [ |
| "chrome_devtools_manager_delegate.cc", |
| "chrome_devtools_manager_delegate.h", |
| "chrome_devtools_session.cc", |
| "chrome_devtools_session.h", |
| "device/adb/adb_client_socket.cc", |
| "device/adb/adb_client_socket.h", |
| "device/adb/adb_device_provider.cc", |
| "device/adb/adb_device_provider.h", |
| "device/android_device_info_query.cc", |
| "device/android_device_manager.cc", |
| "device/android_device_manager.h", |
| "device/android_web_socket.cc", |
| "device/devtools_android_bridge.cc", |
| "device/devtools_android_bridge.h", |
| "device/devtools_device_discovery.cc", |
| "device/devtools_device_discovery.h", |
| "device/port_forwarding_controller.cc", |
| "device/port_forwarding_controller.h", |
| "device/tcp_device_provider.cc", |
| "device/tcp_device_provider.h", |
| "device/usb/android_rsa.cc", |
| "device/usb/android_rsa.h", |
| "device/usb/android_usb_device.cc", |
| "device/usb/android_usb_device.h", |
| "device/usb/android_usb_socket.cc", |
| "device/usb/android_usb_socket.h", |
| "device/usb/usb_device_provider.cc", |
| "device/usb/usb_device_provider.h", |
| "devtools_auto_opener.cc", |
| "devtools_auto_opener.h", |
| "devtools_contents_resizing_strategy.cc", |
| "devtools_contents_resizing_strategy.h", |
| "devtools_embedder_message_dispatcher.cc", |
| "devtools_embedder_message_dispatcher.h", |
| "devtools_eye_dropper.cc", |
| "devtools_eye_dropper.h", |
| "devtools_file_helper.cc", |
| "devtools_file_helper.h", |
| "devtools_file_system_indexer.cc", |
| "devtools_file_system_indexer.h", |
| "devtools_file_watcher.cc", |
| "devtools_file_watcher.h", |
| "devtools_infobar_delegate.cc", |
| "devtools_infobar_delegate.h", |
| "devtools_targets_ui.cc", |
| "devtools_targets_ui.h", |
| "devtools_toggle_action.cc", |
| "devtools_toggle_action.h", |
| "devtools_ui_bindings.cc", |
| "devtools_ui_bindings.h", |
| "devtools_window.cc", |
| "devtools_window.h", |
| "global_confirm_info_bar.cc", |
| "global_confirm_info_bar.h", |
| "remote_debugging_server.cc", |
| "remote_debugging_server.h", |
| "serialize_host_descriptions.cc", |
| "serialize_host_descriptions.h", |
| "url_constants.cc", |
| "url_constants.h", |
| ] |
| if (enable_service_discovery) { |
| sources += [ |
| "device/cast_device_provider.cc", |
| "device/cast_device_provider.h", |
| ] |
| } |
| } |
| |
| if (!is_android) { |
| deps += [ ":protocol_generated_sources" ] |
| sources += [ |
| "protocol/browser_handler.cc", |
| "protocol/browser_handler.h", |
| "protocol/page_handler.cc", |
| "protocol/page_handler.h", |
| "protocol_string.cc", |
| "protocol_string.h", |
| ] |
| if (is_chromeos) { |
| sources += [ |
| "protocol/window_manager_handler.cc", |
| "protocol/window_manager_handler.h", |
| ] |
| } |
| sources += rebase_path(_protocol_generated, ".", target_gen_dir) |
| } |
| |
| if (enable_extensions) { |
| deps += [ "//chrome/common/extensions/api" ] |
| } |
| } |