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

import("../../../pdfium.gni")
import("../../../testing/test.gni")

source_set("edit") {
  sources = [
    "cpdf_contentstream_write_utils.cpp",
    "cpdf_contentstream_write_utils.h",
    "cpdf_creator.cpp",
    "cpdf_creator.h",
    "cpdf_pagecontentgenerator.cpp",
    "cpdf_pagecontentgenerator.h",
    "cpdf_pagecontentmanager.cpp",
    "cpdf_pagecontentmanager.h",
    "cpdf_stringarchivestream.cpp",
    "cpdf_stringarchivestream.h",
  ]
  configs += [
    "../../../:pdfium_strict_config",
    "../../../:pdfium_noshorten_config",
  ]
  deps = [
    "../../../constants",
    "../../../third_party:skia_shared",
    "../../fxcrt",
    "../font",
    "../page",
    "../parser",
  ]
  visibility = [ "../../../*" ]
}

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

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