Skip to content

Commit 1f3bc22

Browse files
Snapshot of upstream SQLite 3.20.1
1 parent 51ec837 commit 1f3bc22

485 files changed

Lines changed: 69512 additions & 7272 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

Makefile.in

Lines changed: 44 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -181,7 +181,7 @@ LIBOBJS0 = alter.lo analyze.lo attach.lo auth.lo \
181181
notify.lo opcodes.lo os.lo os_unix.lo os_win.lo \
182182
pager.lo parse.lo pcache.lo pcache1.lo pragma.lo prepare.lo printf.lo \
183183
random.lo resolve.lo rowset.lo rtree.lo \
184-
sqlite3session.lo select.lo sqlite3rbu.lo status.lo \
184+
sqlite3session.lo select.lo sqlite3rbu.lo status.lo stmt.lo \
185185
table.lo threads.lo tokenize.lo treeview.lo trigger.lo \
186186
update.lo util.lo vacuum.lo \
187187
vdbe.lo vdbeapi.lo vdbeaux.lo vdbeblob.lo vdbemem.lo vdbesort.lo \
@@ -350,7 +350,8 @@ SRC += \
350350
$(TOP)/ext/rbu/sqlite3rbu.h \
351351
$(TOP)/ext/rbu/sqlite3rbu.c
352352
SRC += \
353-
$(TOP)/ext/misc/json1.c
353+
$(TOP)/ext/misc/json1.c \
354+
$(TOP)/ext/misc/stmt.c
354355

355356
# Generated source code files
356357
#
@@ -430,9 +431,11 @@ TESTSRC += \
430431
$(TOP)/ext/misc/nextchar.c \
431432
$(TOP)/ext/misc/percentile.c \
432433
$(TOP)/ext/misc/regexp.c \
434+
$(TOP)/ext/misc/remember.c \
433435
$(TOP)/ext/misc/series.c \
434436
$(TOP)/ext/misc/spellfix.c \
435437
$(TOP)/ext/misc/totype.c \
438+
$(TOP)/ext/misc/unionvtab.c \
436439
$(TOP)/ext/misc/wholenumber.c
437440

438441
# Source code to the library files needed by the test fixture
@@ -482,7 +485,8 @@ TESTSRC2 = \
482485
$(TOP)/ext/fts3/fts3_tokenizer.c \
483486
$(TOP)/ext/fts3/fts3_write.c \
484487
$(TOP)/ext/async/sqlite3async.c \
485-
$(TOP)/ext/session/sqlite3session.c
488+
$(TOP)/ext/session/sqlite3session.c \
489+
$(TOP)/ext/misc/stmt.c
486490

487491
# Header files used by all library source files.
488492
#
@@ -550,7 +554,8 @@ FUZZDATA = \
550554
$(TOP)/test/fuzzdata1.db \
551555
$(TOP)/test/fuzzdata2.db \
552556
$(TOP)/test/fuzzdata3.db \
553-
$(TOP)/test/fuzzdata4.db
557+
$(TOP)/test/fuzzdata4.db \
558+
$(TOP)/test/fuzzdata5.db
554559

555560
# Standard options to testfixture
556561
#
@@ -562,8 +567,12 @@ SHELL_OPT = -DSQLITE_ENABLE_JSON1 -DSQLITE_ENABLE_FTS4
562567
# SHELL_OPT += -DSQLITE_ENABLE_FTS5
563568
SHELL_OPT += -DSQLITE_ENABLE_EXPLAIN_COMMENTS
564569
SHELL_OPT += -DSQLITE_ENABLE_UNKNOWN_SQL_FUNCTION
570+
SHELL_OPT += -DSQLITE_ENABLE_STMTVTAB
565571
FUZZERSHELL_OPT = -DSQLITE_ENABLE_JSON1
566-
FUZZCHECK_OPT = -DSQLITE_ENABLE_JSON1 -DSQLITE_ENABLE_MEMSYS5
572+
FUZZCHECK_OPT = -DSQLITE_ENABLE_JSON1 -DSQLITE_ENABLE_MEMSYS5 -DSQLITE_OSS_FUZZ
573+
FUZZCHECK_OPT += -DSQLITE_MAX_MEMORY=50000000
574+
FUZZCHECK_SRC = $(TOP)/test/fuzzcheck.c $(TOP)/test/ossfuzz.c
575+
DBFUZZ_OPT =
567576

