xref: /aosp_15_r20/external/tinyxml2/Android.bp (revision 7485b22521f577cf944e5687361548d8993d8d2c)
1*7485b225SElliott Hughespackage {
2*7485b225SElliott Hughes    default_applicable_licenses: ["external_tinyxml2_license"],
3*7485b225SElliott Hughes}
4*7485b225SElliott Hughes
5*7485b225SElliott Hugheslicense {
6*7485b225SElliott Hughes    name: "external_tinyxml2_license",
7*7485b225SElliott Hughes    visibility: [":__subpackages__"],
8*7485b225SElliott Hughes    license_kinds: [
9*7485b225SElliott Hughes        "SPDX-license-identifier-BSD",
10*7485b225SElliott Hughes        "SPDX-license-identifier-MIT",
11*7485b225SElliott Hughes        "SPDX-license-identifier-Zlib",
12*7485b225SElliott Hughes        "legacy_unencumbered",
13*7485b225SElliott Hughes    ],
14*7485b225SElliott Hughes    license_text: [
15*7485b225SElliott Hughes        "LICENSE.txt",
16*7485b225SElliott Hughes    ],
17*7485b225SElliott Hughes}
18*7485b225SElliott Hughes
19*7485b225SElliott Hughes// The jquery stuff in docs/ is a bit ambiguous with its use of and/or when talking about the GPL,
20*7485b225SElliott Hughes// so let's just make it clear that we don't use any of that stuff anyway...
21*7485b225SElliott Hugheslicense {
22*7485b225SElliott Hughes    name: "external_tinyxml2_docs_license",
23*7485b225SElliott Hughes    license_kinds: ["SPDX-license-identifier-GPL"],
24*7485b225SElliott Hughes    license_text: [
25*7485b225SElliott Hughes        "LICENSE.txt",
26*7485b225SElliott Hughes    ],
27*7485b225SElliott Hughes}
28*7485b225SElliott Hughes
29*7485b225SElliott Hughes// ...and prevent anyone from trying to do so:
30*7485b225SElliott Hughesfilegroup {
31*7485b225SElliott Hughes    name: "external_tinyxml2_docs",
32*7485b225SElliott Hughes    srcs: ["docs/**/*"],
33*7485b225SElliott Hughes    visibility: ["//visibility:private"],
34*7485b225SElliott Hughes}
35*7485b225SElliott Hughes
36*7485b225SElliott Hughescc_library {
37*7485b225SElliott Hughes    name: "libtinyxml2",
38*7485b225SElliott Hughes    host_supported: true,
39*7485b225SElliott Hughes    vendor_available: true,
40*7485b225SElliott Hughes    product_available: true,
41*7485b225SElliott Hughes    recovery_available: true,
42*7485b225SElliott Hughes
43*7485b225SElliott Hughes    srcs: ["tinyxml2.cpp"],
44*7485b225SElliott Hughes
45*7485b225SElliott Hughes    cflags: [
46*7485b225SElliott Hughes        "-Wall",
47*7485b225SElliott Hughes        "-Werror",
48*7485b225SElliott Hughes        "-Wno-implicit-fallthrough",
49*7485b225SElliott Hughes        // tinyxml2.cpp line 436, 441, 446 have -Wimplicit-fallthrough.
50*7485b225SElliott Hughes    ],
51*7485b225SElliott Hughes
52*7485b225SElliott Hughes    shared_libs: ["liblog"],
53*7485b225SElliott Hughes
54*7485b225SElliott Hughes    target: {
55*7485b225SElliott Hughes        android: {
56*7485b225SElliott Hughes            cflags: [
57*7485b225SElliott Hughes                // LOG_TO_ANDROID_LOGCAT
58*7485b225SElliott Hughes                "-DDEBUG",
59*7485b225SElliott Hughes                "-DANDROID_NDK",
60*7485b225SElliott Hughes            ],
61*7485b225SElliott Hughes        },
62*7485b225SElliott Hughes        windows: {
63*7485b225SElliott Hughes            enabled: true,
64*7485b225SElliott Hughes            shared: {
65*7485b225SElliott Hughes                enabled: false,
66*7485b225SElliott Hughes            },
67*7485b225SElliott Hughes        },
68*7485b225SElliott Hughes    },
69*7485b225SElliott Hughes
70*7485b225SElliott Hughes    export_include_dirs: ["."],
71*7485b225SElliott Hughes
72*7485b225SElliott Hughes    min_sdk_version: "S",
73*7485b225SElliott Hughes
74*7485b225SElliott Hughes    apex_available: [
75*7485b225SElliott Hughes        "com.android.art",
76*7485b225SElliott Hughes        "com.android.art.debug",
77*7485b225SElliott Hughes        "com.android.runtime", // used by linkerconfig
78*7485b225SElliott Hughes        "//apex_available:platform", // For odsign.
79*7485b225SElliott Hughes    ],
80*7485b225SElliott Hughes}
81*7485b225SElliott Hughes
82*7485b225SElliott Hughescc_test {
83*7485b225SElliott Hughes    name: "tinyxml2-xmltest",
84*7485b225SElliott Hughes    srcs: ["xmltest.cpp"],
85*7485b225SElliott Hughes    shared_libs: ["libtinyxml2"],
86*7485b225SElliott Hughes    data: [
87*7485b225SElliott Hughes        "resources/**/*",
88*7485b225SElliott Hughes    ],
89*7485b225SElliott Hughes}
90*7485b225SElliott Hughes
91*7485b225SElliott Hughessh_test {
92*7485b225SElliott Hughes    name: "tinyxml2-tests",
93*7485b225SElliott Hughes    src: "run-tinyxml2-tests-on-android.sh",
94*7485b225SElliott Hughes    filename: "run-tinyxml2-tests-on-android.sh",
95*7485b225SElliott Hughes    test_suites: ["general-tests"],
96*7485b225SElliott Hughes    host_supported: true,
97*7485b225SElliott Hughes    device_supported: false,
98*7485b225SElliott Hughes    require_root: true,
99*7485b225SElliott Hughes    target_required: ["tinyxml2-xmltest"],
100*7485b225SElliott Hughes}
101