]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Add support for building with fts3. (CVS 4250)
authorshess <shess@noemail.net>
Mon, 20 Aug 2007 17:37:47 +0000 (17:37 +0000)
committershess <shess@noemail.net>
Mon, 20 Aug 2007 17:37:47 +0000 (17:37 +0000)
FossilOrigin-Name: 95ef963232ab1f15a7c42229819d33d3571a753e

main.mk
manifest
manifest.uuid
src/main.c
src/test_config.c

diff --git a/main.mk b/main.mk
index 68c3e313b97f86812355e72f8effeb8c32a126c3..004be61ae8a55866a16381f33a8411ba2c8ce874 100644 (file)
--- a/main.mk
+++ b/main.mk
@@ -66,8 +66,23 @@ LIBOBJ+= alter.o analyze.o attach.o auth.o btree.o build.o \
          vdbe.o vdbeapi.o vdbeaux.o vdbeblob.o vdbefifo.o vdbemem.o \
          where.o utf.o legacy.o vtab.o
 
-EXTOBJ = icu.o fts2.o fts2_hash.o fts2_icu.o fts2_porter.o       \
-         fts2_tokenizer.o fts2_tokenizer1.o
+EXTOBJ = icu.o
+EXTOBJ += fts1.o \
+         fts1_hash.o \
+         fts1_tokenizer1.o \
+         fts1_porter.o
+EXTOBJ += fts2.o \
+         fts2_hash.o \
+         fts2_icu.o \
+         fts2_porter.o \
+          fts2_tokenizer.o \
+         fts2_tokenizer1.o
+EXTOBJ += fts3.o \
+         fts3_hash.o \
+         fts3_icu.o \
+         fts3_porter.o \
+          fts3_tokenizer.o \
+         fts3_tokenizer1.o
 
 # All of the source code files.
 #
@@ -150,6 +165,16 @@ SRC += \
   $(TOP)/ext/fts2/fts2_tokenizer.h \
   $(TOP)/ext/fts2/fts2_tokenizer.c \
   $(TOP)/ext/fts2/fts2_tokenizer1.c
+SRC += \
+  $(TOP)/ext/fts3/fts3.c \
+  $(TOP)/ext/fts3/fts3.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_tokenizer.h \
+  $(TOP)/ext/fts3/fts3_tokenizer.c \
+  $(TOP)/ext/fts3/fts3_tokenizer1.c
 SRC += \
   $(TOP)/ext/icu/icu.c
 
@@ -203,8 +228,9 @@ TESTSRC = \
   $(TOP)/src/util.c \
   $(TOP)/src/vdbe.c \
   $(TOP)/src/vdbeaux.c \
-  $(TOP)/src/where.c \
-  $(TOP)/ext/fts2/fts2_tokenizer.c
+  $(TOP)/src/where.c
+TESTSRC += $(TOP)/ext/fts2/fts2_tokenizer.c
+TESTSRC += $(TOP)/ext/fts3/fts3_tokenizer.c
 
 # Header files used by all library source files.
 #
@@ -232,6 +258,10 @@ EXTHDR += \
   $(TOP)/ext/fts2/fts2.h \
   $(TOP)/ext/fts2/fts2_hash.h \
   $(TOP)/ext/fts2/fts2_tokenizer.h
+EXTHDR += \
+  $(TOP)/ext/fts3/fts3.h \
+  $(TOP)/ext/fts3/fts3_hash.h \
+  $(TOP)/ext/fts3/fts3_tokenizer.h
 
 
 # Header files used by the VDBE submodule
@@ -283,6 +313,9 @@ sqlite3.c:  target_source $(TOP)/tool/mksqlite3c.tcl
 fts2amal.c:    target_source $(TOP)/ext/fts2/mkfts2amal.tcl
        tclsh $(TOP)/ext/fts2/mkfts2amal.tcl
 
+fts3amal.c:    target_source $(TOP)/ext/fts3/mkfts3amal.tcl
+       tclsh $(TOP)/ext/fts3/mkfts3amal.tcl
+
 # Rules to build the LEMON compiler generator
 #
 lemon: $(TOP)/tool/lemon.c $(TOP)/tool/lempar.c
