# Copyright 2015 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("//android_webview/system_webview_apk_tmpl.gni")
import("//android_webview/webview_repack_locales.gni")
import("//android_webview/variables.gni")
import("//build/config/android/chrome_version.gni")
import("//build/config/android/config.gni")
import("//build/config/android/rules.gni")
import("//build/config/locales.gni")
import("//components/spellcheck/spellcheck_build_features.gni")
import("//tools/grit/repack.gni")
import("//tools/resources/generate_resource_whitelist.gni")
import("//tools/v8_context_snapshot/v8_context_snapshot.gni")

declare_args() {
  # Package name of the system_webview_apk target.
  system_webview_package_name = "com.android.webview"
}

if (enable_resource_whitelist_generation) {
  system_webview_pak_whitelist =
      "$target_gen_dir/system_webview_pak_whitelist.txt"
}

group("android_webview") {
  if (public_android_sdk) {
    deps = [
      ":system_webview_apk",
    ]
  }
}

generate_jni("native_jni") {
  sources = [
    "java/src/org/chromium/android_webview/AndroidProtocolHandler.java",
    "java/src/org/chromium/android_webview/AwAutofillClient.java",
    "java/src/org/chromium/android_webview/AwBrowserProcess.java",
    "java/src/org/chromium/android_webview/AwContents.java",
    "java/src/org/chromium/android_webview/AwContentsBackgroundThreadClient.java",
    "java/src/org/chromium/android_webview/AwContentsClientBridge.java",
    "java/src/org/chromium/android_webview/AwContentsIoThreadClient.java",
    "java/src/org/chromium/android_webview/AwContentsLifecycleNotifier.java",
    "java/src/org/chromium/android_webview/AwContentsStatics.java",
    "java/src/org/chromium/android_webview/AwCookieManager.java",
    "java/src/org/chromium/android_webview/AwDebug.java",
    "java/src/org/chromium/android_webview/AwDevToolsServer.java",
    "java/src/org/chromium/android_webview/AwFormDatabase.java",
    "java/src/org/chromium/android_webview/AwGLFunctor.java",
    "java/src/org/chromium/android_webview/AwHttpAuthHandler.java",
    "java/src/org/chromium/android_webview/AwMetricsLogUploader.java",
    "java/src/org/chromium/android_webview/AwMetricsServiceClient.java",
    "java/src/org/chromium/android_webview/AwPdfExporter.java",
    "java/src/org/chromium/android_webview/AwPicture.java",
    "java/src/org/chromium/android_webview/AwQuotaManagerBridge.java",
    "java/src/org/chromium/android_webview/AwRenderProcess.java",
    "java/src/org/chromium/android_webview/AwResource.java",
    "java/src/org/chromium/android_webview/AwSettings.java",
    "java/src/org/chromium/android_webview/AwTokenBindingManager.java",
    "java/src/org/chromium/android_webview/AwTracingController.java",
    "java/src/org/chromium/android_webview/AwVariationsSeedBridge.java",
    "java/src/org/chromium/android_webview/AwWebContentsDelegate.java",
    "java/src/org/chromium/android_webview/AwWebResourceResponse.java",
    "java/src/org/chromium/android_webview/InputStreamUtil.java",
    "java/src/org/chromium/android_webview/JavaBrowserViewRendererHelper.java",
    "java/src/org/chromium/android_webview/PopupTouchHandleDrawable.java",
    "java/src/org/chromium/android_webview/permission/AwPermissionRequest.java",
  ]
  jni_package = "android_webview"

  deps = [
    ":cancellation_signal_android_jar_jni_headers",
  ]
}

generate_jar_jni("cancellation_signal_android_jar_jni_headers") {
  classes = [ "android/os/CancellationSignal.class" ]
  jni_package = "android_webview"
}

java_cpp_enum("aw_permission_request_resource") {
  sources = [
    "browser/permission/aw_permission_request.h",
  ]
}

java_cpp_enum("android_webview_java_enums_srcjar") {
  sources = [
    "browser/aw_renderer_priority.h",
  ]
}

java_cpp_enum("aw_error_ui") {
  sources = [
    "browser/aw_safe_browsing_blocking_page.h",
  ]
}

java_cpp_enum("aw_safe_browsing_action") {
  sources = [
    "browser/aw_url_checker_delegate_impl.h",
  ]
}

jinja_template("system_webview_manifest") {
  input = "apk/java/AndroidManifest.xml"
  output = system_webview_android_manifest
  variables = [ "manifest_package=$system_webview_package_name" ]
}

webview_repack_locales("repack_locales") {
  input_locales = locales
  output_locales = locales

  if (enable_resource_whitelist_generation) {
    repack_whitelist = system_webview_pak_whitelist
    deps = [
      ":system_webview_pak_whitelist",
    ]
  }
}

android_assets("locale_pak_assets") {
  disable_compression = true
  renaming_sources = []
  renaming_destinations = []
  foreach(_locale, locales) {
    renaming_sources += [ "$root_out_dir/android_webview/locales/$_locale.pak" ]
    renaming_destinations += [ "stored-locales/$_locale.pak" ]
  }
  treat_as_locale_paks = true
  deps = [
    ":repack_locales",
  ]
}

repack("repack_pack") {
  sources = [
    "$root_gen_dir/content/content_resources.pak",
    "$root_gen_dir/net/net_resources.pak",
    "$root_gen_dir/third_party/blink/public/resources/blink_resources.pak",
    "$target_gen_dir/aw_resources.pak",
    "$target_gen_dir/components_resources.pak",
    "$target_gen_dir/webui_resources.pak",
  ]
  deps = [
    ":generate_aw_resources",
    ":generate_components_resources",
    ":generate_webui_resources",
    "//content:resources",
    "//net:net_resources",
    "//third_party/blink/public:resources",
  ]
  output = "$target_gen_dir/resources.pak"

  if (enable_resource_whitelist_generation) {
    repack_whitelist = system_webview_pak_whitelist
    deps += [ ":system_webview_pak_whitelist" ]
  }
}

