Index: third_party/sqlite/src/Makefile.in |
diff --git a/third_party/sqlite/src/Makefile.in b/third_party/sqlite/src/Makefile.in |
index 3bd69b71f562bed3ebe28b92422d8a4cfc4f9a1a..f3239f3d793771c23e6e4e0a3a419b52e7e948d1 100644 |
--- a/third_party/sqlite/src/Makefile.in |
+++ b/third_party/sqlite/src/Makefile.in |
@@ -26,7 +26,7 @@ BCC = @BUILD_CC@ @BUILD_CFLAGS@ |
# will run on the target platform. (BCC and TCC are usually the |
# same unless your are cross-compiling.) |
# |
-TCC = @CC@ @CPPFLAGS@ @CFLAGS@ -I. -I${TOP}/src |
+TCC = @CC@ @CPPFLAGS@ @CFLAGS@ -I. -I${TOP}/src -I${TOP}/ext/rtree |
# Define this for the autoconf-based build, so that the code knows it can |
# include the generated config.h |
@@ -59,10 +59,6 @@ LIBREADLINE = @TARGET_READLINE_LIBS@ |
# |
TCC += -DSQLITE_THREADSAFE=@SQLITE_THREADSAFE@ |
-# Do threads override each others locks by default (1), or do we test (-1) |
-# |
-TCC += -DSQLITE_THREAD_OVERRIDE_LOCK=@THREADSOVERRIDELOCKS@ |
- |
# Any target libraries which libsqlite must be linked against |
# |
TLIBS = @LIBS@ |
@@ -161,31 +157,36 @@ NAWK = @AWK@ |
# You should not have to change anything below this line |
############################################################################### |
+USE_AMALGAMATION = @USE_AMALGAMATION@ |
+ |
# Object files for the SQLite library (non-amalgamation). |
# |
-OBJS0 = alter.lo analyze.lo attach.lo auth.lo backup.lo bitvec.lo btmutex.lo \ |
- btree.lo build.lo callback.lo complete.lo date.lo \ |
- delete.lo expr.lo fault.lo func.lo global.lo \ |
- hash.lo journal.lo insert.lo legacy.lo loadext.lo \ |
- main.lo malloc.lo mem0.lo mem1.lo mem2.lo mem3.lo mem5.lo \ |
- memjournal.lo \ |
- mutex.lo mutex_noop.lo mutex_os2.lo mutex_unix.lo mutex_w32.lo \ |
- notify.lo opcodes.lo os.lo os_unix.lo os_win.lo os_os2.lo \ |
- pager.lo parse.lo pcache.lo pcache1.lo pragma.lo prepare.lo printf.lo \ |
- random.lo resolve.lo rowset.lo select.lo status.lo \ |
- table.lo tokenize.lo trigger.lo update.lo \ |
- util.lo vacuum.lo \ |
- vdbe.lo vdbeapi.lo vdbeaux.lo vdbeblob.lo vdbemem.lo \ |
- walker.lo where.lo utf.lo vtab.lo |
+LIBOBJS0 = alter.lo analyze.lo attach.lo auth.lo \ |
+ backup.lo bitvec.lo btmutex.lo btree.lo build.lo \ |
+ callback.lo complete.lo ctime.lo date.lo delete.lo \ |
+ expr.lo fault.lo fkey.lo \ |
+ fts3.lo fts3_aux.lo fts3_expr.lo fts3_hash.lo fts3_icu.lo fts3_porter.lo \ |
+ fts3_snippet.lo fts3_tokenizer.lo fts3_tokenizer1.lo fts3_write.lo \ |
+ func.lo global.lo hash.lo \ |
+ icu.lo insert.lo journal.lo legacy.lo loadext.lo \ |
+ main.lo malloc.lo mem0.lo mem1.lo mem2.lo mem3.lo mem5.lo \ |
+ memjournal.lo \ |
+ mutex.lo mutex_noop.lo mutex_os2.lo mutex_unix.lo mutex_w32.lo \ |
+ notify.lo opcodes.lo os.lo os_os2.lo os_unix.lo os_win.lo \ |
+ pager.lo parse.lo pcache.lo pcache1.lo pragma.lo prepare.lo printf.lo \ |
+ random.lo resolve.lo rowset.lo rtree.lo select.lo status.lo \ |
+ table.lo tokenize.lo trigger.lo \ |
+ update.lo util.lo vacuum.lo \ |
+ vdbe.lo vdbeapi.lo vdbeaux.lo vdbeblob.lo vdbemem.lo vdbetrace.lo \ |
+ wal.lo walker.lo where.lo utf.lo vtab.lo |
# Object files for the amalgamation. |
# |
-OBJS1 = sqlite3.lo |
+LIBOBJS1 = sqlite3.lo |
# Determine the real value of LIBOBJ based on the 'configure' script |
# |
-USE_AMALGAMATION = @USE_AMALGAMATION@ |
-LIBOBJ = $(OBJS$(USE_AMALGAMATION)) |
+LIBOBJ = $(LIBOBJS$(USE_AMALGAMATION)) |
# All of the source code files. |
@@ -204,10 +205,12 @@ SRC = \ |
$(TOP)/src/build.c \ |
$(TOP)/src/callback.c \ |
$(TOP)/src/complete.c \ |
+ $(TOP)/src/ctime.c \ |
$(TOP)/src/date.c \ |
$(TOP)/src/delete.c \ |
$(TOP)/src/expr.c \ |
$(TOP)/src/fault.c \ |
+ $(TOP)/src/fkey.c \ |
$(TOP)/src/func.c \ |
$(TOP)/src/global.c \ |
$(TOP)/src/hash.c \ |
@@ -271,22 +274,14 @@ SRC = \ |
$(TOP)/src/vdbeaux.c \ |
$(TOP)/src/vdbeblob.c \ |
$(TOP)/src/vdbemem.c \ |
+ $(TOP)/src/vdbetrace.c \ |
$(TOP)/src/vdbeInt.h \ |
$(TOP)/src/vtab.c \ |
+ $(TOP)/src/wal.c \ |
+ $(TOP)/src/wal.h \ |
$(TOP)/src/walker.c \ |
$(TOP)/src/where.c |
-# Generated source code files |
-# |
-SRC += \ |
- keywordhash.h \ |
- opcodes.c \ |
- opcodes.h \ |
- parse.c \ |
- parse.h \ |
- config.h \ |
- sqlite3.h |
- |
# Source code for extensions |
# |
SRC += \ |
@@ -310,15 +305,18 @@ SRC += \ |
SRC += \ |
$(TOP)/ext/fts3/fts3.c \ |
$(TOP)/ext/fts3/fts3.h \ |
+ $(TOP)/ext/fts3/fts3Int.h \ |
+ $(TOP)/ext/fts3/fts3_aux.c \ |
$(TOP)/ext/fts3/fts3_expr.c \ |
- $(TOP)/ext/fts3/fts3_expr.h \ |
$(TOP)/ext/fts3/fts3_hash.c \ |
$(TOP)/ext/fts3/fts3_hash.h \ |
$(TOP)/ext/fts3/fts3_icu.c \ |
$(TOP)/ext/fts3/fts3_porter.c \ |
+ $(TOP)/ext/fts3/fts3_snippet.c \ |
$(TOP)/ext/fts3/fts3_tokenizer.h \ |
$(TOP)/ext/fts3/fts3_tokenizer.c \ |
- $(TOP)/ext/fts3/fts3_tokenizer1.c |
+ $(TOP)/ext/fts3/fts3_tokenizer1.c \ |
+ $(TOP)/ext/fts3/fts3_write.c |
SRC += \ |
$(TOP)/ext/icu/sqliteicu.h \ |
$(TOP)/ext/icu/icu.c |
@@ -326,42 +324,19 @@ SRC += \ |
$(TOP)/ext/rtree/rtree.h \ |
$(TOP)/ext/rtree/rtree.c |
-# Source code to the library files needed by the test fixture |
+ |
+# Generated source code files |
# |
-TESTSRC2 = \ |
- $(TOP)/src/attach.c \ |
- $(TOP)/src/backup.c \ |
- $(TOP)/src/bitvec.c \ |
- $(TOP)/src/btree.c \ |
- $(TOP)/src/build.c \ |
- $(TOP)/src/date.c \ |
- $(TOP)/src/expr.c \ |
- $(TOP)/src/func.c \ |
- $(TOP)/src/insert.c \ |
- $(TOP)/src/mem5.c \ |
- $(TOP)/src/os.c \ |
- $(TOP)/src/os_os2.c \ |
- $(TOP)/src/os_unix.c \ |
- $(TOP)/src/os_win.c \ |
- $(TOP)/src/pager.c \ |
- $(TOP)/src/pcache.c \ |
- $(TOP)/src/pcache1.c \ |
- $(TOP)/src/pragma.c \ |
- $(TOP)/src/prepare.c \ |
- $(TOP)/src/printf.c \ |
- $(TOP)/src/random.c \ |
- $(TOP)/src/select.c \ |
- $(TOP)/src/tokenize.c \ |
- $(TOP)/src/utf.c \ |
- $(TOP)/src/util.c \ |
- $(TOP)/src/vdbe.c \ |
- $(TOP)/src/vdbeapi.c \ |
- $(TOP)/src/vdbeaux.c \ |
- $(TOP)/src/vdbemem.c \ |
- $(TOP)/src/where.c \ |
- parse.c |
+SRC += \ |
+ keywordhash.h \ |
+ opcodes.c \ |
+ opcodes.h \ |
+ parse.c \ |
+ parse.h \ |
+ config.h \ |
+ sqlite3.h |
-# Source code to the actual test files. |
+# Source code to the test files. |
# |
TESTSRC = \ |
$(TOP)/src/test1.c \ |
@@ -378,72 +353,121 @@ TESTSRC = \ |
$(TOP)/src/test_backup.c \ |
$(TOP)/src/test_btree.c \ |
$(TOP)/src/test_config.c \ |
+ $(TOP)/src/test_demovfs.c \ |
$(TOP)/src/test_devsym.c \ |
$(TOP)/src/test_func.c \ |
+ $(TOP)/src/test_fuzzer.c \ |
$(TOP)/src/test_hexio.c \ |
$(TOP)/src/test_init.c \ |
+ $(TOP)/src/test_intarray.c \ |
$(TOP)/src/test_journal.c \ |
$(TOP)/src/test_malloc.c \ |
- $(TOP)/src/test_md5.c \ |
+ $(TOP)/src/test_multiplex.c \ |
$(TOP)/src/test_mutex.c \ |
$(TOP)/src/test_onefile.c \ |
$(TOP)/src/test_osinst.c \ |
$(TOP)/src/test_pcache.c \ |
+ $(TOP)/src/test_quota.c \ |
+ $(TOP)/src/test_rtree.c \ |
$(TOP)/src/test_schema.c \ |
$(TOP)/src/test_server.c \ |
+ $(TOP)/src/test_superlock.c \ |
+ $(TOP)/src/test_syscall.c \ |
+ $(TOP)/src/test_stat.c \ |
$(TOP)/src/test_tclvar.c \ |
$(TOP)/src/test_thread.c \ |
+ $(TOP)/src/test_vfs.c \ |
+ $(TOP)/src/test_wholenumber.c \ |
$(TOP)/src/test_wsd.c |
+# Source code to the library files needed by the test fixture |
+# |
+TESTSRC2 = \ |
+ $(TOP)/src/attach.c \ |
+ $(TOP)/src/backup.c \ |
+ $(TOP)/src/bitvec.c \ |
+ $(TOP)/src/btree.c \ |
+ $(TOP)/src/build.c \ |
+ $(TOP)/src/ctime.c \ |
+ $(TOP)/src/date.c \ |
+ $(TOP)/src/expr.c \ |
+ $(TOP)/src/func.c \ |
+ $(TOP)/src/insert.c \ |
+ $(TOP)/src/wal.c \ |
+ $(TOP)/src/mem5.c \ |
+ $(TOP)/src/os.c \ |
+ $(TOP)/src/os_os2.c \ |
+ $(TOP)/src/os_unix.c \ |
+ $(TOP)/src/os_win.c \ |
+ $(TOP)/src/pager.c \ |
+ $(TOP)/src/pragma.c \ |
+ $(TOP)/src/prepare.c \ |
+ $(TOP)/src/printf.c \ |
+ $(TOP)/src/random.c \ |
+ $(TOP)/src/pcache.c \ |
+ $(TOP)/src/pcache1.c \ |
+ $(TOP)/src/select.c \ |
+ $(TOP)/src/tokenize.c \ |
+ $(TOP)/src/utf.c \ |
+ $(TOP)/src/util.c \ |
+ $(TOP)/src/vdbeapi.c \ |
+ $(TOP)/src/vdbeaux.c \ |
+ $(TOP)/src/vdbe.c \ |
+ $(TOP)/src/vdbemem.c \ |
+ $(TOP)/src/vdbetrace.c \ |
+ $(TOP)/src/where.c \ |
+ parse.c \ |
+ $(TOP)/ext/fts3/fts3.c \ |
+ $(TOP)/ext/fts3/fts3_aux.c \ |
+ $(TOP)/ext/fts3/fts3_expr.c \ |
+ $(TOP)/ext/fts3/fts3_tokenizer.c \ |
+ $(TOP)/ext/fts3/fts3_write.c \ |
+ $(TOP)/ext/async/sqlite3async.c |
+ |
# Header files used by all library source files. |
# |
HDR = \ |
- sqlite3.h \ |
$(TOP)/src/btree.h \ |
$(TOP)/src/btreeInt.h \ |
$(TOP)/src/hash.h \ |
$(TOP)/src/hwtime.h \ |
- $(TOP)/src/sqliteLimit.h \ |
+ keywordhash.h \ |
$(TOP)/src/mutex.h \ |
opcodes.h \ |
$(TOP)/src/os.h \ |
$(TOP)/src/os_common.h \ |
+ $(TOP)/src/pager.h \ |
+ $(TOP)/src/pcache.h \ |
+ parse.h \ |
+ sqlite3.h \ |
$(TOP)/src/sqlite3ext.h \ |
$(TOP)/src/sqliteInt.h \ |
+ $(TOP)/src/sqliteLimit.h \ |
$(TOP)/src/vdbe.h \ |
$(TOP)/src/vdbeInt.h \ |
- parse.h \ |
config.h |
# Header files used by extensions |
# |
-HDR += \ |
+EXTHDR += \ |
$(TOP)/ext/fts1/fts1.h \ |
$(TOP)/ext/fts1/fts1_hash.h \ |
$(TOP)/ext/fts1/fts1_tokenizer.h |
-HDR += \ |
+EXTHDR += \ |
$(TOP)/ext/fts2/fts2.h \ |
$(TOP)/ext/fts2/fts2_hash.h \ |
$(TOP)/ext/fts2/fts2_tokenizer.h |
-HDR += \ |
+EXTHDR += \ |
$(TOP)/ext/fts3/fts3.h \ |
- $(TOP)/ext/fts3/fts3_expr.h \ |
+ $(TOP)/ext/fts3/fts3Int.h \ |
$(TOP)/ext/fts3/fts3_hash.h \ |
$(TOP)/ext/fts3/fts3_tokenizer.h |
-HDR += \ |
+EXTHDR += \ |
$(TOP)/ext/rtree/rtree.h |
-HDR += \ |
+EXTHDR += \ |
$(TOP)/ext/icu/sqliteicu.h |
- |
-# If using the amalgamation, use sqlite3.c directly to build the test |
-# fixture. Otherwise link against libsqlite3.la. (This distinction is |
-# necessary because the test fixture requires non-API symbols which are |
-# hidden when the library is built via the amalgamation). |
-# |
-TESTFIXTURE_SRC0 = $(TESTSRC2) libsqlite3.la |
-TESTFIXTURE_SRC1 = sqlite3.c |
-TESTFIXTURE_SRC = $(TESTSRC) $(TOP)/src/tclsqlite.c $(TESTFIXTURE_SRC$(USE_AMALGAMATION)) |
- |
+EXTHDR += \ |
+ $(TOP)/ext/rtree/sqlite3rtree.h |
# This is the default Makefile target. The objects listed here |
# are what get build when you type just "make" with no arguments. |
@@ -456,13 +480,6 @@ Makefile: $(TOP)/Makefile.in |
sqlite3.pc: $(TOP)/sqlite3.pc.in |
./config.status |
-# Generate the file "last_change" which contains the date of change |
-# of the most recently modified source code file |
-# |
-last_change: $(SRC) |
- cat $(SRC) | grep '$$Id: ' | sort -k 5 | tail -1 \ |
- | $(NAWK) '{print $$5,$$6}' >last_change |
- |
libsqlite3.la: $(LIBOBJ) |
$(LTLINK) -o $@ $(LIBOBJ) $(TLIBS) \ |
${ALLOWRELEASE} -rpath "$(libdir)" -version-info "8:6:8" |
@@ -485,10 +502,10 @@ sqlite3$(TEXE): $(TOP)/src/shell.c libsqlite3.la sqlite3.h |
# files are automatically generated. This target takes care of |
# all that automatic generation. |
# |
-.target_source: $(SRC) |
+.target_source: $(SRC) $(TOP)/tool/vdbe-compress.tcl |
rm -rf tsrc |
- mkdir -p tsrc |
- cp $(SRC) tsrc |
+ mkdir tsrc |
+ cp -f $(SRC) tsrc |
rm tsrc/sqlite.h.in tsrc/parse.y |
$(TCLSH_CMD) $(TOP)/tool/vdbe-compress.tcl <tsrc/vdbe.c >vdbe.new |
mv vdbe.new tsrc/vdbe.c |
@@ -497,19 +514,30 @@ sqlite3$(TEXE): $(TOP)/src/shell.c libsqlite3.la sqlite3.h |
sqlite3.c: .target_source $(TOP)/tool/mksqlite3c.tcl |
$(TCLSH_CMD) $(TOP)/tool/mksqlite3c.tcl |
+# Rule to build the amalgamation |
+# |
+sqlite3.lo: sqlite3.c |
+ $(LTCOMPILE) $(TEMP_STORE) -c sqlite3.c |
+ |
# Rules to build the LEMON compiler generator |
# |
lemon$(BEXE): $(TOP)/tool/lemon.c $(TOP)/src/lempar.c |
$(BCC) -o $@ $(TOP)/tool/lemon.c |
cp $(TOP)/src/lempar.c . |
- |
-# Rule to build the amalgamation |
+# Rules to build individual *.o files from generated *.c files. This |
+# applies to: |
# |
-sqlite3.lo: sqlite3.c |
- $(LTCOMPILE) $(TEMP_STORE) -c sqlite3.c |
+# parse.o |
+# opcodes.o |
+# |
+parse.lo: parse.c $(HDR) |
+ $(LTCOMPILE) $(TEMP_STORE) -c parse.c |
+ |
+opcodes.lo: opcodes.c |
+ $(LTCOMPILE) $(TEMP_STORE) -c opcodes.c |
-# Rules to build individual files |
+# Rules to build individual *.o files from files in the src directory. |
# |
alter.lo: $(TOP)/src/alter.c $(HDR) |
$(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/alter.c |
@@ -544,6 +572,9 @@ callback.lo: $(TOP)/src/callback.c $(HDR) |
complete.lo: $(TOP)/src/complete.c $(HDR) |
$(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/complete.c |
+ctime.lo: $(TOP)/src/ctime.c $(HDR) |
+ $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/ctime.c |
+ |
date.lo: $(TOP)/src/date.c $(HDR) |
$(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/date.c |
@@ -556,6 +587,9 @@ expr.lo: $(TOP)/src/expr.c $(HDR) |
fault.lo: $(TOP)/src/fault.c $(HDR) |
$(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/fault.c |
+fkey.lo: $(TOP)/src/fkey.c $(HDR) |
+ $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/fkey.c |
+ |
func.lo: $(TOP)/src/func.c $(HDR) |
$(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/func.c |
@@ -628,15 +662,6 @@ pcache.lo: $(TOP)/src/pcache.c $(HDR) $(TOP)/src/pcache.h |
pcache1.lo: $(TOP)/src/pcache1.c $(HDR) $(TOP)/src/pcache.h |
$(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/pcache1.c |
-opcodes.lo: opcodes.c |
- $(LTCOMPILE) $(TEMP_STORE) -c opcodes.c |
- |
-opcodes.c: opcodes.h $(TOP)/mkopcodec.awk |
- sort -n -b -k 3 opcodes.h | $(NAWK) -f $(TOP)/mkopcodec.awk >opcodes.c |
- |
-opcodes.h: parse.h $(TOP)/src/vdbe.c $(TOP)/mkopcodeh.awk |
- cat parse.h $(TOP)/src/vdbe.c | $(NAWK) -f $(TOP)/mkopcodeh.awk >opcodes.h |
- |
os.lo: $(TOP)/src/os.c $(HDR) |
$(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/os.c |
@@ -649,17 +674,6 @@ os_win.lo: $(TOP)/src/os_win.c $(HDR) |
os_os2.lo: $(TOP)/src/os_os2.c $(HDR) |
$(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/os_os2.c |
-parse.lo: parse.c $(HDR) |
- $(LTCOMPILE) $(TEMP_STORE) -c parse.c |
- |
-parse.h: parse.c |
- |
-parse.c: $(TOP)/src/parse.y lemon$(BEXE) $(TOP)/addopcodes.awk |
- cp $(TOP)/src/parse.y . |
- ./lemon$(BEXE) $(OPT_FEATURE_FLAGS) $(OPTS) parse.y |
- mv parse.h parse.h.temp |
- $(NAWK) -f $(TOP)/addopcodes.awk parse.h.temp >parse.h |
- |
pragma.lo: $(TOP)/src/pragma.c $(HDR) |
$(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/pragma.c |
@@ -684,22 +698,12 @@ select.lo: $(TOP)/src/select.c $(HDR) |
status.lo: $(TOP)/src/status.c $(HDR) |
$(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/status.c |
-sqlite3.h: $(TOP)/src/sqlite.h.in $(TOP)/manifest.uuid $(TOP)/VERSION |
- tclsh $(TOP)/tool/mksqlite3h.tcl $(TOP) >sqlite3.h |
- |
table.lo: $(TOP)/src/table.c $(HDR) |
$(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/table.c |
-tclsqlite.lo: $(TOP)/src/tclsqlite.c $(HDR) |
- $(LTCOMPILE) -DUSE_TCL_STUBS=1 -c $(TOP)/src/tclsqlite.c |
- |
tokenize.lo: $(TOP)/src/tokenize.c keywordhash.h $(HDR) |
$(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/tokenize.c |
-keywordhash.h: $(TOP)/tool/mkkeywordhash.c |
- $(BCC) -o mkkeywordhash$(BEXE) $(OPT_FEATURE_FLAGS) $(OPTS) $(TOP)/tool/mkkeywordhash.c |
- ./mkkeywordhash$(BEXE) >keywordhash.h |
- |
trigger.lo: $(TOP)/src/trigger.c $(HDR) |
$(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/trigger.c |
@@ -730,35 +734,144 @@ vdbeblob.lo: $(TOP)/src/vdbeblob.c $(HDR) |
vdbemem.lo: $(TOP)/src/vdbemem.c $(HDR) |
$(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/vdbemem.c |
+vdbetrace.lo: $(TOP)/src/vdbetrace.c $(HDR) |
+ $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/vdbetrace.c |
+ |
vtab.lo: $(TOP)/src/vtab.c $(HDR) |
$(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/vtab.c |
+wal.lo: $(TOP)/src/wal.c $(HDR) |
+ $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/wal.c |
+ |
walker.lo: $(TOP)/src/walker.c $(HDR) |
$(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/walker.c |
where.lo: $(TOP)/src/where.c $(HDR) |
$(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/where.c |
+tclsqlite.lo: $(TOP)/src/tclsqlite.c $(HDR) |
+ $(LTCOMPILE) -DUSE_TCL_STUBS=1 -c $(TOP)/src/tclsqlite.c |
+ |
tclsqlite-shell.lo: $(TOP)/src/tclsqlite.c $(HDR) |
$(LTCOMPILE) -DTCLSH=1 -o $@ -c $(TOP)/src/tclsqlite.c |
tclsqlite-stubs.lo: $(TOP)/src/tclsqlite.c $(HDR) |
- $(LTCOMPILE) -DTCL_USE_STUBS=1 -o $@ -c $(TOP)/src/tclsqlite.c |
+ $(LTCOMPILE) -DUSE_TCL_STUBS=1 -o $@ -c $(TOP)/src/tclsqlite.c |
tclsqlite3$(TEXE): tclsqlite-shell.lo libsqlite3.la |
$(LTLINK) -o $@ tclsqlite-shell.lo \ |
libsqlite3.la $(LIBTCL) |
+# Rules to build opcodes.c and opcodes.h |
+# |
+opcodes.c: opcodes.h $(TOP)/mkopcodec.awk |
+ sort -n -b -k 3 opcodes.h | $(NAWK) -f $(TOP)/mkopcodec.awk >opcodes.c |
+ |
+opcodes.h: parse.h $(TOP)/src/vdbe.c $(TOP)/mkopcodeh.awk |
+ cat parse.h $(TOP)/src/vdbe.c | $(NAWK) -f $(TOP)/mkopcodeh.awk >opcodes.h |
+ |
+# Rules to build parse.c and parse.h - the outputs of lemon. |
+# |
+parse.h: parse.c |
+ |
+parse.c: $(TOP)/src/parse.y lemon$(BEXE) $(TOP)/addopcodes.awk |
+ cp $(TOP)/src/parse.y . |
+ rm -f parse.h |
+ ./lemon$(BEXE) $(OPT_FEATURE_FLAGS) $(OPTS) parse.y |
+ mv parse.h parse.h.temp |
+ $(NAWK) -f $(TOP)/addopcodes.awk parse.h.temp >parse.h |
+ |
+sqlite3.h: $(TOP)/src/sqlite.h.in $(TOP)/manifest.uuid $(TOP)/VERSION |
+ tclsh $(TOP)/tool/mksqlite3h.tcl $(TOP) >sqlite3.h |
+ |
+keywordhash.h: $(TOP)/tool/mkkeywordhash.c |
+ $(BCC) -o mkkeywordhash$(BEXE) $(OPT_FEATURE_FLAGS) $(OPTS) $(TOP)/tool/mkkeywordhash.c |
+ ./mkkeywordhash$(BEXE) >keywordhash.h |
+ |
+ |
+ |
+# Rules to build the extension objects. |
+# |
+icu.lo: $(TOP)/ext/icu/icu.c $(HDR) $(EXTHDR) |
+ $(LTCOMPILE) -DSQLITE_CORE -c $(TOP)/ext/icu/icu.c |
+ |
+fts2.lo: $(TOP)/ext/fts2/fts2.c $(HDR) $(EXTHDR) |
+ $(LTCOMPILE) -DSQLITE_CORE -c $(TOP)/ext/fts2/fts2.c |
+ |
+fts2_hash.lo: $(TOP)/ext/fts2/fts2_hash.c $(HDR) $(EXTHDR) |
+ $(LTCOMPILE) -DSQLITE_CORE -c $(TOP)/ext/fts2/fts2_hash.c |
+ |
+fts2_icu.lo: $(TOP)/ext/fts2/fts2_icu.c $(HDR) $(EXTHDR) |
+ $(LTCOMPILE) -DSQLITE_CORE -c $(TOP)/ext/fts2/fts2_icu.c |
+ |
+fts2_porter.lo: $(TOP)/ext/fts2/fts2_porter.c $(HDR) $(EXTHDR) |
+ $(LTCOMPILE) -DSQLITE_CORE -c $(TOP)/ext/fts2/fts2_porter.c |
+ |
+fts2_tokenizer.lo: $(TOP)/ext/fts2/fts2_tokenizer.c $(HDR) $(EXTHDR) |
+ $(LTCOMPILE) -DSQLITE_CORE -c $(TOP)/ext/fts2/fts2_tokenizer.c |
+ |
+fts2_tokenizer1.lo: $(TOP)/ext/fts2/fts2_tokenizer1.c $(HDR) $(EXTHDR) |
+ $(LTCOMPILE) -DSQLITE_CORE -c $(TOP)/ext/fts2/fts2_tokenizer1.c |
+ |
+fts3.lo: $(TOP)/ext/fts3/fts3.c $(HDR) $(EXTHDR) |
+ $(LTCOMPILE) -DSQLITE_CORE -c $(TOP)/ext/fts3/fts3.c |
+ |
+fts3_aux.lo: $(TOP)/ext/fts3/fts3_aux.c $(HDR) $(EXTHDR) |
+ $(LTCOMPILE) -DSQLITE_CORE -c $(TOP)/ext/fts3/fts3_aux.c |
+ |
+fts3_expr.lo: $(TOP)/ext/fts3/fts3_expr.c $(HDR) $(EXTHDR) |
+ $(LTCOMPILE) -DSQLITE_CORE -c $(TOP)/ext/fts3/fts3_expr.c |
+ |
+fts3_hash.lo: $(TOP)/ext/fts3/fts3_hash.c $(HDR) $(EXTHDR) |
+ $(LTCOMPILE) -DSQLITE_CORE -c $(TOP)/ext/fts3/fts3_hash.c |
+ |
+fts3_icu.lo: $(TOP)/ext/fts3/fts3_icu.c $(HDR) $(EXTHDR) |
+ $(LTCOMPILE) -DSQLITE_CORE -c $(TOP)/ext/fts3/fts3_icu.c |
+ |
+fts3_snippet.lo: $(TOP)/ext/fts3/fts3_snippet.c $(HDR) $(EXTHDR) |
+ $(LTCOMPILE) -DSQLITE_CORE -c $(TOP)/ext/fts3/fts3_snippet.c |
+ |
+fts3_porter.lo: $(TOP)/ext/fts3/fts3_porter.c $(HDR) $(EXTHDR) |
+ $(LTCOMPILE) -DSQLITE_CORE -c $(TOP)/ext/fts3/fts3_porter.c |
+ |
+fts3_tokenizer.lo: $(TOP)/ext/fts3/fts3_tokenizer.c $(HDR) $(EXTHDR) |
+ $(LTCOMPILE) -DSQLITE_CORE -c $(TOP)/ext/fts3/fts3_tokenizer.c |
+ |
+fts3_tokenizer1.lo: $(TOP)/ext/fts3/fts3_tokenizer1.c $(HDR) $(EXTHDR) |
+ $(LTCOMPILE) -DSQLITE_CORE -c $(TOP)/ext/fts3/fts3_tokenizer1.c |
+ |
+fts3_write.lo: $(TOP)/ext/fts3/fts3_write.c $(HDR) $(EXTHDR) |
+ $(LTCOMPILE) -DSQLITE_CORE -c $(TOP)/ext/fts3/fts3_write.c |
+ |
+rtree.lo: $(TOP)/ext/rtree/rtree.c $(HDR) $(EXTHDR) |
+ $(LTCOMPILE) -DSQLITE_CORE -c $(TOP)/ext/rtree/rtree.c |
+ |
+ |
+# Rules to build the 'testfixture' application. |
+# |
+# If using the amalgamation, use sqlite3.c directly to build the test |
+# fixture. Otherwise link against libsqlite3.la. (This distinction is |
+# necessary because the test fixture requires non-API symbols which are |
+# hidden when the library is built via the amalgamation). |
+# |
+TESTFIXTURE_FLAGS = -DTCLSH=1 -DSQLITE_TEST=1 -DSQLITE_CRASH_TEST=1 |
+TESTFIXTURE_FLAGS += -DSQLITE_SERVER=1 -DSQLITE_PRIVATE="" -DSQLITE_CORE |
+ |
+TESTFIXTURE_SRC0 = $(TESTSRC2) libsqlite3.la |
+TESTFIXTURE_SRC1 = sqlite3.c |
+TESTFIXTURE_SRC = $(TESTSRC) $(TOP)/src/tclsqlite.c $(TESTFIXTURE_SRC$(USE_AMALGAMATION)) |
+ |
testfixture$(TEXE): $(TESTFIXTURE_SRC) |
- $(LTLINK) -DTCLSH=1 -DSQLITE_TEST=1 -DSQLITE_NO_SYNC=1\ |
- -DSQLITE_CRASH_TEST=1 \ |
- -DSQLITE_SERVER=1 -DSQLITE_PRIVATE="" -DSQLITE_CORE $(TEMP_STORE) \ |
+ $(LTLINK) -DSQLITE_NO_SYNC=1 $(TEMP_STORE) $(TESTFIXTURE_FLAGS) \ |
-o $@ $(TESTFIXTURE_SRC) $(LIBTCL) $(TLIBS) |
fulltest: testfixture$(TEXE) sqlite3$(TEXE) |
./testfixture$(TEXE) $(TOP)/test/all.test |
+soaktest: testfixture$(TEXE) sqlite3$(TEXE) |
+ ./testfixture$(TEXE) $(TOP)/test/all.test -soak=1 |
+ |
test: testfixture$(TEXE) sqlite3$(TEXE) |
./testfixture$(TEXE) $(TOP)/test/veryquick.test |
@@ -772,9 +885,11 @@ sqlite3_analyzer$(TEXE): $(TESTFIXTURE_SRC) $(TOP)/tool/spaceanal.tcl |
$(TOP)/tool/spaceanal.tcl >spaceanal_tcl.h |
$(LTLINK) -DTCLSH=2 -DSQLITE_TEST=1 -DSQLITE_CRASH_TEST=1 \ |
-DSQLITE_SERVER=1 -DSQLITE_PRIVATE="" -DSQLITE_CORE \ |
- $(TEMP_STORE) -o $@ $(TESTFIXTURE_SRC) $(LIBTCL) |
+ $(TEMP_STORE) -o $@ $(TESTFIXTURE_SRC) $(LIBTCL) $(TLIBS) |
+# Standard install and cleanup targets |
+# |
lib_install: libsqlite3.la |
$(INSTALL) -d $(DESTDIR)$(libdir) |
$(LTINSTALL) libsqlite3.la $(DESTDIR)$(libdir) |
@@ -799,15 +914,15 @@ tcl_install: lib_install libtclsqlite3.la pkgIndex.tcl |
clean: |
rm -f *.lo *.la *.o sqlite3$(TEXE) libsqlite3.la |
rm -f sqlite3.h opcodes.* |
- rm -rf .libs .deps tsrc |
+ rm -rf .libs .deps |
rm -f lemon$(BEXE) lempar.c parse.* sqlite*.tar.gz |
rm -f mkkeywordhash$(BEXE) keywordhash.h |
rm -f $(PUBLISH) |
rm -f *.da *.bb *.bbg gmon.out |
+ rm -rf tsrc .target_source |
rm -f testfixture$(TEXE) test.db |
- rm -f common.tcl |
rm -f sqlite3.dll sqlite3.lib sqlite3.def |
- rm -f sqlite3.c .target_source |
+ rm -f sqlite3.c |
distclean: clean |
rm -f config.log config.status libtool Makefile sqlite3.pc |