| # Copyright 2018 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("//build/buildflag_header.gni") |
| import("//build/config/compiler/compiler.gni") |
| import("//build/config/features.gni") |
| import("//testing/test.gni") |
| import("//third_party/protobuf/proto_library.gni") |
| |
| # Public common API headers, mojom and libraries that can be linked and |
| # referenced both by browser-side and renderer-side components. |
| component("common") { |
| output_name = "blink_common" |
| |
| public_deps = [ |
| "//third_party/blink/public/common:headers", |
| "//third_party/blink/public/mojom:mojom_modules", |
| ] |
| deps = [ |
| "//third_party/blink/common", |
| ] |
| } |
| |
| source_set("headers") { |
| visibility = [ |
| "//chrome/*", |
| "//content/*", |
| "//third_party/blink/*", |
| "//components/*", |
| "//storage/*", |
| ":*", |
| ] |
| |
| sources = [ |
| "associated_interfaces/associated_interface_provider.h", |
| "associated_interfaces/associated_interface_registry.h", |
| "blob/blob_utils.h", |
| "cache_storage/cache_storage_utils.h", |
| "client_hints/client_hints.h", |
| "common_export.h", |
| "device_memory/approximated_device_memory.h", |
| "dom_storage/session_storage_namespace_id.h", |
| "download/download_stats.h", |
| "experiments/memory_ablation_experiment.h", |
| "feature_policy/feature_policy.h", |
| "features.h", |
| "fetch/fetch_api_request_headers_map.h", |
| "fetch/fetch_api_request_headers_mojom_traits.h", |
| "frame/frame_owner_element_type.h", |
| "frame/frame_policy.h", |
| "frame/from_ad_state.h", |
| "frame/sandbox_flags.h", |
| "frame/user_activation_state.h", |
| "frame/user_activation_update_source.h", |
| "frame/user_activation_update_type.h", |
| "indexeddb/indexed_db_default_mojom_traits.h", |
| "indexeddb/indexeddb_key.h", |
| "indexeddb/indexeddb_key_path.h", |
| "indexeddb/indexeddb_key_range.h", |
| "indexeddb/indexeddb_metadata.h", |
| "indexeddb/web_idb_types.h", |
| "loader/url_loader_factory_bundle.h", |
| "loader/url_loader_factory_bundle_mojom_traits.h", |
| "manifest/manifest.h", |
| "manifest/manifest_icon_selector.h", |
| "manifest/web_display_mode.h", |
| "messaging/cloneable_message.h", |
| "messaging/cloneable_message_struct_traits.h", |
| "messaging/message_port_channel.h", |
| "messaging/string_message_codec.h", |
| "messaging/transferable_message.h", |
| "messaging/transferable_message_struct_traits.h", |
| "mime_util/mime_util.h", |
| "notifications/notification_resources.h", |
| "notifications/notification_struct_traits.h", |
| "notifications/platform_notification_data.h", |
| "oom_intervention/oom_intervention_types.h", |
| "origin_policy/origin_policy.h", |
| "origin_trials/origin_trial_policy.h", |
| "origin_trials/trial_token.h", |
| "origin_trials/trial_token_validator.h", |
| "page/launching_process_state.h", |
| "picture_in_picture/picture_in_picture_control_info.h", |
| "privacy_preferences.h", |
| "screen_orientation/web_screen_orientation_lock_type.h", |
| "screen_orientation/web_screen_orientation_type.h", |
| "service_worker/service_worker_status_code.h", |
| "service_worker/service_worker_type_converters.h", |
| "service_worker/service_worker_utils.h", |
| ] |
| |
| public_deps = [ |
| "//services/network/public/cpp:cpp", |
| "//skia", |
| "//third_party/blink/public/mojom:mojom_modules_headers", |
| ] |
| |
| deps = [ |
| "//base", |
| "//mojo/public/cpp/bindings", |
| "//mojo/public/cpp/system", |
| "//mojo/public/mojom/base", |
| "//net", |
| ] |
| |
| # iOS doesn't use and must not depend on //media |
| if (!is_ios) { |
| deps += [ "//media" ] |
| } |
| |
| if (is_android) { |
| sources += [ |
| "font_unique_name_lookup/font_table_matcher.h", |
| "font_unique_name_lookup/icu_fold_case_util.h", |
| ] |
| deps += [ ":font_unique_name_table_proto" ] |
| } |
| |
| if (is_mac) { |
| sources += [ "sandbox_support/sandbox_support_mac.h" ] |
| } |
| |
| if (is_win) { |
| sources += [ "dwrite_rasterizer_support/dwrite_rasterizer_support.h" ] |
| } |
| |
| # common_export.h is an implementation detail of component builds, |
| # not part of the public API. |
| public = sources - [ "common_export.h" ] |
| } |
| |
| if (is_android) { |
| proto_library("font_unique_name_table_proto") { |
| sources = [ |
| "font_unique_name_lookup/font_unique_name_table.proto", |
| ] |
| } |
| } |