# Copyright 2019 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import("//components/captive_portal/core/features.gni")

import("//build/config/features.gni")
import("//build/config/locales.gni")
import("//build/config/sanitizers/sanitizers.gni")
import("//build/config/ui.gni")
import("//build/config/win/console_app.gni")
import("//build/config/win/manifest.gni")
import("//components/spellcheck/spellcheck_build_features.gni")
import("//device/vr/buildflags/buildflags.gni")
import("//gpu/vulkan/features.gni")
import("//media/media_options.gni")
import("//mojo/public/tools/bindings/mojom.gni")
import("//pdf/features.gni")
import("//printing/buildflags/buildflags.gni")
import("//tools/grit/grit_rule.gni")
import("//tools/grit/repack.gni")
import("//tools/v8_context_snapshot/v8_context_snapshot.gni")
if (is_android) {
  import("//build/config/android/config.gni")
  import("//build/config/android/rules.gni")
  import("//components/safe_browsing/buildflags.gni")
} else if (is_mac) {
  import("//build/apple/tweak_info_plist.gni")
  import("//build/config/mac/rules.gni")
  import("//content/public/app/mac_helpers.gni")
  import("//third_party/icu/config.gni")
  import("//ui/gl/features.gni")
  import("//v8/gni/v8.gni")
}

source_set("android_descriptors") {
  sources = [ "browser/android_descriptors.h" ]
  public_deps = [ "//content/public/common:content_descriptors" ]
}

if (is_android) {
  weblayer_components_strings_java_resources =
      [ "java/res/values/components_strings.xml" ] +
      process_file_template(
          android_bundle_locales_as_resources,
          [ "java/res/values-{{source_name_part}}/components_strings.xml" ])

  grit("generate_components_strings") {
    source = "../components/components_strings.grd"

    defines = [
      "enable_arcore=$enable_arcore",
      "enable_pdf=$enable_pdf",
      "enable_print_preview=$enable_print_preview",
      "enable_vr=$enable_vr",
    ]

    # components_strings contains strings from all components. WebLayer
    # will never display most of them, so we try to limit the included
    # strings.
    allowlist = rebase_path("grit_strings_allowlist.txt", root_build_dir)
    inputs = [ "//weblayer/grit_strings_allowlist.txt" ]
    grit_flags = [
      "-w",
      allowlist,
    ]
    outputs =
        weblayer_components_strings_java_resources +
        [ "grit/components_strings.h" ] +
        process_file_template(all_chrome_locales,
                              [ "components_strings_{{source_name_part}}.pak" ])
  }

  grit("generate_components_chromium_strings") {
    source = "../components/components_chromium_strings.grd"

    # components_chromium_strings contains Chromium-specific strings. WebLayer
    # will never display most of them, so we try to limit the included
    # strings.
    allowlist = rebase_path("grit_strings_allowlist.txt", root_build_dir)
    inputs = [ "//weblayer/grit_strings_allowlist.txt" ]
    grit_flags = [
      "-w",
      allowlist,
    ]
    outputs = [ "grit/components_chromium_strings.h" ] +
              process_file_template(
                  all_chrome_locales,
                  [ "components_chromium_strings_{{source_name_part}}.pak" ])
  }

  repack_locales("weblayer_locales") {
    input_locales = platform_pak_locales
    output_locales = platform_pak_locales
    source_patterns = [
      "${root_gen_dir}/components/strings/components_locale_settings_",
      "${root_gen_dir}/device/bluetooth/strings/bluetooth_strings_",
      "${root_gen_dir}/weblayer/components_chromium_strings_",
      "${root_gen_dir}/weblayer/components_strings_",
    ]
    deps = [
      ":generate_components_chromium_strings",
      ":generate_components_strings",
      "//components/strings:components_locale_settings",
      "//device/bluetooth/strings",
    ]
    output_dir = "$root_out_dir/weblayer/locales"
  }

  android_assets("locale_pak_assets") {
    disable_compression = true
    renaming_sources = [ "$root_out_dir/weblayer/locales/en-US.pak" ]
    renaming_destinations = [ "stored-locales/weblayer/en-US.pak" ]
    treat_as_locale_paks = true
    deps = [ ":weblayer_locales" ]
  }

  android_assets("bundle_locale_pak_assets") {
    disable_compression = true
    renaming_sources = []
    renaming_destinations = []
    foreach(_locale, platform_pak_locales) {
      renaming_sources += [ "$root_out_dir/weblayer/locales/$_locale.pak" ]
      renaming_destinations += [ "locales/$_locale.pak" ]
    }
    treat_as_locale_paks = true
    deps = [ ":weblayer_locales" ]
  }

  java_strings_grd_prebuilt("components_java_strings") {
    resource_overlay = true
    grit_output_dir = "$root_gen_dir/weblayer/java/res"
    generated_files =
        rebase_path(weblayer_components_strings_java_resources, "java/res", ".")
    deps = [ ":generate_components_strings" ]
  }
}

