diff options
author | drh <> | 2025-01-05 17:16:33 +0000 |
---|---|---|
committer | drh <> | 2025-01-05 17:16:33 +0000 |
commit | 15e388d91057ca381510ace3e094210b33626452 (patch) | |
tree | c15df374cb04fe395781fa16d5895441322e25a8 /doc | |
parent | 85900c04b01f28ae8b3b352dc58c124d32dbf7d9 (diff) | |
download | sqlite-15e388d91057ca381510ace3e094210b33626452.tar.gz sqlite-15e388d91057ca381510ace3e094210b33626452.zip |
Refactor the TCL extension test procedure to deal with TCL8.6 and TCL9.0
separately, to simplify the procedures and reduce cognative stress on the
tester.
FossilOrigin-Name: 5281536327d244ba9507548f7ed607e86e59b98a003e63f6da767471411c8ffc
Diffstat (limited to 'doc')
-rw-r--r-- | doc/tcl-extension-testing.md | 104 |
1 files changed, 52 insertions, 52 deletions
diff --git a/doc/tcl-extension-testing.md b/doc/tcl-extension-testing.md index 3371d514b..65baa1546 100644 --- a/doc/tcl-extension-testing.md +++ b/doc/tcl-extension-testing.md @@ -34,53 +34,56 @@ an ordinary tclsh can subsequently run "package require sqlite3". of the TCL libraries and the SQLite TCL Extensions. </ol> -### 2.2 Building the TCL libraries and tclsh executables +### 2.2 Testing TCL 8.6 on unix <ol type="1"> -<li value="5"> `mkdir $TCLTD $TCLTD/tcl86 $TCLTD/tcl90` +<li value="5"> `mkdir $TCLTD/tcl86` <li> `cd $TCLCO/unix` <li> `fossil up core-8-6-16` <br> ↑ Or some other version of Tcl8.6. <li> `fossil clean -x` <li> `./configure --prefix=$TCLTD/tcl86` <li> `make install` +<li> `cd $SRCCO` +<li> `fossil clean -x` +<li> `./configure --with-tclsh=$TCLTD/tcl86/bin/tclsh8.6` +<li> `make tclextension-install` <br> + ↑ Verify extension installed at $TCLTD/tcl86/lib/tcl8.6/sqlite3.* +<li> `makek tclextension-list` <br> + ↑ Verify TCL extension correctly installed. +<li> `make tclextension-verify` <br> + ↑ Verify that the correct version is installed. +<li> `$TCLTD/tcl86/bin/tclsh8.6 test/testrunner.tcl release --explain` <br> + ↑ Verify thousands of lines of output with no errors. Or + consider running "devtest" without --explain instead of "release". +</ol> + +### 2.3 Testing TCL 9.0 on unix + +<ol> +<li value="18"> `mkdir $TCLTD/tcl90` <li> `fossil up core-9-0-0` <br> ↑ Or some other version of Tcl9 <li> `fossil clean -x` <li> `./configure --prefix=$TCLTD/tcl90` <li> `make install` -</ol> - -### 2.3 Building the SQLite TCL extension - -<ol type="1"> -<li value="15"> `cd $SRCCO` -<li> `fossil clean -x` -<li> `./configure --with-tclsh=$TCLTD/tcl86/bin/tclsh8.6` -<li> `make tclextension-install` <br> - ↑ Verify extension installed at $TCLTD/tcl86/lib/tcl8.6/sqlite3.* -<li> `make tclextension-verify` +<li> `cd $SRCCO` <li> `fossil clean -x` <li> `./configure --with-tclsh=$TCLTD/tcl90/bin/tclsh9.0` <li> `make tclextension-install` <br> ↑ Verify extension installed at $TCLTD/tcl90/lib/sqlite3.* +<li> `makek tclextension-list` <br> + ↑ Verify TCL extension correctly installed. <li> `make tclextension-verify` -</ol> - -### 2.4 Additional sanity tests - -<ol type="1"> -<li value="24"> - `$TCLTD/tcl86/bin/tclsh8.6 test/testrunner.tcl release --explain` <br> - ↑ Verify thousands of lines of output with no errors <li> `$TCLTD/tcl90/bin/tclsh9.0 test/testrunner.tcl release --explain` <br> - ↑ Verify thousands of lines of output with no errors + ↑ Verify thousands of lines of output with no errors. Or + consider running "devtest" without --explain instead of "release". </ol> -### 2.5 Cleanup +### 2.4 Cleanup <ol type="1"> -<li value="26"> `rm -rf $TCLTD` +<li value="30"> `rm -rf $TCLTD` </ol> ## 3.0 Testing On Windows @@ -110,10 +113,10 @@ an ordinary tclsh can subsequently run "package require sqlite3". ↑ remember the original %PATH% value </ol> -### 3.2 Building the TCL libraries and tclsh.exe executables on Windows +### 3.2 Testing TCL 8.6 on Windows <ol type="1"> -<li value="8"> `mkdir %TCLTD% %TCLTD%\tcl86 %TCLTD%\tcl90` +<li value="8"> `mkdir %TCLTD%\tcl86` <li> `cd %TCLCO%\win` <li> `fossil up core-8-6-16` <br> ↑ Or some other version of Tcl8.6. @@ -124,6 +127,24 @@ an ordinary tclsh can subsequently run "package require sqlite3". using separate invocations of "nmake" or tclsh86t.exe won't be installed. <li> `nmake /f makefile.vc install` +<li> `cd %SRCCO%` +<li> `fossil clean -x` +<li> `set TCLDIR=%TCLTD%\tcl86` +<li> `set PATH=%TCLTD%\tcl86\bin;%ORIGINALPATH%` +<li> `set TCLSH_CMD=%TCLTD%\tcl86\bin\tclsh86t.exe` +<li> `nmake /f Makefile.msc tclextension-install` <br> + ↑ Verify extension installed at %TCLTD%\\tcl86\\lib\\tcl8.6\\sqlite3.* +<li> `nmake /f Makefile.msc tclextension-verify` +<li>`tclsh86t test/testrunner.tcl release --explain` <br> + ↑ Verify thousands of lines of output with no errors. Or + consider running "devtest" without --explain instead of "release". +</ol> + +### 3.3 Testing TCL 9.0 on Windows + +<ol> +<li value="23"> `mkdir %TCLTD%\tcl90` +<li> `cd %TCLCO%\win` <li> `fossil up core-9-0-0` <br> ↑ Or some other version of Tcl9 <li> `fossil clean -x` @@ -133,19 +154,7 @@ an ordinary tclsh can subsequently run "package require sqlite3". using separate invocations of "nmake" or tclsh90.exe won't be installed. <li> `nmake /f makefile.vc install` -</ol> - -### 3.3 Building the SQLite TCL extension on Windows - -<ol type="1"> -<li value="20"> `cd %SRCCO%` -<li> `fossil clean -x` -<li> `set TCLDIR=%TCLTD%\tcl86` -<li> `set PATH=%TCLTD%\tcl86\bin;%ORIGINALPATH%` -<li> `set TCLSH_CMD=%TCLTD%\tcl86\bin\tclsh86t.exe` -<li> `nmake /f Makefile.msc tclextension-install` <br> - ↑ Verify extension installed at %TCLTD%\\tcl86\\lib\\tcl8.6\\sqlite3.* -<li> `nmake /f Makefile.msc tclextension-verify` +<li> `cd %SRCCO%` <li> `fossil clean -x` <li> `set TCLDIR=%TCLTD%\tcl90` <li> `set PATH=%TCLTD%\tcl90\bin;%ORIGINALPATH%` @@ -153,22 +162,13 @@ an ordinary tclsh can subsequently run "package require sqlite3". <li> `nmake /f Makefile.msc tclextension-install` <br> ↑ Verify extension installed at %TCLTD%\\tcl90\\lib\\sqlite3.* <li> `nmake /f Makefile.msc tclextension-verify` -</ol> - -### 3.4 Additional sanity tests for Windows - -<ol type="1"> -<li value="33"> - `set PATH=%TCLTD%\tcl86\bin;%ORIGINALPATH%` -<li>`tclsh86t test/testrunner.tcl release --explain` <br> - ↑ Verify thousands of lines of output with no errors -<li> `set PATH=%TCLTD%\tcl90\bin;%ORIGINALPATH%` <li> `tclsh90 test/testrunner.tcl release --explain` <br> - ↑ Verify thousands of lines of output with no errors + ↑ Verify thousands of lines of output with no errors. Or + consider running "devtest" without --explain instead of "release". </ol> -### 3.5 Cleanup +### 3.4 Cleanup <ol type="1"> -<li value="37"> `rm -rf %TCLTD%` +<li value="38"> `rm -rf %TCLTD%` </ol> |