568577
# This is the default Makefile target. The objects listed here
569578
# are what get build when you type just "make" with no arguments.
@@ -612,8 +621,15 @@ fuzzershell$(TEXE): $(TOP)/tool/fuzzershell.c sqlite3.c sqlite3.h
612621
$(LTLINK) -o $@ $(FUZZERSHELL_OPT) \
613622
$(TOP)/tool/fuzzershell.c sqlite3.c $(TLIBS)
614623

615-
fuzzcheck$(TEXE): $(TOP)/test/fuzzcheck.c sqlite3.c sqlite3.h
616-
$(LTLINK) -o $@ $(FUZZCHECK_OPT) $(TOP)/test/fuzzcheck.c sqlite3.c $(TLIBS)
624+
fuzzcheck$(TEXE): $(FUZZCHECK_SRC) sqlite3.c sqlite3.h
625+
$(LTLINK) -o $@ $(FUZZCHECK_OPT) $(FUZZCHECK_SRC) sqlite3.c $(TLIBS)
626+
627+
ossshell$(TEXE): $(TOP)/test/ossfuzz.c $(TOP)/test/ossshell.c sqlite3.c sqlite3.h
628+
$(LTLINK) -o $@ $(FUZZCHECK_OPT) $(TOP)/test/ossshell.c \
629+
$(TOP)/test/ossfuzz.c sqlite3.c $(TLIBS)
630+
631+
dbfuzz$(TEXE): $(TOP)/test/dbfuzz.c sqlite3.c sqlite3.h
632+
$(LTLINK) -o $@ $(DBFUZZ_OPT) $(TOP)/test/dbfuzz.c sqlite3.c $(TLIBS)
617633

618634
mptester$(TEXE): sqlite3.lo $(TOP)/mptest/mptest.c
619635
$(LTLINK) -o $@ -I. $(TOP)/mptest/mptest.c sqlite3.lo \
@@ -1022,6 +1038,9 @@ sqlite3session.lo: $(TOP)/ext/session/sqlite3session.c $(HDR) $(EXTHDR)
10221038
json1.lo: $(TOP)/ext/misc/json1.c
10231039
$(LTCOMPILE) -DSQLITE_CORE -c $(TOP)/ext/misc/json1.c
10241040

1041+
stmt.lo: $(TOP)/ext/misc/stmt.c
1042+
$(LTCOMPILE) -DSQLITE_CORE -c $(TOP)/ext/misc/stmt.c
1043+
10251044
# FTS5 things
10261045
#
10271046
FTS5_SRC = \
@@ -1071,6 +1090,7 @@ TESTFIXTURE_FLAGS += -DSQLITE_SERVER=1 -DSQLITE_PRIVATE="" -DSQLITE_CORE
10711090
TESTFIXTURE_FLAGS += -DBUILD_sqlite
10721091
TESTFIXTURE_FLAGS += -DSQLITE_SERIES_CONSTRAINT_VERIFY=1
10731092
TESTFIXTURE_FLAGS += -DSQLITE_DEFAULT_PAGE_SIZE=1024
1093+
TESTFIXTURE_FLAGS += -DSQLITE_ENABLE_STMTVTAB
10741094

10751095
TESTFIXTURE_SRC0 = $(TESTSRC2) libsqlite3.la
10761096
TESTFIXTURE_SRC1 = sqlite3.c
@@ -1103,6 +1123,11 @@ fastfuzztest: fuzzcheck$(TEXE) $(FUZZDATA)
11031123
valgrindfuzz: fuzzcheck$(TEXT) $(FUZZDATA)
11041124
valgrind ./fuzzcheck$(TEXE) --cell-size-check --limit-mem 10M --timeout 600 $(FUZZDATA)
11051125

