summaryrefslogtreecommitdiff
path: root/databases/sqlite3
diff options
context:
space:
mode:
Diffstat (limited to 'databases/sqlite3')
-rw-r--r--databases/sqlite3/Makefile63
-rw-r--r--databases/sqlite3/distinfo6
-rw-r--r--databases/sqlite3/files/patch-Makefile.in11
-rw-r--r--databases/sqlite3/files/patch-autosetup_pkg-config.tcl11
-rw-r--r--databases/sqlite3/files/patch-main.mk28
-rw-r--r--databases/sqlite3/pkg-plist2
6 files changed, 78 insertions, 43 deletions
diff --git a/databases/sqlite3/Makefile b/databases/sqlite3/Makefile
index 03ef9aeaedca..9521ef1d6ce8 100644
--- a/databases/sqlite3/Makefile
+++ b/databases/sqlite3/Makefile
@@ -1,5 +1,5 @@
PORTNAME= sqlite3
-DISTVERSION= 3.46.1
+DISTVERSION= 3.50.2
PORTREVISION= 1
PORTEPOCH= 1
CATEGORIES= databases
@@ -31,11 +31,13 @@ icu_PKGNAMESUFFIX= -${FLAVOR} # databases/p5-DBD-SQLite with ICU support
tcl_PKGNAMESUFFIX= -${FLAVOR} # lang/tcl* support
.endif
-USES= libtool pathfix zip
+USES= libtool ncurses pathfix zip
USE_LDCONFIG= yes
-GNU_CONFIGURE= yes
-GNU_CONFIGURE_MANPREFIX=${PREFIX}/share
+HAS_CONFIGURE= yes
+CONFIGURE_ARGS+= --linemacros --soname=legacy OPTIONS='${_OPTIONS}'
+# [The Chronicles of SONAME](https://sqlite.org/src/forumpost/5a3b44f510df8ded)
+# [Set features OPTIONS for autosetup configurator](https://msteveb.github.io/autosetup/)
MAKE_JOBS_UNSAFE= yes
ALL_TARGET+= sqldiff
@@ -66,7 +68,7 @@ SUB_LIST+= TEA="@comment " NO_TEA=""
PLIST_SUB+= TEA="@comment " NO_TEA=""
.endif
-PLIST_SUB+= TCLVER=tcl${TCL_VER} TCLSUF=tcl${TCL_VER:S/.//g}
+PLIST_SUB+= TCLVER=tcl${TCL_VER} TCLSUF=tcl${TCL_VER:S/.//g} DISTVERSION=${DISTVERSION}
# Compilation Options For SQLite https://www.sqlite.org/compile.html
OPTIONS_DEFINE= EXAMPLES STRIP TCL THREADS
@@ -116,7 +118,7 @@ DBPAGE_DESC= Enable DBPAGE Virtual Table # https://sqlite.org/compile.html#enab
DBSTAT_DESC= Enable DBSTAT Virtual Table # https://www.sqlite.org/dbstat.html
DIRECT_READ_DESC= File is read directly from disk # https://sqlite.org/compile.html#direct_overflow_read
DQS_DESC= Double-quoted String Literals # https://www.sqlite.org/compile.html#dqs
-EXTENSION_DESC= Allow loadable extensions
+EXTENSION_DESC= Enable loadable extensions
FTS3_TOKEN_DESC= Enable two-args version fts3_tokenizer # https://www.sqlite.org/compile.html#enable_fts3_tokenizer, https://www.sqlite.org/fts3.html#f3tknzr
FTS4_DESC= Enable FTS3/4 (Full Text Search) module # https://www.sqlite.org/fts3.html, https://www.sqlite.org/compile.html#enable_fts3_parenthesis
FTS5_DESC= Enable version 5 full-text search engine # https://www.sqlite.org/fts5.html
@@ -164,18 +166,18 @@ DQS_CPPFLAGS= -DSQLITE_DQS=3
DQS_CPPFLAGS_OFF= -DSQLITE_DQS=0
EXTENSION_CONFIGURE_ENABLE= load-extension
FTS3_TOKEN_CPPFLAGS= -DSQLITE_ENABLE_FTS3_TOKENIZER=1
-FTS4_CONFIGURE_ENABLE= fts3 fts4
+FTS4_CONFIGURE_ON= --fts3 --fts4
FTS4_CPPFLAGS= -DSQLITE_ENABLE_FTS3_PARENTHESIS=1
-FTS5_CONFIGURE_ENABLE= fts5
-FTS5_LIBS= -lm
+FTS5_CONFIGURE_ON= --fts5
+FTS5_VARS= _OPTIONS+=-lm
GEOPOLY_IMPLIES= RTREE
-GEOPOLY_CONFIGURE_ENABLE= geopoly
+GEOPOLY_CONFIGURE_ON= --geopoly
ICU_BUILD_DEPENDS= ${LOCALBASE}/bin/icu-config:devel/icu
ICU_LIB_DEPENDS= libicudata.so:devel/icu
-ICU_CPPFLAGS= `${LOCALBASE}/bin/icu-config --cppflags` -DSQLITE_ENABLE_ICU=1
-ICU_LIBS= `${LOCALBASE}/bin/icu-config --ldflags`
+ICU_CONFIGURE_ON= --with-icu-config=${LOCALBASE}/bin/icu-config --icu-collations
+ICU_CPPFLAGS= `${LOCALBASE}/bin/icu-config --cppflags`
LIBEDIT_USES= libedit
-LIBEDIT_CONFIGURE_ENABLE= editline
+LIBEDIT_CONFIGURE_ON= --editline
LIKENOTBLOB_CPPFLAGS= -DSQLITE_LIKE_DOESNT_MATCH_BLOBS=1
MEMMAN_CPPFLAGS= -DSQLITE_ENABLE_MEMORY_MANAGEMENT=1
METADATA_CPPFLAGS= -DSQLITE_ENABLE_COLUMN_METADATA=1
@@ -185,40 +187,40 @@ OFFSET_CPPFLAGS= -DSQLITE_ENABLE_OFFSET_SQL_FUNC=1
RBU_CPPFLAGS= -DSQLITE_ENABLE_RBU=1
READLINE_USES= readline
READLINE_CONFIGURE_ENABLE= readline
-RTREE_CONFIGURE_ENABLE= rtree
+RTREE_CONFIGURE_ON= --rtree
RTREE_INT_CPPFLAGS= -DSQLITE_RTREE_INT_ONLY=1
SECURE_DELETE_CPPFLAGS= -DSQLITE_SECURE_DELETE=1
-SESSION_CONFIGURE_ENABLE= session
+SESSION_CONFIGURE_ON= --session
SORT_REF_CPPFLAGS= -DSQLITE_ENABLE_SORTER_REFERENCES=1
SOUNDEX_CPPFLAGS= -DSQLITE_SOUNDEX=1
STAT3_CPPFLAGS= -DSQLITE_ENABLE_STAT3=1
STAT4_CPPFLAGS= -DSQLITE_ENABLE_STAT4=1
+STATIC_CONFIGURE_OFF= --dynlink-tools
STATIC_CONFIGURE_ENABLE= static
-STMT_CPPFLAGS= -DSQLITE_ENABLE_STMT_SCANSTATUS=1
+STMT_CONFIGURE_ON= --scanstatus
TCL_USES= tcl
TCL_USES_OFF= tcl:build
-TCL_CONFIGURE_ENABLE= tcl
-TCL_CONFIGURE_WITH= tcl=${TCL_LIBDIR}
+TCL_CONFIGURE_OFF= --disable-tcl
TCL_CONFIGURE_ENV= ac_cv_prog_TCLSH_CMD=${TCLSH}
TCL_ALL_TARGET+= sqlite3_analyzer
-THREADS_CONFIGURE_ENABLE= threadsafe
-THREADS_LIBS= -lpthread
+THREADS_CONFIGURE_OFF= --disable-threadsafe
+THREADS_VARS= _OPTIONS+=-lpthread
TRUSTED_SCHEMA_CPPFLAGS= -DSQLITE_TRUSTED_SCHEMA=0
-TS0_CONFIGURE_ON= --enable-tempstore=never
-TS1_CONFIGURE_ON= --enable-tempstore=no
-TS2_CONFIGURE_ON= --enable-tempstore=yes
-TS3_CONFIGURE_ON= --enable-tempstore=always
+TS0_CONFIGURE_ON= --with-tempstore=never
+TS1_CONFIGURE_ON= --with-tempstore=no
+TS2_CONFIGURE_ON= --with-tempstore=yes
+TS3_CONFIGURE_ON= --with-tempstore=always
UNICODE61_CPPFLAGS_OFF= -DSQLITE_DISABLE_FTS3_UNICODE=1
UNKNOWN_SQL_CPPFLAGS= -DSQLITE_ENABLE_UNKNOWN_SQL_FUNCTION=1
UNLOCK_NOTIFY_CPPFLAGS= -DSQLITE_ENABLE_UNLOCK_NOTIFY=1
-UPDATE_LIMIT_CONFIGURE_ENABLE= update-limit
+UPDATE_LIMIT_CONFIGURE_ON= --update-limit
URI_CPPFLAGS= -DSQLITE_USE_URI=1
URI_AUTHORITY_CPPFLAGS= -DSQLITE_ALLOW_URI_AUTHORITY=1
.include <bsd.port.options.mk>
# _YEAR= ${%Y:L:gmtime} - do not work with the version from the previous year
-_YEAR= 2024
+_YEAR= 2025
# Recommended options
# https://sqlite.org/compile.html#strict_subtype
@@ -246,12 +248,16 @@ CPPFLAGS+= -DHAVE_FCHOWN=1 \
-DHAVE_READLINK=1 \
-DSQLITE_OS_UNIX=1
+.if ${PORT_OPTIONS:MTCL}
+LIB_DEPENDS+= libtommath.so:math/libtommath
+.endif
+
# For compare with checksum from of the site. Now, this is a NIST SHA3-256 hash. sha256 not suitable for compare.
# But the creation of a new target does not justify the emergence of dependence on the perl5.
# sha3sum maybe installed with p5-Digest-SHA3 port.
# EXTRACT_DEPENDS=p5-Digest-SHA3:security/p5-Digest-SHA3; USES=perl5; USE_PERL5=extract;
# @${PERL} -MDigest::SHA3 -le 'print Digest::SHA3->new(sha_256_hex)->add(<>)->hexdigest' < ${DISTDIR}/${ALLFILES}
-pre-extract:
+post-fetch:
@${WHICH} sha3sum > /dev/null && for entry in ${ALLFILES}; do ${ECHO_MSG} -n "=> "; sha3sum -a 256 --tag "${DISTDIR}/$${entry}"; done || ${TRUE}
post-configure:
@@ -264,6 +270,7 @@ post-configure:
@${ECHO_MSG} "===> TCLSH=${TCLSH}"
@${ECHO_MSG} "===> TCL_INCLUDEDIR=${TCL_INCLUDEDIR}"
@${ECHO_MSG} "===> TCL_LIBDIR=${TCL_LIBDIR}"
+ @${ECHO_MSG} "===> OPTIONS=${_OPTIONS}"
post-install:
.if !defined(TEA)
@@ -272,7 +279,7 @@ post-install:
${SETENV} LD_LIBMAP_DISABLE=1 ldd -a "${STAGEDIR}${PREFIX}/bin/${PORTNAME}" "${STAGEDIR}${PREFIX}/lib/lib${PORTNAME}.so"
${INSTALL_PROGRAM} "${WRKSRC}/sqldiff" "${STAGEDIR}${PREFIX}/bin"
.else
- ${RM} "${STAGEDIR}${PREFIX}/lib/lib${PORTNAME}.so.0.8.6" "${STAGEDIR}${PREFIX}/lib/lib${PORTNAME}.a"
+ ${RM} "${STAGEDIR}${PREFIX}/lib/lib${PORTNAME}.so.${DISTVERSION}" "${STAGEDIR}${PREFIX}/lib/lib${PORTNAME}.a"
.endif
post-install-STRIP-on:
diff --git a/databases/sqlite3/distinfo b/databases/sqlite3/distinfo
index 739398954046..7740e0943b59 100644
--- a/databases/sqlite3/distinfo
+++ b/databases/sqlite3/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1724580150
-SHA256 (sqlite-src-3460100.zip) = def3fc292eb9ecc444f6c1950e5c79d8462ed5e7b3d605fd6152d145e1d5abb4
-SIZE (sqlite-src-3460100.zip) = 14276926
+TIMESTAMP = 1751267280
+SHA256 (sqlite-src-3500200.zip) = 091eeec3ae2ccb91aac21d0e9a4a58944fb2cb112fa67bffc3e08c2eca2d85c8
+SIZE (sqlite-src-3500200.zip) = 14392422
diff --git a/databases/sqlite3/files/patch-Makefile.in b/databases/sqlite3/files/patch-Makefile.in
deleted file mode 100644
index 70aa8e8a281e..000000000000
--- a/databases/sqlite3/files/patch-Makefile.in
+++ /dev/null
@@ -1,11 +0,0 @@
---- Makefile.in.orig 2022-11-26 11:17:35 UTC
-+++ Makefile.in
-@@ -1299,7 +1299,7 @@ tcltest: ./testfixture$(TEXE)
- # The veryquick.test TCL tests.
- #
- tcltest: ./testfixture$(TEXE)
-- ./testfixture$(TEXE) $(TOP)/test/veryquick.test $(TESTOPTS)
-+ mkdir $(TOP)/testdir && touch $(TOP)/test-out.txt && chown nobody $(TOP)/testdir $(TOP)/test-out.txt && su -m nobody -c "./testfixture$(TEXE) $(TOP)/test/veryquick.test $(TESTOPTS)"
-
- # Runs all the same tests cases as the "tcltest" target but uses
- # the testrunner.tcl script to run them in multiple cores
diff --git a/databases/sqlite3/files/patch-autosetup_pkg-config.tcl b/databases/sqlite3/files/patch-autosetup_pkg-config.tcl
new file mode 100644
index 000000000000..9f89a774d6f0
--- /dev/null
+++ b/databases/sqlite3/files/patch-autosetup_pkg-config.tcl
@@ -0,0 +1,11 @@
+--- autosetup/pkg-config.tcl.orig 2025-07-02 07:23:27 UTC
++++ autosetup/pkg-config.tcl
+@@ -78,7 +78,7 @@ proc pkg-config-init {{required 1}} {
+ # but it doesn't seem to work that way in practice
+ set env(PKG_CONFIG_PATH) ""
+ # Do we need to try /usr/local as well or instead?
+- set env(PKG_CONFIG_LIBDIR) $sysroot/usr/lib/pkgconfig:$sysroot/usr/share/pkgconfig
++ set env(PKG_CONFIG_LIBDIR) $system/usr/libdata/pkgconfig:$sysroot/usr/local/libdata/pkgconfig
+ set env(PKG_CONFIG_SYSROOT_DIR) $sysroot
+ }
+ }
diff --git a/databases/sqlite3/files/patch-main.mk b/databases/sqlite3/files/patch-main.mk
new file mode 100644
index 000000000000..74065dcf6d5a
--- /dev/null
+++ b/databases/sqlite3/files/patch-main.mk
@@ -0,0 +1,28 @@
+--- main.mk.orig 2025-06-28 14:24:16 UTC
++++ main.mk
+@@ -140,6 +140,7 @@ libdir ?= $(exec_prefix)/lib
+ exec_prefix ?= $(prefix)
+ bindir ?= $(exec_prefix)/bin
+ libdir ?= $(exec_prefix)/lib
++libdatadir ?= $(exec_prefix)/libdata
+ # This makefile does not use any of:
+ # sbindir ?= $(exec_prefix)/sbin
+ # sysconfdir ?= /etc
+@@ -469,7 +470,7 @@ install-dir.include = $(DESTDIR)$(includedir)
+ install-dir.bin = $(DESTDIR)$(bindir)
+ install-dir.lib = $(DESTDIR)$(libdir)
+ install-dir.include = $(DESTDIR)$(includedir)
+-install-dir.pkgconfig = $(DESTDIR)$(libdir)/pkgconfig
++install-dir.pkgconfig = $(DESTDIR)$(libdatadir)/pkgconfig
+ install-dir.man1 = $(DESTDIR)$(mandir)/man1
+ install-dir.all = $(install-dir.bin) $(install-dir.include) \
+ $(install-dir.lib) $(install-dir.man1) \
+@@ -1810,7 +1811,7 @@ tcltest: ./testfixture$(T.exe)
+ # The veryquick.test TCL tests.
+ #
+ tcltest: ./testfixture$(T.exe)
+- ./testfixture$(T.exe) $(TOP)/test/veryquick.test $(TESTOPTS)
++ mkdir $(TOP)/testdir && touch $(TOP)/test-out.txt && chown nobody $(TOP)/testdir $(TOP)/test-out.txt && su -m nobody -c "./testfixture$(T.exe) $(TOP)/test/veryquick.test $(TESTOPTS)"
+
+ #
+ # Runs all the same tests cases as the "tcltest" target but uses
diff --git a/databases/sqlite3/pkg-plist b/databases/sqlite3/pkg-plist
index f547f671f412..f3908cbf7adf 100644
--- a/databases/sqlite3/pkg-plist
+++ b/databases/sqlite3/pkg-plist
@@ -6,7 +6,7 @@
%%NO_TEA%%%%STATIC%%lib/libsqlite3.a
%%NO_TEA%%lib/libsqlite3.so
%%NO_TEA%%lib/libsqlite3.so.0
-%%NO_TEA%%lib/libsqlite3.so.0.8.6
+%%NO_TEA%%lib/libsqlite3.so.%%DISTVERSION%%
%%NO_TEA%%libdata/pkgconfig/sqlite3.pc
%%NO_TEA%%share/man/man1/sqlite3.1.gz
%%TCL%%share/man/mann/sqlite3.%%TCLSUF%%.n.gz