OLD | NEW |
1 #!/usr/make | 1 #!/usr/make |
2 # | 2 # |
3 # Makefile for SQLITE | 3 # Makefile for SQLITE |
4 # | 4 # |
5 # This is a template makefile for SQLite. Most people prefer to | 5 # This is a template makefile for SQLite. Most people prefer to |
6 # use the autoconf generated "configure" script to generate the | 6 # use the autoconf generated "configure" script to generate the |
7 # makefile automatically. But that does not work for everybody | 7 # makefile automatically. But that does not work for everybody |
8 # and in every situation. If you are having problems with the | 8 # and in every situation. If you are having problems with the |
9 # "configure" script, you might want to try this makefile as an | 9 # "configure" script, you might want to try this makefile as an |
10 # alternative. Create a copy of this file, edit the parameters | 10 # alternative. Create a copy of this file, edit the parameters |
(...skipping 14 matching lines...) Expand all Loading... |
25 #### If the target operating system supports the "usleep()" system | 25 #### If the target operating system supports the "usleep()" system |
26 # call, then define the HAVE_USLEEP macro for all C modules. | 26 # call, then define the HAVE_USLEEP macro for all C modules. |
27 # | 27 # |
28 #USLEEP = | 28 #USLEEP = |
29 USLEEP = -DHAVE_USLEEP=1 | 29 USLEEP = -DHAVE_USLEEP=1 |
30 | 30 |
31 #### If you want the SQLite library to be safe for use within a | 31 #### If you want the SQLite library to be safe for use within a |
32 # multi-threaded program, then define the following macro | 32 # multi-threaded program, then define the following macro |
33 # appropriately: | 33 # appropriately: |
34 # | 34 # |
35 #THREADSAFE = -DTHREADSAFE=1 | |
36 THREADSAFE = -DTHREADSAFE=1 | 35 THREADSAFE = -DTHREADSAFE=1 |
| 36 #THREADSAFE = -DTHREADSAFE=0 |
37 | 37 |
38 #### Specify any extra linker options needed to make the library | 38 #### Specify any extra linker options needed to make the library |
39 # thread safe | 39 # thread safe |
40 # | 40 # |
41 #THREADLIB = -lpthread | |
42 THREADLIB = -lpthread | 41 THREADLIB = -lpthread |
| 42 #THREADLIB = |
43 | 43 |
44 #### Specify any extra libraries needed to access required functions. | 44 #### Specify any extra libraries needed to access required functions. |
45 # | 45 # |
46 #TLIBS = -lrt # fdatasync on Solaris 8 | 46 #TLIBS = -lrt # fdatasync on Solaris 8 |
47 TLIBS = | 47 ifeq ($(shell uname -s),Darwin) |
| 48 TLIBS = -framework CoreServices |
| 49 else |
| 50 TLIBS = -ldl |
| 51 endif |
48 | 52 |
49 #### Leave SQLITE_DEBUG undefined for maximum speed. Use SQLITE_DEBUG=1 | 53 #### Leave SQLITE_DEBUG undefined for maximum speed. Use SQLITE_DEBUG=1 |
50 # to check for memory leaks. Use SQLITE_DEBUG=2 to print a log of all | 54 # to check for memory leaks. Use SQLITE_DEBUG=2 to print a log of all |
51 # malloc()s and free()s in order to track down memory leaks. | 55 # malloc()s and free()s in order to track down memory leaks. |
52 # | 56 # |
53 # SQLite uses some expensive assert() statements in the inner loop. | 57 # SQLite uses some expensive assert() statements in the inner loop. |
54 # You can make the library go almost twice as fast if you compile | 58 # You can make the library go almost twice as fast if you compile |
55 # with -DNDEBUG=1 | 59 # with -DNDEBUG=1 |
56 # | 60 # |
57 #OPTS = -DSQLITE_DEBUG=2 | 61 #OPTS = -DSQLITE_DEBUG=2 |
58 #OPTS = -DSQLITE_DEBUG=1 | 62 #OPTS = -DSQLITE_DEBUG=1 |
59 #OPTS = | 63 #OPTS = |
| 64 OPTS = -DNDEBUG=1 |
| 65 #OPTS += -DHAVE_FDATASYNC=1 |
60 | 66 |
61 # These flags match those for SQLITE_CFLAGS in config.mk. | 67 # These flags match those for SQLITE_CFLAGS in config.mk. |
62 | 68 |
63 OPTS += -DNDEBUG | |
64 OPTS += -DSQLITE_CORE | 69 OPTS += -DSQLITE_CORE |
65 OPTS += -DSQLITE_ENABLE_FTS2 -DSQLITE_ENABLE_BROKEN_FTS2 | 70 OPTS += -DSQLITE_ENABLE_FTS2 -DSQLITE_ENABLE_BROKEN_FTS2 |
66 OPTS += -DSQLITE_DEFAULT_FILE_PERMISSIONS=0600 | 71 OPTS += -DSQLITE_DEFAULT_FILE_PERMISSIONS=0600 |
67 OPTS += -DHAVE_USLEEP=1 | 72 OPTS += -DHAVE_USLEEP=1 |
68 | 73 |
69 # Additional SQLite tests. | 74 # Additional SQLite tests. |
70 OPTS += -DSQLITE_MEMDEBUG=1 | 75 OPTS += -DSQLITE_MEMDEBUG=1 |
71 | 76 |
72 # Don't include these ones, they break the SQLite tests. | 77 # Don't include these ones, they break the SQLite tests. |
73 # -DSQLITE_OMIT_ATTACH=1 \ | 78 # -DSQLITE_OMIT_ATTACH=1 \ |
74 # -DSQLITE_OMIT_LOAD_EXTENSION=1 \ | 79 # -DSQLITE_OMIT_LOAD_EXTENSION=1 \ |
75 # -DSQLITE_OMIT_VACUUM=1 \ | 80 # -DSQLITE_OMIT_VACUUM=1 \ |
76 # -DSQLITE_TRANSACTION_DEFAULT_IMMEDIATE=1 \ | 81 # -DSQLITE_TRANSACTION_DEFAULT_IMMEDIATE=1 \ |
77 | 82 |
78 SHELL_ICU = $(TOP)/src/shell_icu_linux.c -licuuc | |
79 | |
80 # TODO(shess) I can't see why I need this setting. | 83 # TODO(shess) I can't see why I need this setting. |
81 OPTS += -DOS_UNIX=1 | 84 OPTS += -DOS_UNIX=1 |
82 | 85 |
| 86 # The recover virtual table is not generally enabled. Enable it for testing |
| 87 # purposes. |
| 88 OPTS += -DDEFAULT_ENABLE_RECOVER=1 |
| 89 |
| 90 # Support for loading Chromium ICU data in sqlite3. |
| 91 ifeq ($(shell uname -s),Darwin) |
| 92 SHELL_ICU = |
| 93 else |
| 94 SHELL_ICU = $(TOP)/src/shell_icu_linux.c -licuuc |
| 95 endif |
| 96 |
83 #### The suffix to add to executable files. ".exe" for windows. | 97 #### The suffix to add to executable files. ".exe" for windows. |
84 # Nothing for unix. | 98 # Nothing for unix. |
85 # | 99 # |
86 #EXE = .exe | 100 #EXE = .exe |
87 EXE = | 101 EXE = |
88 | 102 |
89 #### C Compile and options for use in building executables that | 103 #### C Compile and options for use in building executables that |
90 # will run on the target platform. This is usually the same | 104 # will run on the target platform. This is usually the same |
91 # as BCC, unless you are cross-compiling. | 105 # as BCC, unless you are cross-compiling. |
92 # | 106 # |
93 TCC = gcc -O6 | 107 TCC = gcc -Os |
94 #TCC = gcc -g -O0 -Wall | 108 #TCC = gcc -g -O0 -Wall |
95 #TCC = gcc -g -O0 -Wall -fprofile-arcs -ftest-coverage | 109 #TCC = gcc -g -O0 -Wall -fprofile-arcs -ftest-coverage |
96 #TCC = /opt/mingw/bin/i386-mingw32-gcc -O6 | 110 #TCC = /opt/mingw/bin/i386-mingw32-gcc -O6 |
97 #TCC = /opt/ansic/bin/c89 -O +z -Wl,-a,archive | 111 #TCC = /opt/ansic/bin/c89 -O +z -Wl,-a,archive |
98 | 112 |
99 #### Tools used to build a static library. | 113 #### Tools used to build a static library. |
100 # | 114 # |
101 AR = ar cr | 115 AR = ar cr |
102 #AR = /opt/mingw/bin/i386-mingw32-ar cr | 116 #AR = /opt/mingw/bin/i386-mingw32-ar cr |
103 RANLIB = ranlib | 117 RANLIB = ranlib |
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
139 #LIBREADLINE = -static -lreadline -ltermcap | 153 #LIBREADLINE = -static -lreadline -ltermcap |
140 | 154 |
141 #### Which "awk" program provides nawk compatibilty | 155 #### Which "awk" program provides nawk compatibilty |
142 # | 156 # |
143 # NAWK = nawk | 157 # NAWK = nawk |
144 NAWK = awk | 158 NAWK = awk |
145 | 159 |
146 # You should not have to change anything below this line | 160 # You should not have to change anything below this line |
147 ############################################################################### | 161 ############################################################################### |
148 include $(TOP)/main.mk | 162 include $(TOP)/main.mk |
OLD | NEW |