# Copyright 2015 The PDFium Authors # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. import("//build_overrides/pdfium.gni") # This file contains PDFium-related build flags. declare_args() { # Build PDFium either: # 1) When set to true, with a bundled FreeType, built from FreeType source # code in //third_party/freetype and PDFium's FreeType configs in # third_party/freetype/include. # 2) When set to false, use whatever FreeType target is defined in # //build/config/freetype. pdf_bundle_freetype = pdf_bundle_freetype_override # Generate logging messages for click events that reach PDFium pdf_enable_click_logging = false # Build PDFium either with or without v8 support. pdf_enable_v8 = pdf_enable_v8_override # Build PDFium either with or without XFA Forms support. pdf_enable_xfa = pdf_enable_xfa_override # If XFA, also support bmp codec. Ignored if not XFA. pdf_enable_xfa_bmp = true # If XFA, also support gif codec. Ignored if not XFA. pdf_enable_xfa_gif = true # If XFA, also support png codec. Ignored if not XFA. pdf_enable_xfa_png = true # If XFA, also support tiff codec. Ignored if not XFA. pdf_enable_xfa_tiff = true # Build PDFium using C++20 if set to true. Otherwise builds with C++17. # There is no "pdf_use_cxx20_override" variable because this is only used in # standalone PDFium, and not when PDFium is embedded in our projects. pdf_use_cxx20 = (is_win && is_component_build) || is_fuchsia # Build PDFium against PartitionAlloc. When false, PDFium must build without # requiring any PartitionAlloc headers or code to be present. When true, # PDFium will use PartitionAlloc partitions to separate strings, scalars, # etc. from other allocations. However, the use of PartitionAlloc for new or # malloc is controlled by args in build_overrides/partition_alloc.gni. pdf_use_partition_alloc = pdf_use_partition_alloc_override # Build PDFium to use Skia (experimental) for all PDFium graphics. # If enabled, coexists in build with AGG graphics and the default # renderer is selectable at runtime. pdf_use_skia = pdf_use_skia_override # Build PDFium standalone. Now only controls whether the test binaries # are built. Most logic is conditioned by build_with_chromium. pdf_is_standalone = false # Build a complete static library pdf_is_complete_lib = false # Enable callgrind for performance profiling enable_callgrind = false # Don't build against bundled lcms2. use_system_lcms2 = false # Don't build against bundled libopenjpeg2. use_system_libopenjpeg2 = false # Don't build against bundled libpng. use_system_libpng = false # Don't build against bundled libtiff. use_system_libtiff = false # Don't build against bundled zlib. use_system_zlib = false # Enable SSE2 for MSVC builds. Ignored if it's not a MSVC build. msvc_use_sse2 = true } assert(!pdf_is_complete_lib || !is_component_build, "pdf_is_complete_lib=true requires is_component_build=false")