chromium/content/ppapi_plugin/BUILD.gn

# Copyright 2014 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

import("//ppapi/buildflags/buildflags.gni")

assert(enable_ppapi, "PPAPI plugins must be enabled.")

group("ppapi_plugin") {
  visibility = [ "//content/*" ]  # This is an internal content API.

  if (is_component_build) {
    public_deps = [ "//content" ]
  } else {
    public_deps = [ ":ppapi_plugin_sources" ]
  }
}

source_set("ppapi_plugin_sources") {
  # Depend on via ":ppapi_plugin above.
  visibility = [
    ":ppapi_plugin",
    "//content",  # For the component build.
    "//content/app:*",
    "//gin",
    "//services/service_manager/public/cpp",
  ]

  sources = [
    "plugin_process_dispatcher.cc",
    "plugin_process_dispatcher.h",
    "ppapi_blink_platform_impl.cc",
    "ppapi_blink_platform_impl.h",
    "ppapi_plugin_main.cc",
    "ppapi_thread.cc",
    "ppapi_thread.h",
  ]

  configs += [
    "//content:content_implementation",
    "//v8:external_startup_data",
  ]

  deps = [
    "//base",
    "//build:chromeos_buildflags",
    "//components/discardable_memory/client",
    "//content:export",
    "//content/child",
    "//content/public/child:child_sources",
    "//content/public/common:common_sources",
    "//gin",
    "//media:media_buildflags",
    "//ppapi/c",
    "//ppapi/proxy",
    "//ppapi/proxy:ipc",
    "//ppapi/shared_impl",
    "//sandbox",
    "//services/service_manager/public/mojom",
    "//skia",
    "//third_party/blink/public:blink",
    "//third_party/icu",
    "//ui/base",
    "//ui/gfx",
    "//ui/gfx/geometry",
  ]

  if (is_linux || is_chromeos) {
    deps += [ "//components/services/font/public/cpp" ]
  }

  if (is_win) {
    deps += [ "//ui/display" ]
  }
}