repack("repack_100_percent") {
  sources = [
    "$root_gen_dir/content/app/resources/content_resources_100_percent.pak",
    "$root_gen_dir/third_party/blink/public/resources/blink_scaled_resources_100_percent.pak",
    "$root_gen_dir/ui/resources/ui_resources_100_percent.pak",
  ]
  deps = [
    "//content/app/resources",
    "//third_party/blink/public:scaled_resources_100_percent",
    "//ui/resources",
  ]
  output = "$target_gen_dir/chrome_100_percent.pak"

  if (enable_resource_whitelist_generation) {
    repack_whitelist = system_webview_pak_whitelist
    deps += [ ":system_webview_pak_whitelist" ]
  }
}

android_assets("pak_file_assets") {
  sources = [
    "$target_gen_dir/chrome_100_percent.pak",
    "$target_gen_dir/resources.pak",
  ]
  deps = [
    ":repack_100_percent",
    ":repack_pack",
  ]
  disable_compression = true
}

# These assets are needed by both monochrome and stand alone WebView, but not by
# Chrome.
android_assets("monochrome_webview_assets") {
  deps = [
    "//third_party/icu:icu_assets",
  ]
  if (use_v8_context_snapshot) {
    deps += [ "//tools/v8_context_snapshot:v8_context_snapshot_assets" ]
  } else {
    deps += [ "//v8:v8_external_startup_data_assets" ]
  }
  if (android_64bit_target_cpu && build_apk_secondary_abi) {
    deps += [ ":v8_snapshot_secondary_abi_assets" ]
  }
}

java_group("assets") {
  deps = [
    ":license_assets",
    ":locale_pak_assets",
    ":monochrome_webview_assets",
    ":pak_file_assets",
  ]
}

java_group("stub_assets") {
  deps = [
    ":license_assets",
  ]
}

android_assets("license_assets") {
  renaming_sources = [ "$root_gen_dir/components/resources/about_credits.html" ]
  renaming_destinations = [ "webview_licenses.notice" ]
  deps = [
    "//components/resources:about_credits",
  ]
}

android_resources("system_webview_resources") {
  resource_dirs = [ "apk/java/res" ]
  custom_package = system_webview_package_name
}

android_resources("resources") {
  resource_dirs = [ "java/res" ]
  custom_package = "org.chromium.android_webview"
  deps = [
    ":strings_grd",
  ]
}

grit("generate_aw_resources") {
  source = "ui/aw_resources.grd"
  outputs = [
    "grit/aw_resources.h",
    "aw_resources.pak",
  ]
}

grit("generate_aw_strings") {
  source = "ui/aw_strings.grd"
  outputs = [
    "grit/aw_strings.h",
  ]
  foreach(_locale, locales) {
    outputs += [ "aw_strings_${_locale}.pak" ]
  }
}

grit("generate_webui_resources") {
  source = "../ui/webui/resources/webui_resources.grd"

  # The .grd contains references to generated files.
  source_is_generated = true

  # webui/resources has way too many resources. The whitelist is trim this down
  # to a reasonable size
  whitelist = rebase_path("ui/grit_resources_whitelist.txt", root_build_dir)
  inputs = [
    "//android_webview/ui/grit_resources_whitelist.txt",
  ]
  grit_flags = [
    "-w",
    whitelist,
  ]
  outputs = [
    "grit/webui_resources.h",
    "grit/webui_resources_map.cc",
    "grit/webui_resources_map.h",
    "webui_resources.pak",
  ]
}

grit("generate_components_resources") {
  source = "../components/resources/components_resources.grd"

  # The .grd contains references to generated files.
  source_is_generated = true

  # See :generate_webui_resources for an explanation of the whitelist
  whitelist = rebase_path("ui/grit_resources_whitelist.txt", root_build_dir)
  inputs = [
    "//android_webview/ui/grit_resources_whitelist.txt",
  ]
  grit_flags = [
    "-w",
    whitelist,
  ]
  outputs = [
    "grit/components_resources.h",
    "components_resources.pak",
  ]

  deps = [
    "//components/resources:components_resources",
  ]
}

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

  # components_strings contains strings from all components. WebView
  # will never display most of them, so we try to limit the included
  # strings. This whitelist trims about 50% more than the compile-based
  # whitelist generated by :system_webview_pak_whitelist.
  whitelist = rebase_path("ui/grit_strings_whitelist.txt", root_build_dir)
  inputs = [
    "//android_webview/ui/grit_strings_whitelist.txt",
  ]
  grit_flags = [
    "-w",
    whitelist,
  ]
  outputs = [
    "grit/components_strings.h",
    "java/res/values-am/components_strings.xml",
    "java/res/values-ar/components_strings.xml",
    "java/res/values-bg/components_strings.xml",
    "java/res/values-ca/components_strings.xml",
    "java/res/values-cs/components_strings.xml",
    "java/res/values-da/components_strings.xml",
    "java/res/values-de/components_strings.xml",
    "java/res/values-el/components_strings.xml",
    "java/res/values-en-rGB/components_strings.xml",
    "java/res/values-es-rUS/components_strings.xml",
    "java/res/values-es/components_strings.xml",
    "java/res/values-fa/components_strings.xml",
    "java/res/values-fi/components_strings.xml",
    "java/res/values-fr/components_strings.xml",
    "java/res/values-hi/components_strings.xml",
    "java/res/values-hr/components_strings.xml",
    "java/res/values-hu/components_strings.xml",
    "java/res/values-in/components_strings.xml",
    "java/res/values-it/components_strings.xml",
    "java/res/values-iw/components_strings.xml",
    "java/res/values-ja/components_strings.xml",
    "java/res/values-ko/components_strings.xml",
    "java/res/values-lt/components_strings.xml",
    "java/res/values-lv/components_strings.xml",
    "java/res/values-nb/components_strings.xml",
    "java/res/values-nl/components_strings.xml",
    "java/res/values-pl/components_strings.xml",
    "java/res/values-pt-rBR/components_strings.xml",
    "java/res/values-pt-rPT/components_strings.xml",
    "java/res/values-ro/components_strings.xml",
    "java/res/values-ru/components_strings.xml",
    "java/res/values-sk/components_strings.xml",
    "java/res/values-sl/components_strings.xml",
    "java/res/values-sr/components_strings.xml",
    "java/res/values-sv/components_strings.xml",
    "java/res/values-sw/components_strings.xml",
    "java/res/values-th/components_strings.xml",
    "java/res/values-tl/components_strings.xml",
    "java/res/values-tr/components_strings.xml",
    "java/res/values-uk/components_strings.xml",
    "java/res/values-vi/components_strings.xml",
    "java/res/values-zh-rCN/components_strings.xml",
    "java/res/values-zh-rTW/components_strings.xml",
    "java/res/values/components_strings.xml",
  ]
  foreach(_locale, locales_with_fake_bidi) {
    outputs += [ "components_strings_${_locale}.pak" ]
  }
}

