blob: 0e9e23cf3e38b15538193365946832baebcd7807 [file] [log] [blame] [edit]
# 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("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_strict_config" ]
deps = [ "../core/fxcrt" ]
public_deps = []
visibility = [ "../*" ]
if (pdf_enable_v8) {
sources += [
"cfx_globaldata.cpp",
"cfx_globaldata.h",
"cfx_keyvalue.cpp",
"cfx_keyvalue.h",
"cfx_v8.cpp",
"cfx_v8.h",
"cfx_v8_array_buffer_allocator.cpp",
"cfx_v8_array_buffer_allocator.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_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_highlight.cpp",
"cjs_highlight.h",
"cjs_icon.cpp",
"cjs_icon.h",
"cjs_object.cpp",
"cjs_object.h",
"cjs_position.cpp",
"cjs_position.h",
"cjs_publicmethods.cpp",
"cjs_publicmethods.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",
"fx_date_helpers.cpp",
"fx_date_helpers.h",
"fxv8.cpp",
"fxv8.h",
"global_timer.cpp",
"global_timer.h",
"js_define.cpp",
"js_define.h",
"js_resources.cpp",
"js_resources.h",
]
deps += [
"../constants",
"../core/fdrm",
"../core/fpdfapi/page",
"../core/fpdfapi/parser",
"../core/fpdfapi/render",
"../core/fpdfdoc",
"../core/fxge",
"//v8",
"//v8:v8_libplatform",
]
configs += [ "//v8:external_startup_data" ]
public_deps += [
"../core/fxcrt",
"//v8",
]
if (pdf_enable_xfa) {
sources += [
"xfa/cfxjse_class.cpp",
"xfa/cfxjse_class.h",
"xfa/cfxjse_context.cpp",
"xfa/cfxjse_context.h",
"xfa/cfxjse_engine.cpp",
"xfa/cfxjse_engine.h",
"xfa/cfxjse_formcalc_context.cpp",
"xfa/cfxjse_formcalc_context.h",
"xfa/cfxjse_isolatetracker.cpp",
"xfa/cfxjse_isolatetracker.h",
"xfa/cfxjse_mapmodule.cpp",
"xfa/cfxjse_mapmodule.h",
"xfa/cfxjse_nodehelper.cpp",
"xfa/cfxjse_nodehelper.h",
"xfa/cfxjse_resolveprocessor.cpp",
"xfa/cfxjse_resolveprocessor.h",
"xfa/cfxjse_runtimedata.cpp",
"xfa/cfxjse_runtimedata.h",
"xfa/cfxjse_value.cpp",
"xfa/cfxjse_value.h",
"xfa/cjx_boolean.cpp",
"xfa/cjx_boolean.h",
"xfa/cjx_container.cpp",
"xfa/cjx_container.h",
"xfa/cjx_datawindow.cpp",
"xfa/cjx_datawindow.h",
"xfa/cjx_delta.cpp",
"xfa/cjx_delta.h",
"xfa/cjx_desc.cpp",
"xfa/cjx_desc.h",
"xfa/cjx_draw.cpp",
"xfa/cjx_draw.h",
"xfa/cjx_encrypt.cpp",
"xfa/cjx_encrypt.h",
"xfa/cjx_eventpseudomodel.cpp",
"xfa/cjx_eventpseudomodel.h",
"xfa/cjx_exclgroup.cpp",
"xfa/cjx_exclgroup.h",
"xfa/cjx_extras.cpp",
"xfa/cjx_extras.h",
"xfa/cjx_field.cpp",
"xfa/cjx_field.h",
"xfa/cjx_form.cpp",
"xfa/cjx_form.h",
"xfa/cjx_handler.cpp",
"xfa/cjx_handler.h",
"xfa/cjx_hostpseudomodel.cpp",
"xfa/cjx_hostpseudomodel.h",
"xfa/cjx_instancemanager.cpp",
"xfa/cjx_instancemanager.h",
"xfa/cjx_layoutpseudomodel.cpp",
"xfa/cjx_layoutpseudomodel.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_model.cpp",
"xfa/cjx_model.h",
"xfa/cjx_node.cpp",
"xfa/cjx_node.h",
"xfa/cjx_object.cpp",
"xfa/cjx_object.h",
"xfa/cjx_occur.cpp",
"xfa/cjx_occur.h",
"xfa/cjx_packet.cpp",
"xfa/cjx_packet.h",
"xfa/cjx_script.cpp",
"xfa/cjx_script.h",
"xfa/cjx_signaturepseudomodel.cpp",
"xfa/cjx_signaturepseudomodel.h",
"xfa/cjx_source.cpp",
"xfa/cjx_source.h",
"xfa/cjx_subform.cpp",
"xfa/cjx_subform.h",
"xfa/cjx_template.cpp",
"xfa/cjx_template.h",
"xfa/cjx_textnode.cpp",
"xfa/cjx_textnode.h",
"xfa/cjx_tree.cpp",
"xfa/cjx_tree.h",
"xfa/cjx_treelist.cpp",
"xfa/cjx_treelist.h",
"xfa/cjx_wsdlconnection.cpp",
"xfa/cjx_wsdlconnection.h",
"xfa/cjx_xfa.cpp",
"xfa/cjx_xfa.h",
"xfa/fxjse.cpp",
"xfa/fxjse.h",
"xfa/jse_define.h",
]
deps += [
":gc",
"../xfa/fgas/crt",
"../xfa/fgas/graphics",
"../xfa/fxfa/formcalc",
]
}
}
}
if (pdf_enable_v8) {
if (pdf_enable_xfa) {
source_set("gc") {
sources = [
"gc/container_trace.h",
"gc/gced_tree_node.h",
"gc/gced_tree_node_mixin.h",
"gc/heap.cpp",
"gc/heap.h",
]
configs += [ "../:pdfium_strict_config" ]
deps = [
"../core/fxcrt",
"//v8:v8_libplatform",
]
public_deps = [ "//v8:cppgc" ]
}
}
}
if (pdf_enable_v8) {
pdfium_unittest_source_set("unittests") {
sources = [
"cfx_globaldata_unittest.cpp",
"cfx_v8_unittest.cpp",
"cfxjs_engine_unittest.cpp",
"cjs_publicmethods_unittest.cpp",
"cjs_util_unittest.cpp",
"fx_date_helpers_unittest.cpp",
]
configs = [ "//v8:external_startup_data" ]
deps = [
":fxjs",
"../core/fxcrt:unit_test_support",
]
pdfium_root_dir = "../"
if (pdf_enable_xfa) {
sources += [
"gc/container_trace_unittest.cpp",
"gc/gced_tree_node_mixin_unittest.cpp",
"gc/gced_tree_node_unittest.cpp",
"gc/heap_unittest.cpp",
"gc/move_unittest.cpp",
"xfa/cfxjse_formcalc_context_unittest.cpp",
"xfa/cfxjse_mapmodule_unittest.cpp",
]
deps += [
":gc",
"../xfa/fxfa/parser",
]
}
}
pdfium_embeddertest_source_set("embeddertests") {
sources = [
"cfxjs_engine_embeddertest.cpp",
"cjs_publicmethods_embeddertest.cpp",
]
configs = [ "//v8:external_startup_data" ]
deps = [
":fxjs",
"../fpdfsdk",
]
pdfium_root_dir = "../"
if (pdf_enable_xfa) {
sources += [
"xfa/cfxjse_app_embeddertest.cpp",
"xfa/cfxjse_formcalc_context_embeddertest.cpp",
"xfa/cfxjse_value_embeddertest.cpp",
"xfa/cjx_hostpseudomodel_embeddertest.cpp",
"xfa/cjx_list_embeddertest.cpp",
"xfa/cjx_object_embeddertest.cpp",
]
deps += [
":gc",
"../xfa/fxfa",
]
}
}
}