1126+
# The veryquick.test TCL tests.
1127+
#
1128+
tcltest: ./testfixture$(TEXE)
1129+
./testfixture$(TEXE) $(TOP)/test/veryquick.test $(TESTOPTS)
1130+
11061131
# Minimal testing that runs in less than 3 minutes
11071132
#
11081133
quicktest: ./testfixture$(TEXE)
@@ -1111,8 +1136,7 @@ quicktest: ./testfixture$(TEXE)
11111136
# This is the common case. Run many tests that do not take too long,
11121137
# including fuzzcheck, sqlite3_analyzer, and sqldiff tests.
11131138
#
1114-
test: $(TESTPROGS) sourcetest fastfuzztest
1115-
./testfixture$(TEXE) $(TOP)/test/veryquick.test $(TESTOPTS)
1139+
test: fastfuzztest sourcetest $(TESTPROGS) tcltest
11161140

11171141
# Run a test using valgrind. This can take a really long time
11181142
# because valgrind is so much slower than a native machine.
@@ -1139,6 +1163,10 @@ sqlite3_analyzer.c: sqlite3.c $(TOP)/src/tclsqlite.c $(TOP)/tool/spaceanal.tcl
11391163
sqlite3_analyzer$(TEXE): sqlite3_analyzer.c
11401164
$(LTLINK) sqlite3_analyzer.c -o $@ $(LIBTCL) $(TLIBS)
11411165

1166+
dbdump$(TEXE): $(TOP)/ext/misc/dbdump.c sqlite3.lo
1167+
$(LTLINK) -DDBDUMP_STANDALONE -o $@ \
1168+
$(TOP)/ext/misc/dbdump.c sqlite3.lo $(TLIBS)
1169+
11421170
showdb$(TEXE): $(TOP)/tool/showdb.c sqlite3.lo
11431171
$(LTLINK) -o $@ $(TOP)/tool/showdb.c sqlite3.lo $(TLIBS)
11441172

@@ -1163,8 +1191,13 @@ LogEst$(TEXE): $(TOP)/tool/logest.c sqlite3.h
11631191
wordcount$(TEXE): $(TOP)/test/wordcount.c sqlite3.lo
11641192
$(LTLINK) -o $@ $(TOP)/test/wordcount.c sqlite3.lo $(TLIBS)
11651193

1166-
speedtest1$(TEXE): $(TOP)/test/speedtest1.c sqlite3.lo
1167-
$(LTLINK) -o $@ $(TOP)/test/speedtest1.c sqlite3.lo $(TLIBS)
1194+
speedtest1$(TEXE): $(TOP)/test/speedtest1.c sqlite3.c
1195+
$(LTLINK) $(ST_OPT) -o $@ $(TOP)/test/speedtest1.c sqlite3.c $(TLIBS)
1196+
1197+
KV_OPT += -DSQLITE_DIRECT_OVERFLOW_READ
1198+
1199+
kvtest$(TEXE): $(TOP)/test/kvtest.c sqlite3.c
1200+
$(LTLINK) $(KV_OPT) -o $@ $(TOP)/test/kvtest.c sqlite3.c $(TLIBS)
11681201

11691202
rbu$(EXE): $(TOP)/ext/rbu/rbu.c $(TOP)/ext/rbu/sqlite3rbu.c sqlite3.lo
11701203
$(LTLINK) -I. -o $@ $(TOP)/ext/rbu/rbu.c sqlite3.lo $(TLIBS)

Makefile.msc

Lines changed: 71 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,14 @@ USE_AMALGAMATION = 1
2121
# Set this non-0 to enable full warnings (-W4, etc) when compiling.
2222
#
2323
!IFNDEF USE_FULLWARN
24-
USE_FULLWARN = 0
24+
USE_FULLWARN = 1
25+
!ENDIF
26+
27+
# Set this non-0 to enable treating warnings as errors (-WX, etc) when
28+
# compiling.
29+
#
30+
!IFNDEF USE_FATAL_WARN
31+
USE_FATAL_WARN = 0
2532
!ENDIF
2633