source_set("webview_entry_point") {
  deps = [
    ":common",
  ]
  sources = [
    "lib/webview_entry_point.cc",
  ]
}

shared_library("libwebviewchromium") {
  deps = [
    ":webview_entry_point",
  ]
  configs -= [ "//build/config/android:hide_all_but_jni_onload" ]
  configs += [ "//build/config/android:hide_all_but_jni" ]
}

if (android_64bit_target_cpu) {
  android_assets("v8_snapshot_secondary_abi_assets") {
    _secondary_abi_out_dir =
        get_label_info("//v8($android_secondary_abi_toolchain)", "root_out_dir")
    assert(android_64bit_target_cpu,
           "32-bit targets shouldn't have secondary abi")
    arch_suffix = "32"
    if (use_v8_context_snapshot) {
      renaming_sources = [ "$_secondary_abi_out_dir/v8_context_snapshot.bin" ]
      renaming_destinations = [ "v8_context_snapshot_$arch_suffix.bin" ]
    } else {
      renaming_sources = [ "$_secondary_abi_out_dir/snapshot_blob.bin" ]
      renaming_destinations = [ "snapshot_blob_$arch_suffix.bin" ]
    }
    disable_compression = true
    deps = [
      "//tools/v8_context_snapshot($android_secondary_abi_toolchain)",
      "//v8($android_secondary_abi_toolchain)",
    ]
  }

  shared_library("monochrome") {
    deps = [
      ":webview_entry_point",
    ]
    configs -= [ "//build/config/android:hide_all_but_jni_onload" ]
    configs += [ "//build/config/android:hide_all_but_jni" ]
    if (use_lld) {
      configs += [ "//build/config/android:lld_pack_relocations" ]
    }

    if (target_cpu != "mipsel" && target_cpu != "mips64el") {
      # .gnu.hash support added in Android M. Without this flag, library will also
      # contain an unused .hash section. (http://crbug.com/742525#c28)
      # Not to be used for MIPS arhitecture since MIPS does not
      # support hashstyle gnu: http://crbug.com/811306
      ldflags = [ "-Wl,--hash-style=gnu" ]
    }

    public_configs = extra_chrome_shared_library_configs
    deps += extra_chrome_shared_library_deps
  }
}

if (enable_resource_whitelist_generation) {
  generate_resource_whitelist("system_webview_pak_whitelist") {
    deps = [
      ":libwebviewchromium",
    ]
    input = "$root_out_dir/lib.unstripped/libwebviewchromium$shlib_extension"
    output = system_webview_pak_whitelist
  }
}

