xref: /OK3568_Linux_fs/buildroot/package/sqlite/sqlite.mk (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun################################################################################
2*4882a593Smuzhiyun#
3*4882a593Smuzhiyun# sqlite
4*4882a593Smuzhiyun#
5*4882a593Smuzhiyun################################################################################
6*4882a593Smuzhiyun
7*4882a593SmuzhiyunSQLITE_VERSION = 3.39.2
8*4882a593SmuzhiyunSQLITE_TAR_VERSION = 3390200
9*4882a593SmuzhiyunSQLITE_SOURCE = sqlite-autoconf-$(SQLITE_TAR_VERSION).tar.gz
10*4882a593SmuzhiyunSQLITE_SITE = https://www.sqlite.org/2022
11*4882a593SmuzhiyunSQLITE_LICENSE = Public domain
12*4882a593SmuzhiyunSQLITE_LICENSE_FILES = tea/license.terms
13*4882a593SmuzhiyunSQLITE_CPE_ID_VENDOR = sqlite
14*4882a593SmuzhiyunSQLITE_INSTALL_STAGING = YES
15*4882a593Smuzhiyun
16*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_SQLITE_STAT4),y)
17*4882a593SmuzhiyunSQLITE_CFLAGS += -DSQLITE_ENABLE_STAT4
18*4882a593Smuzhiyunendif
19*4882a593Smuzhiyun
20*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_SQLITE_ENABLE_COLUMN_METADATA),y)
21*4882a593SmuzhiyunSQLITE_CFLAGS += -DSQLITE_ENABLE_COLUMN_METADATA
22*4882a593Smuzhiyunendif
23*4882a593Smuzhiyun
24*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_SQLITE_ENABLE_FTS3),y)
25*4882a593SmuzhiyunSQLITE_CFLAGS += -DSQLITE_ENABLE_FTS3
26*4882a593Smuzhiyunendif
27*4882a593Smuzhiyun
28*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_SQLITE_ENABLE_JSON1),y)
29*4882a593SmuzhiyunSQLITE_CFLAGS += -DSQLITE_ENABLE_JSON1
30*4882a593Smuzhiyunendif
31*4882a593Smuzhiyun
32*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_SQLITE_ENABLE_UNLOCK_NOTIFY),y)
33*4882a593SmuzhiyunSQLITE_CFLAGS += -DSQLITE_ENABLE_UNLOCK_NOTIFY
34*4882a593Smuzhiyunendif
35*4882a593Smuzhiyun
36*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_SQLITE_SECURE_DELETE),y)
37*4882a593SmuzhiyunSQLITE_CFLAGS += -DSQLITE_SECURE_DELETE
38*4882a593Smuzhiyunendif
39*4882a593Smuzhiyun
40*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_SQLITE_NO_SYNC),y)
41*4882a593SmuzhiyunSQLITE_CFLAGS += -DSQLITE_NO_SYNC
42*4882a593Smuzhiyunendif
43*4882a593Smuzhiyun
44*4882a593Smuzhiyun# Building with Microblaze Gcc 4.9 makes compiling to hang.
45*4882a593Smuzhiyun# Work around using -O0
46*4882a593Smuzhiyunifeq ($(BR2_microblaze):$(BR2_TOOLCHAIN_GCC_AT_LEAST_5),y:)
47*4882a593SmuzhiyunSQLITE_CFLAGS += $(TARGET_CFLAGS) -O0
48*4882a593Smuzhiyunelse
49*4882a593Smuzhiyun# fallback to standard -O3 when -Ofast is present to avoid -ffast-math
50*4882a593SmuzhiyunSQLITE_CFLAGS += $(subst -Ofast,-O3,$(TARGET_CFLAGS))
51*4882a593Smuzhiyunendif
52*4882a593Smuzhiyun
53*4882a593SmuzhiyunSQLITE_CONF_ENV = CFLAGS="$(SQLITE_CFLAGS)"
54*4882a593Smuzhiyun
55*4882a593Smuzhiyunifeq ($(BR2_STATIC_LIBS),y)
56*4882a593SmuzhiyunSQLITE_CONF_OPTS += --enable-dynamic-extensions=no
57*4882a593Smuzhiyunelse
58*4882a593SmuzhiyunSQLITE_CONF_OPTS += --disable-static-shell
59*4882a593Smuzhiyunendif
60*4882a593Smuzhiyun
61*4882a593Smuzhiyunifeq ($(BR2_TOOLCHAIN_HAS_THREADS),y)
62*4882a593SmuzhiyunSQLITE_CONF_OPTS += --enable-threadsafe
63*4882a593Smuzhiyunelse
64*4882a593SmuzhiyunSQLITE_CONF_OPTS += --disable-threadsafe
65*4882a593SmuzhiyunSQLITE_CFLAGS += -DSQLITE_THREADSAFE=0
66*4882a593Smuzhiyunendif
67*4882a593Smuzhiyun
68*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_NCURSES)$(BR2_PACKAGE_READLINE),yy)
69*4882a593SmuzhiyunSQLITE_DEPENDENCIES += ncurses readline
70*4882a593SmuzhiyunSQLITE_CONF_OPTS += --disable-editline --enable-readline
71*4882a593Smuzhiyunelse ifeq ($(BR2_PACKAGE_LIBEDIT),y)
72*4882a593SmuzhiyunSQLITE_DEPENDENCIES += libedit
73*4882a593SmuzhiyunSQLITE_CONF_OPTS += --enable-editline --disable-readline
74*4882a593Smuzhiyunelse
75*4882a593SmuzhiyunSQLITE_CONF_OPTS += --disable-editline --disable-readline
76*4882a593Smuzhiyunendif
77*4882a593Smuzhiyun
78*4882a593Smuzhiyun$(eval $(autotools-package))
79*4882a593Smuzhiyun$(eval $(host-autotools-package))
80