| # 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("//extensions/buildflags/buildflags.gni") |
| import("//extensions/common/api/schema.gni") |
| import("//tools/json_schema_compiler/json_schema_api.gni") |
| |
| assert(enable_extensions, |
| "Cannot depend on extensions because enable_extensions=false.") |
| |
| source_set("api") { |
| sources = [ |
| "api_resource.cc", |
| "api_resource.h", |
| "api_resource_manager.h", |
| "async_api_function.cc", |
| "async_api_function.h", |
| "device_permissions_manager.cc", |
| "device_permissions_manager.h", |
| "device_permissions_prompt.cc", |
| "device_permissions_prompt.h", |
| "execute_code_function.cc", |
| "execute_code_function.h", |
| "extensions_api_client.cc", |
| "extensions_api_client.h", |
| "guest_view/app_view/app_view_guest_internal_api.cc", |
| "guest_view/app_view/app_view_guest_internal_api.h", |
| "guest_view/extension_view/extension_view_internal_api.cc", |
| "guest_view/extension_view/extension_view_internal_api.h", |
| "guest_view/guest_view_internal_api.cc", |
| "guest_view/guest_view_internal_api.h", |
| "guest_view/web_view/web_view_internal_api.cc", |
| "guest_view/web_view/web_view_internal_api.h", |
| "web_contents_capture_client.cc", |
| "web_contents_capture_client.h", |
| ] |
| |
| public_deps = [ |
| "//base", |
| "//content/public/browser", |
| "//content/public/common", |
| "//extensions/browser/api/activity_log", |
| "//extensions/browser/api/alarms", |
| "//extensions/browser/api/app_current_window_internal", |
| "//extensions/browser/api/app_runtime", |
| "//extensions/browser/api/app_window", |
| "//extensions/browser/api/audio", |
| "//extensions/browser/api/bluetooth", |
| "//extensions/browser/api/bluetooth_low_energy", |
| "//extensions/browser/api/bluetooth_socket", |
| "//extensions/browser/api/cast_channel", |
| "//extensions/browser/api/declarative", |
| "//extensions/browser/api/declarative_content", |
| "//extensions/browser/api/declarative_net_request", |
| "//extensions/browser/api/declarative_webrequest", |
| "//extensions/browser/api/display_source", |
| "//extensions/browser/api/dns", |
| "//extensions/browser/api/document_scan", |
| "//extensions/browser/api/feedback_private", |
| "//extensions/browser/api/file_handlers", |
| "//extensions/browser/api/file_system", |
| "//extensions/browser/api/hid", |
| "//extensions/browser/api/idle", |
| "//extensions/browser/api/management", |
| "//extensions/browser/api/messaging", |
| "//extensions/browser/api/metrics_private", |
| "//extensions/browser/api/mime_handler_private", |
| "//extensions/browser/api/networking_private", |
| "//extensions/browser/api/power", |
| "//extensions/browser/api/printer_provider", |
| "//extensions/browser/api/printer_provider_internal", |
| "//extensions/browser/api/runtime", |
| "//extensions/browser/api/serial", |
| "//extensions/browser/api/socket", |
| "//extensions/browser/api/sockets_tcp", |
| "//extensions/browser/api/sockets_tcp_server", |
| "//extensions/browser/api/sockets_udp", |
| "//extensions/browser/api/storage", |
| "//extensions/browser/api/system_cpu", |
| "//extensions/browser/api/system_display", |
| "//extensions/browser/api/system_info", |
| "//extensions/browser/api/system_memory", |
| "//extensions/browser/api/system_network", |
| "//extensions/browser/api/system_storage", |
| "//extensions/browser/api/test", |
| "//extensions/browser/api/usb", |
| "//extensions/browser/api/virtual_keyboard_private", |
| "//extensions/browser/api/web_request", |
| "//extensions/common", |
| "//ipc", |
| ] |
| |
| deps = [ |
| "//base:i18n", |
| "//components/keyed_service/content:content", |
| "//extensions/browser:browser_sources", |
| "//extensions/common/api", |
| "//extensions/strings", |
| "//services/device/public/cpp/hid", |
| "//services/device/public/mojom", |
| ] |
| |
| # TODO(michaelpg): Move these deps to the individual APIs that require them. |
| deps += [ |
| "//components/onc", |
| "//components/storage_monitor", |
| "//device/base", |
| "//device/bluetooth", |
| ] |
| |
| if (is_chromeos) { |
| sources += [ |
| "lock_screen_data/data_item.cc", |
| "lock_screen_data/data_item.h", |
| "lock_screen_data/lock_screen_data_api.cc", |
| "lock_screen_data/lock_screen_data_api.h", |
| "lock_screen_data/lock_screen_item_storage.cc", |
| "lock_screen_data/lock_screen_item_storage.h", |
| "lock_screen_data/lock_screen_value_store_migrator.h", |
| "lock_screen_data/lock_screen_value_store_migrator_impl.cc", |
| "lock_screen_data/lock_screen_value_store_migrator_impl.h", |
| "lock_screen_data/operation_result.h", |
| "media_perception_private/conversion_utils.cc", |
| "media_perception_private/conversion_utils.h", |
| "media_perception_private/media_perception_api_delegate.h", |
| "media_perception_private/media_perception_api_manager.cc", |
| "media_perception_private/media_perception_api_manager.h", |
| "media_perception_private/media_perception_private_api.cc", |
| "media_perception_private/media_perception_private_api.h", |
| ] |
| |
| public_deps += [ |
| "//extensions/browser/api/cec_private", |
| "//extensions/browser/api/clipboard", |
| "//extensions/browser/api/diagnostics", |
| "//extensions/browser/api/networking_config", |
| "//extensions/browser/api/system_power_source", |
| "//extensions/browser/api/virtual_keyboard", |
| "//extensions/browser/api/vpn_provider", |
| "//extensions/browser/api/webcam_private", |
| ] |
| |
| deps += [ |
| "//chromeos", |
| "//chromeos/dbus", |
| "//chromeos/dbus:media_perception_proto", |
| "//chromeos/login/login_state", |
| "//chromeos/services/media_perception/public/mojom", |
| "//chromeos/services/media_perception/public/mojom:mojom_js_data_deps", |
| ] |
| } |
| } |
| |
| function_registration("api_registration") { |
| sources = extensions_api_schema_files + extensions_api_uncompiled_sources |
| impl_dir = "//extensions/browser/api" |
| bundle_name = "" |
| root_namespace = extensions_api_root_namespace |
| |
| deps = [ |
| ":api", |
| "//extensions/common/api", |
| "//skia", |
| ] |
| } |