blob: 8e4c3ab3e21896576f4816c9c985a5a0f56e2c08 [file] [log] [blame]
# 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/buildflags/buildflags.gni")
if (!is_android) {
import("//build/config/features.gni")
import("//chrome/common/features.gni")
import("//tools/grit/grit_rule.gni")
}
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",
"protocol/target.cc",
"protocol/target.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 + "/concatenate_protocols.py"
deps = [
"//third_party/blink/renderer/core/inspector:protocol_version",
]
_blink_protocol_path =
"$root_gen_dir/third_party/blink/renderer/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.pdl" ]
args += [ rebase_path("cros_protocol.pdl", 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 = []
configs += [
"//build/config/compiler:no_size_t_to_int_warning",
"//build/config/compiler:wexit_time_destructors",
"//build/config:precompiled_headers",
]
deps = [
"//base",
"//content/public/browser",
"//net",
"//services/viz/privileged/interfaces/compositing",
"//third_party/blink/public:buildflags",
"//ui/events:dom_keycode_converter",
]
if (!is_android) {
deps += [
"//chrome:extra_resources",
"//chrome:resources",
"//chrome:strings",
"//chrome/app/theme:theme_resources",
"//chrome/common",
"//components/viz/host",
"//net/server: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_browser_context_manager.cc",
"devtools_browser_context_manager.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/target_handler.cc",
"protocol/target_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" ]
}
}
static_library("test_support") {
sources = []
deps = []
if (!is_android) {
deps += [
"//base",
"//chrome/browser/ui",
"//content/public/browser",
]
sources += [
"devtools_window_testing.cc",
"devtools_window_testing.h",
]
}
}