2734
# Set this non-0 to enable full runtime error checks (-RTC1, etc). This
@@ -493,6 +500,12 @@ TCC = $(CC) -nologo -W4 -DINCLUDE_MSVC_H=1 $(CCOPTS) $(TCCOPTS)
493500
TCC = $(CC) -nologo -W3 $(CCOPTS) $(TCCOPTS)
494501
!ENDIF
495502

503+
# Check if warnings should be treated as errors when compiling.
504+
#
505+
!IF $(USE_FATAL_WARN)!=0
506+
TCC = $(TCC) -WX
507+
!ENDIF
508+
496509
TCC = $(TCC) -DSQLITE_OS_WIN=1 -I. -I$(TOP) -I$(TOP)\src -fp:precise
497510
RCC = $(RC) -DSQLITE_OS_WIN=1 -I. -I$(TOP) -I$(TOP)\src $(RCOPTS) $(RCCOPTS)
498511

@@ -733,6 +746,10 @@ RCC = $(RCC) -DSQLITE_ENABLE_API_ARMOR=1
733746
!IF $(DEBUG)>2
734747
TCC = $(TCC) -DSQLITE_DEBUG=1
735748
RCC = $(RCC) -DSQLITE_DEBUG=1
749+
!IF $(DYNAMIC_SHELL)==0
750+
TCC = $(TCC) -DSQLITE_ENABLE_WHERETRACE -DSQLITE_ENABLE_SELECTTRACE
751+
RCC = $(RCC) -DSQLITE_ENABLE_WHERETRACE -DSQLITE_ENABLE_SELECTTRACE
752+
!ENDIF
736753
!ENDIF
737754

738755
!IF $(DEBUG)>4 || $(OSTRACE)!=0
@@ -1277,7 +1294,8 @@ SRC07 = \
12771294
$(TOP)\ext\rtree\rtree.c \
12781295
$(TOP)\ext\session\sqlite3session.c \
12791296
$(TOP)\ext\rbu\sqlite3rbu.c \
1280-
$(TOP)\ext\misc\json1.c
1297+
$(TOP)\ext\misc\json1.c \
1298+
$(TOP)\ext\misc\stmt.c
12811299

12821300
# Extension header files, part 1.
12831301
#
@@ -1396,9 +1414,11 @@ TESTEXT = \
13961414
$(TOP)\ext\misc\nextchar.c \
13971415
$(TOP)\ext\misc\percentile.c \
13981416
$(TOP)\ext\misc\regexp.c \
1417+
$(TOP)\ext\misc\remember.c \
13991418
$(TOP)\ext\misc\series.c \
14001419
$(TOP)\ext\misc\spellfix.c \
14011420
$(TOP)\ext\misc\totype.c \
1421+
$(TOP)\ext\misc\unionvtab.c \
14021422
$(TOP)\ext\misc\wholenumber.c
14031423

14041424
# Source code to the library files needed by the test fixture
@@ -1479,22 +1499,29 @@ FUZZDATA = \
14791499
$(TOP)\test\fuzzdata1.db \
14801500
$(TOP)\test\fuzzdata2.db \
14811501
$(TOP)\test\fuzzdata3.db \
1482-
$(TOP)\test\fuzzdata4.db
1502+
$(TOP)\test\fuzzdata4.db \
1503+
$(TOP)\test\fuzzdata5.db
14831504
# <</mark>>
14841505

14851506
# Additional compiler options for the shell. These are only effective
14861507
# when the shell is not being dynamically linked.
14871508
#
14881509
!IF $(DYNAMIC_SHELL)==0 && $(FOR_WIN10)==0
1489-
SHELL_COMPILE_OPTS = $(SHELL_COMPILE_OPTS) -DSQLITE_SHELL_JSON1 -DSQLITE_ENABLE_FTS4 -DSQLITE_ENABLE_EXPLAIN_COMMENTS
1510+
SHELL_COMPILE_OPTS = $(SHELL_COMPILE_OPTS) -DSQLITE_SHELL_JSON1 -DSQLITE_ENABLE_FTS4 -DSQLITE_ENABLE_EXPLAIN_COMMENTS -DSQLITE_ENABLE_STMTVTAB
14901511
!ENDIF
14911512

