xref: /aosp_15_r20/external/sqlite/android/Android.bp (revision a3141fd39888aecc864dfb08485df64ff6c387f9)
1*a3141fd3SAndroid Build Coastguard Workerpackage {
2*a3141fd3SAndroid Build Coastguard Worker    default_applicable_licenses: ["external_sqlite_android_license"],
3*a3141fd3SAndroid Build Coastguard Worker}
4*a3141fd3SAndroid Build Coastguard Worker
5*a3141fd3SAndroid Build Coastguard Worker// Added automatically by a large-scale-change
6*a3141fd3SAndroid Build Coastguard Worker// See: http://go/android-license-faq
7*a3141fd3SAndroid Build Coastguard Workerlicense {
8*a3141fd3SAndroid Build Coastguard Worker    name: "external_sqlite_android_license",
9*a3141fd3SAndroid Build Coastguard Worker    visibility: [":__subpackages__"],
10*a3141fd3SAndroid Build Coastguard Worker    license_kinds: [
11*a3141fd3SAndroid Build Coastguard Worker        "SPDX-license-identifier-Apache-2.0",
12*a3141fd3SAndroid Build Coastguard Worker    ],
13*a3141fd3SAndroid Build Coastguard Worker    license_text: [
14*a3141fd3SAndroid Build Coastguard Worker        "NOTICE",
15*a3141fd3SAndroid Build Coastguard Worker    ],
16*a3141fd3SAndroid Build Coastguard Worker}
17*a3141fd3SAndroid Build Coastguard Worker
18*a3141fd3SAndroid Build Coastguard Workersoong_config_module_type {
19*a3141fd3SAndroid Build Coastguard Worker    name: "release_package_libsqlite3_android_defaults_config",
20*a3141fd3SAndroid Build Coastguard Worker    module_type: "cc_defaults",
21*a3141fd3SAndroid Build Coastguard Worker    config_namespace: "libsqlite3",
22*a3141fd3SAndroid Build Coastguard Worker    value_variables: ["release_package_libsqlite3"],
23*a3141fd3SAndroid Build Coastguard Worker    properties: [
24*a3141fd3SAndroid Build Coastguard Worker        "include_dirs",
25*a3141fd3SAndroid Build Coastguard Worker    ],
26*a3141fd3SAndroid Build Coastguard Worker}
27*a3141fd3SAndroid Build Coastguard Worker
28*a3141fd3SAndroid Build Coastguard Worker// Construct the correct source and includes for sqlite libraries,
29*a3141fd3SAndroid Build Coastguard Worker// based on the build flag.
30*a3141fd3SAndroid Build Coastguard Workerrelease_package_libsqlite3_android_defaults_config {
31*a3141fd3SAndroid Build Coastguard Worker    name: "libsqlite3_android_defaults",
32*a3141fd3SAndroid Build Coastguard Worker    soong_config_variables: {
33*a3141fd3SAndroid Build Coastguard Worker        release_package_libsqlite3: {
34*a3141fd3SAndroid Build Coastguard Worker            include_dirs: ["external/sqlite/dist/sqlite-autoconf-%s"],
35*a3141fd3SAndroid Build Coastguard Worker            conditions_default: {
36*a3141fd3SAndroid Build Coastguard Worker                include_dirs: ["external/sqlite/dist/sqlite-default"],
37*a3141fd3SAndroid Build Coastguard Worker            },
38*a3141fd3SAndroid Build Coastguard Worker        },
39*a3141fd3SAndroid Build Coastguard Worker    },
40*a3141fd3SAndroid Build Coastguard Worker
41*a3141fd3SAndroid Build Coastguard Worker    host_supported: true,
42*a3141fd3SAndroid Build Coastguard Worker    cflags: [
43*a3141fd3SAndroid Build Coastguard Worker        "-Wall",
44*a3141fd3SAndroid Build Coastguard Worker        "-Werror",
45*a3141fd3SAndroid Build Coastguard Worker        "-Wno-unused-function",
46*a3141fd3SAndroid Build Coastguard Worker        "-Wno-unused-variable",
47*a3141fd3SAndroid Build Coastguard Worker    ],
48*a3141fd3SAndroid Build Coastguard Worker    srcs: [
49*a3141fd3SAndroid Build Coastguard Worker        "PhoneNumberUtils.cpp",
50*a3141fd3SAndroid Build Coastguard Worker        "OldPhoneNumberUtils.cpp",
51*a3141fd3SAndroid Build Coastguard Worker        "sqlite3_android.cpp",
52*a3141fd3SAndroid Build Coastguard Worker    ],
53*a3141fd3SAndroid Build Coastguard Worker    shared_libs: [
54*a3141fd3SAndroid Build Coastguard Worker        "liblog",
55*a3141fd3SAndroid Build Coastguard Worker    ],
56*a3141fd3SAndroid Build Coastguard Worker    export_include_dirs: ["."],
57*a3141fd3SAndroid Build Coastguard Worker}
58*a3141fd3SAndroid Build Coastguard Worker
59*a3141fd3SAndroid Build Coastguard Workercc_library_static {
60*a3141fd3SAndroid Build Coastguard Worker    name: "libsqlite3_android",
61*a3141fd3SAndroid Build Coastguard Worker    defaults: ["libsqlite3_android_defaults"],
62*a3141fd3SAndroid Build Coastguard Worker    vendor_available: true,
63*a3141fd3SAndroid Build Coastguard Worker    native_bridge_supported: true,
64*a3141fd3SAndroid Build Coastguard Worker    target: {
65*a3141fd3SAndroid Build Coastguard Worker        android: {
66*a3141fd3SAndroid Build Coastguard Worker            cflags: [
67*a3141fd3SAndroid Build Coastguard Worker                "-DSQLITE_ENABLE_ICU",
68*a3141fd3SAndroid Build Coastguard Worker                "-DSQLITE_DEFAULT_LEGACY_ALTER_TABLE",
69*a3141fd3SAndroid Build Coastguard Worker            ],
70*a3141fd3SAndroid Build Coastguard Worker            shared_libs: [
71*a3141fd3SAndroid Build Coastguard Worker                "libandroidicu",
72*a3141fd3SAndroid Build Coastguard Worker            ],
73*a3141fd3SAndroid Build Coastguard Worker        },
74*a3141fd3SAndroid Build Coastguard Worker        host: {
75*a3141fd3SAndroid Build Coastguard Worker            cflags: ["-DSQLITE_ENABLE_ICU"],
76*a3141fd3SAndroid Build Coastguard Worker            shared_libs: [
77*a3141fd3SAndroid Build Coastguard Worker                "libicui18n",
78*a3141fd3SAndroid Build Coastguard Worker                "libicuuc",
79*a3141fd3SAndroid Build Coastguard Worker            ],
80*a3141fd3SAndroid Build Coastguard Worker        },
81*a3141fd3SAndroid Build Coastguard Worker        windows: {
82*a3141fd3SAndroid Build Coastguard Worker            enabled: true,
83*a3141fd3SAndroid Build Coastguard Worker        },
84*a3141fd3SAndroid Build Coastguard Worker        vendor: {
85*a3141fd3SAndroid Build Coastguard Worker            cflags: ["-USQLITE_ENABLE_ICU"],
86*a3141fd3SAndroid Build Coastguard Worker            exclude_shared_libs: ["libandroidicu"],
87*a3141fd3SAndroid Build Coastguard Worker        },
88*a3141fd3SAndroid Build Coastguard Worker    },
89*a3141fd3SAndroid Build Coastguard Worker    apex_available: [
90*a3141fd3SAndroid Build Coastguard Worker        "//apex_available:platform",
91*a3141fd3SAndroid Build Coastguard Worker        "com.android.virt",
92*a3141fd3SAndroid Build Coastguard Worker    ],
93*a3141fd3SAndroid Build Coastguard Worker
94*a3141fd3SAndroid Build Coastguard Worker}
95*a3141fd3SAndroid Build Coastguard Worker
96*a3141fd3SAndroid Build Coastguard Worker// This static library is variant of libsqlite3_android built without the ICU
97*a3141fd3SAndroid Build Coastguard Worker// extension.  The library is supposed to be used in environments where the ICU
98*a3141fd3SAndroid Build Coastguard Worker// extension is not needed and the dependency to ICU (which is as large as 60+
99*a3141fd3SAndroid Build Coastguard Worker// MB) is not desirable, like microdroid.
100*a3141fd3SAndroid Build Coastguard Workercc_library_static {
101*a3141fd3SAndroid Build Coastguard Worker    name: "libsqlite3_android_noicu",
102*a3141fd3SAndroid Build Coastguard Worker    defaults: ["libsqlite3_android_defaults"],
103*a3141fd3SAndroid Build Coastguard Worker    // Not define SQLITE_ENABLE_ICU
104*a3141fd3SAndroid Build Coastguard Worker    apex_available: [
105*a3141fd3SAndroid Build Coastguard Worker        "//apex_available:platform",
106*a3141fd3SAndroid Build Coastguard Worker        "com.android.os.statsd",
107*a3141fd3SAndroid Build Coastguard Worker        "test_com.android.os.statsd",
108*a3141fd3SAndroid Build Coastguard Worker    ],
109*a3141fd3SAndroid Build Coastguard Worker    min_sdk_version: "apex_inherit",
110*a3141fd3SAndroid Build Coastguard Worker}
111*a3141fd3SAndroid Build Coastguard Worker
112*a3141fd3SAndroid Build Coastguard Worker//       The formal test for phone_number_compare() is in DataBaseGeneralTest.java
113*a3141fd3SAndroid Build Coastguard Worker//       (as of 2009-08-02), in which phone_number_compare() is tested via sqlite's custom
114*a3141fd3SAndroid Build Coastguard Worker//       function "PHONE_NUMBER_COMPARE".
115*a3141fd3SAndroid Build Coastguard Workercc_test {
116*a3141fd3SAndroid Build Coastguard Worker    host_supported: true,
117*a3141fd3SAndroid Build Coastguard Worker    name: "libsqlite3_phone_number_utils_test",
118*a3141fd3SAndroid Build Coastguard Worker    cflags: [
119*a3141fd3SAndroid Build Coastguard Worker        "-Wall",
120*a3141fd3SAndroid Build Coastguard Worker        "-Werror",
121*a3141fd3SAndroid Build Coastguard Worker    ],
122*a3141fd3SAndroid Build Coastguard Worker    srcs: [
123*a3141fd3SAndroid Build Coastguard Worker        "OldPhoneNumberUtils.cpp",
124*a3141fd3SAndroid Build Coastguard Worker        "OldPhoneNumberUtilsTest.cpp",
125*a3141fd3SAndroid Build Coastguard Worker        "PhoneNumberUtils.cpp",
126*a3141fd3SAndroid Build Coastguard Worker        "PhoneNumberUtilsTest.cpp",
127*a3141fd3SAndroid Build Coastguard Worker    ],
128*a3141fd3SAndroid Build Coastguard Worker}
129