source_set("common") {
  sources = [
    "browser/android_protocol_handler.cc",
    "browser/android_protocol_handler.h",
    "browser/aw_autofill_client.cc",
    "browser/aw_autofill_client.h",
    "browser/aw_browser_context.cc",
    "browser/aw_browser_context.h",
    "browser/aw_browser_main_parts.cc",
    "browser/aw_browser_main_parts.h",
    "browser/aw_browser_permission_request_delegate.h",
    "browser/aw_browser_policy_connector.cc",
    "browser/aw_browser_policy_connector.h",
    "browser/aw_browser_terminator.cc",
    "browser/aw_browser_terminator.h",
    "browser/aw_content_browser_client.cc",
    "browser/aw_content_browser_client.h",
    "browser/aw_contents.cc",
    "browser/aw_contents.h",
    "browser/aw_contents_client_bridge.cc",
    "browser/aw_contents_client_bridge.h",
    "browser/aw_contents_io_thread_client.cc",
    "browser/aw_contents_io_thread_client.h",
    "browser/aw_contents_lifecycle_notifier.cc",
    "browser/aw_contents_lifecycle_notifier.h",
    "browser/aw_contents_statics.cc",
    "browser/aw_cookie_access_policy.cc",
    "browser/aw_cookie_access_policy.h",
    "browser/aw_debug.cc",
    "browser/aw_devtools_manager_delegate.cc",
    "browser/aw_devtools_manager_delegate.h",
    "browser/aw_devtools_server.cc",
    "browser/aw_devtools_server.h",
    "browser/aw_download_manager_delegate.cc",
    "browser/aw_download_manager_delegate.h",
    "browser/aw_field_trial_creator.cc",
    "browser/aw_field_trial_creator.h",
    "browser/aw_form_database.cc",
    "browser/aw_form_database_service.cc",
    "browser/aw_form_database_service.h",
    "browser/aw_gl_functor.cc",
    "browser/aw_gl_functor.h",
    "browser/aw_gl_surface.cc",
    "browser/aw_gl_surface.h",
    "browser/aw_http_auth_handler.cc",
    "browser/aw_http_auth_handler.h",
    "browser/aw_javascript_dialog_manager.cc",
    "browser/aw_javascript_dialog_manager.h",
    "browser/aw_login_delegate.cc",
    "browser/aw_login_delegate.h",
    "browser/aw_media_url_interceptor.cc",
    "browser/aw_media_url_interceptor.h",
    "browser/aw_metrics_log_uploader.cc",
    "browser/aw_metrics_log_uploader.h",
    "browser/aw_metrics_service_client.cc",
    "browser/aw_metrics_service_client.h",
    "browser/aw_pdf_exporter.cc",
    "browser/aw_pdf_exporter.h",
    "browser/aw_permission_manager.cc",
    "browser/aw_permission_manager.h",
    "browser/aw_picture.cc",
    "browser/aw_picture.h",
    "browser/aw_print_manager.cc",
    "browser/aw_print_manager.h",
    "browser/aw_printing_message_filter.cc",
    "browser/aw_printing_message_filter.h",
    "browser/aw_quota_manager_bridge.cc",
    "browser/aw_quota_manager_bridge.h",
    "browser/aw_quota_permission_context.cc",
    "browser/aw_quota_permission_context.h",
    "browser/aw_render_process.cc",
    "browser/aw_render_process.h",
    "browser/aw_render_process_gone_delegate.h",
    "browser/aw_render_thread_context_provider.cc",
    "browser/aw_render_thread_context_provider.h",
    "browser/aw_renderer_priority.h",
    "browser/aw_resource_context.cc",
    "browser/aw_resource_context.h",
    "browser/aw_safe_browsing_blocking_page.cc",
    "browser/aw_safe_browsing_blocking_page.h",
    "browser/aw_safe_browsing_resource_throttle.cc",
    "browser/aw_safe_browsing_resource_throttle.h",
    "browser/aw_safe_browsing_ui_manager.cc",
    "browser/aw_safe_browsing_ui_manager.h",
    "browser/aw_safe_browsing_whitelist_manager.cc",
    "browser/aw_safe_browsing_whitelist_manager.h",
    "browser/aw_settings.cc",
    "browser/aw_settings.h",
    "browser/aw_ssl_host_state_delegate.cc",
    "browser/aw_ssl_host_state_delegate.h",
    "browser/aw_url_checker_delegate_impl.cc",
    "browser/aw_url_checker_delegate_impl.h",
    "browser/aw_variations_seed_bridge.cc",
    "browser/aw_variations_seed_bridge.h",
    "browser/aw_variations_service_client.cc",
    "browser/aw_variations_service_client.h",
    "browser/aw_web_contents_delegate.cc",
    "browser/aw_web_contents_delegate.h",
    "browser/aw_web_contents_view_delegate.cc",
    "browser/aw_web_contents_view_delegate.h",
    "browser/aw_web_ui_controller_factory.cc",
    "browser/aw_web_ui_controller_factory.h",
    "browser/browser_view_renderer.cc",
    "browser/browser_view_renderer.h",
    "browser/browser_view_renderer_client.h",
    "browser/child_frame.cc",
    "browser/child_frame.h",
    "browser/command_line_helper.cc",
    "browser/command_line_helper.h",
    "browser/compositor_frame_consumer.h",
    "browser/compositor_frame_producer.h",
    "browser/compositor_id.cc",
    "browser/compositor_id.h",
    "browser/cookie_manager.cc",
    "browser/deferred_gpu_command_service.cc",
    "browser/deferred_gpu_command_service.h",
    "browser/find_helper.cc",
    "browser/find_helper.h",
    "browser/gl_view_renderer_manager.cc",
    "browser/gl_view_renderer_manager.h",
    "browser/hardware_renderer.cc",
    "browser/hardware_renderer.h",
    "browser/icon_helper.cc",
    "browser/icon_helper.h",
    "browser/input_stream.cc",
    "browser/input_stream.h",
    "browser/java_browser_view_renderer_helper.cc",
    "browser/java_browser_view_renderer_helper.h",
    "browser/net/android_stream_reader_url_request_job.cc",
    "browser/net/android_stream_reader_url_request_job.h",
    "browser/net/aw_cookie_change_dispatcher_wrapper.cc",
    "browser/net/aw_cookie_change_dispatcher_wrapper.h",
    "browser/net/aw_cookie_store_wrapper.cc",
    "browser/net/aw_cookie_store_wrapper.h",
    "browser/net/aw_http_user_agent_settings.cc",
    "browser/net/aw_http_user_agent_settings.h",
    "browser/net/aw_network_change_notifier.cc",
    "browser/net/aw_network_change_notifier.h",
    "browser/net/aw_network_change_notifier_factory.cc",
    "browser/net/aw_network_change_notifier_factory.h",
    "browser/net/aw_network_delegate.cc",
    "browser/net/aw_network_delegate.h",
    "browser/net/aw_request_interceptor.cc",
    "browser/net/aw_request_interceptor.h",
    "browser/net/aw_url_request_context_getter.cc",
    "browser/net/aw_url_request_context_getter.h",
    "browser/net/aw_url_request_job_factory.cc",
    "browser/net/aw_url_request_job_factory.h",
    "browser/net/aw_web_resource_request.cc",
    "browser/net/aw_web_resource_request.h",
    "browser/net/aw_web_resource_response.cc",
    "browser/net/aw_web_resource_response.h",
    "browser/net/init_native_callback.cc",
    "browser/net/init_native_callback.h",
    "browser/net/input_stream_reader.cc",
    "browser/net/input_stream_reader.h",
    "browser/net/token_binding_manager.cc",
    "browser/net/token_binding_manager.h",
    "browser/parent_compositor_draw_constraints.cc",
    "browser/parent_compositor_draw_constraints.h",
    "browser/parent_output_surface.cc",
    "browser/parent_output_surface.h",
    "browser/permission/aw_permission_request.cc",
    "browser/permission/aw_permission_request.h",
    "browser/permission/aw_permission_request_delegate.cc",
    "browser/permission/aw_permission_request_delegate.h",
    "browser/permission/media_access_permission_request.cc",
    "browser/permission/media_access_permission_request.h",
    "browser/permission/permission_request_handler.cc",
    "browser/permission/permission_request_handler.h",
    "browser/permission/permission_request_handler_client.cc",
    "browser/permission/permission_request_handler_client.h",
    "browser/permission/simple_permission_request.cc",
    "browser/permission/simple_permission_request.h",
    "browser/popup_touch_handle_drawable.cc",
    "browser/popup_touch_handle_drawable.h",
    "browser/render_thread_manager.cc",
    "browser/render_thread_manager.h",
    "browser/render_thread_manager_client.h",
    "browser/renderer_host/auto_login_parser.cc",
    "browser/renderer_host/auto_login_parser.h",
    "browser/renderer_host/aw_render_view_host_ext.cc",
    "browser/renderer_host/aw_render_view_host_ext.h",
    "browser/renderer_host/aw_resource_dispatcher_host_delegate.cc",
    "browser/renderer_host/aw_resource_dispatcher_host_delegate.h",
    "browser/scoped_app_gl_state_restore.cc",
    "browser/scoped_app_gl_state_restore.h",
    "browser/state_serializer.cc",
    "browser/state_serializer.h",
    "browser/surfaces_instance.cc",
    "browser/surfaces_instance.h",
    "browser/token_binding_manager_bridge.cc",
    "browser/tracing/aw_trace_event_args_whitelist.cc",
    "browser/tracing/aw_trace_event_args_whitelist.h",
    "browser/tracing/aw_tracing_controller.cc",
    "browser/tracing/aw_tracing_controller.h",
    "browser/tracing/aw_tracing_delegate.cc",
    "browser/tracing/aw_tracing_delegate.h",
    "common/android_webview_message_generator.cc",
    "common/android_webview_message_generator.h",
    "common/aw_channel.cc",
    "common/aw_channel.h",
    "common/aw_content_client.cc",
    "common/aw_content_client.h",
    "common/aw_descriptors.h",
    "common/aw_hit_test_data.cc",
    "common/aw_hit_test_data.h",
    "common/aw_media_drm_bridge_client.cc",
    "common/aw_media_drm_bridge_client.h",
    "common/aw_paths.cc",
    "common/aw_paths.h",
    "common/aw_resource.cc",
    "common/aw_resource.h",
    "common/aw_switches.cc",
    "common/aw_switches.h",
    "common/crash_reporter/aw_crash_reporter_client.cc",
    "common/crash_reporter/aw_crash_reporter_client.h",
    "common/crash_reporter/crash_keys.cc",
    "common/crash_reporter/crash_keys.h",
    "common/devtools_instrumentation.h",
    "common/render_view_messages.cc",
    "common/render_view_messages.h",
    "common/url_constants.cc",
    "common/url_constants.h",
    "gpu/aw_content_gpu_client.cc",
    "gpu/aw_content_gpu_client.h",
    "lib/aw_main_delegate.cc",
    "lib/aw_main_delegate.h",
    "lib/webview_jni_onload.cc",
    "lib/webview_jni_onload.h",
    "public/browser/draw_gl.h",
    "public/browser/draw_sw.h",
    "renderer/aw_content_renderer_client.cc",
    "renderer/aw_content_renderer_client.h",
    "renderer/aw_content_settings_client.cc",
    "renderer/aw_content_settings_client.h",
    "renderer/aw_key_systems.cc",
    "renderer/aw_key_systems.h",
    "renderer/aw_print_render_frame_helper_delegate.cc",
    "renderer/aw_print_render_frame_helper_delegate.h",
    "renderer/aw_render_frame_ext.cc",
    "renderer/aw_render_frame_ext.h",
    "renderer/aw_render_thread_observer.cc",
    "renderer/aw_render_thread_observer.h",
    "renderer/aw_render_view_ext.cc",
    "renderer/aw_render_view_ext.h",
    "renderer/aw_url_loader_throttle_provider.cc",
    "renderer/aw_url_loader_throttle_provider.h",
    "renderer/aw_websocket_handshake_throttle_provider.cc",
    "renderer/aw_websocket_handshake_throttle_provider.h",
    "renderer/print_render_frame_observer.cc",
    "renderer/print_render_frame_observer.h",
    "utility/aw_content_utility_client.cc",
    "utility/aw_content_utility_client.h",
  ]

  deps = [
    ":generate_aw_resources",
    ":generate_aw_strings",
    ":generate_components_strings",
    ":native_jni",
    "//base",
    "//base/third_party/dynamic_annotations:dynamic_annotations",
    "//components/autofill/android:provider",
    "//components/autofill/content/browser",
    "//components/autofill/content/renderer",
    "//components/cdm/browser",
    "//components/cdm/renderer",
    "//components/crash/content/app",
    "//components/crash/content/browser",
    "//components/download/public/common:public",
    "//components/embedder_support/android:web_contents_delegate",
    "//components/google/core/browser",
    "//components/heap_profiling",
    "//components/keyed_service/content",
    "//components/metrics",
    "//components/metrics:gpu",
    "//components/metrics:metrics",
    "//components/metrics:net",
    "//components/metrics:ui",
    "//components/minidump_uploader",
    "//components/navigation_interception",
    "//components/network_session_configurator/common",
    "//components/policy:generated",
    "//components/policy/content/",
    "//components/policy/core/browser",
    "//components/policy/core/common",
    "//components/prefs",
    "//components/printing/browser",
    "//components/printing/common",
    "//components/printing/renderer",
    "//components/safe_browsing",
    "//components/safe_browsing/android:safe_browsing_mobile",
    "//components/safe_browsing/browser",
    "//components/safe_browsing/common",
    "//components/safe_browsing/renderer:throttles",
    "//components/safe_browsing/triggers",
    "//components/safe_browsing/web_ui",
    "//components/services/heap_profiling",
    "//components/services/heap_profiling/public/cpp",
    "//components/services/heap_profiling/public/mojom",
    "//components/spellcheck:buildflags",
    "//components/supervised_user_error_page",
    "//components/supervised_user_error_page:gin",
    "//components/url_matcher",
    "//components/variations/service",
    "//components/version_info:channel",
    "//components/version_info/android:channel_getter",
    "//components/visitedlink/browser",
    "//components/visitedlink/renderer",
    "//components/viz/service",
    "//components/web_restrictions:browser",
    "//content",
    "//content/public/app:both",
    "//content/public/browser",
    "//content/public/common:content_descriptor_keys",
    "//content/public/common:service_names",
    "//crypto",
    "//gin",
    "//gpu/command_buffer/client:gles2_implementation",
    "//gpu/command_buffer/service",
    "//gpu/ipc:gl_in_process_context",
    "//gpu/skia_bindings",
    "//media",
    "//media/midi",
    "//net",
    "//net:extras",
    "//printing",
    "//services/preferences/tracked:tracked",
    "//services/service_manager/public/cpp",
    "//services/viz/public/interfaces",
    "//skia",
    "//storage/browser",
    "//storage/common",
    "//third_party/blink/public:blink",
    "//ui/base",
    "//ui/events:gesture_detection",
    "//ui/gfx",
    "//ui/gl",
    "//ui/gl/init",
    "//ui/shell_dialogs",
    "//url",
    "//v8",
  ]

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

  configs += [
    "//tools/v8_context_snapshot:use_v8_context_snapshot",
    "//v8:external_startup_data",
  ]

  libs = [ "jnigraphics" ]
}