14921513
# <<mark>>
14931514
# Extra compiler options for various test tools.
14941515
#
14951516
MPTESTER_COMPILE_OPTS = -DSQLITE_SHELL_JSON1 -DSQLITE_ENABLE_FTS5
14961517
FUZZERSHELL_COMPILE_OPTS = -DSQLITE_ENABLE_JSON1
1497-
FUZZCHECK_COMPILE_OPTS = -DSQLITE_ENABLE_JSON1 -DSQLITE_ENABLE_MEMSYS5
1518+
FUZZCHECK_COMPILE_OPTS = -DSQLITE_ENABLE_JSON1 -DSQLITE_ENABLE_MEMSYS5 -DSQLITE_OSS_FUZZ -DSQLITE_MAX_MEMORY=50000000
1519+
FUZZCHECK_SRC = $(TOP)\test\fuzzcheck.c $(TOP)\test\ossfuzz.c
1520+
OSSSHELL_SRC = $(TOP)\test\ossshell.c $(TOP)\test\ossfuzz.c
1521+
DBFUZZ_COMPILE_OPTS = -DSQLITE_THREADSAFE=0 -DSQLITE_OMIT_LOAD_EXTENSION
1522+
KV_COMPILE_OPTS = -DSQLITE_THREADSAFE=0 -DSQLITE_DIRECT_OVERFLOW_READ
1523+
DBSELFTEST_COMPILE_OPTS = -DSQLITE_THREADSAFE=0 -DSQLITE_OMIT_LOAD_EXTENSION -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_FTS4 -DSQLITE_ENABLE_FTS5
1524+
ST_COMPILE_OPTS = -DSQLITE_THREADSAFE=0
14981525

14991526
# Standard options to testfixture.
15001527
#
@@ -1537,7 +1564,7 @@ $(SQLITE3DLL): $(LIBOBJ) $(LIBRESOBJS) $(CORE_LINK_DEP)
15371564
sqlite3.def: libsqlite3.lib
15381565
echo EXPORTS > sqlite3.def
15391566
dumpbin /all libsqlite3.lib \
1540-
| $(TCLSH_CMD) $(TOP)\tool\replace.tcl include "^\s+1 _?(sqlite3_[^@]*)(?:@\d+)?$$" \1 \
1567+
| $(TCLSH_CMD) $(TOP)\tool\replace.tcl include "^\s+1 _?(sqlite3(?:session|changeset|changegroup)?_[^@]*)(?:@\d+)?$$" \1 \
15411568
| sort >> sqlite3.def
15421569
# <</block2>>
15431570

@@ -1564,8 +1591,14 @@ sourcetest: srcck1.exe sqlite3.c
15641591
fuzzershell.exe: $(TOP)\tool\fuzzershell.c $(SQLITE3C) $(SQLITE3H)
15651592
$(LTLINK) $(NO_WARN) $(FUZZERSHELL_COMPILE_OPTS) $(TOP)\tool\fuzzershell.c $(SQLITE3C) /link $(LDFLAGS) $(LTLINKOPTS)
15661593

1567-
fuzzcheck.exe: $(TOP)\test\fuzzcheck.c $(SQLITE3C) $(SQLITE3H)
1568-
$(LTLINK) $(NO_WARN) $(FUZZCHECK_COMPILE_OPTS) $(TOP)\test\fuzzcheck.c $(SQLITE3C) /link $(LDFLAGS) $(LTLINKOPTS)
1594+
dbfuzz.exe: $(TOP)\test\dbfuzz.c $(SQLITE3C) $(SQLITE3H)
1595+
$(LTLINK) $(NO_WARN) $(DBFUZZ_COMPILE_OPTS) $(TOP)\test\dbfuzz.c $(SQLITE3C) /link $(LDFLAGS) $(LTLINKOPTS)
1596+
1597+
fuzzcheck.exe: $(FUZZCHECK_SRC) $(SQLITE3C) $(SQLITE3H)
1598+
$(LTLINK) $(NO_WARN) $(FUZZCHECK_COMPILE_OPTS) $(FUZZCHECK_SRC) $(SQLITE3C) /link $(LDFLAGS) $(LTLINKOPTS)
1599+
1600+
ossshell.exe: $(OSSSHELL_SRC) $(SQLITE3C) $(SQLITE3H)
1601+
$(LTLINK) $(NO_WARN) $(FUZZCHECK_COMPILE_OPTS) $(OSSSHELL_SRC) $(SQLITE3C) /link $(LDFLAGS) $(LTLINKOPTS)
15691602

