# Copyright 2018 The PDFium 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/jumbo.gni")
import("../../../pdfium.gni")
import("../../../testing/test.gni")

jumbo_source_set("edit") {
  sources = [
    "cpdf_creator.cpp",
    "cpdf_creator.h",
    "cpdf_encryptor.cpp",
    "cpdf_encryptor.h",
    "cpdf_flateencoder.cpp",
    "cpdf_flateencoder.h",
    "cpdf_pagecontentgenerator.cpp",
    "cpdf_pagecontentgenerator.h",
    "cpdf_pagecontentmanager.cpp",
    "cpdf_pagecontentmanager.h",
    "cpdf_stringarchivestream.cpp",
    "cpdf_stringarchivestream.h",
  ]
  configs += [ "../../../:pdfium_core_config" ]
  deps = [
    "../../../third_party:skia_shared",
    "../../fxcrt",
    "../font",
    "../page",
    "../parser",
  ]
  allow_circular_includes_from = [ "../parser" ]
  visibility = [ "../../../*" ]
}

pdfium_unittest_source_set("unittests") {
  sources = [
    "cpdf_pagecontentgenerator_unittest.cpp",
  ]
  deps = [
    ":edit",
    "../",
    "../font",
    "../page",
    "../parser",
  ]
  pdfium_root_dir = "../../../"
}

pdfium_embeddertest_source_set("embeddertests") {
  sources = [
    "cpdf_creator_embeddertest.cpp",
  ]
  pdfium_root_dir = "../../../"
}
