xref: /aosp_15_r20/external/perfetto/bazel/sqlite.BUILD (revision 6dbdd20afdafa5e3ca9b8809fa73465d530080dc)
1*6dbdd20aSAndroid Build Coastguard Worker# Copyright (C) 2019 The Android Open Source Project
2*6dbdd20aSAndroid Build Coastguard Worker#
3*6dbdd20aSAndroid Build Coastguard Worker# Licensed under the Apache License, Version 2.0 (the "License");
4*6dbdd20aSAndroid Build Coastguard Worker# you may not use this file except in compliance with the License.
5*6dbdd20aSAndroid Build Coastguard Worker# You may obtain a copy of the License at
6*6dbdd20aSAndroid Build Coastguard Worker#
7*6dbdd20aSAndroid Build Coastguard Worker#      http://www.apache.org/licenses/LICENSE-2.0
8*6dbdd20aSAndroid Build Coastguard Worker#
9*6dbdd20aSAndroid Build Coastguard Worker# Unless required by applicable law or agreed to in writing, software
10*6dbdd20aSAndroid Build Coastguard Worker# distributed under the License is distributed on an "AS IS" BASIS,
11*6dbdd20aSAndroid Build Coastguard Worker# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12*6dbdd20aSAndroid Build Coastguard Worker# See the License for the specific language governing permissions and
13*6dbdd20aSAndroid Build Coastguard Worker# limitations under the License.
14*6dbdd20aSAndroid Build Coastguard Worker
15*6dbdd20aSAndroid Build Coastguard Worker# This build file is used for both @perfetto_dep_sqlite and
16*6dbdd20aSAndroid Build Coastguard Worker# @perfetto_dep_sqlite_src.
17*6dbdd20aSAndroid Build Coastguard Worker
18*6dbdd20aSAndroid Build Coastguard Workerload("@perfetto_cfg//:perfetto_cfg.bzl", "PERFETTO_CONFIG")
19*6dbdd20aSAndroid Build Coastguard Worker
20*6dbdd20aSAndroid Build Coastguard Worker# #############################
21*6dbdd20aSAndroid Build Coastguard Worker# @perfetto_dep_sqlite section
22*6dbdd20aSAndroid Build Coastguard Worker# #############################
23*6dbdd20aSAndroid Build Coastguard Worker
24*6dbdd20aSAndroid Build Coastguard Workerfilegroup(
25*6dbdd20aSAndroid Build Coastguard Worker    name = "headers",
26*6dbdd20aSAndroid Build Coastguard Worker    srcs = [
27*6dbdd20aSAndroid Build Coastguard Worker        "sqlite3.h",
28*6dbdd20aSAndroid Build Coastguard Worker        "sqlite3ext.h",
29*6dbdd20aSAndroid Build Coastguard Worker    ],
30*6dbdd20aSAndroid Build Coastguard Worker    visibility = ["//visibility:public"],
31*6dbdd20aSAndroid Build Coastguard Worker)
32*6dbdd20aSAndroid Build Coastguard Worker
33*6dbdd20aSAndroid Build Coastguard Workerinclude_sqlite = [
34*6dbdd20aSAndroid Build Coastguard Worker    ".",
35*6dbdd20aSAndroid Build Coastguard Worker]
36*6dbdd20aSAndroid Build Coastguard Worker
37*6dbdd20aSAndroid Build Coastguard Workersqlite_copts = [
38*6dbdd20aSAndroid Build Coastguard Worker    "-Wno-misleading-indentation",
39*6dbdd20aSAndroid Build Coastguard Worker    "-DSQLITE_THREADSAFE=0",
40*6dbdd20aSAndroid Build Coastguard Worker    "-DQLITE_DEFAULT_MEMSTATUS=0",
41*6dbdd20aSAndroid Build Coastguard Worker    "-DSQLITE_LIKE_DOESNT_MATCH_BLOBS",
42*6dbdd20aSAndroid Build Coastguard Worker    "-DSQLITE_OMIT_DEPRECATED",
43*6dbdd20aSAndroid Build Coastguard Worker    "-DSQLITE_OMIT_SHARED_CACHE",
44*6dbdd20aSAndroid Build Coastguard Worker    "-DHAVE_USLEEP",
45*6dbdd20aSAndroid Build Coastguard Worker    "-DHAVE_UTIME",
46*6dbdd20aSAndroid Build Coastguard Worker    "-DSQLITE_BYTEORDER=1234",
47*6dbdd20aSAndroid Build Coastguard Worker    "-DSQLITE_DEFAULT_AUTOVACUUM=0",
48*6dbdd20aSAndroid Build Coastguard Worker    "-DSQLITE_DEFAULT_MMAP_SIZE=0",
49*6dbdd20aSAndroid Build Coastguard Worker    "-DSQLITE_CORE",
50*6dbdd20aSAndroid Build Coastguard Worker    "-DSQLITE_TEMP_STORE=3",
51*6dbdd20aSAndroid Build Coastguard Worker    "-DSQLITE_OMIT_LOAD_EXTENSION",
52*6dbdd20aSAndroid Build Coastguard Worker    "-DSQLITE_OMIT_RANDOMNESS",
53*6dbdd20aSAndroid Build Coastguard Worker] + PERFETTO_CONFIG.deps_copts.sqlite
54*6dbdd20aSAndroid Build Coastguard Worker
55*6dbdd20aSAndroid Build Coastguard Workercc_library(
56*6dbdd20aSAndroid Build Coastguard Worker    name = "sqlite",
57*6dbdd20aSAndroid Build Coastguard Worker    srcs = [
58*6dbdd20aSAndroid Build Coastguard Worker        "sqlite3.c",
59*6dbdd20aSAndroid Build Coastguard Worker        "sqlite3.h",
60*6dbdd20aSAndroid Build Coastguard Worker    ],
61*6dbdd20aSAndroid Build Coastguard Worker    hdrs = [":headers"],
62*6dbdd20aSAndroid Build Coastguard Worker    copts = sqlite_copts,
63*6dbdd20aSAndroid Build Coastguard Worker    includes = include_sqlite,
64*6dbdd20aSAndroid Build Coastguard Worker    visibility = ["//visibility:public"],
65*6dbdd20aSAndroid Build Coastguard Worker)
66*6dbdd20aSAndroid Build Coastguard Worker
67*6dbdd20aSAndroid Build Coastguard Worker# ################################
68*6dbdd20aSAndroid Build Coastguard Worker# @perfetto_dep_sqlite_src section
69*6dbdd20aSAndroid Build Coastguard Worker# ################################
70*6dbdd20aSAndroid Build Coastguard Worker
71*6dbdd20aSAndroid Build Coastguard Workercc_library(
72*6dbdd20aSAndroid Build Coastguard Worker    name = "percentile_ext",
73*6dbdd20aSAndroid Build Coastguard Worker    srcs = [
74*6dbdd20aSAndroid Build Coastguard Worker        "ext/misc/percentile.c",
75*6dbdd20aSAndroid Build Coastguard Worker    ],
76*6dbdd20aSAndroid Build Coastguard Worker    copts = sqlite_copts,
77*6dbdd20aSAndroid Build Coastguard Worker    deps = PERFETTO_CONFIG.deps.sqlite,
78*6dbdd20aSAndroid Build Coastguard Worker    visibility = ["//visibility:public"],
79*6dbdd20aSAndroid Build Coastguard Worker)
80