15701603
mptester.exe: $(TOP)\mptest\mptest.c $(SQLITE3C) $(SQLITE3H)
15711604
$(LTLINK) $(NO_WARN) $(MPTESTER_COMPILE_OPTS) $(TOP)\mptest\mptest.c $(SQLITE3C) /link $(LDFLAGS) $(LTLINKOPTS)
@@ -2058,6 +2091,7 @@ TESTFIXTURE_FLAGS = $(TESTFIXTURE_FLAGS) -DSQLITE_SERVER=1 -DSQLITE_PRIVATE=""
20582091
TESTFIXTURE_FLAGS = $(TESTFIXTURE_FLAGS) -DSQLITE_CORE $(NO_WARN)
20592092
TESTFIXTURE_FLAGS = $(TESTFIXTURE_FLAGS) -DSQLITE_SERIES_CONSTRAINT_VERIFY=1
20602093
TESTFIXTURE_FLAGS = $(TESTFIXTURE_FLAGS) -DSQLITE_DEFAULT_PAGE_SIZE=1024
2094+
TESTFIXTURE_FLAGS = $(TESTFIXTURE_FLAGS) -DSQLITE_ENABLE_STMTVTAB
20612095
TESTFIXTURE_FLAGS = $(TESTFIXTURE_FLAGS) $(TEST_CCONV_OPTS)
20622096

20632097
TESTFIXTURE_SRC0 = $(TESTEXT) $(TESTSRC2)
@@ -2150,55 +2184,70 @@ sqlite3_analyzer.exe: sqlite3_analyzer.c $(LIBRESOBJS)
21502184
$(LTLINK) $(NO_WARN) -DBUILD_sqlite -I$(TCLINCDIR) sqlite3_analyzer.c \
21512185
/link $(LDFLAGS) $(LTLINKOPTS) $(LTLIBPATHS) $(LIBRESOBJS) $(LTLIBS) $(TLIBS)
21522186

2187+
dbdump.exe: $(TOP)\ext\misc\dbdump.c $(SQLITE3C) $(SQLITE3H)
2188+
$(LTLINK) $(NO_WARN) -DDBDUMP_STANDALONE $(TOP)\ext\misc\dbdump.c $(SQLITE3C) \
2189+
/link $(LDFLAGS) $(LTLINKOPTS) $(LTLIBPATHS) $(LIBRESOBJS) $(LTLIBS)
2190+
21532191
testloadext.lo: $(TOP)\src\test_loadext.c
21542192
$(LTCOMPILE) $(NO_WARN) -c $(TOP)\src\test_loadext.c
21552193

21562194
testloadext.dll: testloadext.lo
21572195
$(LD) $(LDFLAGS) $(LTLINKOPTS) $(LTLIBPATHS) /DLL /OUT:$@ testloadext.lo
21582196

21592197
showdb.exe: $(TOP)\tool\showdb.c $(SQLITE3C) $(SQLITE3H)
2160-
$(LTLINK) $(NO_WARN) -DSQLITE_THREADSAFE=0 -DSQLITE_OMIT_LOAD_EXTENSION -Fe$@ \
2198+
$(LTLINK) $(NO_WARN) -DSQLITE_THREADSAFE=0 -DSQLITE_OMIT_LOAD_EXTENSION \
21612199
$(TOP)\tool\showdb.c $(SQLITE3C) /link $(LDFLAGS) $(LTLINKOPTS)
21622200

