Download raw body.
databases/sqlite3-tcl port and tcl9
On Fri, 12 Jun 2026, Stuart Henderson wrote:
> nitpicking, but could you indent the lines after \ please?
Totally, fer sure.
> ok
Thanks.
Now how about this abuse of the ports system?
Build/test/etc separately with 8.6 for the 8.6 .so.
"configure" only thinks it finds a usable tclsh9,
so that has to be overridden.
Something like a build dep on a port's own flavor could work,
but locks seem to prevent that. I've been trying a bunch of things.
Stu
diff -Nurp /usr/ports//databases/sqlite3-tcl/Makefile ./Makefile
--- /usr/ports//databases/sqlite3-tcl/Makefile Thu May 14 22:51:47 2026
+++ ./Makefile Tue Jun 16 09:15:32 2026
@@ -1,5 +1,7 @@
COMMENT = Tcl bindings for SQLite3
+REVISION = 0
+
V = 3.53.0
DISTNAME = sqlite${V}
@@ -19,12 +21,16 @@ SITES = ${SITE_SOURCEFORGE:=tcl/}
DISTFILES = tclsqlite{sqlite}${V}${EXTRACT_SUFX}
MODULES = lang/tcl
-MODTCL_VERSION = 8.6
+MODTCL_VERSION = 9
-BUILD_DEPENDS = ${MODTCL_BUILD_DEPENDS}
-RUN_DEPENDS = ${MODTCL_RUN_DEPENDS}
+BUILD_DEPENDS = ${MODTCL_BUILD_DEPENDS} \
+ lang/tcl/8.6
+RUN_DEPENDS = ${MODTCL_RUN_DEPENDS} \
+ lang/tcl/8.6
+
FAKE_FLAGS = PKG_DIR=sqlite3
+TEST_FLAGS = TCLSH_PROG=tclsh9 # instead of patching
SEPARATE_BUILD = Yes
CONFIGURE_STYLE = gnu
@@ -45,5 +51,33 @@ VER = ${V:S/.//g}
pre-configure:
@${MODTCL_TCLSH_ADJ} ${WRKSRC}/compat/sqlite3/spaceanal.tcl
+
+post-configure:
+ mkdir ${WRKBUILD}-tcl8 && \
+ make WRKBUILD=${WRKBUILD}-tcl8 MODTCL_VERSION=8.6 configure8
+
+configure8:
+ ${MODGNU_configure}
+
+post-build:
+ cd ${WRKBUILD}-tcl8 && \
+ env -i ${MAKE_ENV} ${MAKE_PROGRAM} ${MAKE_FLAGS} \
+ -f ${MAKE_FILE} ${ALL_TARGET}
+
+post-install:
+ mkdir ${WRKINST}-tcl8 && \
+ cd ${WRKBUILD}-tcl8 && \
+ env -i ${MAKE_ENV} ${FAKE_SETUP} DESTDIR=${WRKINST}-tcl8 \
+ ${MAKE_PROGRAM} ${ALL_FAKE_FLAGS} DESTDIR=${WRKINST}-tcl8 \
+ -f ${MAKE_FILE} ${FAKE_TARGET} && \
+ ${INSTALL_DATA} ${WRKINST}-tcl8${MODTCL_TCLDIR}/sqlite3/libsqlite${VER}.so \
+ ${DESTDIR}${MODTCL_TCLDIR}/sqlite3/
+
+post-test:
+ cd ${WRKBUILD}-tcl8 && \
+ env -i ${ALL_TEST_ENV} ${MAKE_PROGRAM} ${ALL_TEST_FLAGS} TCLSH_PROG=tclsh8.6 \
+ -f ${MAKE_FILE} ${TEST_TARGET} ${TEST_LOG}-tcl8
+
+.PHONY: configure8
.include <bsd.port.mk>
diff -Nurp /usr/ports//databases/sqlite3-tcl/pkg/PLIST ./pkg/PLIST
--- /usr/ports//databases/sqlite3-tcl/pkg/PLIST Wed Nov 19 15:31:24 2025
+++ ./pkg/PLIST Mon Jun 15 08:33:41 2026
@@ -1,6 +1,7 @@
@pkgpath databases/sqlite3,-tcl
lib/tcl/sqlite3/
@so lib/tcl/sqlite3/libsqlite${VER}.so
+@so lib/tcl/sqlite3/libtcl9sqlite${VER}.so
lib/tcl/sqlite3/pkgIndex.tcl
@man man/mann/sqlite3.n
share/examples/sqlite3-tcl/
databases/sqlite3-tcl port and tcl9