mirror of
https://github.com/sqlite/sqlite.git
synced 2026-10-23 21:49:02 +03:00
The code for sqlite3_analyzer is still in the tree, and you can still build
it using "make sqlite3_analyzer" but it does not get built as part of "make tool-zip" and there is no mention of it in the README files and similar. FossilOrigin-Name: 77278079d9dddaff30a1862bf412329e91242a41be7eafc19d3fac8d872adeff
This commit is contained in:
@@ -23,7 +23,7 @@ that are public domain include the following:
|
||||
* All of the code used to compile the
|
||||
[command-line interface](https://sqlite.org/cli.html)
|
||||
* All of the code used to build various utility programs such as
|
||||
"sqldiff", "sqlite3_rsync", and "sqlite3_analyzer".
|
||||
"sqldiff" and "sqlite3_rsync".
|
||||
|
||||
|
||||
The public domain source files usually contain a header comment
|
||||
|
||||
@@ -1679,7 +1679,6 @@ EXTHDR = $(EXTHDR) \
|
||||
TESTPROGS = \
|
||||
testfixture.exe \
|
||||
$(SQLITE3EXE) \
|
||||
sqlite3_analyzer.exe \
|
||||
sqldiff.exe \
|
||||
dbhash.exe \
|
||||
sqltclsh.exe
|
||||
@@ -2573,10 +2572,10 @@ extensiontest: testfixture.exe testloadext.dll
|
||||
@set PATH=$(LIBTCLPATH);$(PATH)
|
||||
.\testfixture.exe $(TOP)\test\loadext.test $(TESTOPTS)
|
||||
|
||||
tool-zip: testfixture.exe sqlite3.exe sqldiff.exe sqlite3_analyzer.exe sqlite3_rsync.exe sqlite3.dll $(TOP)\tool\mktoolzip.tcl
|
||||
tool-zip: testfixture.exe sqlite3.exe sqldiff.exe sqlite3_rsync.exe sqlite3.dll $(TOP)\tool\mktoolzip.tcl
|
||||
.\testfixture.exe $(TOP)\tool\mktoolzip.tcl
|
||||
|
||||
snapshot-zip: testfixture.exe sqlite3.exe sqldiff.exe sqlite3_analyzer.exe sqlite3_rsync.exe sqlite3.dll $(TOP)\tool\mktoolzip.tcl
|
||||
snapshot-zip: testfixture.exe sqlite3.exe sqldiff.exe sqlite3_rsync.exe sqlite3.dll $(TOP)\tool\mktoolzip.tcl
|
||||
.\testfixture.exe $(TOP)\tool\mktoolzip.tcl --snapshot
|
||||
|
||||
coretestprogs: testfixture.exe sqlite3.exe
|
||||
|
||||
@@ -115,7 +115,6 @@ For example:
|
||||
make tclextension-install ;# Install the SQLite TCL extension
|
||||
make test ;# Run development tests
|
||||
make releasetest ;# Run full release tests
|
||||
make sqlite3_analyzer ;# Builds the "sqlite3_analyzer" tool
|
||||
|
||||
See the makefile for additional targets. For debugging builds, the
|
||||
core developers typically run "configure" with options like this:
|
||||
@@ -179,7 +178,6 @@ file:
|
||||
make tclextension-install
|
||||
make test
|
||||
make releasetest
|
||||
make sqlite3_analyzer.exe
|
||||
|
||||
There are many other makefile targets. See comments in Makefile.msc for
|
||||
details.
|
||||
|
||||
@@ -89,7 +89,6 @@ guidance on building for Windows.
|
||||
<li> `make tclextension-install`
|
||||
<li> `make test`
|
||||
<li> `make releasetest`
|
||||
<li> `make sqlite3_analyzer`
|
||||
</ul>
|
||||
|
||||
It is not required that you run the "tclextension-install" target prior to
|
||||
|
||||
@@ -149,48 +149,6 @@ The command the developers use for building the deliverable DLL on the
|
||||
That command generates both the sqlite3.dll and sqlite3.def files. The same
|
||||
command works for both 32-bit and 64-bit builds.
|
||||
|
||||
## Statically Linking The TCL Library
|
||||
|
||||
Some utility programs associated with SQLite need to be linked
|
||||
with TCL in order to function. The [sqlite3_analyzer.exe program](https://sqlite.org/sqlanalyze.html)
|
||||
is an example. You can build as described above, and then
|
||||
enter:
|
||||
|
||||
> nmake /f Makefile.msc sqlite3_analyzer.exe
|
||||
|
||||
And you will end up with a working executable. However, that executable
|
||||
will depend on having the "tcl98.dll" library somewhere on your %PATH%.
|
||||
Use the following steps to build an executable that has the TCL library
|
||||
statically linked so that it does not depend on separate DLL:
|
||||
|
||||
1. Use the appropriate "Command Prompt" window - either x86 or
|
||||
x64, depending on whether you want a 32-bit or 64-bit executable.
|
||||
|
||||
2. Untar the TCL source tarball into a fresh directory. CD into
|
||||
the "win/" subfolder.
|
||||
|
||||
3. Run: `nmake /f makefile.vc OPTS=static shell`
|
||||
|
||||
4. CD into the "Release*" subfolder that is created (note the
|
||||
wildcard - the full name of the directory might vary). There
|
||||
you will find the "tcl90s.lib" file. Copy this file into the
|
||||
same directory that you put the "tcl90.lib" on your initial
|
||||
installation. (In this document, that directory is
|
||||
"`C:\Tcl32\lib`" for 32-bit builds and
|
||||
"`C:\Tcl\lib`" for 64-bit builds.)
|
||||
|
||||
5. CD into your SQLite source code directory and build the desired
|
||||
utility program, but add the following extra argument to the
|
||||
nmake command line:
|
||||
<blockquote><pre>STATICALLY_LINK_TCL=1</pre></blockquote>
|
||||
<p>So, for example, to build a statically linked version of
|
||||
sqlite3_analyzer.exe, you might type:
|
||||
<blockquote><pre>nmake /f Makefile.msc STATICALLY_LINK_TCL=1 sqlite3_analyzer.exe</pre></blockquote>
|
||||
|
||||
6. After your executable is built, you can verify that it does not
|
||||
depend on the TCL DLL by running:
|
||||
<blockquote><pre>dumpbin /dependents sqlite3_analyzer.exe</pre></blockquote>
|
||||
|
||||
## Linking Against ZLIB
|
||||
|
||||
Some feature (such as zip-file support in the CLI) require the ZLIB
|
||||
|
||||
9
main.mk
9
main.mk
@@ -925,7 +925,6 @@ EXTHDR += \
|
||||
TESTPROGS = \
|
||||
testfixture$(T.exe) \
|
||||
sqlite3$(T.exe) \
|
||||
sqlite3_analyzer$(T.exe) \
|
||||
sqldiff$(T.exe) \
|
||||
dbhash$(T.exe) \
|
||||
sqltclsh$(T.exe)
|
||||
@@ -2158,13 +2157,13 @@ src-archives: sqlite-amalgamation.zip amalgamation-tarball sqlite-src.zip
|
||||
# Build a ZIP archive containing various command-line tools.
|
||||
#
|
||||
tool-zip: sqlite3$(T.exe) sqldiff$(T.exe) \
|
||||
sqlite3_analyzer$(T.exe) sqlite3_rsync$(T.exe) $(TOP)/tool/mktoolzip.tcl
|
||||
strip sqlite3$(T.exe) sqldiff$(T.exe) sqlite3_analyzer$(T.exe) sqlite3_rsync$(T.exe)
|
||||
sqlite3_rsync$(T.exe) $(TOP)/tool/mktoolzip.tcl
|
||||
strip sqlite3$(T.exe) sqldiff$(T.exe) sqlite3_rsync$(T.exe)
|
||||
$(TCLSH_CMD) $(TOP)/tool/mktoolzip.tcl
|
||||
|
||||
snapshot-zip: testfixture$(T.exe) sqlite3$(T.exe) sqldiff$(T.exe) \
|
||||
sqlite3_analyzer$(T.exe) sqlite3_rsync$(T.exe) $(TOP)/tool/mktoolzip.tcl
|
||||
strip sqlite3$(T.exe) sqldiff$(T.exe) sqlite3_analyzer$(T.exe) sqlite3_rsync$(T.exe)
|
||||
sqlite3_rsync$(T.exe) $(TOP)/tool/mktoolzip.tcl
|
||||
strip sqlite3$(T.exe) sqldiff$(T.exe) sqlite3_rsync$(T.exe)
|
||||
$(TCLSH_CMD) $(TOP)/tool/mktoolzip.tcl --snapshot
|
||||
|
||||
clean-tool-zip:
|
||||
|
||||
26
manifest
26
manifest
@@ -1,14 +1,14 @@
|
||||
C Add\sthe\stree-tracker\soptimization.
|
||||
D 2026-10-09T21:05:47.655
|
||||
C The\scode\sfor\ssqlite3_analyzer\sis\sstill\sin\sthe\stree,\sand\syou\scan\sstill\sbuild\nit\susing\s"make\ssqlite3_analyzer"\sbut\sit\sdoes\snot\sget\sbuilt\sas\spart\sof\n"make\stool-zip"\sand\sthere\sis\sno\smention\sof\sit\sin\sthe\sREADME\sfiles\sand\nsimilar.
|
||||
D 2026-10-09T23:18:07.243
|
||||
F .fossil-settings/binary-glob 61195414528fb3ea9693577e1980230d78a1f8b0a54c78cf1b9b24d0a409ed6a x
|
||||
F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
|
||||
F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
|
||||
F AGENTS.md 44ddfb38ef23e277888bd70ae378e6cbf5f5cab0e2a4420bd21d89b6caff7a4a
|
||||
F LICENSE.md 6bc480fc673fb4acbc4094e77edb326267dd460162d7723c7f30bee2d3d9e97d
|
||||
F LICENSE.md 3aa673c9c864ea8ee3ac46c7a52d270543a8fb8e1dd7e7b02df8f41dca1b80b6
|
||||
F Makefile.in b9e64c91cf8bea2305e1ca88bd3eb022afa93963a8561ea8290c65d4fafec03e
|
||||
F Makefile.linux-generic bd3e3cacd369821a6241d4ea1967395c962dfe3057e38cb0a435cee0e8b789d0
|
||||
F Makefile.msc 909a0a694e82bfd536ae152acb554010cafc7ab0a5acc30044fb8f02a480fc01
|
||||
F README.md 8a7487de00e6d6d360cec15cc114cbb397207e1b975901683561506401c6d48c
|
||||
F Makefile.msc 46aa9ff8ace1e23d25e0dc7f80cc1856062f70f44a9517ec323b020a984d9cfa
|
||||
F README.md b261d8e17a18fd45c55172d5ccead58455a9b5fe35f30d39e516338973578375
|
||||
F VERSION 80115ed2da2f1a67c6ab9e67c3931a85d37c003bfe7b38989258624219ca6663
|
||||
F art/icon-243x273.gif 9750b734f82fdb3dc43127753d5e6fbf3b62c9f4e136c2fbf573b2f57ea87af5
|
||||
F art/icon-80x90.gif 65509ce3e5f86a9cd64fe7fca2d23954199f31fe44c1e09e208c80fb83d87031
|
||||
@@ -57,8 +57,8 @@ F autosetup/teaish/tester.tcl 1799514c2652db49561b3386c5242b94534d1663f2cfac861a
|
||||
F configure 9a00b21dfd13757bbfb8d89b30660a89ec1f8f3a79402b8f9f9b6fc475c3303a x
|
||||
F contrib/sqlitecon.tcl eb4c6578e08dd353263958da0dc620f8400b869a50d06e271ab0be85a51a08d3
|
||||
F doc/F2FS.txt c1d4a0ae9711cfe0e1d8b019d154f1c29e0d3abfe820787ba1e9ed7691160fcd
|
||||
F doc/compile-for-unix.md e729dff2f54ce7afbb0a8bb6813dcbc8720b3838133c5c7449e39962e6fe5c62
|
||||
F doc/compile-for-windows.md 19f87b5b2bd980e0f91c31b2c9d3375e60b4d7901c9bf0c5d060f7cb48334706
|
||||
F doc/compile-for-unix.md d7d5de5f21529956b28cbb9ae55f81555dd761ae0e922381c342a3f6c8dceef7
|
||||
F doc/compile-for-windows.md 64414962d8d00d3a5295540809f4c02b17186a26ebb147e79e9bfc6291f12c4e
|
||||
F doc/json-enhancements.md e356fc834781f1f1aa22ee300027a270b2c960122468499bf347bb123ce1ea4f
|
||||
F doc/jsonb.md acd77fc3a709f51242655ad7803510c886aa8304202fa9cf2abc5f5c4e9d7ae5
|
||||
F doc/lemon.html fe663e044f54546d7ae7974d2f670f16f09c657e8776079054855153c7e20b5f
|
||||
@@ -723,7 +723,7 @@ F ext/wasm/tests/opfs/sahpool/index.html be736567fd92d3ecb9754c145755037cbbd2bca
|
||||
F ext/wasm/tests/opfs/sahpool/sahpool-pausing.js f264925cfc82155de38cecb3d204c36e0f6991460fff0cb7c15079454679a4e2
|
||||
F ext/wasm/tests/opfs/sahpool/sahpool-worker.js bd25a43fc2ab2d1bafd8f2854ad3943ef673f7c3be03e95ecf1612ff6e8e2a61
|
||||
F magic.txt 5ade0bc977aa135e79e3faaea894d5671b26107cc91e70783aa7dc83f22f3ba0
|
||||
F main.mk 09c833b8a53d476979641dd91424c5abbe8ecf8b9976fc0b99586cfd1dde68a3
|
||||
F main.mk dcb16dd1a254df261a53bbb20d9296e89ac879868f0c9182ce7c6f514be3aa3d
|
||||
F make.bat a136fd0b1c93e89854a86d5f4edcf0386d211e5d5ec2434480f6eea436c7420c
|
||||
F mptest/config01.test 3c6adcbc50b991866855f1977ff172eb6d901271
|
||||
F mptest/config02.test 4415dfe36c48785f751e16e32c20b077c28ae504
|
||||
@@ -934,7 +934,6 @@ F test/analyzeD.test 485f621cfd2ef0a8f8ac79672586651bfa495bd899db50461bb4b558400
|
||||
F test/analyzeE.test d2ec7921c162cdc33ac8e7eb01f9ebf78100610af7c94c8552bbf551de1fb397
|
||||
F test/analyzeF.test 40b5cc3ad7b10e81020d7ca86f1417647ecfae7477cfd88acc5aa7ae1068f949
|
||||
F test/analyzeG.test 623be33038c49648872746c8dd8b23b5792c08fef173c55e82f1b12fca259852
|
||||
F test/analyzer1.test b6a624ec0af92eec209e1328465b66937c8fdf2fb442a3fa45321ddb3700f4aa
|
||||
F test/atof1.test bd21c4a0e718ab1470de07a2a79f2544d7903be34feebcc80de04beee4807b00
|
||||
F test/atof2.test 12912add57230495450e2fc94cb8ad1c9f3277f8843a3bc27079cae45c9782a1
|
||||
F test/atomic.test 065a453dde33c77ff586d91ccaa6ed419829d492dbb1a5694b8a09f3f9d7d061
|
||||
@@ -2237,7 +2236,7 @@ F tool/mksqlite3c.tcl d592e422865c5e49e15ffea83401ede2912475efb4071127b9c6599d91
|
||||
F tool/mksqlite3h.tcl 6c47cd98605f9a9618ccc96d4a403492c856d1d6d56310e877d44b33a9cee1b5
|
||||
F tool/mksqlite3internalh.tcl 46ef6ed6ccd3c36e23051109dd25085d8edef3887635cea25afa81c4adf4d4db
|
||||
F tool/mksrczip.tcl 81efd9974dbb36005383f2cd655520057a2ae5aa85ac2441a80c7c28f803ac52
|
||||
F tool/mktoolzip.tcl c9f388b2b0751982aef29a0c1d80f7959dbe38065ebb4421c39844e92622b086
|
||||
F tool/mktoolzip.tcl c946d4d32ef08e014386454e60630b8d18a30f4756b1fc00d74da80612f12dde
|
||||
F tool/mkvsix.tcl 67b40996a50f985a573278eea32fc5a5eb6110bdf14d33f1d8086e48c69e540a
|
||||
F tool/mkwinarm64ec.tcl 171f79234fa53552a129b360356df5599fdab15239caffb3d29c571292728033
|
||||
F tool/offsets.c 8ed2b344d33f06e71366a9b93ccedaa38c096cc1dbd4c3c26ad08c6115285845
|
||||
@@ -2281,9 +2280,8 @@ F tool/warnings-clang.sh bbf6a1e685e534c92ec2bfba5b1745f34fb6f0bc2a362850723a9ee
|
||||
F tool/warnings.sh a554d13f6e5cf3760f041b87939e3d616ec6961859c3245e8ef701d1eafc2ca2
|
||||
F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f
|
||||
F tool/winmain.c 00c8fb88e365c9017db14c73d3c78af62194d9644feaf60e220ab0f411f3604c
|
||||
P fa41e6201609f40ce9d6ec28693e4cd143363a78f072476586f6de7fd90aed66 e5d0f760591ee7ed6535b3d2e630274e2a1a02fce5a1e3dc9a9bae41fa4d20be
|
||||
R bff13f9492ce21de9636be9fa3a41b74
|
||||
T +closed e5d0f760591ee7ed6535b3d2e630274e2a1a02fce5a1e3dc9a9bae41fa4d20be
|
||||
P e24a8fe9867370bf9766638ff2337ec7a448d5c8995ca6ceed9024e43ccb957d
|
||||
R 4c8c9528b7d15c4e21d88b0862548ced
|
||||
U drh
|
||||
Z bdc2fe5869c899f0a4f6c38447a0ccfe
|
||||
Z a7b42b714a3c2a3748cf1e89481b1dfb
|
||||
# Remove this line to create a well-formed Fossil manifest.
|
||||
|
||||
@@ -1 +1 @@
|
||||
e24a8fe9867370bf9766638ff2337ec7a448d5c8995ca6ceed9024e43ccb957d
|
||||
77278079d9dddaff30a1862bf412329e91242a41be7eafc19d3fac8d872adeff
|
||||
|
||||
@@ -1,55 +0,0 @@
|
||||
# 2015-05-11
|
||||
#
|
||||
# The author disclaims copyright to this source code. In place of
|
||||
# a legal notice, here is a blessing:
|
||||
#
|
||||
# May you do good and not evil.
|
||||
# May you find forgiveness for yourself and forgive others.
|
||||
# May you share freely, never taking more than you give.
|
||||
#
|
||||
#***********************************************************************
|
||||
#
|
||||
# Quick tests for the sqlite3_analyzer tool
|
||||
#
|
||||
set testdir [file dirname $argv0]
|
||||
source $testdir/tester.tcl
|
||||
|
||||
ifcapable !vtab {
|
||||
finish_test
|
||||
return
|
||||
}
|
||||
|
||||
if {$tcl_platform(platform) eq "windows"} {
|
||||
set PROG "sqlite3_analyzer.exe"
|
||||
} else {
|
||||
set PROG "./sqlite3_analyzer"
|
||||
}
|
||||
if {![file exe $PROG]} {
|
||||
set PROG [file normalize [file join $::cmdlinearg(TESTFIXTURE_HOME) $PROG]]
|
||||
if {![file exe $PROG]} {
|
||||
puts "analyzer1 cannot run because $PROG is not available"
|
||||
finish_test
|
||||
return
|
||||
}
|
||||
}
|
||||
db close
|
||||
forcedelete test.db test.db-journal test.db-wal
|
||||
sqlite3 db test.db
|
||||
|
||||
do_test analyzer1-1.0 {
|
||||
db eval {
|
||||
CREATE TABLE t1(a INTEGER PRIMARY KEY, b);
|
||||
CREATE TABLE t2(a INT PRIMARY KEY, b) WITHOUT ROWID;
|
||||
WITH RECURSIVE c(x) AS (VALUES(1) UNION ALL SELECT x+1 FROM c WHERE x<250)
|
||||
INSERT INTO t1(a,b) SELECT x, randomblob(200) FROM c;
|
||||
INSERT INTO t2(a,b) SELECT a, b FROM t1;
|
||||
}
|
||||
set line "exec $PROG test.db"
|
||||
unset -nocomplain ::MSG
|
||||
catch {eval $line} ::MSG
|
||||
} {0}
|
||||
do_test analyzer1-1.1 {
|
||||
regexp {^/\*\* Disk-Space Utilization.*COMMIT;\W*$} $::MSG
|
||||
} {1}
|
||||
|
||||
finish_test
|
||||
@@ -9,7 +9,6 @@
|
||||
# testfixture -- used to run this script
|
||||
# sqlite3 -- the SQLite CLI
|
||||
# sqldiff -- Program to diff two databases
|
||||
# sqlite3_analyzer -- Space analyzer
|
||||
# sqlite3_rsync -- Remote db sync
|
||||
#
|
||||
# On Windows, add:
|
||||
@@ -82,7 +81,7 @@ if {$bSnapshot} {
|
||||
}
|
||||
|
||||
set name sqlite-tools-$OS-$ARCH-$v2.zip
|
||||
set filelist "sqlite3$EXE sqldiff$EXE sqlite3_analyzer$EXE sqlite3_rsync$EXE"
|
||||
set filelist "sqlite3$EXE sqldiff$EXE sqlite3_rsync$EXE"
|
||||
proc make_zip_archive {name filelist} {
|
||||
file delete -force $name
|
||||
puts "fossil test-filezip $name $filelist"
|
||||
|
||||
Reference in New Issue
Block a user