@@ -30,7 +30,8 @@ BCC = @BUILD_CC@ @BUILD_CFLAGS@
30
30
#
31
31
CC = @CC@
32
32
CFLAGS = @CPPFLAGS@ @CFLAGS@
33
- TCC = $(CC ) $(CFLAGS ) -I. -I${TOP}/src -I${TOP}/ext/rtree -I${TOP}/ext/fts3
33
+ TCC = ${CC} ${CFLAGS} -I. -I${TOP}/src -I${TOP}/ext/rtree -I${TOP}/ext/icu
34
+ TCC += -I${TOP}/ext/fts3 -I${TOP}/ext/async -I${TOP}/ext/session
34
35
35
36
# Define this for the autoconf-based build, so that the code knows it can
36
37
# include the generated config.h
@@ -173,13 +174,14 @@ LIBOBJS0 = alter.lo analyze.lo attach.lo auth.lo \
173
174
fts3_unicode.lo fts3_unicode2.lo fts3_write.lo \
174
175
fts5.lo \
175
176
func.lo global.lo hash.lo \
176
- icu.lo insert.lo journal.lo json1.lo legacy.lo loadext.lo \
177
+ icu.lo insert.lo json1.lo legacy.lo loadext.lo \
177
178
main.lo malloc.lo mem0.lo mem1.lo mem2.lo mem3.lo mem5.lo \
178
179
memjournal.lo \
179
180
mutex.lo mutex_noop.lo mutex_unix.lo mutex_w32.lo \
180
181
notify.lo opcodes.lo os.lo os_unix.lo os_win.lo \
181
182
pager.lo parse.lo pcache.lo pcache1.lo pragma.lo prepare.lo printf.lo \
182
- random.lo resolve.lo rowset.lo rtree.lo select.lo sqlite3rbu.lo status.lo \
183
+ random.lo resolve.lo rowset.lo rtree.lo \
184
+ sqlite3session.lo select.lo sqlite3rbu.lo status.lo \
183
185
table.lo threads.lo tokenize.lo treeview.lo trigger.lo \
184
186
update.lo util.lo vacuum.lo \
185
187
vdbe.lo vdbeapi.lo vdbeaux.lo vdbeblob.lo vdbemem.lo vdbesort.lo \
@@ -224,7 +226,6 @@ SRC = \
224
226
$(TOP ) /src/hash.h \
225
227
$(TOP ) /src/hwtime.h \
226
228
$(TOP ) /src/insert.c \
227
- $(TOP ) /src/journal.c \
228
229
$(TOP ) /src/legacy.c \
229
230
$(TOP ) /src/loadext.c \
230
231
$(TOP ) /src/main.c \
@@ -342,14 +343,15 @@ SRC += \
342
343
SRC += \
343
344
$(TOP ) /ext/rtree/rtree.h \
344
345
$(TOP ) /ext/rtree/rtree.c
346
+ SRC += \
347
+ $(TOP ) /ext/session/sqlite3session.c \
348
+ $(TOP ) /ext/session/sqlite3session.h
345
349
SRC += \
346
350
$(TOP ) /ext/rbu/sqlite3rbu.h \
347
351
$(TOP ) /ext/rbu/sqlite3rbu.c
348
352
SRC += \
349
353
$(TOP ) /ext/misc/json1.c
350
354
351
-
352
-
353
355
# Generated source code files
354
356
#
355
357
SRC += \
@@ -376,9 +378,11 @@ TESTSRC = \
376
378
$(TOP ) /src/test_autoext.c \
377
379
$(TOP ) /src/test_async.c \
378
380
$(TOP ) /src/test_backup.c \
381
+ $(TOP ) /src/test_bestindex.c \
379
382
$(TOP ) /src/test_blob.c \
380
383
$(TOP ) /src/test_btree.c \
381
384
$(TOP ) /src/test_config.c \
385
+ $(TOP ) /src/test_delete.c \
382
386
$(TOP ) /src/test_demovfs.c \
383
387
$(TOP ) /src/test_devsym.c \
384
388
$(TOP ) /src/test_fs.c \
@@ -405,14 +409,17 @@ TESTSRC = \
405
409
$(TOP ) /src/test_windirent.c \
406
410
$(TOP ) /src/test_wsd.c \
407
411
$(TOP ) /ext/fts3/fts3_term.c \
408
- $(TOP ) /ext/fts3/fts3_test.c \
412
+ $(TOP ) /ext/fts3/fts3_test.c \
413
+ $(TOP ) /ext/session/test_session.c \
409
414
$(TOP ) /ext/rbu/test_rbu.c
410
415
411
416
# Statically linked extensions
412
417
#
413
418
TESTSRC += \
414
419
$(TOP ) /ext/misc/amatch.c \
420
+ $(TOP ) /ext/misc/carray.c \
415
421
$(TOP ) /ext/misc/closure.c \
422
+ $(TOP ) /ext/misc/csv.c \
416
423
$(TOP ) /ext/misc/eval.c \
417
424
$(TOP ) /ext/misc/fileio.c \
418
425
$(TOP ) /ext/misc/fuzzer.c \
@@ -474,7 +481,8 @@ TESTSRC2 = \
474
481
$(TOP ) /ext/fts3/fts3_term.c \
475
482
$(TOP ) /ext/fts3/fts3_tokenizer.c \
476
483
$(TOP ) /ext/fts3/fts3_write.c \
477
- $(TOP ) /ext/async/sqlite3async.c
484
+ $(TOP ) /ext/async/sqlite3async.c \
485
+ $(TOP ) /ext/session/sqlite3session.c
478
486
479
487
# Header files used by all library source files.
480
488
#
@@ -533,7 +541,8 @@ TESTPROGS = \
533
541
testfixture$(TEXE ) \
534
542
sqlite3$(TEXE ) \
535
543
sqlite3_analyzer$(TEXE ) \
536
- sqldiff$(TEXE )
544
+ sqldiff$(TEXE ) \
545
+ dbhash$(TEXE )
537
546
538
547
# Databases containing fuzzer test cases
539
548
#
@@ -550,7 +559,9 @@ TESTOPTS = --verbose=file --output=test-out.txt
550
559
# Extra compiler options for various shell tools
551
560
#
552
561
SHELL_OPT = -DSQLITE_ENABLE_JSON1 -DSQLITE_ENABLE_FTS4
562
+ # SHELL_OPT += -DSQLITE_ENABLE_FTS5
553
563
SHELL_OPT += -DSQLITE_ENABLE_EXPLAIN_COMMENTS
564
+ SHELL_OPT += -DSQLITE_ENABLE_UNKNOWN_SQL_FUNCTION
554
565
FUZZERSHELL_OPT = -DSQLITE_ENABLE_JSON1
555
566
FUZZCHECK_OPT = -DSQLITE_ENABLE_JSON1 -DSQLITE_ENABLE_MEMSYS5
556
567
@@ -581,8 +592,15 @@ sqlite3$(TEXE): $(TOP)/src/shell.c sqlite3.c
581
592
$(TOP ) /src/shell.c sqlite3.c \
582
593
$(LIBREADLINE ) $(TLIBS ) -rpath " $( libdir) "
583
594
584
- sqldiff$(TEXE ) : $(TOP ) /tool/sqldiff.c sqlite3.c sqlite3.h
585
- $(LTLINK ) -o $@ $(TOP ) /tool/sqldiff.c sqlite3.c $(TLIBS )
595
+ sqldiff$(TEXE ) : $(TOP ) /tool/sqldiff.c sqlite3.lo sqlite3.h
596
+ $(LTLINK ) -o $@ $(TOP ) /tool/sqldiff.c sqlite3.lo $(TLIBS )
597
+
598
+ dbhash$(TEXE ) : $(TOP ) /tool/dbhash.c sqlite3.lo sqlite3.h
599
+ $(LTLINK ) -o $@ $(TOP ) /tool/dbhash.c sqlite3.lo $(TLIBS )
600
+
601
+ scrub$(TEXE ) : $(TOP ) /ext/misc/scrub.c sqlite3.lo
602
+ $(LTLINK ) -o $@ -I. -DSCRUB_STANDALONE \
603
+ $(TOP ) /ext/misc/scrub.c sqlite3.lo $(TLIBS )
586
604
587
605
srcck1$(BEXE ) : $(TOP ) /tool/srcck1.c
588
606
$(BCC ) -o srcck1$(BEXE ) $(TOP ) /tool/srcck1.c
@@ -597,8 +615,8 @@ fuzzershell$(TEXE): $(TOP)/tool/fuzzershell.c sqlite3.c sqlite3.h
597
615
fuzzcheck$(TEXE ) : $(TOP ) /test/fuzzcheck.c sqlite3.c sqlite3.h
598
616
$(LTLINK ) -o $@ $(FUZZCHECK_OPT ) $(TOP ) /test/fuzzcheck.c sqlite3.c $(TLIBS )
599
617
600
- mptester$(TEXE ) : sqlite3.c $(TOP ) /mptest/mptest.c
601
- $(LTLINK ) -o $@ -I. $(TOP ) /mptest/mptest.c sqlite3.c \
618
+ mptester$(TEXE ) : sqlite3.lo $(TOP ) /mptest/mptest.c
619
+ $(LTLINK ) -o $@ -I. $(TOP ) /mptest/mptest.c sqlite3.lo \
602
620
$(TLIBS ) -rpath " $( libdir) "
603
621
604
622
MPTEST1 =./mptester$(TEXE ) mptest.db $(TOP ) /mptest/crash01.test --repeat 20
@@ -634,6 +652,7 @@ mptest: mptester$(TEXE)
634
652
sqlite3.c : .target_source $(TOP ) /tool/mksqlite3c.tcl
635
653
$(TCLSH_CMD ) $(TOP ) /tool/mksqlite3c.tcl
636
654
cp tsrc/shell.c tsrc/sqlite3ext.h .
655
+ cp $(TOP ) /ext/session/sqlite3session.h .
637
656
638
657
sqlite3ext.h : .target_source
639
658
cp tsrc/sqlite3ext.h .
@@ -738,9 +757,6 @@ hash.lo: $(TOP)/src/hash.c $(HDR)
738
757
insert.lo : $(TOP ) /src/insert.c $(HDR )
739
758
$(LTCOMPILE ) $(TEMP_STORE ) -c $(TOP ) /src/insert.c
740
759
741
- journal.lo : $(TOP ) /src/journal.c $(HDR )
742
- $(LTCOMPILE ) $(TEMP_STORE ) -c $(TOP ) /src/journal.c
743
-
744
760
legacy.lo : $(TOP ) /src/legacy.c $(HDR )
745
761
$(LTCOMPILE ) $(TEMP_STORE ) -c $(TOP ) /src/legacy.c
746
762
@@ -1000,6 +1016,9 @@ fts3_write.lo: $(TOP)/ext/fts3/fts3_write.c $(HDR) $(EXTHDR)
1000
1016
rtree.lo : $(TOP ) /ext/rtree/rtree.c $(HDR ) $(EXTHDR )
1001
1017
$(LTCOMPILE ) -DSQLITE_CORE -c $(TOP ) /ext/rtree/rtree.c
1002
1018
1019
+ sqlite3session.lo : $(TOP ) /ext/session/sqlite3session.c $(HDR ) $(EXTHDR )
1020
+ $(LTCOMPILE ) -DSQLITE_CORE -c $(TOP ) /ext/session/sqlite3session.c
1021
+
1003
1022
json1.lo : $(TOP ) /ext/misc/json1.c
1004
1023
$(LTCOMPILE ) -DSQLITE_CORE -c $(TOP ) /ext/misc/json1.c
1005
1024
@@ -1025,7 +1044,7 @@ FTS5_SRC = \
1025
1044
fts5parse.c : $(TOP ) /ext/fts5/fts5parse.y lemon
1026
1045
cp $(TOP ) /ext/fts5/fts5parse.y .
1027
1046
rm -f fts5parse.h
1028
- ./lemon $(OPTS ) fts5parse.y
1047
+ ./lemon$( BEXE ) $(OPTS ) fts5parse.y
1029
1048
1030
1049
fts5parse.h : fts5parse.c
1031
1050
@@ -1050,6 +1069,8 @@ sqlite3rbu.lo: $(TOP)/ext/rbu/sqlite3rbu.c $(HDR) $(EXTHDR)
1050
1069
TESTFIXTURE_FLAGS = -DTCLSH=1 -DSQLITE_TEST=1 -DSQLITE_CRASH_TEST=1
1051
1070
TESTFIXTURE_FLAGS += -DSQLITE_SERVER=1 -DSQLITE_PRIVATE="" -DSQLITE_CORE
1052
1071
TESTFIXTURE_FLAGS += -DBUILD_sqlite
1072
+ TESTFIXTURE_FLAGS += -DSQLITE_SERIES_CONSTRAINT_VERIFY=1
1073
+ TESTFIXTURE_FLAGS += -DSQLITE_DEFAULT_PAGE_SIZE=1024
1053
1074
1054
1075
TESTFIXTURE_SRC0 = $(TESTSRC2 ) libsqlite3.la
1055
1076
TESTFIXTURE_SRC1 = sqlite3.c
@@ -1130,14 +1151,17 @@ showjournal$(TEXE): $(TOP)/tool/showjournal.c sqlite3.lo
1130
1151
showwal$(TEXE ) : $(TOP ) /tool/showwal.c sqlite3.lo
1131
1152
$(LTLINK ) -o $@ $(TOP ) /tool/showwal.c sqlite3.lo $(TLIBS )
1132
1153
1154
+ changeset$(TEXE ) : $(TOP ) /ext/session/changeset.c sqlite3.lo
1155
+ $(LTLINK ) -o $@ $(TOP ) /ext/session/changeset.c sqlite3.lo $(TLIBS )
1156
+
1133
1157
rollback-test$(TEXE ) : $(TOP ) /tool/rollback-test.c sqlite3.lo
1134
1158
$(LTLINK ) -o $@ $(TOP ) /tool/rollback-test.c sqlite3.lo $(TLIBS )
1135
1159
1136
1160
LogEst$(TEXE ) : $(TOP ) /tool/logest.c sqlite3.h
1137
1161
$(LTLINK ) -I. -o $@ $(TOP ) /tool/logest.c
1138
1162
1139
- wordcount$(TEXE ) : $(TOP ) /test/wordcount.c sqlite3.c
1140
- $(LTLINK ) -o $@ $(TOP ) /test/wordcount.c sqlite3.c $(TLIBS )
1163
+ wordcount$(TEXE ) : $(TOP ) /test/wordcount.c sqlite3.lo
1164
+ $(LTLINK ) -o $@ $(TOP ) /test/wordcount.c sqlite3.lo $(TLIBS )
1141
1165
1142
1166
speedtest1$(TEXE ) : $(TOP ) /test/speedtest1.c sqlite3.lo
1143
1167
$(LTLINK ) -o $@ $(TOP ) /test/speedtest1.c sqlite3.lo $(TLIBS )
@@ -1152,8 +1176,9 @@ loadfts$(EXE): $(TOP)/tool/loadfts.c libsqlite3.la
1152
1176
# symbols that do not begin with "sqlite3_". It is run as part of the
1153
1177
# releasetest.tcl script.
1154
1178
#
1179
+ VALIDIDS =' sqlite3(changeset|changegroup|session)?_'
1155
1180
checksymbols : sqlite3.lo
1156
- nm -g --defined-only sqlite3.o | grep -v " sqlite3_ " ; test $$? -ne 0
1181
+ nm -g --defined-only sqlite3.lo | egrep -v $( VALIDIDS ) ; test $$? -ne 0
1157
1182
echo ' 0 errors out of 1 tests'
1158
1183
1159
1184
# Build the amalgamation-autoconf package. The amalamgation-tarball target builds
@@ -1216,13 +1241,12 @@ clean:
1216
1241
rm -f lemon$(BEXE ) lempar.c parse.* sqlite* .tar.gz
1217
1242
rm -f mkkeywordhash$(BEXE ) keywordhash.h
1218
1243
rm -f * .da * .bb * .bbg gmon.out
1219
- rm -rf quota2a quota2b quota2c
1220
1244
rm -rf tsrc .target_source
1221
1245
rm -f tclsqlite3$(TEXE )
1222
1246
rm -f testfixture$(TEXE ) test.db
1223
1247
rm -f LogEst$(TEXE ) fts3view$(TEXE ) rollback-test$(TEXE ) showdb$(TEXE )
1224
1248
rm -f showjournal$(TEXE ) showstat4$(TEXE ) showwal$(TEXE ) speedtest1$(TEXE )
1225
- rm -f wordcount$(TEXE )
1249
+ rm -f wordcount$(TEXE ) changeset $( TEXE )
1226
1250
rm -f sqlite3.dll sqlite3.lib sqlite3.exp sqlite3.def
1227
1251
rm -f sqlite3.c
1228
1252
rm -f sqlite3rc.h
@@ -1235,6 +1259,7 @@ clean:
1235
1259
rm -f fuzzershell fuzzershell.exe
1236
1260
rm -f fuzzcheck fuzzcheck.exe
1237
1261
rm -f sqldiff sqldiff.exe
1262
+ rm -f dbhash dbhash.exe
1238
1263
rm -f fts5.* fts5parse.*
1239
1264
1240
1265
distclean : clean
0 commit comments