diff --git a/libs/sqlite3/Config-cli.in b/libs/sqlite3/Config-cli.in new file mode 100644 index 000000000..752db6e81 --- /dev/null +++ b/libs/sqlite3/Config-cli.in @@ -0,0 +1,24 @@ +menu "Configuration" + depends on PACKAGE_sqlite3-cli + +choice + prompt "Select command-line editing support" + default SQLITE3_LIBEDIT + + config SQLITE3_LIBEDIT + bool "libedit" + help + Link against libedit. This is the default. + + config SQLITE3_READLINE + bool "readline" + help + Link against GNU readline. + + config SQLITE3_READLINE_NONE + bool "none" + help + Disable command-line editing support. + +endchoice +endmenu diff --git a/libs/sqlite3/Config-lib.in b/libs/sqlite3/Config-lib.in new file mode 100644 index 000000000..aa6357b53 --- /dev/null +++ b/libs/sqlite3/Config-lib.in @@ -0,0 +1,53 @@ +menu "Configuration" + depends on PACKAGE_libsqlite3 + +config SQLITE3_DYNAMIC_EXTENSIONS + bool "Dynamic extensions" + default y + help + Enable loadable extensions. + +config SQLITE3_FTS3 + bool "FTS3 support" + default y + help + Enable FTS3 support. + +config SQLITE3_FTS4 + bool "FTS4 support" + depends on SQLITE3_FTS3 + default y + help + Enable FTS4 support. + +config SQLITE3_FTS5 + bool "FTS5 support" + default y + help + Enable FTS5 support. + +config SQLITE3_JSON1 + bool "JSON1 extension" + default y + help + Include JSON1 support. This is the default. + +config SQLITE3_RTREE + bool "R-Tree support" + default y + help + Enable R-Tree support. + +config SQLITE3_SESSION + bool "Session extension" + default n + help + Enable the session extension (default no). + +config SQLITE3_THREADSAFE + bool "Thread-safe library" + default y + help + Build a thread-safe library. + +endmenu diff --git a/libs/sqlite3/Config.in b/libs/sqlite3/Config.in deleted file mode 100644 index 8e8fa6ec9..000000000 --- a/libs/sqlite3/Config.in +++ /dev/null @@ -1,18 +0,0 @@ -menu "Configuration" - depends on PACKAGE_libsqlite3 - -config SQLITE_FTS3 - bool - prompt "Enable FTS3" - help - "Enable support for full-text search version 3" - default y - -config SQLITE_RTREE - bool - prompt "Enable RTREE" - help - "Enable support for the R*Tree index extension" - default y - -endmenu diff --git a/libs/sqlite3/Makefile b/libs/sqlite3/Makefile index b56af5360..6bdabb585 100644 --- a/libs/sqlite3/Makefile +++ b/libs/sqlite3/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=sqlite PKG_VERSION:=3260000 -PKG_RELEASE:=2 +PKG_RELEASE:=3 PKG_SOURCE:=$(PKG_NAME)-autoconf-$(PKG_VERSION).tar.gz PKG_HASH:=5daa6a3fb7d1e8c767cd59c4ded8da6e4b00c61d3b466d0685e35c4dd6d7bf5d @@ -20,13 +20,25 @@ PKG_LICENSE_FILES:= PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-autoconf-$(PKG_VERSION) +PKG_BUILD_PARALLEL:=1 + +PKG_CPE_ID:=cpe:/a:sqlite:sqlite + PKG_FIXUP:=autoreconf PKG_INSTALL:=1 PKG_CONFIG_DEPENDS := \ - CONFIG_SQLITE_FTS3 \ - CONFIG_SQLITE_RTREE + CONFIG_SQLITE3_DYNAMIC_EXTENSIONS \ + CONFIG_SQLITE3_FTS3 \ + CONFIG_SQLITE3_FTS4 \ + CONFIG_SQLITE3_FTS5 \ + CONFIG_SQLITE3_JSON1 \ + CONFIG_SQLITE3_LIBEDIT \ + CONFIG_SQLITE3_READLINE \ + CONFIG_SQLITE3_RTREE \ + CONFIG_SQLITE3_SESSION \ + CONFIG_SQLITE3_THREADSAFE include $(INCLUDE_DIR)/package.mk @@ -57,14 +69,18 @@ $(call Package/sqlite3/Default/description) endef define Package/libsqlite3/config - source "$(SOURCE)/Config.in" + source "$(SOURCE)/Config-lib.in" endef define Package/sqlite3-cli $(call Package/sqlite3/Default) SECTION:=utils CATEGORY:=Utilities - DEPENDS:=+libsqlite3 +libncurses +libreadline + DEPENDS := \ + +libsqlite3 \ + +SQLITE3_LIBEDIT:libedit \ + +SQLITE3_READLINE:libreadline \ + +SQLITE3_READLINE:libncursesw TITLE+= (cli) endef @@ -75,31 +91,42 @@ $(call Package/sqlite3/Default/description) formats. endef +define Package/sqlite3-cli/config + source "$(SOURCE)/Config-cli.in" +endef + TARGET_CFLAGS += \ - -DHAVE_ISNAN=1 \ - -DHAVE_MALLOC_USABLE_SIZE=1 \ - -DSQLITE_ENABLE_UNLOCK_NOTIFY=1 - -ifneq ($(CONFIG_SQLITE_FTS3),y) -TARGET_CFLAGS += -USQLITE_ENABLE_FTS3 -endif - -ifneq ($(CONFIG_SQLITE_RTREE),y) -TARGET_CFLAGS += -USQLITE_ENABLE_RTREE -endif + -DHAVE_ISNAN \ + -DHAVE_MALLOC_USABLE_SIZE \ + -DSQLITE_ENABLE_UNLOCK_NOTIFY CONFIGURE_ARGS += \ + --disable-debug \ + --disable-static-shell \ --enable-shared \ --enable-static \ - --disable-editline \ - --disable-static-shell + $(if $(CONFIG_SQLITE3_DYNAMIC_EXTENSIONS),--enable-dynamic-extensions,--disable-dynamic-extensions) \ + $(if $(CONFIG_SQLITE3_FTS3),--enable-fts3,--disable-fts3) \ + $(if $(CONFIG_SQLITE3_FTS3),--enable-fts4,--disable-fts4) \ + $(if $(CONFIG_SQLITE3_FTS3),--enable-fts5,--disable-fts5) \ + $(if $(CONFIG_SQLITE3_JSON1),--enable-json1,--disable-json1) \ + $(if $(CONFIG_SQLITE3_RTREE),--enable-rtree,--disable-rtree) \ + $(if $(CONFIG_SQLITE3_SESSION),--enable-session,--disable-session) \ + $(if $(CONFIG_SQLITE3_THREADSAFE),--enable-threadsafe,--disable-threadsafe) + +ifeq ($(CONFIG_SQLITE3_LIBEDIT),y) +CONFIGURE_ARGS+=--disable-readline +else ifeq ($(CONFIG_SQLITE3_READLINE),y) +CONFIGURE_ARGS+=--disable-editline +else +CONFIGURE_ARGS+=--disable-editline --disable-readline +endif define Build/InstallDev $(INSTALL_DIR) $(1)/usr/include - $(CP) $(PKG_INSTALL_DIR)/usr/include/sqlite3{,ext}.h $(1)/usr/include/ - $(INSTALL_DIR) $(1)/usr/lib - $(CP) $(PKG_INSTALL_DIR)/usr/lib/libsqlite3.{a,so*} $(1)/usr/lib/ $(INSTALL_DIR) $(1)/usr/lib/pkgconfig + $(CP) $(PKG_INSTALL_DIR)/usr/include/sqlite3{,ext}.h $(1)/usr/include/ + $(CP) $(PKG_INSTALL_DIR)/usr/lib/libsqlite3.{a,so*} $(1)/usr/lib/ $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/sqlite3.pc $(1)/usr/lib/pkgconfig/ endef