From: drh <> Date: Sat, 4 Jan 2025 15:51:30 +0000 (+0000) Subject: Adjust the Windows Makefile.msc so that it can build the tclextension with X-Git-Tag: major-relase~33^2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=refs%2Fheads%2Ftest-procedures;p=thirdparty%2Fsqlite.git Adjust the Windows Makefile.msc so that it can build the tclextension with Tcl8.6 successfully. Updates to the tcl-extension test procedure document. FossilOrigin-Name: 0c2cdc632f26d6acac2d508def4ecfcc97462ebcddc20c84f8847e02e42b3a1d --- diff --git a/Makefile.msc b/Makefile.msc index 942f759eed..7ebfcc8a32 100644 --- a/Makefile.msc +++ b/Makefile.msc @@ -984,10 +984,14 @@ TCLLIBS = !ENDIF !IFNDEF LIBTCLSTUB -!IF EXISTS("$(TCLLIBDIR)\tclstub$(TCLSUFFIX).lib") +!IF EXISTS("$(TCLLIBDIR)\tclstub$(TCLVERSION)$(TCLSUFFIX).lib") +LIBTCLSTUB = tclstub$(TCLVERSION)$(TCLSUFFIX).lib +!ELSEIF EXISTS("$(TCLLIBDIR)\tclstub$(TCLSUFFIX).lib") LIBTCLSTUB = tclstub$(TCLSUFFIX).lib +!ELSEIF EXISTS("$(TCLLIBDIR)\tclstub$(TCLVERSION).lib") +LIBTCLSTUB = tclstub$(TCLVERSION).lib !ELSE -LIBTCLSTUB = tclstub$(TCLVERSION)$(TCLSUFFIX).lib +LIBTCLSTUB = tclstub.lib !ENDIF !ENDIF diff --git a/doc/tcl-extension-testing.md b/doc/tcl-extension-testing.md index 7dab3eafbd..0b81b922c9 100644 --- a/doc/tcl-extension-testing.md +++ b/doc/tcl-extension-testing.md @@ -26,11 +26,13 @@
  1. `mkdir $TCLTD $TCLTD/tcl86 $TCLTD/tcl90`
  2. `cd $TCLCO/unix` -
  3. `fossil up core-8-6-16` ← or some other version of Tcl8.6. +
  4. `fossil up core-8-6-16`
    + ↑ Or some other version of Tcl8.6.
  5. `fossil clean -x`
  6. `./configure --prefix=$TCLTD/tcl86`
  7. `make install` -
  8. `fossil up core-9-0-0` ← or some other version of Tcl9 +
  9. `fossil up core-9-0-0`
    + ↑ Or some other version of Tcl9
  10. `fossil clean -x`
  11. `./configure --prefix=$TCLTD/tcl90`
  12. `make install` @@ -42,28 +44,28 @@
  13. `cd $SRCCO`
  14. `fossil clean -x`
  15. `./configure --with-tclsh=$TCLTD/tcl86/bin/tclsh8.6` -
  16. `make tclextension-install` -
  17. → Verify extension installed at $TCLTD/tcl86/lib/tcl8.6/sqlite3.* +
  18. `make tclextension-install`
    + ↑ Verify extension installed at $TCLTD/tcl86/lib/tcl8.6/sqlite3.*
  19. `fossil clean -x`
  20. `./configure --with-tclsh=$TCLTD/tcl90/bin/tclsh9.0` -
  21. `make tclextension-install` -
  22. → Verify extension installed at $TCLTD/tcl90/lib/sqlite3.* +
  23. `make tclextension-install`
    + ↑ Verify extension installed at $TCLTD/tcl90/lib/sqlite3.*
### 1.4 Testing the extension
    -
  1. - `$TCLTD/tcl86/bin/tclsh8.6 test/testrunner.tcl release --explain` -
  2. ↑ Verify thousands of lines of output with no errors -
  3. `$TCLTD/tcl90/bin/tclsh9.0 test/testrunner.tcl release --explain` -
  4. ↑ Verify thousands of lines of output with no errors +
  5. + `$TCLTD/tcl86/bin/tclsh8.6 test/testrunner.tcl release --explain`
    + ↑ Verify thousands of lines of output with no errors +
  6. `$TCLTD/tcl90/bin/tclsh9.0 test/testrunner.tcl release --explain`
    + ↑ Verify thousands of lines of output with no errors
