Bo Xu | 4c764f3 | 2014-12-19 14:29:17 -0800 | [diff] [blame] | 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 | |
thestig | a72ab5e | 2016-08-04 00:20:00 -0700 | [diff] [blame] | 5 | import("//build/config/arm.gni") |
thestig | 6d5c56b | 2016-08-03 16:29:18 -0700 | [diff] [blame] | 6 | import("//build_overrides/build.gni") |
dsinclair | 038bf0b | 2016-04-30 06:00:05 -0700 | [diff] [blame] | 7 | import("../pdfium.gni") |
Tom Sepez | 465ed87 | 2015-12-09 14:55:41 -0800 | [diff] [blame] | 8 | |
Bo Xu | 4c764f3 | 2014-12-19 14:29:17 -0800 | [diff] [blame] | 9 | group("third_party") { |
| 10 | deps = [ |
| 11 | ":bigint", |
Tom Sepez | 0dfd030 | 2015-10-12 15:38:22 -0700 | [diff] [blame] | 12 | ":fx_freetype", |
Tom Sepez | 3542589 | 2015-02-05 10:03:18 -0800 | [diff] [blame] | 13 | ":pdfium_base", |
Bo Xu | 4c764f3 | 2014-12-19 14:29:17 -0800 | [diff] [blame] | 14 | ] |
| 15 | } |
| 16 | |
weili | 0abe652 | 2016-06-06 14:41:22 -0700 | [diff] [blame] | 17 | config("pdfium_third_party_config") { |
caryclark | 72708b9 | 2016-06-13 06:08:25 -0700 | [diff] [blame] | 18 | configs = [ "..:pdfium_common_config" ] |
weili | 0abe652 | 2016-06-06 14:41:22 -0700 | [diff] [blame] | 19 | } |
| 20 | |
brettw | e283e47 | 2016-07-21 09:38:22 -0700 | [diff] [blame] | 21 | static_library("bigint") { |
Tom Sepez | 5417266 | 2015-01-09 14:49:47 -0800 | [diff] [blame] | 22 | configs -= [ "//build/config/compiler:chromium_code" ] |
| 23 | configs += [ |
Tom Sepez | 6fd997b | 2015-06-18 17:51:37 -0700 | [diff] [blame] | 24 | "//build/config/compiler:no_chromium_code", |
weili | 0abe652 | 2016-06-06 14:41:22 -0700 | [diff] [blame] | 25 | ":pdfium_third_party_config", |
Tom Sepez | 5417266 | 2015-01-09 14:49:47 -0800 | [diff] [blame] | 26 | ] |
Bo Xu | 4c764f3 | 2014-12-19 14:29:17 -0800 | [diff] [blame] | 27 | sources = [ |
Tom Sepez | 465ed87 | 2015-12-09 14:55:41 -0800 | [diff] [blame] | 28 | "bigint/BigInteger.cc", |
Bo Xu | 4c764f3 | 2014-12-19 14:29:17 -0800 | [diff] [blame] | 29 | "bigint/BigInteger.hh", |
| 30 | "bigint/BigIntegerLibrary.hh", |
Bo Xu | 4c764f3 | 2014-12-19 14:29:17 -0800 | [diff] [blame] | 31 | "bigint/BigIntegerUtils.cc", |
Tom Sepez | 465ed87 | 2015-12-09 14:55:41 -0800 | [diff] [blame] | 32 | "bigint/BigIntegerUtils.hh", |
Bo Xu | 4c764f3 | 2014-12-19 14:29:17 -0800 | [diff] [blame] | 33 | "bigint/BigUnsigned.cc", |
Tom Sepez | 465ed87 | 2015-12-09 14:55:41 -0800 | [diff] [blame] | 34 | "bigint/BigUnsigned.hh", |
Bo Xu | 4c764f3 | 2014-12-19 14:29:17 -0800 | [diff] [blame] | 35 | "bigint/BigUnsignedInABase.cc", |
Tom Sepez | 465ed87 | 2015-12-09 14:55:41 -0800 | [diff] [blame] | 36 | "bigint/BigUnsignedInABase.hh", |
| 37 | "bigint/NumberlikeArray.hh", |
Bo Xu | 4c764f3 | 2014-12-19 14:29:17 -0800 | [diff] [blame] | 38 | ] |
| 39 | } |
| 40 | |
Lei Zhang | 4f9ccbf | 2015-10-30 13:04:57 -0700 | [diff] [blame] | 41 | config("fx_freetype_warnings") { |
| 42 | visibility = [ ":*" ] |
| 43 | if (is_clang) { |
| 44 | # open_face_PS_from_sfnt_stream() and open_face_from_buffer() in |
| 45 | # ftbase.h are unused. |
| 46 | cflags = [ "-Wno-unused-function" ] |
| 47 | } |
| 48 | } |
| 49 | |
Tom Sepez | 465ed87 | 2015-12-09 14:55:41 -0800 | [diff] [blame] | 50 | # Tests may link against this even if the production library doesn't, |
| 51 | # so it needs to be separate from it. |
| 52 | static_library("fx_freetype") { |
Tom Sepez | 5417266 | 2015-01-09 14:49:47 -0800 | [diff] [blame] | 53 | configs -= [ "//build/config/compiler:chromium_code" ] |
| 54 | configs += [ |
Tom Sepez | 6fd997b | 2015-06-18 17:51:37 -0700 | [diff] [blame] | 55 | "//build/config/compiler:no_chromium_code", |
weili | 0abe652 | 2016-06-06 14:41:22 -0700 | [diff] [blame] | 56 | ":pdfium_third_party_config", |
Lei Zhang | 8241df7 | 2015-11-06 14:38:48 -0800 | [diff] [blame] | 57 | |
Lei Zhang | 4f9ccbf | 2015-10-30 13:04:57 -0700 | [diff] [blame] | 58 | # Must be after no_chromium_code for warning flags to be ordered correctly. |
| 59 | ":fx_freetype_warnings", |
Bo Xu | 4c764f3 | 2014-12-19 14:29:17 -0800 | [diff] [blame] | 60 | ] |
John Abd-El-Malek | ef4dce4 | 2015-02-02 16:52:07 -0800 | [diff] [blame] | 61 | defines = [ "FT2_BUILD_LIBRARY" ] |
Bo Xu | 4c764f3 | 2014-12-19 14:29:17 -0800 | [diff] [blame] | 62 | sources = [ |
Oliver Chang | cec3f68 | 2015-11-05 16:00:40 -0800 | [diff] [blame] | 63 | "freetype/include/freetype/freetype.h", |
| 64 | "freetype/include/freetype/ftmm.h", |
| 65 | "freetype/include/freetype/ftotval.h", |
| 66 | "freetype/include/freetype/ftoutln.h", |
| 67 | "freetype/include/freetype/internal/ftobjs.h", |
| 68 | "freetype/include/freetype/internal/ftstream.h", |
| 69 | "freetype/include/freetype/internal/tttypes.h", |
| 70 | "freetype/include/freetype/tttables.h", |
Bo Xu | 4c764f3 | 2014-12-19 14:29:17 -0800 | [diff] [blame] | 71 | "freetype/include/ft2build.h", |
Bo Xu | 4c764f3 | 2014-12-19 14:29:17 -0800 | [diff] [blame] | 72 | "freetype/src/base/ftbase.c", |
Oliver Chang | cec3f68 | 2015-11-05 16:00:40 -0800 | [diff] [blame] | 73 | "freetype/src/base/ftbase.h", |
Bo Xu | 4c764f3 | 2014-12-19 14:29:17 -0800 | [diff] [blame] | 74 | "freetype/src/base/ftbitmap.c", |
| 75 | "freetype/src/base/ftglyph.c", |
| 76 | "freetype/src/base/ftinit.c", |
| 77 | "freetype/src/base/ftlcdfil.c", |
| 78 | "freetype/src/base/ftmm.c", |
| 79 | "freetype/src/base/ftsystem.c", |
Oliver Chang | cec3f68 | 2015-11-05 16:00:40 -0800 | [diff] [blame] | 80 | "freetype/src/cff/cff.c", |
| 81 | "freetype/src/cff/cffobjs.h", |
| 82 | "freetype/src/cff/cfftypes.h", |
| 83 | "freetype/src/cid/type1cid.c", |
Bo Xu | 4c764f3 | 2014-12-19 14:29:17 -0800 | [diff] [blame] | 84 | "freetype/src/psaux/psaux.c", |
| 85 | "freetype/src/pshinter/pshinter.c", |
| 86 | "freetype/src/psnames/psmodule.c", |
| 87 | "freetype/src/raster/raster.c", |
| 88 | "freetype/src/sfnt/sfnt.c", |
| 89 | "freetype/src/smooth/smooth.c", |
| 90 | "freetype/src/truetype/truetype.c", |
| 91 | "freetype/src/type1/type1.c", |
Bo Xu | 4c764f3 | 2014-12-19 14:29:17 -0800 | [diff] [blame] | 92 | ] |
caryclark | 72708b9 | 2016-06-13 06:08:25 -0700 | [diff] [blame] | 93 | if (pdf_use_skia) { |
| 94 | sources += [ |
| 95 | "freetype/src/base/ftfntfmt.c", |
| 96 | "freetype/src/base/ftfstype.c", |
| 97 | "freetype/src/base/fttype1.c", |
| 98 | ] |
| 99 | } |
Bo Xu | 4c764f3 | 2014-12-19 14:29:17 -0800 | [diff] [blame] | 100 | } |
| 101 | |
caryclark | 749c14c | 2016-05-19 07:01:03 -0700 | [diff] [blame] | 102 | if (!pdf_use_skia) { |
| 103 | config("fx_agg_warnings") { |
| 104 | visibility = [ ":*" ] |
| 105 | if (is_clang) { |
| 106 | # calc_butt_cap() in agg_vcgen_stroke.cpp is unused. |
| 107 | cflags = [ "-Wno-unused-function" ] |
| 108 | } |
Lei Zhang | 4f9ccbf | 2015-10-30 13:04:57 -0700 | [diff] [blame] | 109 | } |
Lei Zhang | 4f9ccbf | 2015-10-30 13:04:57 -0700 | [diff] [blame] | 110 | |
brettw | e283e47 | 2016-07-21 09:38:22 -0700 | [diff] [blame] | 111 | static_library("fx_agg") { |
caryclark | 749c14c | 2016-05-19 07:01:03 -0700 | [diff] [blame] | 112 | configs -= [ "//build/config/compiler:chromium_code" ] |
| 113 | configs += [ |
| 114 | "//build/config/compiler:no_chromium_code", |
weili | 0abe652 | 2016-06-06 14:41:22 -0700 | [diff] [blame] | 115 | ":pdfium_third_party_config", |
Lei Zhang | 8241df7 | 2015-11-06 14:38:48 -0800 | [diff] [blame] | 116 | |
caryclark | 749c14c | 2016-05-19 07:01:03 -0700 | [diff] [blame] | 117 | # Must be after no_chromium_code for warning flags to be ordered correctly. |
| 118 | ":fx_agg_warnings", |
| 119 | ] |
| 120 | sources = [ |
| 121 | "agg23/agg_basics.h", |
| 122 | "agg23/agg_clip_liang_barsky.h", |
| 123 | "agg23/agg_conv_dash.h", |
| 124 | "agg23/agg_conv_stroke.h", |
| 125 | "agg23/agg_curves.cpp", |
| 126 | "agg23/agg_curves.h", |
| 127 | "agg23/agg_path_storage.cpp", |
| 128 | "agg23/agg_path_storage.h", |
| 129 | "agg23/agg_rasterizer_scanline_aa.cpp", |
| 130 | "agg23/agg_rasterizer_scanline_aa.h", |
| 131 | "agg23/agg_renderer_scanline.h", |
| 132 | "agg23/agg_rendering_buffer.h", |
| 133 | "agg23/agg_scanline_u.h", |
| 134 | "agg23/agg_vcgen_dash.cpp", |
| 135 | "agg23/agg_vcgen_stroke.cpp", |
| 136 | ] |
thestig | 73c4856 | 2016-09-06 14:07:17 -0700 | [diff] [blame] | 137 | deps = [ |
| 138 | "..:fxcrt", |
| 139 | ] |
caryclark | 749c14c | 2016-05-19 07:01:03 -0700 | [diff] [blame] | 140 | } |
Tom Sepez | 8be5575 | 2015-06-17 11:05:02 -0700 | [diff] [blame] | 141 | } |
| 142 | |
Lei Zhang | e262c9a | 2015-09-03 16:16:10 -0700 | [diff] [blame] | 143 | config("fx_lcms2_warnings") { |
Tom Sepez | 465ed87 | 2015-12-09 14:55:41 -0800 | [diff] [blame] | 144 | visibility = [ ":*" ] |
Lei Zhang | e262c9a | 2015-09-03 16:16:10 -0700 | [diff] [blame] | 145 | if (is_clang) { |
Lei Zhang | 8241df7 | 2015-11-06 14:38:48 -0800 | [diff] [blame] | 146 | cflags = [ |
| 147 | # cmslut.cc is sloppy with aggregate initialization. Version 2.7 of this |
| 148 | # library doesn't appear to have this problem. |
| 149 | "-Wno-missing-braces", |
| 150 | |
| 151 | # FindPrev() in cmsplugin.c is unused. |
| 152 | "-Wno-unused-function", |
| 153 | ] |
Nico Weber | 2827bdd | 2015-07-01 14:08:08 -0700 | [diff] [blame] | 154 | } |
Lei Zhang | e262c9a | 2015-09-03 16:16:10 -0700 | [diff] [blame] | 155 | } |
| 156 | |
brettw | e283e47 | 2016-07-21 09:38:22 -0700 | [diff] [blame] | 157 | static_library("fx_lcms2") { |
Tom Sepez | 8be5575 | 2015-06-17 11:05:02 -0700 | [diff] [blame] | 158 | configs -= [ "//build/config/compiler:chromium_code" ] |
| 159 | configs += [ |
| 160 | "//build/config/compiler:no_chromium_code", |
weili | 0abe652 | 2016-06-06 14:41:22 -0700 | [diff] [blame] | 161 | ":pdfium_third_party_config", |
Lei Zhang | 8241df7 | 2015-11-06 14:38:48 -0800 | [diff] [blame] | 162 | |
Lei Zhang | 4f9ccbf | 2015-10-30 13:04:57 -0700 | [diff] [blame] | 163 | # Must be after no_chromium_code for warning flags to be ordered correctly. |
Nico Weber | 2827bdd | 2015-07-01 14:08:08 -0700 | [diff] [blame] | 164 | ":fx_lcms2_warnings", |
Tom Sepez | 8be5575 | 2015-06-17 11:05:02 -0700 | [diff] [blame] | 165 | ] |
| 166 | sources = [ |
| 167 | "lcms2-2.6/include/lcms2.h", |
| 168 | "lcms2-2.6/include/lcms2_plugin.h", |
| 169 | "lcms2-2.6/src/cmscam02.c", |
| 170 | "lcms2-2.6/src/cmscgats.c", |
| 171 | "lcms2-2.6/src/cmscnvrt.c", |
| 172 | "lcms2-2.6/src/cmserr.c", |
| 173 | "lcms2-2.6/src/cmsgamma.c", |
| 174 | "lcms2-2.6/src/cmsgmt.c", |
| 175 | "lcms2-2.6/src/cmshalf.c", |
| 176 | "lcms2-2.6/src/cmsintrp.c", |
| 177 | "lcms2-2.6/src/cmsio0.c", |
| 178 | "lcms2-2.6/src/cmsio1.c", |
| 179 | "lcms2-2.6/src/cmslut.c", |
| 180 | "lcms2-2.6/src/cmsmd5.c", |
| 181 | "lcms2-2.6/src/cmsmtrx.c", |
| 182 | "lcms2-2.6/src/cmsnamed.c", |
| 183 | "lcms2-2.6/src/cmsopt.c", |
| 184 | "lcms2-2.6/src/cmspack.c", |
| 185 | "lcms2-2.6/src/cmspcs.c", |
| 186 | "lcms2-2.6/src/cmsplugin.c", |
| 187 | "lcms2-2.6/src/cmsps2.c", |
| 188 | "lcms2-2.6/src/cmssamp.c", |
| 189 | "lcms2-2.6/src/cmssm.c", |
| 190 | "lcms2-2.6/src/cmstypes.c", |
| 191 | "lcms2-2.6/src/cmsvirt.c", |
| 192 | "lcms2-2.6/src/cmswtpnt.c", |
| 193 | "lcms2-2.6/src/cmsxform.c", |
| 194 | ] |
| 195 | } |
| 196 | |
Lei Zhang | 8241df7 | 2015-11-06 14:38:48 -0800 | [diff] [blame] | 197 | # This is only used for standalone builds. |
Dan Sinclair | 4ca48d1 | 2016-02-24 14:09:55 -0500 | [diff] [blame] | 198 | config("jpeg_warnings") { |
| 199 | visibility = [ ":*" ] |
Lei Zhang | 8ba5b59 | 2016-02-26 12:33:18 -0800 | [diff] [blame] | 200 | if (is_clang) { |
| 201 | cflags = [ "-Wno-shift-negative-value" ] |
| 202 | } |
Dan Sinclair | 4ca48d1 | 2016-02-24 14:09:55 -0500 | [diff] [blame] | 203 | } |
| 204 | |
brettw | e283e47 | 2016-07-21 09:38:22 -0700 | [diff] [blame] | 205 | static_library("jpeg") { |
Tom Sepez | 0a11975 | 2015-06-17 15:46:03 -0700 | [diff] [blame] | 206 | configs -= [ "//build/config/compiler:chromium_code" ] |
| 207 | configs += [ |
| 208 | "//build/config/compiler:no_chromium_code", |
weili | 0abe652 | 2016-06-06 14:41:22 -0700 | [diff] [blame] | 209 | ":pdfium_third_party_config", |
Dan Sinclair | 4ca48d1 | 2016-02-24 14:09:55 -0500 | [diff] [blame] | 210 | |
| 211 | # Must be after no_chromium_code for warning flags to be ordered correctly. |
| 212 | ":jpeg_warnings", |
Tom Sepez | 0a11975 | 2015-06-17 15:46:03 -0700 | [diff] [blame] | 213 | ] |
| 214 | sources = [ |
| 215 | "libjpeg/cderror.h", |
| 216 | "libjpeg/cdjpeg.h", |
| 217 | "libjpeg/fpdfapi_jcapimin.c", |
| 218 | "libjpeg/fpdfapi_jcapistd.c", |
| 219 | "libjpeg/fpdfapi_jccoefct.c", |
| 220 | "libjpeg/fpdfapi_jccolor.c", |
| 221 | "libjpeg/fpdfapi_jcdctmgr.c", |
| 222 | "libjpeg/fpdfapi_jchuff.c", |
| 223 | "libjpeg/fpdfapi_jcinit.c", |
| 224 | "libjpeg/fpdfapi_jcmainct.c", |
| 225 | "libjpeg/fpdfapi_jcmarker.c", |
| 226 | "libjpeg/fpdfapi_jcmaster.c", |
| 227 | "libjpeg/fpdfapi_jcomapi.c", |
| 228 | "libjpeg/fpdfapi_jcparam.c", |
| 229 | "libjpeg/fpdfapi_jcphuff.c", |
| 230 | "libjpeg/fpdfapi_jcprepct.c", |
| 231 | "libjpeg/fpdfapi_jcsample.c", |
| 232 | "libjpeg/fpdfapi_jctrans.c", |
| 233 | "libjpeg/fpdfapi_jdapimin.c", |
| 234 | "libjpeg/fpdfapi_jdapistd.c", |
| 235 | "libjpeg/fpdfapi_jdcoefct.c", |
| 236 | "libjpeg/fpdfapi_jdcolor.c", |
| 237 | "libjpeg/fpdfapi_jddctmgr.c", |
| 238 | "libjpeg/fpdfapi_jdhuff.c", |
| 239 | "libjpeg/fpdfapi_jdinput.c", |
| 240 | "libjpeg/fpdfapi_jdmainct.c", |
| 241 | "libjpeg/fpdfapi_jdmarker.c", |
| 242 | "libjpeg/fpdfapi_jdmaster.c", |
| 243 | "libjpeg/fpdfapi_jdmerge.c", |
| 244 | "libjpeg/fpdfapi_jdphuff.c", |
| 245 | "libjpeg/fpdfapi_jdpostct.c", |
| 246 | "libjpeg/fpdfapi_jdsample.c", |
| 247 | "libjpeg/fpdfapi_jdtrans.c", |
| 248 | "libjpeg/fpdfapi_jerror.c", |
| 249 | "libjpeg/fpdfapi_jfdctfst.c", |
| 250 | "libjpeg/fpdfapi_jfdctint.c", |
| 251 | "libjpeg/fpdfapi_jidctfst.c", |
| 252 | "libjpeg/fpdfapi_jidctint.c", |
| 253 | "libjpeg/fpdfapi_jidctred.c", |
| 254 | "libjpeg/fpdfapi_jmemmgr.c", |
| 255 | "libjpeg/fpdfapi_jmemnobs.c", |
| 256 | "libjpeg/fpdfapi_jutils.c", |
| 257 | "libjpeg/jchuff.h", |
| 258 | "libjpeg/jconfig.h", |
| 259 | "libjpeg/jdct.h", |
| 260 | "libjpeg/jdhuff.h", |
| 261 | "libjpeg/jerror.h", |
| 262 | "libjpeg/jinclude.h", |
| 263 | "libjpeg/jmemsys.h", |
| 264 | "libjpeg/jmorecfg.h", |
| 265 | "libjpeg/jpegint.h", |
| 266 | "libjpeg/jpeglib.h", |
| 267 | "libjpeg/jversion.h", |
| 268 | "libjpeg/makefile", |
| 269 | "libjpeg/transupp.h", |
| 270 | ] |
thestig | 73c4856 | 2016-09-06 14:07:17 -0700 | [diff] [blame] | 271 | deps = [ |
| 272 | "..:fxcrt", |
| 273 | ] |
Tom Sepez | 0a11975 | 2015-06-17 15:46:03 -0700 | [diff] [blame] | 274 | } |
| 275 | |
ochang | e5984e9 | 2016-04-05 14:41:25 -0700 | [diff] [blame] | 276 | config("fx_libopenjpeg_warnings") { |
| 277 | visibility = [ ":*" ] |
| 278 | if (is_win) { |
| 279 | cflags = [ |
| 280 | # Signed/unsigned comparisons. |
| 281 | "/wd4018", |
| 282 | ] |
| 283 | } |
| 284 | } |
| 285 | |
brettw | e283e47 | 2016-07-21 09:38:22 -0700 | [diff] [blame] | 286 | static_library("fx_libopenjpeg") { |
Tom Sepez | 5417266 | 2015-01-09 14:49:47 -0800 | [diff] [blame] | 287 | configs -= [ "//build/config/compiler:chromium_code" ] |
| 288 | configs += [ |
Tom Sepez | 6fd997b | 2015-06-18 17:51:37 -0700 | [diff] [blame] | 289 | "//build/config/compiler:no_chromium_code", |
weili | 0abe652 | 2016-06-06 14:41:22 -0700 | [diff] [blame] | 290 | ":pdfium_third_party_config", |
ochang | e5984e9 | 2016-04-05 14:41:25 -0700 | [diff] [blame] | 291 | |
| 292 | # Must be after no_chromium_code for warning flags to be ordered correctly. |
| 293 | ":fx_libopenjpeg_warnings", |
Tom Sepez | 6fd997b | 2015-06-18 17:51:37 -0700 | [diff] [blame] | 294 | ] |
| 295 | sources = [ |
| 296 | "libopenjpeg20/bio.c", |
| 297 | "libopenjpeg20/cio.c", |
| 298 | "libopenjpeg20/dwt.c", |
| 299 | "libopenjpeg20/event.c", |
| 300 | "libopenjpeg20/function_list.c", |
| 301 | "libopenjpeg20/image.c", |
| 302 | "libopenjpeg20/invert.c", |
| 303 | "libopenjpeg20/j2k.c", |
| 304 | "libopenjpeg20/jp2.c", |
| 305 | "libopenjpeg20/mct.c", |
| 306 | "libopenjpeg20/mqc.c", |
| 307 | "libopenjpeg20/openjpeg.c", |
| 308 | "libopenjpeg20/opj_clock.c", |
| 309 | "libopenjpeg20/pi.c", |
| 310 | "libopenjpeg20/raw.c", |
| 311 | "libopenjpeg20/t1.c", |
| 312 | "libopenjpeg20/t2.c", |
| 313 | "libopenjpeg20/tcd.c", |
| 314 | "libopenjpeg20/tgt.c", |
| 315 | ] |
| 316 | } |
| 317 | |
brettw | e283e47 | 2016-07-21 09:38:22 -0700 | [diff] [blame] | 318 | static_library("fx_lpng") { |
Tom Sepez | 5ef9faa | 2015-10-12 15:43:01 -0700 | [diff] [blame] | 319 | configs -= [ "//build/config/compiler:chromium_code" ] |
| 320 | configs += [ |
| 321 | "//build/config/compiler:no_chromium_code", |
weili | 0abe652 | 2016-06-06 14:41:22 -0700 | [diff] [blame] | 322 | ":pdfium_third_party_config", |
Tom Sepez | 5ef9faa | 2015-10-12 15:43:01 -0700 | [diff] [blame] | 323 | ] |
| 324 | sources = [ |
Lei Zhang | a76a6d8 | 2016-01-15 19:38:03 -0800 | [diff] [blame] | 325 | "libpng16/png.c", |
| 326 | "libpng16/png.h", |
| 327 | "libpng16/pngconf.h", |
| 328 | "libpng16/pngdebug.h", |
| 329 | "libpng16/pngerror.c", |
| 330 | "libpng16/pngget.c", |
| 331 | "libpng16/pnginfo.h", |
| 332 | "libpng16/pnglibconf.h", |
| 333 | "libpng16/pngmem.c", |
| 334 | "libpng16/pngpread.c", |
Tom Sepez | d87b20e | 2016-03-02 16:55:26 -0800 | [diff] [blame] | 335 | "libpng16/pngprefix.h", |
Lei Zhang | a76a6d8 | 2016-01-15 19:38:03 -0800 | [diff] [blame] | 336 | "libpng16/pngpriv.h", |
| 337 | "libpng16/pngread.c", |
| 338 | "libpng16/pngrio.c", |
| 339 | "libpng16/pngrtran.c", |
| 340 | "libpng16/pngrutil.c", |
| 341 | "libpng16/pngset.c", |
| 342 | "libpng16/pngstruct.h", |
| 343 | "libpng16/pngtrans.c", |
| 344 | "libpng16/pngwio.c", |
| 345 | "libpng16/pngwrite.c", |
| 346 | "libpng16/pngwtran.c", |
| 347 | "libpng16/pngwutil.c", |
Tom Sepez | 5ef9faa | 2015-10-12 15:43:01 -0700 | [diff] [blame] | 348 | ] |
thestig | 6d5c56b | 2016-08-03 16:29:18 -0700 | [diff] [blame] | 349 | |
| 350 | defines = [] |
| 351 | cflags = [] |
| 352 | |
| 353 | if (current_cpu == "x86" || current_cpu == "x64") { |
| 354 | sources += [ |
| 355 | "libpng16/contrib/intel/filter_sse2_intrinsics.c", |
| 356 | "libpng16/contrib/intel/intel_init.c", |
| 357 | ] |
| 358 | defines += [ "PNG_INTEL_SSE_OPT=1" ] |
| 359 | } else if ((current_cpu == "arm" || current_cpu == "arm64") && arm_use_neon) { |
| 360 | sources += [ |
| 361 | "libpng16/arm/arm_init.c", |
| 362 | "libpng16/arm/filter_neon_intrinsics.c", |
| 363 | ] |
| 364 | defines += [ |
| 365 | "PNG_ARM_NEON_OPT=2", |
| 366 | "PNG_ARM_NEON_IMPLEMENTATION=1", |
| 367 | ] |
| 368 | } |
| 369 | |
| 370 | if (is_win) { |
| 371 | # Unary minus applied to unsigned type. |
| 372 | cflags += [ "/wd4146" ] |
| 373 | } |
Tom Sepez | 5ef9faa | 2015-10-12 15:43:01 -0700 | [diff] [blame] | 374 | } |
| 375 | |
Tom Sepez | 465ed87 | 2015-12-09 14:55:41 -0800 | [diff] [blame] | 376 | if (pdf_enable_xfa) { |
brettw | e283e47 | 2016-07-21 09:38:22 -0700 | [diff] [blame] | 377 | static_library("fx_tiff") { |
Tom Sepez | 465ed87 | 2015-12-09 14:55:41 -0800 | [diff] [blame] | 378 | configs -= [ "//build/config/compiler:chromium_code" ] |
| 379 | configs += [ |
| 380 | "//build/config/compiler:no_chromium_code", |
weili | 0abe652 | 2016-06-06 14:41:22 -0700 | [diff] [blame] | 381 | ":pdfium_third_party_config", |
Tom Sepez | 465ed87 | 2015-12-09 14:55:41 -0800 | [diff] [blame] | 382 | ] |
weili | 245ae9c | 2016-05-10 09:50:20 -0700 | [diff] [blame] | 383 | if (is_win) { |
| 384 | # Need to undefine the macro since it is redefined in |
| 385 | # tif_ojpeg.c and tif_jpeg.c. |
| 386 | configs -= [ "//build/config/win:lean_and_mean" ] |
| 387 | } |
Tom Sepez | d87b20e | 2016-03-02 16:55:26 -0800 | [diff] [blame] | 388 | deps = [ |
| 389 | "//third_party:jpeg", |
| 390 | ] |
Tom Sepez | 465ed87 | 2015-12-09 14:55:41 -0800 | [diff] [blame] | 391 | sources = [ |
Lei Zhang | 9c2c87d | 2016-01-07 15:52:44 -0800 | [diff] [blame] | 392 | "libtiff/tif_aux.c", |
| 393 | "libtiff/tif_close.c", |
| 394 | "libtiff/tif_codec.c", |
| 395 | "libtiff/tif_color.c", |
| 396 | "libtiff/tif_compress.c", |
| 397 | "libtiff/tif_dir.c", |
| 398 | "libtiff/tif_dirinfo.c", |
| 399 | "libtiff/tif_dirread.c", |
| 400 | "libtiff/tif_dirwrite.c", |
| 401 | "libtiff/tif_dumpmode.c", |
| 402 | "libtiff/tif_error.c", |
| 403 | "libtiff/tif_extension.c", |
| 404 | "libtiff/tif_fax3.c", |
| 405 | "libtiff/tif_fax3sm.c", |
| 406 | "libtiff/tif_flush.c", |
| 407 | "libtiff/tif_getimage.c", |
| 408 | "libtiff/tif_jpeg.c", |
| 409 | "libtiff/tif_luv.c", |
| 410 | "libtiff/tif_lzw.c", |
| 411 | "libtiff/tif_next.c", |
| 412 | "libtiff/tif_ojpeg.c", |
| 413 | "libtiff/tif_open.c", |
| 414 | "libtiff/tif_packbits.c", |
| 415 | "libtiff/tif_pixarlog.c", |
| 416 | "libtiff/tif_predict.c", |
| 417 | "libtiff/tif_print.c", |
| 418 | "libtiff/tif_read.c", |
| 419 | "libtiff/tif_strip.c", |
| 420 | "libtiff/tif_swab.c", |
| 421 | "libtiff/tif_thunder.c", |
| 422 | "libtiff/tif_tile.c", |
| 423 | "libtiff/tif_version.c", |
| 424 | "libtiff/tif_warning.c", |
| 425 | "libtiff/tif_write.c", |
| 426 | "libtiff/tif_zip.c", |
Tom Sepez | d87b20e | 2016-03-02 16:55:26 -0800 | [diff] [blame] | 427 | "libtiff/tiffiop.h", |
| 428 | "libtiff/tiffvers.h", |
Tom Sepez | 465ed87 | 2015-12-09 14:55:41 -0800 | [diff] [blame] | 429 | ] |
| 430 | } |
Tom Sepez | 5ef9faa | 2015-10-12 15:43:01 -0700 | [diff] [blame] | 431 | } |
| 432 | |
Dan Sinclair | 4ca48d1 | 2016-02-24 14:09:55 -0500 | [diff] [blame] | 433 | # TODO(dsinclair): Remove if fixed upstream. https://crbug.com/507712 |
| 434 | config("fx_zlib_warnings") { |
| 435 | visibility = [ ":*" ] |
Lei Zhang | 8ba5b59 | 2016-02-26 12:33:18 -0800 | [diff] [blame] | 436 | if (is_clang) { |
| 437 | cflags = [ "-Wno-shift-negative-value" ] |
| 438 | } |
Dan Sinclair | 4ca48d1 | 2016-02-24 14:09:55 -0500 | [diff] [blame] | 439 | } |
| 440 | |
brettw | e283e47 | 2016-07-21 09:38:22 -0700 | [diff] [blame] | 441 | static_library("fx_zlib") { |
Tom Sepez | 6f93de5 | 2015-06-19 12:57:10 -0700 | [diff] [blame] | 442 | configs -= [ "//build/config/compiler:chromium_code" ] |
| 443 | configs += [ |
| 444 | "//build/config/compiler:no_chromium_code", |
weili | 0abe652 | 2016-06-06 14:41:22 -0700 | [diff] [blame] | 445 | ":pdfium_third_party_config", |
Dan Sinclair | 4ca48d1 | 2016-02-24 14:09:55 -0500 | [diff] [blame] | 446 | |
| 447 | # Must be after no_chromium_code for warning flags to be ordered correctly. |
| 448 | ":fx_zlib_warnings", |
Tom Sepez | 6f93de5 | 2015-06-19 12:57:10 -0700 | [diff] [blame] | 449 | ] |
| 450 | sources = [ |
| 451 | "zlib_v128/adler32.c", |
| 452 | "zlib_v128/compress.c", |
| 453 | "zlib_v128/crc32.c", |
| 454 | "zlib_v128/deflate.c", |
| 455 | "zlib_v128/gzclose.c", |
| 456 | "zlib_v128/gzlib.c", |
| 457 | "zlib_v128/gzread.c", |
| 458 | "zlib_v128/gzwrite.c", |
| 459 | "zlib_v128/infback.c", |
| 460 | "zlib_v128/inffast.c", |
| 461 | "zlib_v128/inflate.c", |
| 462 | "zlib_v128/inftrees.c", |
| 463 | "zlib_v128/trees.c", |
| 464 | "zlib_v128/uncompr.c", |
| 465 | "zlib_v128/zutil.c", |
| 466 | ] |
| 467 | } |
| 468 | |
brettw | e283e47 | 2016-07-21 09:38:22 -0700 | [diff] [blame] | 469 | # Can not be a static library due to lack of .cc files. |
Tom Sepez | 6fd997b | 2015-06-18 17:51:37 -0700 | [diff] [blame] | 470 | source_set("pdfium_base") { |
| 471 | configs -= [ "//build/config/compiler:chromium_code" ] |
| 472 | configs += [ |
| 473 | "//build/config/compiler:no_chromium_code", |
weili | 0abe652 | 2016-06-06 14:41:22 -0700 | [diff] [blame] | 474 | ":pdfium_third_party_config", |
Tom Sepez | 5417266 | 2015-01-09 14:49:47 -0800 | [diff] [blame] | 475 | ] |
Bo Xu | 4c764f3 | 2014-12-19 14:29:17 -0800 | [diff] [blame] | 476 | sources = [ |
Tom Sepez | 3542589 | 2015-02-05 10:03:18 -0800 | [diff] [blame] | 477 | "base/logging.h", |
| 478 | "base/macros.h", |
Tom Sepez | 3542589 | 2015-02-05 10:03:18 -0800 | [diff] [blame] | 479 | "base/numerics/safe_conversions.h", |
| 480 | "base/numerics/safe_conversions_impl.h", |
| 481 | "base/numerics/safe_math.h", |
| 482 | "base/numerics/safe_math_impl.h", |
tsepez | 36eb4bd | 2016-10-03 15:24:27 -0700 | [diff] [blame] | 483 | "base/ptr_util.h", |
Lei Zhang | 5428555 | 2015-10-09 13:57:36 -0700 | [diff] [blame] | 484 | "base/stl_util.h", |
Bo Xu | 4c764f3 | 2014-12-19 14:29:17 -0800 | [diff] [blame] | 485 | ] |
| 486 | } |