blob: 4edba9f4338dd97f4dbe9bfaf8090cefa9ceeb02 [file] [log] [blame]
K. Moon8636cff2022-11-02 18:45:43 +00001# Copyright 2016 The PDFium Authors
John Abd-El-Malekd68f9a32014-06-05 12:45:33 -07002# Use of this source code is governed by a BSD-style license that can be
3# found in the LICENSE file.
4
Tom Sepezc026b202021-04-08 22:06:57 +00005import("//build/config/clang/clang.gni")
K. Moon4948d0e2022-11-11 18:54:40 +00006import("//build/config/gclient_args.gni")
Tom Sepeza32f7602015-01-15 09:34:34 -08007import("//testing/test.gni")
dsinclair038bf0b2016-04-30 06:00:05 -07008import("pdfium.gni")
John Abd-El-Malekef4dce42015-02-02 16:52:07 -08009
Tom Sepezc3451da2022-08-29 17:52:22 +000010group("default") {
11 testonly = true
Tom Sepezd9e3f3f2023-07-24 23:29:11 +000012 deps = [ ":pdfium" ]
13 if (pdf_is_standalone) {
14 deps += [ ":pdfium_all" ]
15 }
Tom Sepezc3451da2022-08-29 17:52:22 +000016}
17
Dominik Röttsches4b0671a2017-03-30 11:07:43 +030018group("freetype_common") {
19 public_deps = []
20 if (pdf_bundle_freetype) {
21 public_deps += [ "third_party:fx_freetype" ]
22 } else {
23 public_deps += [ "//build/config/freetype" ]
24 }
25}
26
weili0abe6522016-06-06 14:41:22 -070027config("pdfium_common_config") {
John Abd-El-Malekd68f9a32014-06-05 12:45:33 -070028 cflags = []
Lei Zhang46d645f2021-10-11 21:13:27 +000029 cflags_cc = []
dsinclair6e162b52017-01-24 11:18:16 -080030 ldflags = []
Dominik Röttsches4b0671a2017-03-30 11:07:43 +030031 include_dirs = [ "." ]
K. Moone6660322022-11-15 23:24:08 +000032 defines = []
John Abd-El-Malekd68f9a32014-06-05 12:45:33 -070033
Felix Kauselmann8d72a472019-02-13 23:44:56 +000034 if (!use_system_libopenjpeg2) {
35 defines += [ "OPJ_STATIC" ]
36 }
37
Ryan Harrison9ce75b82018-06-06 19:45:14 +000038 if (pdf_enable_click_logging) {
39 defines += [ "PDF_ENABLE_CLICK_LOGGING" ]
40 }
41
Alan Screenf22325c2024-01-31 23:51:20 +000042 if (pdf_use_skia && pdf_enable_fontations) {
43 defines += [ "PDF_ENABLE_FONTATIONS" ]
Lei Zhang75a486e2018-11-30 00:04:23 +000044 }
45
Tom Sepez907b4592023-01-26 20:46:39 +000046 if (pdf_use_partition_alloc) {
47 defines += [ "PDF_USE_PARTITION_ALLOC" ]
48 }
49
Lei Zhang75a486e2018-11-30 00:04:23 +000050 if (is_win) {
51 # Assume UTF-8 by default to avoid code page dependencies.
52 cflags += [ "/utf-8" ]
53 }
Lei Zhang85e7dc62020-07-30 19:59:51 +000054
55 if (is_clang) {
56 # Override -Wno-c++11-narrowing.
57 cflags += [ "-Wc++11-narrowing" ]
Tom Sepezc026b202021-04-08 22:06:57 +000058
Tom Sepez04961452022-01-12 21:11:43 +000059 # May flag some issues when converting int to size_t.
60 cflags += [ "-Wtautological-unsigned-zero-compare" ]
Lei Zhang85e7dc62020-07-30 19:59:51 +000061 }
62
63 if (!is_win && !is_clang) {
Lei Zhang0f286c22022-04-30 01:33:32 +000064 cflags += [
65 # Override -Wno-narrowing for GCC.
66 "-Wnarrowing",
67
68 # GCC assumes that control can get past an exhaustive switch and then
69 # warns if there's no return there.
70 "-Wno-return-type",
71 ]
Lei Zhang85e7dc62020-07-30 19:59:51 +000072 }
Tom Sepezf0dc8642024-04-10 01:01:47 +000073
74 if (clang_use_chrome_plugins) {
Tom Sepezf0dc8642024-04-10 01:01:47 +000075 # Catch misuse of C-style pointers.
76 # TODO(crbug.com/1320670): enable for non-debug builds once this stops
77 # interfering with code generation.
78 # TODO(tsepez): enable for windows, too.
79 if (is_debug && !is_win) {
80 cflags += [
81 "-Xclang",
Takashi Sakamoto6b9d58e2024-06-24 17:28:22 +000082 "-plugin-arg-raw-ptr-plugin",
Tom Sepezf0dc8642024-04-10 01:01:47 +000083 "-Xclang",
84 "check-raw-ptr-fields",
85
86 "-Xclang",
Takashi Sakamoto6b9d58e2024-06-24 17:28:22 +000087 "-plugin-arg-raw-ptr-plugin",
Tom Sepezf0dc8642024-04-10 01:01:47 +000088 "-Xclang",
89 "raw-ptr-exclude-path=public",
90
91 "-Xclang",
Takashi Sakamoto6b9d58e2024-06-24 17:28:22 +000092 "-plugin-arg-raw-ptr-plugin",
Tom Sepezf0dc8642024-04-10 01:01:47 +000093 "-Xclang",
94 "raw-ptr-exclude-path=test",
95
96 # TODO(tsepez): enforce raw_ref<> as well.
97 # "-Xclang",
Takashi Sakamoto6b9d58e2024-06-24 17:28:22 +000098 # "-plugin-arg-raw-ptr-plugin",
Tom Sepezf0dc8642024-04-10 01:01:47 +000099 # "-Xclang",
100 # "check-raw-ref-fields",
101 ]
102 defines += [ "PDF_ENABLE_UNOWNED_PTR_EXCLUSION" ]
103 }
104
105 # Catch misuse of cppgc in XFA.
106 if (pdf_enable_xfa) {
107 cflags += [
108 "-Xclang",
109 "-add-plugin",
110 "-Xclang",
111 "blink-gc-plugin",
112 ]
113
114 # Disable GC plugin forbidding off-heap collections of GCed:
115 cflags += [
116 "-Xclang",
117 "-plugin-arg-blink-gc-plugin",
118 "-Xclang",
119 "disable-off-heap-collections-of-gced-check",
120 ]
121 }
122 }
Lei Zhang75a486e2018-11-30 00:04:23 +0000123}
124
Tom Anderson0db20e02019-05-14 22:38:47 +0000125config("pdfium_implementation_config") {
126 defines = [ "FPDF_IMPLEMENTATION" ]
127 visibility = [ ":pdfium_public_headers" ]
128}
129
Lei Zhang75a486e2018-11-30 00:04:23 +0000130config("pdfium_public_config") {
131 defines = []
132
133 if (pdf_enable_v8) {
134 defines += [ "PDF_ENABLE_V8" ]
Lei Zhang75a486e2018-11-30 00:04:23 +0000135
Lei Zhang7b5740a2018-11-30 19:02:59 +0000136 if (pdf_enable_xfa) {
137 defines += [ "PDF_ENABLE_XFA" ]
138 if (pdf_enable_xfa_bmp) {
139 defines += [ "PDF_ENABLE_XFA_BMP" ]
140 }
141 if (pdf_enable_xfa_gif) {
142 defines += [ "PDF_ENABLE_XFA_GIF" ]
143 }
144 if (pdf_enable_xfa_png) {
145 defines += [ "PDF_ENABLE_XFA_PNG" ]
146 }
147 if (pdf_enable_xfa_tiff) {
148 defines += [ "PDF_ENABLE_XFA_TIFF" ]
149 }
Tom Sepez73c9f3b2017-02-27 10:12:59 -0800150 }
Tom Sepeza8a39e22015-10-12 15:47:07 -0700151 }
Alan Screenf22325c2024-01-31 23:51:20 +0000152
153 if (pdf_use_skia) {
154 defines += [ "PDF_USE_SKIA" ]
155 }
weili0abe6522016-06-06 14:41:22 -0700156}
Tom Sepeza8a39e22015-10-12 15:47:07 -0700157
weili0abe6522016-06-06 14:41:22 -0700158config("pdfium_core_config") {
159 cflags = []
Lei Zhang75a486e2018-11-30 00:04:23 +0000160 configs = [
161 ":pdfium_common_config",
162 ":pdfium_public_config",
Lei Zhangf4d4fee2019-12-04 18:06:13 +0000163 "//build/config/compiler:noshadowing",
Lei Zhang75a486e2018-11-30 00:04:23 +0000164 ]
Lei Zhangd565ca72019-01-10 00:23:55 +0000165 defines = []
Lei Zhangc207ee22023-04-28 20:11:23 +0000166 if (is_clang) {
167 cflags += [ "-Wcovered-switch-default" ]
168 }
weilidcc29b12016-05-27 17:58:23 -0700169}
Lei Zhang476ac132015-11-05 20:07:27 -0800170
Lei Zhang7a5f8ee2021-04-24 00:19:10 +0000171config("pdfium_strict_config") {
172 configs = [
173 ":pdfium_core_config",
174 "//build/config/compiler:wexit_time_destructors",
175 "//build/config/compiler:wglobal_constructors",
176 ]
177}
178
Tom Sepez926cd3c2022-02-14 20:38:35 +0000179config("pdfium_noshorten_config") {
180 cflags = []
181 if (is_clang) {
182 cflags += [ "-Wshorten-64-to-32" ]
183 }
184}
185
Daniel Hosseinian0fab9e62019-11-01 19:31:49 +0000186source_set("pdfium_public_headers_impl") {
Lei Zhang1987bbf2018-10-15 23:12:06 +0000187 sources = [
188 "public/cpp/fpdf_deleters.h",
189 "public/cpp/fpdf_scopers.h",
190 "public/fpdf_annot.h",
191 "public/fpdf_attachment.h",
192 "public/fpdf_catalog.h",
193 "public/fpdf_dataavail.h",
194 "public/fpdf_doc.h",
195 "public/fpdf_edit.h",
196 "public/fpdf_ext.h",
197 "public/fpdf_flatten.h",
198 "public/fpdf_formfill.h",
199 "public/fpdf_fwlevent.h",
Lei Zhang25661d12019-08-01 21:57:23 +0000200 "public/fpdf_javascript.h",
Lei Zhang1987bbf2018-10-15 23:12:06 +0000201 "public/fpdf_ppo.h",
202 "public/fpdf_progressive.h",
203 "public/fpdf_save.h",
204 "public/fpdf_searchex.h",
Miklos Vajna2b76bf92020-06-25 21:35:26 +0000205 "public/fpdf_signature.h",
Lei Zhang1987bbf2018-10-15 23:12:06 +0000206 "public/fpdf_structtree.h",
207 "public/fpdf_sysfontinfo.h",
208 "public/fpdf_text.h",
209 "public/fpdf_transformpage.h",
210 "public/fpdfview.h",
211 ]
Tom Anderson0db20e02019-05-14 22:38:47 +0000212}
Lei Zhang75a486e2018-11-30 00:04:23 +0000213
Tom Anderson0db20e02019-05-14 22:38:47 +0000214group("pdfium_public_headers") {
Lei Zhang40f9d722020-01-24 00:18:11 +0000215 public_deps = [ ":pdfium_public_headers_impl" ]
Tom Anderson0db20e02019-05-14 22:38:47 +0000216 public_configs = [
217 ":pdfium_public_config",
218 ":pdfium_implementation_config",
219 ]
Lei Zhang1987bbf2018-10-15 23:12:06 +0000220}
221
Daniel Hosseinian0fab9e62019-11-01 19:31:49 +0000222component("pdfium") {
Alan Screen68b78712023-01-28 03:59:30 +0000223 output_name = "pdfium"
John Abd-El-Malekd68f9a32014-06-05 12:45:33 -0700224 libs = []
Lei Zhang7a5f8ee2021-04-24 00:19:10 +0000225 configs += [ ":pdfium_strict_config" ]
Tom Anderson0db20e02019-05-14 22:38:47 +0000226 public_configs = [ ":pdfium_public_config" ]
John Abd-El-Malekd68f9a32014-06-05 12:45:33 -0700227
228 deps = [
Lei Zhang76833a62018-10-12 18:53:17 +0000229 "constants",
Lei Zhang21ce4ff2018-10-15 18:30:49 +0000230 "core/fpdfapi/page",
231 "core/fpdfapi/parser",
Lei Zhang84600882018-10-12 18:58:21 +0000232 "core/fpdfdoc",
Lei Zhang84600882018-10-12 18:58:21 +0000233 "core/fxcodec",
Lei Zhang995374a2018-10-12 19:52:04 +0000234 "core/fxcrt",
Lei Zhang84600882018-10-12 18:58:21 +0000235 "core/fxge",
Lei Zhangdcab8cf2018-10-12 18:39:56 +0000236 "fpdfsdk",
237 "fpdfsdk/formfiller",
Lei Zhanga7dec322018-10-12 18:36:51 +0000238 "fxjs",
John Abd-El-Malekd68f9a32014-06-05 12:45:33 -0700239 ]
240
thestig73c48562016-09-06 14:07:17 -0700241 public_deps = [
Tom Anderson0db20e02019-05-14 22:38:47 +0000242 ":pdfium_public_headers_impl",
Lei Zhang995374a2018-10-12 19:52:04 +0000243 "core/fxcrt",
thestig73c48562016-09-06 14:07:17 -0700244 ]
Tom Sepeza8a39e22015-10-12 15:47:07 -0700245
Lei Zhangd7f51c72018-10-15 17:47:57 +0000246 if (pdf_enable_xfa) {
247 deps += [
248 "fpdfsdk/fpdfxfa",
249 "xfa/fxfa",
250 "xfa/fxfa/parser",
251 ]
Lei Zhangd7f51c72018-10-15 17:47:57 +0000252 }
253
John Abd-El-Malekd68f9a32014-06-05 12:45:33 -0700254 if (is_win) {
Dan Sinclairbc6c6722015-10-22 14:58:54 -0400255 libs += [
256 "advapi32.lib",
257 "gdi32.lib",
258 "user32.lib",
259 ]
John Abd-El-Malekd68f9a32014-06-05 12:45:33 -0700260 }
261
262 if (is_mac) {
Sylvain Defresne7e78b972020-07-07 18:02:25 +0000263 frameworks = [
Dan Sinclairbc6c6722015-10-22 14:58:54 -0400264 "AppKit.framework",
265 "CoreFoundation.framework",
266 ]
John Abd-El-Malekd68f9a32014-06-05 12:45:33 -0700267 }
John Abd-El-Malekef4dce42015-02-02 16:52:07 -0800268
dan sinclairfa171d22017-03-26 22:38:17 -0400269 if (pdf_is_complete_lib) {
Daniel Hosseinian1d0d0be2019-11-04 21:22:24 +0000270 static_component_type = "static_library"
dan sinclairfa171d22017-03-26 22:38:17 -0400271 complete_static_lib = true
Tom Andersonda89ac42018-03-21 03:56:15 +0000272 configs -= [ "//build/config/compiler:thin_archive" ]
dan sinclairfa171d22017-03-26 22:38:17 -0400273 }
John Abd-El-Malekd68f9a32014-06-05 12:45:33 -0700274}
275
Dirk Prankef9562f52023-02-28 01:30:53 +0000276# Targets below this are only visible within this file.
277visibility = [ ":*" ]
John Abd-El-Malekd68f9a32014-06-05 12:45:33 -0700278
Lei Zhangf03f7812018-10-15 23:48:29 +0000279group("pdfium_unittest_deps") {
Lei Zhangdbaf3b82018-10-11 17:02:43 +0000280 testonly = true
Lei Zhangf03f7812018-10-15 23:48:29 +0000281 public_deps = [
282 "core/fxcrt",
Tom Sepez22818532020-07-22 20:40:56 +0000283 "testing:unit_test_support",
Tom Sepez16b9d772017-04-17 09:07:48 -0700284 "//testing/gmock",
Dan Sinclairfffc9632016-03-08 08:57:05 -0500285 "//testing/gtest",
Tom Sepez04681f32015-01-09 13:59:19 -0800286 ]
Lei Zhangf03f7812018-10-15 23:48:29 +0000287 visibility += [
288 "core/*",
289 "fpdfsdk/*",
290 "fxbarcode/*",
291 "fxjs/*",
292 "xfa/*",
293 ]
294}
295
296test("pdfium_unittests") {
297 testonly = true
Lei Zhang40f9d722020-01-24 00:18:11 +0000298 sources = [ "testing/unit_test_main.cpp" ]
Lei Zhangf03f7812018-10-15 23:48:29 +0000299 deps = [
300 "core/fdrm:unittests",
301 "core/fpdfapi/edit:unittests",
302 "core/fpdfapi/font:unittests",
303 "core/fpdfapi/page:unittests",
304 "core/fpdfapi/parser:unittests",
Lei Zhangac520152018-11-09 22:58:56 +0000305 "core/fpdfapi/render:unittests",
Lei Zhangf03f7812018-10-15 23:48:29 +0000306 "core/fpdfdoc:unittests",
307 "core/fpdftext:unittests",
308 "core/fxcodec:unittests",
309 "core/fxcrt",
310 "core/fxcrt:unittests",
Lei Zhangf03f7812018-10-15 23:48:29 +0000311 "core/fxge:unittests",
312 "fpdfsdk:unittests",
Lei Zhang220ef3d2019-02-05 20:40:54 +0000313 "testing:unit_test_support",
Lei Zhangf03f7812018-10-15 23:48:29 +0000314 "//testing/gmock",
315 "//testing/gtest",
316 ]
317 configs += [ ":pdfium_core_config" ]
Lei Zhanga996ff42018-10-15 23:49:48 +0000318 if (is_android) {
319 use_raw_android_executable = true
320 }
Lei Zhanga996ff42018-10-15 23:49:48 +0000321 if (pdf_enable_v8) {
322 configs += [ "//v8:external_startup_data" ]
323 deps += [
324 "fxjs:unittests",
325 "//v8",
326 ]
Tom Sepez22818532020-07-22 20:40:56 +0000327 if (pdf_enable_xfa) {
328 deps += [
329 "core/fxcrt/css:unittests",
330 "fxbarcode:unittests",
331 "xfa/fde:unittests",
Tom Sepeza58a6762020-10-14 00:14:53 +0000332 "xfa/fgas/crt:unittests",
Tom Sepez92905222021-12-07 00:03:27 +0000333 "xfa/fgas/font:unittests",
Tom Sepez22818532020-07-22 20:40:56 +0000334 "xfa/fgas/layout:unittests",
335 "xfa/fxfa:unittests",
Lei Zhang605b4e12022-02-24 01:43:24 +0000336 "xfa/fxfa/formcalc:unittests",
Tom Sepez22818532020-07-22 20:40:56 +0000337 "xfa/fxfa/parser:unittests",
338 ]
339 }
Tom Sepezd2e023b2015-12-08 14:36:16 -0800340 }
Tom Sepez04681f32015-01-09 13:59:19 -0800341}
Tom Sepez1b1bb492015-01-22 17:36:32 -0800342
Lei Zhang1929d6e2018-10-15 23:51:28 +0000343group("pdfium_embeddertest_deps") {
344 testonly = true
345 public_deps = [
346 ":pdfium_public_headers",
347 "core/fxcrt",
348 "testing:embedder_test_support",
Lei Zhang1929d6e2018-10-15 23:51:28 +0000349 "//testing/gmock",
350 "//testing/gtest",
351 ]
352 visibility += [
353 "core/*",
354 "fpdfsdk/*",
355 "fxjs/*",
356 "xfa/*",
357 ]
358}
359
Tom Sepez1b1bb492015-01-22 17:36:32 -0800360test("pdfium_embeddertests") {
Lei Zhangdbaf3b82018-10-11 17:02:43 +0000361 testonly = true
Lei Zhang40f9d722020-01-24 00:18:11 +0000362 sources = [ "testing/embedder_test_main.cpp" ]
Tom Sepez1b1bb492015-01-22 17:36:32 -0800363 deps = [
Tom Sepezaf33f512020-06-12 01:00:10 +0000364 ":pdfium_embeddertest_deps",
Lei Zhang1929d6e2018-10-15 23:51:28 +0000365 "core/fpdfapi/edit:embeddertests",
Lei Zhang1929d6e2018-10-15 23:51:28 +0000366 "core/fpdfapi/parser:embeddertests",
367 "core/fpdfapi/render:embeddertests",
368 "core/fxcodec:embeddertests",
Tom Anderson0db20e02019-05-14 22:38:47 +0000369 "core/fxcrt",
Lei Zhang1929d6e2018-10-15 23:51:28 +0000370 "core/fxge:embeddertests",
371 "fpdfsdk:embeddertests",
Tom Sepezec350d92022-10-26 15:52:36 +0000372 "fpdfsdk/formfiller:embeddertests",
Lei Zhang1929d6e2018-10-15 23:51:28 +0000373 "fpdfsdk/pwl:embeddertests",
Lei Zhang76833a62018-10-12 18:53:17 +0000374 "testing/image_diff",
Dan Sinclairfffc9632016-03-08 08:57:05 -0500375 "//testing/gmock",
376 "//testing/gtest",
Tom Sepez1b1bb492015-01-22 17:36:32 -0800377 ]
dsinclair685bb882016-04-20 07:32:39 -0700378 include_dirs = [ "testing/gmock/include" ]
thestigc65e11e2016-08-30 21:56:33 -0700379 configs += [ ":pdfium_core_config" ]
380
Lei Zhanga996ff42018-10-15 23:49:48 +0000381 if (is_android) {
382 ignore_all_data_deps = true
383 use_raw_android_executable = true
384 }
385
Tom Sepez452b4f32015-10-13 09:27:27 -0700386 if (pdf_enable_v8) {
Lei Zhang1929d6e2018-10-15 23:51:28 +0000387 deps += [
388 "fxjs:embeddertests",
389 "//v8",
Lei Zhang1ac47eb2015-12-21 11:04:44 -0800390 ]
Jochen Eisinger7ed503d2015-12-10 14:38:06 +0100391 configs += [ "//v8:external_startup_data" ]
Tom Sepez452b4f32015-10-13 09:27:27 -0700392 }
Lei Zhanga996ff42018-10-15 23:49:48 +0000393
Dan Sinclair14aacd52017-05-18 14:11:29 -0400394 if (pdf_enable_xfa) {
Lei Zhang1929d6e2018-10-15 23:51:28 +0000395 deps += [
Lei Zhang83458252019-03-14 20:07:20 +0000396 "fpdfsdk/fpdfxfa:embeddertests",
Lei Zhang1929d6e2018-10-15 23:51:28 +0000397 "xfa/fwl:embeddertests",
Tom Sepez6e4710a2019-05-08 17:23:18 +0000398 "xfa/fxfa/layout:embeddertests",
Lei Zhang1929d6e2018-10-15 23:51:28 +0000399 "xfa/fxfa/parser:embeddertests",
Dan Sinclair14aacd52017-05-18 14:11:29 -0400400 ]
401 }
Tom Sepez1b1bb492015-01-22 17:36:32 -0800402}
dsinclair685bb882016-04-20 07:32:39 -0700403
Tom Sepez1d78f4d2018-10-22 20:17:38 +0000404executable("pdfium_diff") {
K. Moonbce0a8f2023-07-13 20:12:24 +0000405 visibility += [ "testing/tools:test_runner_py" ]
Tom Sepez1d78f4d2018-10-22 20:17:38 +0000406 testonly = true
Lei Zhang40f9d722020-01-24 00:18:11 +0000407 sources = [ "testing/image_diff/image_diff.cpp" ]
Tom Sepez1d78f4d2018-10-22 20:17:38 +0000408 deps = [
Tom Anderson93101062019-05-07 02:08:43 +0000409 "core/fxcrt",
Lei Zhang24204472020-08-22 00:51:02 +0000410 "testing:path_service",
Tom Sepez1d78f4d2018-10-22 20:17:38 +0000411 "testing/image_diff",
412 "//build/win:default_exe_manifest",
413 ]
Lei Zhang7a5f8ee2021-04-24 00:19:10 +0000414 configs += [ ":pdfium_strict_config" ]
Tom Sepez1d78f4d2018-10-22 20:17:38 +0000415}
416
Lei Zhangf02c8bf2017-04-01 01:35:01 -0700417group("pdfium_all") {
418 testonly = true
419 deps = [
Tom Sepez1d78f4d2018-10-22 20:17:38 +0000420 ":pdfium_diff",
Lei Zhangf02c8bf2017-04-01 01:35:01 -0700421 ":pdfium_embeddertests",
422 ":pdfium_unittests",
Tom Sepez7c7b4c72024-05-09 07:21:41 +0000423 "testing:pdfium_test",
Tom Sepezd9e3f3f2023-07-24 23:29:11 +0000424 "testing/fuzzers",
Lei Zhangf02c8bf2017-04-01 01:35:01 -0700425 ]
K. Moon55e793a2023-07-31 22:48:35 +0000426
427 if (pdf_is_standalone) {
428 deps += [ "testing/tools:test_runner_py" ]
429 }
Lei Zhangf02c8bf2017-04-01 01:35:01 -0700430}
K. Moon1852aa02022-11-10 18:56:52 +0000431
432# Makes additional targets reachable only for "gn check". These are not always
433# built by the "all" Ninja target, which uses the "default" group, which in turn
434# depends on the "pdfium_all" group.
435group("gn_check") {
436 deps = []
437
438 # TODO(crbug.com/pdfium/1832): Remove !is_android when //third_party/expat is
439 # available.
K. Moona98c0892022-11-12 00:44:23 +0000440 if (defined(checkout_skia) && checkout_skia && !is_android) {
K. Moon1852aa02022-11-10 18:56:52 +0000441 deps += [ "//skia" ]
442 }
443}