OLD | NEW |
| (Empty) |
1 #!/usr/make | |
2 # | |
3 # Makefile for SQLITE | |
4 # | |
5 # This makefile is suppose to be configured automatically using the | |
6 # autoconf. But if that does not work for you, you can configure | |
7 # the makefile manually. Just set the parameters below to values that | |
8 # work well for your system. | |
9 # | |
10 # If the configure script does not work out-of-the-box, you might | |
11 # be able to get it to work by giving it some hints. See the comment | |
12 # at the beginning of configure.in for additional information. | |
13 # | |
14 | |
15 # The toplevel directory of the source tree. This is the directory | |
16 # that contains this "Makefile.in" and the "configure.in" script. | |
17 # | |
18 TOP = @srcdir@ | |
19 | |
20 # C Compiler and options for use in building executables that | |
21 # will run on the platform that is doing the build. | |
22 # | |
23 BCC = @BUILD_CC@ @BUILD_CFLAGS@ | |
24 | |
25 # C Compile and options for use in building executables that | |
26 # will run on the target platform. (BCC and TCC are usually the | |
27 # same unless your are cross-compiling.) | |
28 # | |
29 TCC = @CC@ @CPPFLAGS@ @CFLAGS@ -I. -I${TOP}/src -I${TOP}/ext/rtree | |
30 | |
31 # Define this for the autoconf-based build, so that the code knows it can | |
32 # include the generated config.h | |
33 # | |
34 TCC += -D_HAVE_SQLITE_CONFIG_H -DBUILD_sqlite | |
35 | |
36 # Define -DNDEBUG to compile without debugging (i.e., for production usage) | |
37 # Omitting the define will cause extra debugging code to be inserted and | |
38 # includes extra comments when "EXPLAIN stmt" is used. | |
39 # | |
40 TCC += @TARGET_DEBUG@ @XTHREADCONNECT@ | |
41 | |
42 # Compiler options needed for programs that use the TCL library. | |
43 # | |
44 TCC += @TCL_INCLUDE_SPEC@ | |
45 | |
46 # The library that programs using TCL must link against. | |
47 # | |
48 LIBTCL = @TCL_LIB_SPEC@ | |
49 | |
50 # Compiler options needed for programs that use the readline() library. | |
51 # | |
52 READLINE_FLAGS = -DHAVE_READLINE=@TARGET_HAVE_READLINE@ @TARGET_READLINE_INC@ | |
53 | |
54 # The library that programs using readline() must link against. | |
55 # | |
56 LIBREADLINE = @TARGET_READLINE_LIBS@ | |
57 | |
58 # Should the database engine be compiled threadsafe | |
59 # | |
60 TCC += -DSQLITE_THREADSAFE=@SQLITE_THREADSAFE@ | |
61 | |
62 # Any target libraries which libsqlite must be linked against | |
63 # | |
64 TLIBS = @LIBS@ | |
65 | |
66 # Flags controlling use of the in memory btree implementation | |
67 # | |
68 # SQLITE_TEMP_STORE is 0 to force temporary tables to be in a file, 1 to | |
69 # default to file, 2 to default to memory, and 3 to force temporary | |
70 # tables to always be in memory. | |
71 # | |
72 TEMP_STORE = -DSQLITE_TEMP_STORE=@TEMP_STORE@ | |
73 | |
74 # Enable/disable loadable extensions, and other optional features | |
75 # based on configuration. (-DSQLITE_OMIT*, -DSQLITE_ENABLE*). | |
76 # The same set of OMIT and ENABLE flags should be passed to the | |
77 # LEMON parser generator and the mkkeywordhash tool as well. | |
78 OPT_FEATURE_FLAGS = @OPT_FEATURE_FLAGS@ | |
79 | |
80 TCC += $(OPT_FEATURE_FLAGS) | |
81 | |
82 # Add in any optional parameters specified on the make commane line | |
83 # ie. make "OPTS=-DSQLITE_ENABLE_FOO=1 -DSQLITE_OMIT_FOO=1". | |
84 TCC += $(OPTS) | |
85 | |
86 # Version numbers and release number for the SQLite being compiled. | |
87 # | |
88 VERSION = @VERSION@ | |
89 VERSION_NUMBER = @VERSION_NUMBER@ | |
90 RELEASE = @RELEASE@ | |
91 | |
92 # Filename extensions | |
93 # | |
94 BEXE = @BUILD_EXEEXT@ | |
95 TEXE = @TARGET_EXEEXT@ | |
96 | |
97 # The following variable is "1" if the configure script was able to locate | |
98 # the tclConfig.sh file. It is an empty string otherwise. When this | |
99 # variable is "1", the TCL extension library (libtclsqlite3.so) is built | |
100 # and installed. | |
101 # | |
102 HAVE_TCL = @HAVE_TCL@ | |
103 | |
104 # This is the command to use for tclsh - normally just "tclsh", but we may | |
105 # know the specific version we want to use | |
106 # | |
107 TCLSH_CMD = @TCLSH_CMD@ | |
108 | |
109 # Where do we want to install the tcl plugin | |
110 # | |
111 TCLLIBDIR = @TCLLIBDIR@ | |
112 | |
113 # The suffix used on shared libraries. Ex: ".dll", ".so", ".dylib" | |
114 # | |
115 SHLIB_SUFFIX = @TCL_SHLIB_SUFFIX@ | |
116 | |
117 # If gcov support was enabled by the configure script, add the appropriate | |
118 # flags here. It's not always as easy as just having the user add the right | |
119 # CFLAGS / LDFLAGS, because libtool wants to use CFLAGS when linking, which | |
120 # causes build errors with -fprofile-arcs -ftest-coverage with some GCCs. | |
121 # Supposedly GCC does the right thing if you use --coverage, but in | |
122 # practice it still fails. See: | |
123 # | |
124 # http://www.mail-archive.com/debian-gcc@lists.debian.org/msg26197.html | |
125 # | |
126 # for more info. | |
127 # | |
128 GCOV_CFLAGS1 = -DSQLITE_COVERAGE_TEST=1 -fprofile-arcs -ftest-coverage | |
129 GCOV_LDFLAGS1 = -lgcov | |
130 USE_GCOV = @USE_GCOV@ | |
131 LTCOMPILE_EXTRAS += $(GCOV_CFLAGS$(USE_GCOV)) | |
132 LTLINK_EXTRAS += $(GCOV_LDFLAGS$(USE_GCOV)) | |
133 | |
134 | |
135 # The directory into which to store package information for | |
136 | |
137 # Some standard variables and programs | |
138 # | |
139 prefix = @prefix@ | |
140 exec_prefix = @exec_prefix@ | |
141 libdir = @libdir@ | |
142 pkgconfigdir = $(libdir)/pkgconfig | |
143 bindir = @bindir@ | |
144 includedir = @includedir@ | |
145 INSTALL = @INSTALL@ | |
146 LIBTOOL = ./libtool | |
147 ALLOWRELEASE = @ALLOWRELEASE@ | |
148 | |
149 # libtool compile/link/install | |
150 LTCOMPILE = $(LIBTOOL) --mode=compile --tag=CC $(TCC) $(LTCOMPILE_EXTRAS) | |
151 LTLINK = $(LIBTOOL) --mode=link $(TCC) $(LTCOMPILE_EXTRAS) @LDFLAGS@ $(LTLINK_EX
TRAS) | |
152 LTINSTALL = $(LIBTOOL) --mode=install $(INSTALL) | |
153 | |
154 # nawk compatible awk. | |
155 NAWK = @AWK@ | |
156 | |
157 # You should not have to change anything below this line | |
158 ############################################################################### | |
159 | |
160 USE_AMALGAMATION = @USE_AMALGAMATION@ | |
161 | |
162 # Object files for the SQLite library (non-amalgamation). | |
163 # | |
164 LIBOBJS0 = alter.lo analyze.lo attach.lo auth.lo \ | |
165 backup.lo bitvec.lo btmutex.lo btree.lo build.lo \ | |
166 callback.lo complete.lo ctime.lo date.lo delete.lo \ | |
167 expr.lo fault.lo fkey.lo \ | |
168 fts3.lo fts3_aux.lo fts3_expr.lo fts3_hash.lo fts3_icu.lo \ | |
169 fts3_porter.lo fts3_snippet.lo fts3_tokenizer.lo fts3_tokenizer1.lo \ | |
170 fts3_tokenize_vtab.lo \ | |
171 fts3_unicode.lo fts3_unicode2.lo fts3_write.lo \ | |
172 func.lo global.lo hash.lo \ | |
173 icu.lo insert.lo journal.lo legacy.lo loadext.lo \ | |
174 main.lo malloc.lo mem0.lo mem1.lo mem2.lo mem3.lo mem5.lo \ | |
175 memjournal.lo \ | |
176 mutex.lo mutex_noop.lo mutex_unix.lo mutex_w32.lo \ | |
177 notify.lo opcodes.lo os.lo os_unix.lo os_win.lo \ | |
178 pager.lo parse.lo pcache.lo pcache1.lo pragma.lo prepare.lo printf.lo \ | |
179 random.lo resolve.lo rowset.lo rtree.lo select.lo status.lo \ | |
180 table.lo threads.lo tokenize.lo trigger.lo \ | |
181 update.lo util.lo vacuum.lo \ | |
182 vdbe.lo vdbeapi.lo vdbeaux.lo vdbeblob.lo vdbemem.lo vdbesort.lo \ | |
183 vdbetrace.lo wal.lo walker.lo where.lo utf.lo vtab.lo | |
184 | |
185 # Object files for the amalgamation. | |
186 # | |
187 LIBOBJS1 = sqlite3.lo | |
188 | |
189 # Determine the real value of LIBOBJ based on the 'configure' script | |
190 # | |
191 LIBOBJ = $(LIBOBJS$(USE_AMALGAMATION)) | |
192 | |
193 | |
194 # All of the source code files. | |
195 # | |
196 SRC = \ | |
197 $(TOP)/src/alter.c \ | |
198 $(TOP)/src/analyze.c \ | |
199 $(TOP)/src/attach.c \ | |
200 $(TOP)/src/auth.c \ | |
201 $(TOP)/src/backup.c \ | |
202 $(TOP)/src/bitvec.c \ | |
203 $(TOP)/src/btmutex.c \ | |
204 $(TOP)/src/btree.c \ | |
205 $(TOP)/src/btree.h \ | |
206 $(TOP)/src/btreeInt.h \ | |
207 $(TOP)/src/build.c \ | |
208 $(TOP)/src/callback.c \ | |
209 $(TOP)/src/complete.c \ | |
210 $(TOP)/src/ctime.c \ | |
211 $(TOP)/src/date.c \ | |
212 $(TOP)/src/delete.c \ | |
213 $(TOP)/src/expr.c \ | |
214 $(TOP)/src/fault.c \ | |
215 $(TOP)/src/fkey.c \ | |
216 $(TOP)/src/func.c \ | |
217 $(TOP)/src/global.c \ | |
218 $(TOP)/src/hash.c \ | |
219 $(TOP)/src/hash.h \ | |
220 $(TOP)/src/hwtime.h \ | |
221 $(TOP)/src/insert.c \ | |
222 $(TOP)/src/journal.c \ | |
223 $(TOP)/src/legacy.c \ | |
224 $(TOP)/src/loadext.c \ | |
225 $(TOP)/src/main.c \ | |
226 $(TOP)/src/malloc.c \ | |
227 $(TOP)/src/mem0.c \ | |
228 $(TOP)/src/mem1.c \ | |
229 $(TOP)/src/mem2.c \ | |
230 $(TOP)/src/mem3.c \ | |
231 $(TOP)/src/mem5.c \ | |
232 $(TOP)/src/memjournal.c \ | |
233 $(TOP)/src/mutex.c \ | |
234 $(TOP)/src/mutex.h \ | |
235 $(TOP)/src/mutex_noop.c \ | |
236 $(TOP)/src/mutex_unix.c \ | |
237 $(TOP)/src/mutex_w32.c \ | |
238 $(TOP)/src/notify.c \ | |
239 $(TOP)/src/os.c \ | |
240 $(TOP)/src/os.h \ | |
241 $(TOP)/src/os_common.h \ | |
242 $(TOP)/src/os_setup.h \ | |
243 $(TOP)/src/os_unix.c \ | |
244 $(TOP)/src/os_win.c \ | |
245 $(TOP)/src/os_win.h \ | |
246 $(TOP)/src/pager.c \ | |
247 $(TOP)/src/pager.h \ | |
248 $(TOP)/src/parse.y \ | |
249 $(TOP)/src/pcache.c \ | |
250 $(TOP)/src/pcache.h \ | |
251 $(TOP)/src/pcache1.c \ | |
252 $(TOP)/src/pragma.c \ | |
253 $(TOP)/src/prepare.c \ | |
254 $(TOP)/src/printf.c \ | |
255 $(TOP)/src/random.c \ | |
256 $(TOP)/src/resolve.c \ | |
257 $(TOP)/src/rowset.c \ | |
258 $(TOP)/src/select.c \ | |
259 $(TOP)/src/status.c \ | |
260 $(TOP)/src/shell.c \ | |
261 $(TOP)/src/sqlite.h.in \ | |
262 $(TOP)/src/sqlite3ext.h \ | |
263 $(TOP)/src/sqliteInt.h \ | |
264 $(TOP)/src/sqliteLimit.h \ | |
265 $(TOP)/src/table.c \ | |
266 $(TOP)/src/threads.c \ | |
267 $(TOP)/src/tclsqlite.c \ | |
268 $(TOP)/src/tokenize.c \ | |
269 $(TOP)/src/trigger.c \ | |
270 $(TOP)/src/utf.c \ | |
271 $(TOP)/src/update.c \ | |
272 $(TOP)/src/util.c \ | |
273 $(TOP)/src/vacuum.c \ | |
274 $(TOP)/src/vdbe.c \ | |
275 $(TOP)/src/vdbe.h \ | |
276 $(TOP)/src/vdbeapi.c \ | |
277 $(TOP)/src/vdbeaux.c \ | |
278 $(TOP)/src/vdbeblob.c \ | |
279 $(TOP)/src/vdbemem.c \ | |
280 $(TOP)/src/vdbesort.c \ | |
281 $(TOP)/src/vdbetrace.c \ | |
282 $(TOP)/src/vdbeInt.h \ | |
283 $(TOP)/src/vtab.c \ | |
284 $(TOP)/src/wal.c \ | |
285 $(TOP)/src/wal.h \ | |
286 $(TOP)/src/walker.c \ | |
287 $(TOP)/src/where.c \ | |
288 $(TOP)/src/whereInt.h | |
289 | |
290 # Source code for extensions | |
291 # | |
292 SRC += \ | |
293 $(TOP)/ext/fts1/fts1.c \ | |
294 $(TOP)/ext/fts1/fts1.h \ | |
295 $(TOP)/ext/fts1/fts1_hash.c \ | |
296 $(TOP)/ext/fts1/fts1_hash.h \ | |
297 $(TOP)/ext/fts1/fts1_porter.c \ | |
298 $(TOP)/ext/fts1/fts1_tokenizer.h \ | |
299 $(TOP)/ext/fts1/fts1_tokenizer1.c | |
300 SRC += \ | |
301 $(TOP)/ext/fts2/fts2.c \ | |
302 $(TOP)/ext/fts2/fts2.h \ | |
303 $(TOP)/ext/fts2/fts2_hash.c \ | |
304 $(TOP)/ext/fts2/fts2_hash.h \ | |
305 $(TOP)/ext/fts2/fts2_icu.c \ | |
306 $(TOP)/ext/fts2/fts2_porter.c \ | |
307 $(TOP)/ext/fts2/fts2_tokenizer.h \ | |
308 $(TOP)/ext/fts2/fts2_tokenizer.c \ | |
309 $(TOP)/ext/fts2/fts2_tokenizer1.c | |
310 SRC += \ | |
311 $(TOP)/ext/fts3/fts3.c \ | |
312 $(TOP)/ext/fts3/fts3.h \ | |
313 $(TOP)/ext/fts3/fts3Int.h \ | |
314 $(TOP)/ext/fts3/fts3_aux.c \ | |
315 $(TOP)/ext/fts3/fts3_expr.c \ | |
316 $(TOP)/ext/fts3/fts3_hash.c \ | |
317 $(TOP)/ext/fts3/fts3_hash.h \ | |
318 $(TOP)/ext/fts3/fts3_icu.c \ | |
319 $(TOP)/ext/fts3/fts3_porter.c \ | |
320 $(TOP)/ext/fts3/fts3_snippet.c \ | |
321 $(TOP)/ext/fts3/fts3_tokenizer.h \ | |
322 $(TOP)/ext/fts3/fts3_tokenizer.c \ | |
323 $(TOP)/ext/fts3/fts3_tokenizer1.c \ | |
324 $(TOP)/ext/fts3/fts3_tokenize_vtab.c \ | |
325 $(TOP)/ext/fts3/fts3_unicode.c \ | |
326 $(TOP)/ext/fts3/fts3_unicode2.c \ | |
327 $(TOP)/ext/fts3/fts3_write.c | |
328 SRC += \ | |
329 $(TOP)/ext/icu/sqliteicu.h \ | |
330 $(TOP)/ext/icu/icu.c | |
331 SRC += \ | |
332 $(TOP)/ext/rtree/rtree.h \ | |
333 $(TOP)/ext/rtree/rtree.c | |
334 | |
335 | |
336 # Generated source code files | |
337 # | |
338 SRC += \ | |
339 keywordhash.h \ | |
340 opcodes.c \ | |
341 opcodes.h \ | |
342 parse.c \ | |
343 parse.h \ | |
344 config.h \ | |
345 sqlite3.h | |
346 | |
347 # Source code to the test files. | |
348 # | |
349 TESTSRC = \ | |
350 $(TOP)/src/test1.c \ | |
351 $(TOP)/src/test2.c \ | |
352 $(TOP)/src/test3.c \ | |
353 $(TOP)/src/test4.c \ | |
354 $(TOP)/src/test5.c \ | |
355 $(TOP)/src/test6.c \ | |
356 $(TOP)/src/test7.c \ | |
357 $(TOP)/src/test8.c \ | |
358 $(TOP)/src/test9.c \ | |
359 $(TOP)/src/test_autoext.c \ | |
360 $(TOP)/src/test_async.c \ | |
361 $(TOP)/src/test_backup.c \ | |
362 $(TOP)/src/test_btree.c \ | |
363 $(TOP)/src/test_config.c \ | |
364 $(TOP)/src/test_demovfs.c \ | |
365 $(TOP)/src/test_devsym.c \ | |
366 $(TOP)/src/test_fs.c \ | |
367 $(TOP)/src/test_func.c \ | |
368 $(TOP)/src/test_hexio.c \ | |
369 $(TOP)/src/test_init.c \ | |
370 $(TOP)/src/test_intarray.c \ | |
371 $(TOP)/src/test_journal.c \ | |
372 $(TOP)/src/test_malloc.c \ | |
373 $(TOP)/src/test_multiplex.c \ | |
374 $(TOP)/src/test_mutex.c \ | |
375 $(TOP)/src/test_onefile.c \ | |
376 $(TOP)/src/test_osinst.c \ | |
377 $(TOP)/src/test_pcache.c \ | |
378 $(TOP)/src/test_quota.c \ | |
379 $(TOP)/src/test_rtree.c \ | |
380 $(TOP)/src/test_schema.c \ | |
381 $(TOP)/src/test_server.c \ | |
382 $(TOP)/src/test_superlock.c \ | |
383 $(TOP)/src/test_syscall.c \ | |
384 $(TOP)/src/test_stat.c \ | |
385 $(TOP)/src/test_tclvar.c \ | |
386 $(TOP)/src/test_thread.c \ | |
387 $(TOP)/src/test_vfs.c \ | |
388 $(TOP)/src/test_wsd.c \ | |
389 $(TOP)/ext/fts3/fts3_term.c \ | |
390 $(TOP)/ext/fts3/fts3_test.c | |
391 | |
392 # Statically linked extensions | |
393 # | |
394 TESTSRC += \ | |
395 $(TOP)/ext/misc/amatch.c \ | |
396 $(TOP)/ext/misc/closure.c \ | |
397 $(TOP)/ext/misc/fileio.c \ | |
398 $(TOP)/ext/misc/fuzzer.c \ | |
399 $(TOP)/ext/misc/ieee754.c \ | |
400 $(TOP)/ext/misc/nextchar.c \ | |
401 $(TOP)/ext/misc/percentile.c \ | |
402 $(TOP)/ext/misc/regexp.c \ | |
403 $(TOP)/ext/misc/spellfix.c \ | |
404 $(TOP)/ext/misc/totype.c \ | |
405 $(TOP)/ext/misc/wholenumber.c | |
406 | |
407 # Source code to the library files needed by the test fixture | |
408 # | |
409 TESTSRC2 = \ | |
410 $(TOP)/src/attach.c \ | |
411 $(TOP)/src/backup.c \ | |
412 $(TOP)/src/bitvec.c \ | |
413 $(TOP)/src/btree.c \ | |
414 $(TOP)/src/build.c \ | |
415 $(TOP)/src/ctime.c \ | |
416 $(TOP)/src/date.c \ | |
417 $(TOP)/src/expr.c \ | |
418 $(TOP)/src/func.c \ | |
419 $(TOP)/src/insert.c \ | |
420 $(TOP)/src/wal.c \ | |
421 $(TOP)/src/main.c \ | |
422 $(TOP)/src/mem5.c \ | |
423 $(TOP)/src/os.c \ | |
424 $(TOP)/src/os_unix.c \ | |
425 $(TOP)/src/os_win.c \ | |
426 $(TOP)/src/pager.c \ | |
427 $(TOP)/src/pragma.c \ | |
428 $(TOP)/src/prepare.c \ | |
429 $(TOP)/src/printf.c \ | |
430 $(TOP)/src/random.c \ | |
431 $(TOP)/src/pcache.c \ | |
432 $(TOP)/src/pcache1.c \ | |
433 $(TOP)/src/select.c \ | |
434 $(TOP)/src/tokenize.c \ | |
435 $(TOP)/src/utf.c \ | |
436 $(TOP)/src/util.c \ | |
437 $(TOP)/src/vdbeapi.c \ | |
438 $(TOP)/src/vdbeaux.c \ | |
439 $(TOP)/src/vdbe.c \ | |
440 $(TOP)/src/vdbemem.c \ | |
441 $(TOP)/src/vdbetrace.c \ | |
442 $(TOP)/src/where.c \ | |
443 parse.c \ | |
444 $(TOP)/ext/fts3/fts3.c \ | |
445 $(TOP)/ext/fts3/fts3_aux.c \ | |
446 $(TOP)/ext/fts3/fts3_expr.c \ | |
447 $(TOP)/ext/fts3/fts3_term.c \ | |
448 $(TOP)/ext/fts3/fts3_tokenizer.c \ | |
449 $(TOP)/ext/fts3/fts3_write.c \ | |
450 $(TOP)/ext/async/sqlite3async.c | |
451 | |
452 # Header files used by all library source files. | |
453 # | |
454 HDR = \ | |
455 $(TOP)/src/btree.h \ | |
456 $(TOP)/src/btreeInt.h \ | |
457 $(TOP)/src/hash.h \ | |
458 $(TOP)/src/hwtime.h \ | |
459 keywordhash.h \ | |
460 $(TOP)/src/mutex.h \ | |
461 opcodes.h \ | |
462 $(TOP)/src/os.h \ | |
463 $(TOP)/src/os_common.h \ | |
464 $(TOP)/src/os_setup.h \ | |
465 $(TOP)/src/os_win.h \ | |
466 $(TOP)/src/pager.h \ | |
467 $(TOP)/src/pcache.h \ | |
468 parse.h \ | |
469 sqlite3.h \ | |
470 $(TOP)/src/sqlite3ext.h \ | |
471 $(TOP)/src/sqliteInt.h \ | |
472 $(TOP)/src/sqliteLimit.h \ | |
473 $(TOP)/src/vdbe.h \ | |
474 $(TOP)/src/vdbeInt.h \ | |
475 $(TOP)/src/whereInt.h \ | |
476 config.h | |
477 | |
478 # Header files used by extensions | |
479 # | |
480 EXTHDR += \ | |
481 $(TOP)/ext/fts1/fts1.h \ | |
482 $(TOP)/ext/fts1/fts1_hash.h \ | |
483 $(TOP)/ext/fts1/fts1_tokenizer.h | |
484 EXTHDR += \ | |
485 $(TOP)/ext/fts2/fts2.h \ | |
486 $(TOP)/ext/fts2/fts2_hash.h \ | |
487 $(TOP)/ext/fts2/fts2_tokenizer.h | |
488 EXTHDR += \ | |
489 $(TOP)/ext/fts3/fts3.h \ | |
490 $(TOP)/ext/fts3/fts3Int.h \ | |
491 $(TOP)/ext/fts3/fts3_hash.h \ | |
492 $(TOP)/ext/fts3/fts3_tokenizer.h | |
493 EXTHDR += \ | |
494 $(TOP)/ext/rtree/rtree.h | |
495 EXTHDR += \ | |
496 $(TOP)/ext/icu/sqliteicu.h | |
497 EXTHDR += \ | |
498 $(TOP)/ext/rtree/sqlite3rtree.h | |
499 | |
500 # This is the default Makefile target. The objects listed here | |
501 # are what get build when you type just "make" with no arguments. | |
502 # | |
503 all: sqlite3.h libsqlite3.la sqlite3$(TEXE) $(HAVE_TCL:1=libtclsqlite3.la) | |
504 | |
505 Makefile: $(TOP)/Makefile.in | |
506 ./config.status | |
507 | |
508 sqlite3.pc: $(TOP)/sqlite3.pc.in | |
509 ./config.status | |
510 | |
511 libsqlite3.la: $(LIBOBJ) | |
512 $(LTLINK) -no-undefined -o $@ $(LIBOBJ) $(TLIBS) \ | |
513 ${ALLOWRELEASE} -rpath "$(libdir)" -version-info "8:6:8" | |
514 | |
515 libtclsqlite3.la: tclsqlite.lo libsqlite3.la | |
516 $(LTLINK) -no-undefined -o $@ tclsqlite.lo \ | |
517 libsqlite3.la @TCL_STUB_LIB_SPEC@ $(TLIBS) \ | |
518 -rpath "$(TCLLIBDIR)" \ | |
519 -version-info "8:6:8" \ | |
520 -avoid-version | |
521 | |
522 sqlite3$(TEXE): $(TOP)/src/shell.c libsqlite3.la sqlite3.h | |
523 $(LTLINK) $(READLINE_FLAGS) \ | |
524 -o $@ $(TOP)/src/shell.c libsqlite3.la \ | |
525 $(LIBREADLINE) $(TLIBS) -rpath "$(libdir)" | |
526 | |
527 mptester$(EXE): sqlite3.c $(TOP)/mptest/mptest.c | |
528 $(LTLINK) -o $@ -I. $(TOP)/mptest/mptest.c sqlite3.c \ | |
529 $(TLIBS) -rpath "$(libdir)" | |
530 | |
531 | |
532 # This target creates a directory named "tsrc" and fills it with | |
533 # copies of all of the C source code and header files needed to | |
534 # build on the target system. Some of the C source code and header | |
535 # files are automatically generated. This target takes care of | |
536 # all that automatic generation. | |
537 # | |
538 .target_source: $(SRC) $(TOP)/tool/vdbe-compress.tcl | |
539 rm -rf tsrc | |
540 mkdir tsrc | |
541 cp -f $(SRC) tsrc | |
542 rm tsrc/sqlite.h.in tsrc/parse.y | |
543 $(TCLSH_CMD) $(TOP)/tool/vdbe-compress.tcl $(OPTS) <tsrc/vdbe.c >vdbe.ne
w | |
544 mv vdbe.new tsrc/vdbe.c | |
545 touch .target_source | |
546 | |
547 sqlite3.c: .target_source $(TOP)/tool/mksqlite3c.tcl | |
548 $(TCLSH_CMD) $(TOP)/tool/mksqlite3c.tcl | |
549 cp tsrc/shell.c tsrc/sqlite3ext.h . | |
550 | |
551 tclsqlite3.c: sqlite3.c | |
552 echo '#ifndef USE_SYSTEM_SQLITE' >tclsqlite3.c | |
553 cat sqlite3.c >>tclsqlite3.c | |
554 echo '#endif /* USE_SYSTEM_SQLITE */' >>tclsqlite3.c | |
555 cat $(TOP)/src/tclsqlite.c >>tclsqlite3.c | |
556 | |
557 sqlite3-all.c: sqlite3.c $(TOP)/tool/split-sqlite3c.tcl | |
558 $(TCLSH_CMD) $(TOP)/tool/split-sqlite3c.tcl | |
559 | |
560 # Rule to build the amalgamation | |
561 # | |
562 sqlite3.lo: sqlite3.c | |
563 $(LTCOMPILE) $(TEMP_STORE) -c sqlite3.c | |
564 | |
565 # Rules to build the LEMON compiler generator | |
566 # | |
567 lemon$(BEXE): $(TOP)/tool/lemon.c $(TOP)/src/lempar.c | |
568 $(BCC) -o $@ $(TOP)/tool/lemon.c | |
569 cp $(TOP)/src/lempar.c . | |
570 | |
571 # Rules to build individual *.o files from generated *.c files. This | |
572 # applies to: | |
573 # | |
574 # parse.o | |
575 # opcodes.o | |
576 # | |
577 parse.lo: parse.c $(HDR) | |
578 $(LTCOMPILE) $(TEMP_STORE) -c parse.c | |
579 | |
580 opcodes.lo: opcodes.c | |
581 $(LTCOMPILE) $(TEMP_STORE) -c opcodes.c | |
582 | |
583 # Rules to build individual *.o files from files in the src directory. | |
584 # | |
585 alter.lo: $(TOP)/src/alter.c $(HDR) | |
586 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/alter.c | |
587 | |
588 analyze.lo: $(TOP)/src/analyze.c $(HDR) | |
589 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/analyze.c | |
590 | |
591 attach.lo: $(TOP)/src/attach.c $(HDR) | |
592 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/attach.c | |
593 | |
594 auth.lo: $(TOP)/src/auth.c $(HDR) | |
595 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/auth.c | |
596 | |
597 backup.lo: $(TOP)/src/backup.c $(HDR) | |
598 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/backup.c | |
599 | |
600 bitvec.lo: $(TOP)/src/bitvec.c $(HDR) | |
601 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/bitvec.c | |
602 | |
603 btmutex.lo: $(TOP)/src/btmutex.c $(HDR) | |
604 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/btmutex.c | |
605 | |
606 btree.lo: $(TOP)/src/btree.c $(HDR) $(TOP)/src/pager.h | |
607 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/btree.c | |
608 | |
609 build.lo: $(TOP)/src/build.c $(HDR) | |
610 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/build.c | |
611 | |
612 callback.lo: $(TOP)/src/callback.c $(HDR) | |
613 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/callback.c | |
614 | |
615 complete.lo: $(TOP)/src/complete.c $(HDR) | |
616 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/complete.c | |
617 | |
618 ctime.lo: $(TOP)/src/ctime.c $(HDR) | |
619 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/ctime.c | |
620 | |
621 date.lo: $(TOP)/src/date.c $(HDR) | |
622 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/date.c | |
623 | |
624 delete.lo: $(TOP)/src/delete.c $(HDR) | |
625 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/delete.c | |
626 | |
627 expr.lo: $(TOP)/src/expr.c $(HDR) | |
628 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/expr.c | |
629 | |
630 fault.lo: $(TOP)/src/fault.c $(HDR) | |
631 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/fault.c | |
632 | |
633 fkey.lo: $(TOP)/src/fkey.c $(HDR) | |
634 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/fkey.c | |
635 | |
636 func.lo: $(TOP)/src/func.c $(HDR) | |
637 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/func.c | |
638 | |
639 global.lo: $(TOP)/src/global.c $(HDR) | |
640 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/global.c | |
641 | |
642 hash.lo: $(TOP)/src/hash.c $(HDR) | |
643 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/hash.c | |
644 | |
645 insert.lo: $(TOP)/src/insert.c $(HDR) | |
646 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/insert.c | |
647 | |
648 journal.lo: $(TOP)/src/journal.c $(HDR) | |
649 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/journal.c | |
650 | |
651 legacy.lo: $(TOP)/src/legacy.c $(HDR) | |
652 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/legacy.c | |
653 | |
654 loadext.lo: $(TOP)/src/loadext.c $(HDR) | |
655 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/loadext.c | |
656 | |
657 main.lo: $(TOP)/src/main.c $(HDR) | |
658 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/main.c | |
659 | |
660 malloc.lo: $(TOP)/src/malloc.c $(HDR) | |
661 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/malloc.c | |
662 | |
663 mem0.lo: $(TOP)/src/mem0.c $(HDR) | |
664 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/mem0.c | |
665 | |
666 mem1.lo: $(TOP)/src/mem1.c $(HDR) | |
667 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/mem1.c | |
668 | |
669 mem2.lo: $(TOP)/src/mem2.c $(HDR) | |
670 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/mem2.c | |
671 | |
672 mem3.lo: $(TOP)/src/mem3.c $(HDR) | |
673 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/mem3.c | |
674 | |
675 mem5.lo: $(TOP)/src/mem5.c $(HDR) | |
676 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/mem5.c | |
677 | |
678 memjournal.lo: $(TOP)/src/memjournal.c $(HDR) | |
679 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/memjournal.c | |
680 | |
681 mutex.lo: $(TOP)/src/mutex.c $(HDR) | |
682 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/mutex.c | |
683 | |
684 mutex_noop.lo: $(TOP)/src/mutex_noop.c $(HDR) | |
685 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/mutex_noop.c | |
686 | |
687 mutex_unix.lo: $(TOP)/src/mutex_unix.c $(HDR) | |
688 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/mutex_unix.c | |
689 | |
690 mutex_w32.lo: $(TOP)/src/mutex_w32.c $(HDR) | |
691 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/mutex_w32.c | |
692 | |
693 notify.lo: $(TOP)/src/notify.c $(HDR) | |
694 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/notify.c | |
695 | |
696 pager.lo: $(TOP)/src/pager.c $(HDR) $(TOP)/src/pager.h | |
697 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/pager.c | |
698 | |
699 pcache.lo: $(TOP)/src/pcache.c $(HDR) $(TOP)/src/pcache.h | |
700 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/pcache.c | |
701 | |
702 pcache1.lo: $(TOP)/src/pcache1.c $(HDR) $(TOP)/src/pcache.h | |
703 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/pcache1.c | |
704 | |
705 os.lo: $(TOP)/src/os.c $(HDR) | |
706 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/os.c | |
707 | |
708 os_unix.lo: $(TOP)/src/os_unix.c $(HDR) | |
709 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/os_unix.c | |
710 | |
711 os_win.lo: $(TOP)/src/os_win.c $(HDR) | |
712 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/os_win.c | |
713 | |
714 pragma.lo: $(TOP)/src/pragma.c $(HDR) | |
715 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/pragma.c | |
716 | |
717 prepare.lo: $(TOP)/src/prepare.c $(HDR) | |
718 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/prepare.c | |
719 | |
720 printf.lo: $(TOP)/src/printf.c $(HDR) | |
721 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/printf.c | |
722 | |
723 random.lo: $(TOP)/src/random.c $(HDR) | |
724 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/random.c | |
725 | |
726 resolve.lo: $(TOP)/src/resolve.c $(HDR) | |
727 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/resolve.c | |
728 | |
729 rowset.lo: $(TOP)/src/rowset.c $(HDR) | |
730 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/rowset.c | |
731 | |
732 select.lo: $(TOP)/src/select.c $(HDR) | |
733 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/select.c | |
734 | |
735 status.lo: $(TOP)/src/status.c $(HDR) | |
736 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/status.c | |
737 | |
738 table.lo: $(TOP)/src/table.c $(HDR) | |
739 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/table.c | |
740 | |
741 threads.lo: $(TOP)/src/threads.c $(HDR) | |
742 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/threads.c | |
743 | |
744 tokenize.lo: $(TOP)/src/tokenize.c keywordhash.h $(HDR) | |
745 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/tokenize.c | |
746 | |
747 trigger.lo: $(TOP)/src/trigger.c $(HDR) | |
748 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/trigger.c | |
749 | |
750 update.lo: $(TOP)/src/update.c $(HDR) | |
751 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/update.c | |
752 | |
753 utf.lo: $(TOP)/src/utf.c $(HDR) | |
754 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/utf.c | |
755 | |
756 util.lo: $(TOP)/src/util.c $(HDR) | |
757 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/util.c | |
758 | |
759 vacuum.lo: $(TOP)/src/vacuum.c $(HDR) | |
760 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/vacuum.c | |
761 | |
762 vdbe.lo: $(TOP)/src/vdbe.c $(HDR) | |
763 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/vdbe.c | |
764 | |
765 vdbeapi.lo: $(TOP)/src/vdbeapi.c $(HDR) | |
766 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/vdbeapi.c | |
767 | |
768 vdbeaux.lo: $(TOP)/src/vdbeaux.c $(HDR) | |
769 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/vdbeaux.c | |
770 | |
771 vdbeblob.lo: $(TOP)/src/vdbeblob.c $(HDR) | |
772 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/vdbeblob.c | |
773 | |
774 vdbemem.lo: $(TOP)/src/vdbemem.c $(HDR) | |
775 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/vdbemem.c | |
776 | |
777 vdbesort.lo: $(TOP)/src/vdbesort.c $(HDR) | |
778 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/vdbesort.c | |
779 | |
780 vdbetrace.lo: $(TOP)/src/vdbetrace.c $(HDR) | |
781 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/vdbetrace.c | |
782 | |
783 vtab.lo: $(TOP)/src/vtab.c $(HDR) | |
784 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/vtab.c | |
785 | |
786 wal.lo: $(TOP)/src/wal.c $(HDR) | |
787 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/wal.c | |
788 | |
789 walker.lo: $(TOP)/src/walker.c $(HDR) | |
790 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/walker.c | |
791 | |
792 where.lo: $(TOP)/src/where.c $(HDR) | |
793 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/where.c | |
794 | |
795 tclsqlite.lo: $(TOP)/src/tclsqlite.c $(HDR) | |
796 $(LTCOMPILE) -DUSE_TCL_STUBS=1 -c $(TOP)/src/tclsqlite.c | |
797 | |
798 tclsqlite-shell.lo: $(TOP)/src/tclsqlite.c $(HDR) | |
799 $(LTCOMPILE) -DTCLSH=1 -o $@ -c $(TOP)/src/tclsqlite.c | |
800 | |
801 tclsqlite-stubs.lo: $(TOP)/src/tclsqlite.c $(HDR) | |
802 $(LTCOMPILE) -DUSE_TCL_STUBS=1 -o $@ -c $(TOP)/src/tclsqlite.c | |
803 | |
804 tclsqlite3$(TEXE): tclsqlite-shell.lo libsqlite3.la | |
805 $(LTLINK) -o $@ tclsqlite-shell.lo \ | |
806 libsqlite3.la $(LIBTCL) | |
807 | |
808 # Rules to build opcodes.c and opcodes.h | |
809 # | |
810 opcodes.c: opcodes.h $(TOP)/mkopcodec.awk | |
811 $(NAWK) -f $(TOP)/mkopcodec.awk opcodes.h >opcodes.c | |
812 | |
813 opcodes.h: parse.h $(TOP)/src/vdbe.c $(TOP)/mkopcodeh.awk | |
814 cat parse.h $(TOP)/src/vdbe.c | $(NAWK) -f $(TOP)/mkopcodeh.awk >opcodes
.h | |
815 | |
816 # Rules to build parse.c and parse.h - the outputs of lemon. | |
817 # | |
818 parse.h: parse.c | |
819 | |
820 parse.c: $(TOP)/src/parse.y lemon$(BEXE) $(TOP)/addopcodes.awk | |
821 cp $(TOP)/src/parse.y . | |
822 rm -f parse.h | |
823 ./lemon$(BEXE) $(OPT_FEATURE_FLAGS) $(OPTS) parse.y | |
824 mv parse.h parse.h.temp | |
825 $(NAWK) -f $(TOP)/addopcodes.awk parse.h.temp >parse.h | |
826 | |
827 sqlite3.h: $(TOP)/src/sqlite.h.in $(TOP)/manifest.uuid $(TOP)/VERSION | |
828 $(TCLSH_CMD) $(TOP)/tool/mksqlite3h.tcl $(TOP) >sqlite3.h | |
829 | |
830 keywordhash.h: $(TOP)/tool/mkkeywordhash.c | |
831 $(BCC) -o mkkeywordhash$(BEXE) $(OPT_FEATURE_FLAGS) $(OPTS) $(TOP)/tool/
mkkeywordhash.c | |
832 ./mkkeywordhash$(BEXE) >keywordhash.h | |
833 | |
834 | |
835 | |
836 # Rules to build the extension objects. | |
837 # | |
838 icu.lo: $(TOP)/ext/icu/icu.c $(HDR) $(EXTHDR) | |
839 $(LTCOMPILE) -DSQLITE_CORE -c $(TOP)/ext/icu/icu.c | |
840 | |
841 fts2.lo: $(TOP)/ext/fts2/fts2.c $(HDR) $(EXTHDR) | |
842 $(LTCOMPILE) -DSQLITE_CORE -c $(TOP)/ext/fts2/fts2.c | |
843 | |
844 fts2_hash.lo: $(TOP)/ext/fts2/fts2_hash.c $(HDR) $(EXTHDR) | |
845 $(LTCOMPILE) -DSQLITE_CORE -c $(TOP)/ext/fts2/fts2_hash.c | |
846 | |
847 fts2_icu.lo: $(TOP)/ext/fts2/fts2_icu.c $(HDR) $(EXTHDR) | |
848 $(LTCOMPILE) -DSQLITE_CORE -c $(TOP)/ext/fts2/fts2_icu.c | |
849 | |
850 fts2_porter.lo: $(TOP)/ext/fts2/fts2_porter.c $(HDR) $(EXTHDR) | |
851 $(LTCOMPILE) -DSQLITE_CORE -c $(TOP)/ext/fts2/fts2_porter.c | |
852 | |
853 fts2_tokenizer.lo: $(TOP)/ext/fts2/fts2_tokenizer.c $(HDR) $(EXTHDR) | |
854 $(LTCOMPILE) -DSQLITE_CORE -c $(TOP)/ext/fts2/fts2_tokenizer.c | |
855 | |
856 fts2_tokenizer1.lo: $(TOP)/ext/fts2/fts2_tokenizer1.c $(HDR) $(EXTHDR) | |
857 $(LTCOMPILE) -DSQLITE_CORE -c $(TOP)/ext/fts2/fts2_tokenizer1.c | |
858 | |
859 fts3.lo: $(TOP)/ext/fts3/fts3.c $(HDR) $(EXTHDR) | |
860 $(LTCOMPILE) -DSQLITE_CORE -c $(TOP)/ext/fts3/fts3.c | |
861 | |
862 fts3_aux.lo: $(TOP)/ext/fts3/fts3_aux.c $(HDR) $(EXTHDR) | |
863 $(LTCOMPILE) -DSQLITE_CORE -c $(TOP)/ext/fts3/fts3_aux.c | |
864 | |
865 fts3_expr.lo: $(TOP)/ext/fts3/fts3_expr.c $(HDR) $(EXTHDR) | |
866 $(LTCOMPILE) -DSQLITE_CORE -c $(TOP)/ext/fts3/fts3_expr.c | |
867 | |
868 fts3_hash.lo: $(TOP)/ext/fts3/fts3_hash.c $(HDR) $(EXTHDR) | |
869 $(LTCOMPILE) -DSQLITE_CORE -c $(TOP)/ext/fts3/fts3_hash.c | |
870 | |
871 fts3_icu.lo: $(TOP)/ext/fts3/fts3_icu.c $(HDR) $(EXTHDR) | |
872 $(LTCOMPILE) -DSQLITE_CORE -c $(TOP)/ext/fts3/fts3_icu.c | |
873 | |
874 fts3_porter.lo: $(TOP)/ext/fts3/fts3_porter.c $(HDR) $(EXTHDR) | |
875 $(LTCOMPILE) -DSQLITE_CORE -c $(TOP)/ext/fts3/fts3_porter.c | |
876 | |
877 fts3_snippet.lo: $(TOP)/ext/fts3/fts3_snippet.c $(HDR) $(EXTHDR) | |
878 $(LTCOMPILE) -DSQLITE_CORE -c $(TOP)/ext/fts3/fts3_snippet.c | |
879 | |
880 fts3_tokenizer.lo: $(TOP)/ext/fts3/fts3_tokenizer.c $(HDR) $(EXTHDR) | |
881 $(LTCOMPILE) -DSQLITE_CORE -c $(TOP)/ext/fts3/fts3_tokenizer.c | |
882 | |
883 fts3_tokenizer1.lo: $(TOP)/ext/fts3/fts3_tokenizer1.c $(HDR) $(EXTHDR) | |
884 $(LTCOMPILE) -DSQLITE_CORE -c $(TOP)/ext/fts3/fts3_tokenizer1.c | |
885 | |
886 fts3_tokenize_vtab.lo: $(TOP)/ext/fts3/fts3_tokenize_vtab.c $(HDR) $(EXTHDR) | |
887 $(LTCOMPILE) -DSQLITE_CORE -c $(TOP)/ext/fts3/fts3_tokenize_vtab.c | |
888 | |
889 fts3_unicode.lo: $(TOP)/ext/fts3/fts3_unicode.c $(HDR) $(EXTHDR) | |
890 $(LTCOMPILE) -DSQLITE_CORE -c $(TOP)/ext/fts3/fts3_unicode.c | |
891 | |
892 fts3_unicode2.lo: $(TOP)/ext/fts3/fts3_unicode2.c $(HDR) $(EXTHDR) | |
893 $(LTCOMPILE) -DSQLITE_CORE -c $(TOP)/ext/fts3/fts3_unicode2.c | |
894 | |
895 fts3_write.lo: $(TOP)/ext/fts3/fts3_write.c $(HDR) $(EXTHDR) | |
896 $(LTCOMPILE) -DSQLITE_CORE -c $(TOP)/ext/fts3/fts3_write.c | |
897 | |
898 rtree.lo: $(TOP)/ext/rtree/rtree.c $(HDR) $(EXTHDR) | |
899 $(LTCOMPILE) -DSQLITE_CORE -c $(TOP)/ext/rtree/rtree.c | |
900 | |
901 | |
902 # Rules to build the 'testfixture' application. | |
903 # | |
904 # If using the amalgamation, use sqlite3.c directly to build the test | |
905 # fixture. Otherwise link against libsqlite3.la. (This distinction is | |
906 # necessary because the test fixture requires non-API symbols which are | |
907 # hidden when the library is built via the amalgamation). | |
908 # | |
909 TESTFIXTURE_FLAGS = -DTCLSH=1 -DSQLITE_TEST=1 -DSQLITE_CRASH_TEST=1 | |
910 TESTFIXTURE_FLAGS += -DSQLITE_SERVER=1 -DSQLITE_PRIVATE="" -DSQLITE_CORE | |
911 TESTFIXTURE_FLAGS += -DBUILD_sqlite | |
912 | |
913 TESTFIXTURE_SRC0 = $(TESTSRC2) libsqlite3.la | |
914 TESTFIXTURE_SRC1 = sqlite3.c | |
915 TESTFIXTURE_SRC = $(TESTSRC) $(TOP)/src/tclsqlite.c | |
916 TESTFIXTURE_SRC += $(TESTFIXTURE_SRC$(USE_AMALGAMATION)) | |
917 | |
918 testfixture$(TEXE): $(TESTFIXTURE_SRC) | |
919 $(LTLINK) -DSQLITE_NO_SYNC=1 $(TEMP_STORE) $(TESTFIXTURE_FLAGS) \ | |
920 -o $@ $(TESTFIXTURE_SRC) $(LIBTCL) $(TLIBS) | |
921 | |
922 | |
923 fulltest: testfixture$(TEXE) sqlite3$(TEXE) | |
924 ./testfixture$(TEXE) $(TOP)/test/all.test | |
925 | |
926 soaktest: testfixture$(TEXE) sqlite3$(TEXE) | |
927 ./testfixture$(TEXE) $(TOP)/test/all.test -soak=1 | |
928 | |
929 fulltestonly: testfixture$(TEXE) sqlite3$(TEXE) | |
930 ./testfixture$(TEXE) $(TOP)/test/full.test | |
931 | |
932 test: testfixture$(TEXE) sqlite3$(TEXE) | |
933 ./testfixture$(TEXE) $(TOP)/test/veryquick.test | |
934 | |
935 sqlite3_analyzer.c: sqlite3.c $(TOP)/src/test_stat.c $(TOP)/src/tclsqlite.c $(TO
P)/tool/spaceanal.tcl | |
936 echo "#define TCLSH 2" > $@ | |
937 cat sqlite3.c $(TOP)/src/test_stat.c $(TOP)/src/tclsqlite.c >> $@ | |
938 echo "static const char *tclsh_main_loop(void){" >> $@ | |
939 echo "static const char *zMainloop = " >> $@ | |
940 $(NAWK) -f $(TOP)/tool/tostr.awk $(TOP)/tool/spaceanal.tcl >> $@ | |
941 echo "; return zMainloop; }" >> $@ | |
942 | |
943 sqlite3_analyzer$(TEXE): sqlite3_analyzer.c | |
944 $(LTLINK) sqlite3_analyzer.c -o $@ $(LIBTCL) $(TLIBS) | |
945 | |
946 showdb$(TEXE): $(TOP)/tool/showdb.c sqlite3.lo | |
947 $(LTLINK) -o $@ $(TOP)/tool/showdb.c sqlite3.lo $(TLIBS) | |
948 | |
949 showstat4$(TEXE): $(TOP)/tool/showstat4.c sqlite3.lo | |
950 $(LTLINK) -o $@ $(TOP)/tool/showstat4.c sqlite3.lo $(TLIBS) | |
951 | |
952 showjournal$(TEXE): $(TOP)/tool/showjournal.c sqlite3.lo | |
953 $(LTLINK) -o $@ $(TOP)/tool/showjournal.c sqlite3.lo $(TLIBS) | |
954 | |
955 showwal$(TEXE): $(TOP)/tool/showwal.c sqlite3.lo | |
956 $(LTLINK) -o $@ $(TOP)/tool/showwal.c sqlite3.lo $(TLIBS) | |
957 | |
958 rollback-test$(TEXE): $(TOP)/tool/rollback-test.c sqlite3.lo | |
959 $(LTLINK) -o $@ $(TOP)/tool/rollback-test.c sqlite3.lo $(TLIBS) | |
960 | |
961 LogEst$(TEXE): $(TOP)/tool/logest.c sqlite3.h | |
962 $(LTLINK) -I. -o $@ $(TOP)/tool/logest.c | |
963 | |
964 wordcount$(TEXE): $(TOP)/test/wordcount.c sqlite3.c | |
965 $(LTLINK) -o $@ $(TOP)/test/wordcount.c sqlite3.c $(TLIBS) | |
966 | |
967 speedtest1$(TEXE): $(TOP)/test/wordcount.c sqlite3.lo | |
968 $(LTLINK) -o $@ $(TOP)/test/speedtest1.c sqlite3.lo $(TLIBS) | |
969 | |
970 # Standard install and cleanup targets | |
971 # | |
972 lib_install: libsqlite3.la | |
973 $(INSTALL) -d $(DESTDIR)$(libdir) | |
974 $(LTINSTALL) libsqlite3.la $(DESTDIR)$(libdir) | |
975 | |
976 install: sqlite3$(BEXE) lib_install sqlite3.h sqlite3.pc ${HAVE_TCL:1=tcl
_install} | |
977 $(INSTALL) -d $(DESTDIR)$(bindir) | |
978 $(LTINSTALL) sqlite3$(BEXE) $(DESTDIR)$(bindir) | |
979 $(INSTALL) -d $(DESTDIR)$(includedir) | |
980 $(INSTALL) -m 0644 sqlite3.h $(DESTDIR)$(includedir) | |
981 $(INSTALL) -m 0644 $(TOP)/src/sqlite3ext.h $(DESTDIR)$(includedir) | |
982 $(INSTALL) -d $(DESTDIR)$(pkgconfigdir) | |
983 $(INSTALL) -m 0644 sqlite3.pc $(DESTDIR)$(pkgconfigdir) | |
984 | |
985 pkgIndex.tcl: | |
986 echo 'package ifneeded sqlite3 $(RELEASE) [list load $(TCLLIBDIR)/libtcl
sqlite3.so sqlite3]' > $@ | |
987 tcl_install: lib_install libtclsqlite3.la pkgIndex.tcl | |
988 $(INSTALL) -d $(DESTDIR)$(TCLLIBDIR) | |
989 $(LTINSTALL) libtclsqlite3.la $(DESTDIR)$(TCLLIBDIR) | |
990 rm -f $(DESTDIR)$(TCLLIBDIR)/libtclsqlite3.la $(DESTDIR)$(TCLLIBDIR)/lib
tclsqlite3.a | |
991 $(INSTALL) -m 0644 pkgIndex.tcl $(DESTDIR)$(TCLLIBDIR) | |
992 | |
993 clean: | |
994 rm -f *.lo *.la *.o sqlite3$(TEXE) libsqlite3.la | |
995 rm -f sqlite3.h opcodes.* | |
996 rm -rf .libs .deps | |
997 rm -f lemon$(BEXE) lempar.c parse.* sqlite*.tar.gz | |
998 rm -f mkkeywordhash$(BEXE) keywordhash.h | |
999 rm -f *.da *.bb *.bbg gmon.out | |
1000 rm -rf quota2a quota2b quota2c | |
1001 rm -rf tsrc .target_source | |
1002 rm -f tclsqlite3$(TEXE) | |
1003 rm -f testfixture$(TEXE) test.db | |
1004 rm -f LogEst$(TEXE) fts3view$(TEXE) rollback-test$(TEXE) showdb$(TEXE) | |
1005 rm -f showjournal$(TEXE) showstat4$(TEXE) showwal$(TEXE) speedtest1$(TEX
E) | |
1006 rm -f wordcount$(TEXE) | |
1007 rm -f sqlite3.dll sqlite3.lib sqlite3.exp sqlite3.def | |
1008 rm -f sqlite3.c | |
1009 rm -f sqlite3rc.h | |
1010 rm -f shell.c sqlite3ext.h | |
1011 rm -f sqlite3_analyzer$(TEXE) sqlite3_analyzer.c | |
1012 rm -f sqlite-*-output.vsix | |
1013 rm -f mptester mptester.exe | |
1014 | |
1015 distclean: clean | |
1016 rm -f config.log config.status libtool Makefile sqlite3.pc | |
1017 | |
1018 # | |
1019 # Windows section | |
1020 # | |
1021 dll: sqlite3.dll | |
1022 | |
1023 REAL_LIBOBJ = $(LIBOBJ:%.lo=.libs/%.o) | |
1024 | |
1025 $(REAL_LIBOBJ): $(LIBOBJ) | |
1026 | |
1027 sqlite3.def: $(REAL_LIBOBJ) | |
1028 echo 'EXPORTS' >sqlite3.def | |
1029 nm $(REAL_LIBOBJ) | grep ' T ' | grep ' _sqlite3_' \ | |
1030 | sed 's/^.* _//' >>sqlite3.def | |
1031 | |
1032 sqlite3.dll: $(REAL_LIBOBJ) sqlite3.def | |
1033 $(TCC) -shared -o $@ sqlite3.def \ | |
1034 -Wl,"--strip-all" $(REAL_LIBOBJ) | |
OLD | NEW |