From: Stuart Cassoff Subject: Re: databases/sqlite3-tcl port and tcl9 To: Stuart Henderson Cc: Chris Billington , ports@openbsd.org Date: Tue, 16 Jun 2026 09:33:21 -0400 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 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/