// // Copyright (C) 2014 The Android Open Source Project // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. // // // To update: // // git merge aosp/upstream-master // mma -j // # (Make any necessary Android.bp changes and test the new libxml2.) // git push aosp HEAD:master # Push directly, avoiding gerrit. // git push aosp HEAD:refs/for/master # Push to gerrit. // // # Now commit any necessary Android.bp changes like normal: // repo start post-sync . // git commit -a // // This comes from the automake-generated Makefile. // We deliberately exclude nanoftp.c and nanohttp.c, the trio library, and zlib. // *** THIS PACKAGE HAS SPECIAL LICENSING CONDITIONS. PLEASE // CONSULT THE OWNERS AND opensource-licensing@google.com BEFORE // DEPENDING ON IT IN YOUR PROJECT. *** package { default_applicable_licenses: ["external_libxml2_license"], } // Added automatically by a large-scale-change that took the approach of // 'apply every license found to every target'. While this makes sure we respect // every license restriction, it may not be entirely correct. // // e.g. GPL in an MIT project might only apply to the contrib/ directory. // // Please consider splitting the single license below into multiple licenses, // taking care not to lose any license_kind information, and overriding the // default license using the 'licenses: [...]' property on targets as needed. // // For unused files, consider creating a 'fileGroup' with "//visibility:private" // to attach the license to, and including a comment whether the files may be // used in the current project. // See: http://go/android-license-faq license { name: "external_libxml2_license", visibility: [":__subpackages__"], license_kinds: [ "SPDX-license-identifier-CC-BY-SA", "SPDX-license-identifier-GFDL", // by exception only "SPDX-license-identifier-GPL", "SPDX-license-identifier-GPL-2.0", "SPDX-license-identifier-MIT", "SPDX-license-identifier-W3C", ], license_text: [ "Copyright", ], } cc_defaults { name: "libxml2-defaults", srcs: [ "SAX.c", "entities.c", "encoding.c", "error.c", "parserInternals.c", "parser.c", "tree.c", "hash.c", "list.c", "xmlIO.c", "xmlmemory.c", "uri.c", "valid.c", "xlink.c", "debugXML.c", "xpath.c", "xpointer.c", "xinclude.c", "DOCBparser.c", "catalog.c", "globals.c", "threads.c", "c14n.c", "xmlstring.c", "buf.c", "xmlregexp.c", "xmlschemas.c", "xmlschemastypes.c", "xmlunicode.c", "xmlreader.c", "relaxng.c", "dict.c", "SAX2.c", "xmlwriter.c", "legacy.c", "chvalid.c", "pattern.c", "xmlsave.c", "xmlmodule.c", "schematron.c", ], stl: "none", export_include_dirs: ["include"], cflags: [ "-DLIBXML_THREAD_ENABLED=1", // Poison various things that should not be defined. "-DLIBXML_LEGACY_ENABLED=NO", "-DLIBXML_FTP_ENABLED=NO", "-DLIBXML_HTML_ENABLED=NO", "-DLIBXML_HTTP_ENABLED=NO", "-DLIBXML_ICONV_ENABLED=NO", "-DLIBXML_LZMA_ENABLED=NO", "-DLIBXML_ZLIB_ENABLED=NO", // And this one depends on whether or not we're building for the VNDK. "-DLIBXML_ICU_ENABLED=NO", "-Wall", "-Werror", "-Wno-error=ignored-attributes", "-Wno-missing-field-initializers", "-Wno-self-assign", "-Wno-sign-compare", "-Wno-tautological-pointer-compare", "-Wno-unused-function", "-Wno-unused-parameter", ], static: { cflags: [ "-fvisibility=hidden", "-DSTATIC_LIBXML=1", ], }, } cc_library { name: "libxml2", defaults: ["libxml2-defaults"], vendor_available: true, product_available: true, vndk: { enabled: true, }, host_supported: true, target: { android: { shared_libs: ["libandroidicu"], export_shared_lib_headers: ["libandroidicu"], }, host: { shared_libs: [ "libicui18n", "libicuuc", ], export_shared_lib_headers: [ "libicui18n", "libicuuc", ], }, vendor: { exclude_shared_libs: ["libandroidicu"], }, product: { exclude_shared_libs: ["libandroidicu"], }, }, apex_available: [ "//apex_available:platform", "com.android.art", // used by odrefresh "com.android.art.debug", // used by odrefreshd "com.android.runtime", // used by linkerconfig "com.android.virt", ], min_sdk_version: "apex_inherit", } cc_library_static { name: "libxml2_ndk", defaults: ["libxml2-defaults"], sdk_version: "current", } cc_binary_host { name: "xmllint", srcs: ["xmllint.c"], cflags: [ "-DLIBXML_THREAD_ENABLED=1", "-Wall", "-Werror", ], shared_libs: ["libxml2"], } cc_binary_host { name: "libxml2_genseed", srcs: [ "fuzz/genSeed.c", "fuzz/fuzz.c", ], cflags: [ "-Wno-unused-variable", ], shared_libs: ["libxml2"], } cc_defaults { name: "libxml2-fuzz-defaults", host_supported: true, shared_libs: [ "libxml2", ], srcs: [ "fuzz/fuzz.c", ], fuzz_config: { componentid: 87896, }, } cc_fuzz { name: "libxml2_regexp_fuzzer", defaults: ["libxml2-fuzz-defaults"], srcs: [ "fuzz/regexp.c", ], dictionary: "fuzz/regexp.dict", } genrule { name: "libxml2_schema_fuzz_corpus", tools: ["libxml2_genseed"], srcs: [ "test/schemas", ], // The genseed tool only writes under its current directory. // Soong does not run the tool from within the jail, so // the shell must first 'cd' to the right path. However, // then the location of the tool is lost, as $(location) gives // a relative path. cmd: "mkdir -p $(genDir)/fuzz/seed/schema && " + "TOP_DIR=$$(pwd) && " + "cd $(genDir)/fuzz && " + "$${TOP_DIR}/$(location libxml2_genseed) schema " + "$${TOP_DIR}/$(location test/schemas)/*.xsd", out: [ "fuzz/seed/schema/570702_0.xsd", "fuzz/seed/schema/579746_0.xsd", "fuzz/seed/schema/579746_1.xsd", "fuzz/seed/schema/582887_0.xsd", "fuzz/seed/schema/582887-attribute.xsd", "fuzz/seed/schema/582887-common.xsd", "fuzz/seed/schema/582887-element.xsd", "fuzz/seed/schema/582906-1_0.xsd", "fuzz/seed/schema/582906-1-common.xsd", "fuzz/seed/schema/582906-1-prog1.xsd", "fuzz/seed/schema/582906-1-prog2-include.xsd", "fuzz/seed/schema/582906-1-prog2.xsd", "fuzz/seed/schema/582906-2_0.xsd", "fuzz/seed/schema/582906-2-common.xsd", "fuzz/seed/schema/582906-2-prog1.xsd", "fuzz/seed/schema/582906-2-prog2-include.xsd", "fuzz/seed/schema/582906-2-prog2.xsd", "fuzz/seed/schema/all_0.xsd", "fuzz/seed/schema/all1_0.xsd", "fuzz/seed/schema/all_1.xsd", "fuzz/seed/schema/all_2.xsd", "fuzz/seed/schema/allsg_0.xsd", "fuzz/seed/schema/all.xsd", "fuzz/seed/schema/annot-err_0.xsd", "fuzz/seed/schema/any1_0.xsd", "fuzz/seed/schema/any2_0.xsd", "fuzz/seed/schema/any3_0.xsd", "fuzz/seed/schema/any4_0.xsd", "fuzz/seed/schema/any5_0.xsd", "fuzz/seed/schema/any5_1.xsd", "fuzz/seed/schema/any6_1.xsd", "fuzz/seed/schema/any6_2.xsd", "fuzz/seed/schema/any7_1.xsd", "fuzz/seed/schema/any7_2.xsd", "fuzz/seed/schema/any8_1.xsd", "fuzz/seed/schema/anyAttr1_0.xsd", "fuzz/seed/schema/anyAttr-derive1_0.xsd", "fuzz/seed/schema/anyAttr-derive2_0.xsd", "fuzz/seed/schema/anyAttr-derive-errors1_0.xsd", "fuzz/seed/schema/anyAttr.importA.1_0.xsd", "fuzz/seed/schema/anyAttr.importB.1_0.xsd", "fuzz/seed/schema/anyAttr-processContents1_0.xsd", "fuzz/seed/schema/anyAttr-processContents-err1_0.xsd", "fuzz/seed/schema/attr0_0.xsd", "fuzz/seed/schema/attruse_0_0.xsd", "fuzz/seed/schema/bug141312_0.xsd", "fuzz/seed/schema/bug141333_0.xsd", "fuzz/seed/schema/bug141333.xsd", "fuzz/seed/schema/bug143951_0.xsd", "fuzz/seed/schema/bug145246_0.xsd", "fuzz/seed/schema/bug152470_1.xsd", "fuzz/seed/schema/bug167754_0.xsd", "fuzz/seed/schema/bug303566_1.xsd", "fuzz/seed/schema/bug306806_1.xsd", "fuzz/seed/schema/bug309338_1.xsd", "fuzz/seed/schema/bug310264_0.xsd", "fuzz/seed/schema/bug312957_1.xsd", "fuzz/seed/schema/bug313982_0.xsd", "fuzz/seed/schema/bug321475_1.xsd", "fuzz/seed/schema/bug322411_1.xsd", "fuzz/seed/schema/bug323510_1.xsd", "fuzz/seed/schema/bug455953_0.xsd", "fuzz/seed/schema/changelog093_1.xsd", "fuzz/seed/schema/choice_0.xsd", "fuzz/seed/schema/choice_1.xsd", "fuzz/seed/schema/choice_2.xsd", "fuzz/seed/schema/complex-type-extension_0.xsd", "fuzz/seed/schema/cos-ct-extends-1-3_0.xsd", "fuzz/seed/schema/cos-st-restricts-1-2-err_0.xsd", "fuzz/seed/schema/ct-sc-nobase_0.xsd", "fuzz/seed/schema/date_0.xsd", "fuzz/seed/schema/decimal-1_1.xsd", "fuzz/seed/schema/decimal-1.xsd", "fuzz/seed/schema/decimal-2_1.xsd", "fuzz/seed/schema/decimal-3_1.xsd", "fuzz/seed/schema/derivation-ok-extension_0.xsd", "fuzz/seed/schema/derivation-ok-extension-err_0.xsd", "fuzz/seed/schema/derivation-ok-restriction-2-1-1_0.xsd", "fuzz/seed/schema/derivation-ok-restriction-4-1-err_0.xsd", "fuzz/seed/schema/derivation-restriction-anyAttr_0.xsd", "fuzz/seed/schema/derivation-restriction-anyType.xsd", "fuzz/seed/schema/deter0_0.xsd", "fuzz/seed/schema/dur_0.xsd", "fuzz/seed/schema/elem0_0.xsd", "fuzz/seed/schema/element-err_0.xsd", "fuzz/seed/schema/element-minmax-err_0.xsd", "fuzz/seed/schema/empty_0.xsd", "fuzz/seed/schema/empty_1.xsd", "fuzz/seed/schema/empty-value_1.xsd", "fuzz/seed/schema/extension0_0.xsd", "fuzz/seed/schema/extension1_0.xsd", "fuzz/seed/schema/extension2_1.xsd", "fuzz/seed/schema/facet-unionST-err1_0.xsd", "fuzz/seed/schema/facet-whiteSpace_0.xsd", "fuzz/seed/schema/group0_0.xsd", "fuzz/seed/schema/hexbinary_0.xsd", "fuzz/seed/schema/idc-keyref-err1_1.xsd", "fuzz/seed/schema/import0_0.xsd", "fuzz/seed/schema/import1_0.xsd", "fuzz/seed/schema/import2_0.xsd", "fuzz/seed/schema/import-455953.xsd", "fuzz/seed/schema/include1_0.xsd", "fuzz/seed/schema/include2_0.xsd", "fuzz/seed/schema/include3_0.xsd", "fuzz/seed/schema/issue40_0.xsd", "fuzz/seed/schema/item_0.xsd", "fuzz/seed/schema/item_1.xsd", "fuzz/seed/schema/length1_0.xsd", "fuzz/seed/schema/length2_0.xsd", "fuzz/seed/schema/length3_0.xsd", "fuzz/seed/schema/list0_0.xsd", "fuzz/seed/schema/list0_1.xsd", "fuzz/seed/schema/mixed0_0.xsd", "fuzz/seed/schema/mixed1_0.xsd", "fuzz/seed/schema/ns0_0.xsd", "fuzz/seed/schema/ns0_1.xsd", "fuzz/seed/schema/ns1_0.xsd", "fuzz/seed/schema/ns2_0.xsd", "fuzz/seed/schema/nvdcve_0.xsd", "fuzz/seed/schema/po0_0.xsd", "fuzz/seed/schema/po1_0.xsd", "fuzz/seed/schema/poschargrp0_0.xsd", "fuzz/seed/schema/regexp-char-ref_0.xsd", "fuzz/seed/schema/regexp-char-ref_1.xsd", "fuzz/seed/schema/restrict-CT-attr-ref_0.xsd", "fuzz/seed/schema/restriction0_0.xsd", "fuzz/seed/schema/restriction-attr1_0.xsd", "fuzz/seed/schema/restriction-enum-1_1.xsd", "fuzz/seed/schema/scc-no-xmlns_0.xsd", "fuzz/seed/schema/scc-no-xsi_0.xsd", "fuzz/seed/schema/seq0_0.xsd", "fuzz/seed/schema/seq-dubl-elem1_0.xsd", "fuzz/seed/schema/src-attribute1_0.xsd", "fuzz/seed/schema/src-attribute2_0.xsd", "fuzz/seed/schema/src-attribute3-1_0.xsd", "fuzz/seed/schema/src-attribute3-2-form_0.xsd", "fuzz/seed/schema/src-attribute3-2-st_0.xsd", "fuzz/seed/schema/src-attribute3-2-type_0.xsd", "fuzz/seed/schema/src-attribute4_0.xsd", "fuzz/seed/schema/src-element1_0.xsd", "fuzz/seed/schema/src-element2-1_0.xsd", "fuzz/seed/schema/src-element2-2_0.xsd", "fuzz/seed/schema/src-element3_0.xsd", "fuzz/seed/schema/subst-group-1_0.xsd", "fuzz/seed/schema/union_0_0.xsd", "fuzz/seed/schema/union2_1.xsd", "fuzz/seed/schema/vdv-complexTypes.xsd", "fuzz/seed/schema/vdv-first0_0.xsd", "fuzz/seed/schema/vdv-first1_0.xsd", "fuzz/seed/schema/vdv-first2_0.xsd", "fuzz/seed/schema/vdv-first3_0.xsd", "fuzz/seed/schema/vdv-first4_0.xsd", "fuzz/seed/schema/vdv-first5_0.xsd", "fuzz/seed/schema/vdv-simpleTypes.xsd", "fuzz/seed/schema/xml.xsd", "fuzz/seed/schema/xsd-list-itemType_0.xsd", "fuzz/seed/schema/xsd-simpleType-varieties_0.xsd", ], } cc_fuzz { name: "libxml2_schema_fuzzer", defaults: ["libxml2-fuzz-defaults"], srcs: [ "fuzz/schema.c", ], dictionary: "fuzz/schema.dict", corpus: [":libxml2_schema_fuzz_corpus"], } cc_fuzz { name: "libxml2_uri_fuzzer", defaults: ["libxml2-fuzz-defaults"], srcs: [ "fuzz/uri.c", ], } genrule { name: "libxml2_xml_fuzz_corpus", tools: ["libxml2_genseed"], srcs: [ "test", "test/errors", "test/errors10", "test/namespaces", "test/valid", "test/VC", "test/VCM", "test/XInclude/docs", "test/xmlid", ], // The genseed tool only writes under its current directory. // Soong does not run the tool from within the jail, so // the shell must first 'cd' to the right path. However, // then the location of the tool is lost, as $(location) gives // a relative path. cmd: "mkdir -p $(genDir)/fuzz/seed/xml && " + "TOP_DIR=$$(pwd) && " + "cd $(genDir)/fuzz && " + "$${TOP_DIR}/$(location libxml2_genseed) xml " + "$${TOP_DIR}/$(location test)/* " + "$${TOP_DIR}/$(location test/errors)/*.xml " + "$${TOP_DIR}/$(location test/errors10)/*.xml " + "$${TOP_DIR}/$(location test/namespaces)/* " + "$${TOP_DIR}/$(location test/valid)/*.xml " + "$${TOP_DIR}/$(location test/VC)/* " + "$${TOP_DIR}/$(location test/VCM)/* " + "$${TOP_DIR}/$(location test/XInclude/docs)/* " + "$${TOP_DIR}/$(location test/xmlid)/*", out: [ "fuzz/seed/xml/127772.xml", "fuzz/seed/xml/21.xml", "fuzz/seed/xml/694228.xml", "fuzz/seed/xml/737840.xml", "fuzz/seed/xml/754946.xml", "fuzz/seed/xml/754947.xml", "fuzz/seed/xml/758588.xml", "fuzz/seed/xml/759020.xml", "fuzz/seed/xml/759398.xml", "fuzz/seed/xml/759573-2.xml", "fuzz/seed/xml/759573.xml", "fuzz/seed/xml/759579.xml", "fuzz/seed/xml/766956.xml", "fuzz/seed/xml/781205.xml", "fuzz/seed/xml/781333.xml", "fuzz/seed/xml/781361.xml", "fuzz/seed/xml/att1", "fuzz/seed/xml/att10", "fuzz/seed/xml/att11", "fuzz/seed/xml/att2", "fuzz/seed/xml/att3", "fuzz/seed/xml/att4", "fuzz/seed/xml/att5", "fuzz/seed/xml/att6", "fuzz/seed/xml/att7", "fuzz/seed/xml/att8", "fuzz/seed/xml/att9", "fuzz/seed/xml/attr1.xml", "fuzz/seed/xml/attr2.xml", "fuzz/seed/xml/attr3.xml", "fuzz/seed/xml/attr4.xml", "fuzz/seed/xml/AttributeDefaultLegal", "fuzz/seed/xml/AttributeNmtokens", "fuzz/seed/xml/AttributeNmtokens.xml", "fuzz/seed/xml/attrib.xml", "fuzz/seed/xml/badcomment.xml", "fuzz/seed/xml/bigentname.xml", "fuzz/seed/xml/bigname2.xml", "fuzz/seed/xml/bigname.xml", "fuzz/seed/xml/cdata", "fuzz/seed/xml/cdata2", "fuzz/seed/xml/cdata-2-byte-UTF-8.xml", "fuzz/seed/xml/cdata-3-byte-UTF-8.xml", "fuzz/seed/xml/cdata-4-byte-UTF-8.xml", "fuzz/seed/xml/cdata.xml", "fuzz/seed/xml/charref1.xml", "fuzz/seed/xml/comment1.xml", "fuzz/seed/xml/comment2.xml", "fuzz/seed/xml/comment3.xml", "fuzz/seed/xml/comment4.xml", "fuzz/seed/xml/comment5.xml", "fuzz/seed/xml/comment6.xml", "fuzz/seed/xml/comment.xml", "fuzz/seed/xml/cond_sect1.xml", "fuzz/seed/xml/cond_sect2.xml", "fuzz/seed/xml/content1.xml", "fuzz/seed/xml/dav1", "fuzz/seed/xml/dav10", "fuzz/seed/xml/dav11", "fuzz/seed/xml/dav12", "fuzz/seed/xml/dav13", "fuzz/seed/xml/dav15", "fuzz/seed/xml/dav16", "fuzz/seed/xml/dav17", "fuzz/seed/xml/dav18", "fuzz/seed/xml/dav19", "fuzz/seed/xml/dav2", "fuzz/seed/xml/dav3", "fuzz/seed/xml/dav4", "fuzz/seed/xml/dav5", "fuzz/seed/xml/dav6", "fuzz/seed/xml/dav7", "fuzz/seed/xml/dav8", "fuzz/seed/xml/dav9", "fuzz/seed/xml/defattr2.xml", "fuzz/seed/xml/defattr.xml", "fuzz/seed/xml/dia1", "fuzz/seed/xml/dia2", "fuzz/seed/xml/dia.xml", "fuzz/seed/xml/docids.xml", "fuzz/seed/xml/dtd1", "fuzz/seed/xml/dtd10", "fuzz/seed/xml/dtd11", "fuzz/seed/xml/dtd12", "fuzz/seed/xml/dtd13", "fuzz/seed/xml/dtd2", "fuzz/seed/xml/dtd3", "fuzz/seed/xml/dtd4", "fuzz/seed/xml/dtd5", "fuzz/seed/xml/dtd6", "fuzz/seed/xml/dtd7", "fuzz/seed/xml/dtd8", "fuzz/seed/xml/dtd9", "fuzz/seed/xml/DuplicateType", "fuzz/seed/xml/ebcdic_566012.xml", "fuzz/seed/xml/ElementValid", "fuzz/seed/xml/ElementValid2", "fuzz/seed/xml/ElementValid3", "fuzz/seed/xml/ElementValid4", "fuzz/seed/xml/ElementValid5", "fuzz/seed/xml/ElementValid6", "fuzz/seed/xml/ElementValid7", "fuzz/seed/xml/ElementValid8", "fuzz/seed/xml/emptycdata.xml", "fuzz/seed/xml/ent1", "fuzz/seed/xml/ent10", "fuzz/seed/xml/ent11", "fuzz/seed/xml/ent12", "fuzz/seed/xml/ent13", "fuzz/seed/xml/ent2", "fuzz/seed/xml/ent3", "fuzz/seed/xml/ent4", "fuzz/seed/xml/ent5", "fuzz/seed/xml/ent6", "fuzz/seed/xml/ent7", "fuzz/seed/xml/ent_738805.xml", "fuzz/seed/xml/ent8", "fuzz/seed/xml/ent9", "fuzz/seed/xml/Enumeration", "fuzz/seed/xml/err_0.xml", "fuzz/seed/xml/err_10.xml", "fuzz/seed/xml/err_11.xml", "fuzz/seed/xml/err_1.xml", "fuzz/seed/xml/err_2.xml", "fuzz/seed/xml/err_3.xml", "fuzz/seed/xml/err_4.xml", "fuzz/seed/xml/err_5.xml", "fuzz/seed/xml/err_6.xml", "fuzz/seed/xml/err_7.xml", "fuzz/seed/xml/err_8.xml", "fuzz/seed/xml/err_9.xml", "fuzz/seed/xml/eve.xml", "fuzz/seed/xml/extparsedent.xml", "fuzz/seed/xml/fallback2.xml", "fuzz/seed/xml/fallback3.xml", "fuzz/seed/xml/fallback4.xml", "fuzz/seed/xml/fallback5.xml", "fuzz/seed/xml/fallback6.xml", "fuzz/seed/xml/fallback.xml", "fuzz/seed/xml/icu_parse_test.xml", "fuzz/seed/xml/id1.xml", "fuzz/seed/xml/id2.xml", "fuzz/seed/xml/id3.xml", "fuzz/seed/xml/id_err1.xml", "fuzz/seed/xml/id_err2.xml", "fuzz/seed/xml/id_tst1.xml", "fuzz/seed/xml/id_tst2.xml", "fuzz/seed/xml/id_tst3.xml", "fuzz/seed/xml/id_tst4.xml", "fuzz/seed/xml/include.xml", "fuzz/seed/xml/index.xml", "fuzz/seed/xml/intsubset2.xml", "fuzz/seed/xml/intsubset.xml", "fuzz/seed/xml/isolat1", "fuzz/seed/xml/isolat2", "fuzz/seed/xml/isolat3", "fuzz/seed/xml/japancrlf.xml", "fuzz/seed/xml/mixed_ns.xml", "fuzz/seed/xml/name2.xml", "fuzz/seed/xml/name.xml", "fuzz/seed/xml/nodes2.xml", "fuzz/seed/xml/nodes3.xml", "fuzz/seed/xml/nodes.xml", "fuzz/seed/xml/notes.xml", "fuzz/seed/xml/ns", "fuzz/seed/xml/NS1", "fuzz/seed/xml/ns1.xml", "fuzz/seed/xml/ns2", "fuzz/seed/xml/NS2", "fuzz/seed/xml/ns2.xml", "fuzz/seed/xml/ns3", "fuzz/seed/xml/NS3", "fuzz/seed/xml/ns4", "fuzz/seed/xml/ns5", "fuzz/seed/xml/ns6", "fuzz/seed/xml/ns7", "fuzz/seed/xml/nsclean.xml", "fuzz/seed/xml/ns.xml", "fuzz/seed/xml/objednavka.xml", "fuzz/seed/xml/OneID", "fuzz/seed/xml/OneID2", "fuzz/seed/xml/OneID3", "fuzz/seed/xml/p3p", "fuzz/seed/xml/PENesting", "fuzz/seed/xml/PENesting2", "fuzz/seed/xml/pi2.xml", "fuzz/seed/xml/pi.xml", "fuzz/seed/xml/rdf1", "fuzz/seed/xml/rdf2", "fuzz/seed/xml/rec_ext_ent.xml", "fuzz/seed/xml/recursive.xml", "fuzz/seed/xml/REC-xml-19980210.xml", "fuzz/seed/xml/rss.xml", "fuzz/seed/xml/slashdot16.xml", "fuzz/seed/xml/slashdot.rdf", "fuzz/seed/xml/slashdot.xml", "fuzz/seed/xml/svg1", "fuzz/seed/xml/svg2", "fuzz/seed/xml/svg3", "fuzz/seed/xml/t10.xml", "fuzz/seed/xml/t11.xml", "fuzz/seed/xml/t4a.xml", "fuzz/seed/xml/t4.xml", "fuzz/seed/xml/t6.xml", "fuzz/seed/xml/t8a.xml", "fuzz/seed/xml/t8.xml", "fuzz/seed/xml/t9a.xml", "fuzz/seed/xml/t9.xml", "fuzz/seed/xml/title.xml", "fuzz/seed/xml/tstblanks.xml", "fuzz/seed/xml/tstencoding.xml", "fuzz/seed/xml/txtinclude.xml", "fuzz/seed/xml/UniqueElementTypeDeclaration", "fuzz/seed/xml/UniqueElementTypeDeclaration2", "fuzz/seed/xml/utf16bebom.xml", "fuzz/seed/xml/utf16bom.xml", "fuzz/seed/xml/UTF16Entity.xml", "fuzz/seed/xml/utf16lebom.xml", "fuzz/seed/xml/utf8bom.xml", "fuzz/seed/xml/v10.xml", "fuzz/seed/xml/v11.xml", "fuzz/seed/xml/v12.xml", "fuzz/seed/xml/v13.xml", "fuzz/seed/xml/v14.xml", "fuzz/seed/xml/v15.xml", "fuzz/seed/xml/v16.xml", "fuzz/seed/xml/v17.xml", "fuzz/seed/xml/v18.xml", "fuzz/seed/xml/v19.xml", "fuzz/seed/xml/v1.xml", "fuzz/seed/xml/v20.xml", "fuzz/seed/xml/v21.xml", "fuzz/seed/xml/v22.xml", "fuzz/seed/xml/v23.xml", "fuzz/seed/xml/v24.xml", "fuzz/seed/xml/v2.xml", "fuzz/seed/xml/v3.xml", "fuzz/seed/xml/v4.xml", "fuzz/seed/xml/v5.xml", "fuzz/seed/xml/v6.xml", "fuzz/seed/xml/v7.xml", "fuzz/seed/xml/v8.xml", "fuzz/seed/xml/v9.xml", "fuzz/seed/xml/wap.xml", "fuzz/seed/xml/winblanks.xml", "fuzz/seed/xml/wml.xml", "fuzz/seed/xml/xhtml1", "fuzz/seed/xml/xhtmlcomp", "fuzz/seed/xml/xlink.xml", "fuzz/seed/xml/xml1", "fuzz/seed/xml/xml2", ], } cc_fuzz { name: "libxml2_xml_fuzzer", defaults: ["libxml2-fuzz-defaults"], srcs: [ "fuzz/xml.c", ], dictionary: "fuzz/xml.dict", corpus: [":libxml2_xml_fuzz_corpus"], } genrule { name: "libxml2_xpath_fuzz_corpus", tools: ["libxml2_genseed"], srcs: [ "test/XPath", ], // The genseed tool only writes under its current directory. // Soong does not run the tool from within the jail, so // the shell must first 'cd' to the right path. However, // then the location of the tool is lost, as $(location) gives // a relative path. cmd: "mkdir -p $(genDir)/fuzz/seed/xpath && " + "TOP_DIR=$$(pwd) && " + "cd $(genDir)/fuzz && " + "$${TOP_DIR}/$(location libxml2_genseed) xpath " + "$${TOP_DIR}/$(location test/XPath)", out: [ "fuzz/seed/xpath/chapters-1", "fuzz/seed/xpath/chapters-10", "fuzz/seed/xpath/chapters-11", "fuzz/seed/xpath/chapters-12", "fuzz/seed/xpath/chapters-13", "fuzz/seed/xpath/chapters-14", "fuzz/seed/xpath/chapters-15", "fuzz/seed/xpath/chapters-16", "fuzz/seed/xpath/chapters-17", "fuzz/seed/xpath/chapters-18", "fuzz/seed/xpath/chapters-19", "fuzz/seed/xpath/chapters-2", "fuzz/seed/xpath/chapters-20", "fuzz/seed/xpath/chapters-21", "fuzz/seed/xpath/chapters-22", "fuzz/seed/xpath/chapters-23", "fuzz/seed/xpath/chapters-24", "fuzz/seed/xpath/chapters-25", "fuzz/seed/xpath/chapters-26", "fuzz/seed/xpath/chapters-27", "fuzz/seed/xpath/chapters-28", "fuzz/seed/xpath/chapters-29", "fuzz/seed/xpath/chapters-3", "fuzz/seed/xpath/chapters-30", "fuzz/seed/xpath/chapters-31", "fuzz/seed/xpath/chapters-32", "fuzz/seed/xpath/chapters-33", "fuzz/seed/xpath/chapters-34", "fuzz/seed/xpath/chapters-35", "fuzz/seed/xpath/chapters-36", "fuzz/seed/xpath/chapters-37", "fuzz/seed/xpath/chapters-38", "fuzz/seed/xpath/chapters-39", "fuzz/seed/xpath/chapters-4", "fuzz/seed/xpath/chapters-40", "fuzz/seed/xpath/chapters-41", "fuzz/seed/xpath/chapters-42", "fuzz/seed/xpath/chapters-43", "fuzz/seed/xpath/chapters-5", "fuzz/seed/xpath/chapters-6", "fuzz/seed/xpath/chapters-7", "fuzz/seed/xpath/chapters-8", "fuzz/seed/xpath/chapters-9", "fuzz/seed/xpath/expr-1", "fuzz/seed/xpath/expr-10", "fuzz/seed/xpath/expr-100", "fuzz/seed/xpath/expr-101", "fuzz/seed/xpath/expr-102", "fuzz/seed/xpath/expr-103", "fuzz/seed/xpath/expr-104", "fuzz/seed/xpath/expr-105", "fuzz/seed/xpath/expr-106", "fuzz/seed/xpath/expr-107", "fuzz/seed/xpath/expr-108", "fuzz/seed/xpath/expr-109", "fuzz/seed/xpath/expr-11", "fuzz/seed/xpath/expr-110", "fuzz/seed/xpath/expr-111", "fuzz/seed/xpath/expr-112", "fuzz/seed/xpath/expr-113", "fuzz/seed/xpath/expr-114", "fuzz/seed/xpath/expr-115", "fuzz/seed/xpath/expr-116", "fuzz/seed/xpath/expr-117", "fuzz/seed/xpath/expr-118", "fuzz/seed/xpath/expr-119", "fuzz/seed/xpath/expr-12", "fuzz/seed/xpath/expr-120", "fuzz/seed/xpath/expr-121", "fuzz/seed/xpath/expr-122", "fuzz/seed/xpath/expr-123", "fuzz/seed/xpath/expr-124", "fuzz/seed/xpath/expr-125", "fuzz/seed/xpath/expr-126", "fuzz/seed/xpath/expr-127", "fuzz/seed/xpath/expr-128", "fuzz/seed/xpath/expr-129", "fuzz/seed/xpath/expr-13", "fuzz/seed/xpath/expr-130", "fuzz/seed/xpath/expr-131", "fuzz/seed/xpath/expr-132", "fuzz/seed/xpath/expr-133", "fuzz/seed/xpath/expr-134", "fuzz/seed/xpath/expr-135", "fuzz/seed/xpath/expr-136", "fuzz/seed/xpath/expr-137", "fuzz/seed/xpath/expr-138", "fuzz/seed/xpath/expr-139", "fuzz/seed/xpath/expr-14", "fuzz/seed/xpath/expr-140", "fuzz/seed/xpath/expr-141", "fuzz/seed/xpath/expr-142", "fuzz/seed/xpath/expr-143", "fuzz/seed/xpath/expr-144", "fuzz/seed/xpath/expr-145", "fuzz/seed/xpath/expr-146", "fuzz/seed/xpath/expr-147", "fuzz/seed/xpath/expr-148", "fuzz/seed/xpath/expr-149", "fuzz/seed/xpath/expr-15", "fuzz/seed/xpath/expr-150", "fuzz/seed/xpath/expr-151", "fuzz/seed/xpath/expr-152", "fuzz/seed/xpath/expr-153", "fuzz/seed/xpath/expr-154", "fuzz/seed/xpath/expr-155", "fuzz/seed/xpath/expr-156", "fuzz/seed/xpath/expr-157", "fuzz/seed/xpath/expr-158", "fuzz/seed/xpath/expr-159", "fuzz/seed/xpath/expr-16", "fuzz/seed/xpath/expr-160", "fuzz/seed/xpath/expr-161", "fuzz/seed/xpath/expr-162", "fuzz/seed/xpath/expr-163", "fuzz/seed/xpath/expr-164", "fuzz/seed/xpath/expr-165", "fuzz/seed/xpath/expr-166", "fuzz/seed/xpath/expr-167", "fuzz/seed/xpath/expr-168", "fuzz/seed/xpath/expr-169", "fuzz/seed/xpath/expr-17", "fuzz/seed/xpath/expr-170", "fuzz/seed/xpath/expr-171", "fuzz/seed/xpath/expr-172", "fuzz/seed/xpath/expr-173", "fuzz/seed/xpath/expr-174", "fuzz/seed/xpath/expr-175", "fuzz/seed/xpath/expr-176", "fuzz/seed/xpath/expr-177", "fuzz/seed/xpath/expr-178", "fuzz/seed/xpath/expr-179", "fuzz/seed/xpath/expr-18", "fuzz/seed/xpath/expr-180", "fuzz/seed/xpath/expr-181", "fuzz/seed/xpath/expr-182", "fuzz/seed/xpath/expr-183", "fuzz/seed/xpath/expr-184", "fuzz/seed/xpath/expr-185", "fuzz/seed/xpath/expr-186", "fuzz/seed/xpath/expr-187", "fuzz/seed/xpath/expr-188", "fuzz/seed/xpath/expr-189", "fuzz/seed/xpath/expr-19", "fuzz/seed/xpath/expr-190", "fuzz/seed/xpath/expr-191", "fuzz/seed/xpath/expr-192", "fuzz/seed/xpath/expr-193", "fuzz/seed/xpath/expr-194", "fuzz/seed/xpath/expr-195", "fuzz/seed/xpath/expr-196", "fuzz/seed/xpath/expr-197", "fuzz/seed/xpath/expr-198", "fuzz/seed/xpath/expr-199", "fuzz/seed/xpath/expr-2", "fuzz/seed/xpath/expr-20", "fuzz/seed/xpath/expr-200", "fuzz/seed/xpath/expr-201", "fuzz/seed/xpath/expr-202", "fuzz/seed/xpath/expr-203", "fuzz/seed/xpath/expr-204", "fuzz/seed/xpath/expr-205", "fuzz/seed/xpath/expr-206", "fuzz/seed/xpath/expr-207", "fuzz/seed/xpath/expr-208", "fuzz/seed/xpath/expr-209", "fuzz/seed/xpath/expr-21", "fuzz/seed/xpath/expr-210", "fuzz/seed/xpath/expr-211", "fuzz/seed/xpath/expr-212", "fuzz/seed/xpath/expr-213", "fuzz/seed/xpath/expr-214", "fuzz/seed/xpath/expr-215", "fuzz/seed/xpath/expr-216", "fuzz/seed/xpath/expr-217", "fuzz/seed/xpath/expr-218", "fuzz/seed/xpath/expr-219", "fuzz/seed/xpath/expr-22", "fuzz/seed/xpath/expr-220", "fuzz/seed/xpath/expr-221", "fuzz/seed/xpath/expr-222", "fuzz/seed/xpath/expr-223", "fuzz/seed/xpath/expr-224", "fuzz/seed/xpath/expr-225", "fuzz/seed/xpath/expr-226", "fuzz/seed/xpath/expr-227", "fuzz/seed/xpath/expr-228", "fuzz/seed/xpath/expr-229", "fuzz/seed/xpath/expr-23", "fuzz/seed/xpath/expr-230", "fuzz/seed/xpath/expr-231", "fuzz/seed/xpath/expr-232", "fuzz/seed/xpath/expr-24", "fuzz/seed/xpath/expr-25", "fuzz/seed/xpath/expr-26", "fuzz/seed/xpath/expr-27", "fuzz/seed/xpath/expr-28", "fuzz/seed/xpath/expr-29", "fuzz/seed/xpath/expr-3", "fuzz/seed/xpath/expr-30", "fuzz/seed/xpath/expr-31", "fuzz/seed/xpath/expr-32", "fuzz/seed/xpath/expr-33", "fuzz/seed/xpath/expr-34", "fuzz/seed/xpath/expr-35", "fuzz/seed/xpath/expr-36", "fuzz/seed/xpath/expr-37", "fuzz/seed/xpath/expr-38", "fuzz/seed/xpath/expr-39", "fuzz/seed/xpath/expr-4", "fuzz/seed/xpath/expr-40", "fuzz/seed/xpath/expr-41", "fuzz/seed/xpath/expr-42", "fuzz/seed/xpath/expr-43", "fuzz/seed/xpath/expr-44", "fuzz/seed/xpath/expr-45", "fuzz/seed/xpath/expr-46", "fuzz/seed/xpath/expr-47", "fuzz/seed/xpath/expr-48", "fuzz/seed/xpath/expr-49", "fuzz/seed/xpath/expr-5", "fuzz/seed/xpath/expr-50", "fuzz/seed/xpath/expr-51", "fuzz/seed/xpath/expr-52", "fuzz/seed/xpath/expr-53", "fuzz/seed/xpath/expr-54", "fuzz/seed/xpath/expr-55", "fuzz/seed/xpath/expr-56", "fuzz/seed/xpath/expr-57", "fuzz/seed/xpath/expr-58", "fuzz/seed/xpath/expr-59", "fuzz/seed/xpath/expr-6", "fuzz/seed/xpath/expr-60", "fuzz/seed/xpath/expr-61", "fuzz/seed/xpath/expr-62", "fuzz/seed/xpath/expr-63", "fuzz/seed/xpath/expr-64", "fuzz/seed/xpath/expr-65", "fuzz/seed/xpath/expr-66", "fuzz/seed/xpath/expr-67", "fuzz/seed/xpath/expr-68", "fuzz/seed/xpath/expr-69", "fuzz/seed/xpath/expr-7", "fuzz/seed/xpath/expr-70", "fuzz/seed/xpath/expr-71", "fuzz/seed/xpath/expr-72", "fuzz/seed/xpath/expr-73", "fuzz/seed/xpath/expr-74", "fuzz/seed/xpath/expr-75", "fuzz/seed/xpath/expr-76", "fuzz/seed/xpath/expr-77", "fuzz/seed/xpath/expr-78", "fuzz/seed/xpath/expr-79", "fuzz/seed/xpath/expr-8", "fuzz/seed/xpath/expr-80", "fuzz/seed/xpath/expr-81", "fuzz/seed/xpath/expr-82", "fuzz/seed/xpath/expr-83", "fuzz/seed/xpath/expr-84", "fuzz/seed/xpath/expr-85", "fuzz/seed/xpath/expr-86", "fuzz/seed/xpath/expr-87", "fuzz/seed/xpath/expr-88", "fuzz/seed/xpath/expr-89", "fuzz/seed/xpath/expr-9", "fuzz/seed/xpath/expr-90", "fuzz/seed/xpath/expr-91", "fuzz/seed/xpath/expr-92", "fuzz/seed/xpath/expr-93", "fuzz/seed/xpath/expr-94", "fuzz/seed/xpath/expr-95", "fuzz/seed/xpath/expr-96", "fuzz/seed/xpath/expr-97", "fuzz/seed/xpath/expr-98", "fuzz/seed/xpath/expr-99", "fuzz/seed/xpath/id-1", "fuzz/seed/xpath/id-2", "fuzz/seed/xpath/id-3", "fuzz/seed/xpath/lang-1", "fuzz/seed/xpath/lang-2", "fuzz/seed/xpath/lang-3", "fuzz/seed/xpath/lang-4", "fuzz/seed/xpath/lang-5", "fuzz/seed/xpath/mixed-1", "fuzz/seed/xpath/mixed-2", "fuzz/seed/xpath/mixed-3", "fuzz/seed/xpath/mixed-4", "fuzz/seed/xpath/mixed-5", "fuzz/seed/xpath/mixed-6", "fuzz/seed/xpath/mixed-7", "fuzz/seed/xpath/nodes-1", "fuzz/seed/xpath/nodes-2", "fuzz/seed/xpath/nodes-3", "fuzz/seed/xpath/nodes-4", "fuzz/seed/xpath/nodes-5", "fuzz/seed/xpath/ns-1", "fuzz/seed/xpath/ns-2", "fuzz/seed/xpath/ns-3", "fuzz/seed/xpath/ns-4", "fuzz/seed/xpath/ns-5", "fuzz/seed/xpath/simple-1", "fuzz/seed/xpath/simple-10", "fuzz/seed/xpath/simple-11", "fuzz/seed/xpath/simple-12", "fuzz/seed/xpath/simple-13", "fuzz/seed/xpath/simple-14", "fuzz/seed/xpath/simple-15", "fuzz/seed/xpath/simple-16", "fuzz/seed/xpath/simple-17", "fuzz/seed/xpath/simple-18", "fuzz/seed/xpath/simple-19", "fuzz/seed/xpath/simple-2", "fuzz/seed/xpath/simple-20", "fuzz/seed/xpath/simple-21", "fuzz/seed/xpath/simple-22", "fuzz/seed/xpath/simple-23", "fuzz/seed/xpath/simple-24", "fuzz/seed/xpath/simple-25", "fuzz/seed/xpath/simple-26", "fuzz/seed/xpath/simple-3", "fuzz/seed/xpath/simple-4", "fuzz/seed/xpath/simple-5", "fuzz/seed/xpath/simple-6", "fuzz/seed/xpath/simple-7", "fuzz/seed/xpath/simple-8", "fuzz/seed/xpath/simple-9", "fuzz/seed/xpath/str-1", "fuzz/seed/xpath/str-10", "fuzz/seed/xpath/str-11", "fuzz/seed/xpath/str-12", "fuzz/seed/xpath/str-13", "fuzz/seed/xpath/str-14", "fuzz/seed/xpath/str-15", "fuzz/seed/xpath/str-16", "fuzz/seed/xpath/str-17", "fuzz/seed/xpath/str-18", "fuzz/seed/xpath/str-19", "fuzz/seed/xpath/str-2", "fuzz/seed/xpath/str-20", "fuzz/seed/xpath/str-21", "fuzz/seed/xpath/str-22", "fuzz/seed/xpath/str-23", "fuzz/seed/xpath/str-3", "fuzz/seed/xpath/str-4", "fuzz/seed/xpath/str-5", "fuzz/seed/xpath/str-6", "fuzz/seed/xpath/str-7", "fuzz/seed/xpath/str-8", "fuzz/seed/xpath/str-9", "fuzz/seed/xpath/usr1-1", "fuzz/seed/xpath/vid-1", "fuzz/seed/xpath/vid-10", "fuzz/seed/xpath/vid-11", "fuzz/seed/xpath/vid-12", "fuzz/seed/xpath/vid-13", "fuzz/seed/xpath/vid-14", "fuzz/seed/xpath/vid-15", "fuzz/seed/xpath/vid-16", "fuzz/seed/xpath/vid-2", "fuzz/seed/xpath/vid-3", "fuzz/seed/xpath/vid-4", "fuzz/seed/xpath/vid-5", "fuzz/seed/xpath/vid-6", "fuzz/seed/xpath/vid-7", "fuzz/seed/xpath/vid-8", "fuzz/seed/xpath/vid-9", ], } cc_fuzz { name: "libxml2_xpath_fuzzer", defaults: ["libxml2-fuzz-defaults"], srcs: [ "fuzz/xpath.c", ], dictionary: "fuzz/xpath.dict", corpus: [":libxml2_xpath_fuzz_corpus"], }