sqlite3: add option for batch-atomic write support

This allows to build SQLite with support for the batch-atomic write
optimization. It makes use of atomic write support provided by the
underlying file system. Currently, this is only supported on F2FS. It
it does not work with overlayfs.

Signed-off-by: Jan Hoffmann <jan@3e8.eu>
This commit is contained in:
Jan Hoffmann 2021-02-04 20:41:50 +01:00 committed by Etienne Champetier
parent d7a76b634a
commit 4bc7ba7fe8
2 changed files with 10 additions and 2 deletions

View File

@ -1,6 +1,12 @@
menu "Configuration"
depends on PACKAGE_libsqlite3
config SQLITE3_BATCH_ATOMIC_WRITE
bool "Batch-atomic write support"
default n
help
Enable batch-atomic write optimization (supported only on F2FS).
config SQLITE3_DYNAMIC_EXTENSIONS
bool "Dynamic extensions"
default y

View File

@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=sqlite
PKG_VERSION:=3330000
PKG_RELEASE:=1
PKG_RELEASE:=2
PKG_SOURCE:=$(PKG_NAME)-autoconf-$(PKG_VERSION).tar.gz
PKG_HASH:=106a2c48c7f75a298a7557bcc0d5f4f454e5b43811cc738b7ca294d6956bbb15
@ -31,6 +31,7 @@ PKG_FIXUP:=autoreconf
PKG_INSTALL:=1
PKG_CONFIG_DEPENDS := \
CONFIG_SQLITE3_BATCH_ATOMIC_WRITE \
CONFIG_SQLITE3_DYNAMIC_EXTENSIONS \
CONFIG_SQLITE3_FTS3 \
CONFIG_SQLITE3_FTS4 \
@ -99,7 +100,8 @@ endef
TARGET_CFLAGS += \
-DHAVE_ISNAN \
-DHAVE_MALLOC_USABLE_SIZE \
-DSQLITE_ENABLE_UNLOCK_NOTIFY
-DSQLITE_ENABLE_UNLOCK_NOTIFY \
$(if $(CONFIG_SQLITE3_BATCH_ATOMIC_WRITE),-DSQLITE_ENABLE_BATCH_ATOMIC_WRITE)
CONFIGURE_ARGS += \
--disable-debug \