@@ -484,6 +517,24 @@ fts2_tokenizer.o:  $(TOP)/ext/fts2/fts2_tokenizer.c $(HDR) $(EXTHDR)
 fts2_tokenizer1.o:     $(TOP)/ext/fts2/fts2_tokenizer1.c $(HDR) $(EXTHDR)
        $(TCCX) -DSQLITE_CORE -c $(TOP)/ext/fts2/fts2_tokenizer1.c
 
+fts3.o:        $(TOP)/ext/fts3/fts3.c $(HDR) $(EXTHDR)
+       $(TCCX) -DSQLITE_CORE -c $(TOP)/ext/fts3/fts3.c
+
+fts3_hash.o:   $(TOP)/ext/fts3/fts3_hash.c $(HDR) $(EXTHDR)
+       $(TCCX) -DSQLITE_CORE -c $(TOP)/ext/fts3/fts3_hash.c
+
+fts3_icu.o:    $(TOP)/ext/fts3/fts3_icu.c $(HDR) $(EXTHDR)
+       $(TCCX) -DSQLITE_CORE -c $(TOP)/ext/fts3/fts3_icu.c
+
+fts3_porter.o: $(TOP)/ext/fts3/fts3_porter.c $(HDR) $(EXTHDR)
+       $(TCCX) -DSQLITE_CORE -c $(TOP)/ext/fts3/fts3_porter.c
+
+fts3_tokenizer.o:      $(TOP)/ext/fts3/fts3_tokenizer.c $(HDR) $(EXTHDR)
+       $(TCCX) -DSQLITE_CORE -c $(TOP)/ext/fts3/fts3_tokenizer.c
+
+fts3_tokenizer1.o:     $(TOP)/ext/fts3/fts3_tokenizer1.c $(HDR) $(EXTHDR)
+       $(TCCX) -DSQLITE_CORE -c $(TOP)/ext/fts3/fts3_tokenizer1.c
+
 
 # Rules for building test programs and for running tests
 #
index 60088548ca3972c24dc960d96c1eb80a5d854920..2a221568cfa375eac1a1808367694818642b5a07 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Copy\sfts2\sto\sfts3,\srenaming,\sand\sreplacing\sreferences\sto\sfts2\swith\nfts3,\sincluding\scapitalization\svariants.\s(CVS\s4249)
-D 2007-08-20T17:37:03
+C Add\ssupport\sfor\sbuilding\swith\sfts3.\s(CVS\s4250)
+D 2007-08-20T17:37:48
 F Makefile.in 0c0e53720f658c7a551046442dd7afba0b72bfbe
 F Makefile.linux-gcc 65241babba6faf1152bf86574477baab19190499
 F README 9c4e2d6706bdcc3efdd773ce752a8cdab4f90028
@@ -63,7 +63,7 @@ F ext/icu/README.txt 3b130aa66e7a681136f6add198b076a2f90d1e33
 F ext/icu/icu.c 61a345d8126686aa3487aa8d2d0f68abd655f7a4
 F install-sh 9d4de14ab9fb0facae2f48780b874848cbf2f895
 F ltmain.sh 56abb507100ed2d4261f6dd1653dec3cf4066387
-F main.mk 659cad1c400ab92948087d46c499e0330215db7b
+F main.mk e90dcb16ce27c6d8d8ed18335c4cc03f5a5fed0b
 F mkdll.sh 37fa8a7412e51b5ab2bc6d4276135f022a0feffb
 F mkextu.sh 416f9b7089d80e5590a29692c9d9280a10dbad9f
 F mkextw.sh 1a866b53637dab137191341cc875575a5ca110fb
@@ -97,7 +97,7 @@ F src/insert.c 633322aef1799f6604fa805e12488bc628570b0c
 F src/legacy.c 6013a7cb7da1b72550b3d35d4fc598b3c3e5b8c1
 F src/limits.h 71ab25f17e35e0a9f3f6f234b8ed49cc56731d35
 F src/loadext.c c0ccda3dbda109da087a8fd762deebe5fdf24a1d
-F src/main.c b597752b33dce7dec3940fa302b4130ebf4d1ba7
+F src/main.c 685aa31a7af0d650c94e6968d713c3a9374aa72e
 F src/malloc.c 613c65f12ff0ee4edd017aa458209ab7a23cd7b1
 F src/md5.c c5fdfa5c2593eaee2e32a5ce6c6927c986eaf217
 F src/mem1.c 30bf8be3846f92fdf88c490c5e5378512383bcbe
