# 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("fxjs") {
  sources = [
    "cjs_event_context_stub.cpp",
    "cjs_event_context_stub.h",
    "cjs_runtimestub.cpp",
    "cjs_runtimestub.h",
    "ijs_event_context.h",
    "ijs_runtime.cpp",
    "ijs_runtime.h",
  ]
  configs += [ "../:pdfium_core_config" ]
  deps = [
    "../core/fxcrt",
  ]
  visibility = [ "../*" ]

  if (pdf_enable_v8) {
    sources += [
      "cfx_v8.cpp",
      "cfx_v8.h",
      "cfxjs_engine.cpp",
      "cfxjs_engine.h",
      "cjs_annot.cpp",
      "cjs_annot.h",
      "cjs_app.cpp",
      "cjs_app.h",
      "cjs_border.cpp",
      "cjs_border.h",
      "cjs_color.cpp",
      "cjs_color.h",
      "cjs_console.cpp",
      "cjs_console.h",
      "cjs_delaydata.cpp",
      "cjs_delaydata.h",
      "cjs_display.cpp",
      "cjs_display.h",
      "cjs_document.cpp",
      "cjs_document.h",
      "cjs_event.cpp",
      "cjs_event.h",
      "cjs_event_context.cpp",
      "cjs_event_context.h",
      "cjs_eventhandler.cpp",
      "cjs_eventhandler.h",
      "cjs_field.cpp",
      "cjs_field.h",
      "cjs_font.cpp",
      "cjs_font.h",
      "cjs_global.cpp",
      "cjs_global.h",
      "cjs_globalarrays.cpp",
      "cjs_globalarrays.h",
      "cjs_globalconsts.cpp",
      "cjs_globalconsts.h",
      "cjs_globaldata.cpp",
      "cjs_globaldata.h",
      "cjs_globalvariablearray.cpp",
      "cjs_globalvariablearray.h",
      "cjs_highlight.cpp",
      "cjs_highlight.h",
      "cjs_icon.cpp",
      "cjs_icon.h",
      "cjs_keyvalue.cpp",
      "cjs_keyvalue.h",
      "cjs_object.cpp",
      "cjs_object.h",
      "cjs_position.cpp",
      "cjs_position.h",
      "cjs_printparamsobj.cpp",
      "cjs_printparamsobj.h",
      "cjs_publicmethods.cpp",
      "cjs_publicmethods.h",
      "cjs_report.cpp",
      "cjs_report.h",
      "cjs_result.cpp",
      "cjs_result.h",
      "cjs_runtime.cpp",
      "cjs_runtime.h",
      "cjs_scalehow.cpp",
      "cjs_scalehow.h",
      "cjs_scalewhen.cpp",
      "cjs_scalewhen.h",
      "cjs_style.cpp",
      "cjs_style.h",
      "cjs_timerobj.cpp",
      "cjs_timerobj.h",
      "cjs_util.cpp",
      "cjs_util.h",
      "cjs_zoomtype.cpp",
      "cjs_zoomtype.h",
      "global_timer.cpp",
      "global_timer.h",
      "js_define.cpp",
      "js_define.h",
      "js_resources.cpp",
      "js_resources.h",
      "jse_define.h",
    ]
    deps += [
      "../core/fdrm",
      "../core/fpdfapi/font",
      "../core/fpdfapi/page",
      "../core/fpdfapi/parser",
      "../core/fpdfdoc",
      "../core/fxge",
      "//v8",
      "//v8:v8_libplatform",
    ]
    configs += [ "//v8:external_startup_data" ]
    public_deps = [
      "//v8",
    ]

    if (pdf_enable_xfa) {
      sources += [
        "cfxjse_arguments.cpp",
        "cfxjse_arguments.h",
        "cfxjse_class.cpp",
        "cfxjse_class.h",
        "cfxjse_context.cpp",
        "cfxjse_context.h",
        "cfxjse_engine.cpp",
        "cfxjse_engine.h",
        "cfxjse_formcalc_context.cpp",
        "cfxjse_formcalc_context.h",
        "cfxjse_isolatetracker.cpp",
        "cfxjse_isolatetracker.h",
        "cfxjse_resolveprocessor.cpp",
        "cfxjse_resolveprocessor.h",
        "cfxjse_runtimedata.cpp",
        "cfxjse_runtimedata.h",
        "cfxjse_value.cpp",
        "cfxjse_value.h",
        "fxjse.cpp",
        "fxjse.h",
        "xfa/cjx_arc.cpp",
        "xfa/cjx_arc.h",
        "xfa/cjx_area.cpp",
        "xfa/cjx_area.h",
        "xfa/cjx_assist.cpp",
        "xfa/cjx_assist.h",
        "xfa/cjx_barcode.cpp",
        "xfa/cjx_barcode.h",
        "xfa/cjx_bind.cpp",
        "xfa/cjx_bind.h",
        "xfa/cjx_binditems.cpp",
        "xfa/cjx_binditems.h",
        "xfa/cjx_bookend.cpp",
        "xfa/cjx_bookend.h",
        "xfa/cjx_boolean.cpp",
        "xfa/cjx_boolean.h",
        "xfa/cjx_border.cpp",
        "xfa/cjx_border.h",
        "xfa/cjx_break.cpp",
        "xfa/cjx_break.h",
        "xfa/cjx_breakafter.cpp",
        "xfa/cjx_breakafter.h",
        "xfa/cjx_breakbefore.cpp",
        "xfa/cjx_breakbefore.h",
        "xfa/cjx_button.cpp",
        "xfa/cjx_button.h",
        "xfa/cjx_calculate.cpp",
        "xfa/cjx_calculate.h",
        "xfa/cjx_caption.cpp",
        "xfa/cjx_caption.h",
        "xfa/cjx_certificate.cpp",
        "xfa/cjx_certificate.h",
        "xfa/cjx_certificates.cpp",
        "xfa/cjx_certificates.h",
        "xfa/cjx_checkbutton.cpp",
        "xfa/cjx_checkbutton.h",
        "xfa/cjx_choicelist.cpp",
        "xfa/cjx_choicelist.h",
        "xfa/cjx_color.cpp",
        "xfa/cjx_color.h",
        "xfa/cjx_comb.cpp",
        "xfa/cjx_comb.h",
        "xfa/cjx_command.cpp",
        "xfa/cjx_command.h",
        "xfa/cjx_connect.cpp",
        "xfa/cjx_connect.h",
        "xfa/cjx_connectstring.cpp",
        "xfa/cjx_connectstring.h",
        "xfa/cjx_container.cpp",
        "xfa/cjx_container.h",
        "xfa/cjx_content.cpp",
        "xfa/cjx_content.h",
        "xfa/cjx_contentarea.cpp",
        "xfa/cjx_contentarea.h",
        "xfa/cjx_corner.cpp",
        "xfa/cjx_corner.h",
        "xfa/cjx_datavalue.cpp",
        "xfa/cjx_datavalue.h",
        "xfa/cjx_datawindow.cpp",
        "xfa/cjx_datawindow.h",
        "xfa/cjx_date.cpp",
        "xfa/cjx_date.h",
        "xfa/cjx_datetime.cpp",
        "xfa/cjx_datetime.h",
        "xfa/cjx_datetimeedit.cpp",
        "xfa/cjx_datetimeedit.h",
        "xfa/cjx_decimal.cpp",
        "xfa/cjx_decimal.h",
        "xfa/cjx_defaultui.cpp",
        "xfa/cjx_defaultui.h",
        "xfa/cjx_delete.cpp",
        "xfa/cjx_delete.h",
        "xfa/cjx_delta.cpp",
        "xfa/cjx_delta.h",
        "xfa/cjx_deltas.cpp",
        "xfa/cjx_deltas.h",
        "xfa/cjx_desc.cpp",
        "xfa/cjx_desc.h",
        "xfa/cjx_digestmethod.cpp",
        "xfa/cjx_digestmethod.h",
        "xfa/cjx_digestmethods.cpp",
        "xfa/cjx_digestmethods.h",
        "xfa/cjx_draw.cpp",
        "xfa/cjx_draw.h",
        "xfa/cjx_edge.cpp",
        "xfa/cjx_edge.h",
        "xfa/cjx_encoding.cpp",
        "xfa/cjx_encoding.h",
        "xfa/cjx_encodings.cpp",
        "xfa/cjx_encodings.h",
        "xfa/cjx_encrypt.cpp",
        "xfa/cjx_encrypt.h",
        "xfa/cjx_event.cpp",
        "xfa/cjx_event.h",
        "xfa/cjx_eventpseudomodel.cpp",
        "xfa/cjx_eventpseudomodel.h",
        "xfa/cjx_exclgroup.cpp",
        "xfa/cjx_exclgroup.h",
        "xfa/cjx_exdata.cpp",
        "xfa/cjx_exdata.h",
        "xfa/cjx_execute.cpp",
        "xfa/cjx_execute.h",
        "xfa/cjx_exobject.cpp",
        "xfa/cjx_exobject.h",
        "xfa/cjx_extras.cpp",
        "xfa/cjx_extras.h",
        "xfa/cjx_field.cpp",
        "xfa/cjx_field.h",
        "xfa/cjx_fill.cpp",
        "xfa/cjx_fill.h",
        "xfa/cjx_filter.cpp",
        "xfa/cjx_filter.h",
        "xfa/cjx_float.cpp",
        "xfa/cjx_float.h",
        "xfa/cjx_font.cpp",
        "xfa/cjx_font.h",
        "xfa/cjx_form.cpp",
        "xfa/cjx_form.h",
        "xfa/cjx_format.cpp",
        "xfa/cjx_format.h",
        "xfa/cjx_handler.cpp",
        "xfa/cjx_handler.h",
        "xfa/cjx_hostpseudomodel.cpp",
        "xfa/cjx_hostpseudomodel.h",
        "xfa/cjx_image.cpp",
        "xfa/cjx_image.h",
        "xfa/cjx_imageedit.cpp",
        "xfa/cjx_imageedit.h",
        "xfa/cjx_insert.cpp",
        "xfa/cjx_insert.h",
        "xfa/cjx_instancemanager.cpp",
        "xfa/cjx_instancemanager.h",
        "xfa/cjx_integer.cpp",
        "xfa/cjx_integer.h",
        "xfa/cjx_issuers.cpp",
        "xfa/cjx_issuers.h",
        "xfa/cjx_items.cpp",
        "xfa/cjx_items.h",
        "xfa/cjx_keep.cpp",
        "xfa/cjx_keep.h",
        "xfa/cjx_keyusage.cpp",
        "xfa/cjx_keyusage.h",
        "xfa/cjx_layoutpseudomodel.cpp",
        "xfa/cjx_layoutpseudomodel.h",
        "xfa/cjx_line.cpp",
        "xfa/cjx_line.h",
        "xfa/cjx_linear.cpp",
        "xfa/cjx_linear.h",
        "xfa/cjx_list.cpp",
        "xfa/cjx_list.h",
        "xfa/cjx_logpseudomodel.cpp",
        "xfa/cjx_logpseudomodel.h",
        "xfa/cjx_manifest.cpp",
        "xfa/cjx_manifest.h",
        "xfa/cjx_map.cpp",
        "xfa/cjx_map.h",
        "xfa/cjx_margin.cpp",
        "xfa/cjx_margin.h",
        "xfa/cjx_mdp.cpp",
        "xfa/cjx_mdp.h",
        "xfa/cjx_medium.cpp",
        "xfa/cjx_medium.h",
        "xfa/cjx_message.cpp",
        "xfa/cjx_message.h",
        "xfa/cjx_model.cpp",
        "xfa/cjx_model.h",
        "xfa/cjx_node.cpp",
        "xfa/cjx_node.h",
        "xfa/cjx_numericedit.cpp",
        "xfa/cjx_numericedit.h",
        "xfa/cjx_object.cpp",
        "xfa/cjx_object.h",
        "xfa/cjx_occur.cpp",
        "xfa/cjx_occur.h",
        "xfa/cjx_oid.cpp",
        "xfa/cjx_oid.h",
        "xfa/cjx_oids.cpp",
        "xfa/cjx_oids.h",
        "xfa/cjx_operation.cpp",
        "xfa/cjx_operation.h",
        "xfa/cjx_overflow.cpp",
        "xfa/cjx_overflow.h",
        "xfa/cjx_packet.cpp",
        "xfa/cjx_packet.h",
        "xfa/cjx_pagearea.cpp",
        "xfa/cjx_pagearea.h",
        "xfa/cjx_pageset.cpp",
        "xfa/cjx_pageset.h",
        "xfa/cjx_para.cpp",
        "xfa/cjx_para.h",
        "xfa/cjx_password.cpp",
        "xfa/cjx_password.h",
        "xfa/cjx_passwordedit.cpp",
        "xfa/cjx_passwordedit.h",
        "xfa/cjx_pattern.cpp",
        "xfa/cjx_pattern.h",
        "xfa/cjx_picture.cpp",
        "xfa/cjx_picture.h",
        "xfa/cjx_query.cpp",
        "xfa/cjx_query.h",
        "xfa/cjx_radial.cpp",
        "xfa/cjx_radial.h",
        "xfa/cjx_reason.cpp",
        "xfa/cjx_reason.h",
        "xfa/cjx_reasons.cpp",
        "xfa/cjx_reasons.h",
        "xfa/cjx_recordset.cpp",
        "xfa/cjx_recordset.h",
        "xfa/cjx_rectangle.cpp",
        "xfa/cjx_rectangle.h",
        "xfa/cjx_ref.cpp",
        "xfa/cjx_ref.h",
        "xfa/cjx_rootelement.cpp",
        "xfa/cjx_rootelement.h",
        "xfa/cjx_script.cpp",
        "xfa/cjx_script.h",
        "xfa/cjx_select.cpp",
        "xfa/cjx_select.h",
        "xfa/cjx_setproperty.cpp",
        "xfa/cjx_setproperty.h",
        "xfa/cjx_signature.cpp",
        "xfa/cjx_signature.h",
        "xfa/cjx_signatureproperties.cpp",
        "xfa/cjx_signatureproperties.h",
        "xfa/cjx_signaturepseudomodel.cpp",
        "xfa/cjx_signaturepseudomodel.h",
        "xfa/cjx_signdata.cpp",
        "xfa/cjx_signdata.h",
        "xfa/cjx_signing.cpp",
        "xfa/cjx_signing.h",
        "xfa/cjx_soapaction.cpp",
        "xfa/cjx_soapaction.h",
        "xfa/cjx_soapaddress.cpp",
        "xfa/cjx_soapaddress.h",
        "xfa/cjx_solid.cpp",
        "xfa/cjx_solid.h",
        "xfa/cjx_source.cpp",
        "xfa/cjx_source.h",
        "xfa/cjx_sourceset.cpp",
        "xfa/cjx_sourceset.h",
        "xfa/cjx_speak.cpp",
        "xfa/cjx_speak.h",
        "xfa/cjx_stipple.cpp",
        "xfa/cjx_stipple.h",
        "xfa/cjx_subform.cpp",
        "xfa/cjx_subform.h",
        "xfa/cjx_subformset.cpp",
        "xfa/cjx_subformset.h",
        "xfa/cjx_subjectdn.cpp",
        "xfa/cjx_subjectdn.h",
        "xfa/cjx_subjectdns.cpp",
        "xfa/cjx_subjectdns.h",
        "xfa/cjx_submit.cpp",
        "xfa/cjx_submit.h",
        "xfa/cjx_template.cpp",
        "xfa/cjx_template.h",
        "xfa/cjx_text.cpp",
        "xfa/cjx_text.h",
        "xfa/cjx_textedit.cpp",
        "xfa/cjx_textedit.h",
        "xfa/cjx_textnode.cpp",
        "xfa/cjx_textnode.h",
        "xfa/cjx_time.cpp",
        "xfa/cjx_time.h",
        "xfa/cjx_timestamp.cpp",
        "xfa/cjx_timestamp.h",
        "xfa/cjx_tooltip.cpp",
        "xfa/cjx_tooltip.h",
        "xfa/cjx_traversal.cpp",
        "xfa/cjx_traversal.h",
        "xfa/cjx_traverse.cpp",
        "xfa/cjx_traverse.h",
        "xfa/cjx_tree.cpp",
        "xfa/cjx_tree.h",
        "xfa/cjx_treelist.cpp",
        "xfa/cjx_treelist.h",
        "xfa/cjx_ui.cpp",
        "xfa/cjx_ui.h",
        "xfa/cjx_update.cpp",
        "xfa/cjx_update.h",
        "xfa/cjx_uri.cpp",
        "xfa/cjx_uri.h",
        "xfa/cjx_user.cpp",
        "xfa/cjx_user.h",
        "xfa/cjx_validate.cpp",
        "xfa/cjx_validate.h",
        "xfa/cjx_value.cpp",
        "xfa/cjx_value.h",
        "xfa/cjx_variables.cpp",
        "xfa/cjx_variables.h",
        "xfa/cjx_wsdladdress.cpp",
        "xfa/cjx_wsdladdress.h",
        "xfa/cjx_wsdlconnection.cpp",
        "xfa/cjx_wsdlconnection.h",
        "xfa/cjx_xfa.cpp",
        "xfa/cjx_xfa.h",
        "xfa/cjx_xmlconnection.cpp",
        "xfa/cjx_xmlconnection.h",
        "xfa/cjx_xsdconnection.cpp",
        "xfa/cjx_xsdconnection.h",
      ]
      deps += [ "../xfa/fxfa/fm2js" ]
    }
  }
}

if (pdf_enable_v8) {
  pdfium_unittest_source_set("unittests") {
    sources = [
      "cfx_v8_unittest.cpp",
      "cfx_v8_unittest.h",
      "cfxjs_engine_unittest.cpp",
      "cjs_publicmethods_unittest.cpp",
      "cjs_util_unittest.cpp",
    ]
    configs = [ "//v8:external_startup_data" ]
    deps = [
      ":fxjs",
    ]
    pdfium_root_dir = "../"
  }

  pdfium_embeddertest_source_set("embeddertests") {
    sources = [
      "cfxjs_engine_embeddertest.cpp",
      "cjs_publicmethods_embeddertest.cpp",
    ]
    configs = [ "//v8:external_startup_data" ]
    deps = [
      ":fxjs",
    ]
    pdfium_root_dir = "../"

    if (pdf_enable_xfa) {
      sources += [ "cfxjse_formcalc_context_embeddertest.cpp" ]
      deps += [ "..///xfa/fxfa" ]
    }
  }
}
