blob: 30d195d69e669e6f0b7f776162e5c04965f43739 [file] [log] [blame]
//
// 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"],
}