comparison third_party/sqlite3/tea/README.txt @ 167:589bab390fb4

[ThirdParty] Added sqlite3 to the third_party.
author MrJuneJune <me@mrjunejune.com>
date Mon, 19 Jan 2026 16:28:45 -0800
parents
children
comparison
equal deleted inserted replaced
166:78ea8d5ccc87 167:589bab390fb4
1 This is the SQLite extension for Tcl using something akin to
2 the Tcl Extension Architecture (TEA). To build it:
3
4 ./configure ...flags...
5
6 e.g.:
7
8 ./configure --with-tcl=/path/to/tcl/install/root
9
10 or:
11
12 ./configure --with-tclsh=/path/to/tcl/install/root
13
14 Run ./configure --help for the full list of flags.
15
16 The configuration process will fail if tclConfig.sh cannot be found.
17
18 The makefile will only honor CFLAGS and CPPFLAGS passed to the
19 configure script, not those directly passed to the makefile.
20
21 Then:
22
23 make test install
24
25 ----------------------- THE PREFERRED WAY ---------------------------
26
27 The preferred way to build the TCL extension for SQLite is to use the
28 canonical source code tarball. For Unix:
29
30 ./configure --with-tclsh=$(TCLSH)
31 make tclextension-install
32
33 For Windows:
34
35 nmake /f Makefile.msc tclextension-install TCLSH_CMD=$(TCLSH)
36
37 In both of the above, replace $(TCLSH) with the full pathname of
38 of the tclsh that you want the SQLite extension to work with. See
39 step-by-step instructions at the links below for more information:
40
41 https://sqlite.org/src/doc/trunk/doc/compile-for-unix.md
42 https://sqlite.org/src/doc/trunk/doc/compile-for-windows.md
43
44 And info about the extension's Tcl interface can be found at:
45
46 https://sqlite.org/tclsqlite.html
47
48 The whole point of the amalgamation-autoconf tarball (in which this
49 README.txt file is embedded) is to provide a means of compiling SQLite
50 that does not require first installing TCL and/or "tclsh". The
51 canonical Makefile in the SQLite source tree provides more
52 capabilities (such as the the ability to run test cases to ensure that
53 the build worked) and is better maintained. The only downside of the
54 canonical Makefile is that it requires a TCL installation. But if you
55 are wanting to build the TCL extension for SQLite, then presumably you
56 already have a TCL installation. So why not just use the more-capable
57 and better-maintained canoncal Makefile?
58
59 As of version 3.50.0, this build process uses "teaish":
60
61 https://fossil.wanderinghorse.net/r/teaish
62
63 which is conceptually derived from the pre-3.50 toolchain, TEA:
64
65 http://core.tcl-lang.org/tclconfig
66 http://core.tcl-lang.org/sampleextension
67
68 It to works for us. It might also work for you. But we cannot
69 promise that.
70
71 If you want to use this TEA builder and it works for you, that's fine.
72 But if you have trouble, the first thing you should do is go back
73 to using the canonical Makefile in the SQLite source tree.
74
75 ------------------------------------------------------------------
76
77
78 UNIX BUILD
79 ==========
80
81 Building under most UNIX systems is easy, just run the configure
82 script and then run make. For example:
83
84 $ cd sqlite-*-tea
85 $ ./configure --with-tcl=/path/to/tcl/install/root
86 $ make test
87 $ make install
88
89 WINDOWS BUILD
90 =============
91
92 On Windows this build is known to work on Cygwin and some Msys2
93 environments. We do not currently support Microsoft makefiles for
94 native Windows builds.