diff --git a/package/sqlite/Config.in b/package/sqlite/Config.in index fe6cc08967..7ea9eb15b8 100644 --- a/package/sqlite/Config.in +++ b/package/sqlite/Config.in @@ -53,4 +53,13 @@ config BR2_PACKAGE_SQLITE_SECURE_DELETE http://www.sqlite.org/pragma.html#pragma_secure_delete for additional information. +config BR2_PACKAGE_SQLITE_NO_SYNC + bool "Disable fsync" + help + By default SQLite forces all database transactions to storage + immediately using fsync() to protect against data loss in case + of power failure. + This option turns this behavior off resulting in higher performance + especially when using slow flash storage. + endif diff --git a/package/sqlite/sqlite.mk b/package/sqlite/sqlite.mk index e30b7109b3..d960ce8424 100644 --- a/package/sqlite/sqlite.mk +++ b/package/sqlite/sqlite.mk @@ -33,6 +33,10 @@ ifeq ($(BR2_PACKAGE_SQLITE_SECURE_DELETE),y) SQLITE_CFLAGS += -DSQLITE_SECURE_DELETE endif +ifeq ($(BR2_PACKAGE_SQLITE_NO_SYNC),y) +SQLITE_CFLAGS += -DSQLITE_NO_SYNC +endif + SQLITE_CONF_ENV = CFLAGS="$(TARGET_CFLAGS) $(SQLITE_CFLAGS)" SQLITE_CONF_OPT = \