android_library("android_webview_java") {
  java_files = [
    "java/src/org/chromium/android_webview/AndroidProtocolHandler.java",
    "java/src/org/chromium/android_webview/AutofillActionModeCallback.java",
    "java/src/org/chromium/android_webview/AwActionModeCallback.java",
    "java/src/org/chromium/android_webview/AwAutofillClient.java",
    "java/src/org/chromium/android_webview/AwAutofillManager.java",
    "java/src/org/chromium/android_webview/AwAutofillProvider.java",
    "java/src/org/chromium/android_webview/AwAutofillUMA.java",
    "java/src/org/chromium/android_webview/AwBrowserContext.java",
    "java/src/org/chromium/android_webview/AwBrowserProcess.java",
    "java/src/org/chromium/android_webview/AwContents.java",
    "java/src/org/chromium/android_webview/AwConsoleMessage.java",
    "java/src/org/chromium/android_webview/AwContentsBackgroundThreadClient.java",
    "java/src/org/chromium/android_webview/AwContentsClient.java",
    "java/src/org/chromium/android_webview/AwContentsClientBridge.java",
    "java/src/org/chromium/android_webview/AwContentsClientCallbackHelper.java",
    "java/src/org/chromium/android_webview/AwContentsIoThreadClient.java",
    "java/src/org/chromium/android_webview/AwContentsLifecycleNotifier.java",
    "java/src/org/chromium/android_webview/AwContentsStatics.java",
    "java/src/org/chromium/android_webview/AwCookieManager.java",
    "java/src/org/chromium/android_webview/AwDebug.java",
    "java/src/org/chromium/android_webview/AwDevToolsServer.java",
    "java/src/org/chromium/android_webview/AwFormDatabase.java",
    "java/src/org/chromium/android_webview/AwGeolocationPermissions.java",
    "java/src/org/chromium/android_webview/AwGLFunctor.java",
    "java/src/org/chromium/android_webview/AwHttpAuthHandler.java",
    "java/src/org/chromium/android_webview/AwLayoutSizer.java",
    "java/src/org/chromium/android_webview/AwMetricsLogUploader.java",
    "java/src/org/chromium/android_webview/AwMetricsServiceClient.java",
    "java/src/org/chromium/android_webview/AwNetworkChangeNotifierRegistrationPolicy.java",
    "java/src/org/chromium/android_webview/AwPdfExporter.java",
    "java/src/org/chromium/android_webview/AwPicture.java",
    "java/src/org/chromium/android_webview/AwPrintDocumentAdapter.java",
    "java/src/org/chromium/android_webview/AwSafeBrowsingConfigHelper.java",
    "java/src/org/chromium/android_webview/AwSafeBrowsingResponse.java",
    "java/src/org/chromium/android_webview/AwQuotaManagerBridge.java",
    "java/src/org/chromium/android_webview/AwRenderProcessGoneDetail.java",
    "java/src/org/chromium/android_webview/AwResource.java",
    "java/src/org/chromium/android_webview/AwRenderProcess.java",
    "java/src/org/chromium/android_webview/AwSafeBrowsingConversionHelper.java",
    "java/src/org/chromium/android_webview/AwScrollOffsetManager.java",
    "java/src/org/chromium/android_webview/AwServiceWorkerClient.java",
    "java/src/org/chromium/android_webview/AwServiceWorkerController.java",
    "java/src/org/chromium/android_webview/AwServiceWorkerSettings.java",
    "java/src/org/chromium/android_webview/AwSettings.java",
    "java/src/org/chromium/android_webview/AwSupportLibIsomorphic.java",
    "java/src/org/chromium/android_webview/AwSwitches.java",
    "java/src/org/chromium/android_webview/AwTokenBindingManager.java",
    "java/src/org/chromium/android_webview/AwTracingController.java",
    "java/src/org/chromium/android_webview/AwViewMethods.java",
    "java/src/org/chromium/android_webview/AwViewAndroidDelegate.java",
    "java/src/org/chromium/android_webview/AwVariationsSeedBridge.java",
    "java/src/org/chromium/android_webview/AwWebContentsDelegate.java",
    "java/src/org/chromium/android_webview/AwWebContentsDelegateAdapter.java",
    "java/src/org/chromium/android_webview/AwWebContentsObserver.java",
    "java/src/org/chromium/android_webview/AwWebResourceResponse.java",
    "java/src/org/chromium/android_webview/AwZoomControls.java",
    "java/src/org/chromium/android_webview/CleanupReference.java",
    "java/src/org/chromium/android_webview/ClientCertLookupTable.java",
    "java/src/org/chromium/android_webview/DefaultVideoPosterRequestHandler.java",
    "java/src/org/chromium/android_webview/ErrorCodeConversionHelper.java",
    "java/src/org/chromium/android_webview/FindAddress.java",
    "java/src/org/chromium/android_webview/FullScreenView.java",
    "java/src/org/chromium/android_webview/HttpAuthDatabase.java",
    "java/src/org/chromium/android_webview/InputStreamUtil.java",
    "java/src/org/chromium/android_webview/JavaBrowserViewRendererHelper.java",
    "java/src/org/chromium/android_webview/JsPromptResultReceiver.java",
    "java/src/org/chromium/android_webview/JsResultHandler.java",
    "java/src/org/chromium/android_webview/JsResultReceiver.java",
    "java/src/org/chromium/android_webview/NullAwViewMethods.java",
    "java/src/org/chromium/android_webview/OverScrollGlow.java",
    "java/src/org/chromium/android_webview/PopupTouchHandleDrawable.java",
    "java/src/org/chromium/android_webview/ResourcesContextWrapperFactory.java",
    "java/src/org/chromium/android_webview/ScopedSysTraceEvent.java",
    "java/src/org/chromium/android_webview/ScrollAccessibilityHelper.java",
    "java/src/org/chromium/android_webview/SslUtil.java",
    "java/src/org/chromium/android_webview/VariationsSeedLoader.java",
    "java/src/org/chromium/android_webview/ViewPositionObserver.java",
    "java/src/org/chromium/android_webview/WebViewChromiumRunQueue.java",
    "java/src/org/chromium/android_webview/permission/AwGeolocationCallback.java",
    "java/src/org/chromium/android_webview/permission/AwPermissionRequest.java",
    "java/src/org/chromium/android_webview/policy/AwPolicyProvider.java",
  ]
  deps = [
    ":android_webview_commandline_java",
    ":android_webview_platform_services_java",
    ":android_webview_services_java",
    ":android_webview_variations_utils_java",
    ":resources",
    ":strings_grd",
    ":system_webview_manifest",
    "//base:base_java",
    "//components/autofill/android:autofill_java",
    "//components/autofill/android:provider_java",
    "//components/background_task_scheduler:background_task_scheduler_task_ids_java",
    "//components/crash/android:java",
    "//components/embedder_support/android:web_contents_delegate_java",
    "//components/minidump_uploader:minidump_uploader_java",
    "//components/navigation_interception/android:navigation_interception_java",
    "//components/policy/android:policy_java",
    "//components/safe_browsing/android:safe_browsing_java",
    "//components/variations:load_seed_result_enum_java",
    "//components/variations/android:variations_java",
    "//components/version_info/android:version_constants_java",
    "//components/web_restrictions:client_java",
    "//content/public/android:content_java",
    "//device/gamepad:java",
    "//net/android:net_java",
    "//third_party/android_deps:android_support_annotations_java",
    "//third_party/blink/public:blink_headers_java",
    "//ui/android:ui_java",
  ]

  if (enable_spellcheck) {
    deps += [ "//components/spellcheck/browser/android:java" ]
  }

  srcjar_deps = [
    ":aw_permission_request_resource",
    ":android_webview_java_enums_srcjar",
    ":aw_error_ui",
    ":aw_safe_browsing_action",
    "//components/safe_browsing/db:sb_threat_values",
  ]

  android_manifest_for_lint = system_webview_android_manifest
}