21632201
showstat4.exe: $(TOP)\tool\showstat4.c $(SQLITE3C) $(SQLITE3H)
2164-
$(LTLINK) $(NO_WARN) -DSQLITE_THREADSAFE=0 -DSQLITE_OMIT_LOAD_EXTENSION -Fe$@ \
2202+
$(LTLINK) $(NO_WARN) -DSQLITE_THREADSAFE=0 -DSQLITE_OMIT_LOAD_EXTENSION \
21652203
$(TOP)\tool\showstat4.c $(SQLITE3C) /link $(LDFLAGS) $(LTLINKOPTS)
21662204

21672205
showjournal.exe: $(TOP)\tool\showjournal.c $(SQLITE3C) $(SQLITE3H)
2168-
$(LTLINK) $(NO_WARN) -DSQLITE_THREADSAFE=0 -DSQLITE_OMIT_LOAD_EXTENSION -Fe$@ \
2206+
$(LTLINK) $(NO_WARN) -DSQLITE_THREADSAFE=0 -DSQLITE_OMIT_LOAD_EXTENSION \
21692207
$(TOP)\tool\showjournal.c $(SQLITE3C) /link $(LDFLAGS) $(LTLINKOPTS)
21702208

21712209
showwal.exe: $(TOP)\tool\showwal.c $(SQLITE3C) $(SQLITE3H)
2172-
$(LTLINK) $(NO_WARN) -DSQLITE_THREADSAFE=0 -DSQLITE_OMIT_LOAD_EXTENSION -Fe$@ \
2210+
$(LTLINK) $(NO_WARN) -DSQLITE_THREADSAFE=0 -DSQLITE_OMIT_LOAD_EXTENSION \
21732211
$(TOP)\tool\showwal.c $(SQLITE3C) /link $(LDFLAGS) $(LTLINKOPTS)
21742212

2175-
changeset.exe: $(TOP)\ext\session\changeset.c $(SQLITE3C)
2176-
$(LTLINK) $(NO_WARN) -DSQLITE_THREADSAFE=0 -DSQLITE_OMIT_LOAD_EXTENSION -Fe$@ \
2213+
changeset.exe: $(TOP)\ext\session\changeset.c $(SQLITE3C) $(SQLITE3H)
2214+
$(LTLINK) $(NO_WARN) -DSQLITE_THREADSAFE=0 -DSQLITE_OMIT_LOAD_EXTENSION \
2215+
-DSQLITE_ENABLE_SESSION=1 -DSQLITE_ENABLE_PREUPDATE_HOOK=1 \
21772216
$(TOP)\ext\session\changeset.c $(SQLITE3C) /link $(LDFLAGS) $(LTLINKOPTS)
21782217

21792218
fts3view.exe: $(TOP)\ext\fts3\tool\fts3view.c $(SQLITE3C) $(SQLITE3H)
2180-
$(LTLINK) $(NO_WARN) -DSQLITE_THREADSAFE=0 -DSQLITE_OMIT_LOAD_EXTENSION -Fe$@ \
2219+
$(LTLINK) $(NO_WARN) -DSQLITE_THREADSAFE=0 -DSQLITE_OMIT_LOAD_EXTENSION \
21812220
$(TOP)\ext\fts3\tool\fts3view.c $(SQLITE3C) /link $(LDFLAGS) $(LTLINKOPTS)
21822221

21832222
rollback-test.exe: $(TOP)\tool\rollback-test.c $(SQLITE3C) $(SQLITE3H)
2184-
$(LTLINK) $(NO_WARN) -DSQLITE_THREADSAFE=0 -DSQLITE_OMIT_LOAD_EXTENSION -Fe$@ \
2223+
$(LTLINK) $(NO_WARN) -DSQLITE_THREADSAFE=0 -DSQLITE_OMIT_LOAD_EXTENSION \
21852224
$(TOP)\tool\rollback-test.c $(SQLITE3C) /link $(LDFLAGS) $(LTLINKOPTS)
21862225

