# 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("//build/config/ui.gni")
import("//chromecast/chromecast.gni")
import("//services/service_manager/public/service_manifest.gni")
import("//testing/test.gni")
import("//tools/grit/grit_rule.gni")

if (is_android) {
  import("//build/config/android/rules.gni")
}

source_set("browser") {
  sources = [
    "cast_browser_context.cc",
    "cast_browser_context.h",
    "cast_browser_main_parts.cc",
    "cast_browser_main_parts.h",
    "cast_browser_process.cc",
    "cast_browser_process.h",
    "cast_content_browser_client.cc",
    "cast_content_browser_client.h",
    "cast_content_window.h",
    "cast_download_manager_delegate.cc",
    "cast_download_manager_delegate.h",
    "cast_http_user_agent_settings.cc",
    "cast_http_user_agent_settings.h",
    "cast_media_blocker.cc",
    "cast_media_blocker.h",
    "cast_net_log.cc",
    "cast_net_log.h",
    "cast_network_delegate.cc",
    "cast_network_delegate.h",
    "cast_permission_manager.cc",
    "cast_permission_manager.h",
    "cast_quota_permission_context.cc",
    "cast_quota_permission_context.h",
    "cast_resource_dispatcher_host_delegate.cc",
    "cast_resource_dispatcher_host_delegate.h",
    "cast_web_view.cc",
    "cast_web_view.h",
    "devtools/cast_devtools_manager_delegate.cc",
    "devtools/cast_devtools_manager_delegate.h",
    "devtools/remote_debugging_server.cc",
    "devtools/remote_debugging_server.h",
    "geolocation/cast_access_token_store.cc",
    "geolocation/cast_access_token_store.h",
    "media/media_caps_impl.cc",
    "media/media_caps_impl.h",
    "media/supported_codec_finder.cc",
    "media/supported_codec_finder.h",
    "metrics/cast_metrics_prefs.cc",
    "metrics/cast_metrics_prefs.h",
    "metrics/cast_metrics_service_client.cc",
    "metrics/cast_metrics_service_client.h",
    "metrics/cast_stability_metrics_provider.cc",
    "metrics/cast_stability_metrics_provider.h",
    "pref_service_helper.cc",
    "pref_service_helper.h",
    "renderer_prelauncher.cc",
    "renderer_prelauncher.h",
    "service/cast_service_simple.cc",
    "service/cast_service_simple.h",
    "url_request_context_factory.cc",
    "url_request_context_factory.h",
  ]

  if (chromecast_branding == "public") {
    sources += [
      "cast_content_browser_client_simple.cc",
      "cast_network_delegate_simple.cc",
      "pref_service_helper_simple.cc",
    ]
  }

  deps = [
    "//base",
    "//base:i18n",
    "//cc",
    "//chromecast:chromecast_features",
    "//chromecast/app:cast_crash_client",
    "//chromecast/app:chromecast_settings",
    "//chromecast/app:resources",
    "//chromecast/base",
    "//chromecast/base:cast_sys_info",
    "//chromecast/base:cast_version",
    "//chromecast/browser:resources",
    "//chromecast/common",
    "//chromecast/common/media",
    "//chromecast/common/media:interfaces",
    "//chromecast/graphics",
    "//chromecast/media",
    "//chromecast/media/service",
    "//chromecast/net",
    "//chromecast/service",
    "//components/crash/content/app",
    "//components/crash/content/browser",
    "//components/metrics",
    "//components/metrics:gpu",
    "//components/metrics:net",
    "//components/metrics:profiler",

    # TODO(gfhuang): Eliminate this dependency if ScreenInfoMetricsProvider
    # isn't needed. crbug.com/541577
    "//components/metrics:ui",
    "//components/network_hints/browser",
    "//components/prefs",
    "//components/proxy_config",
    "//content",
    "//content/public/browser",
    "//content/public/common",
    "//content/public/common:service_names",
    "//content/public/utility",
    "//device/geolocation",
    "//gpu",
    "//ipc",
    "//media",
    "//net",
    "//ui/base",
    "//ui/compositor",
    "//ui/display",
    "//ui/events",
    "//ui/gl",
  ]

  if (is_linux) {
    sources += [
      "cast_content_window_linux.cc",
      "cast_content_window_linux.h",
      "cast_memory_pressure_monitor.cc",
      "cast_memory_pressure_monitor.h",
      "metrics/external_metrics.cc",
      "metrics/external_metrics.h",
    ]

    deps += [
      "//build/linux:fontconfig",
      "//components/metrics:serialization",
      "//ui/aura",
    ]
  } else if (is_android) {
    sources += [
      "android/cast_content_window_android.cc",
      "android/cast_content_window_android.h",
      "android/cast_metrics_helper_android.cc",
      "android/cast_metrics_helper_android.h",
      "android/cast_web_contents_activity.cc",
      "android/cast_web_contents_activity.h",
      "android/jni_registrar.cc",
      "android/jni_registrar.h",
    ]

    deps += [
      ":jni_headers",
      "//components/cdm/browser",
    ]
  }

  if (use_ozone) {
    deps += [ "//ui/ozone" ]
  }
}

