blob: 27fc4fe6c2381ee3835bed9feaaa77a0dae7a225 [file] [log] [blame]
shanehdc97a8c2010-02-23 20:08:35 +00001/*
2** 2010 February 23
3**
4** The author disclaims copyright to this source code. In place of
5** a legal notice, here is a blessing:
6**
7** May you do good and not evil.
8** May you find forgiveness for yourself and forgive others.
9** May you share freely, never taking more than you give.
10**
11*************************************************************************
12**
13** This file implements routines used to report what compile-time options
14** SQLite was built with.
15*/
16
17#ifndef SQLITE_OMIT_COMPILEOPTION_DIAGS
18
drh7f2d1cd2017-06-24 16:35:00 +000019/*
20** Include the configuration header output by 'configure' if we're using the
21** autoconf-based build
22*/
23#if defined(_HAVE_SQLITE_CONFIG_H) && !defined(SQLITECONFIG_H)
24#include "config.h"
25#define SQLITECONFIG_H 1
26#endif
danda1f49b2017-06-16 19:51:47 +000027
28/* These macros are provided to "stringify" the value of the define
29** for those options in which the value is meaningful. */
30#define CTIMEOPT_VAL_(opt) #opt
31#define CTIMEOPT_VAL(opt) CTIMEOPT_VAL_(opt)
shanehdc97a8c2010-02-23 20:08:35 +000032
dan78ccff12018-07-23 10:57:53 +000033/* Like CTIMEOPT_VAL, but especially for SQLITE_DEFAULT_LOOKASIDE. This
34** option requires a separate macro because legal values contain a single
35** comma. e.g. (-DSQLITE_DEFAULT_LOOKASIDE="100,100") */
36#define CTIMEOPT_VAL2_(opt1,opt2) #opt1 "," #opt2
37#define CTIMEOPT_VAL2(opt) CTIMEOPT_VAL2_(opt)
38
shanehdc97a8c2010-02-23 20:08:35 +000039/*
shaneh915c8bd2010-02-24 19:36:10 +000040** An array of names of all compile-time options. This array should
41** be sorted A-Z.
shanehdc97a8c2010-02-23 20:08:35 +000042**
43** This array looks large, but in a typical installation actually uses
shaneh915c8bd2010-02-24 19:36:10 +000044** only a handful of compile-time options, so most times this array is usually
shanehdc97a8c2010-02-23 20:08:35 +000045** rather short and uses little memory space.
46*/
drhf383f352017-06-20 18:19:16 +000047static const char * const sqlite3azCompileOpt[] = {
shaneh915c8bd2010-02-24 19:36:10 +000048
danda1f49b2017-06-16 19:51:47 +000049/*
50** BEGIN CODE GENERATED BY tool/mkctime.tcl
51*/
drh0ede9eb2015-01-10 16:49:23 +000052#if SQLITE_32BIT_ROWID
shanehdc97a8c2010-02-23 20:08:35 +000053 "32BIT_ROWID",
54#endif
drh0ede9eb2015-01-10 16:49:23 +000055#if SQLITE_4_BYTE_ALIGNED_MALLOC
shanehdc97a8c2010-02-23 20:08:35 +000056 "4_BYTE_ALIGNED_MALLOC",
57#endif
danda1f49b2017-06-16 19:51:47 +000058#if SQLITE_64BIT_STATS
59 "64BIT_STATS",
60#endif
61#if SQLITE_ALLOW_COVERING_INDEX_SCAN
62 "ALLOW_COVERING_INDEX_SCAN",
63#endif
64#if SQLITE_ALLOW_URI_AUTHORITY
65 "ALLOW_URI_AUTHORITY",
66#endif
67#ifdef SQLITE_BITMASK_TYPE
68 "BITMASK_TYPE=" CTIMEOPT_VAL(SQLITE_BITMASK_TYPE),
69#endif
70#if SQLITE_BUG_COMPATIBLE_20160819
71 "BUG_COMPATIBLE_20160819",
72#endif
drh0ede9eb2015-01-10 16:49:23 +000073#if SQLITE_CASE_SENSITIVE_LIKE
shanehdc97a8c2010-02-23 20:08:35 +000074 "CASE_SENSITIVE_LIKE",
75#endif
drh0ede9eb2015-01-10 16:49:23 +000076#if SQLITE_CHECK_PAGES
shanehdc97a8c2010-02-23 20:08:35 +000077 "CHECK_PAGES",
78#endif
drhaa032582016-07-28 17:24:16 +000079#if defined(__clang__) && defined(__clang_major__)
80 "COMPILER=clang-" CTIMEOPT_VAL(__clang_major__) "."
81 CTIMEOPT_VAL(__clang_minor__) "."
82 CTIMEOPT_VAL(__clang_patchlevel__),
mistachkinf35b8f82016-05-28 00:13:21 +000083#elif defined(_MSC_VER)
84 "COMPILER=msvc-" CTIMEOPT_VAL(_MSC_VER),
mistachkin7ce6cdd2016-05-27 21:13:43 +000085#elif defined(__GNUC__) && defined(__VERSION__)
86 "COMPILER=gcc-" __VERSION__,
mistachkin15e2dde2016-05-27 18:09:45 +000087#endif
drh0ede9eb2015-01-10 16:49:23 +000088#if SQLITE_COVERAGE_TEST
shanehdc97a8c2010-02-23 20:08:35 +000089 "COVERAGE_TEST",
90#endif
danda1f49b2017-06-16 19:51:47 +000091#if SQLITE_DEBUG
shanehdc97a8c2010-02-23 20:08:35 +000092 "DEBUG",
93#endif
danda1f49b2017-06-16 19:51:47 +000094#if SQLITE_DEFAULT_AUTOMATIC_INDEX
95 "DEFAULT_AUTOMATIC_INDEX",
96#endif
97#if SQLITE_DEFAULT_AUTOVACUUM
98 "DEFAULT_AUTOVACUUM",
99#endif
100#ifdef SQLITE_DEFAULT_CACHE_SIZE
101 "DEFAULT_CACHE_SIZE=" CTIMEOPT_VAL(SQLITE_DEFAULT_CACHE_SIZE),
102#endif
103#if SQLITE_DEFAULT_CKPTFULLFSYNC
104 "DEFAULT_CKPTFULLFSYNC",
105#endif
106#ifdef SQLITE_DEFAULT_FILE_FORMAT
107 "DEFAULT_FILE_FORMAT=" CTIMEOPT_VAL(SQLITE_DEFAULT_FILE_FORMAT),
108#endif
109#ifdef SQLITE_DEFAULT_FILE_PERMISSIONS
110 "DEFAULT_FILE_PERMISSIONS=" CTIMEOPT_VAL(SQLITE_DEFAULT_FILE_PERMISSIONS),
111#endif
112#if SQLITE_DEFAULT_FOREIGN_KEYS
113 "DEFAULT_FOREIGN_KEYS",
114#endif
115#ifdef SQLITE_DEFAULT_JOURNAL_SIZE_LIMIT
116 "DEFAULT_JOURNAL_SIZE_LIMIT=" CTIMEOPT_VAL(SQLITE_DEFAULT_JOURNAL_SIZE_LIMIT),
117#endif
118#ifdef SQLITE_DEFAULT_LOCKING_MODE
shaneh915c8bd2010-02-24 19:36:10 +0000119 "DEFAULT_LOCKING_MODE=" CTIMEOPT_VAL(SQLITE_DEFAULT_LOCKING_MODE),
120#endif
danda1f49b2017-06-16 19:51:47 +0000121#ifdef SQLITE_DEFAULT_LOOKASIDE
dan78ccff12018-07-23 10:57:53 +0000122 "DEFAULT_LOOKASIDE=" CTIMEOPT_VAL2(SQLITE_DEFAULT_LOOKASIDE),
danda1f49b2017-06-16 19:51:47 +0000123#endif
124#if SQLITE_DEFAULT_MEMSTATUS
125 "DEFAULT_MEMSTATUS",
126#endif
127#ifdef SQLITE_DEFAULT_MMAP_SIZE
drh9b4c59f2013-04-15 17:03:42 +0000128 "DEFAULT_MMAP_SIZE=" CTIMEOPT_VAL(SQLITE_DEFAULT_MMAP_SIZE),
drh34f74902013-04-03 13:09:18 +0000129#endif
danda1f49b2017-06-16 19:51:47 +0000130#ifdef SQLITE_DEFAULT_PAGE_SIZE
131 "DEFAULT_PAGE_SIZE=" CTIMEOPT_VAL(SQLITE_DEFAULT_PAGE_SIZE),
132#endif
133#ifdef SQLITE_DEFAULT_PCACHE_INITSZ
134 "DEFAULT_PCACHE_INITSZ=" CTIMEOPT_VAL(SQLITE_DEFAULT_PCACHE_INITSZ),
135#endif
136#ifdef SQLITE_DEFAULT_PROXYDIR_PERMISSIONS
137 "DEFAULT_PROXYDIR_PERMISSIONS=" CTIMEOPT_VAL(SQLITE_DEFAULT_PROXYDIR_PERMISSIONS),
138#endif
139#if SQLITE_DEFAULT_RECURSIVE_TRIGGERS
140 "DEFAULT_RECURSIVE_TRIGGERS",
141#endif
142#ifdef SQLITE_DEFAULT_ROWEST
143 "DEFAULT_ROWEST=" CTIMEOPT_VAL(SQLITE_DEFAULT_ROWEST),
144#endif
145#ifdef SQLITE_DEFAULT_SECTOR_SIZE
146 "DEFAULT_SECTOR_SIZE=" CTIMEOPT_VAL(SQLITE_DEFAULT_SECTOR_SIZE),
147#endif
148#ifdef SQLITE_DEFAULT_SYNCHRONOUS
danf5da7db2017-03-16 18:14:39 +0000149 "DEFAULT_SYNCHRONOUS=" CTIMEOPT_VAL(SQLITE_DEFAULT_SYNCHRONOUS),
150#endif
danda1f49b2017-06-16 19:51:47 +0000151#ifdef SQLITE_DEFAULT_WAL_AUTOCHECKPOINT
152 "DEFAULT_WAL_AUTOCHECKPOINT=" CTIMEOPT_VAL(SQLITE_DEFAULT_WAL_AUTOCHECKPOINT),
153#endif
154#ifdef SQLITE_DEFAULT_WAL_SYNCHRONOUS
danf5da7db2017-03-16 18:14:39 +0000155 "DEFAULT_WAL_SYNCHRONOUS=" CTIMEOPT_VAL(SQLITE_DEFAULT_WAL_SYNCHRONOUS),
156#endif
danda1f49b2017-06-16 19:51:47 +0000157#ifdef SQLITE_DEFAULT_WORKER_THREADS
158 "DEFAULT_WORKER_THREADS=" CTIMEOPT_VAL(SQLITE_DEFAULT_WORKER_THREADS),
159#endif
danceb97c12016-10-21 10:09:22 +0000160#if SQLITE_DIRECT_OVERFLOW_READ
161 "DIRECT_OVERFLOW_READ",
162#endif
drh0ede9eb2015-01-10 16:49:23 +0000163#if SQLITE_DISABLE_DIRSYNC
shanehdc97a8c2010-02-23 20:08:35 +0000164 "DISABLE_DIRSYNC",
165#endif
danda1f49b2017-06-16 19:51:47 +0000166#if SQLITE_DISABLE_FTS3_UNICODE
167 "DISABLE_FTS3_UNICODE",
168#endif
169#if SQLITE_DISABLE_FTS4_DEFERRED
170 "DISABLE_FTS4_DEFERRED",
171#endif
172#if SQLITE_DISABLE_INTRINSIC
173 "DISABLE_INTRINSIC",
174#endif
drh0ede9eb2015-01-10 16:49:23 +0000175#if SQLITE_DISABLE_LFS
shanehdc97a8c2010-02-23 20:08:35 +0000176 "DISABLE_LFS",
177#endif
danda1f49b2017-06-16 19:51:47 +0000178#if SQLITE_DISABLE_PAGECACHE_OVERFLOW_STATS
179 "DISABLE_PAGECACHE_OVERFLOW_STATS",
180#endif
181#if SQLITE_DISABLE_SKIPAHEAD_DISTINCT
182 "DISABLE_SKIPAHEAD_DISTINCT",
183#endif
184#ifdef SQLITE_ENABLE_8_3_NAMES
drhc14566a2016-06-13 19:58:46 +0000185 "ENABLE_8_3_NAMES=" CTIMEOPT_VAL(SQLITE_ENABLE_8_3_NAMES),
drh7a7f6882015-12-03 20:50:10 +0000186#endif
drh0ede9eb2015-01-10 16:49:23 +0000187#if SQLITE_ENABLE_API_ARMOR
drh9ca95732014-10-24 00:35:58 +0000188 "ENABLE_API_ARMOR",
189#endif
drh0ede9eb2015-01-10 16:49:23 +0000190#if SQLITE_ENABLE_ATOMIC_WRITE
shanehdc97a8c2010-02-23 20:08:35 +0000191 "ENABLE_ATOMIC_WRITE",
192#endif
drha66632d2017-07-28 01:53:32 +0000193#if SQLITE_ENABLE_BATCH_ATOMIC_WRITE
194 "ENABLE_BATCH_ATOMIC_WRITE",
195#endif
drh0ede9eb2015-01-10 16:49:23 +0000196#if SQLITE_ENABLE_CEROD
drh9d03f632018-03-19 16:09:36 +0000197 "ENABLE_CEROD=" CTIMEOPT_VAL(SQLITE_ENABLE_CEROD),
shanehdc97a8c2010-02-23 20:08:35 +0000198#endif
drh0ede9eb2015-01-10 16:49:23 +0000199#if SQLITE_ENABLE_COLUMN_METADATA
shanehdc97a8c2010-02-23 20:08:35 +0000200 "ENABLE_COLUMN_METADATA",
201#endif
danda1f49b2017-06-16 19:51:47 +0000202#if SQLITE_ENABLE_COLUMN_USED_MASK
203 "ENABLE_COLUMN_USED_MASK",
204#endif
205#if SQLITE_ENABLE_COSTMULT
206 "ENABLE_COSTMULT",
207#endif
208#if SQLITE_ENABLE_CURSOR_HINTS
209 "ENABLE_CURSOR_HINTS",
210#endif
drhcda9a932015-05-07 20:26:20 +0000211#if SQLITE_ENABLE_DBSTAT_VTAB
212 "ENABLE_DBSTAT_VTAB",
213#endif
drh0ede9eb2015-01-10 16:49:23 +0000214#if SQLITE_ENABLE_EXPENSIVE_ASSERT
shanehdc97a8c2010-02-23 20:08:35 +0000215 "ENABLE_EXPENSIVE_ASSERT",
216#endif
drh0ede9eb2015-01-10 16:49:23 +0000217#if SQLITE_ENABLE_FTS1
shanehdc97a8c2010-02-23 20:08:35 +0000218 "ENABLE_FTS1",
219#endif
drh0ede9eb2015-01-10 16:49:23 +0000220#if SQLITE_ENABLE_FTS2
shanehdc97a8c2010-02-23 20:08:35 +0000221 "ENABLE_FTS2",
222#endif
drh0ede9eb2015-01-10 16:49:23 +0000223#if SQLITE_ENABLE_FTS3
shanehdc97a8c2010-02-23 20:08:35 +0000224 "ENABLE_FTS3",
225#endif
drh0ede9eb2015-01-10 16:49:23 +0000226#if SQLITE_ENABLE_FTS3_PARENTHESIS
shanehdc97a8c2010-02-23 20:08:35 +0000227 "ENABLE_FTS3_PARENTHESIS",
228#endif
danda1f49b2017-06-16 19:51:47 +0000229#if SQLITE_ENABLE_FTS3_TOKENIZER
230 "ENABLE_FTS3_TOKENIZER",
231#endif
drh0ede9eb2015-01-10 16:49:23 +0000232#if SQLITE_ENABLE_FTS4
shanehdc97a8c2010-02-23 20:08:35 +0000233 "ENABLE_FTS4",
234#endif
drh50065652015-10-08 19:29:18 +0000235#if SQLITE_ENABLE_FTS5
236 "ENABLE_FTS5",
237#endif
drhe23d05e2018-10-24 23:55:41 +0000238#if SQLITE_ENABLE_GEOPOLY
239 "ENABLE_GEOPOLY",
240#endif
danda1f49b2017-06-16 19:51:47 +0000241#if SQLITE_ENABLE_HIDDEN_COLUMNS
242 "ENABLE_HIDDEN_COLUMNS",
243#endif
drh0ede9eb2015-01-10 16:49:23 +0000244#if SQLITE_ENABLE_ICU
shanehdc97a8c2010-02-23 20:08:35 +0000245 "ENABLE_ICU",
246#endif
drh0ede9eb2015-01-10 16:49:23 +0000247#if SQLITE_ENABLE_IOTRACE
shanehdc97a8c2010-02-23 20:08:35 +0000248 "ENABLE_IOTRACE",
249#endif
drh50065652015-10-08 19:29:18 +0000250#if SQLITE_ENABLE_JSON1
251 "ENABLE_JSON1",
252#endif
drh0ede9eb2015-01-10 16:49:23 +0000253#if SQLITE_ENABLE_LOAD_EXTENSION
shanehdc97a8c2010-02-23 20:08:35 +0000254 "ENABLE_LOAD_EXTENSION",
255#endif
danda1f49b2017-06-16 19:51:47 +0000256#ifdef SQLITE_ENABLE_LOCKING_STYLE
shaneh915c8bd2010-02-24 19:36:10 +0000257 "ENABLE_LOCKING_STYLE=" CTIMEOPT_VAL(SQLITE_ENABLE_LOCKING_STYLE),
shanehdc97a8c2010-02-23 20:08:35 +0000258#endif
drh0ede9eb2015-01-10 16:49:23 +0000259#if SQLITE_ENABLE_MEMORY_MANAGEMENT
shanehdc97a8c2010-02-23 20:08:35 +0000260 "ENABLE_MEMORY_MANAGEMENT",
261#endif
drh0ede9eb2015-01-10 16:49:23 +0000262#if SQLITE_ENABLE_MEMSYS3
shanehdc97a8c2010-02-23 20:08:35 +0000263 "ENABLE_MEMSYS3",
264#endif
drh0ede9eb2015-01-10 16:49:23 +0000265#if SQLITE_ENABLE_MEMSYS5
shanehdc97a8c2010-02-23 20:08:35 +0000266 "ENABLE_MEMSYS5",
267#endif
danda1f49b2017-06-16 19:51:47 +0000268#if SQLITE_ENABLE_MULTIPLEX
269 "ENABLE_MULTIPLEX",
270#endif
mistachkin8bee11a2018-10-29 17:53:23 +0000271#if SQLITE_ENABLE_NORMALIZE
272 "ENABLE_NORMALIZE",
273#endif
danda1f49b2017-06-16 19:51:47 +0000274#if SQLITE_ENABLE_NULL_TRIM
275 "ENABLE_NULL_TRIM",
276#endif
drh0ede9eb2015-01-10 16:49:23 +0000277#if SQLITE_ENABLE_OVERSIZE_CELL_CHECK
shanehdc97a8c2010-02-23 20:08:35 +0000278 "ENABLE_OVERSIZE_CELL_CHECK",
279#endif
danda1f49b2017-06-16 19:51:47 +0000280#if SQLITE_ENABLE_PREUPDATE_HOOK
281 "ENABLE_PREUPDATE_HOOK",
282#endif
drhc7998332017-06-29 13:41:59 +0000283#if SQLITE_ENABLE_QPSG
284 "ENABLE_QPSG",
285#endif
danda1f49b2017-06-16 19:51:47 +0000286#if SQLITE_ENABLE_RBU
287 "ENABLE_RBU",
288#endif
drh0ede9eb2015-01-10 16:49:23 +0000289#if SQLITE_ENABLE_RTREE
shanehdc97a8c2010-02-23 20:08:35 +0000290 "ENABLE_RTREE",
291#endif
danda1f49b2017-06-16 19:51:47 +0000292#if SQLITE_ENABLE_SELECTTRACE
293 "ENABLE_SELECTTRACE",
294#endif
295#if SQLITE_ENABLE_SESSION
296 "ENABLE_SESSION",
297#endif
298#if SQLITE_ENABLE_SNAPSHOT
299 "ENABLE_SNAPSHOT",
300#endif
drhbbade8d2018-04-18 14:48:08 +0000301#if SQLITE_ENABLE_SORTER_REFERENCES
302 "ENABLE_SORTER_REFERENCES",
303#endif
danda1f49b2017-06-16 19:51:47 +0000304#if SQLITE_ENABLE_SQLLOG
305 "ENABLE_SQLLOG",
306#endif
dan8ad169a2013-08-12 20:14:04 +0000307#if defined(SQLITE_ENABLE_STAT4)
danf52bb8d2013-08-03 20:24:58 +0000308 "ENABLE_STAT4",
dan8ad169a2013-08-12 20:14:04 +0000309#elif defined(SQLITE_ENABLE_STAT3)
310 "ENABLE_STAT3",
drhfaacf172011-08-12 01:51:45 +0000311#endif
drhc6603af2017-06-29 14:33:51 +0000312#if SQLITE_ENABLE_STMTVTAB
313 "ENABLE_STMTVTAB",
drhc7998332017-06-29 13:41:59 +0000314#endif
danda1f49b2017-06-16 19:51:47 +0000315#if SQLITE_ENABLE_STMT_SCANSTATUS
316 "ENABLE_STMT_SCANSTATUS",
317#endif
318#if SQLITE_ENABLE_UNKNOWN_SQL_FUNCTION
319 "ENABLE_UNKNOWN_SQL_FUNCTION",
320#endif
drh0ede9eb2015-01-10 16:49:23 +0000321#if SQLITE_ENABLE_UNLOCK_NOTIFY
shanehdc97a8c2010-02-23 20:08:35 +0000322 "ENABLE_UNLOCK_NOTIFY",
323#endif
drh0ede9eb2015-01-10 16:49:23 +0000324#if SQLITE_ENABLE_UPDATE_DELETE_LIMIT
shanehdc97a8c2010-02-23 20:08:35 +0000325 "ENABLE_UPDATE_DELETE_LIMIT",
326#endif
danda1f49b2017-06-16 19:51:47 +0000327#if SQLITE_ENABLE_URI_00_ERROR
dan5c35e902016-10-26 12:15:41 +0000328 "ENABLE_URI_00_ERROR",
329#endif
danda1f49b2017-06-16 19:51:47 +0000330#if SQLITE_ENABLE_VFSTRACE
331 "ENABLE_VFSTRACE",
332#endif
333#if SQLITE_ENABLE_WHERETRACE
334 "ENABLE_WHERETRACE",
335#endif
336#if SQLITE_ENABLE_ZIPVFS
337 "ENABLE_ZIPVFS",
338#endif
339#if SQLITE_EXPLAIN_ESTIMATED_ROWS
340 "EXPLAIN_ESTIMATED_ROWS",
341#endif
342#if SQLITE_EXTRA_IFNULLROW
343 "EXTRA_IFNULLROW",
344#endif
345#ifdef SQLITE_EXTRA_INIT
346 "EXTRA_INIT=" CTIMEOPT_VAL(SQLITE_EXTRA_INIT),
347#endif
348#ifdef SQLITE_EXTRA_SHUTDOWN
349 "EXTRA_SHUTDOWN=" CTIMEOPT_VAL(SQLITE_EXTRA_SHUTDOWN),
350#endif
351#ifdef SQLITE_FTS3_MAX_EXPR_DEPTH
352 "FTS3_MAX_EXPR_DEPTH=" CTIMEOPT_VAL(SQLITE_FTS3_MAX_EXPR_DEPTH),
353#endif
354#if SQLITE_FTS5_ENABLE_TEST_MI
355 "FTS5_ENABLE_TEST_MI",
356#endif
357#if SQLITE_FTS5_NO_WITHOUT_ROWID
358 "FTS5_NO_WITHOUT_ROWID",
359#endif
drh0ede9eb2015-01-10 16:49:23 +0000360#if SQLITE_HAS_CODEC
shanehdc97a8c2010-02-23 20:08:35 +0000361 "HAS_CODEC",
362#endif
drh0ede9eb2015-01-10 16:49:23 +0000363#if HAVE_ISNAN || SQLITE_HAVE_ISNAN
shanehdc97a8c2010-02-23 20:08:35 +0000364 "HAVE_ISNAN",
365#endif
drh0ede9eb2015-01-10 16:49:23 +0000366#if SQLITE_HOMEGROWN_RECURSIVE_MUTEX
shanehdc97a8c2010-02-23 20:08:35 +0000367 "HOMEGROWN_RECURSIVE_MUTEX",
368#endif
drh0ede9eb2015-01-10 16:49:23 +0000369#if SQLITE_IGNORE_AFP_LOCK_ERRORS
shanehdc97a8c2010-02-23 20:08:35 +0000370 "IGNORE_AFP_LOCK_ERRORS",
371#endif
drh0ede9eb2015-01-10 16:49:23 +0000372#if SQLITE_IGNORE_FLOCK_LOCK_ERRORS
shanehdc97a8c2010-02-23 20:08:35 +0000373 "IGNORE_FLOCK_LOCK_ERRORS",
374#endif
danda1f49b2017-06-16 19:51:47 +0000375#if SQLITE_INLINE_MEMCPY
376 "INLINE_MEMCPY",
377#endif
378#if SQLITE_INT64_TYPE
shanehdc97a8c2010-02-23 20:08:35 +0000379 "INT64_TYPE",
380#endif
danda1f49b2017-06-16 19:51:47 +0000381#ifdef SQLITE_INTEGRITY_CHECK_ERROR_MAX
382 "INTEGRITY_CHECK_ERROR_MAX=" CTIMEOPT_VAL(SQLITE_INTEGRITY_CHECK_ERROR_MAX),
383#endif
384#if SQLITE_LIKE_DOESNT_MATCH_BLOBS
drh41d2e662015-12-01 21:23:07 +0000385 "LIKE_DOESNT_MATCH_BLOBS",
386#endif
drh0ede9eb2015-01-10 16:49:23 +0000387#if SQLITE_LOCK_TRACE
shanehdc97a8c2010-02-23 20:08:35 +0000388 "LOCK_TRACE",
389#endif
danda1f49b2017-06-16 19:51:47 +0000390#if SQLITE_LOG_CACHE_SPILL
391 "LOG_CACHE_SPILL",
392#endif
393#ifdef SQLITE_MALLOC_SOFT_LIMIT
394 "MALLOC_SOFT_LIMIT=" CTIMEOPT_VAL(SQLITE_MALLOC_SOFT_LIMIT),
395#endif
396#ifdef SQLITE_MAX_ATTACHED
397 "MAX_ATTACHED=" CTIMEOPT_VAL(SQLITE_MAX_ATTACHED),
398#endif
399#ifdef SQLITE_MAX_COLUMN
400 "MAX_COLUMN=" CTIMEOPT_VAL(SQLITE_MAX_COLUMN),
401#endif
402#ifdef SQLITE_MAX_COMPOUND_SELECT
403 "MAX_COMPOUND_SELECT=" CTIMEOPT_VAL(SQLITE_MAX_COMPOUND_SELECT),
404#endif
405#ifdef SQLITE_MAX_DEFAULT_PAGE_SIZE
406 "MAX_DEFAULT_PAGE_SIZE=" CTIMEOPT_VAL(SQLITE_MAX_DEFAULT_PAGE_SIZE),
407#endif
408#ifdef SQLITE_MAX_EXPR_DEPTH
409 "MAX_EXPR_DEPTH=" CTIMEOPT_VAL(SQLITE_MAX_EXPR_DEPTH),
410#endif
411#ifdef SQLITE_MAX_FUNCTION_ARG
412 "MAX_FUNCTION_ARG=" CTIMEOPT_VAL(SQLITE_MAX_FUNCTION_ARG),
413#endif
414#ifdef SQLITE_MAX_LENGTH
415 "MAX_LENGTH=" CTIMEOPT_VAL(SQLITE_MAX_LENGTH),
416#endif
417#ifdef SQLITE_MAX_LIKE_PATTERN_LENGTH
418 "MAX_LIKE_PATTERN_LENGTH=" CTIMEOPT_VAL(SQLITE_MAX_LIKE_PATTERN_LENGTH),
419#endif
420#ifdef SQLITE_MAX_MEMORY
421 "MAX_MEMORY=" CTIMEOPT_VAL(SQLITE_MAX_MEMORY),
422#endif
423#ifdef SQLITE_MAX_MMAP_SIZE
drh9b4c59f2013-04-15 17:03:42 +0000424 "MAX_MMAP_SIZE=" CTIMEOPT_VAL(SQLITE_MAX_MMAP_SIZE),
425#endif
danda1f49b2017-06-16 19:51:47 +0000426#ifdef SQLITE_MAX_MMAP_SIZE_
427 "MAX_MMAP_SIZE_=" CTIMEOPT_VAL(SQLITE_MAX_MMAP_SIZE_),
428#endif
429#ifdef SQLITE_MAX_PAGE_COUNT
430 "MAX_PAGE_COUNT=" CTIMEOPT_VAL(SQLITE_MAX_PAGE_COUNT),
431#endif
432#ifdef SQLITE_MAX_PAGE_SIZE
433 "MAX_PAGE_SIZE=" CTIMEOPT_VAL(SQLITE_MAX_PAGE_SIZE),
434#endif
drh5a201fb2011-08-31 20:47:50 +0000435#ifdef SQLITE_MAX_SCHEMA_RETRY
436 "MAX_SCHEMA_RETRY=" CTIMEOPT_VAL(SQLITE_MAX_SCHEMA_RETRY),
437#endif
danda1f49b2017-06-16 19:51:47 +0000438#ifdef SQLITE_MAX_SQL_LENGTH
439 "MAX_SQL_LENGTH=" CTIMEOPT_VAL(SQLITE_MAX_SQL_LENGTH),
440#endif
441#ifdef SQLITE_MAX_TRIGGER_DEPTH
442 "MAX_TRIGGER_DEPTH=" CTIMEOPT_VAL(SQLITE_MAX_TRIGGER_DEPTH),
443#endif
444#ifdef SQLITE_MAX_VARIABLE_NUMBER
445 "MAX_VARIABLE_NUMBER=" CTIMEOPT_VAL(SQLITE_MAX_VARIABLE_NUMBER),
446#endif
447#ifdef SQLITE_MAX_VDBE_OP
448 "MAX_VDBE_OP=" CTIMEOPT_VAL(SQLITE_MAX_VDBE_OP),
449#endif
450#ifdef SQLITE_MAX_WORKER_THREADS
451 "MAX_WORKER_THREADS=" CTIMEOPT_VAL(SQLITE_MAX_WORKER_THREADS),
452#endif
drh0ede9eb2015-01-10 16:49:23 +0000453#if SQLITE_MEMDEBUG
shanehdc97a8c2010-02-23 20:08:35 +0000454 "MEMDEBUG",
455#endif
drh0ede9eb2015-01-10 16:49:23 +0000456#if SQLITE_MIXED_ENDIAN_64BIT_FLOAT
shanehdc97a8c2010-02-23 20:08:35 +0000457 "MIXED_ENDIAN_64BIT_FLOAT",
458#endif
danda1f49b2017-06-16 19:51:47 +0000459#if SQLITE_MMAP_READWRITE
460 "MMAP_READWRITE",
461#endif
462#if SQLITE_MUTEX_NOOP
463 "MUTEX_NOOP",
464#endif
465#if SQLITE_MUTEX_NREF
466 "MUTEX_NREF",
467#endif
468#if SQLITE_MUTEX_OMIT
469 "MUTEX_OMIT",
470#endif
471#if SQLITE_MUTEX_PTHREADS
472 "MUTEX_PTHREADS",
473#endif
474#if SQLITE_MUTEX_W32
475 "MUTEX_W32",
476#endif
477#if SQLITE_NEED_ERR_NAME
478 "NEED_ERR_NAME",
479#endif
480#if SQLITE_NOINLINE
481 "NOINLINE",
482#endif
drh0ede9eb2015-01-10 16:49:23 +0000483#if SQLITE_NO_SYNC
shanehdc97a8c2010-02-23 20:08:35 +0000484 "NO_SYNC",
485#endif
drh0ede9eb2015-01-10 16:49:23 +0000486#if SQLITE_OMIT_ALTERTABLE
shanehdc97a8c2010-02-23 20:08:35 +0000487 "OMIT_ALTERTABLE",
488#endif
drh0ede9eb2015-01-10 16:49:23 +0000489#if SQLITE_OMIT_ANALYZE
shanehdc97a8c2010-02-23 20:08:35 +0000490 "OMIT_ANALYZE",
491#endif
drh0ede9eb2015-01-10 16:49:23 +0000492#if SQLITE_OMIT_ATTACH
shanehdc97a8c2010-02-23 20:08:35 +0000493 "OMIT_ATTACH",
494#endif
drh0ede9eb2015-01-10 16:49:23 +0000495#if SQLITE_OMIT_AUTHORIZATION
shanehdc97a8c2010-02-23 20:08:35 +0000496 "OMIT_AUTHORIZATION",
497#endif
drh0ede9eb2015-01-10 16:49:23 +0000498#if SQLITE_OMIT_AUTOINCREMENT
shanehdc97a8c2010-02-23 20:08:35 +0000499 "OMIT_AUTOINCREMENT",
500#endif
drh0ede9eb2015-01-10 16:49:23 +0000501#if SQLITE_OMIT_AUTOINIT
shanehdc97a8c2010-02-23 20:08:35 +0000502 "OMIT_AUTOINIT",
503#endif
drh0ede9eb2015-01-10 16:49:23 +0000504#if SQLITE_OMIT_AUTOMATIC_INDEX
drhc6339082010-04-07 16:54:58 +0000505 "OMIT_AUTOMATIC_INDEX",
506#endif
drh0ede9eb2015-01-10 16:49:23 +0000507#if SQLITE_OMIT_AUTORESET
drh602acb42011-01-17 17:42:37 +0000508 "OMIT_AUTORESET",
509#endif
drh0ede9eb2015-01-10 16:49:23 +0000510#if SQLITE_OMIT_AUTOVACUUM
shanehdc97a8c2010-02-23 20:08:35 +0000511 "OMIT_AUTOVACUUM",
512#endif
drh0ede9eb2015-01-10 16:49:23 +0000513#if SQLITE_OMIT_BETWEEN_OPTIMIZATION
shanehdc97a8c2010-02-23 20:08:35 +0000514 "OMIT_BETWEEN_OPTIMIZATION",
515#endif
drh0ede9eb2015-01-10 16:49:23 +0000516#if SQLITE_OMIT_BLOB_LITERAL
shanehdc97a8c2010-02-23 20:08:35 +0000517 "OMIT_BLOB_LITERAL",
518#endif
drh0ede9eb2015-01-10 16:49:23 +0000519#if SQLITE_OMIT_BTREECOUNT
shanehdc97a8c2010-02-23 20:08:35 +0000520 "OMIT_BTREECOUNT",
521#endif
drh0ede9eb2015-01-10 16:49:23 +0000522#if SQLITE_OMIT_CAST
shanehdc97a8c2010-02-23 20:08:35 +0000523 "OMIT_CAST",
524#endif
drh0ede9eb2015-01-10 16:49:23 +0000525#if SQLITE_OMIT_CHECK
shanehdc97a8c2010-02-23 20:08:35 +0000526 "OMIT_CHECK",
527#endif
drh0ede9eb2015-01-10 16:49:23 +0000528#if SQLITE_OMIT_COMPLETE
shanehdc97a8c2010-02-23 20:08:35 +0000529 "OMIT_COMPLETE",
530#endif
drh0ede9eb2015-01-10 16:49:23 +0000531#if SQLITE_OMIT_COMPOUND_SELECT
shanehdc97a8c2010-02-23 20:08:35 +0000532 "OMIT_COMPOUND_SELECT",
533#endif
danda1f49b2017-06-16 19:51:47 +0000534#if SQLITE_OMIT_CONFLICT_CLAUSE
535 "OMIT_CONFLICT_CLAUSE",
536#endif
drh0ede9eb2015-01-10 16:49:23 +0000537#if SQLITE_OMIT_CTE
dan03af2162014-03-05 17:29:34 +0000538 "OMIT_CTE",
539#endif
drh0ede9eb2015-01-10 16:49:23 +0000540#if SQLITE_OMIT_DATETIME_FUNCS
shanehdc97a8c2010-02-23 20:08:35 +0000541 "OMIT_DATETIME_FUNCS",
542#endif
drh0ede9eb2015-01-10 16:49:23 +0000543#if SQLITE_OMIT_DECLTYPE
shanehdc97a8c2010-02-23 20:08:35 +0000544 "OMIT_DECLTYPE",
545#endif
drh0ede9eb2015-01-10 16:49:23 +0000546#if SQLITE_OMIT_DEPRECATED
shanehdc97a8c2010-02-23 20:08:35 +0000547 "OMIT_DEPRECATED",
548#endif
drh0ede9eb2015-01-10 16:49:23 +0000549#if SQLITE_OMIT_DISKIO
shanehdc97a8c2010-02-23 20:08:35 +0000550 "OMIT_DISKIO",
551#endif
drh0ede9eb2015-01-10 16:49:23 +0000552#if SQLITE_OMIT_EXPLAIN
shanehdc97a8c2010-02-23 20:08:35 +0000553 "OMIT_EXPLAIN",
554#endif
drh0ede9eb2015-01-10 16:49:23 +0000555#if SQLITE_OMIT_FLAG_PRAGMAS
shanehdc97a8c2010-02-23 20:08:35 +0000556 "OMIT_FLAG_PRAGMAS",
557#endif
drh0ede9eb2015-01-10 16:49:23 +0000558#if SQLITE_OMIT_FLOATING_POINT
shanehdc97a8c2010-02-23 20:08:35 +0000559 "OMIT_FLOATING_POINT",
560#endif
drh0ede9eb2015-01-10 16:49:23 +0000561#if SQLITE_OMIT_FOREIGN_KEY
shanehdc97a8c2010-02-23 20:08:35 +0000562 "OMIT_FOREIGN_KEY",
563#endif
drh0ede9eb2015-01-10 16:49:23 +0000564#if SQLITE_OMIT_GET_TABLE
shanehdc97a8c2010-02-23 20:08:35 +0000565 "OMIT_GET_TABLE",
566#endif
danda1f49b2017-06-16 19:51:47 +0000567#if SQLITE_OMIT_HEX_INTEGER
568 "OMIT_HEX_INTEGER",
569#endif
drh0ede9eb2015-01-10 16:49:23 +0000570#if SQLITE_OMIT_INCRBLOB
shanehdc97a8c2010-02-23 20:08:35 +0000571 "OMIT_INCRBLOB",
572#endif
drh0ede9eb2015-01-10 16:49:23 +0000573#if SQLITE_OMIT_INTEGRITY_CHECK
shanehdc97a8c2010-02-23 20:08:35 +0000574 "OMIT_INTEGRITY_CHECK",
575#endif
drh0ede9eb2015-01-10 16:49:23 +0000576#if SQLITE_OMIT_LIKE_OPTIMIZATION
shanehdc97a8c2010-02-23 20:08:35 +0000577 "OMIT_LIKE_OPTIMIZATION",
578#endif
drh0ede9eb2015-01-10 16:49:23 +0000579#if SQLITE_OMIT_LOAD_EXTENSION
shanehdc97a8c2010-02-23 20:08:35 +0000580 "OMIT_LOAD_EXTENSION",
581#endif
drh0ede9eb2015-01-10 16:49:23 +0000582#if SQLITE_OMIT_LOCALTIME
shanehdc97a8c2010-02-23 20:08:35 +0000583 "OMIT_LOCALTIME",
584#endif
drh0ede9eb2015-01-10 16:49:23 +0000585#if SQLITE_OMIT_LOOKASIDE
shanehdc97a8c2010-02-23 20:08:35 +0000586 "OMIT_LOOKASIDE",
587#endif
drh0ede9eb2015-01-10 16:49:23 +0000588#if SQLITE_OMIT_MEMORYDB
shanehdc97a8c2010-02-23 20:08:35 +0000589 "OMIT_MEMORYDB",
590#endif
drh0ede9eb2015-01-10 16:49:23 +0000591#if SQLITE_OMIT_OR_OPTIMIZATION
shanehdc97a8c2010-02-23 20:08:35 +0000592 "OMIT_OR_OPTIMIZATION",
593#endif
drh0ede9eb2015-01-10 16:49:23 +0000594#if SQLITE_OMIT_PAGER_PRAGMAS
shanehdc97a8c2010-02-23 20:08:35 +0000595 "OMIT_PAGER_PRAGMAS",
596#endif
danda1f49b2017-06-16 19:51:47 +0000597#if SQLITE_OMIT_PARSER_TRACE
598 "OMIT_PARSER_TRACE",
599#endif
600#if SQLITE_OMIT_POPEN
601 "OMIT_POPEN",
602#endif
drh0ede9eb2015-01-10 16:49:23 +0000603#if SQLITE_OMIT_PRAGMA
shanehdc97a8c2010-02-23 20:08:35 +0000604 "OMIT_PRAGMA",
605#endif
drh0ede9eb2015-01-10 16:49:23 +0000606#if SQLITE_OMIT_PROGRESS_CALLBACK
shanehdc97a8c2010-02-23 20:08:35 +0000607 "OMIT_PROGRESS_CALLBACK",
608#endif
drh0ede9eb2015-01-10 16:49:23 +0000609#if SQLITE_OMIT_QUICKBALANCE
shanehdc97a8c2010-02-23 20:08:35 +0000610 "OMIT_QUICKBALANCE",
611#endif
drh0ede9eb2015-01-10 16:49:23 +0000612#if SQLITE_OMIT_REINDEX
shanehdc97a8c2010-02-23 20:08:35 +0000613 "OMIT_REINDEX",
614#endif
drh0ede9eb2015-01-10 16:49:23 +0000615#if SQLITE_OMIT_SCHEMA_PRAGMAS
shanehdc97a8c2010-02-23 20:08:35 +0000616 "OMIT_SCHEMA_PRAGMAS",
617#endif
drh0ede9eb2015-01-10 16:49:23 +0000618#if SQLITE_OMIT_SCHEMA_VERSION_PRAGMAS
shanehdc97a8c2010-02-23 20:08:35 +0000619 "OMIT_SCHEMA_VERSION_PRAGMAS",
620#endif
drh0ede9eb2015-01-10 16:49:23 +0000621#if SQLITE_OMIT_SHARED_CACHE
shanehdc97a8c2010-02-23 20:08:35 +0000622 "OMIT_SHARED_CACHE",
623#endif
danda1f49b2017-06-16 19:51:47 +0000624#if SQLITE_OMIT_SHUTDOWN_DIRECTORIES
625 "OMIT_SHUTDOWN_DIRECTORIES",
626#endif
drh0ede9eb2015-01-10 16:49:23 +0000627#if SQLITE_OMIT_SUBQUERY
shanehdc97a8c2010-02-23 20:08:35 +0000628 "OMIT_SUBQUERY",
629#endif
drh0ede9eb2015-01-10 16:49:23 +0000630#if SQLITE_OMIT_TCL_VARIABLE
shanehdc97a8c2010-02-23 20:08:35 +0000631 "OMIT_TCL_VARIABLE",
632#endif
drh0ede9eb2015-01-10 16:49:23 +0000633#if SQLITE_OMIT_TEMPDB
shanehdc97a8c2010-02-23 20:08:35 +0000634 "OMIT_TEMPDB",
635#endif
danda1f49b2017-06-16 19:51:47 +0000636#if SQLITE_OMIT_TEST_CONTROL
637 "OMIT_TEST_CONTROL",
638#endif
drh0ede9eb2015-01-10 16:49:23 +0000639#if SQLITE_OMIT_TRACE
shanehdc97a8c2010-02-23 20:08:35 +0000640 "OMIT_TRACE",
641#endif
drh0ede9eb2015-01-10 16:49:23 +0000642#if SQLITE_OMIT_TRIGGER
shanehdc97a8c2010-02-23 20:08:35 +0000643 "OMIT_TRIGGER",
644#endif
drh0ede9eb2015-01-10 16:49:23 +0000645#if SQLITE_OMIT_TRUNCATE_OPTIMIZATION
shanehdc97a8c2010-02-23 20:08:35 +0000646 "OMIT_TRUNCATE_OPTIMIZATION",
647#endif
drh0ede9eb2015-01-10 16:49:23 +0000648#if SQLITE_OMIT_UTF16
shanehdc97a8c2010-02-23 20:08:35 +0000649 "OMIT_UTF16",
650#endif
drh0ede9eb2015-01-10 16:49:23 +0000651#if SQLITE_OMIT_VACUUM
shanehdc97a8c2010-02-23 20:08:35 +0000652 "OMIT_VACUUM",
653#endif
drh0ede9eb2015-01-10 16:49:23 +0000654#if SQLITE_OMIT_VIEW
shanehdc97a8c2010-02-23 20:08:35 +0000655 "OMIT_VIEW",
656#endif
drh0ede9eb2015-01-10 16:49:23 +0000657#if SQLITE_OMIT_VIRTUALTABLE
shanehdc97a8c2010-02-23 20:08:35 +0000658 "OMIT_VIRTUALTABLE",
659#endif
drh0ede9eb2015-01-10 16:49:23 +0000660#if SQLITE_OMIT_WAL
drh4d9a7bf2010-07-07 01:52:31 +0000661 "OMIT_WAL",
662#endif
drh0ede9eb2015-01-10 16:49:23 +0000663#if SQLITE_OMIT_WSD
shanehdc97a8c2010-02-23 20:08:35 +0000664 "OMIT_WSD",
665#endif
drh0ede9eb2015-01-10 16:49:23 +0000666#if SQLITE_OMIT_XFER_OPT
shanehdc97a8c2010-02-23 20:08:35 +0000667 "OMIT_XFER_OPT",
668#endif
danda1f49b2017-06-16 19:51:47 +0000669#if SQLITE_PCACHE_SEPARATE_HEADER
670 "PCACHE_SEPARATE_HEADER",
671#endif
drh0ede9eb2015-01-10 16:49:23 +0000672#if SQLITE_PERFORMANCE_TRACE
shanehdc97a8c2010-02-23 20:08:35 +0000673 "PERFORMANCE_TRACE",
674#endif
danda1f49b2017-06-16 19:51:47 +0000675#if SQLITE_POWERSAFE_OVERWRITE
676 "POWERSAFE_OVERWRITE",
677#endif
678#if SQLITE_PREFER_PROXY_LOCKING
679 "PREFER_PROXY_LOCKING",
680#endif
drh0ede9eb2015-01-10 16:49:23 +0000681#if SQLITE_PROXY_DEBUG
shanehdc97a8c2010-02-23 20:08:35 +0000682 "PROXY_DEBUG",
683#endif
danda1f49b2017-06-16 19:51:47 +0000684#if SQLITE_REVERSE_UNORDERED_SELECTS
685 "REVERSE_UNORDERED_SELECTS",
686#endif
drh0ede9eb2015-01-10 16:49:23 +0000687#if SQLITE_RTREE_INT_ONLY
drhdf324142012-09-13 12:10:55 +0000688 "RTREE_INT_ONLY",
689#endif
drh0ede9eb2015-01-10 16:49:23 +0000690#if SQLITE_SECURE_DELETE
shanehdc97a8c2010-02-23 20:08:35 +0000691 "SECURE_DELETE",
692#endif
drh0ede9eb2015-01-10 16:49:23 +0000693#if SQLITE_SMALL_STACK
shanehdc97a8c2010-02-23 20:08:35 +0000694 "SMALL_STACK",
695#endif
danda1f49b2017-06-16 19:51:47 +0000696#ifdef SQLITE_SORTER_PMASZ
697 "SORTER_PMASZ=" CTIMEOPT_VAL(SQLITE_SORTER_PMASZ),
698#endif
drh0ede9eb2015-01-10 16:49:23 +0000699#if SQLITE_SOUNDEX
shanehdc97a8c2010-02-23 20:08:35 +0000700 "SOUNDEX",
701#endif
danda1f49b2017-06-16 19:51:47 +0000702#ifdef SQLITE_STAT4_SAMPLES
703 "STAT4_SAMPLES=" CTIMEOPT_VAL(SQLITE_STAT4_SAMPLES),
704#endif
705#ifdef SQLITE_STMTJRNL_SPILL
706 "STMTJRNL_SPILL=" CTIMEOPT_VAL(SQLITE_STMTJRNL_SPILL),
707#endif
708#if SQLITE_SUBSTR_COMPATIBILITY
709 "SUBSTR_COMPATIBILITY",
710#endif
drh0ede9eb2015-01-10 16:49:23 +0000711#if SQLITE_SYSTEM_MALLOC
mistachkin1fa85a12013-12-03 22:32:48 +0000712 "SYSTEM_MALLOC",
713#endif
drh0ede9eb2015-01-10 16:49:23 +0000714#if SQLITE_TCL
shanehdc97a8c2010-02-23 20:08:35 +0000715 "TCL",
716#endif
danda1f49b2017-06-16 19:51:47 +0000717#ifdef SQLITE_TEMP_STORE
shaneh915c8bd2010-02-24 19:36:10 +0000718 "TEMP_STORE=" CTIMEOPT_VAL(SQLITE_TEMP_STORE),
719#endif
drh0ede9eb2015-01-10 16:49:23 +0000720#if SQLITE_TEST
shanehdc97a8c2010-02-23 20:08:35 +0000721 "TEST",
722#endif
dan814aad62017-06-17 17:29:24 +0000723#if defined(SQLITE_THREADSAFE)
shaneh915c8bd2010-02-24 19:36:10 +0000724 "THREADSAFE=" CTIMEOPT_VAL(SQLITE_THREADSAFE),
dan814aad62017-06-17 17:29:24 +0000725#elif defined(THREADSAFE)
726 "THREADSAFE=" CTIMEOPT_VAL(THREADSAFE),
727#else
drh40db2fd2017-06-17 18:49:50 +0000728 "THREADSAFE=1",
shaneh915c8bd2010-02-24 19:36:10 +0000729#endif
danda1f49b2017-06-16 19:51:47 +0000730#if SQLITE_UNLINK_AFTER_CLOSE
731 "UNLINK_AFTER_CLOSE",
732#endif
drh4ed8c832016-12-07 17:06:12 +0000733#if SQLITE_UNTESTABLE
danda1f49b2017-06-16 19:51:47 +0000734 "UNTESTABLE",
735#endif
736#if SQLITE_USER_AUTHENTICATION
737 "USER_AUTHENTICATION",
drh4ed8c832016-12-07 17:06:12 +0000738#endif
drh0ede9eb2015-01-10 16:49:23 +0000739#if SQLITE_USE_ALLOCA
shanehdc97a8c2010-02-23 20:08:35 +0000740 "USE_ALLOCA",
741#endif
danda1f49b2017-06-16 19:51:47 +0000742#if SQLITE_USE_FCNTL_TRACE
743 "USE_FCNTL_TRACE",
744#endif
745#if SQLITE_USE_URI
746 "USE_URI",
747#endif
748#if SQLITE_VDBE_COVERAGE
749 "VDBE_COVERAGE",
drh09e60542014-09-10 22:46:46 +0000750#endif
drh0ede9eb2015-01-10 16:49:23 +0000751#if SQLITE_WIN32_MALLOC
mistachkin1fa85a12013-12-03 22:32:48 +0000752 "WIN32_MALLOC",
753#endif
drh0ede9eb2015-01-10 16:49:23 +0000754#if SQLITE_ZERO_MALLOC
danda1f49b2017-06-16 19:51:47 +0000755 "ZERO_MALLOC",
shanehdc97a8c2010-02-23 20:08:35 +0000756#endif
danda1f49b2017-06-16 19:51:47 +0000757/*
758** END CODE GENERATED BY tool/mkctime.tcl
759*/
shanehdc97a8c2010-02-23 20:08:35 +0000760};
761
danda1f49b2017-06-16 19:51:47 +0000762const char **sqlite3CompileOptions(int *pnOpt){
drhf383f352017-06-20 18:19:16 +0000763 *pnOpt = sizeof(sqlite3azCompileOpt) / sizeof(sqlite3azCompileOpt[0]);
764 return (const char**)sqlite3azCompileOpt;
shanehdc97a8c2010-02-23 20:08:35 +0000765}
766
767#endif /* SQLITE_OMIT_COMPILEOPTION_DIAGS */