OLD | NEW |
1 ############################################################################### | 1 ############################################################################### |
2 # The following macros should be defined before this script is | 2 # The following macros should be defined before this script is |
3 # invoked: | 3 # invoked: |
4 # | 4 # |
5 # TOP The toplevel directory of the source tree. This is the | 5 # TOP The toplevel directory of the source tree. This is the |
6 # directory that contains this "Makefile.in" and the | 6 # directory that contains this "Makefile.in" and the |
7 # "configure.in" script. | 7 # "configure.in" script. |
8 # | 8 # |
9 # BCC C Compiler and options for use in building executables that | 9 # BCC C Compiler and options for use in building executables that |
10 # will run on the platform that is doing the build. | 10 # will run on the platform that is doing the build. |
11 # | 11 # |
12 # THREADLIB Specify any extra linker options needed to make the library | 12 # THREADLIB Specify any extra linker options needed to make the library |
13 # thread safe | 13 # thread safe |
14 # | 14 # |
| 15 # LIBS Extra libraries options |
| 16 # |
15 # OPTS Extra compiler command-line options. | 17 # OPTS Extra compiler command-line options. |
16 # | 18 # |
17 # EXE The suffix to add to executable files. ".exe" for windows | 19 # EXE The suffix to add to executable files. ".exe" for windows |
18 # and "" for Unix. | 20 # and "" for Unix. |
19 # | 21 # |
20 # TCC C Compiler and options for use in building executables that | 22 # TCC C Compiler and options for use in building executables that |
21 # will run on the target platform. This is usually the same | 23 # will run on the target platform. This is usually the same |
22 # as BCC, unless you are cross-compiling. | 24 # as BCC, unless you are cross-compiling. |
23 # | 25 # |
24 # AR Tools used to build a static library. | 26 # AR Tools used to build a static library. |
25 # RANLIB | 27 # RANLIB |
26 # | 28 # |
27 # TCL_FLAGS Extra compiler options needed for programs that use the | 29 # TCL_FLAGS Extra compiler options needed for programs that use the |
28 # TCL library. | 30 # TCL library. |
29 # | 31 # |
30 # LIBTCL Linker options needed to link against the TCL library. | 32 # LIBTCL Linker options needed to link against the TCL library. |
31 # | 33 # |
32 # READLINE_FLAGS Compiler options needed for programs that use the | 34 # READLINE_FLAGS Compiler options needed for programs that use the |
33 # readline() library. | 35 # readline() library. |
34 # | 36 # |
35 # LIBREADLINE Linker options needed by programs using readline() must | 37 # LIBREADLINE Linker options needed by programs using readline() must |
36 # link against. | 38 # link against. |
37 # | 39 # |
38 # NAWK Nawk compatible awk program. Older (obsolete?) solaris | |
39 # systems need this to avoid using the original AT&T AWK. | |
40 # | |
41 # Once the macros above are defined, the rest of this make script will | 40 # Once the macros above are defined, the rest of this make script will |
42 # build the SQLite library and testing tools. | 41 # build the SQLite library and testing tools. |
43 ################################################################################ | 42 ################################################################################ |
44 | 43 |
45 # This is how we compile | 44 # This is how we compile |
46 # | 45 # |
47 TCCX = $(TCC) $(OPTS) -I. -I$(TOP)/src -I$(TOP) | 46 TCCX = $(TCC) $(OPTS) -I. -I$(TOP)/src -I$(TOP) |
48 TCCX += -I$(TOP)/ext/rtree -I$(TOP)/ext/icu -I$(TOP)/ext/fts3 | 47 TCCX += -I$(TOP)/ext/rtree -I$(TOP)/ext/icu -I$(TOP)/ext/fts3 |
49 TCCX += -I$(TOP)/ext/async -I$(TOP)/ext/userauth | 48 TCCX += -I$(TOP)/ext/async -I$(TOP)/ext/userauth |
| 49 TCCX += -I$(TOP)/ext/fts5 |
| 50 THREADLIB += $(LIBS) |
50 | 51 |
51 # Object files for the SQLite library. | 52 # Object files for the SQLite library. |
52 # | 53 # |
53 LIBOBJ+= vdbe.o parse.o \ | 54 LIBOBJ+= vdbe.o parse.o \ |
54 alter.o analyze.o attach.o auth.o \ | 55 alter.o analyze.o attach.o auth.o \ |
55 backup.o bitvec.o btmutex.o btree.o build.o \ | 56 backup.o bitvec.o btmutex.o btree.o build.o \ |
56 callback.o complete.o ctime.o date.o delete.o expr.o fault.o fkey.o \ | 57 callback.o complete.o ctime.o date.o dbstat.o delete.o expr.o \ |
| 58 » fault.o fkey.o \ |
57 fts3.o fts3_aux.o fts3_expr.o fts3_hash.o fts3_icu.o fts3_porter.o \ | 59 fts3.o fts3_aux.o fts3_expr.o fts3_hash.o fts3_icu.o fts3_porter.o \ |
58 fts3_snippet.o fts3_tokenizer.o fts3_tokenizer1.o \ | 60 fts3_snippet.o fts3_tokenizer.o fts3_tokenizer1.o \ |
59 fts3_tokenize_vtab.o \ | 61 fts3_tokenize_vtab.o \ |
60 fts3_unicode.o fts3_unicode2.o \ | 62 fts3_unicode.o fts3_unicode2.o \ |
61 fts3_write.o func.o global.o hash.o \ | 63 fts3_write.o fts5.o func.o global.o hash.o \ |
62 icu.o insert.o journal.o legacy.o loadext.o \ | 64 icu.o insert.o journal.o json1.o legacy.o loadext.o \ |
63 main.o malloc.o mem0.o mem1.o mem2.o mem3.o mem5.o \ | 65 main.o malloc.o mem0.o mem1.o mem2.o mem3.o mem5.o \ |
64 memjournal.o \ | 66 memjournal.o \ |
65 mutex.o mutex_noop.o mutex_unix.o mutex_w32.o \ | 67 mutex.o mutex_noop.o mutex_unix.o mutex_w32.o \ |
66 notify.o opcodes.o os.o os_unix.o os_win.o \ | 68 notify.o opcodes.o os.o os_unix.o os_win.o \ |
67 pager.o pcache.o pcache1.o pragma.o prepare.o printf.o \ | 69 pager.o pcache.o pcache1.o pragma.o prepare.o printf.o \ |
68 random.o resolve.o rowset.o rtree.o select.o status.o \ | 70 random.o resolve.o rowset.o rtree.o select.o sqlite3rbu.o status.o \ |
69 table.o threads.o tokenize.o trigger.o \ | 71 table.o threads.o tokenize.o treeview.o trigger.o \ |
70 update.o userauth.o util.o vacuum.o \ | 72 update.o userauth.o util.o vacuum.o \ |
71 vdbeapi.o vdbeaux.o vdbeblob.o vdbemem.o vdbesort.o \ | 73 vdbeapi.o vdbeaux.o vdbeblob.o vdbemem.o vdbesort.o \ |
72 » vdbetrace.o wal.o walker.o where.o utf.o vtab.o | 74 » vdbetrace.o wal.o walker.o where.o wherecode.o whereexpr.o \ |
73 | 75 utf.o vtab.o |
74 | 76 |
75 | 77 |
76 # All of the source code files. | 78 # All of the source code files. |
77 # | 79 # |
78 SRC = \ | 80 SRC = \ |
79 $(TOP)/src/alter.c \ | 81 $(TOP)/src/alter.c \ |
80 $(TOP)/src/analyze.c \ | 82 $(TOP)/src/analyze.c \ |
81 $(TOP)/src/attach.c \ | 83 $(TOP)/src/attach.c \ |
82 $(TOP)/src/auth.c \ | 84 $(TOP)/src/auth.c \ |
83 $(TOP)/src/backup.c \ | 85 $(TOP)/src/backup.c \ |
84 $(TOP)/src/bitvec.c \ | 86 $(TOP)/src/bitvec.c \ |
85 $(TOP)/src/btmutex.c \ | 87 $(TOP)/src/btmutex.c \ |
86 $(TOP)/src/btree.c \ | 88 $(TOP)/src/btree.c \ |
87 $(TOP)/src/btree.h \ | 89 $(TOP)/src/btree.h \ |
88 $(TOP)/src/btreeInt.h \ | 90 $(TOP)/src/btreeInt.h \ |
89 $(TOP)/src/build.c \ | 91 $(TOP)/src/build.c \ |
90 $(TOP)/src/callback.c \ | 92 $(TOP)/src/callback.c \ |
91 $(TOP)/src/complete.c \ | 93 $(TOP)/src/complete.c \ |
92 $(TOP)/src/ctime.c \ | 94 $(TOP)/src/ctime.c \ |
93 $(TOP)/src/date.c \ | 95 $(TOP)/src/date.c \ |
| 96 $(TOP)/src/dbstat.c \ |
94 $(TOP)/src/delete.c \ | 97 $(TOP)/src/delete.c \ |
95 $(TOP)/src/expr.c \ | 98 $(TOP)/src/expr.c \ |
96 $(TOP)/src/fault.c \ | 99 $(TOP)/src/fault.c \ |
97 $(TOP)/src/fkey.c \ | 100 $(TOP)/src/fkey.c \ |
98 $(TOP)/src/func.c \ | 101 $(TOP)/src/func.c \ |
99 $(TOP)/src/global.c \ | 102 $(TOP)/src/global.c \ |
100 $(TOP)/src/hash.c \ | 103 $(TOP)/src/hash.c \ |
101 $(TOP)/src/hash.h \ | 104 $(TOP)/src/hash.h \ |
102 $(TOP)/src/hwtime.h \ | 105 $(TOP)/src/hwtime.h \ |
103 $(TOP)/src/insert.c \ | 106 $(TOP)/src/insert.c \ |
104 $(TOP)/src/journal.c \ | 107 $(TOP)/src/journal.c \ |
105 $(TOP)/src/legacy.c \ | 108 $(TOP)/src/legacy.c \ |
106 $(TOP)/src/loadext.c \ | 109 $(TOP)/src/loadext.c \ |
107 $(TOP)/src/main.c \ | 110 $(TOP)/src/main.c \ |
108 $(TOP)/src/malloc.c \ | 111 $(TOP)/src/malloc.c \ |
109 $(TOP)/src/mem0.c \ | 112 $(TOP)/src/mem0.c \ |
110 $(TOP)/src/mem1.c \ | 113 $(TOP)/src/mem1.c \ |
111 $(TOP)/src/mem2.c \ | 114 $(TOP)/src/mem2.c \ |
112 $(TOP)/src/mem3.c \ | 115 $(TOP)/src/mem3.c \ |
113 $(TOP)/src/mem5.c \ | 116 $(TOP)/src/mem5.c \ |
114 $(TOP)/src/memjournal.c \ | 117 $(TOP)/src/memjournal.c \ |
| 118 $(TOP)/src/msvc.h \ |
115 $(TOP)/src/mutex.c \ | 119 $(TOP)/src/mutex.c \ |
116 $(TOP)/src/mutex.h \ | 120 $(TOP)/src/mutex.h \ |
117 $(TOP)/src/mutex_noop.c \ | 121 $(TOP)/src/mutex_noop.c \ |
118 $(TOP)/src/mutex_unix.c \ | 122 $(TOP)/src/mutex_unix.c \ |
119 $(TOP)/src/mutex_w32.c \ | 123 $(TOP)/src/mutex_w32.c \ |
120 $(TOP)/src/notify.c \ | 124 $(TOP)/src/notify.c \ |
121 $(TOP)/src/os.c \ | 125 $(TOP)/src/os.c \ |
122 $(TOP)/src/os.h \ | 126 $(TOP)/src/os.h \ |
123 $(TOP)/src/os_common.h \ | 127 $(TOP)/src/os_common.h \ |
124 $(TOP)/src/os_setup.h \ | 128 $(TOP)/src/os_setup.h \ |
125 $(TOP)/src/os_unix.c \ | 129 $(TOP)/src/os_unix.c \ |
126 $(TOP)/src/os_win.c \ | 130 $(TOP)/src/os_win.c \ |
127 $(TOP)/src/os_win.h \ | 131 $(TOP)/src/os_win.h \ |
128 $(TOP)/src/pager.c \ | 132 $(TOP)/src/pager.c \ |
129 $(TOP)/src/pager.h \ | 133 $(TOP)/src/pager.h \ |
130 $(TOP)/src/parse.y \ | 134 $(TOP)/src/parse.y \ |
131 $(TOP)/src/pcache.c \ | 135 $(TOP)/src/pcache.c \ |
132 $(TOP)/src/pcache.h \ | 136 $(TOP)/src/pcache.h \ |
133 $(TOP)/src/pcache1.c \ | 137 $(TOP)/src/pcache1.c \ |
134 $(TOP)/src/pragma.c \ | 138 $(TOP)/src/pragma.c \ |
| 139 $(TOP)/src/pragma.h \ |
135 $(TOP)/src/prepare.c \ | 140 $(TOP)/src/prepare.c \ |
136 $(TOP)/src/printf.c \ | 141 $(TOP)/src/printf.c \ |
137 $(TOP)/src/random.c \ | 142 $(TOP)/src/random.c \ |
138 $(TOP)/src/resolve.c \ | 143 $(TOP)/src/resolve.c \ |
139 $(TOP)/src/rowset.c \ | 144 $(TOP)/src/rowset.c \ |
140 $(TOP)/src/select.c \ | 145 $(TOP)/src/select.c \ |
141 $(TOP)/src/status.c \ | 146 $(TOP)/src/status.c \ |
142 $(TOP)/src/shell.c \ | 147 $(TOP)/src/shell.c \ |
143 $(TOP)/src/sqlite.h.in \ | 148 $(TOP)/src/sqlite.h.in \ |
144 $(TOP)/src/sqlite3ext.h \ | 149 $(TOP)/src/sqlite3ext.h \ |
145 $(TOP)/src/sqliteInt.h \ | 150 $(TOP)/src/sqliteInt.h \ |
146 $(TOP)/src/sqliteLimit.h \ | 151 $(TOP)/src/sqliteLimit.h \ |
147 $(TOP)/src/table.c \ | 152 $(TOP)/src/table.c \ |
148 $(TOP)/src/tclsqlite.c \ | 153 $(TOP)/src/tclsqlite.c \ |
149 $(TOP)/src/threads.c \ | 154 $(TOP)/src/threads.c \ |
150 $(TOP)/src/tokenize.c \ | 155 $(TOP)/src/tokenize.c \ |
| 156 $(TOP)/src/treeview.c \ |
151 $(TOP)/src/trigger.c \ | 157 $(TOP)/src/trigger.c \ |
152 $(TOP)/src/utf.c \ | 158 $(TOP)/src/utf.c \ |
153 $(TOP)/src/update.c \ | 159 $(TOP)/src/update.c \ |
154 $(TOP)/src/util.c \ | 160 $(TOP)/src/util.c \ |
155 $(TOP)/src/vacuum.c \ | 161 $(TOP)/src/vacuum.c \ |
156 $(TOP)/src/vdbe.c \ | 162 $(TOP)/src/vdbe.c \ |
157 $(TOP)/src/vdbe.h \ | 163 $(TOP)/src/vdbe.h \ |
158 $(TOP)/src/vdbeapi.c \ | 164 $(TOP)/src/vdbeapi.c \ |
159 $(TOP)/src/vdbeaux.c \ | 165 $(TOP)/src/vdbeaux.c \ |
160 $(TOP)/src/vdbeblob.c \ | 166 $(TOP)/src/vdbeblob.c \ |
161 $(TOP)/src/vdbemem.c \ | 167 $(TOP)/src/vdbemem.c \ |
162 $(TOP)/src/vdbesort.c \ | 168 $(TOP)/src/vdbesort.c \ |
163 $(TOP)/src/vdbetrace.c \ | 169 $(TOP)/src/vdbetrace.c \ |
164 $(TOP)/src/vdbeInt.h \ | 170 $(TOP)/src/vdbeInt.h \ |
165 $(TOP)/src/vtab.c \ | 171 $(TOP)/src/vtab.c \ |
| 172 $(TOP)/src/vxworks.h \ |
166 $(TOP)/src/wal.c \ | 173 $(TOP)/src/wal.c \ |
167 $(TOP)/src/wal.h \ | 174 $(TOP)/src/wal.h \ |
168 $(TOP)/src/walker.c \ | 175 $(TOP)/src/walker.c \ |
169 $(TOP)/src/where.c \ | 176 $(TOP)/src/where.c \ |
| 177 $(TOP)/src/wherecode.c \ |
| 178 $(TOP)/src/whereexpr.c \ |
170 $(TOP)/src/whereInt.h | 179 $(TOP)/src/whereInt.h |
171 | 180 |
172 # Source code for extensions | 181 # Source code for extensions |
173 # | 182 # |
174 SRC += \ | 183 SRC += \ |
175 $(TOP)/ext/fts1/fts1.c \ | 184 $(TOP)/ext/fts1/fts1.c \ |
176 $(TOP)/ext/fts1/fts1.h \ | 185 $(TOP)/ext/fts1/fts1.h \ |
177 $(TOP)/ext/fts1/fts1_hash.c \ | 186 $(TOP)/ext/fts1/fts1_hash.c \ |
178 $(TOP)/ext/fts1/fts1_hash.h \ | 187 $(TOP)/ext/fts1/fts1_hash.h \ |
179 $(TOP)/ext/fts1/fts1_porter.c \ | 188 $(TOP)/ext/fts1/fts1_porter.c \ |
(...skipping 29 matching lines...) Expand all Loading... |
209 $(TOP)/ext/fts3/fts3_write.c | 218 $(TOP)/ext/fts3/fts3_write.c |
210 SRC += \ | 219 SRC += \ |
211 $(TOP)/ext/icu/sqliteicu.h \ | 220 $(TOP)/ext/icu/sqliteicu.h \ |
212 $(TOP)/ext/icu/icu.c | 221 $(TOP)/ext/icu/icu.c |
213 SRC += \ | 222 SRC += \ |
214 $(TOP)/ext/rtree/sqlite3rtree.h \ | 223 $(TOP)/ext/rtree/sqlite3rtree.h \ |
215 $(TOP)/ext/rtree/rtree.h \ | 224 $(TOP)/ext/rtree/rtree.h \ |
216 $(TOP)/ext/rtree/rtree.c | 225 $(TOP)/ext/rtree/rtree.c |
217 SRC += \ | 226 SRC += \ |
218 $(TOP)/ext/userauth/userauth.c \ | 227 $(TOP)/ext/userauth/userauth.c \ |
219 $(TOP)/ext/userauth/sqlite3userauth.h | 228 $(TOP)/ext/userauth/sqlite3userauth.h |
| 229 SRC += \ |
| 230 $(TOP)/ext/rbu/sqlite3rbu.c \ |
| 231 $(TOP)/ext/rbu/sqlite3rbu.h |
| 232 SRC += \ |
| 233 $(TOP)/ext/misc/json1.c |
| 234 |
| 235 |
| 236 # FTS5 things |
| 237 # |
| 238 FTS5_HDR = \ |
| 239 $(TOP)/ext/fts5/fts5.h \ |
| 240 $(TOP)/ext/fts5/fts5Int.h \ |
| 241 fts5parse.h |
| 242 » |
| 243 FTS5_SRC = \ |
| 244 $(TOP)/ext/fts5/fts5_aux.c \ |
| 245 $(TOP)/ext/fts5/fts5_buffer.c \ |
| 246 $(TOP)/ext/fts5/fts5_main.c \ |
| 247 $(TOP)/ext/fts5/fts5_config.c \ |
| 248 $(TOP)/ext/fts5/fts5_expr.c \ |
| 249 $(TOP)/ext/fts5/fts5_hash.c \ |
| 250 $(TOP)/ext/fts5/fts5_index.c \ |
| 251 fts5parse.c \ |
| 252 $(TOP)/ext/fts5/fts5_storage.c \ |
| 253 $(TOP)/ext/fts5/fts5_tokenize.c \ |
| 254 $(TOP)/ext/fts5/fts5_unicode2.c \ |
| 255 $(TOP)/ext/fts5/fts5_varint.c \ |
| 256 $(TOP)/ext/fts5/fts5_vocab.c \ |
| 257 |
220 | 258 |
221 # Generated source code files | 259 # Generated source code files |
222 # | 260 # |
223 SRC += \ | 261 SRC += \ |
224 keywordhash.h \ | 262 keywordhash.h \ |
225 opcodes.c \ | 263 opcodes.c \ |
226 opcodes.h \ | 264 opcodes.h \ |
227 parse.c \ | 265 parse.c \ |
228 parse.h \ | 266 parse.h \ |
229 sqlite3.h | 267 sqlite3.h |
230 | 268 |
231 | 269 |
232 # Source code to the test files. | 270 # Source code to the test files. |
233 # | 271 # |
234 TESTSRC = \ | 272 TESTSRC = \ |
235 $(TOP)/ext/fts3/fts3_term.c \ | 273 $(TOP)/ext/fts3/fts3_term.c \ |
236 $(TOP)/ext/fts3/fts3_test.c \ | 274 $(TOP)/ext/fts3/fts3_test.c \ |
| 275 $(TOP)/ext/rbu/test_rbu.c \ |
237 $(TOP)/src/test1.c \ | 276 $(TOP)/src/test1.c \ |
238 $(TOP)/src/test2.c \ | 277 $(TOP)/src/test2.c \ |
239 $(TOP)/src/test3.c \ | 278 $(TOP)/src/test3.c \ |
240 $(TOP)/src/test4.c \ | 279 $(TOP)/src/test4.c \ |
241 $(TOP)/src/test5.c \ | 280 $(TOP)/src/test5.c \ |
242 $(TOP)/src/test6.c \ | 281 $(TOP)/src/test6.c \ |
243 $(TOP)/src/test7.c \ | 282 $(TOP)/src/test7.c \ |
244 $(TOP)/src/test8.c \ | 283 $(TOP)/src/test8.c \ |
245 $(TOP)/src/test9.c \ | 284 $(TOP)/src/test9.c \ |
246 $(TOP)/src/test_autoext.c \ | 285 $(TOP)/src/test_autoext.c \ |
247 $(TOP)/src/test_async.c \ | 286 $(TOP)/src/test_async.c \ |
248 $(TOP)/src/test_backup.c \ | 287 $(TOP)/src/test_backup.c \ |
| 288 $(TOP)/src/test_blob.c \ |
249 $(TOP)/src/test_btree.c \ | 289 $(TOP)/src/test_btree.c \ |
250 $(TOP)/src/test_config.c \ | 290 $(TOP)/src/test_config.c \ |
251 $(TOP)/src/test_demovfs.c \ | 291 $(TOP)/src/test_demovfs.c \ |
252 $(TOP)/src/test_devsym.c \ | 292 $(TOP)/src/test_devsym.c \ |
253 $(TOP)/src/test_fs.c \ | 293 $(TOP)/src/test_fs.c \ |
254 $(TOP)/src/test_func.c \ | 294 $(TOP)/src/test_func.c \ |
255 $(TOP)/src/test_hexio.c \ | 295 $(TOP)/src/test_hexio.c \ |
256 $(TOP)/src/test_init.c \ | 296 $(TOP)/src/test_init.c \ |
257 $(TOP)/src/test_intarray.c \ | 297 $(TOP)/src/test_intarray.c \ |
258 $(TOP)/src/test_journal.c \ | 298 $(TOP)/src/test_journal.c \ |
259 $(TOP)/src/test_malloc.c \ | 299 $(TOP)/src/test_malloc.c \ |
260 $(TOP)/src/test_multiplex.c \ | 300 $(TOP)/src/test_multiplex.c \ |
261 $(TOP)/src/test_mutex.c \ | 301 $(TOP)/src/test_mutex.c \ |
262 $(TOP)/src/test_onefile.c \ | 302 $(TOP)/src/test_onefile.c \ |
263 $(TOP)/src/test_osinst.c \ | 303 $(TOP)/src/test_osinst.c \ |
264 $(TOP)/src/test_pcache.c \ | 304 $(TOP)/src/test_pcache.c \ |
265 $(TOP)/src/test_quota.c \ | 305 $(TOP)/src/test_quota.c \ |
266 $(TOP)/src/test_rtree.c \ | 306 $(TOP)/src/test_rtree.c \ |
267 $(TOP)/src/test_schema.c \ | 307 $(TOP)/src/test_schema.c \ |
268 $(TOP)/src/test_server.c \ | 308 $(TOP)/src/test_server.c \ |
269 $(TOP)/src/test_stat.c \ | |
270 $(TOP)/src/test_sqllog.c \ | 309 $(TOP)/src/test_sqllog.c \ |
271 $(TOP)/src/test_superlock.c \ | 310 $(TOP)/src/test_superlock.c \ |
272 $(TOP)/src/test_syscall.c \ | 311 $(TOP)/src/test_syscall.c \ |
273 $(TOP)/src/test_tclvar.c \ | 312 $(TOP)/src/test_tclvar.c \ |
274 $(TOP)/src/test_thread.c \ | 313 $(TOP)/src/test_thread.c \ |
275 $(TOP)/src/test_vfs.c \ | 314 $(TOP)/src/test_vfs.c \ |
| 315 $(TOP)/src/test_windirent.c \ |
276 $(TOP)/src/test_wsd.c | 316 $(TOP)/src/test_wsd.c |
277 | 317 |
278 # Extensions to be statically loaded. | 318 # Extensions to be statically loaded. |
279 # | 319 # |
280 TESTSRC += \ | 320 TESTSRC += \ |
281 $(TOP)/ext/misc/amatch.c \ | 321 $(TOP)/ext/misc/amatch.c \ |
282 $(TOP)/ext/misc/closure.c \ | 322 $(TOP)/ext/misc/closure.c \ |
| 323 $(TOP)/ext/misc/eval.c \ |
283 $(TOP)/ext/misc/fileio.c \ | 324 $(TOP)/ext/misc/fileio.c \ |
284 $(TOP)/ext/misc/fuzzer.c \ | 325 $(TOP)/ext/misc/fuzzer.c \ |
285 $(TOP)/ext/misc/ieee754.c \ | 326 $(TOP)/ext/misc/ieee754.c \ |
286 $(TOP)/ext/misc/nextchar.c \ | 327 $(TOP)/ext/misc/nextchar.c \ |
287 $(TOP)/ext/misc/percentile.c \ | 328 $(TOP)/ext/misc/percentile.c \ |
288 $(TOP)/ext/misc/regexp.c \ | 329 $(TOP)/ext/misc/regexp.c \ |
| 330 $(TOP)/ext/misc/series.c \ |
289 $(TOP)/ext/misc/spellfix.c \ | 331 $(TOP)/ext/misc/spellfix.c \ |
290 $(TOP)/ext/misc/totype.c \ | 332 $(TOP)/ext/misc/totype.c \ |
291 $(TOP)/ext/misc/wholenumber.c \ | 333 $(TOP)/ext/misc/wholenumber.c \ |
292 $(TOP)/ext/misc/vfslog.c | 334 $(TOP)/ext/misc/vfslog.c \ |
| 335 $(TOP)/ext/fts5/fts5_tcl.c \ |
| 336 $(TOP)/ext/fts5/fts5_test_mi.c |
293 | 337 |
294 | 338 |
295 #TESTSRC += $(TOP)/ext/fts2/fts2_tokenizer.c | 339 #TESTSRC += $(TOP)/ext/fts2/fts2_tokenizer.c |
296 #TESTSRC += $(TOP)/ext/fts3/fts3_tokenizer.c | 340 #TESTSRC += $(TOP)/ext/fts3/fts3_tokenizer.c |
297 | 341 |
298 TESTSRC2 = \ | 342 TESTSRC2 = \ |
299 $(TOP)/src/attach.c \ | 343 $(TOP)/src/attach.c \ |
300 $(TOP)/src/backup.c \ | 344 $(TOP)/src/backup.c \ |
301 $(TOP)/src/btree.c \ | 345 $(TOP)/src/btree.c \ |
302 $(TOP)/src/build.c \ | 346 $(TOP)/src/build.c \ |
303 $(TOP)/src/date.c \ | 347 $(TOP)/src/date.c \ |
| 348 $(TOP)/src/dbstat.c \ |
304 $(TOP)/src/expr.c \ | 349 $(TOP)/src/expr.c \ |
305 $(TOP)/src/func.c \ | 350 $(TOP)/src/func.c \ |
306 $(TOP)/src/insert.c \ | 351 $(TOP)/src/insert.c \ |
307 $(TOP)/src/wal.c \ | 352 $(TOP)/src/wal.c \ |
308 $(TOP)/src/main.c \ | 353 $(TOP)/src/main.c \ |
309 $(TOP)/src/mem5.c \ | 354 $(TOP)/src/mem5.c \ |
310 $(TOP)/src/os.c \ | 355 $(TOP)/src/os.c \ |
311 $(TOP)/src/os_unix.c \ | 356 $(TOP)/src/os_unix.c \ |
312 $(TOP)/src/os_win.c \ | 357 $(TOP)/src/os_win.c \ |
313 $(TOP)/src/pager.c \ | 358 $(TOP)/src/pager.c \ |
314 $(TOP)/src/pragma.c \ | 359 $(TOP)/src/pragma.c \ |
315 $(TOP)/src/prepare.c \ | 360 $(TOP)/src/prepare.c \ |
316 $(TOP)/src/printf.c \ | 361 $(TOP)/src/printf.c \ |
317 $(TOP)/src/random.c \ | 362 $(TOP)/src/random.c \ |
318 $(TOP)/src/pcache.c \ | 363 $(TOP)/src/pcache.c \ |
319 $(TOP)/src/pcache1.c \ | 364 $(TOP)/src/pcache1.c \ |
320 $(TOP)/src/select.c \ | 365 $(TOP)/src/select.c \ |
321 $(TOP)/src/threads.c \ | 366 $(TOP)/src/threads.c \ |
322 $(TOP)/src/tokenize.c \ | 367 $(TOP)/src/tokenize.c \ |
323 $(TOP)/src/utf.c \ | 368 $(TOP)/src/utf.c \ |
324 $(TOP)/src/util.c \ | 369 $(TOP)/src/util.c \ |
325 $(TOP)/src/vdbeapi.c \ | 370 $(TOP)/src/vdbeapi.c \ |
326 $(TOP)/src/vdbeaux.c \ | 371 $(TOP)/src/vdbeaux.c \ |
327 $(TOP)/src/vdbe.c \ | 372 $(TOP)/src/vdbe.c \ |
328 $(TOP)/src/vdbemem.c \ | 373 $(TOP)/src/vdbemem.c \ |
329 $(TOP)/src/where.c \ | 374 $(TOP)/src/where.c \ |
| 375 $(TOP)/src/wherecode.c \ |
| 376 $(TOP)/src/whereexpr.c \ |
330 parse.c \ | 377 parse.c \ |
331 $(TOP)/ext/fts3/fts3.c \ | 378 $(TOP)/ext/fts3/fts3.c \ |
332 $(TOP)/ext/fts3/fts3_aux.c \ | 379 $(TOP)/ext/fts3/fts3_aux.c \ |
333 $(TOP)/ext/fts3/fts3_expr.c \ | 380 $(TOP)/ext/fts3/fts3_expr.c \ |
334 $(TOP)/ext/fts3/fts3_tokenizer.c \ | 381 $(TOP)/ext/fts3/fts3_tokenizer.c \ |
335 $(TOP)/ext/fts3/fts3_write.c \ | 382 $(TOP)/ext/fts3/fts3_write.c \ |
336 $(TOP)/ext/async/sqlite3async.c | 383 $(TOP)/ext/async/sqlite3async.c |
337 | 384 |
338 # Header files used by all library source files. | 385 # Header files used by all library source files. |
339 # | 386 # |
340 HDR = \ | 387 HDR = \ |
341 $(TOP)/src/btree.h \ | 388 $(TOP)/src/btree.h \ |
342 $(TOP)/src/btreeInt.h \ | 389 $(TOP)/src/btreeInt.h \ |
343 $(TOP)/src/hash.h \ | 390 $(TOP)/src/hash.h \ |
344 $(TOP)/src/hwtime.h \ | 391 $(TOP)/src/hwtime.h \ |
345 keywordhash.h \ | 392 keywordhash.h \ |
| 393 $(TOP)/src/msvc.h \ |
346 $(TOP)/src/mutex.h \ | 394 $(TOP)/src/mutex.h \ |
347 opcodes.h \ | 395 opcodes.h \ |
348 $(TOP)/src/os.h \ | 396 $(TOP)/src/os.h \ |
349 $(TOP)/src/os_common.h \ | 397 $(TOP)/src/os_common.h \ |
350 $(TOP)/src/os_setup.h \ | 398 $(TOP)/src/os_setup.h \ |
351 $(TOP)/src/os_win.h \ | 399 $(TOP)/src/os_win.h \ |
352 $(TOP)/src/pager.h \ | 400 $(TOP)/src/pager.h \ |
353 $(TOP)/src/pcache.h \ | 401 $(TOP)/src/pcache.h \ |
354 parse.h \ | 402 parse.h \ |
| 403 $(TOP)/src/pragma.h \ |
355 sqlite3.h \ | 404 sqlite3.h \ |
356 $(TOP)/src/sqlite3ext.h \ | 405 $(TOP)/src/sqlite3ext.h \ |
357 $(TOP)/src/sqliteInt.h \ | 406 $(TOP)/src/sqliteInt.h \ |
358 $(TOP)/src/sqliteLimit.h \ | 407 $(TOP)/src/sqliteLimit.h \ |
359 $(TOP)/src/vdbe.h \ | 408 $(TOP)/src/vdbe.h \ |
360 $(TOP)/src/vdbeInt.h \ | 409 $(TOP)/src/vdbeInt.h \ |
| 410 $(TOP)/src/vxworks.h \ |
361 $(TOP)/src/whereInt.h | 411 $(TOP)/src/whereInt.h |
362 | 412 |
363 # Header files used by extensions | 413 # Header files used by extensions |
364 # | 414 # |
365 EXTHDR += \ | 415 EXTHDR += \ |
366 $(TOP)/ext/fts1/fts1.h \ | 416 $(TOP)/ext/fts1/fts1.h \ |
367 $(TOP)/ext/fts1/fts1_hash.h \ | 417 $(TOP)/ext/fts1/fts1_hash.h \ |
368 $(TOP)/ext/fts1/fts1_tokenizer.h | 418 $(TOP)/ext/fts1/fts1_tokenizer.h |
369 EXTHDR += \ | 419 EXTHDR += \ |
370 $(TOP)/ext/fts2/fts2.h \ | 420 $(TOP)/ext/fts2/fts2.h \ |
371 $(TOP)/ext/fts2/fts2_hash.h \ | 421 $(TOP)/ext/fts2/fts2_hash.h \ |
372 $(TOP)/ext/fts2/fts2_tokenizer.h | 422 $(TOP)/ext/fts2/fts2_tokenizer.h |
373 EXTHDR += \ | 423 EXTHDR += \ |
374 $(TOP)/ext/fts3/fts3.h \ | 424 $(TOP)/ext/fts3/fts3.h \ |
375 $(TOP)/ext/fts3/fts3Int.h \ | 425 $(TOP)/ext/fts3/fts3Int.h \ |
376 $(TOP)/ext/fts3/fts3_hash.h \ | 426 $(TOP)/ext/fts3/fts3_hash.h \ |
377 $(TOP)/ext/fts3/fts3_tokenizer.h | 427 $(TOP)/ext/fts3/fts3_tokenizer.h |
378 EXTHDR += \ | 428 EXTHDR += \ |
379 $(TOP)/ext/rtree/rtree.h | 429 $(TOP)/ext/rtree/rtree.h |
380 EXTHDR += \ | 430 EXTHDR += \ |
381 $(TOP)/ext/icu/sqliteicu.h | 431 $(TOP)/ext/icu/sqliteicu.h |
382 EXTHDR += \ | 432 EXTHDR += \ |
| 433 $(TOP)/ext/fts5/fts5Int.h \ |
| 434 fts5parse.h \ |
| 435 $(TOP)/ext/fts5/fts5.h |
| 436 EXTHDR += \ |
383 $(TOP)/ext/userauth/sqlite3userauth.h | 437 $(TOP)/ext/userauth/sqlite3userauth.h |
384 | 438 |
| 439 # executables needed for testing |
| 440 # |
| 441 TESTPROGS = \ |
| 442 testfixture$(EXE) \ |
| 443 sqlite3$(EXE) \ |
| 444 sqlite3_analyzer$(EXE) \ |
| 445 sqldiff$(EXE) |
| 446 |
| 447 # Databases containing fuzzer test cases |
| 448 # |
| 449 FUZZDATA = \ |
| 450 $(TOP)/test/fuzzdata1.db \ |
| 451 $(TOP)/test/fuzzdata2.db \ |
| 452 $(TOP)/test/fuzzdata3.db \ |
| 453 $(TOP)/test/fuzzdata4.db |
| 454 |
| 455 # Standard options to testfixture |
| 456 # |
| 457 TESTOPTS = --verbose=file --output=test-out.txt |
| 458 |
| 459 # Extra compiler options for various shell tools |
| 460 # |
| 461 SHELL_OPT = -DSQLITE_ENABLE_JSON1 -DSQLITE_ENABLE_FTS4 -DSQLITE_ENABLE_FTS5 |
| 462 FUZZERSHELL_OPT = -DSQLITE_ENABLE_JSON1 |
| 463 FUZZCHECK_OPT = -DSQLITE_ENABLE_JSON1 -DSQLITE_ENABLE_MEMSYS5 |
| 464 |
385 # This is the default Makefile target. The objects listed here | 465 # This is the default Makefile target. The objects listed here |
386 # are what get build when you type just "make" with no arguments. | 466 # are what get build when you type just "make" with no arguments. |
387 # | 467 # |
388 all: sqlite3.h libsqlite3.a sqlite3$(EXE) | 468 all: sqlite3.h libsqlite3.a sqlite3$(EXE) |
389 | 469 |
390 libsqlite3.a: $(LIBOBJ) | 470 libsqlite3.a: $(LIBOBJ) |
391 $(AR) libsqlite3.a $(LIBOBJ) | 471 $(AR) libsqlite3.a $(LIBOBJ) |
392 $(RANLIB) libsqlite3.a | 472 $(RANLIB) libsqlite3.a |
393 | 473 |
394 sqlite3$(EXE): $(TOP)/src/shell.c libsqlite3.a sqlite3.h | 474 sqlite3$(EXE): $(TOP)/src/shell.c libsqlite3.a sqlite3.h |
395 » $(TCCX) $(READLINE_FLAGS) -o sqlite3$(EXE) \ | 475 » $(TCCX) $(READLINE_FLAGS) -o sqlite3$(EXE) $(SHELL_OPT) \ |
396 » » $(TOP)/src/shell.c \ | 476 » » $(TOP)/src/shell.c libsqlite3.a $(LIBREADLINE) $(TLIBS) $(THREAD
LIB) |
397 » » libsqlite3.a $(LIBREADLINE) $(TLIBS) $(THREADLIB) | 477 |
| 478 sqldiff$(EXE):» $(TOP)/tool/sqldiff.c sqlite3.c sqlite3.h |
| 479 » $(TCCX) -o sqldiff$(EXE) -DSQLITE_THREADSAFE=0 \ |
| 480 » » $(TOP)/tool/sqldiff.c sqlite3.c $(TLIBS) $(THREADLIB) |
| 481 |
| 482 fuzzershell$(EXE):» $(TOP)/tool/fuzzershell.c sqlite3.c sqlite3.h |
| 483 » $(TCCX) -o fuzzershell$(EXE) -DSQLITE_THREADSAFE=0 -DSQLITE_OMIT_LOAD_EX
TENSION \ |
| 484 » $(FUZZERSHELL_OPT) $(TOP)/tool/fuzzershell.c sqlite3.c \ |
| 485 » $(TLIBS) $(THREADLIB) |
| 486 |
| 487 fuzzcheck$(EXE):» $(TOP)/test/fuzzcheck.c sqlite3.c sqlite3.h |
| 488 » $(TCCX) -o fuzzcheck$(EXE) -DSQLITE_THREADSAFE=0 -DSQLITE_OMIT_LOAD_EXTE
NSION \ |
| 489 » » -DSQLITE_ENABLE_MEMSYS5 $(FUZZCHECK_OPT) \ |
| 490 » » $(TOP)/test/fuzzcheck.c sqlite3.c $(TLIBS) $(THREADLIB) |
398 | 491 |
399 mptester$(EXE): sqlite3.c $(TOP)/mptest/mptest.c | 492 mptester$(EXE): sqlite3.c $(TOP)/mptest/mptest.c |
400 $(TCCX) -o $@ -I. $(TOP)/mptest/mptest.c sqlite3.c \ | 493 $(TCCX) -o $@ -I. $(TOP)/mptest/mptest.c sqlite3.c \ |
401 $(TLIBS) $(THREADLIB) | 494 $(TLIBS) $(THREADLIB) |
402 | 495 |
| 496 MPTEST1=./mptester$(EXE) mptest.db $(TOP)/mptest/crash01.test --repeat 20 |
| 497 MPTEST2=./mptester$(EXE) mptest.db $(TOP)/mptest/multiwrite01.test --repeat 20 |
| 498 mptest: mptester$(EXE) |
| 499 rm -f mptest.db |
| 500 $(MPTEST1) --journalmode DELETE |
| 501 $(MPTEST2) --journalmode WAL |
| 502 $(MPTEST1) --journalmode WAL |
| 503 $(MPTEST2) --journalmode PERSIST |
| 504 $(MPTEST1) --journalmode PERSIST |
| 505 $(MPTEST2) --journalmode TRUNCATE |
| 506 $(MPTEST1) --journalmode TRUNCATE |
| 507 $(MPTEST2) --journalmode DELETE |
| 508 |
403 sqlite3.o: sqlite3.c | 509 sqlite3.o: sqlite3.c |
404 $(TCCX) -I. -c sqlite3.c | 510 $(TCCX) -I. -c sqlite3.c |
405 | 511 |
406 # This target creates a directory named "tsrc" and fills it with | 512 # This target creates a directory named "tsrc" and fills it with |
407 # copies of all of the C source code and header files needed to | 513 # copies of all of the C source code and header files needed to |
408 # build on the target system. Some of the C source code and header | 514 # build on the target system. Some of the C source code and header |
409 # files are automatically generated. This target takes care of | 515 # files are automatically generated. This target takes care of |
410 # all that automatic generation. | 516 # all that automatic generation. |
411 # | 517 # |
412 target_source:» $(SRC) $(TOP)/tool/vdbe-compress.tcl | 518 target_source:» $(SRC) $(TOP)/tool/vdbe-compress.tcl fts5.c |
413 rm -rf tsrc | 519 rm -rf tsrc |
414 mkdir tsrc | 520 mkdir tsrc |
415 cp -f $(SRC) tsrc | 521 cp -f $(SRC) tsrc |
416 rm tsrc/sqlite.h.in tsrc/parse.y | 522 rm tsrc/sqlite.h.in tsrc/parse.y |
417 tclsh $(TOP)/tool/vdbe-compress.tcl $(OPTS) <tsrc/vdbe.c >vdbe.new | 523 tclsh $(TOP)/tool/vdbe-compress.tcl $(OPTS) <tsrc/vdbe.c >vdbe.new |
418 mv vdbe.new tsrc/vdbe.c | 524 mv vdbe.new tsrc/vdbe.c |
| 525 cp fts5.c fts5.h tsrc |
419 touch target_source | 526 touch target_source |
420 | 527 |
421 sqlite3.c: target_source $(TOP)/tool/mksqlite3c.tcl | 528 sqlite3.c: target_source $(TOP)/tool/mksqlite3c.tcl |
422 tclsh $(TOP)/tool/mksqlite3c.tcl | 529 tclsh $(TOP)/tool/mksqlite3c.tcl |
423 cp tsrc/shell.c tsrc/sqlite3ext.h . | 530 cp tsrc/shell.c tsrc/sqlite3ext.h . |
424 echo '#ifndef USE_SYSTEM_SQLITE' >tclsqlite3.c | 531 echo '#ifndef USE_SYSTEM_SQLITE' >tclsqlite3.c |
425 cat sqlite3.c >>tclsqlite3.c | 532 cat sqlite3.c >>tclsqlite3.c |
426 echo '#endif /* USE_SYSTEM_SQLITE */' >>tclsqlite3.c | 533 echo '#endif /* USE_SYSTEM_SQLITE */' >>tclsqlite3.c |
427 cat $(TOP)/src/tclsqlite.c >>tclsqlite3.c | 534 cat $(TOP)/src/tclsqlite.c >>tclsqlite3.c |
428 | 535 |
| 536 sqlite3ext.h: target_source |
| 537 cp tsrc/sqlite3ext.h . |
| 538 |
429 sqlite3.c-debug: target_source $(TOP)/tool/mksqlite3c.tcl | 539 sqlite3.c-debug: target_source $(TOP)/tool/mksqlite3c.tcl |
430 tclsh $(TOP)/tool/mksqlite3c.tcl --linemacros | 540 tclsh $(TOP)/tool/mksqlite3c.tcl --linemacros |
431 echo '#ifndef USE_SYSTEM_SQLITE' >tclsqlite3.c | 541 echo '#ifndef USE_SYSTEM_SQLITE' >tclsqlite3.c |
432 cat sqlite3.c >>tclsqlite3.c | 542 cat sqlite3.c >>tclsqlite3.c |
433 echo '#endif /* USE_SYSTEM_SQLITE */' >>tclsqlite3.c | 543 echo '#endif /* USE_SYSTEM_SQLITE */' >>tclsqlite3.c |
434 echo '#line 1 "tclsqlite.c"' >>tclsqlite3.c | 544 echo '#line 1 "tclsqlite.c"' >>tclsqlite3.c |
435 cat $(TOP)/src/tclsqlite.c >>tclsqlite3.c | 545 cat $(TOP)/src/tclsqlite.c >>tclsqlite3.c |
436 | 546 |
437 sqlite3-all.c: sqlite3.c $(TOP)/tool/split-sqlite3c.tcl | 547 sqlite3-all.c: sqlite3.c $(TOP)/tool/split-sqlite3c.tcl |
438 tclsh $(TOP)/tool/split-sqlite3c.tcl | 548 tclsh $(TOP)/tool/split-sqlite3c.tcl |
439 | 549 |
440 fts2amal.c: target_source $(TOP)/ext/fts2/mkfts2amal.tcl | 550 fts2amal.c: target_source $(TOP)/ext/fts2/mkfts2amal.tcl |
441 tclsh $(TOP)/ext/fts2/mkfts2amal.tcl | 551 tclsh $(TOP)/ext/fts2/mkfts2amal.tcl |
442 | 552 |
443 fts3amal.c: target_source $(TOP)/ext/fts3/mkfts3amal.tcl | 553 fts3amal.c: target_source $(TOP)/ext/fts3/mkfts3amal.tcl |
444 tclsh $(TOP)/ext/fts3/mkfts3amal.tcl | 554 tclsh $(TOP)/ext/fts3/mkfts3amal.tcl |
445 | 555 |
446 # Rules to build the LEMON compiler generator | 556 # Rules to build the LEMON compiler generator |
447 # | 557 # |
448 lemon:» $(TOP)/tool/lemon.c $(TOP)/src/lempar.c | 558 lemon:» $(TOP)/tool/lemon.c $(TOP)/tool/lempar.c |
449 $(BCC) -o lemon $(TOP)/tool/lemon.c | 559 $(BCC) -o lemon $(TOP)/tool/lemon.c |
450 » cp $(TOP)/src/lempar.c . | 560 » cp $(TOP)/tool/lempar.c . |
451 | 561 |
452 # Rules to build individual *.o files from generated *.c files. This | 562 # Rules to build individual *.o files from generated *.c files. This |
453 # applies to: | 563 # applies to: |
454 # | 564 # |
455 # parse.o | 565 # parse.o |
456 # opcodes.o | 566 # opcodes.o |
457 # | 567 # |
458 %.o: %.c $(HDR) | 568 %.o: %.c $(HDR) |
459 $(TCCX) -c $< | 569 $(TCCX) -c $< |
460 | 570 |
461 # Rules to build individual *.o files from files in the src directory. | 571 # Rules to build individual *.o files from files in the src directory. |
462 # | 572 # |
463 %.o: $(TOP)/src/%.c $(HDR) | 573 %.o: $(TOP)/src/%.c $(HDR) |
464 $(TCCX) -c $< | 574 $(TCCX) -c $< |
465 | 575 |
466 tclsqlite.o: $(TOP)/src/tclsqlite.c $(HDR) | 576 tclsqlite.o: $(TOP)/src/tclsqlite.c $(HDR) |
467 $(TCCX) $(TCL_FLAGS) -c $(TOP)/src/tclsqlite.c | 577 $(TCCX) $(TCL_FLAGS) -c $(TOP)/src/tclsqlite.c |
468 | 578 |
469 | 579 |
470 | 580 |
471 # Rules to build opcodes.c and opcodes.h | 581 # Rules to build opcodes.c and opcodes.h |
472 # | 582 # |
473 opcodes.c:» opcodes.h $(TOP)/mkopcodec.awk | 583 opcodes.c:» opcodes.h $(TOP)/tool/mkopcodec.tcl |
474 » $(NAWK) -f $(TOP)/mkopcodec.awk opcodes.h >opcodes.c | 584 » tclsh $(TOP)/tool/mkopcodec.tcl opcodes.h >opcodes.c |
475 | 585 |
476 opcodes.h:» parse.h $(TOP)/src/vdbe.c $(TOP)/mkopcodeh.awk | 586 opcodes.h:» parse.h $(TOP)/src/vdbe.c $(TOP)/tool/mkopcodeh.tcl |
477 cat parse.h $(TOP)/src/vdbe.c | \ | 587 cat parse.h $(TOP)/src/vdbe.c | \ |
478 » » $(NAWK) -f $(TOP)/mkopcodeh.awk >opcodes.h | 588 » » tclsh $(TOP)/tool/mkopcodeh.tcl >opcodes.h |
479 | 589 |
480 # Rules to build parse.c and parse.h - the outputs of lemon. | 590 # Rules to build parse.c and parse.h - the outputs of lemon. |
481 # | 591 # |
482 parse.h: parse.c | 592 parse.h: parse.c |
483 | 593 |
484 parse.c:» $(TOP)/src/parse.y lemon $(TOP)/addopcodes.awk | 594 parse.c:» $(TOP)/src/parse.y lemon $(TOP)/tool/addopcodes.tcl |
485 cp $(TOP)/src/parse.y . | 595 cp $(TOP)/src/parse.y . |
486 rm -f parse.h | 596 rm -f parse.h |
487 » ./lemon $(OPTS) parse.y | 597 » ./lemon -s $(OPTS) parse.y |
488 mv parse.h parse.h.temp | 598 mv parse.h parse.h.temp |
489 » $(NAWK) -f $(TOP)/addopcodes.awk parse.h.temp >parse.h | 599 » tclsh $(TOP)/tool/addopcodes.tcl parse.h.temp >parse.h |
490 | 600 |
491 sqlite3.h: $(TOP)/src/sqlite.h.in $(TOP)/manifest.uuid $(TOP)/VERSION $(TOP
)/ext/rtree/sqlite3rtree.h | 601 sqlite3.h: $(TOP)/src/sqlite.h.in $(TOP)/manifest.uuid $(TOP)/VERSION $(TOP
)/ext/rtree/sqlite3rtree.h |
492 tclsh $(TOP)/tool/mksqlite3h.tcl $(TOP) >sqlite3.h | 602 tclsh $(TOP)/tool/mksqlite3h.tcl $(TOP) >sqlite3.h |
493 | 603 |
494 keywordhash.h: $(TOP)/tool/mkkeywordhash.c | 604 keywordhash.h: $(TOP)/tool/mkkeywordhash.c |
495 $(BCC) -o mkkeywordhash $(OPTS) $(TOP)/tool/mkkeywordhash.c | 605 $(BCC) -o mkkeywordhash $(OPTS) $(TOP)/tool/mkkeywordhash.c |
496 ./mkkeywordhash >keywordhash.h | 606 ./mkkeywordhash >keywordhash.h |
497 | 607 |
498 | 608 |
499 | 609 |
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
552 | 662 |
553 fts3_unicode.o: $(TOP)/ext/fts3/fts3_unicode.c $(HDR) $(EXTHDR) | 663 fts3_unicode.o: $(TOP)/ext/fts3/fts3_unicode.c $(HDR) $(EXTHDR) |
554 $(TCCX) -DSQLITE_CORE -c $(TOP)/ext/fts3/fts3_unicode.c | 664 $(TCCX) -DSQLITE_CORE -c $(TOP)/ext/fts3/fts3_unicode.c |
555 | 665 |
556 fts3_unicode2.o: $(TOP)/ext/fts3/fts3_unicode2.c $(HDR) $(EXTHDR) | 666 fts3_unicode2.o: $(TOP)/ext/fts3/fts3_unicode2.c $(HDR) $(EXTHDR) |
557 $(TCCX) -DSQLITE_CORE -c $(TOP)/ext/fts3/fts3_unicode2.c | 667 $(TCCX) -DSQLITE_CORE -c $(TOP)/ext/fts3/fts3_unicode2.c |
558 | 668 |
559 fts3_write.o: $(TOP)/ext/fts3/fts3_write.c $(HDR) $(EXTHDR) | 669 fts3_write.o: $(TOP)/ext/fts3/fts3_write.c $(HDR) $(EXTHDR) |
560 $(TCCX) -DSQLITE_CORE -c $(TOP)/ext/fts3/fts3_write.c | 670 $(TCCX) -DSQLITE_CORE -c $(TOP)/ext/fts3/fts3_write.c |
561 | 671 |
| 672 fts5.o: fts5.c |
| 673 $(TCCX) -DSQLITE_CORE -c fts5.c |
| 674 |
| 675 json1.o: $(TOP)/ext/misc/json1.c |
| 676 $(TCCX) -DSQLITE_CORE -c $(TOP)/ext/misc/json1.c |
| 677 |
562 rtree.o: $(TOP)/ext/rtree/rtree.c $(HDR) $(EXTHDR) | 678 rtree.o: $(TOP)/ext/rtree/rtree.c $(HDR) $(EXTHDR) |
563 $(TCCX) -DSQLITE_CORE -c $(TOP)/ext/rtree/rtree.c | 679 $(TCCX) -DSQLITE_CORE -c $(TOP)/ext/rtree/rtree.c |
564 | 680 |
| 681 |
| 682 |
| 683 fts5parse.c: $(TOP)/ext/fts5/fts5parse.y lemon |
| 684 cp $(TOP)/ext/fts5/fts5parse.y . |
| 685 rm -f fts5parse.h |
| 686 ./lemon $(OPTS) fts5parse.y |
| 687 |
| 688 fts5parse.h: fts5parse.c |
| 689 |
| 690 fts5.c: $(FTS5_SRC) $(FTS5_HDR) |
| 691 tclsh $(TOP)/ext/fts5/tool/mkfts5c.tcl |
| 692 cp $(TOP)/ext/fts5/fts5.h . |
| 693 |
565 userauth.o: $(TOP)/ext/userauth/userauth.c $(HDR) $(EXTHDR) | 694 userauth.o: $(TOP)/ext/userauth/userauth.c $(HDR) $(EXTHDR) |
566 $(TCCX) -DSQLITE_CORE -c $(TOP)/ext/userauth/userauth.c | 695 $(TCCX) -DSQLITE_CORE -c $(TOP)/ext/userauth/userauth.c |
567 | 696 |
| 697 sqlite3rbu.o: $(TOP)/ext/rbu/sqlite3rbu.c $(HDR) $(EXTHDR) |
| 698 $(TCCX) -DSQLITE_CORE -c $(TOP)/ext/rbu/sqlite3rbu.c |
| 699 |
568 | 700 |
569 # Rules for building test programs and for running tests | 701 # Rules for building test programs and for running tests |
570 # | 702 # |
571 tclsqlite3: $(TOP)/src/tclsqlite.c libsqlite3.a | 703 tclsqlite3: $(TOP)/src/tclsqlite.c libsqlite3.a |
572 $(TCCX) $(TCL_FLAGS) -DTCLSH=1 -o tclsqlite3 \ | 704 $(TCCX) $(TCL_FLAGS) -DTCLSH=1 -o tclsqlite3 \ |
573 $(TOP)/src/tclsqlite.c libsqlite3.a $(LIBTCL) $(THREADLIB) | 705 $(TOP)/src/tclsqlite.c libsqlite3.a $(LIBTCL) $(THREADLIB) |
574 | 706 |
575 sqlite3_analyzer.c: sqlite3.c $(TOP)/src/test_stat.c $(TOP)/src/tclsqlite.c $(TO
P)/tool/spaceanal.tcl | 707 sqlite3_analyzer.c: sqlite3.c $(TOP)/src/tclsqlite.c $(TOP)/tool/spaceanal.tcl |
576 echo "#define TCLSH 2" > $@ | 708 echo "#define TCLSH 2" > $@ |
577 » cat sqlite3.c $(TOP)/src/test_stat.c $(TOP)/src/tclsqlite.c >> $@ | 709 » echo "#define SQLITE_ENABLE_DBSTAT_VTAB 1" >> $@ |
| 710 » cat sqlite3.c $(TOP)/src/tclsqlite.c >> $@ |
578 echo "static const char *tclsh_main_loop(void){" >> $@ | 711 echo "static const char *tclsh_main_loop(void){" >> $@ |
579 echo "static const char *zMainloop = " >> $@ | 712 echo "static const char *zMainloop = " >> $@ |
580 » $(NAWK) -f $(TOP)/tool/tostr.awk $(TOP)/tool/spaceanal.tcl >> $@ | 713 » tclsh $(TOP)/tool/tostr.tcl $(TOP)/tool/spaceanal.tcl >> $@ |
581 echo "; return zMainloop; }" >> $@ | 714 echo "; return zMainloop; }" >> $@ |
582 | 715 |
583 sqlite3_analyzer$(EXE): sqlite3_analyzer.c | 716 sqlite3_analyzer$(EXE): sqlite3_analyzer.c |
584 $(TCCX) $(TCL_FLAGS) sqlite3_analyzer.c -o $@ $(LIBTCL) $(THREADLIB) | 717 $(TCCX) $(TCL_FLAGS) sqlite3_analyzer.c -o $@ $(LIBTCL) $(THREADLIB) |
585 | 718 |
586 # Rules to build the 'testfixture' application. | 719 # Rules to build the 'testfixture' application. |
587 # | 720 # |
588 TESTFIXTURE_FLAGS = -DSQLITE_TEST=1 -DSQLITE_CRASH_TEST=1 | 721 TESTFIXTURE_FLAGS = -DSQLITE_TEST=1 -DSQLITE_CRASH_TEST=1 |
589 TESTFIXTURE_FLAGS += -DSQLITE_SERVER=1 -DSQLITE_PRIVATE="" -DSQLITE_CORE | 722 TESTFIXTURE_FLAGS += -DSQLITE_SERVER=1 -DSQLITE_PRIVATE="" -DSQLITE_CORE |
590 | 723 |
591 testfixture$(EXE): $(TESTSRC2) libsqlite3.a $(TESTSRC) $(TOP)/src/tclsqlite.c | 724 testfixture$(EXE): $(TESTSRC2) libsqlite3.a $(TESTSRC) $(TOP)/src/tclsqlite.c |
592 $(TCCX) $(TCL_FLAGS) -DTCLSH=1 $(TESTFIXTURE_FLAGS) \ | 725 $(TCCX) $(TCL_FLAGS) -DTCLSH=1 $(TESTFIXTURE_FLAGS) \ |
593 $(TESTSRC) $(TESTSRC2) $(TOP)/src/tclsqlite.c \ | 726 $(TESTSRC) $(TESTSRC2) $(TOP)/src/tclsqlite.c \ |
594 -o testfixture$(EXE) $(LIBTCL) libsqlite3.a $(THREADLIB) | 727 -o testfixture$(EXE) $(LIBTCL) libsqlite3.a $(THREADLIB) |
595 | 728 |
596 amalgamation-testfixture$(EXE): sqlite3.c $(TESTSRC) $(TOP)/src/tclsqlite.c | 729 amalgamation-testfixture$(EXE): sqlite3.c $(TESTSRC) $(TOP)/src/tclsqlite.c |
597 $(TCCX) $(TCL_FLAGS) -DTCLSH=1 $(TESTFIXTURE_FLAGS) \ | 730 $(TCCX) $(TCL_FLAGS) -DTCLSH=1 $(TESTFIXTURE_FLAGS) \ |
598 $(TESTSRC) $(TOP)/src/tclsqlite.c sqlite3.c \ | 731 $(TESTSRC) $(TOP)/src/tclsqlite.c sqlite3.c \ |
599 -o testfixture$(EXE) $(LIBTCL) $(THREADLIB) | 732 -o testfixture$(EXE) $(LIBTCL) $(THREADLIB) |
600 | 733 |
601 fts3-testfixture$(EXE): sqlite3.c fts3amal.c $(TESTSRC) $(TOP)/src/tclsqlite.c | 734 fts3-testfixture$(EXE): sqlite3.c fts3amal.c $(TESTSRC) $(TOP)/src/tclsqlite.c |
602 $(TCCX) $(TCL_FLAGS) -DTCLSH=1 $(TESTFIXTURE_FLAGS) \ | 735 $(TCCX) $(TCL_FLAGS) -DTCLSH=1 $(TESTFIXTURE_FLAGS) \ |
603 -DSQLITE_ENABLE_FTS3=1 \ | 736 -DSQLITE_ENABLE_FTS3=1 \ |
604 $(TESTSRC) $(TOP)/src/tclsqlite.c sqlite3.c fts3amal.c \ | 737 $(TESTSRC) $(TOP)/src/tclsqlite.c sqlite3.c fts3amal.c \ |
605 -o testfixture$(EXE) $(LIBTCL) $(THREADLIB) | 738 -o testfixture$(EXE) $(LIBTCL) $(THREADLIB) |
606 | 739 |
607 fulltest:» testfixture$(EXE) sqlite3$(EXE) | 740 fulltest:» $(TESTPROGS) fuzztest |
608 » ./testfixture$(EXE) $(TOP)/test/all.test | 741 » ./testfixture$(EXE) $(TOP)/test/all.test $(TESTOPTS) |
609 | 742 |
610 soaktest:» testfixture$(EXE) sqlite3$(EXE) | 743 soaktest:» $(TESTPROGS) |
611 » ./testfixture$(EXE) $(TOP)/test/all.test -soak=1 | 744 » ./testfixture$(EXE) $(TOP)/test/all.test -soak=1 $(TESTOPTS) |
612 | 745 |
613 fulltestonly:» testfixture$(EXE) sqlite3$(EXE) | 746 fulltestonly:» $(TESTPROGS) fuzztest |
614 » ./testfixture$(EXE) $(TOP)/test/full.test | 747 » ./testfixture$(EXE) $(TOP)/test/full.test $(TESTOPTS) |
615 | 748 |
616 queryplantest: testfixture$(EXE) sqlite3$(EXE) | 749 queryplantest: testfixture$(EXE) sqlite3$(EXE) |
617 » ./testfixture$(EXE) $(TOP)/test/permutations.test queryplanner | 750 » ./testfixture$(EXE) $(TOP)/test/permutations.test queryplanner $(TESTOPT
S) |
618 | 751 |
619 test:» testfixture$(EXE) sqlite3$(EXE) | 752 fuzztest:» fuzzcheck$(EXE) $(FUZZDATA) |
620 » ./testfixture$(EXE) $(TOP)/test/veryquick.test | 753 » ./fuzzcheck$(EXE) $(FUZZDATA) |
| 754 |
| 755 fastfuzztest:» fuzzcheck$(EXE) $(FUZZDATA) |
| 756 » ./fuzzcheck$(EXE) --limit-mem 100M $(FUZZDATA) |
| 757 |
| 758 valgrindfuzz:» fuzzcheck$(EXE) $(FUZZDATA) |
| 759 » valgrind ./fuzzcheck$(EXE) --cell-size-check --limit-mem 10M --timeout 6
00 $(FUZZDATA) |
| 760 |
| 761 # A very quick test using only testfixture and omitting all the slower |
| 762 # tests. Designed to run in under 3 minutes on a workstation. |
| 763 # |
| 764 quicktest:» ./testfixture$(EXE) |
| 765 » ./testfixture$(EXE) $(TOP)/test/extraquick.test $(TESTOPTS) |
| 766 |
| 767 # The default test case. Runs most of the faster standard TCL tests, |
| 768 # and fuzz tests, and sqlite3_analyzer and sqldiff tests. |
| 769 # |
| 770 test:» $(TESTPROGS) fastfuzztest |
| 771 » ./testfixture$(EXE) $(TOP)/test/veryquick.test $(TESTOPTS) |
| 772 |
| 773 # Run a test using valgrind. This can take a really long time |
| 774 # because valgrind is so much slower than a native machine. |
| 775 # |
| 776 valgrindtest:» $(TESTPROGS) valgrindfuzz |
| 777 » OMIT_MISUSE=1 valgrind -v \ |
| 778 » ./testfixture$(EXE) $(TOP)/test/permutations.test valgrind $(TESTOPTS) |
| 779 |
| 780 # A very fast test that checks basic sanity. The name comes from |
| 781 # the 60s-era electronics testing: "Turn it on and see if smoke |
| 782 # comes out." |
| 783 # |
| 784 smoketest:» $(TESTPROGS) fuzzcheck$(EXE) |
| 785 » ./testfixture$(EXE) $(TOP)/test/main.test $(TESTOPTS) |
621 | 786 |
622 # The next two rules are used to support the "threadtest" target. Building | 787 # The next two rules are used to support the "threadtest" target. Building |
623 # threadtest runs a few thread-safety tests that are implemented in C. This | 788 # threadtest runs a few thread-safety tests that are implemented in C. This |
624 # target is invoked by the releasetest.tcl script. | 789 # target is invoked by the releasetest.tcl script. |
625 # | 790 # |
626 threadtest3$(EXE): sqlite3.o $(TOP)/test/threadtest3.c $(TOP)/test/tt3_checkpoin
t.c | 791 THREADTEST3_SRC = $(TOP)/test/threadtest3.c \ |
627 » $(TCCX) -O2 sqlite3.o $(TOP)/test/threadtest3.c \ | 792 $(TOP)/test/tt3_checkpoint.c \ |
628 » » -o threadtest3$(EXE) $(THREADLIB) | 793 $(TOP)/test/tt3_index.c \ |
| 794 $(TOP)/test/tt3_vacuum.c \ |
| 795 $(TOP)/test/tt3_stress.c \ |
| 796 $(TOP)/test/tt3_lookaside1.c |
| 797 |
| 798 threadtest3$(EXE): sqlite3.o $(THREADTEST3_SRC) $(TOP)/src/test_multiplex.c |
| 799 » $(TCCX) $(TOP)/test/threadtest3.c $(TOP)/src/test_multiplex.c sqlite3.o
-o $@ $(THREADLIB) |
629 | 800 |
630 threadtest: threadtest3$(EXE) | 801 threadtest: threadtest3$(EXE) |
631 ./threadtest3$(EXE) | 802 ./threadtest3$(EXE) |
632 | 803 |
633 TEST_EXTENSION = $(SHPREFIX)testloadext.$(SO) | 804 TEST_EXTENSION = $(SHPREFIX)testloadext.$(SO) |
634 $(TEST_EXTENSION): $(TOP)/src/test_loadext.c | 805 $(TEST_EXTENSION): $(TOP)/src/test_loadext.c |
635 $(MKSHLIB) $(TOP)/src/test_loadext.c -o $(TEST_EXTENSION) | 806 $(MKSHLIB) $(TOP)/src/test_loadext.c -o $(TEST_EXTENSION) |
636 | 807 |
637 extensiontest: testfixture$(EXE) $(TEST_EXTENSION) | 808 extensiontest: testfixture$(EXE) $(TEST_EXTENSION) |
638 ./testfixture$(EXE) $(TOP)/test/loadext.test | 809 ./testfixture$(EXE) $(TOP)/test/loadext.test |
(...skipping 23 matching lines...) Expand all Loading... |
662 $(TOP)/tool/rollback-test.c sqlite3.o $(THREADLIB) | 833 $(TOP)/tool/rollback-test.c sqlite3.o $(THREADLIB) |
663 | 834 |
664 LogEst$(EXE): $(TOP)/tool/logest.c sqlite3.h | 835 LogEst$(EXE): $(TOP)/tool/logest.c sqlite3.h |
665 $(TCC) -o LogEst$(EXE) $(TOP)/tool/logest.c | 836 $(TCC) -o LogEst$(EXE) $(TOP)/tool/logest.c |
666 | 837 |
667 wordcount$(EXE): $(TOP)/test/wordcount.c sqlite3.c | 838 wordcount$(EXE): $(TOP)/test/wordcount.c sqlite3.c |
668 $(TCC) -DSQLITE_THREADSAFE=0 -DSQLITE_OMIT_LOAD_EXTENSION -o wordcount$(
EXE) \ | 839 $(TCC) -DSQLITE_THREADSAFE=0 -DSQLITE_OMIT_LOAD_EXTENSION -o wordcount$(
EXE) \ |
669 $(TOP)/test/wordcount.c sqlite3.c | 840 $(TOP)/test/wordcount.c sqlite3.c |
670 | 841 |
671 speedtest1$(EXE): $(TOP)/test/speedtest1.c sqlite3.o | 842 speedtest1$(EXE): $(TOP)/test/speedtest1.c sqlite3.o |
672 » $(TCC) -I. -o speedtest1$(EXE) $(TOP)/test/speedtest1.c sqlite3.o $(THRE
ADLIB) | 843 » $(TCC) -I. $(OTAFLAGS) -o speedtest1$(EXE) $(TOP)/test/speedtest1.c sqli
te3.o $(THREADLIB) |
| 844 |
| 845 rbu$(EXE): $(TOP)/ext/rbu/rbu.c $(TOP)/ext/rbu/sqlite3rbu.c sqlite3.o |
| 846 » $(TCC) -I. -o rbu$(EXE) $(TOP)/ext/rbu/rbu.c sqlite3.o \ |
| 847 » $(THREADLIB) |
| 848 |
| 849 loadfts: $(TOP)/tool/loadfts.c libsqlite3.a |
| 850 » $(TCC) $(TOP)/tool/loadfts.c libsqlite3.a -o loadfts $(THREADLIB) |
673 | 851 |
674 # This target will fail if the SQLite amalgamation contains any exported | 852 # This target will fail if the SQLite amalgamation contains any exported |
675 # symbols that do not begin with "sqlite3_". It is run as part of the | 853 # symbols that do not begin with "sqlite3_". It is run as part of the |
676 # releasetest.tcl script. | 854 # releasetest.tcl script. |
677 # | 855 # |
678 checksymbols: sqlite3.o | 856 checksymbols: sqlite3.o |
679 nm -g --defined-only sqlite3.o | grep -v " sqlite3_" ; test $$? -ne 0 | 857 nm -g --defined-only sqlite3.o | grep -v " sqlite3_" ; test $$? -ne 0 |
680 | 858 |
681 # Build the amalgamation-autoconf package. | 859 # Build the amalgamation-autoconf package. |
682 # | 860 # |
683 dist: sqlite3.c | 861 amalgamation-tarball: sqlite3.c |
684 TOP=$(TOP) sh $(TOP)/tool/mkautoconfamal.sh | 862 TOP=$(TOP) sh $(TOP)/tool/mkautoconfamal.sh |
685 | 863 |
686 | 864 |
687 # Standard install and cleanup targets | 865 # Standard install and cleanup targets |
688 # | 866 # |
689 install: sqlite3 libsqlite3.a sqlite3.h | 867 install: sqlite3 libsqlite3.a sqlite3.h |
690 mv sqlite3 /usr/bin | 868 mv sqlite3 /usr/bin |
691 mv libsqlite3.a /usr/lib | 869 mv libsqlite3.a /usr/lib |
692 mv sqlite3.h /usr/include | 870 mv sqlite3.h /usr/include |
693 | 871 |
(...skipping 18 matching lines...) Expand all Loading... |
712 rm -f showstat4 showstat4.exe | 890 rm -f showstat4 showstat4.exe |
713 rm -f showwal showwal.exe | 891 rm -f showwal showwal.exe |
714 rm -f speedtest1 speedtest1.exe | 892 rm -f speedtest1 speedtest1.exe |
715 rm -f wordcount wordcount.exe | 893 rm -f wordcount wordcount.exe |
716 rm -f sqlite3.c sqlite3-*.c fts?amal.c tclsqlite3.c | 894 rm -f sqlite3.c sqlite3-*.c fts?amal.c tclsqlite3.c |
717 rm -f sqlite3rc.h | 895 rm -f sqlite3rc.h |
718 rm -f shell.c sqlite3ext.h | 896 rm -f shell.c sqlite3ext.h |
719 rm -f sqlite3_analyzer sqlite3_analyzer.exe sqlite3_analyzer.c | 897 rm -f sqlite3_analyzer sqlite3_analyzer.exe sqlite3_analyzer.c |
720 rm -f sqlite-*-output.vsix | 898 rm -f sqlite-*-output.vsix |
721 rm -f mptester mptester.exe | 899 rm -f mptester mptester.exe |
| 900 rm -f fuzzershell fuzzershell.exe |
| 901 rm -f fuzzcheck fuzzcheck.exe |
| 902 rm -f sqldiff sqldiff.exe |
| 903 rm -f fts5.* fts5parse.* |
OLD | NEW |