### 1.5 Cleanup
    -
  1. `rm -rf $TCLTD` +
  2. `rm -rf $TCLTD`
## 2.0 Testing On Windows @@ -89,7 +91,8 @@ [unxutils](https://unxutils.sourceforge.net/)
  • [Visual Studio](https://visualstudio.microsoft.com/vs/community/) installed. VS2015 or later required. -
  • `set ORIGINALPATH=%PATH%` ← remember the original %PATH% value +
  • `set ORIGINALPATH=%PATH%`
    + ↑ remember the original %PATH% value ### 2.2 Building the TCL libraries and tclsh.exe executables on Windows @@ -97,42 +100,54 @@
    1. `mkdir %TCLTD% %TCLTD%\tcl86 %TCLTD%\tcl90`
    2. `cd %TCLCO%\win` -
    3. `fossil up core-8-6-16` ← or some other version of Tcl8.6. +
    4. `fossil up core-8-6-16`
      + ↑ Or some other version of Tcl8.6.
    5. `fossil clean -x` -
    6. `nmake /f makefile.vc INSTALLDIR=%TCLTD%\tcl86 release install` -
    7. `fossil up core-9-0-0` ← or some other version of Tcl9 +
    8. `set INSTALLDIR=%TCLTD%\tcl86` +
    9. `nmake /f makefile.vc release`
      + ⇅ You *must* invoke the "release" and "install" targets + using separate invocations of "nmake" or tclsh86t.exe won't be + installed. +
    10. `nmake /f makefile.vc install` +
    11. `fossil up core-9-0-0`
      + ↑ Or some other version of Tcl9
    12. `fossil clean -x` -
    13. `nmake /f makefile.vc INSTALLDIR=%TCLTD%\tcl86 release install` +
    14. `set INSTALLDIR=%TCLTD%\tcl90` +
    15. `nmake /f makefile.vc release`
      + ⇅ You *must* invoke the "release" and "install" targets + using separate invocations of "nmake" or tclsh90.exe won't be + installed. +
    16. `nmake /f makefile.vc install`
    ### 2.3 Building the SQLite TCL extension on Windows
      -
    1. `cd %SRCCO%` +
    2. `cd %SRCCO%`
    3. `fossil clean -x`
    4. `set TCLDIR=%TCLTD%\tcl86`
    5. `set PATH=%TCLTD%\tcl86\bin;%ORIGINALPATH%`
    6. `set TCLSH_CMD=%TCLTD%\tcl86\bin\tclsh86t.exe` -
    7. `nmake /f Makefile.msc tclextension-install` -
    8. → Verify extension installed at %TCLTD%\tcl86\lib\tcl8.6\sqlite3.* +
    9. `nmake /f Makefile.msc tclextension-install`
      + ↑ Verify extension installed at %TCLTD%\\tcl86\\lib\\tcl8.6\\sqlite3.*
    10. `fossil clean -x`
    11. `set TCLDIR=%TCLTD%\tcl90`
    12. `set PATH=%TCLTD%\tcl90\bin;%ORIGINALPATH%`
    13. `set TCLSH_CMD=%TCLTD%\tcl90\bin\tclsh90.exe` -
    14. `nmake /f Makefile.msc tclextension-install` -
    15. → Verify extension installed at %TCLTD%\tcl906\lib\sqlite3.* +
    16. `nmake /f Makefile.msc tclextension-install`
      + ↑ Verify extension installed at %TCLTD%\\tcl90\\lib\\sqlite3.*
    ### 2.4 Testing on Windows
      -
    1. +
    2. `set PATH=%TCLTD%\tcl86\bin;%ORIGINALPATH%` -
    3. `tclsh86t test/testrunner.tcl release --explain` -
    4. ↑ Verify thousands of lines of output with no errors +
    5. `tclsh86t test/testrunner.tcl release --explain`
      + ↑ Verify thousands of lines of output with no errors
    6. `set PATH=%TCLTD%\tcl90\bin;%ORIGINALPATH%` -
    7. `tclsh90 test/testrunner.tcl release --explain` -
    8. ↑ Verify thousands of lines of output with no errors +
    9. `tclsh90 test/testrunner.tcl release --explain`
      + ↑ Verify thousands of lines of output with no errors
    ### 2.5 Cleanup diff --git a/manifest b/manifest index ceadd6eb7b..81708d8dda 100644 --- a/manifest +++ b/manifest @@ -1,11 +1,11 @@ -C Add\snew\stcl-extension-testing.md\sdocument.\s\sThe\sWindows\sside\sis\snot\syet\nworking. -D 2025-01-04T14:10:45.730 +C Adjust\sthe\sWindows\sMakefile.msc\sso\sthat\sit\scan\sbuild\sthe\stclextension\swith\nTcl8.6\ssuccessfully.\s\sUpdates\sto\sthe\stcl-extension\stest\sprocedure\sdocument. +D 2025-01-04T15:51:30.848 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea F LICENSE.md e108e1e69ae8e8a59e93c455654b8ac9356a11720d3345df2a4743e9590fb20d F Makefile.in ad349acf91b3569033439fe498fa197aa530cafaa01362eb7daad2f84e43d265 F Makefile.linux-generic bd3e3cacd369821a6241d4ea1967395c962dfe3057e38cb0a435cee0e8b789d0 -F Makefile.msc eed0c40c365d100f3329e8fb7d0e18bad09a6f0c026aa1e4dc7f88270378929d +F Makefile.msc a62f84e521a23168c61018420c6844a9fbb424950010dc6a3e084ffd8618312e F README.md c3c0f19532ce28f6297a71870f3c7b424729f0e6d9ab889616d3587dd2332159 F VERSION 8dc0c3df15fd5ff0622f88fc483533fce990b1cbb2f5fb9fdfb4dbd71eef2889 F art/icon-243x273.gif 9750b734f82fdb3dc43127753d5e6fbf3b62c9f4e136c2fbf573b2f57ea87af5 @@ -61,7 +61,7 @@ F doc/json-enhancements.md e356fc834781f1f1aa22ee300027a270b2c960122468499bf347b F doc/jsonb.md 5fab4b8613aa9153fbeb6259297bd4697988af8b3d23900deba588fa7841456b F doc/lemon.html 8b266ff711d2ec7f867c3dca37634963f48a630329908cc282beebfa8c708706 F doc/pager-invariants.txt 27fed9a70ddad2088750c4a2b493b63853da2710 -F doc/tcl-extension-testing.md e7ce7dbd7394c411d5d3c1d29b86455e81203d750af1765304d603fd12973a27 +F doc/tcl-extension-testing.md 1c7225115cede8dadd8fb173d5a1ada31d0ac566d53dcbec2013bbf97464933d F doc/testrunner.md 15583cf8c7d8a1c3378fd5d4319ca769a14c4d950a5df9b015d01d5be290dc69 F doc/trusted-schema.md 33625008620e879c7bcfbbfa079587612c434fa094d338b08242288d358c3e8a F doc/vdbesort-memory.md 4da2639c14cd24a31e0af694b1a8dd37eaf277aff3867e9a8cc14046bc49df56 @@ -2205,11 +2205,8 @@ F tool/version-info.c 3b36468a90faf1bbd59c65fd0eb66522d9f941eedd364fabccd7227350 F tool/warnings-clang.sh bbf6a1e685e534c92ec2bfba5b1745f34fb6f0bc2a362850723a9ee87c1b31a7 F tool/warnings.sh 49a486c5069de041aedcbde4de178293e0463ae9918ecad7539eedf0ec77a139 F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f -P 9ee57a30a49d9813bf2669a5d8346f7e018e3fbf1792739951311a8d3a249d45 -R 33caf2e9f23e286037be195e768a7a16 -T *branch * test-procedures -T *sym-test-procedures * -T -sym-trunk * +P 9dc805df1b1c26196ca53baa6b1b8c2f7e59e0150d02ead53228c77a63ad40f4 +R c39856b8b1c55486d94efa9f4d6e65f7 U drh -Z a6ccc4c86b9da5c35c8534fa7413feee +Z 7ec4aefc8fdf87ac85e59e4d4ae3a188 # Remove this line to create a well-formed Fossil manifest. diff --git a/manifest.uuid b/manifest.uuid index ce9315f27f..aaa74e46f9 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -9dc805df1b1c26196ca53baa6b1b8c2f7e59e0150d02ead53228c77a63ad40f4 +0c2cdc632f26d6acac2d508def4ecfcc97462ebcddc20c84f8847e02e42b3a1d