mojom("common_mojom") {
  disable_variants = true

  sources = [
    "common/error_page_helper.mojom",
    "common/renderer_configuration.mojom",
  ]
  deps = [
    "//components/content_settings/common:mojom",
    "//components/content_settings/core/common:mojo_bindings",
  ]
}

source_set("weblayer_lib_base") {
  sources = [
    "app/content_main_delegate_impl.cc",
    "app/content_main_delegate_impl.h",
    "app/main.cc",
    "browser/accept_languages_service_factory.cc",
    "browser/accept_languages_service_factory.h",
    "browser/autocomplete_scheme_classifier_impl.cc",
    "browser/autocomplete_scheme_classifier_impl.h",
    "browser/autofill_client_impl.cc",
    "browser/autofill_client_impl.h",
    "browser/background_download_service_factory.cc",
    "browser/background_download_service_factory.h",
    "browser/background_fetch/background_fetch_delegate_factory.cc",
    "browser/background_fetch/background_fetch_delegate_factory.h",
    "browser/background_fetch/background_fetch_delegate_impl.cc",
    "browser/background_fetch/background_fetch_delegate_impl.h",
    "browser/background_fetch/background_fetch_download.cc",
    "browser/background_fetch/background_fetch_download.h",
    "browser/background_fetch/background_fetch_permission_context.cc",
    "browser/background_fetch/background_fetch_permission_context.h",
    "browser/background_sync/background_sync_controller_factory.cc",
    "browser/background_sync/background_sync_controller_factory.h",
    "browser/background_sync/background_sync_delegate_impl.cc",
    "browser/background_sync/background_sync_delegate_impl.h",
    "browser/bluetooth/weblayer_bluetooth_chooser_context_factory.cc",
    "browser/bluetooth/weblayer_bluetooth_chooser_context_factory.h",
    "browser/bluetooth/weblayer_bluetooth_delegate_impl_client.cc",
    "browser/bluetooth/weblayer_bluetooth_delegate_impl_client.h",
    "browser/browser_context_impl.cc",
    "browser/browser_context_impl.h",
    "browser/browser_impl.cc",
    "browser/browser_impl.h",
    "browser/browser_list.cc",
    "browser/browser_list.h",
    "browser/browser_list_observer.h",
    "browser/browser_main_parts_impl.cc",
    "browser/browser_main_parts_impl.h",
    "browser/browser_process.cc",
    "browser/browser_process.h",
    "browser/browsing_data_remover_delegate.cc",
    "browser/browsing_data_remover_delegate.h",
    "browser/browsing_data_remover_delegate_factory.cc",
    "browser/browsing_data_remover_delegate_factory.h",
    "browser/client_hints_factory.cc",
    "browser/client_hints_factory.h",
    "browser/content_browser_client_impl.cc",
    "browser/content_browser_client_impl.h",
    "browser/content_browser_client_impl_receiver_bindings.cc",
    "browser/content_settings_manager_delegate.cc",
    "browser/content_settings_manager_delegate.h",
    "browser/controls_visibility_reason.h",
    "browser/cookie_manager_impl.cc",
    "browser/cookie_manager_impl.h",
    "browser/cookie_settings_factory.cc",
    "browser/cookie_settings_factory.h",
    "browser/download_impl.cc",
    "browser/download_impl.h",
    "browser/download_manager_delegate_impl.cc",
    "browser/download_manager_delegate_impl.h",
    "browser/favicon/favicon_backend_wrapper.cc",
    "browser/favicon/favicon_backend_wrapper.h",
    "browser/favicon/favicon_fetcher_impl.cc",
    "browser/favicon/favicon_fetcher_impl.h",
    "browser/favicon/favicon_service_impl.cc",
    "browser/favicon/favicon_service_impl.h",
    "browser/favicon/favicon_service_impl_factory.cc",
    "browser/favicon/favicon_service_impl_factory.h",
    "browser/favicon/favicon_service_impl_observer.h",
    "browser/favicon/favicon_tab_helper.cc",
    "browser/favicon/favicon_tab_helper.h",
    "browser/feature_list_creator.cc",
    "browser/feature_list_creator.h",
    "browser/file_select_helper.cc",
    "browser/file_select_helper.h",
    "browser/heavy_ad_service_factory.cc",
    "browser/heavy_ad_service_factory.h",
    "browser/host_content_settings_map_factory.cc",
    "browser/host_content_settings_map_factory.h",
    "browser/i18n_util.cc",
    "browser/i18n_util.h",
    "browser/insecure_form_controller_client.cc",
    "browser/insecure_form_controller_client.h",
    "browser/js_communication/web_message_host_factory_wrapper.cc",
    "browser/js_communication/web_message_host_factory_wrapper.h",
    "browser/navigation_controller_impl.cc",
    "browser/navigation_controller_impl.h",
    "browser/navigation_entry_data.cc",
    "browser/navigation_entry_data.h",
    "browser/navigation_error_navigation_throttle.cc",
    "browser/navigation_error_navigation_throttle.h",
    "browser/navigation_impl.cc",
    "browser/navigation_impl.h",
    "browser/navigation_ui_data_impl.cc",
    "browser/navigation_ui_data_impl.h",
    "browser/no_state_prefetch/no_state_prefetch_link_manager_factory.cc",
    "browser/no_state_prefetch/no_state_prefetch_link_manager_factory.h",
    "browser/no_state_prefetch/no_state_prefetch_manager_delegate_impl.cc",
    "browser/no_state_prefetch/no_state_prefetch_manager_delegate_impl.h",
    "browser/no_state_prefetch/no_state_prefetch_manager_factory.cc",
    "browser/no_state_prefetch/no_state_prefetch_manager_factory.h",
    "browser/no_state_prefetch/no_state_prefetch_processor_impl_delegate_impl.cc",
    "browser/no_state_prefetch/no_state_prefetch_processor_impl_delegate_impl.h",
    "browser/no_state_prefetch/no_state_prefetch_utils.cc",
    "browser/no_state_prefetch/no_state_prefetch_utils.h",
    "browser/no_state_prefetch/prerender_controller_impl.cc",
    "browser/no_state_prefetch/prerender_controller_impl.h",
    "browser/no_state_prefetch/prerender_tab_helper.cc",
    "browser/no_state_prefetch/prerender_tab_helper.h",
    "browser/origin_trials_factory.cc",
    "browser/origin_trials_factory.h",
    "browser/page_impl.cc",
    "browser/page_impl.h",
    "browser/page_load_metrics_initialize.cc",
    "browser/page_load_metrics_initialize.h",
    "browser/page_load_metrics_observer_impl.cc",
    "browser/page_load_metrics_observer_impl.h",
    "browser/page_specific_content_settings_delegate.cc",
    "browser/page_specific_content_settings_delegate.h",
    "browser/password_manager_driver_factory.cc",
    "browser/password_manager_driver_factory.h",
    "browser/permissions/geolocation_permission_context_delegate.cc",
    "browser/permissions/geolocation_permission_context_delegate.h",
    "browser/permissions/permission_decision_auto_blocker_factory.cc",
    "browser/permissions/permission_decision_auto_blocker_factory.h",
    "browser/permissions/permission_manager_factory.cc",
    "browser/permissions/permission_manager_factory.h",
    "browser/permissions/weblayer_camera_pan_tilt_zoom_permission_context_delegate.cc",
    "browser/permissions/weblayer_camera_pan_tilt_zoom_permission_context_delegate.h",
    "browser/permissions/weblayer_nfc_permission_context_delegate.cc",
    "browser/permissions/weblayer_nfc_permission_context_delegate.h",
    "browser/permissions/weblayer_permissions_client.cc",
    "browser/permissions/weblayer_permissions_client.h",
    "browser/persistence/browser_persistence_common.cc",
    "browser/persistence/browser_persistence_common.h",
    "browser/persistence/browser_persister.cc",
    "browser/persistence/browser_persister.h",
    "browser/persistence/browser_persister_file_utils.cc",
    "browser/persistence/browser_persister_file_utils.h",
    "browser/persistence/minimal_browser_persister.cc",
    "browser/persistence/minimal_browser_persister.h",
    "browser/persistent_download.cc",
    "browser/persistent_download.h",
    "browser/popup_navigation_delegate_impl.cc",
    "browser/popup_navigation_delegate_impl.h",
    "browser/profile_disk_operations.cc",
    "browser/profile_disk_operations.h",
    "browser/profile_impl.cc",
    "browser/profile_impl.h",
    "browser/reduce_accept_language_factory.cc",
    "browser/reduce_accept_language_factory.h",
    "browser/signin_url_loader_throttle.cc",
    "browser/signin_url_loader_throttle.h",
    "browser/ssl_error_controller_client.cc",
    "browser/ssl_error_controller_client.h",
    "browser/stateful_ssl_host_state_delegate_factory.cc",
    "browser/stateful_ssl_host_state_delegate_factory.h",
    "browser/subresource_filter_profile_context_factory.cc",
    "browser/subresource_filter_profile_context_factory.h",
    "browser/system_network_context_manager.cc",
    "browser/system_network_context_manager.h",
    "browser/tab_impl.cc",
    "browser/tab_impl.h",
    "browser/translate_client_impl.cc",
    "browser/translate_client_impl.h",
    "browser/translate_ranker_factory.cc",
    "browser/translate_ranker_factory.h",
    "browser/web_contents_view_delegate_impl.cc",
    "browser/web_contents_view_delegate_impl.h",
    "browser/web_data_service_factory.cc",
    "browser/web_data_service_factory.h",
    "browser/weblayer_browser_interface_binders.cc",
    "browser/weblayer_browser_interface_binders.h",
    "browser/weblayer_features.cc",
    "browser/weblayer_features.h",
    "browser/weblayer_field_trials.cc",
    "browser/weblayer_field_trials.h",
    "browser/weblayer_metrics_service_accessor.h",
    "browser/weblayer_page_load_metrics_memory_tracker_factory.cc",
    "browser/weblayer_page_load_metrics_memory_tracker_factory.h",
    "browser/weblayer_security_blocking_page_factory.cc",
    "browser/weblayer_security_blocking_page_factory.h",
    "browser/weblayer_speech_recognition_manager_delegate.cc",
    "browser/weblayer_speech_recognition_manager_delegate.h",
    "browser/weblayer_variations_service_client.cc",
    "browser/weblayer_variations_service_client.h",
    "browser/webui/net_export_ui.cc",
    "browser/webui/net_export_ui.h",
    "browser/webui/web_ui_controller_factory.cc",
    "browser/webui/web_ui_controller_factory.h",
    "browser/webui/weblayer_internals_ui.cc",
    "browser/webui/weblayer_internals_ui.h",
    "common/content_client_impl.cc",
    "common/content_client_impl.h",
    "common/features.cc",
    "common/features.h",
    "common/isolated_world_ids.h",
    "common/weblayer_paths.cc",
    "common/weblayer_paths.h",
    "public/browser.cc",
    "public/browser.h",
    "public/browser_observer.h",
    "public/browser_restore_observer.h",
    "public/common/switches.cc",
    "public/common/switches.h",
    "public/cookie_manager.h",
    "public/download.h",
    "public/download_delegate.h",
    "public/error_page.h",
    "public/error_page_delegate.h",
    "public/favicon_fetcher.h",
    "public/favicon_fetcher_delegate.h",
    "public/fullscreen_delegate.h",
    "public/google_account_access_token_fetch_delegate.h",
    "public/google_accounts_delegate.h",
    "public/js_communication/web_message.cc",
    "public/js_communication/web_message.h",
    "public/js_communication/web_message_host.h",
    "public/js_communication/web_message_host_factory.h",
    "public/js_communication/web_message_reply_proxy.h",
    "public/main.h",
    "public/navigation.h",
    "public/navigation_controller.h",
    "public/navigation_observer.h",
    "public/new_tab_delegate.h",
    "public/page.h",
    "public/prerender_controller.h",
    "public/profile.h",
    "public/tab.h",
    "public/tab_observer.h",
    "renderer/content_renderer_client_impl.cc",
    "renderer/content_renderer_client_impl.h",
    "renderer/error_page_helper.cc",
    "renderer/error_page_helper.h",
    "renderer/url_loader_throttle_provider.cc",
    "renderer/url_loader_throttle_provider.h",
    "renderer/weblayer_render_frame_observer.cc",
    "renderer/weblayer_render_frame_observer.h",
    "renderer/weblayer_render_thread_observer.cc",
    "renderer/weblayer_render_thread_observer.h",
    "utility/content_utility_client_impl.cc",
    "utility/content_utility_client_impl.h",
  ]

  configs += [ "//build/config:precompiled_headers" ]

  public_deps = [ ":android_descriptors" ]
  deps = [
    ":common_mojom",
    "//base",
    "//base:base_static",
    "//base/third_party/dynamic_annotations",
    "//build:chromeos_buildflags",
    "//cc",
    "//components/autofill/content/browser",
    "//components/autofill/content/renderer",
    "//components/autofill/core/browser",
    "//components/autofill/core/common",
    "//components/background_fetch",
    "//components/background_sync",
    "//components/base32",
    "//components/blocked_content",
    "//components/browsing_data/content",
    "//components/captive_portal/core:buildflags",
    "//components/cdm/renderer",
    "//components/client_hints/browser",
    "//components/content_capture/browser",
    "//components/content_capture/common",
    "//components/content_capture/renderer",
    "//components/content_settings/browser",
    "//components/content_settings/common:mojom",
    "//components/content_settings/common:mojom",
    "//components/content_settings/core/browser",
    "//components/content_settings/renderer",
    "//components/crash/content/browser",
    "//components/crash/core/app",
    "//components/crash/core/common",
    "//components/download/content/factory",
    "//components/download/content/public",
    "//components/download/public/background_service:public",
    "//components/download/public/task:public",
    "//components/embedder_support",
    "//components/embedder_support:browser_util",
    "//components/embedder_support/origin_trials",
    "//components/error_page/common",
    "//components/error_page/content/browser",
    "//components/favicon/content",
    "//components/favicon/core",
    "//components/favicon/core:database",
    "//components/favicon_base",
    "//components/find_in_page",
    "//components/heavy_ad_intervention",
    "//components/infobars/content",
    "//components/infobars/core",
    "//components/js_injection/browser",
    "//components/js_injection/common:common_mojom",
    "//components/js_injection/renderer",
    "//components/keyed_service/content",
    "//components/language/core/browser",
    "//components/leveldb_proto",
    "//components/metrics",
    "//components/net_log",
    "//components/network_time",
    "//components/no_state_prefetch/browser",
    "//components/no_state_prefetch/common",
    "//components/no_state_prefetch/common:mojo_bindings",
    "//components/no_state_prefetch/renderer",
    "//components/omnibox/browser:browser",
    "//components/origin_trials:browser",
    "//components/origin_trials:common",
    "//components/page_info",
    "//components/page_load_metrics/browser",
    "//components/page_load_metrics/browser/observers/ad_metrics",
    "//components/page_load_metrics/renderer",
    "//components/password_manager/content/browser",
    "//components/payments/content:content",
    "//components/payments/core",
    "//components/performance_manager",
    "//components/permissions",
    "//components/policy/core/browser",
    "//components/pref_registry:pref_registry",
    "//components/prefs",
    "//components/profile_metrics",
    "//components/reduce_accept_language/browser",
    "//components/safe_browsing/content/browser",
    "//components/safe_browsing/content/browser:client_side_detection",
    "//components/safe_browsing/content/browser/web_ui",
    "//components/safe_browsing/content/common:interfaces",
    "//components/safe_browsing/content/renderer:throttles",
    "//components/safe_browsing/content/renderer/phishing_classifier",
    "//components/safe_browsing/core/browser:safe_browsing_metrics_collector",
    "//components/safe_browsing/core/browser/db:database_manager",
    "//components/safe_browsing/core/common",
    "//components/security_interstitials/content:security_interstitial_page",
    "//components/security_interstitials/content/renderer:security_interstitial_page_controller",
    "//components/security_interstitials/core",
    "//components/security_state/content",
    "//components/services/storage/public/mojom",
    "//components/sessions",
    "//components/signin/core/browser",
    "//components/site_engagement/content",
    "//components/site_isolation",
    "//components/spellcheck:buildflags",
    "//components/ssl_errors",
    "//components/startup_metric_utils/browser",
    "//components/strings",
    "//components/subresource_filter/content/browser",
    "//components/subresource_filter/content/renderer",
    "//components/subresource_filter/core/browser",
    "//components/subresource_filter/core/browser",
    "//components/subresource_filter/core/common",
    "//components/translate/content/browser",
    "//components/translate/content/renderer",
    "//components/translate/core/browser",
    "//components/translate/core/common",
    "//components/ukm",
    "//components/ukm/content",
    "//components/unified_consent:unified_consent",
    "//components/user_prefs",
    "//components/variations",
    "//components/variations:variations_mojom",
    "//components/variations/net",
    "//components/variations/proto",
    "//components/variations/service",
    "//components/version_info",
    "//components/viz/common",
    "//components/web_cache/browser",
    "//components/webapps/browser",
    "//components/webapps/renderer",
    "//components/webdata_services",
    "//components/webrtc",
    "//content:content_resources",
    "//content:dev_ui_content_resources",
    "//content/public/app",
    "//content/public/browser",
    "//content/public/child",
    "//content/public/common",
    "//content/public/renderer",
    "//content/public/utility",
    "//device/base:base",
    "//device/vr/buildflags",
    "//gpu/config",
    "//net",
    "//net:net_resources",
    "//sandbox",
    "//services/cert_verifier/public/mojom",
    "//services/metrics/public/cpp:metrics_cpp",
    "//services/network/public/cpp",
    "//services/network/public/mojom",
    "//services/preferences/tracked",
    "//skia",
    "//third_party/blink/public:blink_headers",
    "//third_party/blink/public/common",
    "//third_party/blink/public/strings",
    "//third_party/icu",
    "//ui/base",
    "//ui/base/clipboard",
    "//ui/base/ime/init",
    "//ui/display",
    "//ui/events:events_base",
    "//ui/gfx",
    "//ui/gfx/geometry",
    "//ui/gfx/ipc",
    "//ui/gfx/ipc/geometry",
    "//ui/gfx/ipc/skia",
    "//ui/gl",
    "//ui/platform_window",
    "//ui/shell_dialogs",
    "//ui/webui",
    "//url",
    "//v8",
    "//weblayer:resources",
    "//weblayer/browser/webui:mojo_bindings",
  ]

  if (enable_captive_portal_detection) {
    sources += [
      "browser/captive_portal_service_factory.cc",
      "browser/captive_portal_service_factory.h",
    ]
    deps += [ "//components/captive_portal/content" ]
  }

  if (enable_arcore) {
    assert(is_android)
    sources += [
      "browser/xr/xr_integration_client_impl.cc",
      "browser/xr/xr_integration_client_impl.h",
    ]
    deps += [
      "//components/webxr/android",
      "//device/vr/android/arcore",
    ]
  }

  if (use_browser_spellchecker) {
    deps += [
      "//components/spellcheck/browser",
      "//components/spellcheck/renderer",
    ]
  }

  if (is_android) {
    sources += [
      "app/jni_onload.cc",
      "app/jni_onload.h",
      "browser/android/application_info_helper.cc",
      "browser/android/application_info_helper.h",
      "browser/android/exception_filter.cc",
      "browser/android/exception_filter.h",
      "browser/android/metrics/uma_utils.cc",
      "browser/android/metrics/uma_utils.h",
      "browser/android/metrics/weblayer_metrics_service_client.cc",
      "browser/android/metrics/weblayer_metrics_service_client.h",
      "browser/android/permission_request_utils.cc",
      "browser/android/permission_request_utils.h",
      "browser/android/resource_mapper.cc",
      "browser/android/resource_mapper.h",
      "browser/autofill_assistant/weblayer_assistant_field_trial_util.cc",
      "browser/autofill_assistant/weblayer_assistant_field_trial_util.h",
      "browser/autofill_assistant/weblayer_dependencies.cc",
      "browser/autofill_assistant/weblayer_dependencies.h",
      "browser/bluetooth/weblayer_bluetooth_chooser_android_delegate.cc",
      "browser/bluetooth/weblayer_bluetooth_chooser_android_delegate.h",
      "browser/bluetooth/weblayer_bluetooth_scanning_prompt_android_delegate.cc",
      "browser/bluetooth/weblayer_bluetooth_scanning_prompt_android_delegate.h",
      "browser/browser_controls_container_view.cc",
      "browser/browser_controls_container_view.h",
      "browser/browser_controls_navigation_state_handler.cc",
      "browser/browser_controls_navigation_state_handler.h",
      "browser/browser_controls_navigation_state_handler_delegate.h",
      "browser/browser_list_proxy.cc",
      "browser/browser_list_proxy.h",
      "browser/component_updater/client_side_phishing_component_loader_policy.cc",
      "browser/component_updater/client_side_phishing_component_loader_policy.h",
      "browser/component_updater/registration.cc",
      "browser/component_updater/registration.h",
      "browser/content_view_render_view.cc",
      "browser/content_view_render_view.h",
      "browser/devtools_manager_delegate_android.cc",
      "browser/devtools_manager_delegate_android.h",
      "browser/devtools_server_android.cc",
      "browser/devtools_server_android.h",
      "browser/download_callback_proxy.cc",
      "browser/download_callback_proxy.h",
      "browser/error_page_callback_proxy.cc",
      "browser/error_page_callback_proxy.h",
      "browser/favicon/favicon_callback_proxy.cc",
      "browser/favicon/favicon_callback_proxy.h",
      "browser/fullscreen_callback_proxy.cc",
      "browser/fullscreen_callback_proxy.h",
      "browser/google_account_access_token_fetcher_proxy.cc",
      "browser/google_account_access_token_fetcher_proxy.h",
      "browser/google_accounts_callback_proxy.cc",
      "browser/google_accounts_callback_proxy.h",
      "browser/http_auth_handler_impl.cc",
      "browser/http_auth_handler_impl.h",
      "browser/infobar_container_android.cc",
      "browser/infobar_container_android.h",
      "browser/javascript_tab_modal_dialog_manager_delegate_android.cc",
      "browser/javascript_tab_modal_dialog_manager_delegate_android.h",
      "browser/js_communication/web_message_host_factory_proxy.cc",
      "browser/js_communication/web_message_host_factory_proxy.h",
      "browser/js_communication/web_message_reply_proxy_impl.cc",
      "browser/js_communication/web_message_reply_proxy_impl.h",
      "browser/media/local_presentation_manager_factory.cc",
      "browser/media/local_presentation_manager_factory.h",
      "browser/media/media_router_factory.cc",
      "browser/media/media_router_factory.h",
      "browser/new_tab_callback_proxy.cc",
      "browser/new_tab_callback_proxy.h",
      "browser/proxying_url_loader_factory_impl.cc",
      "browser/proxying_url_loader_factory_impl.h",
      "browser/safe_browsing/client_side_detection_service_factory.cc",
      "browser/safe_browsing/client_side_detection_service_factory.h",
      "browser/safe_browsing/real_time_url_lookup_service_factory.cc",
      "browser/safe_browsing/real_time_url_lookup_service_factory.h",
      "browser/safe_browsing/safe_browsing_metrics_collector_factory.cc",
      "browser/safe_browsing/safe_browsing_metrics_collector_factory.h",
      "browser/safe_browsing/safe_browsing_navigation_observer_manager_factory.cc",
      "browser/safe_browsing/safe_browsing_navigation_observer_manager_factory.h",
      "browser/safe_browsing/safe_browsing_service.cc",
      "browser/safe_browsing/safe_browsing_service.h",
      "browser/safe_browsing/safe_browsing_token_fetcher_impl.cc",
      "browser/safe_browsing/safe_browsing_token_fetcher_impl.h",
      "browser/safe_browsing/url_checker_delegate_impl.cc",
      "browser/safe_browsing/url_checker_delegate_impl.h",
      "browser/safe_browsing/weblayer_client_side_detection_host_delegate.cc",
      "browser/safe_browsing/weblayer_client_side_detection_host_delegate.h",
      "browser/safe_browsing/weblayer_client_side_detection_service_delegate.cc",
      "browser/safe_browsing/weblayer_client_side_detection_service_delegate.h",
      "browser/safe_browsing/weblayer_ping_manager_factory.cc",
      "browser/safe_browsing/weblayer_ping_manager_factory.h",
      "browser/safe_browsing/weblayer_safe_browsing_blocking_page_factory.cc",
      "browser/safe_browsing/weblayer_safe_browsing_blocking_page_factory.h",
      "browser/safe_browsing/weblayer_safe_browsing_tab_observer_delegate.cc",
      "browser/safe_browsing/weblayer_safe_browsing_tab_observer_delegate.h",
      "browser/safe_browsing/weblayer_ui_manager_delegate.cc",
      "browser/safe_browsing/weblayer_ui_manager_delegate.h",
      "browser/safe_browsing/weblayer_user_population_helper.cc",
      "browser/safe_browsing/weblayer_user_population_helper.h",
      "browser/site_engagement/site_engagement_service_factory.cc",
      "browser/site_engagement/site_engagement_service_factory.h",
      "browser/tab_callback_proxy.cc",
      "browser/tab_callback_proxy.h",
      "browser/translate_compact_infobar.cc",
      "browser/translate_compact_infobar.h",
      "browser/tts_environment_android_impl.cc",
      "browser/tts_environment_android_impl.h",
      "browser/verdict_cache_manager_factory.cc",
      "browser/verdict_cache_manager_factory.h",
      "browser/webapps/webapk_install_scheduler.cc",
      "browser/webapps/webapk_install_scheduler.h",
      "browser/webapps/webapk_install_scheduler_bridge.cc",
      "browser/webapps/webapk_install_scheduler_bridge.h",
      "browser/webapps/webapps_utils.cc",
      "browser/webapps/webapps_utils.h",
      "browser/webapps/weblayer_app_banner_manager_android.cc",
      "browser/webapps/weblayer_app_banner_manager_android.h",
      "browser/webapps/weblayer_webapps_client.cc",
      "browser/webapps/weblayer_webapps_client.h",
      "browser/weblayer_factory_impl_android.cc",
      "browser/weblayer_factory_impl_android.h",
      "browser/weblayer_impl_android.cc",
      "browser/weblayer_impl_android.h",
      "browser/webrtc/media_stream_manager.cc",
      "browser/webrtc/media_stream_manager.h",
      "common/crash_reporter/crash_keys.cc",
      "common/crash_reporter/crash_keys.h",
      "common/crash_reporter/crash_reporter_client.cc",
      "common/crash_reporter/crash_reporter_client.h",
    ]
    deps += [
      "//components/android_autofill/browser",
      "//components/android_autofill/browser:android",
      "//components/android_system_error_page",
      "//components/autofill_assistant/browser",
      "//components/autofill_assistant/browser/android:dependencies_android",
      "//components/autofill_assistant/content/browser",
      "//components/browser_ui/accessibility/android",
      "//components/browser_ui/client_certificate/android",
      "//components/browser_ui/contacts_picker/android",
      "//components/browser_ui/photo_picker/android",
      "//components/browser_ui/settings/android",
      "//components/browser_ui/share/android",
      "//components/browser_ui/site_settings/android",
      "//components/browser_ui/sms/android",
      "//components/cdm/browser",
      "//components/component_updater/android:embedded_component_loader",
      "//components/component_updater/installer_policies",
      "//components/content_capture/android",
      "//components/content_settings/android",
      "//components/crash/android:crash_android",
      "//components/crash/android:crashpad_main",
      "//components/embedder_support/android:context_menu",
      "//components/embedder_support/android:util",
      "//components/embedder_support/android:web_contents_delegate",
      "//components/embedder_support/android/metrics",
      "//components/external_intents/android",
      "//components/favicon/android",
      "//components/image_fetcher:android",
      "//components/infobars/android",
      "//components/installedapp/android",
      "//components/javascript_dialogs",
      "//components/location/android:settings",
      "//components/media_router/browser",
      "//components/metrics",
      "//components/minidump_uploader",
      "//components/navigation_interception",
      "//components/page_info/android",
      "//components/payments/content/android",
      "//components/permissions/android:native",
      "//components/resources:android_resources",
      "//components/safe_browsing/android:remote_database_manager",
      "//components/safe_browsing/android:safe_browsing_api_handler",
      "//components/safe_browsing/content/browser/triggers",
      "//components/safe_browsing/core/browser",
      "//components/safe_browsing/core/browser:token_fetcher",
      "//components/safe_browsing/core/browser:verdict_cache_manager",
      "//components/safe_browsing/core/browser/db:allowlist_checker_client",
      "//components/safe_browsing/core/browser/db:database_manager",
      "//components/safe_browsing/core/browser/realtime:policy_engine",
      "//components/safe_browsing/core/browser/realtime:url_lookup_service",
      "//components/safe_browsing/core/common",
      "//components/safe_browsing/core/common/proto:client_model_proto",
      "//components/safe_browsing/core/common/proto:csd_proto",
      "//components/security_interstitials/content:security_interstitial_page",
      "//components/security_interstitials/core:unsafe_resource",
      "//components/security_interstitials/core/",
      "//components/security_state/content/android",
      "//components/site_engagement/content",
      "//components/subresource_filter/android",
      "//components/translate/content/android",
      "//components/version_info/android:channel_getter",
      "//components/webauthn/android",
      "//google_apis",
      "//services/resource_coordinator/public/cpp/memory_instrumentation:browser",
      "//ui/android",
      "//url:gurl_android",
      "//weblayer/browser/java:jni",
    ]

    # Necessary to avoid GN errors in Cast builds, where this target isn't defined.
    if (safe_browsing_mode > 0) {
      deps += [ "//components/safe_browsing/content/browser:safe_browsing_blocking_page" ]
    }
  } else {
    deps += [ "//ui/views/controls/webview" ]
  }

  if (enable_vulkan) {
    deps += [ "//gpu/vulkan/init" ]
  }
  if (mojo_media_host == "browser") {
    deps += [ "//media/mojo/services" ]
  }

  if (is_win) {
    deps += [ "//content:sandbox_helper_win" ]
    if (win_console_app) {
      defines = [ "WIN_CONSOLE_APP" ]
    }
  }

  if (is_linux || is_chromeos) {
    deps += [
      "//build/config/freetype",
      "//third_party/fontconfig",
    ]
  }

  if (toolkit_views) {
    deps += [ "//ui/views" ]
  }

  if (use_aura) {
    deps += [
      "//ui/aura",
      "//ui/events",
      "//ui/strings",
      "//ui/wm",
    ]
  }
}

