xref: /aosp_15_r20/external/tensorflow/third_party/sqlite.BUILD (revision b6fb3261f9314811a0f4371741dbb8839866f948)
1*b6fb3261SAndroid Build Coastguard Worker# Description:
2*b6fb3261SAndroid Build Coastguard Worker#   sqlite3 is a serverless SQL RDBMS.
3*b6fb3261SAndroid Build Coastguard Worker
4*b6fb3261SAndroid Build Coastguard Workerlicenses(["unencumbered"])  # Public Domain
5*b6fb3261SAndroid Build Coastguard Worker
6*b6fb3261SAndroid Build Coastguard WorkerSQLITE_COPTS = [
7*b6fb3261SAndroid Build Coastguard Worker    "-DSQLITE_ENABLE_JSON1",
8*b6fb3261SAndroid Build Coastguard Worker    "-DHAVE_DECL_STRERROR_R=1",
9*b6fb3261SAndroid Build Coastguard Worker    "-DHAVE_STDINT_H=1",
10*b6fb3261SAndroid Build Coastguard Worker    "-DHAVE_INTTYPES_H=1",
11*b6fb3261SAndroid Build Coastguard Worker    "-D_FILE_OFFSET_BITS=64",
12*b6fb3261SAndroid Build Coastguard Worker    "-D_REENTRANT=1",
13*b6fb3261SAndroid Build Coastguard Worker] + select({
14*b6fb3261SAndroid Build Coastguard Worker    "@org_tensorflow//tensorflow:windows": [
15*b6fb3261SAndroid Build Coastguard Worker        "-DSQLITE_MAX_TRIGGER_DEPTH=100",
16*b6fb3261SAndroid Build Coastguard Worker    ],
17*b6fb3261SAndroid Build Coastguard Worker    "@org_tensorflow//tensorflow:macos": [
18*b6fb3261SAndroid Build Coastguard Worker        "-Os",
19*b6fb3261SAndroid Build Coastguard Worker        "-DHAVE_GMTIME_R=1",
20*b6fb3261SAndroid Build Coastguard Worker        "-DHAVE_LOCALTIME_R=1",
21*b6fb3261SAndroid Build Coastguard Worker        "-DHAVE_USLEEP=1",
22*b6fb3261SAndroid Build Coastguard Worker    ],
23*b6fb3261SAndroid Build Coastguard Worker    "//conditions:default": [
24*b6fb3261SAndroid Build Coastguard Worker        "-Os",
25*b6fb3261SAndroid Build Coastguard Worker        "-DHAVE_FDATASYNC=1",
26*b6fb3261SAndroid Build Coastguard Worker        "-DHAVE_GMTIME_R=1",
27*b6fb3261SAndroid Build Coastguard Worker        "-DHAVE_LOCALTIME_R=1",
28*b6fb3261SAndroid Build Coastguard Worker        "-DHAVE_POSIX_FALLOCATE=1",
29*b6fb3261SAndroid Build Coastguard Worker        "-DHAVE_USLEEP=1",
30*b6fb3261SAndroid Build Coastguard Worker    ],
31*b6fb3261SAndroid Build Coastguard Worker})
32*b6fb3261SAndroid Build Coastguard Worker
33*b6fb3261SAndroid Build Coastguard Worker# Production build of SQLite library that's baked into TensorFlow.
34*b6fb3261SAndroid Build Coastguard Workercc_library(
35*b6fb3261SAndroid Build Coastguard Worker    name = "org_sqlite",
36*b6fb3261SAndroid Build Coastguard Worker    srcs = ["sqlite3.c"],
37*b6fb3261SAndroid Build Coastguard Worker    hdrs = [
38*b6fb3261SAndroid Build Coastguard Worker        "sqlite3.h",
39*b6fb3261SAndroid Build Coastguard Worker        "sqlite3ext.h",
40*b6fb3261SAndroid Build Coastguard Worker    ],
41*b6fb3261SAndroid Build Coastguard Worker    copts = SQLITE_COPTS,
42*b6fb3261SAndroid Build Coastguard Worker    defines = [
43*b6fb3261SAndroid Build Coastguard Worker        # This gets rid of the bloat of deprecated functionality. It
44*b6fb3261SAndroid Build Coastguard Worker        # needs to be listed here instead of copts because it's actually
45*b6fb3261SAndroid Build Coastguard Worker        # referenced in the sqlite3.h file.
46*b6fb3261SAndroid Build Coastguard Worker        "SQLITE_OMIT_DEPRECATED",
47*b6fb3261SAndroid Build Coastguard Worker    ],
48*b6fb3261SAndroid Build Coastguard Worker    linkopts = select({
49*b6fb3261SAndroid Build Coastguard Worker        "@org_tensorflow//tensorflow:windows": [],
50*b6fb3261SAndroid Build Coastguard Worker        "//conditions:default": [
51*b6fb3261SAndroid Build Coastguard Worker            "-ldl",
52*b6fb3261SAndroid Build Coastguard Worker            "-lpthread",
53*b6fb3261SAndroid Build Coastguard Worker        ],
54*b6fb3261SAndroid Build Coastguard Worker    }),
55*b6fb3261SAndroid Build Coastguard Worker    visibility = ["//visibility:public"],
56*b6fb3261SAndroid Build Coastguard Worker)
57*b6fb3261SAndroid Build Coastguard Worker
58*b6fb3261SAndroid Build Coastguard Worker# This is a Copybara sync helper for Google.
59*b6fb3261SAndroid Build Coastguard Workerpy_library(
60*b6fb3261SAndroid Build Coastguard Worker    name = "python",
61*b6fb3261SAndroid Build Coastguard Worker    srcs_version = "PY3",
62*b6fb3261SAndroid Build Coastguard Worker    visibility = ["//visibility:public"],
63*b6fb3261SAndroid Build Coastguard Worker)
64