# 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("../../../pdfium.gni")
import("../../../testing/test.gni")

assert(pdf_enable_xfa)

source_set("layout") {
  sources = [
    "cfx_break.cpp",
    "cfx_break.h",
    "cfx_breakline.cpp",
    "cfx_breakline.h",
    "cfx_breakpiece.cpp",
    "cfx_breakpiece.h",
    "cfx_char.cpp",
    "cfx_char.h",
    "cfx_linkuserdata.cpp",
    "cfx_linkuserdata.h",
    "cfx_rtfbreak.cpp",
    "cfx_rtfbreak.h",
    "cfx_textpiece.cpp",
    "cfx_textpiece.h",
    "cfx_textuserdata.cpp",
    "cfx_textuserdata.h",
    "cfx_txtbreak.cpp",
    "cfx_txtbreak.h",
    "fx_arabic.cpp",
    "fx_arabic.h",
    "fx_linebreak.cpp",
    "fx_linebreak.h",
  ]
  deps = [
    "../../../core/fxcrt",
    "../../../core/fxcrt/css",
    "../../../core/fxge",
    "../font",
  ]
  configs += [
    "../../../:pdfium_core_config",
    "../../:xfa_warnings",
  ]
  visibility = [ "../../../*" ]
}

pdfium_unittest_source_set("unittests") {
  sources = [
    "cfx_rtfbreak_unittest.cpp",
    "cfx_txtbreak_unittest.cpp",
  ]
  deps = [
    ":layout",
    "../../../core/fxge",
    "../font",
  ]
  pdfium_root_dir = "../../../"
}