# This target generates an "overlay" interface spec, allowing the Cast build to
# declare specific behavior and requirements for the "content_browser" service.
# This is accomplished by generating a JSON file, which is packed into
# cast_shell.pak, and loaded at runtime. This can be used to host addtional
# interfaces in "content_browser".
#
# NOTE: Do not add packaged_services here! packaged_services should instead be
# added to "cast_content_packaged_services_manifest_overlay" below or
# its internal counterpart. Please see that target for more details.
service_manifest("cast_content_browser_manifest_overlay") {
  source = "cast_content_browser_manifest_overlay.json"

  if (chromecast_branding != "public") {
    overlays = [ "//chromecast/internal/shell/browser:cast_content_browser_internal_manifest_overlay" ]
  }
}

# This target is for packaged services that will run in the main (browser)
# process. To host an embedded service, add the service's manifest target to the
# list of "packaged_services" in this target, like so:
#
#   package_services += [ "//path/to/foo/service:foo_manifest" ]
#
# You must also register the "foo" service with the content client. See
# CastContentBrowserClient::RegisterInProcessServices() for details.
#
# NOTE: If your service's manifest is in chromecast/internal, do not add it
# here! Instead, add the service to the internal counterpart, which is
# referenced below.
service_manifest("cast_content_packaged_services_manifest_overlay") {
  source = "cast_content_packaged_services_manifest_overlay.json"

  packaged_services = [ "//media/mojo/services:media_manifest" ]

  if (chromecast_branding != "public") {
    overlays = [ "//chromecast/internal/shell/browser:cast_content_packaged_services_internal_manifest_overlay" ]
  }
}

grit("resources") {
  visibility = [
    ":browser",
    "//chromecast:cast_shell_pak",
  ]
  source = "cast_browser_resources.grd"
  output_dir = "$root_gen_dir/chromecast/browser"
  outputs = [
    "grit/cast_browser_resources.h",
    "cast_browser_resources.pak",
  ]

  deps = [
    ":cast_content_browser_manifest_overlay",
    ":cast_content_packaged_services_manifest_overlay",
  ]
}

source_set("test_support") {
  testonly = true
  sources = [
    "test/cast_browser_test.cc",
    "test/cast_browser_test.h",
  ]

  public_deps = [
    ":browser",
    "//content/test:test_support",
  ]

  deps = [
    "//base",
    "//chromecast/base",
    "//content/public/browser",
    "//content/public/common",
    "//testing/gtest",
  ]
}

source_set("browsertests") {
  testonly = true
  sources = [
    "cast_media_blocker_browsertest.cc",
    "renderer_prelauncher_test.cc",
    "test/cast_navigation_browsertest.cc",
  ]

  defines = [ "HAS_OUT_OF_PROC_TEST_RUNNER" ]

  deps = [
    ":test_support",
    "//chromecast:chromecast_features",
    "//chromecast/base:chromecast_switches",
    "//chromecast/base/metrics",
    "//media/base:test_support",
  ]
}

source_set("unittests") {
  testonly = true

  sources = [
    "cast_media_blocker_unittest.cc",
    "devtools/cast_devtools_manager_delegate_unittest.cc",
  ]

  deps = [
    ":browser",
    "//base",
    "//chromecast/base",
    "//content/public/browser",
    "//content/test:test_support",
    "//ui/gl:test_support",
  ]
}

if (is_android) {
  generate_jni("jni_headers") {
    sources = [
      "android/apk/src/org/chromium/chromecast/shell/CastContentWindowAndroid.java",
      "android/apk/src/org/chromium/chromecast/shell/CastCrashHandler.java",
      "android/apk/src/org/chromium/chromecast/shell/CastMetricsHelper.java",
      "android/apk/src/org/chromium/chromecast/shell/CastSysInfoAndroid.java",
      "android/apk/src/org/chromium/chromecast/shell/CastWebContentsActivity.java",
    ]

    jni_package = "chromecast"
  }
}
