15821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#!/usr/make
25821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
35821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# Makefile for SQLITE on VxWorks
45821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
55821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)ifeq ($(FORCPU),)
65821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  FORCPU = SH32gnule
75821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)endif
85821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
95821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TOOL_FAMILY = gnu
105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)include $(WIND_USR)/tool/gnu/make.$(FORCPU)
125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#### The toplevel directory of the source tree.  This is the directory
145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#    that contains this "Makefile.in" and the "configure.in" script.
155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TOP = .
175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#### C Compiler and options for use in building executables that
195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#    will run on the platform that is doing the build.
205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)BCC = gcc -g -O2
225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#BCC = /opt/ancic/bin/c89 -0
235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#### If the target operating system supports the "usleep()" system
255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#    call, then define the HAVE_USLEEP macro for all C modules.
265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)USLEEP = 
285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#USLEEP = -DHAVE_USLEEP=1
295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#### If you want the SQLite library to be safe for use within a 
315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#    multi-threaded program, then define the following macro
325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#    appropriately:
335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)THREADSAFE = -DSQLITE_THREADSAFE=1
355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#THREADSAFE = -DSQLITE_THREADSAFE=0
365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#### Specify any extra linker options needed to make the library
385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#    thread safe
395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#THREADLIB = -lpthread
415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)THREADLIB = 
425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#### Specify any extra libraries needed to access required functions.
445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)ifeq ($(CPU),SH32) 
465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  # for SH4 shared library
475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  TLIBS_SHARED += -L$(WIND_USR)/lib/sh/SH32/commonle/PIC
485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)else 
495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  # for all other CPUs shared library
505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  TLIBS_SHARED += $(LD_LINK_PATH_ATEND) $(LD_PARTIAL_LAST_FLAGS)
515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)endif
525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# for static library
535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TLIBS += $(LD_LINK_PATH_ATEND) $(LD_PARTIAL_LAST_FLAGS)
545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#### Leave SQLITE_DEBUG undefined for maximum speed.  Use SQLITE_DEBUG=1
565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#    to check for memory leaks.  Use SQLITE_DEBUG=2 to print a log of all
575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#    malloc()s and free()s in order to track down memory leaks.
585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#    
595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#    SQLite uses some expensive assert() statements in the inner loop.
605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#    You can make the library go almost twice as fast if you compile
615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#    with -DNDEBUG=1
625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#OPTS = -DSQLITE_DEBUG=2
645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#OPTS = -DSQLITE_DEBUG=1
655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#OPTS = 
665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)OPTS = -DNDEBUG=1 -DSQLITE_OS_UNIX=1 $(THREADSAFE)
675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)OPTS += -DSQLITE_OMIT_LOAD_EXTENSION=1
685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)OPTS += -DSQLITE_ENABLE_LOCKING_STYLE=1
695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)OPTS += -DSQLITE_THREAD_OVERRIDE_LOCK=0
705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)OPTS += -DSQLITE_ENABLE_COLUMN_METADATA=1
715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)OPTS += -DHAVE_FDATASYNC=1
725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#### The suffix to add to executable files.  ".exe" for windows.
745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#    Nothing for unix.
755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)EXE = .vxe
775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#EXE =
785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#### C Compile and options for use in building executables that 
805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#    will run on the target platform.  This is usually the same
815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#    as BCC, unless you are cross-compiling.
825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
835821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#TCC = gcc -O6
845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#TCC = gcc -g -O0 -Wall
855821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#TCC = gcc -g -O0 -Wall -fprofile-arcs -ftest-coverage
865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#TCC = /opt/mingw/bin/i386-mingw32-gcc -O6
875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TCC = $(CC) $(DEFINE_CC) -O2 -g -mrtp $(CC_ARCH_SPEC) -D_REENTRANT=1 -D_VX_CPU=_VX_$(CPU) -D_VX_TOOL_FAMILY=$(TOOL_FAMILY) -D_VX_TOOL=$(TOOL)
885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TCC += -I$(WIND_USR)/h -I$(WIND_USR)/h/wrn/coreip
895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#TCC = /opt/ansic/bin/c89 -O +z -Wl,-a,archive
905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#TCC_SHARED = $(TCC) -fPIC
925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TCC_SHARED = $(TCC)
935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
945821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#### Tools used to build a static library.
955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#ARX = ar cr
975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#ARX = /opt/mingw/bin/i386-mingw32-ar cr
985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)AR += cr
995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#RANLIB = ranlib
1005821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#RANLIB = /opt/mingw/bin/i386-mingw32-ranlib
1015821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#MKSHLIB = gcc -shared
1035821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#SO = so
1045821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#SHPREFIX = lib
1055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)MKSHLIB = $(CC) $(DEFINE_CC) -mrtp -shared $(CC_ARCH_SPEC) -D_VX_CPU=_VX_$(CPU) -D_VX_TOOL_FAMILY=$(TOOL_FAMILY) -D_VX_TOOL=$(TOOL)
1065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)SO = so
1075821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)SHPREFIX = lib
1085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#### Extra compiler options needed for programs that use the TCL library.
1105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
1115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#TCL_FLAGS =
1125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#TCL_FLAGS = -DSTATIC_BUILD=1
1135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TCL_FLAGS = -I/home/drh/tcltk/8.5linux
1145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#TCL_FLAGS = -I/home/drh/tcltk/8.5win -DSTATIC_BUILD=1
1155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#TCL_FLAGS = -I/home/drh/tcltk/8.3hpux
1165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#### Linker options needed to link against the TCL library.
1185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
1195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#LIBTCL = -ltcl -lm -ldl
1205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)LIBTCL = /home/drh/tcltk/8.5linux/libtcl8.5g.a -lm -ldl
1215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#LIBTCL = /home/drh/tcltk/8.5win/libtcl85s.a -lmsvcrt
1225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#LIBTCL = /home/drh/tcltk/8.3hpux/libtcl8.3.a -ldld -lm -lc
1235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#### Additional objects for SQLite library when TCL support is enabled.
1255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TCLOBJ =
1265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#TCLOBJ = tclsqlite.o
1275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#### Compiler options needed for programs that use the readline() library.
1295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
1305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)READLINE_FLAGS =
1315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#READLINE_FLAGS = -DHAVE_READLINE=1 -I/usr/include/readline
1325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#### Linker options needed by programs using readline() must link against.
1345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
1355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)LIBREADLINE =
1365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#LIBREADLINE = -static -lreadline -ltermcap
1375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#### Which "awk" program provides nawk compatibilty
1395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
1405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# NAWK = nawk
1415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)NAWK = awk
1425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#### Pasted and adapted main.mk file
1455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)###############################################################################
1465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# The following macros should be defined before this script is
1475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# invoked:
1485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
1495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# TOP              The toplevel directory of the source tree.  This is the
1505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#                  directory that contains this "Makefile.in" and the
1515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#                  "configure.in" script.
1525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
1535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# BCC              C Compiler and options for use in building executables that
1545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#                  will run on the platform that is doing the build.
1555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
1565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# THREADLIB        Specify any extra linker options needed to make the library
1575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#                  thread safe
1585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
1595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# OPTS             Extra compiler command-line options.
1605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
1615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# EXE              The suffix to add to executable files.  ".exe" for windows
1625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#                  and "" for Unix.
1635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
1645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# TCC              C Compiler and options for use in building executables that 
1655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#                  will run on the target platform.  This is usually the same
1665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#                  as BCC, unless you are cross-compiling.
1675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
1685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# AR               Tools used to build a static library.
1695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# RANLIB
1705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
1715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# TCL_FLAGS        Extra compiler options needed for programs that use the
1725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#                  TCL library.
1735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
1745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# LIBTCL           Linker options needed to link against the TCL library.
1755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
1765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# READLINE_FLAGS   Compiler options needed for programs that use the
1775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#                  readline() library.
1785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
1795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# LIBREADLINE      Linker options needed by programs using readline() must
1805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#                  link against.
1815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
1825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# NAWK             Nawk compatible awk program.  Older (obsolete?) solaris
1835821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#                  systems need this to avoid using the original AT&T AWK.
1845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
1855821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# Once the macros above are defined, the rest of this make script will
1865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# build the SQLite library and testing tools.
1875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)################################################################################
1885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# This is how we compile
1905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
1915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TCCX = $(TCC) $(OPTS) -I. -I$(TOP)/src -I$(TOP)
1925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TCCX_SHARED = $(TCC_SHARED) $(OPTS) -I. -I$(TOP)/src -I$(TOP) \
1935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	-I$(TOP)/ext/rtree -I$(TOP)/ext/icu -I$(TOP)/ext/fts3 \
1945821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	-I$(TOP)/ext/async
1955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# Object files for the SQLite library.
1975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
1985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)LIBOBJ+= alter.o analyze.o attach.o auth.o \
1995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)         backup.o bitvec.o btmutex.o btree.o build.o \
2005821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)         callback.o complete.o date.o delete.o expr.o fault.o \
2015821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)         fts3.o fts3_expr.o fts3_hash.o fts3_icu.o fts3_porter.o \
2025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)         fts3_tokenizer.o fts3_tokenizer1.o \
2035821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)         func.o global.o hash.o \
2045821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)         icu.o insert.o journal.o legacy.o loadext.o \
2055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)         main.o malloc.o mem0.o mem1.o mem2.o mem3.o mem5.o \
2065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)         memjournal.o \
2075821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)         mutex.o mutex_noop.o mutex_os2.o mutex_unix.o mutex_w32.o \
2085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)         notify.o opcodes.o os.o os_os2.o os_unix.o os_win.o \
2095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)         pager.o parse.o pcache.o pcache1.o pragma.o prepare.o printf.o \
2105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)         random.o resolve.o rowset.o rtree.o select.o status.o \
2115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)         table.o tokenize.o trigger.o \
2125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)         update.o util.o vacuum.o \
2135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)         vdbe.o vdbeapi.o vdbeaux.o vdbeblob.o vdbemem.o \
2145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)         walker.o where.o utf.o vtab.o
2155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
2165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
2175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
2185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# All of the source code files.
2195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
2205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)SRC = \
2215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/alter.c \
2225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/analyze.c \
2235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/attach.c \
2245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/auth.c \
2255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/backup.c \
2265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/bitvec.c \
2275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/btmutex.c \
2285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/btree.c \
2295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/btree.h \
2305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/btreeInt.h \
2315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/build.c \
2325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/callback.c \
2335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/complete.c \
2345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/ctime.c \
2355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/date.c \
2365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/delete.c \
2375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/expr.c \
2385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/fault.c \
2395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/func.c \
2405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/global.c \
2415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/hash.c \
2425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/hash.h \
2435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/hwtime.h \
2445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/insert.c \
2455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/journal.c \
2465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/legacy.c \
2475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/loadext.c \
2485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/main.c \
2495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/malloc.c \
2505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/mem0.c \
2515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/mem1.c \
2525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/mem2.c \
2535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/mem3.c \
2545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/mem5.c \
2555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/memjournal.c \
2565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/mutex.c \
2575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/mutex.h \
2585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/mutex_noop.c \
2595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/mutex_os2.c \
2605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/mutex_unix.c \
2615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/mutex_w32.c \
2625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/notify.c \
2635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/os.c \
2645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/os.h \
2655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/os_common.h \
2665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/os_os2.c \
2675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/os_unix.c \
2685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/os_win.c \
2695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/pager.c \
2705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/pager.h \
2715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/parse.y \
2725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/pcache.c \
2735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/pcache.h \
2745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/pcache1.c \
2755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/pragma.c \
2765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/prepare.c \
2775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/printf.c \
2785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/random.c \
2795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/resolve.c \
2805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/rowset.c \
2815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/select.c \
2825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/status.c \
2835821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/shell.c \
2845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/sqlite.h.in \
2855821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/sqlite3ext.h \
2865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/sqliteInt.h \
2875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/sqliteLimit.h \
2885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/table.c \
2895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/tclsqlite.c \
2905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/tokenize.c \
2915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/trigger.c \
2925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/utf.c \
2935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/update.c \
2945821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/util.c \
2955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/vacuum.c \
2965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/vdbe.c \
2975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/vdbe.h \
2985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/vdbeapi.c \
2995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/vdbeaux.c \
3005821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/vdbeblob.c \
3015821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/vdbemem.c \
3025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/vdbeInt.h \
3035821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/vtab.c \
3045821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/walker.c \
3055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/where.c
3065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
3075821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# Source code for extensions
3085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
3095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)SRC += \
3105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/ext/fts1/fts1.c \
3115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/ext/fts1/fts1.h \
3125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/ext/fts1/fts1_hash.c \
3135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/ext/fts1/fts1_hash.h \
3145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/ext/fts1/fts1_porter.c \
3155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/ext/fts1/fts1_tokenizer.h \
3165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/ext/fts1/fts1_tokenizer1.c
3175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)SRC += \
3185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/ext/fts2/fts2.c \
3195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/ext/fts2/fts2.h \
3205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/ext/fts2/fts2_hash.c \
3215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/ext/fts2/fts2_hash.h \
3225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/ext/fts2/fts2_icu.c \
3235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/ext/fts2/fts2_porter.c \
3245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/ext/fts2/fts2_tokenizer.h \
3255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/ext/fts2/fts2_tokenizer.c \
3265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/ext/fts2/fts2_tokenizer1.c
3275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)SRC += \
3285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/ext/fts3/fts3.c \
3295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/ext/fts3/fts3.h \
3305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/ext/fts3/fts3_expr.c \
3315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/ext/fts3/fts3_expr.h \
3325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/ext/fts3/fts3_hash.c \
3335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/ext/fts3/fts3_hash.h \
3345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/ext/fts3/fts3_icu.c \
3355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/ext/fts3/fts3_porter.c \
3365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/ext/fts3/fts3_tokenizer.h \
3375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/ext/fts3/fts3_tokenizer.c \
3385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/ext/fts3/fts3_tokenizer1.c
3395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)SRC += \
3405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/ext/icu/sqliteicu.h \
3415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/ext/icu/icu.c 
3425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)SRC += \
3435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/ext/rtree/rtree.h \
3445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/ext/rtree/rtree.c
3455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
3465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
3475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# Generated source code files
3485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
3495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)SRC += \
3505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  keywordhash.h \
3515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  opcodes.c \
3525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  opcodes.h \
3535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  parse.c \
3545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  parse.h \
3555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  sqlite3.h
3565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
3575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
3585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# Source code to the test files.
3595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
3605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TESTSRC = \
3615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/test1.c \
3625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/test2.c \
3635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/test3.c \
3645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/test4.c \
3655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/test5.c \
3665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/test6.c \
3675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/test7.c \
3685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/test8.c \
3695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/test9.c \
3705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/test_autoext.c \
3715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/test_async.c \
3725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/test_backup.c \
3735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/test_btree.c \
3745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/test_config.c \
3755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/test_devsym.c \
3765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/test_func.c \
3775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/test_hexio.c \
3785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/test_journal.c \
3795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/test_malloc.c \
3805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/test_md5.c \
3815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/test_mutex.c \
3825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/test_onefile.c \
3835821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/test_osinst.c \
3845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/test_pcache.c \
3855821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/test_schema.c \
3865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/test_server.c \
3875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/test_tclvar.c \
3885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/test_thread.c \
3895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/test_vfs.c \
3905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/test_wsd.c \
3915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
3925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#TESTSRC += $(TOP)/ext/fts2/fts2_tokenizer.c
3935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#TESTSRC += $(TOP)/ext/fts3/fts3_tokenizer.c
3945821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
3955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TESTSRC2 = \
3965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/attach.c $(TOP)/src/backup.c $(TOP)/src/btree.c                   \
3975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/build.c $(TOP)/src/ctime.c $(TOP)/src/date.c                      \
3985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/expr.c $(TOP)/src/func.c $(TOP)/src/insert.c $(TOP)/src/os.c      \
3995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/os_os2.c $(TOP)/src/os_unix.c $(TOP)/src/os_win.c                 \
4005821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/pager.c $(TOP)/src/pragma.c $(TOP)/src/prepare.c                  \
4015821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/printf.c $(TOP)/src/random.c $(TOP)/src/pcache.c                  \
4025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/pcache1.c $(TOP)/src/select.c $(TOP)/src/tokenize.c               \
4035821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/utf.c $(TOP)/src/util.c $(TOP)/src/vdbeapi.c $(TOP)/src/vdbeaux.c \
4045821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/src/vdbe.c $(TOP)/src/vdbemem.c $(TOP)/src/where.c parse.c            \
4055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/ext/fts3/fts3.c $(TOP)/ext/fts3/fts3_expr.c                           \
4065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/ext/fts3/fts3_tokenizer.c                                             \
4075821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/ext/async/sqlite3async.c
4085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
4095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# Header files used by all library source files.
4105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
4115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)HDR = \
4125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)   $(TOP)/src/btree.h \
4135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)   $(TOP)/src/btreeInt.h \
4145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)   $(TOP)/src/hash.h \
4155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)   $(TOP)/src/hwtime.h \
4165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)   keywordhash.h \
4175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)   $(TOP)/src/mutex.h \
4185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)   opcodes.h \
4195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)   $(TOP)/src/os.h \
4205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)   $(TOP)/src/os_common.h \
4215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)   $(TOP)/src/pager.h \
4225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)   $(TOP)/src/pcache.h \
4235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)   parse.h  \
4245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)   sqlite3.h  \
4255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)   $(TOP)/src/sqlite3ext.h \
4265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)   $(TOP)/src/sqliteInt.h  \
4275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)   $(TOP)/src/sqliteLimit.h \
4285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)   $(TOP)/src/vdbe.h \
4295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)   $(TOP)/src/vdbeInt.h
4305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
4315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# Header files used by extensions
4325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
4335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)EXTHDR += \
4345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/ext/fts1/fts1.h \
4355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/ext/fts1/fts1_hash.h \
4365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/ext/fts1/fts1_tokenizer.h
4375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)EXTHDR += \
4385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/ext/fts2/fts2.h \
4395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/ext/fts2/fts2_hash.h \
4405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/ext/fts2/fts2_tokenizer.h
4415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)EXTHDR += \
4425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/ext/fts3/fts3.h \
4435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/ext/fts3/fts3_expr.h \
4445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/ext/fts3/fts3_hash.h \
4455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/ext/fts3/fts3_tokenizer.h
4465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)EXTHDR += \
4475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/ext/rtree/rtree.h
4485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)EXTHDR += \
4495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  $(TOP)/ext/icu/sqliteicu.h
4505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
4515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# This is the default Makefile target.  The objects listed here
4525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# are what get build when you type just "make" with no arguments.
4535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
4545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)all:	sqlite3.h libsqlite3.a sqlite3$(EXE)
4555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
4565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)libsqlite3.a:	$(LIBOBJ)
4575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	$(AR) libsqlite3.a $(LIBOBJ)
4585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	$(RANLIB) libsqlite3.a
4595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
4605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)$(SHPREFIX)sqlite3.$(SO):	$(LIBOBJ)
4615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	$(MKSHLIB) -o $(SHPREFIX)sqlite3.$(SO) $(LIBOBJ) $(TLIBS_SHARED)
4625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
4635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)sqlite3$(EXE):	$(TOP)/src/shell.c libsqlite3.a sqlite3.h
4645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	$(TCCX) $(READLINE_FLAGS) -o sqlite3$(EXE)      \
4655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		$(TOP)/src/shell.c                      \
4665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		$(LIBREADLINE) $(TLIBS) $(THREADLIB) -L. -lsqlite3
4675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
4685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# This target creates a directory named "tsrc" and fills it with
4695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# copies of all of the C source code and header files needed to
4705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# build on the target system.  Some of the C source code and header
4715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# files are automatically generated.  This target takes care of
4725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# all that automatic generation.
4735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
4745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)target_source:	$(SRC)
4755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	rm -rf tsrc
4765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	mkdir tsrc
4775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	cp -f $(SRC) tsrc
4785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	rm tsrc/sqlite.h.in tsrc/parse.y
4795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	touch target_source
4805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
4815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)sqlite3.c:	target_source $(TOP)/tool/mksqlite3c.tcl
4825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	tclsh $(TOP)/tool/mksqlite3c.tcl
4835821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	cp sqlite3.c tclsqlite3.c
4845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	cat $(TOP)/src/tclsqlite.c >>tclsqlite3.c
4855821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
4865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)fts2amal.c:	target_source $(TOP)/ext/fts2/mkfts2amal.tcl
4875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	tclsh $(TOP)/ext/fts2/mkfts2amal.tcl
4885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
4895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)fts3amal.c:	target_source $(TOP)/ext/fts3/mkfts3amal.tcl
4905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	tclsh $(TOP)/ext/fts3/mkfts3amal.tcl
4915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
4925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# Rules to build the LEMON compiler generator
4935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
4945821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)lemon:	$(TOP)/tool/lemon.c $(TOP)/src/lempar.c
4955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	$(BCC) -o lemon $(TOP)/tool/lemon.c
4965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	cp $(TOP)/src/lempar.c .
4975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
4985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# Rules to build individual *.o files from generated *.c files. This
4995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# applies to:
5005821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
5015821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#     parse.o
5025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#     opcodes.o
5035821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
5045821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)%.o: %.c $(HDR)
5055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	$(TCCX_SHARED) -c $<
5065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
5075821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# Rules to build individual *.o files from files in the src directory.
5085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
5095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)%.o: $(TOP)/src/%.c $(HDR)
5105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	$(TCCX_SHARED) -c $<
5115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
5125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)tclsqlite.o:	$(TOP)/src/tclsqlite.c $(HDR)
5135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	$(TCCX_SHARED) $(TCL_FLAGS) -c $(TOP)/src/tclsqlite.c
5145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
5155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
5165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
5175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# Rules to build opcodes.c and opcodes.h
5185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
5195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)opcodes.c:	opcodes.h $(TOP)/mkopcodec.awk
5205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	sort -n -b -k 3 opcodes.h | $(NAWK) -f $(TOP)/mkopcodec.awk >opcodes.c
5215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
5225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)opcodes.h:	parse.h $(TOP)/src/vdbe.c $(TOP)/mkopcodeh.awk
5235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	cat parse.h $(TOP)/src/vdbe.c | \
5245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		$(NAWK) -f $(TOP)/mkopcodeh.awk >opcodes.h
5255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
5265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# Rules to build parse.c and parse.h - the outputs of lemon.
5275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
5285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)parse.h:	parse.c
5295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
5305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)parse.c:	$(TOP)/src/parse.y lemon $(TOP)/addopcodes.awk
5315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	cp $(TOP)/src/parse.y .
5325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	rm -f parse.h
5335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	./lemon $(OPTS) parse.y
5345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	mv parse.h parse.h.temp
5355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	awk -f $(TOP)/addopcodes.awk parse.h.temp >parse.h
5365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
5375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)sqlite3.h:	$(TOP)/src/sqlite.h.in 
5385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	sed -e s/--VERS--/`cat ${TOP}/VERSION`/ \
5395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	    -e s/--VERSION-NUMBER--/`cat ${TOP}/VERSION | sed 's/[^0-9]/ /g' | $(NAWK) '{printf "%d%03d%03d",$$1,$$2,$$3}'`/ \
5405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                 $(TOP)/src/sqlite.h.in >sqlite3.h
5415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
5425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)keywordhash.h:	$(TOP)/tool/mkkeywordhash.c
5435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	$(BCC) -o mkkeywordhash $(OPTS) $(TOP)/tool/mkkeywordhash.c
5445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	./mkkeywordhash >keywordhash.h
5455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
5465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
5475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
5485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# Rules to build the extension objects.
5495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
5505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)icu.o:	$(TOP)/ext/icu/icu.c $(HDR) $(EXTHDR)
5515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	$(TCCX_SHARED) -DSQLITE_CORE -c $(TOP)/ext/icu/icu.c
5525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
5535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)fts2.o:	$(TOP)/ext/fts2/fts2.c $(HDR) $(EXTHDR)
5545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	$(TCCX_SHARED) -DSQLITE_CORE -c $(TOP)/ext/fts2/fts2.c
5555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
5565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)fts2_hash.o:	$(TOP)/ext/fts2/fts2_hash.c $(HDR) $(EXTHDR)
5575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	$(TCCX_SHARED) -DSQLITE_CORE -c $(TOP)/ext/fts2/fts2_hash.c
5585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
5595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)fts2_icu.o:	$(TOP)/ext/fts2/fts2_icu.c $(HDR) $(EXTHDR)
5605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	$(TCCX_SHARED) -DSQLITE_CORE -c $(TOP)/ext/fts2/fts2_icu.c
5615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
5625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)fts2_porter.o:	$(TOP)/ext/fts2/fts2_porter.c $(HDR) $(EXTHDR)
5635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	$(TCCX_SHARED) -DSQLITE_CORE -c $(TOP)/ext/fts2/fts2_porter.c
5645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
5655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)fts2_tokenizer.o:	$(TOP)/ext/fts2/fts2_tokenizer.c $(HDR) $(EXTHDR)
5665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	$(TCCX_SHARED) -DSQLITE_CORE -c $(TOP)/ext/fts2/fts2_tokenizer.c
5675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
5685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)fts2_tokenizer1.o:	$(TOP)/ext/fts2/fts2_tokenizer1.c $(HDR) $(EXTHDR)
5695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	$(TCCX_SHARED) -DSQLITE_CORE -c $(TOP)/ext/fts2/fts2_tokenizer1.c
5705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
5715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)fts3.o:	$(TOP)/ext/fts3/fts3.c $(HDR) $(EXTHDR)
5725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	$(TCCX_SHARED) -DSQLITE_CORE -c $(TOP)/ext/fts3/fts3.c
5735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
5745821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)fts3_expr.o:	$(TOP)/ext/fts3/fts3_expr.c $(HDR) $(EXTHDR)
5755821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	$(TCCX_SHARED) -DSQLITE_CORE -c $(TOP)/ext/fts3/fts3_expr.c
5765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
5775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)fts3_hash.o:	$(TOP)/ext/fts3/fts3_hash.c $(HDR) $(EXTHDR)
5785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	$(TCCX_SHARED) -DSQLITE_CORE -c $(TOP)/ext/fts3/fts3_hash.c
5795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
5805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)fts3_icu.o:	$(TOP)/ext/fts3/fts3_icu.c $(HDR) $(EXTHDR)
5815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	$(TCCX_SHARED) -DSQLITE_CORE -c $(TOP)/ext/fts3/fts3_icu.c
5825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
5835821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)fts3_porter.o:	$(TOP)/ext/fts3/fts3_porter.c $(HDR) $(EXTHDR)
5845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	$(TCCX_SHARED) -DSQLITE_CORE -c $(TOP)/ext/fts3/fts3_porter.c
5855821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
5865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)fts3_tokenizer.o:	$(TOP)/ext/fts3/fts3_tokenizer.c $(HDR) $(EXTHDR)
5875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	$(TCCX_SHARED) -DSQLITE_CORE -c $(TOP)/ext/fts3/fts3_tokenizer.c
5885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
5895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)fts3_tokenizer1.o:	$(TOP)/ext/fts3/fts3_tokenizer1.c $(HDR) $(EXTHDR)
5905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	$(TCCX_SHARED) -DSQLITE_CORE -c $(TOP)/ext/fts3/fts3_tokenizer1.c
5915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
5925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)rtree.o:	$(TOP)/ext/rtree/rtree.c $(HDR) $(EXTHDR)
5935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	$(TCCX_SHARED) -DSQLITE_CORE -c $(TOP)/ext/rtree/rtree.c
5945821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
5955821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
5965821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# Rules for building test programs and for running tests
5975821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
5985821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)tclsqlite3:	$(TOP)/src/tclsqlite.c libsqlite3.a
5995821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	$(TCCX_SHARED) $(TCL_FLAGS) -DTCLSH=1 -o tclsqlite3 \
6005821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		$(TOP)/src/tclsqlite.c libsqlite3.a $(LIBTCL) $(THREADLIB)
6015821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
6025821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
6035821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)# Rules to build the 'testfixture' application.
6045821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#
6055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TESTFIXTURE_FLAGS  = -DTCLSH=1 -DSQLITE_TEST=1 -DSQLITE_CRASH_TEST=1
6065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TESTFIXTURE_FLAGS += -DSQLITE_SERVER=1 -DSQLITE_PRIVATE="" -DSQLITE_CORE 
6075821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
6085821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)testfixture$(EXE): $(TESTSRC2) libsqlite3.a $(TESTSRC) $(TOP)/src/tclsqlite.c
6095821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	$(TCCX) $(TCL_FLAGS) $(TESTFIXTURE_FLAGS)                            \
6105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		$(TESTSRC) $(TESTSRC2) $(TOP)/src/tclsqlite.c                \
6115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		-o testfixture$(EXE) $(LIBTCL) $(THREADLIB) libsqlite3.a
6125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
6135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)amalgamation-testfixture$(EXE): sqlite3.c $(TESTSRC) $(TOP)/src/tclsqlite.c
6145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	$(TCCX) $(TCL_FLAGS) $(TESTFIXTURE_FLAGS)                            \
6155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		$(TESTSRC) $(TOP)/src/tclsqlite.c sqlite3.c                  \
6165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		-o testfixture$(EXE) $(LIBTCL) $(THREADLIB)
6175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
6185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)fts3-testfixture$(EXE): sqlite3.c fts3amal.c $(TESTSRC) $(TOP)/src/tclsqlite.c
6195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	$(TCCX) $(TCL_FLAGS) $(TESTFIXTURE_FLAGS)                            \
6205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	-DSQLITE_ENABLE_FTS3=1                                               \
6215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		$(TESTSRC) $(TOP)/src/tclsqlite.c sqlite3.c fts3amal.c       \
6225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		-o testfixture$(EXE) $(LIBTCL) $(THREADLIB)
6235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
6245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)fulltest:	testfixture$(EXE) sqlite3$(EXE)
6255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	./testfixture$(EXE) $(TOP)/test/all.test
6265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
6275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)soaktest:	testfixture$(EXE) sqlite3$(EXE)
6285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	./testfixture$(EXE) $(TOP)/test/all.test -soak=1
6295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
6305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)test:	testfixture$(EXE) sqlite3$(EXE)
6315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	./testfixture$(EXE) $(TOP)/test/veryquick.test
6325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
6335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)sqlite3_analyzer$(EXE):	$(TOP)/src/tclsqlite.c sqlite3.c $(TESTSRC) \
6345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)			$(TOP)/tool/spaceanal.tcl
6355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	sed \
6365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	  -e '/^#/d' \
6375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	  -e 's,\\,\\\\,g' \
6385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	  -e 's,",\\",g' \
6395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	  -e 's,^,",' \
6405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	  -e 's,$$,\\n",' \
6415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	  $(TOP)/tool/spaceanal.tcl >spaceanal_tcl.h
6425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	$(TCCX) $(TCL_FLAGS)                  $(TESTFIXTURE_FLAGS)                                 \
6435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		-DTCLSH=2 -DSQLITE_TEST=1 -DSQLITE_DEBUG=1 -DSQLITE_PRIVATE="" \
6445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		$(TESTSRC) $(TOP)/src/tclsqlite.c sqlite3.c                    \
6455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		-o sqlite3_analyzer$(EXE)                                      \
6465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)		$(LIBTCL) $(THREADLIB)
6475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
6485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)TEST_EXTENSION = $(SHPREFIX)testloadext.$(SO)
6495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)$(TEST_EXTENSION): $(TOP)/src/test_loadext.c
6505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	$(MKSHLIB) $(TOP)/src/test_loadext.c -o $(TEST_EXTENSION)
6515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
6525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)extensiontest: testfixture$(EXE) $(TEST_EXTENSION)
6535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	./testfixture$(EXE) $(TOP)/test/loadext.test
6545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
6555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)clean:	
6565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	rm -f *.o sqlite3$(EXE) libsqlite3.a sqlite3.h opcodes.*
6575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	rm -f lemon lempar.c parse.* sqlite*.tar.gz mkkeywordhash keywordhash.h
6585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	rm -f $(PUBLISH)
6595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	rm -f *.da *.bb *.bbg gmon.out
6605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	rm -rf tsrc target_source
6615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	rm -f testloadext.dll libtestloadext.so
6625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	rm -f sqlite3.c fts?amal.c tclsqlite3.c
6635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)	rm -f $(SHPREFIX)sqlite3.$(SO)
664