• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1//
2// Copyright (C) 2014 The Android Open Source Project
3//
4// Licensed under the Apache License, Version 2.0 (the "License");
5// you may not use this file except in compliance with the License.
6// You may obtain a copy of the License at
7//
8//      http://www.apache.org/licenses/LICENSE-2.0
9//
10// Unless required by applicable law or agreed to in writing, software
11// distributed under the License is distributed on an "AS IS" BASIS,
12// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13// See the License for the specific language governing permissions and
14// limitations under the License.
15//
16
17//
18// To update:
19//
20
21//  git merge aosp/upstream-master
22//  mma -j
23//  # (Make any necessary Android.bp changes and test the new libxml2.)
24//  git push aosp HEAD:master  # Push directly, avoiding gerrit.
25//  git push aosp HEAD:refs/for/master  # Push to gerrit.
26//
27//  # Now commit any necessary Android.bp changes like normal:
28//  repo start post-sync .
29//  git commit -a
30//
31
32// This comes from the automake-generated Makefile.
33// We deliberately exclude nanoftp.c and nanohttp.c, the trio library, and zlib.
34// *** THIS PACKAGE HAS SPECIAL LICENSING CONDITIONS.  PLEASE
35//     CONSULT THE OWNERS AND opensource-licensing@google.com BEFORE
36//     DEPENDING ON IT IN YOUR PROJECT. ***
37package {
38    default_applicable_licenses: ["external_libxml2_license"],
39}
40
41// Added automatically by a large-scale-change that took the approach of
42// 'apply every license found to every target'. While this makes sure we respect
43// every license restriction, it may not be entirely correct.
44//
45// e.g. GPL in an MIT project might only apply to the contrib/ directory.
46//
47// Please consider splitting the single license below into multiple licenses,
48// taking care not to lose any license_kind information, and overriding the
49// default license using the 'licenses: [...]' property on targets as needed.
50//
51// For unused files, consider creating a 'fileGroup' with "//visibility:private"
52// to attach the license to, and including a comment whether the files may be
53// used in the current project.
54// See: http://go/android-license-faq
55license {
56    name: "external_libxml2_license",
57    visibility: [":__subpackages__"],
58    license_kinds: [
59        "SPDX-license-identifier-CC-BY-SA",
60        "SPDX-license-identifier-GFDL", // by exception only
61        "SPDX-license-identifier-GPL",
62        "SPDX-license-identifier-GPL-2.0",
63        "SPDX-license-identifier-MIT",
64        "SPDX-license-identifier-W3C",
65    ],
66    license_text: [
67        "Copyright",
68    ],
69}
70
71cc_defaults {
72    name: "libxml2-defaults",
73    srcs: [
74        "SAX.c",
75        "entities.c",
76        "encoding.c",
77        "error.c",
78        "parserInternals.c",
79        "parser.c",
80        "tree.c",
81        "hash.c",
82        "list.c",
83        "xmlIO.c",
84        "xmlmemory.c",
85        "uri.c",
86        "valid.c",
87        "xlink.c",
88        "debugXML.c",
89        "xpath.c",
90        "xpointer.c",
91        "xinclude.c",
92        "DOCBparser.c",
93        "catalog.c",
94        "globals.c",
95        "threads.c",
96        "c14n.c",
97        "xmlstring.c",
98        "buf.c",
99        "xmlregexp.c",
100        "xmlschemas.c",
101        "xmlschemastypes.c",
102        "xmlunicode.c",
103        "xmlreader.c",
104        "relaxng.c",
105        "dict.c",
106        "SAX2.c",
107        "xmlwriter.c",
108        "legacy.c",
109        "chvalid.c",
110        "pattern.c",
111        "xmlsave.c",
112        "xmlmodule.c",
113        "schematron.c",
114    ],
115    stl: "none",
116    export_include_dirs: ["include"],
117    cflags: [
118        "-DLIBXML_THREAD_ENABLED=1",
119
120        // Poison various things that should not be defined.
121        "-DLIBXML_LEGACY_ENABLED=NO",
122        "-DLIBXML_FTP_ENABLED=NO",
123        "-DLIBXML_HTML_ENABLED=NO",
124        "-DLIBXML_HTTP_ENABLED=NO",
125        "-DLIBXML_ICONV_ENABLED=NO",
126        "-DLIBXML_LZMA_ENABLED=NO",
127        "-DLIBXML_ZLIB_ENABLED=NO",
128        // And this one depends on whether or not we're building for the VNDK.
129        "-DLIBXML_ICU_ENABLED=NO",
130
131        "-Wall",
132        "-Werror",
133        "-Wno-error=ignored-attributes",
134        "-Wno-missing-field-initializers",
135        "-Wno-self-assign",
136        "-Wno-sign-compare",
137        "-Wno-tautological-pointer-compare",
138        "-Wno-unused-function",
139        "-Wno-unused-parameter",
140    ],
141    static: {
142        cflags: [
143            "-fvisibility=hidden",
144            "-DSTATIC_LIBXML=1",
145        ],
146    },
147}
148
149cc_library {
150    name: "libxml2",
151    defaults: ["libxml2-defaults"],
152    vendor_available: true,
153    product_available: true,
154    vndk: {
155        enabled: true,
156    },
157    host_supported: true,
158    target: {
159       android: {
160           shared_libs: ["libandroidicu"],
161           export_shared_lib_headers: ["libandroidicu"],
162       },
163       host: {
164           shared_libs: [
165               "libicui18n",
166               "libicuuc",
167           ],
168           export_shared_lib_headers: [
169               "libicui18n",
170               "libicuuc",
171           ],
172       },
173       vendor: {
174           exclude_shared_libs: ["libandroidicu"],
175       },
176       product: {
177           exclude_shared_libs: ["libandroidicu"],
178       },
179    },
180    apex_available: [
181        "//apex_available:platform",
182        "com.android.runtime", // used by linkerconfig
183        "com.android.uwb",
184        "com.android.virt",
185    ],
186    min_sdk_version: "apex_inherit",
187}
188
189cc_library_static {
190    name: "libxml2_ndk",
191    defaults: ["libxml2-defaults"],
192    sdk_version: "current",
193}
194
195cc_binary_host {
196    name: "xmllint",
197    srcs: ["xmllint.c"],
198    cflags: [
199        "-DLIBXML_THREAD_ENABLED=1",
200
201        "-Wall",
202        "-Werror",
203    ],
204    shared_libs: ["libxml2"],
205}
206
207cc_binary_host {
208    name: "libxml2_genseed",
209    srcs: [
210        "fuzz/genSeed.c",
211        "fuzz/fuzz.c",
212    ],
213    cflags: [
214        "-Wno-unused-variable",
215    ],
216    shared_libs: ["libxml2"],
217}
218
219cc_defaults {
220    name: "libxml2-fuzz-defaults",
221    host_supported: true,
222    shared_libs: [
223        "libxml2",
224    ],
225    srcs: [
226      "fuzz/fuzz.c",
227    ],
228    fuzz_config: {
229        componentid: 87896,
230    },
231}
232
233cc_fuzz {
234    name: "libxml2_regexp_fuzzer",
235    defaults: ["libxml2-fuzz-defaults"],
236    srcs: [
237        "fuzz/regexp.c",
238    ],
239    dictionary: "fuzz/regexp.dict",
240}
241
242genrule {
243    name: "libxml2_schema_fuzz_corpus",
244    tools: ["libxml2_genseed"],
245    srcs: [
246        "test/schemas/*.xsd",
247    ],
248    // The genseed tool only writes under its current directory.
249    // We move outputs to the correct location after generation..
250    cmd: "mkdir -p seed/schema && " +
251         "$(location libxml2_genseed) schema $(in) && " +
252         "mkdir -p $(genDir)/fuzz/seed/schema && " +
253         "mv -f seed/schema/* $(genDir)/fuzz/seed/schema",
254    out: [
255        "fuzz/seed/schema/570702_0.xsd",
256        "fuzz/seed/schema/579746_0.xsd",
257        "fuzz/seed/schema/579746_1.xsd",
258        "fuzz/seed/schema/582887_0.xsd",
259        "fuzz/seed/schema/582887-attribute.xsd",
260        "fuzz/seed/schema/582887-common.xsd",
261        "fuzz/seed/schema/582887-element.xsd",
262        "fuzz/seed/schema/582906-1_0.xsd",
263        "fuzz/seed/schema/582906-1-common.xsd",
264        "fuzz/seed/schema/582906-1-prog1.xsd",
265        "fuzz/seed/schema/582906-1-prog2-include.xsd",
266        "fuzz/seed/schema/582906-1-prog2.xsd",
267        "fuzz/seed/schema/582906-2_0.xsd",
268        "fuzz/seed/schema/582906-2-common.xsd",
269        "fuzz/seed/schema/582906-2-prog1.xsd",
270        "fuzz/seed/schema/582906-2-prog2-include.xsd",
271        "fuzz/seed/schema/582906-2-prog2.xsd",
272        "fuzz/seed/schema/all_0.xsd",
273        "fuzz/seed/schema/all1_0.xsd",
274        "fuzz/seed/schema/all_1.xsd",
275        "fuzz/seed/schema/all_2.xsd",
276        "fuzz/seed/schema/allsg_0.xsd",
277        "fuzz/seed/schema/all.xsd",
278        "fuzz/seed/schema/annot-err_0.xsd",
279        "fuzz/seed/schema/any1_0.xsd",
280        "fuzz/seed/schema/any2_0.xsd",
281        "fuzz/seed/schema/any3_0.xsd",
282        "fuzz/seed/schema/any4_0.xsd",
283        "fuzz/seed/schema/any5_0.xsd",
284        "fuzz/seed/schema/any5_1.xsd",
285        "fuzz/seed/schema/any6_1.xsd",
286        "fuzz/seed/schema/any6_2.xsd",
287        "fuzz/seed/schema/any7_1.xsd",
288        "fuzz/seed/schema/any7_2.xsd",
289        "fuzz/seed/schema/any8_1.xsd",
290        "fuzz/seed/schema/anyAttr1_0.xsd",
291        "fuzz/seed/schema/anyAttr-derive1_0.xsd",
292        "fuzz/seed/schema/anyAttr-derive2_0.xsd",
293        "fuzz/seed/schema/anyAttr-derive-errors1_0.xsd",
294        "fuzz/seed/schema/anyAttr.importA.1_0.xsd",
295        "fuzz/seed/schema/anyAttr.importB.1_0.xsd",
296        "fuzz/seed/schema/anyAttr-processContents1_0.xsd",
297        "fuzz/seed/schema/anyAttr-processContents-err1_0.xsd",
298        "fuzz/seed/schema/attr0_0.xsd",
299        "fuzz/seed/schema/attruse_0_0.xsd",
300        "fuzz/seed/schema/bug141312_0.xsd",
301        "fuzz/seed/schema/bug141333_0.xsd",
302        "fuzz/seed/schema/bug141333.xsd",
303        "fuzz/seed/schema/bug143951_0.xsd",
304        "fuzz/seed/schema/bug145246_0.xsd",
305        "fuzz/seed/schema/bug152470_1.xsd",
306        "fuzz/seed/schema/bug167754_0.xsd",
307        "fuzz/seed/schema/bug303566_1.xsd",
308        "fuzz/seed/schema/bug306806_1.xsd",
309        "fuzz/seed/schema/bug309338_1.xsd",
310        "fuzz/seed/schema/bug310264_0.xsd",
311        "fuzz/seed/schema/bug312957_1.xsd",
312        "fuzz/seed/schema/bug313982_0.xsd",
313        "fuzz/seed/schema/bug321475_1.xsd",
314        "fuzz/seed/schema/bug322411_1.xsd",
315        "fuzz/seed/schema/bug323510_1.xsd",
316        "fuzz/seed/schema/bug455953_0.xsd",
317        "fuzz/seed/schema/changelog093_1.xsd",
318        "fuzz/seed/schema/choice_0.xsd",
319        "fuzz/seed/schema/choice_1.xsd",
320        "fuzz/seed/schema/choice_2.xsd",
321        "fuzz/seed/schema/complex-type-extension_0.xsd",
322        "fuzz/seed/schema/cos-ct-extends-1-3_0.xsd",
323        "fuzz/seed/schema/cos-st-restricts-1-2-err_0.xsd",
324        "fuzz/seed/schema/ct-sc-nobase_0.xsd",
325        "fuzz/seed/schema/date_0.xsd",
326        "fuzz/seed/schema/decimal-1_1.xsd",
327        "fuzz/seed/schema/decimal-1.xsd",
328        "fuzz/seed/schema/decimal-2_1.xsd",
329        "fuzz/seed/schema/decimal-3_1.xsd",
330        "fuzz/seed/schema/derivation-ok-extension_0.xsd",
331        "fuzz/seed/schema/derivation-ok-extension-err_0.xsd",
332        "fuzz/seed/schema/derivation-ok-restriction-2-1-1_0.xsd",
333        "fuzz/seed/schema/derivation-ok-restriction-4-1-err_0.xsd",
334        "fuzz/seed/schema/derivation-restriction-anyAttr_0.xsd",
335        "fuzz/seed/schema/derivation-restriction-anyType.xsd",
336        "fuzz/seed/schema/deter0_0.xsd",
337        "fuzz/seed/schema/dur_0.xsd",
338        "fuzz/seed/schema/elem0_0.xsd",
339        "fuzz/seed/schema/element-err_0.xsd",
340        "fuzz/seed/schema/element-minmax-err_0.xsd",
341        "fuzz/seed/schema/empty_0.xsd",
342        "fuzz/seed/schema/empty_1.xsd",
343        "fuzz/seed/schema/empty-value_1.xsd",
344        "fuzz/seed/schema/extension0_0.xsd",
345        "fuzz/seed/schema/extension1_0.xsd",
346        "fuzz/seed/schema/extension2_1.xsd",
347        "fuzz/seed/schema/facet-unionST-err1_0.xsd",
348        "fuzz/seed/schema/facet-whiteSpace_0.xsd",
349        "fuzz/seed/schema/group0_0.xsd",
350        "fuzz/seed/schema/hexbinary_0.xsd",
351        "fuzz/seed/schema/idc-keyref-err1_1.xsd",
352        "fuzz/seed/schema/import0_0.xsd",
353        "fuzz/seed/schema/import1_0.xsd",
354        "fuzz/seed/schema/import2_0.xsd",
355        "fuzz/seed/schema/import-455953.xsd",
356        "fuzz/seed/schema/include1_0.xsd",
357        "fuzz/seed/schema/include2_0.xsd",
358        "fuzz/seed/schema/include3_0.xsd",
359        "fuzz/seed/schema/issue40_0.xsd",
360        "fuzz/seed/schema/item_0.xsd",
361        "fuzz/seed/schema/item_1.xsd",
362        "fuzz/seed/schema/length1_0.xsd",
363        "fuzz/seed/schema/length2_0.xsd",
364        "fuzz/seed/schema/length3_0.xsd",
365        "fuzz/seed/schema/list0_0.xsd",
366        "fuzz/seed/schema/list0_1.xsd",
367        "fuzz/seed/schema/mixed0_0.xsd",
368        "fuzz/seed/schema/mixed1_0.xsd",
369        "fuzz/seed/schema/ns0_0.xsd",
370        "fuzz/seed/schema/ns0_1.xsd",
371        "fuzz/seed/schema/ns1_0.xsd",
372        "fuzz/seed/schema/ns2_0.xsd",
373        "fuzz/seed/schema/nvdcve_0.xsd",
374        "fuzz/seed/schema/po0_0.xsd",
375        "fuzz/seed/schema/po1_0.xsd",
376        "fuzz/seed/schema/poschargrp0_0.xsd",
377        "fuzz/seed/schema/regexp-char-ref_0.xsd",
378        "fuzz/seed/schema/regexp-char-ref_1.xsd",
379        "fuzz/seed/schema/restrict-CT-attr-ref_0.xsd",
380        "fuzz/seed/schema/restriction0_0.xsd",
381        "fuzz/seed/schema/restriction-attr1_0.xsd",
382        "fuzz/seed/schema/restriction-enum-1_1.xsd",
383        "fuzz/seed/schema/scc-no-xmlns_0.xsd",
384        "fuzz/seed/schema/scc-no-xsi_0.xsd",
385        "fuzz/seed/schema/seq0_0.xsd",
386        "fuzz/seed/schema/seq-dubl-elem1_0.xsd",
387        "fuzz/seed/schema/src-attribute1_0.xsd",
388        "fuzz/seed/schema/src-attribute2_0.xsd",
389        "fuzz/seed/schema/src-attribute3-1_0.xsd",
390        "fuzz/seed/schema/src-attribute3-2-form_0.xsd",
391        "fuzz/seed/schema/src-attribute3-2-st_0.xsd",
392        "fuzz/seed/schema/src-attribute3-2-type_0.xsd",
393        "fuzz/seed/schema/src-attribute4_0.xsd",
394        "fuzz/seed/schema/src-element1_0.xsd",
395        "fuzz/seed/schema/src-element2-1_0.xsd",
396        "fuzz/seed/schema/src-element2-2_0.xsd",
397        "fuzz/seed/schema/src-element3_0.xsd",
398        "fuzz/seed/schema/subst-group-1_0.xsd",
399        "fuzz/seed/schema/union_0_0.xsd",
400        "fuzz/seed/schema/union2_1.xsd",
401        "fuzz/seed/schema/vdv-complexTypes.xsd",
402        "fuzz/seed/schema/vdv-first0_0.xsd",
403        "fuzz/seed/schema/vdv-first1_0.xsd",
404        "fuzz/seed/schema/vdv-first2_0.xsd",
405        "fuzz/seed/schema/vdv-first3_0.xsd",
406        "fuzz/seed/schema/vdv-first4_0.xsd",
407        "fuzz/seed/schema/vdv-first5_0.xsd",
408        "fuzz/seed/schema/vdv-simpleTypes.xsd",
409        "fuzz/seed/schema/xml.xsd",
410        "fuzz/seed/schema/xsd-list-itemType_0.xsd",
411        "fuzz/seed/schema/xsd-simpleType-varieties_0.xsd",
412    ],
413}
414
415cc_fuzz {
416    name: "libxml2_schema_fuzzer",
417    defaults: ["libxml2-fuzz-defaults"],
418    srcs: [
419        "fuzz/schema.c",
420    ],
421    dictionary: "fuzz/schema.dict",
422    corpus: [":libxml2_schema_fuzz_corpus"],
423}
424
425cc_fuzz {
426    name: "libxml2_uri_fuzzer",
427    defaults: ["libxml2-fuzz-defaults"],
428    srcs: [
429        "fuzz/uri.c",
430    ],
431}
432
433genrule {
434    name: "libxml2_xml_fuzz_corpus",
435    tools: ["libxml2_genseed"],
436    srcs: [
437        "test/*",
438        "test/errors/*.xml",
439        "test/errors10/*.xml",
440        "test/namespaces/*",
441        "test/valid/*.xml",
442        "test/VC/*",
443        "test/VCM/*",
444        "test/XInclude/docs/*",
445        "test/xmlid/*",
446    ],
447    // The genseed tool only writes under its current directory.
448    // We move outputs to the correct location after generation..
449    cmd: "mkdir -p seed/xml && " +
450         "$(location libxml2_genseed) xml $(in) &&" +
451         "mkdir -p $(genDir)/fuzz/seed/xml && " +
452         "mv seed/xml/* $(genDir)/fuzz/seed/xml",
453    out: [
454        "fuzz/seed/xml/127772.xml",
455        "fuzz/seed/xml/21.xml",
456        "fuzz/seed/xml/694228.xml",
457        "fuzz/seed/xml/737840.xml",
458        "fuzz/seed/xml/754946.xml",
459        "fuzz/seed/xml/754947.xml",
460        "fuzz/seed/xml/758588.xml",
461        "fuzz/seed/xml/759020.xml",
462        "fuzz/seed/xml/759398.xml",
463        "fuzz/seed/xml/759573-2.xml",
464        "fuzz/seed/xml/759573.xml",
465        "fuzz/seed/xml/759579.xml",
466        "fuzz/seed/xml/766956.xml",
467        "fuzz/seed/xml/781205.xml",
468        "fuzz/seed/xml/781333.xml",
469        "fuzz/seed/xml/781361.xml",
470        "fuzz/seed/xml/att1",
471        "fuzz/seed/xml/att10",
472        "fuzz/seed/xml/att11",
473        "fuzz/seed/xml/att2",
474        "fuzz/seed/xml/att3",
475        "fuzz/seed/xml/att4",
476        "fuzz/seed/xml/att5",
477        "fuzz/seed/xml/att6",
478        "fuzz/seed/xml/att7",
479        "fuzz/seed/xml/att8",
480        "fuzz/seed/xml/att9",
481        "fuzz/seed/xml/attr1.xml",
482        "fuzz/seed/xml/attr2.xml",
483        "fuzz/seed/xml/attr3.xml",
484        "fuzz/seed/xml/attr4.xml",
485        "fuzz/seed/xml/AttributeDefaultLegal",
486        "fuzz/seed/xml/AttributeNmtokens",
487        "fuzz/seed/xml/AttributeNmtokens.xml",
488        "fuzz/seed/xml/attrib.xml",
489        "fuzz/seed/xml/badcomment.xml",
490        "fuzz/seed/xml/bigentname.xml",
491        "fuzz/seed/xml/bigname2.xml",
492        "fuzz/seed/xml/bigname.xml",
493        "fuzz/seed/xml/cdata",
494        "fuzz/seed/xml/cdata2",
495        "fuzz/seed/xml/cdata-2-byte-UTF-8.xml",
496        "fuzz/seed/xml/cdata-3-byte-UTF-8.xml",
497        "fuzz/seed/xml/cdata-4-byte-UTF-8.xml",
498        "fuzz/seed/xml/cdata.xml",
499        "fuzz/seed/xml/charref1.xml",
500        "fuzz/seed/xml/comment1.xml",
501        "fuzz/seed/xml/comment2.xml",
502        "fuzz/seed/xml/comment3.xml",
503        "fuzz/seed/xml/comment4.xml",
504        "fuzz/seed/xml/comment5.xml",
505        "fuzz/seed/xml/comment6.xml",
506        "fuzz/seed/xml/comment.xml",
507        "fuzz/seed/xml/cond_sect1.xml",
508        "fuzz/seed/xml/cond_sect2.xml",
509        "fuzz/seed/xml/content1.xml",
510        "fuzz/seed/xml/dav1",
511        "fuzz/seed/xml/dav10",
512        "fuzz/seed/xml/dav11",
513        "fuzz/seed/xml/dav12",
514        "fuzz/seed/xml/dav13",
515        "fuzz/seed/xml/dav15",
516        "fuzz/seed/xml/dav16",
517        "fuzz/seed/xml/dav17",
518        "fuzz/seed/xml/dav18",
519        "fuzz/seed/xml/dav19",
520        "fuzz/seed/xml/dav2",
521        "fuzz/seed/xml/dav3",
522        "fuzz/seed/xml/dav4",
523        "fuzz/seed/xml/dav5",
524        "fuzz/seed/xml/dav6",
525        "fuzz/seed/xml/dav7",
526        "fuzz/seed/xml/dav8",
527        "fuzz/seed/xml/dav9",
528        "fuzz/seed/xml/defattr2.xml",
529        "fuzz/seed/xml/defattr.xml",
530        "fuzz/seed/xml/dia1",
531        "fuzz/seed/xml/dia2",
532        "fuzz/seed/xml/dia.xml",
533        "fuzz/seed/xml/docids.xml",
534        "fuzz/seed/xml/dtd1",
535        "fuzz/seed/xml/dtd10",
536        "fuzz/seed/xml/dtd11",
537        "fuzz/seed/xml/dtd12",
538        "fuzz/seed/xml/dtd13",
539        "fuzz/seed/xml/dtd2",
540        "fuzz/seed/xml/dtd3",
541        "fuzz/seed/xml/dtd4",
542        "fuzz/seed/xml/dtd5",
543        "fuzz/seed/xml/dtd6",
544        "fuzz/seed/xml/dtd7",
545        "fuzz/seed/xml/dtd8",
546        "fuzz/seed/xml/dtd9",
547        "fuzz/seed/xml/DuplicateType",
548        "fuzz/seed/xml/ebcdic_566012.xml",
549        "fuzz/seed/xml/ElementValid",
550        "fuzz/seed/xml/ElementValid2",
551        "fuzz/seed/xml/ElementValid3",
552        "fuzz/seed/xml/ElementValid4",
553        "fuzz/seed/xml/ElementValid5",
554        "fuzz/seed/xml/ElementValid6",
555        "fuzz/seed/xml/ElementValid7",
556        "fuzz/seed/xml/ElementValid8",
557        "fuzz/seed/xml/emptycdata.xml",
558        "fuzz/seed/xml/ent1",
559        "fuzz/seed/xml/ent10",
560        "fuzz/seed/xml/ent11",
561        "fuzz/seed/xml/ent12",
562        "fuzz/seed/xml/ent13",
563        "fuzz/seed/xml/ent2",
564        "fuzz/seed/xml/ent3",
565        "fuzz/seed/xml/ent4",
566        "fuzz/seed/xml/ent5",
567        "fuzz/seed/xml/ent6",
568        "fuzz/seed/xml/ent7",
569        "fuzz/seed/xml/ent_738805.xml",
570        "fuzz/seed/xml/ent8",
571        "fuzz/seed/xml/ent9",
572        "fuzz/seed/xml/Enumeration",
573        "fuzz/seed/xml/err_0.xml",
574        "fuzz/seed/xml/err_10.xml",
575        "fuzz/seed/xml/err_11.xml",
576        "fuzz/seed/xml/err_1.xml",
577        "fuzz/seed/xml/err_2.xml",
578        "fuzz/seed/xml/err_3.xml",
579        "fuzz/seed/xml/err_4.xml",
580        "fuzz/seed/xml/err_5.xml",
581        "fuzz/seed/xml/err_6.xml",
582        "fuzz/seed/xml/err_7.xml",
583        "fuzz/seed/xml/err_8.xml",
584        "fuzz/seed/xml/err_9.xml",
585        "fuzz/seed/xml/eve.xml",
586        "fuzz/seed/xml/extparsedent.xml",
587        "fuzz/seed/xml/fallback2.xml",
588        "fuzz/seed/xml/fallback3.xml",
589        "fuzz/seed/xml/fallback4.xml",
590        "fuzz/seed/xml/fallback5.xml",
591        "fuzz/seed/xml/fallback6.xml",
592        "fuzz/seed/xml/fallback.xml",
593        "fuzz/seed/xml/icu_parse_test.xml",
594        "fuzz/seed/xml/id1.xml",
595        "fuzz/seed/xml/id2.xml",
596        "fuzz/seed/xml/id3.xml",
597        "fuzz/seed/xml/id_err1.xml",
598        "fuzz/seed/xml/id_err2.xml",
599        "fuzz/seed/xml/id_tst1.xml",
600        "fuzz/seed/xml/id_tst2.xml",
601        "fuzz/seed/xml/id_tst3.xml",
602        "fuzz/seed/xml/id_tst4.xml",
603        "fuzz/seed/xml/include.xml",
604        "fuzz/seed/xml/index.xml",
605        "fuzz/seed/xml/intsubset2.xml",
606        "fuzz/seed/xml/intsubset.xml",
607        "fuzz/seed/xml/isolat1",
608        "fuzz/seed/xml/isolat2",
609        "fuzz/seed/xml/isolat3",
610        "fuzz/seed/xml/japancrlf.xml",
611        "fuzz/seed/xml/mixed_ns.xml",
612        "fuzz/seed/xml/name2.xml",
613        "fuzz/seed/xml/name.xml",
614        "fuzz/seed/xml/nodes2.xml",
615        "fuzz/seed/xml/nodes3.xml",
616        "fuzz/seed/xml/nodes.xml",
617        "fuzz/seed/xml/notes.xml",
618        "fuzz/seed/xml/ns",
619        "fuzz/seed/xml/NS1",
620        "fuzz/seed/xml/ns1.xml",
621        "fuzz/seed/xml/ns2",
622        "fuzz/seed/xml/NS2",
623        "fuzz/seed/xml/ns2.xml",
624        "fuzz/seed/xml/ns3",
625        "fuzz/seed/xml/NS3",
626        "fuzz/seed/xml/ns4",
627        "fuzz/seed/xml/ns5",
628        "fuzz/seed/xml/ns6",
629        "fuzz/seed/xml/ns7",
630        "fuzz/seed/xml/nsclean.xml",
631        "fuzz/seed/xml/ns.xml",
632        "fuzz/seed/xml/objednavka.xml",
633        "fuzz/seed/xml/OneID",
634        "fuzz/seed/xml/OneID2",
635        "fuzz/seed/xml/OneID3",
636        "fuzz/seed/xml/p3p",
637        "fuzz/seed/xml/PENesting",
638        "fuzz/seed/xml/PENesting2",
639        "fuzz/seed/xml/pi2.xml",
640        "fuzz/seed/xml/pi.xml",
641        "fuzz/seed/xml/rdf1",
642        "fuzz/seed/xml/rdf2",
643        "fuzz/seed/xml/rec_ext_ent.xml",
644        "fuzz/seed/xml/recursive.xml",
645        "fuzz/seed/xml/REC-xml-19980210.xml",
646        "fuzz/seed/xml/rss.xml",
647        "fuzz/seed/xml/slashdot16.xml",
648        "fuzz/seed/xml/slashdot.rdf",
649        "fuzz/seed/xml/slashdot.xml",
650        "fuzz/seed/xml/svg1",
651        "fuzz/seed/xml/svg2",
652        "fuzz/seed/xml/svg3",
653        "fuzz/seed/xml/t10.xml",
654        "fuzz/seed/xml/t11.xml",
655        "fuzz/seed/xml/t4a.xml",
656        "fuzz/seed/xml/t4.xml",
657        "fuzz/seed/xml/t6.xml",
658        "fuzz/seed/xml/t8a.xml",
659        "fuzz/seed/xml/t8.xml",
660        "fuzz/seed/xml/t9a.xml",
661        "fuzz/seed/xml/t9.xml",
662        "fuzz/seed/xml/title.xml",
663        "fuzz/seed/xml/tstblanks.xml",
664        "fuzz/seed/xml/tstencoding.xml",
665        "fuzz/seed/xml/txtinclude.xml",
666        "fuzz/seed/xml/UniqueElementTypeDeclaration",
667        "fuzz/seed/xml/UniqueElementTypeDeclaration2",
668        "fuzz/seed/xml/utf16bebom.xml",
669        "fuzz/seed/xml/utf16bom.xml",
670        "fuzz/seed/xml/UTF16Entity.xml",
671        "fuzz/seed/xml/utf16lebom.xml",
672        "fuzz/seed/xml/utf8bom.xml",
673        "fuzz/seed/xml/v10.xml",
674        "fuzz/seed/xml/v11.xml",
675        "fuzz/seed/xml/v12.xml",
676        "fuzz/seed/xml/v13.xml",
677        "fuzz/seed/xml/v14.xml",
678        "fuzz/seed/xml/v15.xml",
679        "fuzz/seed/xml/v16.xml",
680        "fuzz/seed/xml/v17.xml",
681        "fuzz/seed/xml/v18.xml",
682        "fuzz/seed/xml/v19.xml",
683        "fuzz/seed/xml/v1.xml",
684        "fuzz/seed/xml/v20.xml",
685        "fuzz/seed/xml/v21.xml",
686        "fuzz/seed/xml/v22.xml",
687        "fuzz/seed/xml/v23.xml",
688        "fuzz/seed/xml/v24.xml",
689        "fuzz/seed/xml/v2.xml",
690        "fuzz/seed/xml/v3.xml",
691        "fuzz/seed/xml/v4.xml",
692        "fuzz/seed/xml/v5.xml",
693        "fuzz/seed/xml/v6.xml",
694        "fuzz/seed/xml/v7.xml",
695        "fuzz/seed/xml/v8.xml",
696        "fuzz/seed/xml/v9.xml",
697        "fuzz/seed/xml/wap.xml",
698        "fuzz/seed/xml/winblanks.xml",
699        "fuzz/seed/xml/wml.xml",
700        "fuzz/seed/xml/xhtml1",
701        "fuzz/seed/xml/xhtmlcomp",
702        "fuzz/seed/xml/xlink.xml",
703        "fuzz/seed/xml/xml1",
704        "fuzz/seed/xml/xml2",
705    ],
706}
707
708cc_fuzz {
709    name: "libxml2_xml_fuzzer",
710    defaults: ["libxml2-fuzz-defaults"],
711    srcs: [
712        "fuzz/xml.c",
713    ],
714    dictionary: "fuzz/xml.dict",
715    corpus: [":libxml2_xml_fuzz_corpus"],
716}
717
718genrule {
719    name: "libxml2_xpath_fuzz_corpus",
720    tools: ["libxml2_genseed"],
721    srcs: [
722        "test/XPath/*/*",
723    ],
724    // The genseed tool only writes under its current directory.
725    // We move outputs to the correct location after generation..
726    cmd: "inputs=( $(in) ) && " +
727         "inputDir=$$(dirname $$(dirname $${inputs})) && " +
728         "mkdir -p seed/xpath && " +
729         "$(location libxml2_genseed) xpath $${inputDir} && " +
730         "mkdir -p $(genDir)/fuzz/seed/xpath && " +
731         "mv seed/xpath/* $(genDir)/fuzz/seed/xpath",
732    out: [
733        "fuzz/seed/xpath/chapters-1",
734        "fuzz/seed/xpath/chapters-10",
735        "fuzz/seed/xpath/chapters-11",
736        "fuzz/seed/xpath/chapters-12",
737        "fuzz/seed/xpath/chapters-13",
738        "fuzz/seed/xpath/chapters-14",
739        "fuzz/seed/xpath/chapters-15",
740        "fuzz/seed/xpath/chapters-16",
741        "fuzz/seed/xpath/chapters-17",
742        "fuzz/seed/xpath/chapters-18",
743        "fuzz/seed/xpath/chapters-19",
744        "fuzz/seed/xpath/chapters-2",
745        "fuzz/seed/xpath/chapters-20",
746        "fuzz/seed/xpath/chapters-21",
747        "fuzz/seed/xpath/chapters-22",
748        "fuzz/seed/xpath/chapters-23",
749        "fuzz/seed/xpath/chapters-24",
750        "fuzz/seed/xpath/chapters-25",
751        "fuzz/seed/xpath/chapters-26",
752        "fuzz/seed/xpath/chapters-27",
753        "fuzz/seed/xpath/chapters-28",
754        "fuzz/seed/xpath/chapters-29",
755        "fuzz/seed/xpath/chapters-3",
756        "fuzz/seed/xpath/chapters-30",
757        "fuzz/seed/xpath/chapters-31",
758        "fuzz/seed/xpath/chapters-32",
759        "fuzz/seed/xpath/chapters-33",
760        "fuzz/seed/xpath/chapters-34",
761        "fuzz/seed/xpath/chapters-35",
762        "fuzz/seed/xpath/chapters-36",
763        "fuzz/seed/xpath/chapters-37",
764        "fuzz/seed/xpath/chapters-38",
765        "fuzz/seed/xpath/chapters-39",
766        "fuzz/seed/xpath/chapters-4",
767        "fuzz/seed/xpath/chapters-40",
768        "fuzz/seed/xpath/chapters-41",
769        "fuzz/seed/xpath/chapters-42",
770        "fuzz/seed/xpath/chapters-43",
771        "fuzz/seed/xpath/chapters-5",
772        "fuzz/seed/xpath/chapters-6",
773        "fuzz/seed/xpath/chapters-7",
774        "fuzz/seed/xpath/chapters-8",
775        "fuzz/seed/xpath/chapters-9",
776        "fuzz/seed/xpath/expr-1",
777        "fuzz/seed/xpath/expr-10",
778        "fuzz/seed/xpath/expr-100",
779        "fuzz/seed/xpath/expr-101",
780        "fuzz/seed/xpath/expr-102",
781        "fuzz/seed/xpath/expr-103",
782        "fuzz/seed/xpath/expr-104",
783        "fuzz/seed/xpath/expr-105",
784        "fuzz/seed/xpath/expr-106",
785        "fuzz/seed/xpath/expr-107",
786        "fuzz/seed/xpath/expr-108",
787        "fuzz/seed/xpath/expr-109",
788        "fuzz/seed/xpath/expr-11",
789        "fuzz/seed/xpath/expr-110",
790        "fuzz/seed/xpath/expr-111",
791        "fuzz/seed/xpath/expr-112",
792        "fuzz/seed/xpath/expr-113",
793        "fuzz/seed/xpath/expr-114",
794        "fuzz/seed/xpath/expr-115",
795        "fuzz/seed/xpath/expr-116",
796        "fuzz/seed/xpath/expr-117",
797        "fuzz/seed/xpath/expr-118",
798        "fuzz/seed/xpath/expr-119",
799        "fuzz/seed/xpath/expr-12",
800        "fuzz/seed/xpath/expr-120",
801        "fuzz/seed/xpath/expr-121",
802        "fuzz/seed/xpath/expr-122",
803        "fuzz/seed/xpath/expr-123",
804        "fuzz/seed/xpath/expr-124",
805        "fuzz/seed/xpath/expr-125",
806        "fuzz/seed/xpath/expr-126",
807        "fuzz/seed/xpath/expr-127",
808        "fuzz/seed/xpath/expr-128",
809        "fuzz/seed/xpath/expr-129",
810        "fuzz/seed/xpath/expr-13",
811        "fuzz/seed/xpath/expr-130",
812        "fuzz/seed/xpath/expr-131",
813        "fuzz/seed/xpath/expr-132",
814        "fuzz/seed/xpath/expr-133",
815        "fuzz/seed/xpath/expr-134",
816        "fuzz/seed/xpath/expr-135",
817        "fuzz/seed/xpath/expr-136",
818        "fuzz/seed/xpath/expr-137",
819        "fuzz/seed/xpath/expr-138",
820        "fuzz/seed/xpath/expr-139",
821        "fuzz/seed/xpath/expr-14",
822        "fuzz/seed/xpath/expr-140",
823        "fuzz/seed/xpath/expr-141",
824        "fuzz/seed/xpath/expr-142",
825        "fuzz/seed/xpath/expr-143",
826        "fuzz/seed/xpath/expr-144",
827        "fuzz/seed/xpath/expr-145",
828        "fuzz/seed/xpath/expr-146",
829        "fuzz/seed/xpath/expr-147",
830        "fuzz/seed/xpath/expr-148",
831        "fuzz/seed/xpath/expr-149",
832        "fuzz/seed/xpath/expr-15",
833        "fuzz/seed/xpath/expr-150",
834        "fuzz/seed/xpath/expr-151",
835        "fuzz/seed/xpath/expr-152",
836        "fuzz/seed/xpath/expr-153",
837        "fuzz/seed/xpath/expr-154",
838        "fuzz/seed/xpath/expr-155",
839        "fuzz/seed/xpath/expr-156",
840        "fuzz/seed/xpath/expr-157",
841        "fuzz/seed/xpath/expr-158",
842        "fuzz/seed/xpath/expr-159",
843        "fuzz/seed/xpath/expr-16",
844        "fuzz/seed/xpath/expr-160",
845        "fuzz/seed/xpath/expr-161",
846        "fuzz/seed/xpath/expr-162",
847        "fuzz/seed/xpath/expr-163",
848        "fuzz/seed/xpath/expr-164",
849        "fuzz/seed/xpath/expr-165",
850        "fuzz/seed/xpath/expr-166",
851        "fuzz/seed/xpath/expr-167",
852        "fuzz/seed/xpath/expr-168",
853        "fuzz/seed/xpath/expr-169",
854        "fuzz/seed/xpath/expr-17",
855        "fuzz/seed/xpath/expr-170",
856        "fuzz/seed/xpath/expr-171",
857        "fuzz/seed/xpath/expr-172",
858        "fuzz/seed/xpath/expr-173",
859        "fuzz/seed/xpath/expr-174",
860        "fuzz/seed/xpath/expr-175",
861        "fuzz/seed/xpath/expr-176",
862        "fuzz/seed/xpath/expr-177",
863        "fuzz/seed/xpath/expr-178",
864        "fuzz/seed/xpath/expr-179",
865        "fuzz/seed/xpath/expr-18",
866        "fuzz/seed/xpath/expr-180",
867        "fuzz/seed/xpath/expr-181",
868        "fuzz/seed/xpath/expr-182",
869        "fuzz/seed/xpath/expr-183",
870        "fuzz/seed/xpath/expr-184",
871        "fuzz/seed/xpath/expr-185",
872        "fuzz/seed/xpath/expr-186",
873        "fuzz/seed/xpath/expr-187",
874        "fuzz/seed/xpath/expr-188",
875        "fuzz/seed/xpath/expr-189",
876        "fuzz/seed/xpath/expr-19",
877        "fuzz/seed/xpath/expr-190",
878        "fuzz/seed/xpath/expr-191",
879        "fuzz/seed/xpath/expr-192",
880        "fuzz/seed/xpath/expr-193",
881        "fuzz/seed/xpath/expr-194",
882        "fuzz/seed/xpath/expr-195",
883        "fuzz/seed/xpath/expr-196",
884        "fuzz/seed/xpath/expr-197",
885        "fuzz/seed/xpath/expr-198",
886        "fuzz/seed/xpath/expr-199",
887        "fuzz/seed/xpath/expr-2",
888        "fuzz/seed/xpath/expr-20",
889        "fuzz/seed/xpath/expr-200",
890        "fuzz/seed/xpath/expr-201",
891        "fuzz/seed/xpath/expr-202",
892        "fuzz/seed/xpath/expr-203",
893        "fuzz/seed/xpath/expr-204",
894        "fuzz/seed/xpath/expr-205",
895        "fuzz/seed/xpath/expr-206",
896        "fuzz/seed/xpath/expr-207",
897        "fuzz/seed/xpath/expr-208",
898        "fuzz/seed/xpath/expr-209",
899        "fuzz/seed/xpath/expr-21",
900        "fuzz/seed/xpath/expr-210",
901        "fuzz/seed/xpath/expr-211",
902        "fuzz/seed/xpath/expr-212",
903        "fuzz/seed/xpath/expr-213",
904        "fuzz/seed/xpath/expr-214",
905        "fuzz/seed/xpath/expr-215",
906        "fuzz/seed/xpath/expr-216",
907        "fuzz/seed/xpath/expr-217",
908        "fuzz/seed/xpath/expr-218",
909        "fuzz/seed/xpath/expr-219",
910        "fuzz/seed/xpath/expr-22",
911        "fuzz/seed/xpath/expr-220",
912        "fuzz/seed/xpath/expr-221",
913        "fuzz/seed/xpath/expr-222",
914        "fuzz/seed/xpath/expr-223",
915        "fuzz/seed/xpath/expr-224",
916        "fuzz/seed/xpath/expr-225",
917        "fuzz/seed/xpath/expr-226",
918        "fuzz/seed/xpath/expr-227",
919        "fuzz/seed/xpath/expr-228",
920        "fuzz/seed/xpath/expr-229",
921        "fuzz/seed/xpath/expr-23",
922        "fuzz/seed/xpath/expr-230",
923        "fuzz/seed/xpath/expr-231",
924        "fuzz/seed/xpath/expr-232",
925        "fuzz/seed/xpath/expr-24",
926        "fuzz/seed/xpath/expr-25",
927        "fuzz/seed/xpath/expr-26",
928        "fuzz/seed/xpath/expr-27",
929        "fuzz/seed/xpath/expr-28",
930        "fuzz/seed/xpath/expr-29",
931        "fuzz/seed/xpath/expr-3",
932        "fuzz/seed/xpath/expr-30",
933        "fuzz/seed/xpath/expr-31",
934        "fuzz/seed/xpath/expr-32",
935        "fuzz/seed/xpath/expr-33",
936        "fuzz/seed/xpath/expr-34",
937        "fuzz/seed/xpath/expr-35",
938        "fuzz/seed/xpath/expr-36",
939        "fuzz/seed/xpath/expr-37",
940        "fuzz/seed/xpath/expr-38",
941        "fuzz/seed/xpath/expr-39",
942        "fuzz/seed/xpath/expr-4",
943        "fuzz/seed/xpath/expr-40",
944        "fuzz/seed/xpath/expr-41",
945        "fuzz/seed/xpath/expr-42",
946        "fuzz/seed/xpath/expr-43",
947        "fuzz/seed/xpath/expr-44",
948        "fuzz/seed/xpath/expr-45",
949        "fuzz/seed/xpath/expr-46",
950        "fuzz/seed/xpath/expr-47",
951        "fuzz/seed/xpath/expr-48",
952        "fuzz/seed/xpath/expr-49",
953        "fuzz/seed/xpath/expr-5",
954        "fuzz/seed/xpath/expr-50",
955        "fuzz/seed/xpath/expr-51",
956        "fuzz/seed/xpath/expr-52",
957        "fuzz/seed/xpath/expr-53",
958        "fuzz/seed/xpath/expr-54",
959        "fuzz/seed/xpath/expr-55",
960        "fuzz/seed/xpath/expr-56",
961        "fuzz/seed/xpath/expr-57",
962        "fuzz/seed/xpath/expr-58",
963        "fuzz/seed/xpath/expr-59",
964        "fuzz/seed/xpath/expr-6",
965        "fuzz/seed/xpath/expr-60",
966        "fuzz/seed/xpath/expr-61",
967        "fuzz/seed/xpath/expr-62",
968        "fuzz/seed/xpath/expr-63",
969        "fuzz/seed/xpath/expr-64",
970        "fuzz/seed/xpath/expr-65",
971        "fuzz/seed/xpath/expr-66",
972        "fuzz/seed/xpath/expr-67",
973        "fuzz/seed/xpath/expr-68",
974        "fuzz/seed/xpath/expr-69",
975        "fuzz/seed/xpath/expr-7",
976        "fuzz/seed/xpath/expr-70",
977        "fuzz/seed/xpath/expr-71",
978        "fuzz/seed/xpath/expr-72",
979        "fuzz/seed/xpath/expr-73",
980        "fuzz/seed/xpath/expr-74",
981        "fuzz/seed/xpath/expr-75",
982        "fuzz/seed/xpath/expr-76",
983        "fuzz/seed/xpath/expr-77",
984        "fuzz/seed/xpath/expr-78",
985        "fuzz/seed/xpath/expr-79",
986        "fuzz/seed/xpath/expr-8",
987        "fuzz/seed/xpath/expr-80",
988        "fuzz/seed/xpath/expr-81",
989        "fuzz/seed/xpath/expr-82",
990        "fuzz/seed/xpath/expr-83",
991        "fuzz/seed/xpath/expr-84",
992        "fuzz/seed/xpath/expr-85",
993        "fuzz/seed/xpath/expr-86",
994        "fuzz/seed/xpath/expr-87",
995        "fuzz/seed/xpath/expr-88",
996        "fuzz/seed/xpath/expr-89",
997        "fuzz/seed/xpath/expr-9",
998        "fuzz/seed/xpath/expr-90",
999        "fuzz/seed/xpath/expr-91",
1000        "fuzz/seed/xpath/expr-92",
1001        "fuzz/seed/xpath/expr-93",
1002        "fuzz/seed/xpath/expr-94",
1003        "fuzz/seed/xpath/expr-95",
1004        "fuzz/seed/xpath/expr-96",
1005        "fuzz/seed/xpath/expr-97",
1006        "fuzz/seed/xpath/expr-98",
1007        "fuzz/seed/xpath/expr-99",
1008        "fuzz/seed/xpath/id-1",
1009        "fuzz/seed/xpath/id-2",
1010        "fuzz/seed/xpath/id-3",
1011        "fuzz/seed/xpath/lang-1",
1012        "fuzz/seed/xpath/lang-2",
1013        "fuzz/seed/xpath/lang-3",
1014        "fuzz/seed/xpath/lang-4",
1015        "fuzz/seed/xpath/lang-5",
1016        "fuzz/seed/xpath/mixed-1",
1017        "fuzz/seed/xpath/mixed-2",
1018        "fuzz/seed/xpath/mixed-3",
1019        "fuzz/seed/xpath/mixed-4",
1020        "fuzz/seed/xpath/mixed-5",
1021        "fuzz/seed/xpath/mixed-6",
1022        "fuzz/seed/xpath/mixed-7",
1023        "fuzz/seed/xpath/nodes-1",
1024        "fuzz/seed/xpath/nodes-2",
1025        "fuzz/seed/xpath/nodes-3",
1026        "fuzz/seed/xpath/nodes-4",
1027        "fuzz/seed/xpath/nodes-5",
1028        "fuzz/seed/xpath/ns-1",
1029        "fuzz/seed/xpath/ns-2",
1030        "fuzz/seed/xpath/ns-3",
1031        "fuzz/seed/xpath/ns-4",
1032        "fuzz/seed/xpath/ns-5",
1033        "fuzz/seed/xpath/simple-1",
1034        "fuzz/seed/xpath/simple-10",
1035        "fuzz/seed/xpath/simple-11",
1036        "fuzz/seed/xpath/simple-12",
1037        "fuzz/seed/xpath/simple-13",
1038        "fuzz/seed/xpath/simple-14",
1039        "fuzz/seed/xpath/simple-15",
1040        "fuzz/seed/xpath/simple-16",
1041        "fuzz/seed/xpath/simple-17",
1042        "fuzz/seed/xpath/simple-18",
1043        "fuzz/seed/xpath/simple-19",
1044        "fuzz/seed/xpath/simple-2",
1045        "fuzz/seed/xpath/simple-20",
1046        "fuzz/seed/xpath/simple-21",
1047        "fuzz/seed/xpath/simple-22",
1048        "fuzz/seed/xpath/simple-23",
1049        "fuzz/seed/xpath/simple-24",
1050        "fuzz/seed/xpath/simple-25",
1051        "fuzz/seed/xpath/simple-26",
1052        "fuzz/seed/xpath/simple-3",
1053        "fuzz/seed/xpath/simple-4",
1054        "fuzz/seed/xpath/simple-5",
1055        "fuzz/seed/xpath/simple-6",
1056        "fuzz/seed/xpath/simple-7",
1057        "fuzz/seed/xpath/simple-8",
1058        "fuzz/seed/xpath/simple-9",
1059        "fuzz/seed/xpath/str-1",
1060        "fuzz/seed/xpath/str-10",
1061        "fuzz/seed/xpath/str-11",
1062        "fuzz/seed/xpath/str-12",
1063        "fuzz/seed/xpath/str-13",
1064        "fuzz/seed/xpath/str-14",
1065        "fuzz/seed/xpath/str-15",
1066        "fuzz/seed/xpath/str-16",
1067        "fuzz/seed/xpath/str-17",
1068        "fuzz/seed/xpath/str-18",
1069        "fuzz/seed/xpath/str-19",
1070        "fuzz/seed/xpath/str-2",
1071        "fuzz/seed/xpath/str-20",
1072        "fuzz/seed/xpath/str-21",
1073        "fuzz/seed/xpath/str-22",
1074        "fuzz/seed/xpath/str-23",
1075        "fuzz/seed/xpath/str-3",
1076        "fuzz/seed/xpath/str-4",
1077        "fuzz/seed/xpath/str-5",
1078        "fuzz/seed/xpath/str-6",
1079        "fuzz/seed/xpath/str-7",
1080        "fuzz/seed/xpath/str-8",
1081        "fuzz/seed/xpath/str-9",
1082        "fuzz/seed/xpath/usr1-1",
1083        "fuzz/seed/xpath/vid-1",
1084        "fuzz/seed/xpath/vid-10",
1085        "fuzz/seed/xpath/vid-11",
1086        "fuzz/seed/xpath/vid-12",
1087        "fuzz/seed/xpath/vid-13",
1088        "fuzz/seed/xpath/vid-14",
1089        "fuzz/seed/xpath/vid-15",
1090        "fuzz/seed/xpath/vid-16",
1091        "fuzz/seed/xpath/vid-2",
1092        "fuzz/seed/xpath/vid-3",
1093        "fuzz/seed/xpath/vid-4",
1094        "fuzz/seed/xpath/vid-5",
1095        "fuzz/seed/xpath/vid-6",
1096        "fuzz/seed/xpath/vid-7",
1097        "fuzz/seed/xpath/vid-8",
1098        "fuzz/seed/xpath/vid-9",
1099    ],
1100}
1101
1102cc_fuzz {
1103    name: "libxml2_xpath_fuzzer",
1104    defaults: ["libxml2-fuzz-defaults"],
1105    srcs: [
1106        "fuzz/xpath.c",
1107    ],
1108    dictionary: "fuzz/xpath.dict",
1109    corpus: [":libxml2_xpath_fuzz_corpus"],
1110}
1111