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# 18TOP = @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# 23BCC = @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# 29TCC = @TARGET_CC@ @TARGET_CFLAGS@ -I. -I${TOP}/src 30 31# Define -DNDEBUG to compile without debugging (i.e., for production usage) 32# Omitting the define will cause extra debugging code to be inserted and 33# includes extra comments when "EXPLAIN stmt" is used. 34# 35TCC += @TARGET_DEBUG@ 36 37# Compiler options needed for programs that use the TCL library. 38# 39TCC += @TCL_INCLUDE_SPEC@ 40 41# The library that programs using TCL must link against. 42# 43LIBTCL = @TCL_LIB_SPEC@ @TCL_LIBS@ 44 45# Compiler options needed for programs that use the readline() library. 46# 47READLINE_FLAGS = -DHAVE_READLINE=@TARGET_HAVE_READLINE@ @TARGET_READLINE_INC@ 48 49# The library that programs using readline() must link against. 50# 51LIBREADLINE = @TARGET_READLINE_LIBS@ 52 53# Should the database engine be compiled threadsafe 54# 55OPTS += -DTHREADSAFE=@THREADSAFE@ 56 57# The pthreads library if needed 58# 59LIBPTHREAD=@TARGET_THREAD_LIB@ 60 61# Flags controlling use of the in memory btree implementation 62# 63# TEMP_STORE is 0 to force temporary tables to be in a file, 1 to 64# default to file, 2 to default to memory, and 3 to force temporary 65# tables to always be in memory. 66# 67TEMP_STORE = -DTEMP_STORE=@TEMP_STORE@ 68 69# Version numbers and release number for the SQLite being compiled. 70# 71VERSION = @VERSION@ 72VERSION_NUMBER = @VERSION_NUMBER@ 73RELEASE = @RELEASE@ 74 75# Filename extensions 76# 77BEXE = @BUILD_EXEEXT@ 78TEXE = @TARGET_EXEEXT@ 79 80# The following variable is "1" if the configure script was able to locate 81# the tclConfig.sh file. It is an empty string otherwise. When this 82# variable is "1", the TCL extension library (libtclsqlite3.so) is built 83# and installed. 84# 85HAVE_TCL = @HAVE_TCL@ 86 87# The suffix used on shared libraries. Ex: ".dll", ".so", ".dylib" 88# 89SHLIB_SUFFIX = @TCL_SHLIB_SUFFIX@ 90 91# The directory into which to store package information for 92 93# Some standard variables and programs 94# 95prefix = @prefix@ 96exec_prefix = @exec_prefix@ 97libdir = @libdir@ 98INSTALL = @INSTALL@ 99LIBTOOL = ./libtool 100ALLOWRELEASE = @ALLOWRELEASE@ 101 102# libtool compile/link/install 103LTCOMPILE = $(LIBTOOL) --mode=compile $(TCC) 104LTLINK = $(LIBTOOL) --mode=link $(TCC) 105LTINSTALL = $(LIBTOOL) --mode=install $(INSTALL) 106 107# You should not have to change anything below this line 108############################################################################### 109 110OPTS += -DSQLITE_OMIT_CURSOR # Cursors do not work at this time 111TCC += -DSQLITE_OMIT_CURSOR 112 113# Object files for the SQLite library. 114# 115LIBOBJ = alter.lo analyze.lo attach.lo auth.lo btree.lo build.lo \ 116 callback.lo date.lo \ 117 delete.lo expr.lo func.lo hash.lo insert.lo \ 118 main.lo opcodes.lo os_unix.lo os_win.lo \ 119 pager.lo parse.lo pragma.lo prepare.lo printf.lo random.lo \ 120 select.lo table.lo tokenize.lo trigger.lo update.lo \ 121 util.lo vacuum.lo \ 122 vdbe.lo vdbeapi.lo vdbeaux.lo vdbefifo.lo vdbemem.lo \ 123 where.lo utf.lo legacy.lo 124 125# All of the source code files. 126# 127SRC = \ 128 $(TOP)/src/alter.c \ 129 $(TOP)/src/analyze.c \ 130 $(TOP)/src/attach.c \ 131 $(TOP)/src/auth.c \ 132 $(TOP)/src/btree.c \ 133 $(TOP)/src/btree.h \ 134 $(TOP)/src/build.c \ 135 $(TOP)/src/callback.c \ 136 $(TOP)/src/date.c \ 137 $(TOP)/src/delete.c \ 138 $(TOP)/src/expr.c \ 139 $(TOP)/src/func.c \ 140 $(TOP)/src/hash.c \ 141 $(TOP)/src/hash.h \ 142 $(TOP)/src/insert.c \ 143 $(TOP)/src/legacy.c \ 144 $(TOP)/src/main.c \ 145 $(TOP)/src/os_unix.c \ 146 $(TOP)/src/os_win.c \ 147 $(TOP)/src/pager.c \ 148 $(TOP)/src/pager.h \ 149 $(TOP)/src/parse.y \ 150 $(TOP)/src/pragma.c \ 151 $(TOP)/src/prepare.c \ 152 $(TOP)/src/printf.c \ 153 $(TOP)/src/random.c \ 154 $(TOP)/src/select.c \ 155 $(TOP)/src/shell.c \ 156 $(TOP)/src/sqlite.h.in \ 157 $(TOP)/src/sqliteInt.h \ 158 $(TOP)/src/table.c \ 159 $(TOP)/src/tclsqlite.c \ 160 $(TOP)/src/tokenize.c \ 161 $(TOP)/src/trigger.c \ 162 $(TOP)/src/utf.c \ 163 $(TOP)/src/update.c \ 164 $(TOP)/src/util.c \ 165 $(TOP)/src/vacuum.c \ 166 $(TOP)/src/vdbe.c \ 167 $(TOP)/src/vdbe.h \ 168 $(TOP)/src/vdbeapi.c \ 169 $(TOP)/src/vdbeaux.c \ 170 $(TOP)/src/vdbefifo.c \ 171 $(TOP)/src/vdbemem.c \ 172 $(TOP)/src/vdbeInt.h \ 173 $(TOP)/src/where.c 174 175# Source code to the test files. 176# 177TESTSRC = \ 178 $(TOP)/src/btree.c \ 179 $(TOP)/src/date.c \ 180 $(TOP)/src/func.c \ 181 $(TOP)/src/os_unix.c \ 182 $(TOP)/src/os_win.c \ 183 $(TOP)/src/pager.c \ 184 $(TOP)/src/pragma.c \ 185 $(TOP)/src/printf.c \ 186 $(TOP)/src/test1.c \ 187 $(TOP)/src/test2.c \ 188 $(TOP)/src/test3.c \ 189 $(TOP)/src/test4.c \ 190 $(TOP)/src/test5.c \ 191 $(TOP)/src/utf.c \ 192 $(TOP)/src/util.c \ 193 $(TOP)/src/vdbe.c \ 194 $(TOP)/src/md5.c 195 196# In LIBOBJ but not TESTSRC 197COMMONOBJ = $(foreach obj,$(LIBOBJ),\ 198 $(if $(findstring $(patsubst %.lo,%.c,$(obj)),$(TESTSRC)),,$(obj))) 199 200# Header files used by all library source files. 201# 202HDR = \ 203 sqlite3.h \ 204 $(TOP)/src/btree.h \ 205 $(TOP)/src/hash.h \ 206 opcodes.h \ 207 $(TOP)/src/os.h \ 208 $(TOP)/src/os_common.h \ 209 $(TOP)/src/os_unix.h \ 210 $(TOP)/src/os_win.h \ 211 $(TOP)/src/sqliteInt.h \ 212 $(TOP)/src/vdbe.h \ 213 parse.h 214 215# Header files used by the VDBE submodule 216# 217VDBEHDR = \ 218 $(HDR) \ 219 $(TOP)/src/vdbeInt.h 220 221# This is the default Makefile target. The objects listed here 222# are what get build when you type just "make" with no arguments. 223# 224all: sqlite3.h libsqlite3.la sqlite3$(TEXE) $(HAVE_TCL:1=libtclsqlite3.la) 225 226Makefile: $(TOP)/Makefile.in 227 ./config.status 228 229# Generate the file "last_change" which contains the date of change 230# of the most recently modified source code file 231# 232last_change: $(SRC) 233 cat $(SRC) | grep '$$Id: ' | sort +4 | tail -1 \ 234 | awk '{print $$5,$$6}' >last_change 235 236libsqlite3.la: $(LIBOBJ) 237 $(LTLINK) -o libsqlite3.la $(LIBOBJ) $(LIBPTHREAD) \ 238 ${ALLOWRELEASE} -rpath $(libdir) -version-info "8:6:8" 239 240libtclsqlite3.la: tclsqlite.lo libsqlite3.la 241 $(LTLINK) -o libtclsqlite3.la tclsqlite.lo \ 242 $(LIBOBJ) @TCL_STUB_LIB_SPEC@ $(LIBPTHREAD) \ 243 -rpath $(libdir)/sqlite \ 244 -version-info "8:6:8" 245 246sqlite3$(TEXE): $(TOP)/src/shell.c libsqlite3.la sqlite3.h 247 $(LTLINK) $(READLINE_FLAGS) $(LIBPTHREAD) \ 248 -o sqlite3 $(TOP)/src/shell.c libsqlite3.la $(LIBREADLINE) 249 250# This target creates a directory named "tsrc" and fills it with 251# copies of all of the C source code and header files needed to 252# build on the target system. Some of the C source code and header 253# files are automatically generated. This target takes care of 254# all that automatic generation. 255# 256target_source: $(SRC) parse.c opcodes.c keywordhash.h $(VDBEHDR) 257 rm -rf tsrc 258 mkdir -p tsrc 259 cp $(SRC) $(VDBEHDR) tsrc 260 rm tsrc/sqlite.h.in tsrc/parse.y 261 cp parse.c opcodes.c keywordhash.h tsrc 262 cp $(TOP)/sqlite3.def tsrc 263 264# Rules to build the LEMON compiler generator 265# 266lemon$(BEXE): $(TOP)/tool/lemon.c $(TOP)/tool/lempar.c 267 $(BCC) -o lemon $(TOP)/tool/lemon.c 268 cp $(TOP)/tool/lempar.c . 269 270 271# Rules to build individual files 272# 273alter.lo: $(TOP)/src/alter.c $(HDR) 274 $(LTCOMPILE) -c $(TOP)/src/alter.c 275 276analyze.lo: $(TOP)/src/analyze.c $(HDR) 277 $(LTCOMPILE) -c $(TOP)/src/analyze.c 278 279attach.lo: $(TOP)/src/attach.c $(HDR) 280 $(LTCOMPILE) -c $(TOP)/src/attach.c 281 282auth.lo: $(TOP)/src/auth.c $(HDR) 283 $(LTCOMPILE) -c $(TOP)/src/auth.c 284 285btree.lo: $(TOP)/src/btree.c $(HDR) $(TOP)/src/pager.h 286 $(LTCOMPILE) -c $(TOP)/src/btree.c 287 288build.lo: $(TOP)/src/build.c $(HDR) 289 $(LTCOMPILE) -c $(TOP)/src/build.c 290 291callback.lo: $(TOP)/src/callback.c $(HDR) 292 $(LTCOMPILE) -c $(TOP)/src/callback.c 293 294date.lo: $(TOP)/src/date.c $(HDR) 295 $(LTCOMPILE) -c $(TOP)/src/date.c 296 297delete.lo: $(TOP)/src/delete.c $(HDR) 298 $(LTCOMPILE) -c $(TOP)/src/delete.c 299 300expr.lo: $(TOP)/src/expr.c $(HDR) 301 $(LTCOMPILE) -c $(TOP)/src/expr.c 302 303func.lo: $(TOP)/src/func.c $(HDR) 304 $(LTCOMPILE) -c $(TOP)/src/func.c 305 306hash.lo: $(TOP)/src/hash.c $(HDR) 307 $(LTCOMPILE) -c $(TOP)/src/hash.c 308 309insert.lo: $(TOP)/src/insert.c $(HDR) 310 $(LTCOMPILE) -c $(TOP)/src/insert.c 311 312legacy.lo: $(TOP)/src/legacy.c $(HDR) 313 $(LTCOMPILE) -c $(TOP)/src/legacy.c 314 315main.lo: $(TOP)/src/main.c $(HDR) 316 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/main.c 317 318pager.lo: $(TOP)/src/pager.c $(HDR) $(TOP)/src/pager.h 319 $(LTCOMPILE) -c $(TOP)/src/pager.c 320 321opcodes.lo: opcodes.c 322 $(LTCOMPILE) -c opcodes.c 323 324opcodes.c: opcodes.h $(TOP)/mkopcodec.awk 325 sort -n -b +2 opcodes.h | awk -f $(TOP)/mkopcodec.awk >opcodes.c 326 327opcodes.h: parse.h $(TOP)/src/vdbe.c $(TOP)/mkopcodeh.awk 328 cat parse.h $(TOP)/src/vdbe.c | awk -f $(TOP)/mkopcodeh.awk >opcodes.h 329 330os_unix.lo: $(TOP)/src/os_unix.c $(HDR) 331 $(LTCOMPILE) -c $(TOP)/src/os_unix.c 332 333os_win.lo: $(TOP)/src/os_win.c $(HDR) 334 $(LTCOMPILE) -c $(TOP)/src/os_win.c 335 336parse.lo: parse.c $(HDR) 337 $(LTCOMPILE) -c parse.c 338 339parse.h: parse.c 340 341parse.c: $(TOP)/src/parse.y lemon$(BEXE) 342 cp $(TOP)/src/parse.y . 343 ./lemon $(OPTS) parse.y 344 345pragma.lo: $(TOP)/src/pragma.c $(HDR) 346 $(LTCOMPILE) -c $(TOP)/src/pragma.c 347 348prepare.lo: $(TOP)/src/prepare.c $(HDR) 349 $(LTCOMPILE) $(TEMP_STORE) -c $(TOP)/src/prepare.c 350 351printf.lo: $(TOP)/src/printf.c $(HDR) 352 $(LTCOMPILE) -c $(TOP)/src/printf.c 353 354random.lo: $(TOP)/src/random.c $(HDR) 355 $(LTCOMPILE) -c $(TOP)/src/random.c 356 357select.lo: $(TOP)/src/select.c $(HDR) 358 $(LTCOMPILE) -c $(TOP)/src/select.c 359 360sqlite3.h: $(TOP)/src/sqlite.h.in 361 sed -e s/--VERS--/$(RELEASE)/ $(TOP)/src/sqlite.h.in | \ 362 sed -e s/--VERSION-NUMBER--/$(VERSION_NUMBER)/ >sqlite3.h 363 364table.lo: $(TOP)/src/table.c $(HDR) 365 $(LTCOMPILE) -c $(TOP)/src/table.c 366 367tclsqlite.lo: $(TOP)/src/tclsqlite.c $(HDR) 368 $(LTCOMPILE) -c $(TOP)/src/tclsqlite.c 369 370tokenize.lo: $(TOP)/src/tokenize.c keywordhash.h $(HDR) 371 $(LTCOMPILE) -c $(TOP)/src/tokenize.c 372 373keywordhash.h: $(TOP)/tool/mkkeywordhash.c 374 $(BCC) -o mkkeywordhash$(BEXE) $(OPTS) $(TOP)/tool/mkkeywordhash.c 375 ./mkkeywordhash$(BEXE) >keywordhash.h 376 377trigger.lo: $(TOP)/src/trigger.c $(HDR) 378 $(LTCOMPILE) -c $(TOP)/src/trigger.c 379 380update.lo: $(TOP)/src/update.c $(HDR) 381 $(LTCOMPILE) -c $(TOP)/src/update.c 382 383utf.lo: $(TOP)/src/utf.c $(HDR) 384 $(LTCOMPILE) -c $(TOP)/src/utf.c 385 386util.lo: $(TOP)/src/util.c $(HDR) 387 $(LTCOMPILE) -c $(TOP)/src/util.c 388 389vacuum.lo: $(TOP)/src/vacuum.c $(HDR) 390 $(LTCOMPILE) -c $(TOP)/src/vacuum.c 391 392vdbe.lo: $(TOP)/src/vdbe.c $(VDBEHDR) 393 $(LTCOMPILE) -c $(TOP)/src/vdbe.c 394 395vdbeapi.lo: $(TOP)/src/vdbeapi.c $(VDBEHDR) 396 $(LTCOMPILE) -c $(TOP)/src/vdbeapi.c 397 398vdbeaux.lo: $(TOP)/src/vdbeaux.c $(VDBEHDR) 399 $(LTCOMPILE) -c $(TOP)/src/vdbeaux.c 400 401vdbefifo.lo: $(TOP)/src/vdbefifo.c $(VDBEHDR) 402 $(LTCOMPILE) -c $(TOP)/src/vdbefifo.c 403 404vdbemem.lo: $(TOP)/src/vdbemem.c $(VDBEHDR) 405 $(LTCOMPILE) -c $(TOP)/src/vdbemem.c 406 407where.lo: $(TOP)/src/where.c $(HDR) 408 $(LTCOMPILE) -c $(TOP)/src/where.c 409 410tclsqlite-shell.lo: $(TOP)/src/tclsqlite.c $(HDR) 411 $(LTCOMPILE) -DTCLSH=1 -o $@ -c $(TOP)/src/tclsqlite.c 412 413tclsqlite-stubs.lo: $(TOP)/src/tclsqlite.c $(HDR) 414 $(LTCOMPILE) -DTCL_USE_STUBS=1 -o $@ -c $(TOP)/src/tclsqlite.c 415 416tclsqlite3: tclsqlite-shell.lo libsqlite3.la 417 $(LTLINK) -o tclsqlite3 tclsqlite-shell.lo \ 418 libsqlite3.la $(LIBTCL) 419 420testfixture$(TEXE): $(TOP)/src/tclsqlite.c $(TESTSRC) $(COMMONOBJ) 421 $(LTLINK) -DTCLSH=1 -DSQLITE_TEST=1 $(THREADSAFE) $(TEMP_STORE)\ 422 -o testfixture \ 423 $(TESTSRC) $(TOP)/src/tclsqlite.c $(COMMONOBJ) $(LIBTCL) 424 425crashtest$(TEXE): $(TOP)/src/tclsqlite.c $(TOP)/src/os_test.c $(TESTSRC) $(COMMONOBJ) 426 $(LTLINK) -DOS_TEST=1 -DTCLSH=1 -DSQLITE_TEST=1 \ 427 -o crashtest $(TOP)/src/os_test.c \ 428 $(TESTSRC) $(TOP)/src/tclsqlite.c $(COMMONOBJ) $(LIBTCL) 429 430 431 432fulltest: testfixture$(TEXE) sqlite3$(TEXE) crashtest$(TEXE) 433 ./testfixture $(TOP)/test/all.test 434 435test: testfixture$(TEXE) sqlite3$(TEXE) 436 ./testfixture $(TOP)/test/quick.test 437 438sqlite3_analyzer$(TEXE): $(TOP)/src/tclsqlite.c libtclsqlite3.la \ 439 $(TESTSRC) $(TOP)/tool/spaceanal.tcl 440 sed \ 441 -e '/^#/d' \ 442 -e 's,\\,\\\\,g' \ 443 -e 's,",\\",g' \ 444 -e 's,^,",' \ 445 -e 's,$$,\\n",' \ 446 $(TOP)/tool/spaceanal.tcl >spaceanal_tcl.h 447 $(LTLINK) -DTCLSH=2 -DSQLITE_TEST=1 $(TEMP_STORE)\ 448 -o sqlite3_analyzer$(EXE) $(TESTSRC) $(TOP)/src/tclsqlite.c \ 449 libtclsqlite3.la $(LIBTCL) 450 451# Rules used to build documentation 452# 453arch.html: $(TOP)/www/arch.tcl 454 tclsh $(TOP)/www/arch.tcl >arch.html 455 456arch2.gif: $(TOP)/www/arch2.gif 457 cp $(TOP)/www/arch2.gif . 458 459autoinc.html: $(TOP)/www/autoinc.tcl 460 tclsh $(TOP)/www/autoinc.tcl >autoinc.html 461 462c_interface.html: $(TOP)/www/c_interface.tcl 463 tclsh $(TOP)/www/c_interface.tcl >c_interface.html 464 465capi3.html: $(TOP)/www/capi3.tcl 466 tclsh $(TOP)/www/capi3.tcl >capi3.html 467 468capi3ref.html: $(TOP)/www/capi3ref.tcl 469 tclsh $(TOP)/www/capi3ref.tcl >capi3ref.html 470 471changes.html: $(TOP)/www/changes.tcl 472 tclsh $(TOP)/www/changes.tcl >changes.html 473 474compile.html: $(TOP)/www/compile.tcl 475 tclsh $(TOP)/www/compile.tcl >compile.html 476 477copyright.html: $(TOP)/www/copyright.tcl 478 tclsh $(TOP)/www/copyright.tcl >copyright.html 479 480copyright-release.html: $(TOP)/www/copyright-release.html 481 cp $(TOP)/www/copyright-release.html . 482 483copyright-release.pdf: $(TOP)/www/copyright-release.pdf 484 cp $(TOP)/www/copyright-release.pdf . 485 486common.tcl: $(TOP)/www/common.tcl 487 cp $(TOP)/www/common.tcl . 488 489conflict.html: $(TOP)/www/conflict.tcl 490 tclsh $(TOP)/www/conflict.tcl >conflict.html 491 492datatypes.html: $(TOP)/www/datatypes.tcl 493 tclsh $(TOP)/www/datatypes.tcl >datatypes.html 494 495datatype3.html: $(TOP)/www/datatype3.tcl 496 tclsh $(TOP)/www/datatype3.tcl >datatype3.html 497 498docs.html: $(TOP)/www/docs.tcl 499 tclsh $(TOP)/www/docs.tcl >docs.html 500 501download.html: $(TOP)/www/download.tcl 502 mkdir -p doc 503 tclsh $(TOP)/www/download.tcl >download.html 504 505faq.html: $(TOP)/www/faq.tcl 506 tclsh $(TOP)/www/faq.tcl >faq.html 507 508fileformat.html: $(TOP)/www/fileformat.tcl 509 tclsh $(TOP)/www/fileformat.tcl >fileformat.html 510 511formatchng.html: $(TOP)/www/formatchng.tcl 512 tclsh $(TOP)/www/formatchng.tcl >formatchng.html 513 514index.html: $(TOP)/www/index.tcl last_change 515 tclsh $(TOP)/www/index.tcl >index.html 516 517lang.html: $(TOP)/www/lang.tcl 518 tclsh $(TOP)/www/lang.tcl >lang.html 519 520pragma.html: $(TOP)/www/pragma.tcl 521 tclsh $(TOP)/www/pragma.tcl >pragma.html 522 523lockingv3.html: $(TOP)/www/lockingv3.tcl 524 tclsh $(TOP)/www/lockingv3.tcl >lockingv3.html 525 526oldnews.html: $(TOP)/www/oldnews.tcl 527 tclsh $(TOP)/www/oldnews.tcl >oldnews.html 528 529omitted.html: $(TOP)/www/omitted.tcl 530 tclsh $(TOP)/www/omitted.tcl >omitted.html 531 532opcode.html: $(TOP)/www/opcode.tcl $(TOP)/src/vdbe.c 533 tclsh $(TOP)/www/opcode.tcl $(TOP)/src/vdbe.c >opcode.html 534 535mingw.html: $(TOP)/www/mingw.tcl 536 tclsh $(TOP)/www/mingw.tcl >mingw.html 537 538nulls.html: $(TOP)/www/nulls.tcl 539 tclsh $(TOP)/www/nulls.tcl >nulls.html 540 541quickstart.html: $(TOP)/www/quickstart.tcl 542 tclsh $(TOP)/www/quickstart.tcl >quickstart.html 543 544speed.html: $(TOP)/www/speed.tcl 545 tclsh $(TOP)/www/speed.tcl >speed.html 546 547sqlite.gif: $(TOP)/art/SQLite.gif 548 cp $(TOP)/art/SQLite.gif sqlite.gif 549 550sqlite.html: $(TOP)/www/sqlite.tcl 551 tclsh $(TOP)/www/sqlite.tcl >sqlite.html 552 553support.html: $(TOP)/www/support.tcl 554 tclsh $(TOP)/www/support.tcl >support.html 555 556tclsqlite.html: $(TOP)/www/tclsqlite.tcl 557 tclsh $(TOP)/www/tclsqlite.tcl >tclsqlite.html 558 559vdbe.html: $(TOP)/www/vdbe.tcl 560 tclsh $(TOP)/www/vdbe.tcl >vdbe.html 561 562version3.html: $(TOP)/www/version3.tcl 563 tclsh $(TOP)/www/version3.tcl >version3.html 564 565 566# Files to be published on the website. 567# 568DOC = \ 569 arch.html \ 570 arch2.gif \ 571 autoinc.html \ 572 c_interface.html \ 573 capi3.html \ 574 capi3ref.html \ 575 changes.html \ 576 compile.html \ 577 copyright.html \ 578 copyright-release.html \ 579 copyright-release.pdf \ 580 conflict.html \ 581 datatypes.html \ 582 datatype3.html \ 583 docs.html \ 584 download.html \ 585 faq.html \ 586 fileformat.html \ 587 formatchng.html \ 588 index.html \ 589 lang.html \ 590 lockingv3.html \ 591 mingw.html \ 592 nulls.html \ 593 oldnews.html \ 594 omitted.html \ 595 opcode.html \ 596 pragma.html \ 597 quickstart.html \ 598 speed.html \ 599 sqlite.gif \ 600 sqlite.html \ 601 support.html \ 602 tclsqlite.html \ 603 vdbe.html \ 604 version3.html 605 606doc: common.tcl $(DOC) 607 mkdir -p doc 608 mv $(DOC) doc 609 610install: sqlite3 libsqlite3.la sqlite3.h ${HAVE_TCL:1=tcl_install} 611 $(INSTALL) -d $(DESTDIR)$(libdir) 612 $(LTINSTALL) libsqlite3.la $(DESTDIR)$(libdir) 613 $(INSTALL) -d $(DESTDIR)$(exec_prefix)/bin 614 $(LTINSTALL) sqlite3 $(DESTDIR)$(exec_prefix)/bin 615 $(INSTALL) -d $(DESTDIR)$(prefix)/include 616 $(INSTALL) -m 0644 sqlite3.h $(DESTDIR)$(prefix)/include 617 $(INSTALL) -d $(DESTDIR)$(libdir)/pkgconfig; 618 $(INSTALL) -m 0644 sqlite3.pc $(DESTDIR)$(libdir)/pkgconfig; 619 620tcl_install: libtclsqlite3.la 621 tclsh $(TOP)/tclinstaller.tcl $(VERSION) 622 623clean: 624 rm -f *.lo *.la *.o sqlite3$(TEXE) libsqlite3.la 625 rm -f sqlite3.h opcodes.* 626 rm -rf .libs .deps 627 rm -f lemon$(BEXE) lempar.c parse.* sqlite*.tar.gz 628 rm -f mkkeywordhash$(BEXE) keywordhash.h 629 rm -f $(PUBLISH) 630 rm -f *.da *.bb *.bbg gmon.out 631 rm -f testfixture$(TEXE) test.db 632 rm -rf doc 633 rm -f common.tcl 634 rm -f sqlite3.dll sqlite3.lib 635 636# 637# Windows section; all this funky .dll stuff ;-) 638# 639dll: sqlite3.dll 640 641REAL_LIBOBJ = $(LIBOBJ:%.lo=.libs/%.o) 642 643sqlite3.dll: $(LIBOBJ) $(TOP)/sqlite3.def 644 dllwrap --dllname sqlite3.dll --def $(TOP)/sqlite3.def $(REAL_LIBOBJ) 645 strip sqlite3.dll 646 647#target for dll import libraries 648implib: sqlite3.lib 649 650#make Borland C++ and/or Microsoft VC import library for the dll 651# ignore any errors (usually due to missing programs) 652sqlite3.lib: sqlite3.dll 653 -impdef -a sqlite3.def sqlite3.dll 654 -implib sqlite3.lib sqlite3.def 655 -lib /machine:i386 /def:$(TOP)/sqlite3.def 656 657distclean: clean 658 rm -f config.log config.status libtool Makefile config.h 659