# 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 = [
    "cfgas_break.cpp",
    "cfgas_break.h",
    "cfgas_breakline.cpp",
    "cfgas_breakline.h",
    "cfgas_breakpiece.cpp",
    "cfgas_breakpiece.h",
    "cfgas_char.cpp",
    "cfgas_char.h",
    "cfgas_linkuserdata.cpp",
    "cfgas_linkuserdata.h",
    "cfgas_rtfbreak.cpp",
    "cfgas_rtfbreak.h",
    "cfgas_textpiece.cpp",
    "cfgas_textpiece.h",
    "cfgas_textuserdata.cpp",
    "cfgas_textuserdata.h",
    "cfgas_txtbreak.cpp",
    "cfgas_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_strict_config",
    "../../:xfa_warnings",
  ]
  visibility = [ "../../../*" ]
}

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