On Sun, Nov 10, 2019 at 10:13:38AM +0100, Landry Breuil wrote:
> On Sat, Nov 09, 2019 at 03:55:18PM +0100, Landry Breuil wrote:
> > Hi,
> > 
> > sqlite3-tcl is a bit outdated compared to 'main' sqlite3, so im
> > pondering moving back to the previous situation of having them as a
> > single port with multipackages (which was the case before sqlite3 got
> > imported into base) - and while here i hacked my way around to be able
> > to run the tcl test suite. Right now its still running (and seems hung)
> > but that allows to run those natively for each updates.
> > 
> > - we need to switch to the -src tarball which is the only one containing
> >   tests
> > - that requires horrible hacks to generate configure in the autoconf/tea
> >   subdir, + generate tclsqlite3.c wrapper.
> > - that means rerunning configure/building in do-test as the WRKDIST dir
> >   changes
> > 
> > so its a gross hack, more an interesting exercise in ports wrestling,
> > but finally having sqlite tests. even if it doesnt build with the same
> > options as the main sqlite3 port.. some of the SQLITE_ENABLE_XX choices
> > look rather arbitrary.
> 
> And the resulting libsqlite3 tcl library is actually completely broken,
> so yeah its a gross hack. But that said, i managed to run the complete
> tcl testsuite, which resulted after smth like 7h in not so bad results:
> 
> SQLite 2019-10-10 20:19:45 
> 18db032d058f1436ce3dea84081f4ee5a0f2259ad97301d43c426bc7f3dfalt1              
>  
> 13 errors out of 3444413 tests on c64.proxmox2 OpenBSD 64-bit little-endian   
>                             
> !Failures on these tests: backup2-10 loadext-2.1 loadext-2.2 loadext-2.3 
> loadext-3.2 sort3-3 memsubsys1.backup2-10 memsubsys2.backup2-10 
> no_mutex_try.backup2-10 journaltest.backup2-10 inmemory_journal.backup2-10 
> prepare.backup2-10 mm-backup2-10
> 
> (and i think the failures are not actual failures)
> 
> so still, this *might* be interesting to be able to run those tests somehow, 
> so
> that one updating sqlite3 can be a bit more comfortable with testing.

And now a much better version that produces a working tcl sqlite library
(tested by running tdbc-sqlite3 tests) *and* running tests. Went the
simpler route by adding the complete -src tarball as an additional
distfile, and building/running tests from its source dir. A bit gross,
but works.

Now, opinions ? Yays/Nays ? General apathy on the subject ?

Landry
? Makefile.oot
? sqlite3-tcl-3.30.1-with-tests.diff
? pkg/PLIST.new
Index: Makefile
===================================================================
RCS file: /cvs/ports/databases/sqlite3-tcl/Makefile,v
retrieving revision 1.10
diff -u -r1.10 Makefile
--- Makefile    12 Jul 2019 20:44:02 -0000      1.10
+++ Makefile    10 Nov 2019 09:34:10 -0000
@@ -2,10 +2,11 @@
 
 COMMENT =              Tcl bindings for SQLite3
 
-V =                    3.24.0
+V =                    3.30.1
 VER =                  ${V:S/.//g}
 
 DISTNAME =             sqlite-autoconf-${VER:C/.$/0\0/}00
+DISTFILES =            ${DISTNAME}${EXTRACT_SUFX} 
sqlite-src-${VER:C/.$/0\0/}00.zip
 PKGNAME =              sqlite3-tcl-${V}
 CATEGORIES =           databases
 HOMEPAGE =             http://www.sqlite.org/
@@ -16,11 +17,12 @@
 
 WANTLIB =              pthread
 
-MASTER_SITES =         ${HOMEPAGE}2018/
+MASTER_SITES =         ${HOMEPAGE}2019/
 
 MODULES =              lang/tcl
 BUILD_DEPENDS =                ${MODTCL_BUILD_DEPENDS}
 RUN_DEPENDS =          ${MODTCL_RUN_DEPENDS}
+MODTCL_VERSION =       8.6
 
 FAKE_FLAGS =           PKG_DIR=sqlite3
 SEPARATE_BUILD =       Yes
@@ -29,8 +31,6 @@
 CONFIGURE_ARGS =       --with-tcl=${MODTCL_LIBDIR} \
                        --libdir=${MODTCL_TCLDIR}
 
-NO_TEST =              Yes
-
 CFLAGS +=              -DSQLITE_ENABLE_COLUMN_METADATA=1 \
                        -DSQLITE_ENABLE_DBSTAT_VTAB=1 \
                        -DSQLITE_ENABLE_EXPLAIN_COMMENTS=1 \
@@ -47,5 +47,12 @@
 
 WRKSRC =               ${WRKDIST}/tea
 SUBST_VARS =           VER
+
+do-test:
+       sed -i -e 's#editline/readline.h#readline/readline.h#' 
${WRKDIR}/sqlite-src-${VER:C/.$/0\0/}00/src/shell.c.in
+       cd ${WRKDIR}/sqlite-src-${VER:C/.$/0\0/}00 && \
+               ${CONFIGURE_ENV} ./${CONFIGURE_SCRIPT} ${CONFIGURE_ARGS} && \
+               ${SETENV} ${MAKE_ENV} ${MAKE} ${MAKE_FLAGS} fulltest
+
 
 .include <bsd.port.mk>
Index: distinfo
===================================================================
RCS file: /cvs/ports/databases/sqlite3-tcl/distinfo,v
retrieving revision 1.7
diff -u -r1.7 distinfo
--- distinfo    25 Jun 2018 17:47:01 -0000      1.7
+++ distinfo    10 Nov 2019 09:34:10 -0000
@@ -1,2 +1,4 @@
-SHA256 (sqlite-autoconf-3240000.tar.gz) = 
2dFOiMb7bWjenKDR+Xl0d9gvw67WE1WPh/+9u8XOt0o=
-SIZE (sqlite-autoconf-3240000.tar.gz) = 2699252
+SHA256 (sqlite-autoconf-3300100.tar.gz) = 
jFpQ2wib0qGwjbxbANICdgLKf/I4unZY+rykVNQpjmA=
+SHA256 (sqlite-src-3300100.zip) = RpA3BzcYkUnJ6DREFKo3H4mnDjdEujF87xpJ+w7oHOE=
+SIZE (sqlite-autoconf-3300100.tar.gz) = 2848951
+SIZE (sqlite-src-3300100.zip) = 12648162
Index: patches/patch-tea_configure
===================================================================
RCS file: /cvs/ports/databases/sqlite3-tcl/patches/patch-tea_configure,v
retrieving revision 1.3
diff -u -r1.3 patch-tea_configure
--- patches/patch-tea_configure 22 Nov 2017 20:54:18 -0000      1.3
+++ patches/patch-tea_configure 10 Nov 2019 09:34:10 -0000
@@ -1,7 +1,8 @@
 $OpenBSD: patch-tea_configure,v 1.3 2017/11/22 20:54:18 stu Exp $
---- tea/configure.orig Wed Apr 26 16:58:46 2017
-+++ tea/configure      Wed Apr 26 16:59:16 2017
-@@ -7237,7 +7237,7 @@ fi
+Index: tea/configure
+--- tea/configure.orig
++++ tea/configure
+@@ -7249,7 +7249,7 @@ fi
                    CC_SEARCH_FLAGS='-Wl,-rpath,${LIB_RUNTIME_DIR}'
  fi
                LD_SEARCH_FLAGS=${CC_SEARCH_FLAGS}

Reply via email to