5 # This is a template makefile for SQLite. Most people prefer to
6 # use the autoconf generated "configure" script to generate the
7 # makefile automatically. But that does not work for everybody
8 # and in every situation. If you are having problems with the
9 # "configure" script, you might want to try this makefile as an
10 # alternative. Create a copy of this file, edit the parameters
11 # below and type "make".
14 #### The toplevel directory of the source tree. This is the directory
15 # that contains this "Makefile.in" and the "configure.in" script.
19 #### C Compiler and options for use in building executables that
20 # will run on the platform that is doing the build.
23 #BCC = /opt/ancic/bin/c89 -0
25 #### If the target operating system supports the "usleep()" system
26 # call, then define the HAVE_USLEEP macro for all C modules.
29 USLEEP
= -DHAVE_USLEEP
=1
31 #### If you want the SQLite library to be safe for use within a
32 # multi-threaded program, then define the following macro
35 THREADSAFE
= -DTHREADSAFE
=1
36 #THREADSAFE = -DTHREADSAFE=0
38 #### Specify any extra linker options needed to make the library
44 #### Specify any extra libraries needed to access required functions.
46 #TLIBS = -lrt # fdatasync on Solaris 8
47 ifeq ($(shell uname
-s
),Darwin
)
48 TLIBS
= -framework CoreServices
53 #### Leave SQLITE_DEBUG undefined for maximum speed. Use SQLITE_DEBUG=1
54 # to check for memory leaks. Use SQLITE_DEBUG=2 to print a log of all
55 # malloc()s and free()s in order to track down memory leaks.
57 # SQLite uses some expensive assert() statements in the inner loop.
58 # You can make the library go almost twice as fast if you compile
61 #OPTS = -DSQLITE_DEBUG=2
62 #OPTS = -DSQLITE_DEBUG=1
65 #OPTS += -DHAVE_FDATASYNC=1
67 # These flags match those for SQLITE_CFLAGS in config.mk.
70 OPTS
+= -DSQLITE_ENABLE_FTS2
-DSQLITE_ENABLE_BROKEN_FTS2
71 OPTS
+= -DSQLITE_DEFAULT_FILE_PERMISSIONS
=0600
72 OPTS
+= -DHAVE_USLEEP
=1
74 # Additional SQLite tests.
75 OPTS
+= -DSQLITE_MEMDEBUG
=1
77 # Don't include these ones, they break the SQLite tests.
78 # -DSQLITE_OMIT_ATTACH=1 \
79 # -DSQLITE_OMIT_LOAD_EXTENSION=1 \
80 # -DSQLITE_OMIT_VACUUM=1 \
81 # -DSQLITE_TRANSACTION_DEFAULT_IMMEDIATE=1 \
83 # TODO(shess) I can't see why I need this setting.
86 # The recover virtual table is not generally enabled. Enable it for testing
88 OPTS
+= -DDEFAULT_ENABLE_RECOVER
=1
90 # Support for loading Chromium ICU data in sqlite3.
91 ifeq ($(shell uname
-s
),Darwin
)
94 SHELL_ICU
= $(TOP
)/src
/shell_icu_linux.c
-licuuc
97 #### The suffix to add to executable files. ".exe" for windows.
103 #### C Compile and options for use in building executables that
104 # will run on the target platform. This is usually the same
105 # as BCC, unless you are cross-compiling.
108 #TCC = gcc -g -O0 -Wall
109 #TCC = gcc -g -O0 -Wall -fprofile-arcs -ftest-coverage
110 #TCC = /opt/mingw/bin/i386-mingw32-gcc -O6
111 #TCC = /opt/ansic/bin/c89 -O +z -Wl,-a,archive
113 #### Tools used to build a static library.
116 #AR = /opt/mingw/bin/i386-mingw32-ar cr
118 #RANLIB = /opt/mingw/bin/i386-mingw32-ranlib
120 MKSHLIB
= gcc
-shared
126 #### Extra compiler options needed for programs that use the TCL library.
128 TCL_FLAGS
= -I
/usr
/include/tcl8.5
129 #TCL_FLAGS = -DSTATIC_BUILD=1
130 #TCL_FLAGS = -I/home/drh/tcltk/8.5linux
131 #TCL_FLAGS = -I/home/drh/tcltk/8.5win -DSTATIC_BUILD=1
132 #TCL_FLAGS = -I/home/drh/tcltk/8.3hpux
134 #### Linker options needed to link against the TCL library.
136 LIBTCL
= -ltcl8.5
-lm
-ldl
137 #LIBTCL = /home/drh/tcltk/8.5linux/libtcl8.5g.a -lm -ldl
138 #LIBTCL = /home/drh/tcltk/8.5win/libtcl85s.a -lmsvcrt
139 #LIBTCL = /home/drh/tcltk/8.3hpux/libtcl8.3.a -ldld -lm -lc
141 #### Additional objects for SQLite library when TCL support is enabled.
145 #### Compiler options needed for programs that use the readline() library.
148 #READLINE_FLAGS = -DHAVE_READLINE=1 -I/usr/include/readline
150 #### Linker options needed by programs using readline() must link against.
153 #LIBREADLINE = -static -lreadline -ltermcap
155 #### Which "awk" program provides nawk compatibilty
160 # You should not have to change anything below this line
161 ###############################################################################
162 include $(TOP
)/main.mk