android_library("android_webview_variations_utils_java") {
  java_files = [ "java/src/org/chromium/android_webview/VariationsUtils.java" ]
  deps = [
    "//android_webview/proto:aw_variations_seed_proto_java",
    "//components/variations/android:variations_java",
  ]
}

java_strings_grd("strings_grd") {
  grd_file = "java/strings/android_webview_strings.grd"
  outputs = [
    "values-am/android_webview_strings.xml",
    "values-ar/android_webview_strings.xml",
    "values-bg/android_webview_strings.xml",
    "values-ca/android_webview_strings.xml",
    "values-cs/android_webview_strings.xml",
    "values-da/android_webview_strings.xml",
    "values-de/android_webview_strings.xml",
    "values-el/android_webview_strings.xml",
    "values-en-rGB/android_webview_strings.xml",
    "values-es-rUS/android_webview_strings.xml",
    "values-es/android_webview_strings.xml",
    "values-fa/android_webview_strings.xml",
    "values-fi/android_webview_strings.xml",
    "values-fr/android_webview_strings.xml",
    "values-hi/android_webview_strings.xml",
    "values-hr/android_webview_strings.xml",
    "values-hu/android_webview_strings.xml",
    "values-in/android_webview_strings.xml",
    "values-it/android_webview_strings.xml",
    "values-iw/android_webview_strings.xml",
    "values-ja/android_webview_strings.xml",
    "values-ko/android_webview_strings.xml",
    "values-lt/android_webview_strings.xml",
    "values-lv/android_webview_strings.xml",
    "values-nb/android_webview_strings.xml",
    "values-nl/android_webview_strings.xml",
    "values-pl/android_webview_strings.xml",
    "values-pt-rBR/android_webview_strings.xml",
    "values-pt-rPT/android_webview_strings.xml",
    "values-ro/android_webview_strings.xml",
    "values-ru/android_webview_strings.xml",
    "values-sk/android_webview_strings.xml",
    "values-sl/android_webview_strings.xml",
    "values-sr/android_webview_strings.xml",
    "values-sv/android_webview_strings.xml",
    "values-sw/android_webview_strings.xml",
    "values-th/android_webview_strings.xml",
    "values-tl/android_webview_strings.xml",
    "values-tr/android_webview_strings.xml",
    "values-uk/android_webview_strings.xml",
    "values-vi/android_webview_strings.xml",
    "values-zh-rCN/android_webview_strings.xml",
    "values-zh-rTW/android_webview_strings.xml",
    "values/android_webview_strings.xml",
  ]
}