if (is_android) {
  source_set("weblayer_android_test_jni_impl") {
    testonly = true
    sources = [
      "browser/test/test_infobar.cc",
      "browser/test/test_infobar.h",
      "browser/test/test_weblayer_impl.cc",
    ]
    deps = [
      ":weblayer_lib_base",
      "//base",
      "//base/test:test_support",
      "//components/content_settings/core/browser",
      "//components/infobars/android",
      "//components/infobars/content",
      "//components/infobars/core",
      "//components/translate/core/browser",
      "//content/public/browser",
      "//content/public/test/android:content_native_test_support",
      "//content/test:test_support",
      "//testing/gtest",
      "//weblayer/browser/java:test_jni",
    ]
  }

  # Lib used in standalone WebView which allows manual JNI registration.
  static_library("weblayer_lib_webview") {
    public_deps = [ ":weblayer_lib_base" ]
    deps = [
      "//base",
      "//weblayer/browser/java:jni",
      "//weblayer/browser/java:weblayer_jni_registration",
    ]
    sources = [
      "$target_gen_dir/browser/java/weblayer_jni_registration.h",
      "browser/web_view_compatibility_helper_impl.cc",
      "browser/web_view_compatibility_helper_impl.h",
    ]
    defines = [ "WEBLAYER_MANUAL_JNI_REGISTRATION" ]

    # Explicit dependency required for JNI registration to be able to
    # find the native side functions.
    if (is_component_build) {
      deps += [
        "//components/browser_ui/photo_picker/android",
        "//device/gamepad",
        "//media/midi",
        "//ui/events/devices",
      ]
    }
  }

  static_library("weblayer_lib_webview_test") {
    testonly = true
    public_deps = [ ":weblayer_lib_base" ]
    deps = [
      ":weblayer_android_test_jni_impl",
      "//base",
      "//weblayer/browser/java:jni",
      "//weblayer/browser/java:weblayer_jni_registration",
    ]
    sources = [
      "$target_gen_dir/browser/java/weblayer_jni_registration.h",
      "browser/web_view_compatibility_helper_impl.cc",
      "browser/web_view_compatibility_helper_impl.h",
    ]
    defines = [ "WEBLAYER_MANUAL_JNI_REGISTRATION" ]

    # Explicit dependency required for JNI registration to be able to
    # find the native side functions.
    if (is_component_build) {
      deps += [
        "//device/gamepad",
        "//media/midi",
        "//ui/events/devices",
      ]
    }
  }

  # Lib used in Monochrome which does not support manual JNI registration.
  # Separate from the standalone WebView version to reduce APK size.
  static_library("weblayer_lib") {
    public_deps = [ ":weblayer_lib_base" ]
    deps = [ "//weblayer/browser/java:jni" ]
    sources = [
      "browser/web_view_compatibility_helper_impl.cc",
      "browser/web_view_compatibility_helper_impl.h",
    ]
  }

  shared_library("libweblayer_test") {
    testonly = true
    sources = [
      "$target_gen_dir/browser/java/test_weblayer_jni_registration.h",
      "app/entry_point.cc",
    ]
    deps = [
      ":weblayer_lib_webview_test",
      "//base",
      "//components/android_autofill/browser/test_support:component_autofill_provider_native_test_support",
      "//content/public/app",
      "//weblayer/browser/java:test_weblayer_jni_registration",
    ]
    configs -= [ "//build/config/android:hide_all_but_jni_onload" ]
    configs += [ "//build/config/android:hide_all_but_jni" ]
  }
} else {
  source_set("weblayer_lib") {
    public_deps = [ ":weblayer_lib_base" ]
  }
}

grit("resources") {
  source = "weblayer_resources.grd"
  use_brotli = true

  outputs = [
    "grit/weblayer_resources.h",
    "weblayer_resources.pak",
  ]
  deps = [ "//weblayer/browser/webui:mojo_bindings_webui_js" ]
}
# TODO(jam): move weblayer_shell_resources_grit and copy_shell_resources here in
# a way that's shareable?
