Tom Sepez | b545159 | 2016-02-22 16:48:02 -0800 | [diff] [blame] | 1 | # Copyright 2016 The Chromium Authors. All rights reserved. |
John Abd-El-Malek | d68f9a3 | 2014-06-05 12:45:33 -0700 | [diff] [blame] | 2 | # Use of this source code is governed by a BSD-style license that can be |
| 3 | # found in the LICENSE file. |
| 4 | |
Lei Zhang | 81a1ac4 | 2017-12-21 21:49:55 -0800 | [diff] [blame] | 5 | import("//build/config/jumbo.gni") |
Tom Sepez | a32f760 | 2015-01-15 09:34:34 -0800 | [diff] [blame] | 6 | import("//testing/test.gni") |
dsinclair | 038bf0b | 2016-04-30 06:00:05 -0700 | [diff] [blame] | 7 | import("pdfium.gni") |
John Abd-El-Malek | ef4dce4 | 2015-02-02 16:52:07 -0800 | [diff] [blame] | 8 | |
Dominik Röttsches | 4b0671a | 2017-03-30 11:07:43 +0300 | [diff] [blame] | 9 | group("freetype_common") { |
| 10 | public_deps = [] |
| 11 | if (pdf_bundle_freetype) { |
| 12 | public_deps += [ "third_party:fx_freetype" ] |
| 13 | } else { |
| 14 | public_deps += [ "//build/config/freetype" ] |
| 15 | } |
| 16 | } |
| 17 | |
weili | 0abe652 | 2016-06-06 14:41:22 -0700 | [diff] [blame] | 18 | config("pdfium_common_config") { |
John Abd-El-Malek | d68f9a3 | 2014-06-05 12:45:33 -0700 | [diff] [blame] | 19 | cflags = [] |
dsinclair | 6e162b5 | 2017-01-24 11:18:16 -0800 | [diff] [blame] | 20 | ldflags = [] |
Dominik Röttsches | 4b0671a | 2017-03-30 11:07:43 +0300 | [diff] [blame] | 21 | include_dirs = [ "." ] |
John Abd-El-Malek | d68f9a3 | 2014-06-05 12:45:33 -0700 | [diff] [blame] | 22 | defines = [ |
John Abd-El-Malek | 385729b | 2015-02-06 15:51:11 -0800 | [diff] [blame] | 23 | "PNG_PREFIX", |
John Abd-El-Malek | 385729b | 2015-02-06 15:51:11 -0800 | [diff] [blame] | 24 | "PNG_USE_READ_MACROS", |
John Abd-El-Malek | d68f9a3 | 2014-06-05 12:45:33 -0700 | [diff] [blame] | 25 | ] |
| 26 | |
Felix Kauselmann | 8d72a47 | 2019-02-13 23:44:56 +0000 | [diff] [blame] | 27 | if (!use_system_libopenjpeg2) { |
| 28 | defines += [ "OPJ_STATIC" ] |
| 29 | } |
| 30 | |
Ryan Harrison | 9ce75b8 | 2018-06-06 19:45:14 +0000 | [diff] [blame] | 31 | if (pdf_enable_click_logging) { |
| 32 | defines += [ "PDF_ENABLE_CLICK_LOGGING" ] |
| 33 | } |
| 34 | |
Lei Zhang | 75a486e | 2018-11-30 00:04:23 +0000 | [diff] [blame] | 35 | if (pdf_use_skia) { |
| 36 | defines += [ "_SKIA_SUPPORT_" ] |
| 37 | } |
| 38 | |
| 39 | if (pdf_use_skia_paths) { |
| 40 | defines += [ "_SKIA_SUPPORT_PATHS_" ] |
| 41 | } |
| 42 | |
| 43 | if (is_win) { |
| 44 | # Assume UTF-8 by default to avoid code page dependencies. |
| 45 | cflags += [ "/utf-8" ] |
| 46 | } |
| 47 | } |
| 48 | |
| 49 | config("pdfium_public_config") { |
| 50 | defines = [] |
| 51 | |
| 52 | if (pdf_enable_v8) { |
| 53 | defines += [ "PDF_ENABLE_V8" ] |
Lei Zhang | 75a486e | 2018-11-30 00:04:23 +0000 | [diff] [blame] | 54 | |
Lei Zhang | 7b5740a | 2018-11-30 19:02:59 +0000 | [diff] [blame] | 55 | if (pdf_enable_xfa) { |
| 56 | defines += [ "PDF_ENABLE_XFA" ] |
| 57 | if (pdf_enable_xfa_bmp) { |
| 58 | defines += [ "PDF_ENABLE_XFA_BMP" ] |
| 59 | } |
| 60 | if (pdf_enable_xfa_gif) { |
| 61 | defines += [ "PDF_ENABLE_XFA_GIF" ] |
| 62 | } |
| 63 | if (pdf_enable_xfa_png) { |
| 64 | defines += [ "PDF_ENABLE_XFA_PNG" ] |
| 65 | } |
| 66 | if (pdf_enable_xfa_tiff) { |
| 67 | defines += [ "PDF_ENABLE_XFA_TIFF" ] |
| 68 | } |
Tom Sepez | 73c9f3b | 2017-02-27 10:12:59 -0800 | [diff] [blame] | 69 | } |
Tom Sepez | a8a39e2 | 2015-10-12 15:47:07 -0700 | [diff] [blame] | 70 | } |
thestig | 3e454bf | 2016-07-29 16:29:04 -0700 | [diff] [blame] | 71 | |
| 72 | if (pdf_use_win32_gdi) { |
| 73 | defines += [ "PDFIUM_PRINT_TEXT_WITH_GDI" ] |
| 74 | } |
weili | 0abe652 | 2016-06-06 14:41:22 -0700 | [diff] [blame] | 75 | } |
Tom Sepez | a8a39e2 | 2015-10-12 15:47:07 -0700 | [diff] [blame] | 76 | |
weili | 0abe652 | 2016-06-06 14:41:22 -0700 | [diff] [blame] | 77 | config("pdfium_core_config") { |
| 78 | cflags = [] |
Lei Zhang | 75a486e | 2018-11-30 00:04:23 +0000 | [diff] [blame] | 79 | configs = [ |
| 80 | ":pdfium_common_config", |
| 81 | ":pdfium_public_config", |
| 82 | ] |
Lei Zhang | d565ca7 | 2019-01-10 00:23:55 +0000 | [diff] [blame] | 83 | defines = [] |
Ryan Harrison | 3a3a369 | 2018-08-23 21:12:35 +0000 | [diff] [blame] | 84 | if (is_clang) { |
| 85 | cflags += [ "-Wshadow" ] |
| 86 | } |
John Abd-El-Malek | d68f9a3 | 2014-06-05 12:45:33 -0700 | [diff] [blame] | 87 | if (is_linux) { |
Tom Sepez | 25d5be6 | 2015-06-18 17:44:29 -0700 | [diff] [blame] | 88 | if (current_cpu == "x64") { |
John Abd-El-Malek | d68f9a3 | 2014-06-05 12:45:33 -0700 | [diff] [blame] | 89 | defines += [ "_FX_CPU_=_FX_X64_" ] |
| 90 | cflags += [ "-fPIC" ] |
Tom Sepez | 25d5be6 | 2015-06-18 17:44:29 -0700 | [diff] [blame] | 91 | } else if (current_cpu == "x86") { |
John Abd-El-Malek | d68f9a3 | 2014-06-05 12:45:33 -0700 | [diff] [blame] | 92 | defines += [ "_FX_CPU_=_FX_X86_" ] |
| 93 | } |
| 94 | } |
John Abd-El-Malek | d68f9a3 | 2014-06-05 12:45:33 -0700 | [diff] [blame] | 95 | if (is_win) { |
Tom Sepez | 3bb5751 | 2017-03-28 14:09:43 -0700 | [diff] [blame] | 96 | cflags += [ |
Tom Sepez | 5171a27 | 2017-06-01 12:29:09 -0700 | [diff] [blame] | 97 | "/wd4324", |
Tom Sepez | 3bb5751 | 2017-03-28 14:09:43 -0700 | [diff] [blame] | 98 | "/wd4577", |
| 99 | ] |
John Abd-El-Malek | d68f9a3 | 2014-06-05 12:45:33 -0700 | [diff] [blame] | 100 | } |
Will Harris | b6dbcb2 | 2018-08-29 23:28:23 +0000 | [diff] [blame] | 101 | configs += [ "//build/config/compiler:no_size_t_to_int_warning" ] |
weili | dcc29b1 | 2016-05-27 17:58:23 -0700 | [diff] [blame] | 102 | } |
Lei Zhang | 476ac13 | 2015-11-05 20:07:27 -0800 | [diff] [blame] | 103 | |
Lei Zhang | 1987bbf | 2018-10-15 23:12:06 +0000 | [diff] [blame] | 104 | jumbo_source_set("pdfium_public_headers") { |
| 105 | sources = [ |
| 106 | "public/cpp/fpdf_deleters.h", |
| 107 | "public/cpp/fpdf_scopers.h", |
| 108 | "public/fpdf_annot.h", |
| 109 | "public/fpdf_attachment.h", |
| 110 | "public/fpdf_catalog.h", |
| 111 | "public/fpdf_dataavail.h", |
| 112 | "public/fpdf_doc.h", |
| 113 | "public/fpdf_edit.h", |
| 114 | "public/fpdf_ext.h", |
| 115 | "public/fpdf_flatten.h", |
| 116 | "public/fpdf_formfill.h", |
| 117 | "public/fpdf_fwlevent.h", |
| 118 | "public/fpdf_ppo.h", |
| 119 | "public/fpdf_progressive.h", |
| 120 | "public/fpdf_save.h", |
| 121 | "public/fpdf_searchex.h", |
| 122 | "public/fpdf_structtree.h", |
| 123 | "public/fpdf_sysfontinfo.h", |
| 124 | "public/fpdf_text.h", |
| 125 | "public/fpdf_transformpage.h", |
| 126 | "public/fpdfview.h", |
| 127 | ] |
Lei Zhang | 75a486e | 2018-11-30 00:04:23 +0000 | [diff] [blame] | 128 | |
| 129 | public_configs = [ ":pdfium_public_config" ] |
Lei Zhang | 1987bbf | 2018-10-15 23:12:06 +0000 | [diff] [blame] | 130 | } |
| 131 | |
Tom Anderson | 9310106 | 2019-05-07 02:08:43 +0000 | [diff] [blame] | 132 | jumbo_component("pdfium") { |
John Abd-El-Malek | d68f9a3 | 2014-06-05 12:45:33 -0700 | [diff] [blame] | 133 | sources = [ |
Dan Sinclair | 971a674 | 2018-03-28 19:23:25 +0000 | [diff] [blame] | 134 | "fpdfsdk/fpdf_annot.cpp", |
| 135 | "fpdfsdk/fpdf_attachment.cpp", |
| 136 | "fpdfsdk/fpdf_catalog.cpp", |
Dan Sinclair | f766ad2 | 2016-03-14 13:51:24 -0400 | [diff] [blame] | 137 | "fpdfsdk/fpdf_dataavail.cpp", |
Dan Sinclair | 971a674 | 2018-03-28 19:23:25 +0000 | [diff] [blame] | 138 | "fpdfsdk/fpdf_doc.cpp", |
| 139 | "fpdfsdk/fpdf_editimg.cpp", |
| 140 | "fpdfsdk/fpdf_editpage.cpp", |
| 141 | "fpdfsdk/fpdf_editpath.cpp", |
| 142 | "fpdfsdk/fpdf_edittext.cpp", |
Dan Sinclair | f766ad2 | 2016-03-14 13:51:24 -0400 | [diff] [blame] | 143 | "fpdfsdk/fpdf_ext.cpp", |
| 144 | "fpdfsdk/fpdf_flatten.cpp", |
Dan Sinclair | 971a674 | 2018-03-28 19:23:25 +0000 | [diff] [blame] | 145 | "fpdfsdk/fpdf_formfill.cpp", |
Lei Zhang | f7c84e9 | 2018-02-02 00:01:39 +0000 | [diff] [blame] | 146 | "fpdfsdk/fpdf_ppo.cpp", |
Dan Sinclair | f766ad2 | 2016-03-14 13:51:24 -0400 | [diff] [blame] | 147 | "fpdfsdk/fpdf_progressive.cpp", |
Dan Sinclair | 971a674 | 2018-03-28 19:23:25 +0000 | [diff] [blame] | 148 | "fpdfsdk/fpdf_save.cpp", |
Dan Sinclair | f766ad2 | 2016-03-14 13:51:24 -0400 | [diff] [blame] | 149 | "fpdfsdk/fpdf_searchex.cpp", |
thestig | 9067fd6 | 2016-11-23 14:10:06 -0800 | [diff] [blame] | 150 | "fpdfsdk/fpdf_structtree.cpp", |
Dan Sinclair | f766ad2 | 2016-03-14 13:51:24 -0400 | [diff] [blame] | 151 | "fpdfsdk/fpdf_sysfontinfo.cpp", |
Dan Sinclair | 971a674 | 2018-03-28 19:23:25 +0000 | [diff] [blame] | 152 | "fpdfsdk/fpdf_text.cpp", |
Dan Sinclair | f766ad2 | 2016-03-14 13:51:24 -0400 | [diff] [blame] | 153 | "fpdfsdk/fpdf_transformpage.cpp", |
Dan Sinclair | 971a674 | 2018-03-28 19:23:25 +0000 | [diff] [blame] | 154 | "fpdfsdk/fpdf_view.cpp", |
John Abd-El-Malek | d68f9a3 | 2014-06-05 12:45:33 -0700 | [diff] [blame] | 155 | ] |
| 156 | |
| 157 | libs = [] |
weili | 0abe652 | 2016-06-06 14:41:22 -0700 | [diff] [blame] | 158 | configs += [ ":pdfium_core_config" ] |
John Abd-El-Malek | d68f9a3 | 2014-06-05 12:45:33 -0700 | [diff] [blame] | 159 | |
| 160 | deps = [ |
Lei Zhang | 1987bbf | 2018-10-15 23:12:06 +0000 | [diff] [blame] | 161 | ":pdfium_public_headers", |
Lei Zhang | 76833a6 | 2018-10-12 18:53:17 +0000 | [diff] [blame] | 162 | "constants", |
Lei Zhang | 8460088 | 2018-10-12 18:58:21 +0000 | [diff] [blame] | 163 | "core/fdrm", |
| 164 | "core/fpdfapi", |
Lei Zhang | 21ce4ff | 2018-10-15 18:30:49 +0000 | [diff] [blame] | 165 | "core/fpdfapi/edit", |
| 166 | "core/fpdfapi/font", |
| 167 | "core/fpdfapi/page", |
| 168 | "core/fpdfapi/parser", |
| 169 | "core/fpdfapi/render", |
Lei Zhang | 8460088 | 2018-10-12 18:58:21 +0000 | [diff] [blame] | 170 | "core/fpdfdoc", |
| 171 | "core/fpdftext", |
| 172 | "core/fxcodec", |
Lei Zhang | 995374a | 2018-10-12 19:52:04 +0000 | [diff] [blame] | 173 | "core/fxcrt", |
Lei Zhang | 8460088 | 2018-10-12 18:58:21 +0000 | [diff] [blame] | 174 | "core/fxge", |
Lei Zhang | dcab8cf | 2018-10-12 18:39:56 +0000 | [diff] [blame] | 175 | "fpdfsdk", |
| 176 | "fpdfsdk/formfiller", |
Lei Zhang | a7dec32 | 2018-10-12 18:36:51 +0000 | [diff] [blame] | 177 | "fxjs", |
Dan Sinclair | fffc963 | 2016-03-08 08:57:05 -0500 | [diff] [blame] | 178 | "third_party:pdfium_base", |
Dan Sinclair | 844d79e | 2018-02-16 03:46:26 +0000 | [diff] [blame] | 179 | "third_party:skia_shared", |
John Abd-El-Malek | d68f9a3 | 2014-06-05 12:45:33 -0700 | [diff] [blame] | 180 | ] |
| 181 | |
thestig | 73c4856 | 2016-09-06 14:07:17 -0700 | [diff] [blame] | 182 | public_deps = [ |
Lei Zhang | 1987bbf | 2018-10-15 23:12:06 +0000 | [diff] [blame] | 183 | ":pdfium_public_headers", |
Lei Zhang | 995374a | 2018-10-12 19:52:04 +0000 | [diff] [blame] | 184 | "core/fxcrt", |
thestig | 73c4856 | 2016-09-06 14:07:17 -0700 | [diff] [blame] | 185 | ] |
Tom Sepez | a8a39e2 | 2015-10-12 15:47:07 -0700 | [diff] [blame] | 186 | |
Tom Anderson | 9310106 | 2019-05-07 02:08:43 +0000 | [diff] [blame] | 187 | defines = [ "FPDF_IMPLEMENTATION" ] |
| 188 | |
Lei Zhang | d7f51c7 | 2018-10-15 17:47:57 +0000 | [diff] [blame] | 189 | if (pdf_enable_xfa) { |
| 190 | deps += [ |
| 191 | "fpdfsdk/fpdfxfa", |
Lei Zhang | 21ce4ff | 2018-10-15 18:30:49 +0000 | [diff] [blame] | 192 | "fxbarcode", |
Lei Zhang | d7f51c7 | 2018-10-15 17:47:57 +0000 | [diff] [blame] | 193 | "xfa/fxfa", |
| 194 | "xfa/fxfa/parser", |
| 195 | ] |
Lei Zhang | d7f51c7 | 2018-10-15 17:47:57 +0000 | [diff] [blame] | 196 | } |
| 197 | |
John Abd-El-Malek | d68f9a3 | 2014-06-05 12:45:33 -0700 | [diff] [blame] | 198 | if (is_win) { |
Dan Sinclair | bc6c672 | 2015-10-22 14:58:54 -0400 | [diff] [blame] | 199 | libs += [ |
| 200 | "advapi32.lib", |
| 201 | "gdi32.lib", |
| 202 | "user32.lib", |
| 203 | ] |
John Abd-El-Malek | d68f9a3 | 2014-06-05 12:45:33 -0700 | [diff] [blame] | 204 | } |
| 205 | |
| 206 | if (is_mac) { |
Dan Sinclair | bc6c672 | 2015-10-22 14:58:54 -0400 | [diff] [blame] | 207 | libs += [ |
| 208 | "AppKit.framework", |
| 209 | "CoreFoundation.framework", |
| 210 | ] |
John Abd-El-Malek | d68f9a3 | 2014-06-05 12:45:33 -0700 | [diff] [blame] | 211 | } |
John Abd-El-Malek | ef4dce4 | 2015-02-02 16:52:07 -0800 | [diff] [blame] | 212 | |
dan sinclair | fa171d2 | 2017-03-26 22:38:17 -0400 | [diff] [blame] | 213 | if (pdf_is_complete_lib) { |
| 214 | complete_static_lib = true |
Tom Anderson | da89ac4 | 2018-03-21 03:56:15 +0000 | [diff] [blame] | 215 | configs -= [ "//build/config/compiler:thin_archive" ] |
dan sinclair | fa171d2 | 2017-03-26 22:38:17 -0400 | [diff] [blame] | 216 | } |
Tom Anderson | 9310106 | 2019-05-07 02:08:43 +0000 | [diff] [blame] | 217 | |
| 218 | if (is_component_build) { |
| 219 | deps += [ "testing/fuzzers:fuzzer_impls" ] |
| 220 | } |
John Abd-El-Malek | d68f9a3 | 2014-06-05 12:45:33 -0700 | [diff] [blame] | 221 | } |
| 222 | |
Tom Sepez | d831dc7 | 2015-10-19 16:04:22 -0700 | [diff] [blame] | 223 | # Targets below this are only visible within this file (and to the |
| 224 | # top-level gn_visibility target used to help gn_all build everything). |
| 225 | visibility = [ |
| 226 | ":*", |
| 227 | "//:gn_visibility", |
| 228 | ] |
John Abd-El-Malek | d68f9a3 | 2014-06-05 12:45:33 -0700 | [diff] [blame] | 229 | |
Lei Zhang | f03f781 | 2018-10-15 23:48:29 +0000 | [diff] [blame] | 230 | group("pdfium_unittest_deps") { |
Lei Zhang | dbaf3b8 | 2018-10-11 17:02:43 +0000 | [diff] [blame] | 231 | testonly = true |
Lei Zhang | f03f781 | 2018-10-15 23:48:29 +0000 | [diff] [blame] | 232 | public_deps = [ |
| 233 | "core/fxcrt", |
Lei Zhang | 1929d6e | 2018-10-15 23:51:28 +0000 | [diff] [blame] | 234 | "testing:test_support", |
Tom Sepez | 16b9d77 | 2017-04-17 09:07:48 -0700 | [diff] [blame] | 235 | "//testing/gmock", |
Dan Sinclair | fffc963 | 2016-03-08 08:57:05 -0500 | [diff] [blame] | 236 | "//testing/gtest", |
Tom Sepez | 04681f3 | 2015-01-09 13:59:19 -0800 | [diff] [blame] | 237 | ] |
Lei Zhang | f03f781 | 2018-10-15 23:48:29 +0000 | [diff] [blame] | 238 | visibility += [ |
| 239 | "core/*", |
| 240 | "fpdfsdk/*", |
| 241 | "fxbarcode/*", |
| 242 | "fxjs/*", |
| 243 | "xfa/*", |
| 244 | ] |
| 245 | } |
| 246 | |
| 247 | test("pdfium_unittests") { |
| 248 | testonly = true |
| 249 | sources = [ |
| 250 | "testing/unit_test_main.cpp", |
| 251 | ] |
| 252 | deps = [ |
| 253 | "core/fdrm:unittests", |
| 254 | "core/fpdfapi/edit:unittests", |
| 255 | "core/fpdfapi/font:unittests", |
| 256 | "core/fpdfapi/page:unittests", |
| 257 | "core/fpdfapi/parser:unittests", |
Lei Zhang | ac52015 | 2018-11-09 22:58:56 +0000 | [diff] [blame] | 258 | "core/fpdfapi/render:unittests", |
Lei Zhang | f03f781 | 2018-10-15 23:48:29 +0000 | [diff] [blame] | 259 | "core/fpdfdoc:unittests", |
| 260 | "core/fpdftext:unittests", |
| 261 | "core/fxcodec:unittests", |
| 262 | "core/fxcrt", |
| 263 | "core/fxcrt:unittests", |
Lei Zhang | f03f781 | 2018-10-15 23:48:29 +0000 | [diff] [blame] | 264 | "core/fxge:unittests", |
| 265 | "fpdfsdk:unittests", |
Lei Zhang | 1929d6e | 2018-10-15 23:51:28 +0000 | [diff] [blame] | 266 | "testing:test_support", |
Lei Zhang | 220ef3d | 2019-02-05 20:40:54 +0000 | [diff] [blame] | 267 | "testing:unit_test_support", |
Lei Zhang | f03f781 | 2018-10-15 23:48:29 +0000 | [diff] [blame] | 268 | "//testing/gmock", |
| 269 | "//testing/gtest", |
| 270 | ] |
| 271 | configs += [ ":pdfium_core_config" ] |
Lei Zhang | a996ff4 | 2018-10-15 23:49:48 +0000 | [diff] [blame] | 272 | |
| 273 | if (is_android) { |
| 274 | use_raw_android_executable = true |
| 275 | } |
| 276 | |
| 277 | if (pdf_enable_v8) { |
| 278 | configs += [ "//v8:external_startup_data" ] |
| 279 | deps += [ |
| 280 | "fxjs:unittests", |
| 281 | "//v8", |
| 282 | ] |
| 283 | } |
| 284 | |
Tom Sepez | d2e023b | 2015-12-08 14:36:16 -0800 | [diff] [blame] | 285 | if (pdf_enable_xfa) { |
Lei Zhang | f03f781 | 2018-10-15 23:48:29 +0000 | [diff] [blame] | 286 | deps += [ |
| 287 | "fxbarcode:unittests", |
| 288 | "xfa/fde:unittests", |
Lei Zhang | f03f781 | 2018-10-15 23:48:29 +0000 | [diff] [blame] | 289 | "xfa/fgas:unittests", |
Lei Zhang | a0c3680 | 2018-12-15 01:00:05 +0000 | [diff] [blame] | 290 | "xfa/fgas/layout:unittests", |
Lei Zhang | f03f781 | 2018-10-15 23:48:29 +0000 | [diff] [blame] | 291 | "xfa/fwl:unittests", |
| 292 | "xfa/fxfa:unittests", |
| 293 | "xfa/fxfa/fm2js:unittests", |
| 294 | "xfa/fxfa/parser:unittests", |
Tom Sepez | d2e023b | 2015-12-08 14:36:16 -0800 | [diff] [blame] | 295 | ] |
| 296 | } |
Tom Sepez | 04681f3 | 2015-01-09 13:59:19 -0800 | [diff] [blame] | 297 | } |
Tom Sepez | 1b1bb49 | 2015-01-22 17:36:32 -0800 | [diff] [blame] | 298 | |
Lei Zhang | 1929d6e | 2018-10-15 23:51:28 +0000 | [diff] [blame] | 299 | group("pdfium_embeddertest_deps") { |
| 300 | testonly = true |
| 301 | public_deps = [ |
| 302 | ":pdfium_public_headers", |
| 303 | "core/fxcrt", |
| 304 | "testing:embedder_test_support", |
| 305 | "testing:test_support", |
| 306 | "//testing/gmock", |
| 307 | "//testing/gtest", |
| 308 | ] |
| 309 | visibility += [ |
| 310 | "core/*", |
| 311 | "fpdfsdk/*", |
| 312 | "fxjs/*", |
| 313 | "xfa/*", |
| 314 | ] |
| 315 | } |
| 316 | |
Tom Sepez | 1b1bb49 | 2015-01-22 17:36:32 -0800 | [diff] [blame] | 317 | test("pdfium_embeddertests") { |
Lei Zhang | dbaf3b8 | 2018-10-11 17:02:43 +0000 | [diff] [blame] | 318 | testonly = true |
Tom Sepez | 1b1bb49 | 2015-01-22 17:36:32 -0800 | [diff] [blame] | 319 | sources = [ |
Dan Sinclair | 5553d8b | 2018-01-03 09:44:28 -0500 | [diff] [blame] | 320 | "testing/embedder_test_main.cpp", |
Tom Sepez | 1b1bb49 | 2015-01-22 17:36:32 -0800 | [diff] [blame] | 321 | ] |
| 322 | deps = [ |
Tom Sepez | 452b4f3 | 2015-10-13 09:27:27 -0700 | [diff] [blame] | 323 | ":pdfium", |
Lei Zhang | 1929d6e | 2018-10-15 23:51:28 +0000 | [diff] [blame] | 324 | "core/fpdfapi/edit:embeddertests", |
Lei Zhang | 1929d6e | 2018-10-15 23:51:28 +0000 | [diff] [blame] | 325 | "core/fpdfapi/parser:embeddertests", |
| 326 | "core/fpdfapi/render:embeddertests", |
| 327 | "core/fxcodec:embeddertests", |
| 328 | "core/fxge:embeddertests", |
| 329 | "fpdfsdk:embeddertests", |
| 330 | "fpdfsdk/pwl:embeddertests", |
| 331 | "testing:test_support", |
Lei Zhang | 76833a6 | 2018-10-12 18:53:17 +0000 | [diff] [blame] | 332 | "testing/image_diff", |
Dan Sinclair | fffc963 | 2016-03-08 08:57:05 -0500 | [diff] [blame] | 333 | "//testing/gmock", |
| 334 | "//testing/gtest", |
Tom Sepez | 1b1bb49 | 2015-01-22 17:36:32 -0800 | [diff] [blame] | 335 | ] |
dsinclair | 685bb88 | 2016-04-20 07:32:39 -0700 | [diff] [blame] | 336 | include_dirs = [ "testing/gmock/include" ] |
thestig | c65e11e | 2016-08-30 21:56:33 -0700 | [diff] [blame] | 337 | configs += [ ":pdfium_core_config" ] |
| 338 | |
Lei Zhang | a996ff4 | 2018-10-15 23:49:48 +0000 | [diff] [blame] | 339 | if (is_android) { |
| 340 | ignore_all_data_deps = true |
| 341 | use_raw_android_executable = true |
| 342 | } |
| 343 | |
Tom Sepez | 452b4f3 | 2015-10-13 09:27:27 -0700 | [diff] [blame] | 344 | if (pdf_enable_v8) { |
Lei Zhang | 1929d6e | 2018-10-15 23:51:28 +0000 | [diff] [blame] | 345 | deps += [ |
| 346 | "fxjs:embeddertests", |
| 347 | "//v8", |
Lei Zhang | 1ac47eb | 2015-12-21 11:04:44 -0800 | [diff] [blame] | 348 | ] |
Jochen Eisinger | 7ed503d | 2015-12-10 14:38:06 +0100 | [diff] [blame] | 349 | configs += [ "//v8:external_startup_data" ] |
Tom Sepez | 452b4f3 | 2015-10-13 09:27:27 -0700 | [diff] [blame] | 350 | } |
Lei Zhang | a996ff4 | 2018-10-15 23:49:48 +0000 | [diff] [blame] | 351 | |
Dan Sinclair | 14aacd5 | 2017-05-18 14:11:29 -0400 | [diff] [blame] | 352 | if (pdf_enable_xfa) { |
Lei Zhang | 1929d6e | 2018-10-15 23:51:28 +0000 | [diff] [blame] | 353 | deps += [ |
Lei Zhang | 8345825 | 2019-03-14 20:07:20 +0000 | [diff] [blame] | 354 | "fpdfsdk/fpdfxfa:embeddertests", |
Lei Zhang | 1929d6e | 2018-10-15 23:51:28 +0000 | [diff] [blame] | 355 | "xfa/fwl:embeddertests", |
Tom Sepez | 6e4710a | 2019-05-08 17:23:18 +0000 | [diff] [blame^] | 356 | "xfa/fxfa/layout:embeddertests", |
Lei Zhang | 1929d6e | 2018-10-15 23:51:28 +0000 | [diff] [blame] | 357 | "xfa/fxfa/parser:embeddertests", |
Dan Sinclair | 14aacd5 | 2017-05-18 14:11:29 -0400 | [diff] [blame] | 358 | ] |
| 359 | } |
Tom Sepez | 1b1bb49 | 2015-01-22 17:36:32 -0800 | [diff] [blame] | 360 | } |
dsinclair | 685bb88 | 2016-04-20 07:32:39 -0700 | [diff] [blame] | 361 | |
Tom Sepez | 1d78f4d | 2018-10-22 20:17:38 +0000 | [diff] [blame] | 362 | executable("pdfium_diff") { |
| 363 | testonly = true |
| 364 | sources = [ |
| 365 | "testing/image_diff/image_diff.cpp", |
| 366 | ] |
| 367 | deps = [ |
| 368 | ":pdfium", |
Tom Anderson | 9310106 | 2019-05-07 02:08:43 +0000 | [diff] [blame] | 369 | "core/fxcrt", |
Tom Sepez | 1d78f4d | 2018-10-22 20:17:38 +0000 | [diff] [blame] | 370 | "testing/image_diff", |
| 371 | "//build/win:default_exe_manifest", |
| 372 | ] |
| 373 | configs -= [ "//build/config/compiler:chromium_code" ] |
| 374 | configs += [ "//build/config/compiler:no_chromium_code" ] |
| 375 | configs += [ ":pdfium_core_config" ] |
| 376 | } |
| 377 | |
dsinclair | 685bb88 | 2016-04-20 07:32:39 -0700 | [diff] [blame] | 378 | if (pdf_is_standalone) { |
Lei Zhang | 0a62427 | 2018-10-11 16:58:32 +0000 | [diff] [blame] | 379 | jumbo_source_set("samples") { |
dsinclair | 685bb88 | 2016-04-20 07:32:39 -0700 | [diff] [blame] | 380 | testonly = true |
| 381 | deps = [ |
| 382 | "//samples", |
| 383 | ] |
| 384 | } |
Lei Zhang | 143959d | 2017-06-22 12:20:58 -0700 | [diff] [blame] | 385 | |
thestig | 62114cf | 2016-11-08 12:59:30 -0800 | [diff] [blame] | 386 | group("fuzzers") { |
| 387 | testonly = true |
| 388 | deps = [ |
Lei Zhang | fa4d93a | 2018-05-25 21:47:19 +0000 | [diff] [blame] | 389 | "//testing/fuzzers", |
thestig | 62114cf | 2016-11-08 12:59:30 -0800 | [diff] [blame] | 390 | ] |
| 391 | } |
dsinclair | 685bb88 | 2016-04-20 07:32:39 -0700 | [diff] [blame] | 392 | } |
Lei Zhang | f02c8bf | 2017-04-01 01:35:01 -0700 | [diff] [blame] | 393 | |
| 394 | group("pdfium_all") { |
| 395 | testonly = true |
| 396 | deps = [ |
Tom Sepez | 1d78f4d | 2018-10-22 20:17:38 +0000 | [diff] [blame] | 397 | ":pdfium_diff", |
Lei Zhang | f02c8bf | 2017-04-01 01:35:01 -0700 | [diff] [blame] | 398 | ":pdfium_embeddertests", |
| 399 | ":pdfium_unittests", |
| 400 | ] |
| 401 | if (pdf_is_standalone) { |
| 402 | deps += [ |
| 403 | ":fuzzers", |
| 404 | ":samples", |
| 405 | ] |
| 406 | } |
| 407 | } |