chromium/components/pdf/renderer/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("//pdf/features.gni")
import("//printing/buildflags/buildflags.gni")
import("//services/screen_ai/buildflags/features.gni")

assert(enable_pdf)

static_library("renderer") {
  friend = [ ":unit_tests" ]

  public = [
    "internal_plugin_renderer_helpers.h",
    "pdf_accessibility_tree.h",
    "pdf_ax_action_target.h",
    "pdf_internal_plugin_delegate.h",
  ]

  sources = [
    "internal_plugin_renderer_helpers.cc",
    "pdf_accessibility_tree.cc",
    "pdf_accessibility_tree_builder.cc",
    "pdf_accessibility_tree_builder.h",
    "pdf_ax_action_target.cc",
    "pdf_internal_plugin_delegate.cc",
    "pdf_view_web_plugin_client.cc",
    "pdf_view_web_plugin_client.h",
  ]

  deps = [
    "//base",
    "//components/resources:components_resources",
    "//components/resources:components_scaled_resources",
    "//components/strings",
    "//content/public/common",
    "//gin",
    "//ipc",
    "//net",
    "//pdf:accessibility",
    "//pdf:buildflags",
    "//pdf:features",
    "//pdf:pdf_view_web_plugin",
    "//printing/buildflags",
    "//services/screen_ai/buildflags",
    "//services/screen_ai/public/cpp:metrics",
    "//skia",
    "//third_party/blink/public:blink",
    "//third_party/icu",
    "//ui/display",
    "//ui/gfx/geometry",
    "//ui/strings:auto_image_annotation_strings",
    "//url",
    "//v8",
  ]

  public_deps = [
    "//content/public/renderer",
    "//pdf/mojom",
    "//ui/accessibility",
    "//ui/gfx/geometry",
  ]

  if (enable_printing) {
    deps += [ "//components/printing/renderer" ]
  }

  if (enable_screen_ai_service) {
    sources += [
      "pdf_ocr_helper.cc",
      "pdf_ocr_helper.h",
    ]
    deps += [
      "//components/language/core/common",
      "//services/screen_ai/public/mojom",
    ]
  }
}

source_set("unit_tests") {
  testonly = true
  sources = [ "pdf_accessibility_tree_unittest.cc" ]

  deps = [
    ":renderer",
    "//pdf:accessibility",
    "//pdf/mojom",
    "//testing/gtest",
    "//ui/gfx/geometry",

    # TODO(crbug.com/40191420): The V8 dependency should have been propagated
    # from ":renderer".
    "//v8",
  ]
}