# Copyright 2019 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")

assert(pdf_enable_xfa)

jumbo_source_set("layout") {
  sources = [
    "cxfa_contentlayoutitem.cpp",
    "cxfa_contentlayoutitem.h",
    "cxfa_itemlayoutprocessor.cpp",
    "cxfa_itemlayoutprocessor.h",
    "cxfa_layoutcontext.cpp",
    "cxfa_layoutcontext.h",
    "cxfa_layoutitem.cpp",
    "cxfa_layoutitem.h",
    "cxfa_layoutpagemgr.cpp",
    "cxfa_layoutpagemgr.h",
    "cxfa_layoutprocessor.cpp",
    "cxfa_layoutprocessor.h",
    "cxfa_traversestrategy_layoutitem.h",
    "cxfa_traversestrategy_viewlayoutitem.h",
    "cxfa_viewlayoutitem.cpp",
    "cxfa_viewlayoutitem.h",
  ]
  deps = [
    "../../../core/fxcrt",
    "../../../fxjs",
    "../parser",
  ]
  allow_circular_includes_from = [
    "../../../fxjs",
    "../parser",
  ]
  configs += [
    "../../../:pdfium_core_config",
    "../../:xfa_warnings",
  ]
  visibility = [ "../../../*" ]
}