# Separate target to allow for a dependency on GmsCore without pulling in all of
# android_webview_java. It compiles the abstract class; implementations are
# compiled separately.
android_library("android_webview_platform_services_java") {
  java_files = [
    "java/src/org/chromium/android_webview/PlatformServiceBridge.java",
    "java/src/org/chromium/android_webview/PlatformServiceBridgeImpl.java",
  ]

  deps = [
    "//base:base_java",
    "//third_party/android_deps:android_support_annotations_java",
  ]

  # The appropriate .class file will be loaded via a dependency to a library
  # like :platform_service_bridge_upstream_implementation_java below. We only include the
  # .java file because other files in the target depend on it.
  jar_excluded_patterns = [ "*/PlatformServiceBridgeImpl.class" ]
}

# This target compiles the implementation of PlatformServiceBridge for AOSP targets.
android_library("platform_service_bridge_upstream_implementation_java") {
  java_files =
      [ "java/src/org/chromium/android_webview/PlatformServiceBridgeImpl.java" ]
  deps = [
    ":android_webview_platform_services_java",
  ]
}

android_library("android_webview_commandline_java") {
  java_files = [
    "java/src/org/chromium/android_webview/command_line/CommandLineUtil.java",
  ]

  deps = [
    "//base:base_java",
  ]
}

