1# Copyright 2014 PDFium Authors. All rights reserved. 2# Use of this source code is governed by a BSD-style license that can be 3# found in the LICENSE file. 4 5import("//build/config/arm.gni") 6import("//build/config/linux/pkg_config.gni") 7import("//build_overrides/build.gni") 8import("../pdfium.gni") 9 10group("third_party") { 11 deps = [ 12 ":pdfium_base", 13 ":skia_shared", 14 ] 15 if (pdf_bundle_freetype) { 16 deps += [ ":fx_freetype" ] 17 } 18} 19 20config("pdfium_third_party_config") { 21 configs = [ 22 "..:pdfium_common_config", 23 "..:pdfium_public_config", 24 ] 25} 26 27if (pdf_enable_xfa) { 28 source_set("bigint") { 29 configs -= [ "//build/config/compiler:chromium_code" ] 30 configs += [ 31 "//build/config/compiler:no_chromium_code", 32 ":pdfium_third_party_config", 33 ] 34 sources = [ 35 "bigint/BigInteger.cc", 36 "bigint/BigInteger.hh", 37 "bigint/BigIntegerLibrary.hh", 38 "bigint/BigIntegerUtils.cc", 39 "bigint/BigIntegerUtils.hh", 40 "bigint/BigUnsigned.cc", 41 "bigint/BigUnsigned.hh", 42 "bigint/BigUnsignedInABase.cc", 43 "bigint/BigUnsignedInABase.hh", 44 "bigint/NumberlikeArray.hh", 45 ] 46 } 47} 48 49if (pdf_bundle_freetype) { 50 config("fx_freetype_warnings") { 51 visibility = [ ":*" ] 52 if (is_clang) { 53 # open_face_PS_from_sfnt_stream() and open_face_from_buffer() in 54 # ftbase.h are unused. 55 # 56 # ttgload.c casts from unsigned int to unsigned long to void*. 57 cflags = [ 58 "-Wno-unused-function", 59 "-Wno-int-to-void-pointer-cast", 60 ] 61 } 62 } 63 64 config("freetype_public_includes_config") { 65 # The relative freetype/include path points to PDFium's custom config. 66 # The absolute path points to whatever copy of FreeType is in 67 # //third_party/freetype. 68 include_dirs = [ 69 "freetype/include", 70 "//third_party/freetype/src/include", 71 ] 72 defines = [ 73 # GN currently does not escape '<' and '>' when generating xml based 74 # Visual Studio project files. As a result, use quotes instead of pointy 75 # brackets in these defines. 76 "FT_CONFIG_MODULES_H=\"freetype-custom-config/ftmodule.h\"", 77 "FT_CONFIG_OPTIONS_H=\"freetype-custom-config/ftoption.h\"", 78 ] 79 } 80 81 # Tests may link against this even if the production library doesn't, 82 # so it needs to be separate from it. 83 source_set("fx_freetype") { 84 configs -= [ "//build/config/compiler:chromium_code" ] 85 configs += [ 86 "//build/config/compiler:no_chromium_code", 87 ":pdfium_third_party_config", 88 89 # Must be after no_chromium_code for warning flags to be ordered correctly. 90 ":fx_freetype_warnings", 91 ] 92 93 public_configs = [ ":freetype_public_includes_config" ] 94 95 defines = [ "FT2_BUILD_LIBRARY" ] 96 sources = [ 97 "//third_party/freetype/include/pstables.h", 98 "//third_party/freetype/src/include/freetype/config/ftconfig.h", 99 "//third_party/freetype/src/include/freetype/config/ftheader.h", 100 "//third_party/freetype/src/include/freetype/config/ftmodule.h", 101 "//third_party/freetype/src/include/freetype/config/ftoption.h", 102 "//third_party/freetype/src/include/freetype/config/ftstdlib.h", 103 "//third_party/freetype/src/include/freetype/freetype.h", 104 "//third_party/freetype/src/include/freetype/ftadvanc.h", 105 "//third_party/freetype/src/include/freetype/ftbbox.h", 106 "//third_party/freetype/src/include/freetype/ftbdf.h", 107 "//third_party/freetype/src/include/freetype/ftbitmap.h", 108 "//third_party/freetype/src/include/freetype/ftbzip2.h", 109 "//third_party/freetype/src/include/freetype/ftcache.h", 110 "//third_party/freetype/src/include/freetype/ftchapters.h", 111 "//third_party/freetype/src/include/freetype/ftcid.h", 112 "//third_party/freetype/src/include/freetype/ftcolor.h", 113 "//third_party/freetype/src/include/freetype/ftdriver.h", 114 "//third_party/freetype/src/include/freetype/fterrdef.h", 115 "//third_party/freetype/src/include/freetype/fterrors.h", 116 "//third_party/freetype/src/include/freetype/ftfntfmt.h", 117 "//third_party/freetype/src/include/freetype/ftgasp.h", 118 "//third_party/freetype/src/include/freetype/ftglyph.h", 119 "//third_party/freetype/src/include/freetype/ftgxval.h", 120 "//third_party/freetype/src/include/freetype/ftgzip.h", 121 "//third_party/freetype/src/include/freetype/ftimage.h", 122 "//third_party/freetype/src/include/freetype/ftincrem.h", 123 "//third_party/freetype/src/include/freetype/ftlcdfil.h", 124 "//third_party/freetype/src/include/freetype/ftlist.h", 125 "//third_party/freetype/src/include/freetype/ftlzw.h", 126 "//third_party/freetype/src/include/freetype/ftmac.h", 127 "//third_party/freetype/src/include/freetype/ftmm.h", 128 "//third_party/freetype/src/include/freetype/ftmodapi.h", 129 "//third_party/freetype/src/include/freetype/ftmoderr.h", 130 "//third_party/freetype/src/include/freetype/ftotval.h", 131 "//third_party/freetype/src/include/freetype/ftoutln.h", 132 "//third_party/freetype/src/include/freetype/ftparams.h", 133 "//third_party/freetype/src/include/freetype/ftpfr.h", 134 "//third_party/freetype/src/include/freetype/ftrender.h", 135 "//third_party/freetype/src/include/freetype/ftsizes.h", 136 "//third_party/freetype/src/include/freetype/ftsnames.h", 137 "//third_party/freetype/src/include/freetype/ftstroke.h", 138 "//third_party/freetype/src/include/freetype/ftsynth.h", 139 "//third_party/freetype/src/include/freetype/ftsystem.h", 140 "//third_party/freetype/src/include/freetype/fttrigon.h", 141 "//third_party/freetype/src/include/freetype/fttypes.h", 142 "//third_party/freetype/src/include/freetype/ftwinfnt.h", 143 "//third_party/freetype/src/include/freetype/internal/autohint.h", 144 "//third_party/freetype/src/include/freetype/internal/cffotypes.h", 145 "//third_party/freetype/src/include/freetype/internal/cfftypes.h", 146 "//third_party/freetype/src/include/freetype/internal/ftcalc.h", 147 "//third_party/freetype/src/include/freetype/internal/ftdebug.h", 148 "//third_party/freetype/src/include/freetype/internal/ftdrv.h", 149 "//third_party/freetype/src/include/freetype/internal/ftgloadr.h", 150 "//third_party/freetype/src/include/freetype/internal/fthash.h", 151 "//third_party/freetype/src/include/freetype/internal/ftmemory.h", 152 "//third_party/freetype/src/include/freetype/internal/ftobjs.h", 153 "//third_party/freetype/src/include/freetype/internal/ftpsprop.h", 154 "//third_party/freetype/src/include/freetype/internal/ftrfork.h", 155 "//third_party/freetype/src/include/freetype/internal/ftserv.h", 156 "//third_party/freetype/src/include/freetype/internal/ftstream.h", 157 "//third_party/freetype/src/include/freetype/internal/fttrace.h", 158 "//third_party/freetype/src/include/freetype/internal/ftvalid.h", 159 "//third_party/freetype/src/include/freetype/internal/internal.h", 160 "//third_party/freetype/src/include/freetype/internal/psaux.h", 161 "//third_party/freetype/src/include/freetype/internal/pshints.h", 162 "//third_party/freetype/src/include/freetype/internal/services/svbdf.h", 163 "//third_party/freetype/src/include/freetype/internal/services/svcfftl.h", 164 "//third_party/freetype/src/include/freetype/internal/services/svcid.h", 165 "//third_party/freetype/src/include/freetype/internal/services/svfntfmt.h", 166 "//third_party/freetype/src/include/freetype/internal/services/svgldict.h", 167 "//third_party/freetype/src/include/freetype/internal/services/svgxval.h", 168 "//third_party/freetype/src/include/freetype/internal/services/svkern.h", 169 "//third_party/freetype/src/include/freetype/internal/services/svmetric.h", 170 "//third_party/freetype/src/include/freetype/internal/services/svmm.h", 171 "//third_party/freetype/src/include/freetype/internal/services/svotval.h", 172 "//third_party/freetype/src/include/freetype/internal/services/svpfr.h", 173 "//third_party/freetype/src/include/freetype/internal/services/svpostnm.h", 174 "//third_party/freetype/src/include/freetype/internal/services/svprop.h", 175 "//third_party/freetype/src/include/freetype/internal/services/svpscmap.h", 176 "//third_party/freetype/src/include/freetype/internal/services/svpsinfo.h", 177 "//third_party/freetype/src/include/freetype/internal/services/svsfnt.h", 178 "//third_party/freetype/src/include/freetype/internal/services/svttcmap.h", 179 "//third_party/freetype/src/include/freetype/internal/services/svtteng.h", 180 "//third_party/freetype/src/include/freetype/internal/services/svttglyf.h", 181 "//third_party/freetype/src/include/freetype/internal/services/svwinfnt.h", 182 "//third_party/freetype/src/include/freetype/internal/sfnt.h", 183 "//third_party/freetype/src/include/freetype/internal/t1types.h", 184 "//third_party/freetype/src/include/freetype/internal/tttypes.h", 185 "//third_party/freetype/src/include/freetype/t1tables.h", 186 "//third_party/freetype/src/include/freetype/ttnameid.h", 187 "//third_party/freetype/src/include/freetype/tttables.h", 188 "//third_party/freetype/src/include/freetype/tttags.h", 189 "//third_party/freetype/src/include/ft2build.h", 190 "//third_party/freetype/src/src/base/ftbase.c", 191 "//third_party/freetype/src/src/base/ftbase.h", 192 "//third_party/freetype/src/src/base/ftbitmap.c", 193 "//third_party/freetype/src/src/base/ftdebug.c", 194 "//third_party/freetype/src/src/base/ftglyph.c", 195 "//third_party/freetype/src/src/base/ftinit.c", 196 "//third_party/freetype/src/src/base/ftmm.c", 197 "//third_party/freetype/src/src/base/ftsystem.c", 198 "//third_party/freetype/src/src/cff/cff.c", 199 "//third_party/freetype/src/src/cff/cffobjs.h", 200 "//third_party/freetype/src/src/cid/type1cid.c", 201 "//third_party/freetype/src/src/psaux/psaux.c", 202 "//third_party/freetype/src/src/pshinter/pshinter.c", 203 "//third_party/freetype/src/src/psnames/psmodule.c", 204 "//third_party/freetype/src/src/raster/raster.c", 205 "//third_party/freetype/src/src/sfnt/sfnt.c", 206 "//third_party/freetype/src/src/smooth/smooth.c", 207 "//third_party/freetype/src/src/truetype/truetype.c", 208 "//third_party/freetype/src/src/type1/type1.c", 209 ] 210 if (pdf_use_skia || pdf_use_skia_paths) { 211 sources += [ 212 "//third_party/freetype/src/include/freetype/ftsynth.h", 213 "//third_party/freetype/src/src/base/ftfstype.c", 214 "//third_party/freetype/src/src/base/fttype1.c", 215 ] 216 } 217 } 218} 219 220if (!pdf_use_skia && !pdf_use_skia_paths) { 221 config("fx_agg_warnings") { 222 visibility = [ ":*" ] 223 if (is_clang) { 224 # calc_butt_cap() in agg_vcgen_stroke.cpp is unused. 225 cflags = [ "-Wno-unused-function" ] 226 } 227 } 228 229 source_set("fx_agg") { 230 configs -= [ "//build/config/compiler:chromium_code" ] 231 configs += [ 232 "//build/config/compiler:no_chromium_code", 233 ":pdfium_third_party_config", 234 235 # Must be after no_chromium_code for warning flags to be ordered correctly. 236 ":fx_agg_warnings", 237 ] 238 sources = [ 239 "agg23/agg_basics.h", 240 "agg23/agg_clip_liang_barsky.h", 241 "agg23/agg_conv_dash.h", 242 "agg23/agg_conv_stroke.h", 243 "agg23/agg_curves.cpp", 244 "agg23/agg_curves.h", 245 "agg23/agg_path_storage.cpp", 246 "agg23/agg_path_storage.h", 247 "agg23/agg_rasterizer_scanline_aa.cpp", 248 "agg23/agg_rasterizer_scanline_aa.h", 249 "agg23/agg_renderer_scanline.h", 250 "agg23/agg_rendering_buffer.h", 251 "agg23/agg_scanline_u.h", 252 "agg23/agg_vcgen_dash.cpp", 253 "agg23/agg_vcgen_stroke.cpp", 254 ] 255 deps = [ "../core/fxcrt" ] 256 } 257} 258 259config("fx_lcms2_warnings") { 260 visibility = [ ":*" ] 261 if (is_clang) { 262 cflags = [ 263 # cmslut.cc is sloppy with aggregate initialization. Version 2.7 of this 264 # library doesn't appear to have this problem. 265 "-Wno-missing-braces", 266 267 # FindPrev() in cmsplugin.c is unused. 268 "-Wno-unused-function", 269 ] 270 } 271} 272 273source_set("fx_lcms2") { 274 configs -= [ "//build/config/compiler:chromium_code" ] 275 configs += [ 276 "//build/config/compiler:no_chromium_code", 277 "//build/config/sanitizers:cfi_icall_generalize_pointers", 278 ":pdfium_third_party_config", 279 280 # Must be after no_chromium_code for warning flags to be ordered correctly. 281 ":fx_lcms2_warnings", 282 ] 283 sources = [ 284 "lcms/include/lcms2.h", 285 "lcms/include/lcms2_plugin.h", 286 "lcms/src/cmsalpha.c", 287 "lcms/src/cmscam02.c", 288 "lcms/src/cmscgats.c", 289 "lcms/src/cmscnvrt.c", 290 "lcms/src/cmserr.c", 291 "lcms/src/cmsgamma.c", 292 "lcms/src/cmsgmt.c", 293 "lcms/src/cmshalf.c", 294 "lcms/src/cmsintrp.c", 295 "lcms/src/cmsio0.c", 296 "lcms/src/cmsio1.c", 297 "lcms/src/cmslut.c", 298 "lcms/src/cmsmd5.c", 299 "lcms/src/cmsmtrx.c", 300 "lcms/src/cmsnamed.c", 301 "lcms/src/cmsopt.c", 302 "lcms/src/cmspack.c", 303 "lcms/src/cmspcs.c", 304 "lcms/src/cmsplugin.c", 305 "lcms/src/cmsps2.c", 306 "lcms/src/cmssamp.c", 307 "lcms/src/cmssm.c", 308 "lcms/src/cmstypes.c", 309 "lcms/src/cmsvirt.c", 310 "lcms/src/cmswtpnt.c", 311 "lcms/src/cmsxform.c", 312 ] 313 deps = [ "../core/fxcrt" ] 314} 315 316if (!build_with_chromium) { 317 declare_args() { 318 # Uses system libjpeg. If true, overrides use_libjpeg_turbo. 319 use_system_libjpeg = false 320 321 # Uses libjpeg_turbo as the jpeg implementation. Has no effect if 322 # use_system_libjpeg is set. 323 use_libjpeg_turbo = true 324 } 325 326 config("system_libjpeg_config") { 327 libs = [ "jpeg" ] 328 defines = [ "USE_SYSTEM_LIBJPEG" ] 329 } 330 331 config("libjpeg_turbo_config") { 332 defines = [ "USE_LIBJPEG_TURBO=1" ] 333 } 334 335 # This is a meta target that forwards to the system's libjpeg, 336 # third_party/libjpeg, or third_party/libjpeg_turbo depending on the build args 337 # declared in this file. 338 group("jpeg") { 339 if (use_system_libjpeg) { 340 public_configs = [ ":system_libjpeg_config" ] 341 } else if (use_libjpeg_turbo) { 342 public_deps = [ "//third_party/libjpeg_turbo:libjpeg" ] 343 public_configs = [ ":libjpeg_turbo_config" ] 344 } else { 345 public_deps = [ "//third_party/libjpeg:libjpeg" ] 346 } 347 } 348} 349 350config("system_zlib_config") { 351 libs = [ "z" ] 352 defines = [ "USE_SYSTEM_ZLIB" ] 353} 354 355group("zlib") { 356 if (use_system_zlib) { 357 public_configs = [ ":system_zlib_config" ] 358 } else { 359 public_deps = [ "//third_party/zlib" ] 360 } 361} 362 363if (use_system_lcms2) { 364 pkg_config("lcms2_from_pkgconfig") { 365 defines = [ "USE_SYSTEM_LCMS2" ] 366 packages = [ "lcms2" ] 367 } 368} 369group("lcms2") { 370 if (use_system_lcms2) { 371 public_configs = [ ":lcms2_from_pkgconfig" ] 372 } else { 373 public_deps = [ ":fx_lcms2" ] 374 } 375} 376 377if (use_system_libopenjpeg2) { 378 pkg_config("libopenjpeg2_from_pkgconfig") { 379 defines = [ "USE_SYSTEM_LIBOPENJPEG2" ] 380 packages = [ "libopenjp2" ] 381 } 382} 383group("libopenjpeg2") { 384 if (use_system_libopenjpeg2) { 385 public_configs = [ ":libopenjpeg2_from_pkgconfig" ] 386 } else { 387 public_deps = [ ":fx_libopenjpeg" ] 388 } 389} 390 391config("fx_libopenjpeg_warnings") { 392 visibility = [ ":*" ] 393 if (is_win) { 394 cflags = [ 395 # Signed/unsigned comparisons. 396 "/wd4018", 397 ] 398 } 399} 400 401source_set("fx_libopenjpeg") { 402 configs -= [ "//build/config/compiler:chromium_code" ] 403 configs += [ 404 "//build/config/compiler:no_chromium_code", 405 "//build/config/sanitizers:cfi_icall_generalize_pointers", 406 ":pdfium_third_party_config", 407 408 # Must be after no_chromium_code for warning flags to be ordered correctly. 409 ":fx_libopenjpeg_warnings", 410 ] 411 sources = [ 412 "libopenjpeg20/bio.c", 413 "libopenjpeg20/cio.c", 414 "libopenjpeg20/dwt.c", 415 "libopenjpeg20/event.c", 416 "libopenjpeg20/function_list.c", 417 "libopenjpeg20/image.c", 418 "libopenjpeg20/invert.c", 419 "libopenjpeg20/j2k.c", 420 "libopenjpeg20/jp2.c", 421 "libopenjpeg20/mct.c", 422 "libopenjpeg20/mqc.c", 423 "libopenjpeg20/openjpeg.c", 424 "libopenjpeg20/opj_clock.c", 425 "libopenjpeg20/pi.c", 426 "libopenjpeg20/sparse_array.c", 427 "libopenjpeg20/sparse_array.h", 428 "libopenjpeg20/t1.c", 429 "libopenjpeg20/t2.c", 430 "libopenjpeg20/tcd.c", 431 "libopenjpeg20/tgt.c", 432 "libopenjpeg20/thread.c", 433 ] 434} 435 436config("system_libpng_config") { 437 libs = [ "png" ] 438 defines = [ "USE_SYSTEM_LIBPNG" ] 439} 440 441group("png") { 442 if (use_system_libpng) { 443 public_configs = [ ":system_libpng_config" ] 444 } else { 445 public_deps = [ ":fx_lpng" ] 446 } 447} 448 449source_set("fx_lpng") { 450 configs -= [ "//build/config/compiler:chromium_code" ] 451 configs += [ 452 "//build/config/compiler:no_chromium_code", 453 ":pdfium_third_party_config", 454 ] 455 sources = [ 456 "libpng16/png.c", 457 "libpng16/png.h", 458 "libpng16/pngconf.h", 459 "libpng16/pngdebug.h", 460 "libpng16/pngerror.c", 461 "libpng16/pngget.c", 462 "libpng16/pnginfo.h", 463 "libpng16/pnglibconf.h", 464 "libpng16/pngmem.c", 465 "libpng16/pngpread.c", 466 "libpng16/pngprefix.h", 467 "libpng16/pngpriv.h", 468 "libpng16/pngread.c", 469 "libpng16/pngrio.c", 470 "libpng16/pngrtran.c", 471 "libpng16/pngrutil.c", 472 "libpng16/pngset.c", 473 "libpng16/pngstruct.h", 474 "libpng16/pngtrans.c", 475 "libpng16/pngwio.c", 476 "libpng16/pngwrite.c", 477 "libpng16/pngwtran.c", 478 "libpng16/pngwutil.c", 479 ] 480 481 defines = [] 482 cflags = [] 483 deps = [ ":zlib" ] 484 485 if (current_cpu == "x86" || current_cpu == "x64") { 486 sources += [ 487 "libpng16/intel/filter_sse2_intrinsics.c", 488 "libpng16/intel/intel_init.c", 489 ] 490 defines += [ "PNG_INTEL_SSE_OPT=1" ] 491 } else if ((current_cpu == "arm" || current_cpu == "arm64") && arm_use_neon) { 492 sources += [ 493 "libpng16/arm/arm_init.c", 494 "libpng16/arm/filter_neon_intrinsics.c", 495 "libpng16/arm/palette_neon_intrinsics.c", 496 ] 497 defines += [ 498 "PNG_ARM_NEON_OPT=2", 499 "PNG_ARM_NEON_IMPLEMENTATION=1", 500 ] 501 } 502 503 if (is_win) { 504 # Unary minus applied to unsigned type. 505 cflags += [ "/wd4146" ] 506 } 507} 508 509if (pdf_enable_xfa_tiff) { 510 source_set("fx_tiff") { 511 configs -= [ "//build/config/compiler:chromium_code" ] 512 configs += [ 513 "//build/config/compiler:no_chromium_code", 514 ":pdfium_third_party_config", 515 ] 516 if (is_win) { 517 # Need to undefine the macro since it is redefined in 518 # tif_ojpeg.c and tif_jpeg.c. 519 configs -= [ "//build/config/win:lean_and_mean" ] 520 } 521 deps = [ 522 ":zlib", 523 "../core/fxcrt", 524 "//third_party:jpeg", 525 ] 526 sources = [ 527 "libtiff/tif_aux.c", 528 "libtiff/tif_close.c", 529 "libtiff/tif_codec.c", 530 "libtiff/tif_color.c", 531 "libtiff/tif_compress.c", 532 "libtiff/tif_dir.c", 533 "libtiff/tif_dirinfo.c", 534 "libtiff/tif_dirread.c", 535 "libtiff/tif_dirwrite.c", 536 "libtiff/tif_dumpmode.c", 537 "libtiff/tif_error.c", 538 "libtiff/tif_extension.c", 539 "libtiff/tif_fax3.c", 540 "libtiff/tif_fax3sm.c", 541 "libtiff/tif_flush.c", 542 "libtiff/tif_getimage.c", 543 "libtiff/tif_jpeg.c", 544 "libtiff/tif_luv.c", 545 "libtiff/tif_lzw.c", 546 "libtiff/tif_next.c", 547 "libtiff/tif_ojpeg.c", 548 "libtiff/tif_open.c", 549 "libtiff/tif_packbits.c", 550 "libtiff/tif_pixarlog.c", 551 "libtiff/tif_predict.c", 552 "libtiff/tif_print.c", 553 "libtiff/tif_read.c", 554 "libtiff/tif_strip.c", 555 "libtiff/tif_swab.c", 556 "libtiff/tif_thunder.c", 557 "libtiff/tif_tile.c", 558 "libtiff/tif_version.c", 559 "libtiff/tif_warning.c", 560 "libtiff/tif_write.c", 561 "libtiff/tif_zip.c", 562 "libtiff/tiffiop.h", 563 "libtiff/tiffvers.h", 564 ] 565 } 566} 567 568source_set("pdfium_base") { 569 configs -= [ "//build/config/compiler:chromium_code" ] 570 configs += [ 571 "//build/config/compiler:no_chromium_code", 572 ":pdfium_third_party_config", 573 ] 574 sources = [ 575 "base/allocator/partition_allocator/address_space_randomization.cc", 576 "base/allocator/partition_allocator/address_space_randomization.h", 577 "base/allocator/partition_allocator/oom.h", 578 "base/allocator/partition_allocator/oom_callback.cc", 579 "base/allocator/partition_allocator/oom_callback.h", 580 "base/allocator/partition_allocator/page_allocator.cc", 581 "base/allocator/partition_allocator/page_allocator.h", 582 "base/allocator/partition_allocator/page_allocator_constants.h", 583 "base/allocator/partition_allocator/page_allocator_internal.h", 584 "base/allocator/partition_allocator/page_allocator_internals_posix.h", 585 "base/allocator/partition_allocator/page_allocator_internals_win.h", 586 "base/allocator/partition_allocator/partition_alloc.cc", 587 "base/allocator/partition_allocator/partition_alloc.h", 588 "base/allocator/partition_allocator/partition_alloc_constants.h", 589 "base/allocator/partition_allocator/partition_bucket.cc", 590 "base/allocator/partition_allocator/partition_bucket.h", 591 "base/allocator/partition_allocator/partition_cookie.h", 592 "base/allocator/partition_allocator/partition_direct_map_extent.h", 593 "base/allocator/partition_allocator/partition_freelist_entry.h", 594 "base/allocator/partition_allocator/partition_oom.cc", 595 "base/allocator/partition_allocator/partition_oom.h", 596 "base/allocator/partition_allocator/partition_page.cc", 597 "base/allocator/partition_allocator/partition_page.h", 598 "base/allocator/partition_allocator/partition_root_base.cc", 599 "base/allocator/partition_allocator/partition_root_base.h", 600 "base/allocator/partition_allocator/random.cc", 601 "base/allocator/partition_allocator/random.h", 602 "base/allocator/partition_allocator/spin_lock.cc", 603 "base/allocator/partition_allocator/spin_lock.h", 604 "base/base_export.h", 605 "base/bits.h", 606 "base/compiler_specific.h", 607 "base/debug/alias.cc", 608 "base/debug/alias.h", 609 "base/logging.h", 610 "base/no_destructor.h", 611 "base/numerics/safe_conversions.h", 612 "base/numerics/safe_conversions_arm_impl.h", 613 "base/numerics/safe_conversions_impl.h", 614 "base/numerics/safe_math.h", 615 "base/numerics/safe_math_impl.h", 616 "base/optional.h", 617 "base/span.h", 618 "base/stl_util.h", 619 "base/sys_byteorder.h", 620 "base/template_util.h", 621 ] 622 623 if (is_win) { 624 sources += [ 625 "base/win/win_util.cc", 626 "base/win/win_util.h", 627 ] 628 } 629} 630 631source_set("pdfium_base_test_support") { 632 testonly = true 633 configs -= [ "//build/config/compiler:chromium_code" ] 634 configs += [ 635 "//build/config/compiler:no_chromium_code", 636 ":pdfium_third_party_config", 637 ] 638 sources = [] 639 deps = [] 640 641 if (is_posix || is_fuchsia) { 642 sources += [ 643 "base/test/scoped_locale.cc", 644 "base/test/scoped_locale.h", 645 ] 646 deps += [ "//testing/gtest" ] 647 } 648} 649 650source_set("skia_shared") { 651 configs -= [ "//build/config/compiler:chromium_code" ] 652 configs += [ 653 "//build/config/compiler:no_chromium_code", 654 ":pdfium_third_party_config", 655 ] 656 sources = [ 657 "skia_shared/SkFloatToDecimal.cpp", 658 "skia_shared/SkFloatToDecimal.h", 659 ] 660} 661