From f67e32b5ccfdbd13071b273d668ab02ce806b578 Mon Sep 17 00:00:00 2001 From: Jan Hoffmann Date: Thu, 4 Feb 2021 20:41:50 +0100 Subject: [PATCH] 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 (cherry picked from commit 4bc7ba7fe82563dd64db57317c52824039ab8209) --- libs/sqlite3/Config-lib.in | 6 ++++++ libs/sqlite3/Makefile | 6 ++++-- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/libs/sqlite3/Config-lib.in b/libs/sqlite3/Config-lib.in index 6e7ea18dcf..bcf024aa68 100644 --- a/libs/sqlite3/Config-lib.in +++ b/libs/sqlite3/Config-lib.in @@ -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 diff --git a/libs/sqlite3/Makefile b/libs/sqlite3/Makefile index c55ec658de..274101a5f2 100644 --- a/libs/sqlite3/Makefile +++ b/libs/sqlite3/Makefile @@ -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 \ -- 2.30.2