@@ -142,7 +142,7 @@ F src/test9.c c0f38f7795cc51d37db6c63874d90f40f10d0f0e
 F src/test_async.c 871ffbe4a520be74b403aca87aa622ebdb690232
 F src/test_autoext.c 855157d97aa28cf84233847548bfacda21807436
 F src/test_btree.c c1308ba0b88ab577fa56c9e493a09829dfcded9c
-F src/test_config.c 26389b032216e0fb2b544ff48a5e9101bd7b1fb4
+F src/test_config.c 1d0da26fd51757765f2073c57a925db8ddc7120c
 F src/test_hexio.c 82916f918687502658f02533b519c38cb180db6d
 F src/test_loadext.c 22065d601a18878e5542191001f0eaa5d77c0ed8
 F src/test_malloc.c d9ba6be85f9c4a439b19f6e0a72d91c369d72c63
@@ -541,7 +541,7 @@ F www/tclsqlite.tcl 8be95ee6dba05eabcd27a9d91331c803f2ce2130
 F www/vdbe.tcl 87a31ace769f20d3627a64fa1fade7fed47b90d0
 F www/version3.tcl 890248cf7b70e60c383b0e84d77d5132b3ead42b
 F www/whentouse.tcl fc46eae081251c3c181bd79c5faef8195d7991a5
-P 917790413ced92266bf5c7cca6d130ed7ac6221b
-R 12135797b14d0786e21cb0e23688a7b7
+P 216c91d2fc49792d9ff53596746f1162f5b7f8d4
+R 2c4f6435b19caee2352f00347c6724cc
 U shess
-Z 6b59af8f3637dd0e81f2542e9ac4aa6a
+Z fc4df19e02ea94b7a6ecca752c10e7ee
index 72e0d3aaf2f8467713ab8774760da945d2053197..32977b740df72699736955a30707c097c1c2ae2e 100644 (file)
@@ -1 +1 @@
-216c91d2fc49792d9ff53596746f1162f5b7f8d4
\ No newline at end of file
+95ef963232ab1f15a7c42229819d33d3571a753e
\ No newline at end of file
index 5983e551928d51c88ce8f8774f33ce5526faab07..9cb779c6c168062077edd0d1674d1707df88f948 100644 (file)
@@ -14,7 +14,7 @@
 ** other files are for internal use by SQLite and should not be
 ** accessed by users of the library.
 **
-** $Id: main.c,v 1.387 2007/08/20 16:07:01 danielk1977 Exp $
+** $Id: main.c,v 1.388 2007/08/20 17:37:48 shess Exp $
 */
 #include "sqliteInt.h"
 #include "os.h"
@@ -1001,6 +1001,13 @@ static int openDatabase(
   }
 #endif
 
+#ifdef SQLITE_ENABLE_FTS3
+  if( !db->mallocFailed && rc==SQLITE_OK ){
+    extern int sqlite3Fts3Init(sqlite3*);
+    rc = sqlite3Fts3Init(db);
+  }
+#endif
+
 #ifdef SQLITE_ENABLE_ICU
   if( !db->mallocFailed && rc==SQLITE_OK ){
     extern int sqlite3IcuInit(sqlite3*);
index f8312e435ee77817e7a2e86b2b9abee766861623..78ec7af4045f7c8a21b799ef3aa5ab7f880c09a7 100644 (file)
@@ -16,7 +16,7 @@
 ** The focus of this file is providing the TCL testing layer
 ** access to compile-time constants.
 **
-** $Id: test_config.c,v 1.7 2007/08/13 15:18:28 drh Exp $
+** $Id: test_config.c,v 1.8 2007/08/20 17:37:48 shess Exp $
 */
 #include "sqliteInt.h"
 #include "tcl.h"
@@ -197,6 +197,12 @@ static void set_options(Tcl_Interp *interp){
   Tcl_SetVar2(interp, "sqlite_options", "fts2", "0", TCL_GLOBAL_ONLY);
 #endif
 
+#ifdef SQLITE_ENABLE_FTS3
+  Tcl_SetVar2(interp, "sqlite_options", "fts3", "1", TCL_GLOBAL_ONLY);
+#else
+  Tcl_SetVar2(interp, "sqlite_options", "fts3", "0", TCL_GLOBAL_ONLY);
+#endif
+
 #ifdef SQLITE_OMIT_GLOBALRECOVER
   Tcl_SetVar2(interp, "sqlite_options", "globalrecover", "0", TCL_GLOBAL_ONLY);
 #else