OLD | NEW |
| (Empty) |
1 From 81db1d3f04472b2d5f247d0cd69e3e8368862234 Mon Sep 17 00:00:00 2001 | |
2 From: Scott Hess <shess@chromium.org> | |
3 Date: Fri, 16 Jan 2015 13:07:04 -0800 | |
4 Subject: [PATCH 10/16] [fts2][test] Add fts2 to testfixture. | |
5 | |
6 TODO(shess): The main.mk change to build a.out is because under OSX gcc | |
7 is a wrapper for clang, and it reports an error about having multiple | |
8 outputs. Figure out a less hacky solution. | |
9 --- | |
10 third_party/sqlite/src/Makefile.linux-gcc | 1 + | |
11 third_party/sqlite/src/ext/fts2/fts2.c | 6 ++++-- | |
12 third_party/sqlite/src/ext/fts2/fts2_tokenizer.c | 4 +++- | |
13 third_party/sqlite/src/main.mk | 20 +++++++++++++++++++- | |
14 4 files changed, 27 insertions(+), 4 deletions(-) | |
15 | |
16 diff --git a/third_party/sqlite/src/Makefile.linux-gcc b/third_party/sqlite/src/
Makefile.linux-gcc | |
17 index f60f1a1..026c03c 100644 | |
18 --- a/third_party/sqlite/src/Makefile.linux-gcc | |
19 +++ b/third_party/sqlite/src/Makefile.linux-gcc | |
20 @@ -67,6 +67,7 @@ OPTS = -DNDEBUG=1 | |
21 # These flags match those for SQLITE_CFLAGS in config.mk. | |
22 | |
23 OPTS += -DSQLITE_CORE | |
24 +OPTS += -DSQLITE_ENABLE_FTS2 -DSQLITE_ENABLE_BROKEN_FTS2 | |
25 OPTS += -DSQLITE_DEFAULT_FILE_PERMISSIONS=0600 | |
26 OPTS += -DHAVE_USLEEP=1 | |
27 | |
28 diff --git a/third_party/sqlite/src/ext/fts2/fts2.c b/third_party/sqlite/src/ext
/fts2/fts2.c | |
29 index 0405fb7..dd75b4a 100644 | |
30 --- a/third_party/sqlite/src/ext/fts2/fts2.c | |
31 +++ b/third_party/sqlite/src/ext/fts2/fts2.c | |
32 @@ -310,8 +310,10 @@ | |
33 #include "fts2_hash.h" | |
34 #include "fts2_tokenizer.h" | |
35 #include "sqlite3.h" | |
36 -#include "sqlite3ext.h" | |
37 -SQLITE_EXTENSION_INIT1 | |
38 +#ifndef SQLITE_CORE | |
39 +# include "sqlite3ext.h" | |
40 + SQLITE_EXTENSION_INIT1 | |
41 +#endif | |
42 | |
43 | |
44 /* TODO(shess) MAN, this thing needs some refactoring. At minimum, it | |
45 diff --git a/third_party/sqlite/src/ext/fts2/fts2_tokenizer.c b/third_party/sqli
te/src/ext/fts2/fts2_tokenizer.c | |
46 index a3d6a63..36d89eb 100644 | |
47 --- a/third_party/sqlite/src/ext/fts2/fts2_tokenizer.c | |
48 +++ b/third_party/sqlite/src/ext/fts2/fts2_tokenizer.c | |
49 @@ -28,7 +28,9 @@ | |
50 | |
51 #include "sqlite3.h" | |
52 #include "sqlite3ext.h" | |
53 -SQLITE_EXTENSION_INIT3 | |
54 +#ifndef SQLITE_CORE | |
55 + SQLITE_EXTENSION_INIT1 | |
56 +#endif | |
57 | |
58 #include "fts2_hash.h" | |
59 #include "fts2_tokenizer.h" | |
60 diff --git a/third_party/sqlite/src/main.mk b/third_party/sqlite/src/main.mk | |
61 index 54b5b35..7cb6362 100644 | |
62 --- a/third_party/sqlite/src/main.mk | |
63 +++ b/third_party/sqlite/src/main.mk | |
64 @@ -72,6 +72,12 @@ LIBOBJ+= vdbe.o parse.o \ | |
65 vdbetrace.o wal.o walker.o where.o utf.o vtab.o | |
66 | |
67 | |
68 +LIBOBJ+= fts2.o \ | |
69 + fts2_hash.o \ | |
70 + fts2_icu.o \ | |
71 + fts2_porter.o \ | |
72 + fts2_tokenizer.o \ | |
73 + fts2_tokenizer1.o | |
74 | |
75 # All of the source code files. | |
76 # | |
77 @@ -337,6 +343,17 @@ TESTSRC2 = \ | |
78 $(TOP)/ext/fts3/fts3_write.c \ | |
79 $(TOP)/ext/async/sqlite3async.c | |
80 | |
81 +TESTSRC2 += \ | |
82 + $(TOP)/ext/fts2/fts2.c \ | |
83 + $(TOP)/ext/fts2/fts2.h \ | |
84 + $(TOP)/ext/fts2/fts2_hash.c \ | |
85 + $(TOP)/ext/fts2/fts2_hash.h \ | |
86 + $(TOP)/ext/fts2/fts2_icu.c \ | |
87 + $(TOP)/ext/fts2/fts2_porter.c \ | |
88 + $(TOP)/ext/fts2/fts2_tokenizer.h \ | |
89 + $(TOP)/ext/fts2/fts2_tokenizer.c \ | |
90 + $(TOP)/ext/fts2/fts2_tokenizer1.c | |
91 + | |
92 # Header files used by all library source files. | |
93 # | |
94 HDR = \ | |
95 @@ -593,7 +610,8 @@ TESTFIXTURE_FLAGS += -DSQLITE_SERVER=1 -DSQLITE_PRIVATE="" -
DSQLITE_CORE | |
96 testfixture$(EXE): $(TESTSRC2) libsqlite3.a $(TESTSRC) $(TOP)/src/tclsqlite.c | |
97 $(TCCX) $(TCL_FLAGS) -DTCLSH=1 $(TESTFIXTURE_FLAGS) \ | |
98 $(TESTSRC) $(TESTSRC2) $(TOP)/src/tclsqlite.c \ | |
99 - -o testfixture$(EXE) $(LIBTCL) libsqlite3.a $(THREADLIB) $(TLIBS
) | |
100 + $(LIBTCL) libsqlite3.a $(THREADLIB) $(TLIBS) | |
101 + mv a.out testfixture$(EXE) | |
102 | |
103 amalgamation-testfixture$(EXE): sqlite3.c $(TESTSRC) $(TOP)/src/tclsqlite.c | |
104 $(TCCX) $(TCL_FLAGS) -DTCLSH=1 $(TESTFIXTURE_FLAGS) \ | |
105 -- | |
106 2.2.1 | |
107 | |
OLD | NEW |