21872226
LogEst.exe: $(TOP)\tool\logest.c $(SQLITE3H)
2188-
$(LTLINK) $(NO_WARN) -Fe$@ $(TOP)\tool\LogEst.c /link $(LDFLAGS) $(LTLINKOPTS)
2227+
$(LTLINK) $(NO_WARN) $(TOP)\tool\LogEst.c /link $(LDFLAGS) $(LTLINKOPTS)
21892228

21902229
wordcount.exe: $(TOP)\test\wordcount.c $(SQLITE3C) $(SQLITE3H)
2191-
$(LTLINK) $(NO_WARN) -DSQLITE_THREADSAFE=0 -DSQLITE_OMIT_LOAD_EXTENSION -Fe$@ \
2230+
$(LTLINK) $(NO_WARN) -DSQLITE_THREADSAFE=0 -DSQLITE_OMIT_LOAD_EXTENSION \
21922231
$(TOP)\test\wordcount.c $(SQLITE3C) /link $(LDFLAGS) $(LTLINKOPTS)
21932232

21942233
speedtest1.exe: $(TOP)\test\speedtest1.c $(SQLITE3C) $(SQLITE3H)
2195-
$(LTLINK) $(NO_WARN) -DSQLITE_OMIT_LOAD_EXTENSION -Fe$@ \
2234+
$(LTLINK) $(NO_WARN) $(ST_COMPILE_OPTS) -DSQLITE_OMIT_LOAD_EXTENSION \
21962235
$(TOP)\test\speedtest1.c $(SQLITE3C) /link $(LDFLAGS) $(LTLINKOPTS)
21972236

2237+
kvtest.exe: $(TOP)\test\kvtest.c $(SQLITE3C) $(SQLITE3H)
2238+
$(LTLINK) $(NO_WARN) $(KV_COMPILE_OPTS) \
2239+
$(TOP)\test\kvtest.c $(SQLITE3C) /link $(LDFLAGS) $(LTLINKOPTS)
2240+
2241+
dbselftest.exe: $(TOP)\test\dbselftest.c $(SQLITE3C) $(SQLITE3H)
2242+
$(LTLINK) $(NO_WARN) $(DBSELFTEST_COMPILE_OPTS) $(TOP)\test\dbselftest.c $(SQLITE3C)
2243+
21982244
rbu.exe: $(TOP)\ext\rbu\rbu.c $(TOP)\ext\rbu\sqlite3rbu.c $(SQLITE3C) $(SQLITE3H)
2199-
$(LTLINK) $(NO_WARN) -DSQLITE_ENABLE_RBU -Fe$@ \
2245+
$(LTLINK) $(NO_WARN) -DSQLITE_ENABLE_RBU \
22002246
$(TOP)\ext\rbu\rbu.c $(SQLITE3C) /link $(LDFLAGS) $(LTLINKOPTS)
22012247

2248+
LSMDIR=$(TOP)\ext\lsm1
2249+
!INCLUDE $(LSMDIR)\Makefile.msc
2250+
22022251
moreclean: clean
22032252
del /Q $(SQLITE3C) $(SQLITE3H) 2>NUL
22042253
# <</mark>>
@@ -2218,9 +2267,10 @@ clean:
22182267
-rmdir /Q/S tsrc 2>NUL
22192268
del /Q .target_source 2>NUL
22202269
del /Q tclsqlite3.exe $(SQLITETCLH) $(SQLITETCLDECLSH) 2>NUL
2270+
del /Q lsm.dll lsmtest.exe 2>NUL
22212271
del /Q testloadext.dll 2>NUL
22222272
del /Q testfixture.exe test.db 2>NUL
2223-
del /Q LogEst.exe fts3view.exe rollback-test.exe showdb.exe 2>NUL
2273+
del /Q LogEst.exe fts3view.exe rollback-test.exe showdb.exe dbdump.exe 2>NUL
22242274
del /Q changeset.exe 2>NUL
22252275
del /Q showjournal.exe showstat4.exe showwal.exe speedtest1.exe 2>NUL
22262276
del /Q mptester.exe wordcount.exe rbu.exe srcck1.exe 2>NUL

0 commit comments

Comments
 (0)