blob: 5841d5632b5cd83e5f8b1ff41c851d03f939935d [file] [log] [blame]
# Copyright 2014 The Chromium 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/buildflag_header.gni")
import("//build/config/features.gni")
import("//build/config/jumbo.gni")
import("//pdf/features.gni")
import("//testing/test.gni")
import("//third_party/pdfium/pdfium.gni")
# Generate a buildflag header for compile-time checking of PDF support.
buildflag_header("buildflags") {
header = "buildflags.h"
flags = [ "ENABLE_PDF=$enable_pdf" ]
}
if (enable_pdf) {
pdf_engine = 0 # 0 PDFium
jumbo_static_library("pdf") {
deps = [
"//base",
"//gin",
"//net",
"//ppapi/cpp:objects",
"//ppapi/cpp/private:internal_module",
"//ui/base",
"//ui/gfx/range",
]
public = [
"pdf.h",
"pdf_ppapi.h",
]
sources = [
"chunk_stream.h",
"document_loader.h",
"document_loader_impl.cc",
"document_loader_impl.h",
"draw_utils.cc",
"draw_utils.h",
"out_of_process_instance.cc",
"out_of_process_instance.h",
"paint_aggregator.cc",
"paint_aggregator.h",
"paint_manager.cc",
"paint_manager.h",
"pdf.cc",
"pdf.h",
"pdf_engine.cc",
"pdf_engine.h",
"pdf_ppapi.cc",
"pdf_ppapi.h",
"pdf_transform.cc",
"pdf_transform.h",
"preview_mode_client.cc",
"preview_mode_client.h",
"range_set.cc",
"range_set.h",
"url_loader_wrapper.h",
"url_loader_wrapper_impl.cc",
"url_loader_wrapper_impl.h",
]
include_dirs = []
defines = []
if (pdf_engine == 0) {
deps += [
"//pdf/pdfium/fuzzers",
"//printing",
"//third_party/pdfium",
]
sources += [
"pdfium/pdfium_api_string_buffer_adapter.cc",
"pdfium/pdfium_api_string_buffer_adapter.h",
"pdfium/pdfium_assert_matching_enums.cc",
"pdfium/pdfium_document.cc",
"pdfium/pdfium_document.h",
"pdfium/pdfium_engine.cc",
"pdfium/pdfium_engine.h",
"pdfium/pdfium_engine_exports.cc",
"pdfium/pdfium_engine_exports.h",
"pdfium/pdfium_form_filler.cc",
"pdfium/pdfium_form_filler.h",
"pdfium/pdfium_mem_buffer_file_read.cc",
"pdfium/pdfium_mem_buffer_file_read.h",
"pdfium/pdfium_mem_buffer_file_write.cc",
"pdfium/pdfium_mem_buffer_file_write.h",
"pdfium/pdfium_page.cc",
"pdfium/pdfium_page.h",
"pdfium/pdfium_print.cc",
"pdfium/pdfium_print.h",
"pdfium/pdfium_range.cc",
"pdfium/pdfium_range.h",
"pdfium/pdfium_unsupported_features.cc",
"pdfium/pdfium_unsupported_features.h",
]
include_dirs += [ "//third_party/pdfium" ]
defines += [ "PDFIUM_PRINT_TEXT_WITH_GDI" ]
if (pdf_enable_xfa) {
defines += [ "PDF_ENABLE_XFA" ]
}
}
}
test("pdf_unittests") {
sources = [
"chunk_stream_unittest.cc",
"document_loader_impl_unittest.cc",
"pdf_transform_unittest.cc",
"range_set_unittest.cc",
"run_all_unittests.cc",
]
deps = [
":pdf",
"//base",
"//base/test:test_support",
"//ppapi/c",
"//ppapi/cpp",
"//testing/gmock",
"//testing/gtest",
"//ui/gfx/range",
]
data = [
"test/data/",
]
if (pdf_engine == 0) {
sources += [ "pdfium/findtext_unittest.cc" ]
include_dirs = [ "//third_party/pdfium" ]
}
}
} else {
# Dummy group when PDF support is disabled so targets can unconditionally
# depend on it.
group("pdf") {
}
}