# Keep WebView's services separate from other WebView code to keep their deps clean
# (and make them easy to move).
android_library("android_webview_services_java") {
  java_files = [
    "java/src/org/chromium/android_webview/services/AwMinidumpUploadJobService.java",
    "java/src/org/chromium/android_webview/services/AwMinidumpUploaderDelegate.java",
    "java/src/org/chromium/android_webview/services/CrashReceiverService.java",
    "java/src/org/chromium/android_webview/services/ServiceInit.java",
    "java/src/org/chromium/android_webview/services/AwVariationsSeedFetcher.java",
    "java/src/org/chromium/android_webview/services/VariationsSeedHolder.java",
    "java/src/org/chromium/android_webview/services/VariationsSeedServer.java",
  ]
  deps = [
    ":android_webview_commandline_java",
    ":android_webview_platform_services_java",
    ":android_webview_variations_utils_java",
    ":system_webview_manifest",
    "//base:base_java",
    "//components/background_task_scheduler:background_task_scheduler_task_ids_java",
    "//components/minidump_uploader:minidump_uploader_java",
    "//components/version_info/android:version_constants_java",
  ]
  srcjar_deps = [
    ":crash_receiver_aidl",
    ":aw_variations_seed_server_aidl",
  ]
  android_manifest_for_lint = system_webview_android_manifest
}

android_aidl("crash_receiver_aidl") {
  import_include = [ "java/src" ]
  sources = [
    "java/src/org/chromium/android_webview/services/ICrashReceiverService.aidl",
  ]
}

android_aidl("aw_variations_seed_server_aidl") {
  import_include = [ "java/src" ]
  sources = [
    "java/src/org/chromium/android_webview/services/IVariationsSeedServer.aidl",
  ]
}

if (public_android_sdk) {
  system_webview_apk_tmpl("system_webview_apk") {
    version_name = chrome_version_name
    android_manifest = system_webview_android_manifest
    android_manifest_dep = ":system_webview_manifest"
    deps = upstream_only_webview_deps
    apk_name = "SystemWebView"
  }
}
