4 ** The author disclaims copyright to this source code. In place of
5 ** a legal notice, here is a blessing:
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.
11 *************************************************************************
13 ** This file implements routines used to report what compile-time options
14 ** SQLite was built with.
17 #ifndef SQLITE_OMIT_COMPILEOPTION_DIAGS /* IMP: R-16824-07538 */
20 ** Include the configuration header output by 'configure' if we're using the
21 ** autoconf-based build
23 #if defined(_HAVE_SQLITE_CONFIG_H) && !defined(SQLITECONFIG_H)
25 #define SQLITECONFIG_H 1
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)
33 /* 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)
40 ** An array of names of all compile-time options. This array should
43 ** This array looks large, but in a typical installation actually uses
44 ** only a handful of compile-time options, so most times this array is usually
45 ** rather short and uses little memory space.
47 static const char * const sqlite3azCompileOpt
[] = {
50 ** BEGIN CODE GENERATED BY tool/mkctime.tcl
52 #if SQLITE_32BIT_ROWID
55 #if SQLITE_4_BYTE_ALIGNED_MALLOC
56 "4_BYTE_ALIGNED_MALLOC",
58 #if SQLITE_64BIT_STATS
61 #ifdef SQLITE_ALLOW_COVERING_INDEX_SCAN
62 # if SQLITE_ALLOW_COVERING_INDEX_SCAN != 1
63 "ALLOW_COVERING_INDEX_SCAN=" CTIMEOPT_VAL(SQLITE_ALLOW_COVERING_INDEX_SCAN
),
66 #if SQLITE_ALLOW_URI_AUTHORITY
67 "ALLOW_URI_AUTHORITY",
69 #ifdef SQLITE_BITMASK_TYPE
70 "BITMASK_TYPE=" CTIMEOPT_VAL(SQLITE_BITMASK_TYPE
),
72 #if SQLITE_BUG_COMPATIBLE_20160819
73 "BUG_COMPATIBLE_20160819",
75 #if SQLITE_CASE_SENSITIVE_LIKE
76 "CASE_SENSITIVE_LIKE",
78 #if SQLITE_CHECK_PAGES
81 #if defined(__clang__) && defined(__clang_major__)
82 "COMPILER=clang-" CTIMEOPT_VAL(__clang_major__
) "."
83 CTIMEOPT_VAL(__clang_minor__
) "."
84 CTIMEOPT_VAL(__clang_patchlevel__
),
85 #elif defined(_MSC_VER)
86 "COMPILER=msvc-" CTIMEOPT_VAL(_MSC_VER
),
87 #elif defined(__GNUC__) && defined(__VERSION__)
88 "COMPILER=gcc-" __VERSION__
,
90 #if SQLITE_COVERAGE_TEST
96 #if SQLITE_DEFAULT_AUTOMATIC_INDEX
97 "DEFAULT_AUTOMATIC_INDEX",
99 #if SQLITE_DEFAULT_AUTOVACUUM
100 "DEFAULT_AUTOVACUUM",
102 #ifdef SQLITE_DEFAULT_CACHE_SIZE
103 "DEFAULT_CACHE_SIZE=" CTIMEOPT_VAL(SQLITE_DEFAULT_CACHE_SIZE
),
105 #if SQLITE_DEFAULT_CKPTFULLFSYNC
106 "DEFAULT_CKPTFULLFSYNC",
108 #ifdef SQLITE_DEFAULT_FILE_FORMAT
109 "DEFAULT_FILE_FORMAT=" CTIMEOPT_VAL(SQLITE_DEFAULT_FILE_FORMAT
),
111 #ifdef SQLITE_DEFAULT_FILE_PERMISSIONS
112 "DEFAULT_FILE_PERMISSIONS=" CTIMEOPT_VAL(SQLITE_DEFAULT_FILE_PERMISSIONS
),
114 #if SQLITE_DEFAULT_FOREIGN_KEYS
115 "DEFAULT_FOREIGN_KEYS",
117 #ifdef SQLITE_DEFAULT_JOURNAL_SIZE_LIMIT
118 "DEFAULT_JOURNAL_SIZE_LIMIT=" CTIMEOPT_VAL(SQLITE_DEFAULT_JOURNAL_SIZE_LIMIT
),
120 #ifdef SQLITE_DEFAULT_LOCKING_MODE
121 "DEFAULT_LOCKING_MODE=" CTIMEOPT_VAL(SQLITE_DEFAULT_LOCKING_MODE
),
123 #ifdef SQLITE_DEFAULT_LOOKASIDE
124 "DEFAULT_LOOKASIDE=" CTIMEOPT_VAL2(SQLITE_DEFAULT_LOOKASIDE
),
126 #ifdef SQLITE_DEFAULT_MEMSTATUS
127 # if SQLITE_DEFAULT_MEMSTATUS != 1
128 "DEFAULT_MEMSTATUS=" CTIMEOPT_VAL(SQLITE_DEFAULT_MEMSTATUS
),
131 #ifdef SQLITE_DEFAULT_MMAP_SIZE
132 "DEFAULT_MMAP_SIZE=" CTIMEOPT_VAL(SQLITE_DEFAULT_MMAP_SIZE
),
134 #ifdef SQLITE_DEFAULT_PAGE_SIZE
135 "DEFAULT_PAGE_SIZE=" CTIMEOPT_VAL(SQLITE_DEFAULT_PAGE_SIZE
),
137 #ifdef SQLITE_DEFAULT_PCACHE_INITSZ
138 "DEFAULT_PCACHE_INITSZ=" CTIMEOPT_VAL(SQLITE_DEFAULT_PCACHE_INITSZ
),
140 #ifdef SQLITE_DEFAULT_PROXYDIR_PERMISSIONS
141 "DEFAULT_PROXYDIR_PERMISSIONS=" CTIMEOPT_VAL(SQLITE_DEFAULT_PROXYDIR_PERMISSIONS
),
143 #if SQLITE_DEFAULT_RECURSIVE_TRIGGERS
144 "DEFAULT_RECURSIVE_TRIGGERS",
146 #ifdef SQLITE_DEFAULT_ROWEST
147 "DEFAULT_ROWEST=" CTIMEOPT_VAL(SQLITE_DEFAULT_ROWEST
),
149 #ifdef SQLITE_DEFAULT_SECTOR_SIZE
150 "DEFAULT_SECTOR_SIZE=" CTIMEOPT_VAL(SQLITE_DEFAULT_SECTOR_SIZE
),
152 #ifdef SQLITE_DEFAULT_SYNCHRONOUS
153 "DEFAULT_SYNCHRONOUS=" CTIMEOPT_VAL(SQLITE_DEFAULT_SYNCHRONOUS
),
155 #ifdef SQLITE_DEFAULT_WAL_AUTOCHECKPOINT
156 "DEFAULT_WAL_AUTOCHECKPOINT=" CTIMEOPT_VAL(SQLITE_DEFAULT_WAL_AUTOCHECKPOINT
),
158 #ifdef SQLITE_DEFAULT_WAL_SYNCHRONOUS
159 "DEFAULT_WAL_SYNCHRONOUS=" CTIMEOPT_VAL(SQLITE_DEFAULT_WAL_SYNCHRONOUS
),
161 #ifdef SQLITE_DEFAULT_WORKER_THREADS
162 "DEFAULT_WORKER_THREADS=" CTIMEOPT_VAL(SQLITE_DEFAULT_WORKER_THREADS
),
164 #if SQLITE_DIRECT_OVERFLOW_READ
165 "DIRECT_OVERFLOW_READ",
167 #if SQLITE_DISABLE_DIRSYNC
170 #if SQLITE_DISABLE_FTS3_UNICODE
171 "DISABLE_FTS3_UNICODE",
173 #if SQLITE_DISABLE_FTS4_DEFERRED
174 "DISABLE_FTS4_DEFERRED",
176 #if SQLITE_DISABLE_INTRINSIC
179 #if SQLITE_DISABLE_LFS
182 #if SQLITE_DISABLE_PAGECACHE_OVERFLOW_STATS
183 "DISABLE_PAGECACHE_OVERFLOW_STATS",
185 #if SQLITE_DISABLE_SKIPAHEAD_DISTINCT
186 "DISABLE_SKIPAHEAD_DISTINCT",
188 #ifdef SQLITE_ENABLE_8_3_NAMES
189 "ENABLE_8_3_NAMES=" CTIMEOPT_VAL(SQLITE_ENABLE_8_3_NAMES
),
191 #if SQLITE_ENABLE_API_ARMOR
194 #if SQLITE_ENABLE_ATOMIC_WRITE
195 "ENABLE_ATOMIC_WRITE",
197 #if SQLITE_ENABLE_BATCH_ATOMIC_WRITE
198 "ENABLE_BATCH_ATOMIC_WRITE",
200 #if SQLITE_ENABLE_BYTECODE_VTAB
201 "ENABLE_BYTECODE_VTAB",
203 #ifdef SQLITE_ENABLE_CEROD
204 "ENABLE_CEROD=" CTIMEOPT_VAL(SQLITE_ENABLE_CEROD
),
206 #if SQLITE_ENABLE_COLUMN_METADATA
207 "ENABLE_COLUMN_METADATA",
209 #if SQLITE_ENABLE_COLUMN_USED_MASK
210 "ENABLE_COLUMN_USED_MASK",
212 #if SQLITE_ENABLE_COSTMULT
215 #if SQLITE_ENABLE_CURSOR_HINTS
216 "ENABLE_CURSOR_HINTS",
218 #if SQLITE_ENABLE_DBPAGE_VTAB
219 "ENABLE_DBPAGE_VTAB",
221 #if SQLITE_ENABLE_DBSTAT_VTAB
222 "ENABLE_DBSTAT_VTAB",
224 #if SQLITE_ENABLE_EXPENSIVE_ASSERT
225 "ENABLE_EXPENSIVE_ASSERT",
227 #if SQLITE_ENABLE_EXPLAIN_COMMENTS
228 "ENABLE_EXPLAIN_COMMENTS",
230 #if SQLITE_ENABLE_FTS3
233 #if SQLITE_ENABLE_FTS3_PARENTHESIS
234 "ENABLE_FTS3_PARENTHESIS",
236 #if SQLITE_ENABLE_FTS3_TOKENIZER
237 "ENABLE_FTS3_TOKENIZER",
239 #if SQLITE_ENABLE_FTS4
242 #if SQLITE_ENABLE_FTS5
245 #if SQLITE_ENABLE_GEOPOLY
248 #if SQLITE_ENABLE_HIDDEN_COLUMNS
249 "ENABLE_HIDDEN_COLUMNS",
251 #if SQLITE_ENABLE_ICU
254 #if SQLITE_ENABLE_IOTRACE
257 #if SQLITE_ENABLE_JSON1
260 #if SQLITE_ENABLE_LOAD_EXTENSION
261 "ENABLE_LOAD_EXTENSION",
263 #ifdef SQLITE_ENABLE_LOCKING_STYLE
264 "ENABLE_LOCKING_STYLE=" CTIMEOPT_VAL(SQLITE_ENABLE_LOCKING_STYLE
),
266 #if SQLITE_ENABLE_MATH_FUNCTIONS
267 "ENABLE_MATH_FUNCTIONS",
269 #if SQLITE_ENABLE_MEMORY_MANAGEMENT
270 "ENABLE_MEMORY_MANAGEMENT",
272 #if SQLITE_ENABLE_MEMSYS3
275 #if SQLITE_ENABLE_MEMSYS5
278 #if SQLITE_ENABLE_MULTIPLEX
281 #if SQLITE_ENABLE_NORMALIZE
284 #if SQLITE_ENABLE_NULL_TRIM
287 #if SQLITE_ENABLE_OFFSET_SQL_FUNC
288 "ENABLE_OFFSET_SQL_FUNC",
290 #if SQLITE_ENABLE_OVERSIZE_CELL_CHECK
291 "ENABLE_OVERSIZE_CELL_CHECK",
293 #if SQLITE_ENABLE_PREUPDATE_HOOK
294 "ENABLE_PREUPDATE_HOOK",
296 #if SQLITE_ENABLE_QPSG
299 #if SQLITE_ENABLE_RBU
302 #if SQLITE_ENABLE_RTREE
305 #if SQLITE_ENABLE_SELECTTRACE
306 "ENABLE_SELECTTRACE",
308 #if SQLITE_ENABLE_SESSION
311 #if SQLITE_ENABLE_SNAPSHOT
314 #if SQLITE_ENABLE_SORTER_REFERENCES
315 "ENABLE_SORTER_REFERENCES",
317 #if SQLITE_ENABLE_SQLLOG
320 #if SQLITE_ENABLE_STAT4
323 #if SQLITE_ENABLE_STMTVTAB
326 #if SQLITE_ENABLE_STMT_SCANSTATUS
327 "ENABLE_STMT_SCANSTATUS",
329 #if SQLITE_ENABLE_UNKNOWN_SQL_FUNCTION
330 "ENABLE_UNKNOWN_SQL_FUNCTION",
332 #if SQLITE_ENABLE_UNLOCK_NOTIFY
333 "ENABLE_UNLOCK_NOTIFY",
335 #if SQLITE_ENABLE_UPDATE_DELETE_LIMIT
336 "ENABLE_UPDATE_DELETE_LIMIT",
338 #if SQLITE_ENABLE_URI_00_ERROR
339 "ENABLE_URI_00_ERROR",
341 #if SQLITE_ENABLE_VFSTRACE
344 #if SQLITE_ENABLE_WHERETRACE
347 #if SQLITE_ENABLE_ZIPVFS
350 #if SQLITE_EXPLAIN_ESTIMATED_ROWS
351 "EXPLAIN_ESTIMATED_ROWS",
353 #if SQLITE_EXTRA_IFNULLROW
356 #ifdef SQLITE_EXTRA_INIT
357 "EXTRA_INIT=" CTIMEOPT_VAL(SQLITE_EXTRA_INIT
),
359 #ifdef SQLITE_EXTRA_SHUTDOWN
360 "EXTRA_SHUTDOWN=" CTIMEOPT_VAL(SQLITE_EXTRA_SHUTDOWN
),
362 #ifdef SQLITE_FTS3_MAX_EXPR_DEPTH
363 "FTS3_MAX_EXPR_DEPTH=" CTIMEOPT_VAL(SQLITE_FTS3_MAX_EXPR_DEPTH
),
365 #if SQLITE_FTS5_ENABLE_TEST_MI
366 "FTS5_ENABLE_TEST_MI",
368 #if SQLITE_FTS5_NO_WITHOUT_ROWID
369 "FTS5_NO_WITHOUT_ROWID",
371 /* BEGIN SQLCIPHER */
376 #if HAVE_ISNAN || SQLITE_HAVE_ISNAN
379 #ifdef SQLITE_HOMEGROWN_RECURSIVE_MUTEX
380 # if SQLITE_HOMEGROWN_RECURSIVE_MUTEX != 1
381 "HOMEGROWN_RECURSIVE_MUTEX=" CTIMEOPT_VAL(SQLITE_HOMEGROWN_RECURSIVE_MUTEX
),
384 #if SQLITE_IGNORE_AFP_LOCK_ERRORS
385 "IGNORE_AFP_LOCK_ERRORS",
387 #if SQLITE_IGNORE_FLOCK_LOCK_ERRORS
388 "IGNORE_FLOCK_LOCK_ERRORS",
390 #if SQLITE_INLINE_MEMCPY
393 #if SQLITE_INT64_TYPE
396 #ifdef SQLITE_INTEGRITY_CHECK_ERROR_MAX
397 "INTEGRITY_CHECK_ERROR_MAX=" CTIMEOPT_VAL(SQLITE_INTEGRITY_CHECK_ERROR_MAX
),
399 #if SQLITE_LIKE_DOESNT_MATCH_BLOBS
400 "LIKE_DOESNT_MATCH_BLOBS",
402 #if SQLITE_LOCK_TRACE
405 #if SQLITE_LOG_CACHE_SPILL
408 #ifdef SQLITE_MALLOC_SOFT_LIMIT
409 "MALLOC_SOFT_LIMIT=" CTIMEOPT_VAL(SQLITE_MALLOC_SOFT_LIMIT
),
411 #ifdef SQLITE_MAX_ATTACHED
412 "MAX_ATTACHED=" CTIMEOPT_VAL(SQLITE_MAX_ATTACHED
),
414 #ifdef SQLITE_MAX_COLUMN
415 "MAX_COLUMN=" CTIMEOPT_VAL(SQLITE_MAX_COLUMN
),
417 #ifdef SQLITE_MAX_COMPOUND_SELECT
418 "MAX_COMPOUND_SELECT=" CTIMEOPT_VAL(SQLITE_MAX_COMPOUND_SELECT
),
420 #ifdef SQLITE_MAX_DEFAULT_PAGE_SIZE
421 "MAX_DEFAULT_PAGE_SIZE=" CTIMEOPT_VAL(SQLITE_MAX_DEFAULT_PAGE_SIZE
),
423 #ifdef SQLITE_MAX_EXPR_DEPTH
424 "MAX_EXPR_DEPTH=" CTIMEOPT_VAL(SQLITE_MAX_EXPR_DEPTH
),
426 #ifdef SQLITE_MAX_FUNCTION_ARG
427 "MAX_FUNCTION_ARG=" CTIMEOPT_VAL(SQLITE_MAX_FUNCTION_ARG
),
429 #ifdef SQLITE_MAX_LENGTH
430 "MAX_LENGTH=" CTIMEOPT_VAL(SQLITE_MAX_LENGTH
),
432 #ifdef SQLITE_MAX_LIKE_PATTERN_LENGTH
433 "MAX_LIKE_PATTERN_LENGTH=" CTIMEOPT_VAL(SQLITE_MAX_LIKE_PATTERN_LENGTH
),
435 #ifdef SQLITE_MAX_MEMORY
436 "MAX_MEMORY=" CTIMEOPT_VAL(SQLITE_MAX_MEMORY
),
438 #ifdef SQLITE_MAX_MMAP_SIZE
439 "MAX_MMAP_SIZE=" CTIMEOPT_VAL(SQLITE_MAX_MMAP_SIZE
),
441 #ifdef SQLITE_MAX_MMAP_SIZE_
442 "MAX_MMAP_SIZE_=" CTIMEOPT_VAL(SQLITE_MAX_MMAP_SIZE_
),
444 #ifdef SQLITE_MAX_PAGE_COUNT
445 "MAX_PAGE_COUNT=" CTIMEOPT_VAL(SQLITE_MAX_PAGE_COUNT
),
447 #ifdef SQLITE_MAX_PAGE_SIZE
448 "MAX_PAGE_SIZE=" CTIMEOPT_VAL(SQLITE_MAX_PAGE_SIZE
),
450 #ifdef SQLITE_MAX_SCHEMA_RETRY
451 "MAX_SCHEMA_RETRY=" CTIMEOPT_VAL(SQLITE_MAX_SCHEMA_RETRY
),
453 #ifdef SQLITE_MAX_SQL_LENGTH
454 "MAX_SQL_LENGTH=" CTIMEOPT_VAL(SQLITE_MAX_SQL_LENGTH
),
456 #ifdef SQLITE_MAX_TRIGGER_DEPTH
457 "MAX_TRIGGER_DEPTH=" CTIMEOPT_VAL(SQLITE_MAX_TRIGGER_DEPTH
),
459 #ifdef SQLITE_MAX_VARIABLE_NUMBER
460 "MAX_VARIABLE_NUMBER=" CTIMEOPT_VAL(SQLITE_MAX_VARIABLE_NUMBER
),
462 #ifdef SQLITE_MAX_VDBE_OP
463 "MAX_VDBE_OP=" CTIMEOPT_VAL(SQLITE_MAX_VDBE_OP
),
465 #ifdef SQLITE_MAX_WORKER_THREADS
466 "MAX_WORKER_THREADS=" CTIMEOPT_VAL(SQLITE_MAX_WORKER_THREADS
),
471 #if SQLITE_MIXED_ENDIAN_64BIT_FLOAT
472 "MIXED_ENDIAN_64BIT_FLOAT",
474 #if SQLITE_MMAP_READWRITE
477 #if SQLITE_MUTEX_NOOP
480 #if SQLITE_MUTEX_OMIT
483 #if SQLITE_MUTEX_PTHREADS
489 #if SQLITE_NEED_ERR_NAME
498 #if SQLITE_OMIT_ALTERTABLE
501 #if SQLITE_OMIT_ANALYZE
504 #if SQLITE_OMIT_ATTACH
507 #if SQLITE_OMIT_AUTHORIZATION
508 "OMIT_AUTHORIZATION",
510 #if SQLITE_OMIT_AUTOINCREMENT
511 "OMIT_AUTOINCREMENT",
513 #if SQLITE_OMIT_AUTOINIT
516 #if SQLITE_OMIT_AUTOMATIC_INDEX
517 "OMIT_AUTOMATIC_INDEX",
519 #if SQLITE_OMIT_AUTORESET
522 #if SQLITE_OMIT_AUTOVACUUM
525 #if SQLITE_OMIT_BETWEEN_OPTIMIZATION
526 "OMIT_BETWEEN_OPTIMIZATION",
528 #if SQLITE_OMIT_BLOB_LITERAL
534 #if SQLITE_OMIT_CHECK
537 #if SQLITE_OMIT_COMPLETE
540 #if SQLITE_OMIT_COMPOUND_SELECT
541 "OMIT_COMPOUND_SELECT",
543 #if SQLITE_OMIT_CONFLICT_CLAUSE
544 "OMIT_CONFLICT_CLAUSE",
549 #if defined(SQLITE_OMIT_DATETIME_FUNCS) || defined(SQLITE_OMIT_FLOATING_POINT)
550 "OMIT_DATETIME_FUNCS",
552 #if SQLITE_OMIT_DECLTYPE
555 #if SQLITE_OMIT_DEPRECATED
558 #if SQLITE_OMIT_DESERIALIZE
561 #if SQLITE_OMIT_DISKIO
564 #if SQLITE_OMIT_EXPLAIN
567 #if SQLITE_OMIT_FLAG_PRAGMAS
570 #if SQLITE_OMIT_FLOATING_POINT
571 "OMIT_FLOATING_POINT",
573 #if SQLITE_OMIT_FOREIGN_KEY
576 #if SQLITE_OMIT_GET_TABLE
579 #if SQLITE_OMIT_HEX_INTEGER
582 #if SQLITE_OMIT_INCRBLOB
585 #if SQLITE_OMIT_INTEGRITY_CHECK
586 "OMIT_INTEGRITY_CHECK",
588 #if SQLITE_OMIT_INTROSPECTION_PRAGMAS
589 "OMIT_INTROSPECTION_PRAGMAS",
591 #if SQLITE_OMIT_LIKE_OPTIMIZATION
592 "OMIT_LIKE_OPTIMIZATION",
594 #if SQLITE_OMIT_LOAD_EXTENSION
595 "OMIT_LOAD_EXTENSION",
597 #if SQLITE_OMIT_LOCALTIME
600 #if SQLITE_OMIT_LOOKASIDE
603 #if SQLITE_OMIT_MEMORYDB
606 #if SQLITE_OMIT_OR_OPTIMIZATION
607 "OMIT_OR_OPTIMIZATION",
609 #if SQLITE_OMIT_PAGER_PRAGMAS
610 "OMIT_PAGER_PRAGMAS",
612 #if SQLITE_OMIT_PARSER_TRACE
615 #if SQLITE_OMIT_POPEN
618 #if SQLITE_OMIT_PRAGMA
621 #if SQLITE_OMIT_PROGRESS_CALLBACK
622 "OMIT_PROGRESS_CALLBACK",
624 #if SQLITE_OMIT_QUICKBALANCE
627 #if SQLITE_OMIT_REINDEX
630 #if SQLITE_OMIT_SCHEMA_PRAGMAS
631 "OMIT_SCHEMA_PRAGMAS",
633 #if SQLITE_OMIT_SCHEMA_VERSION_PRAGMAS
634 "OMIT_SCHEMA_VERSION_PRAGMAS",
636 #if SQLITE_OMIT_SHARED_CACHE
639 #if SQLITE_OMIT_SHUTDOWN_DIRECTORIES
640 "OMIT_SHUTDOWN_DIRECTORIES",
642 #if SQLITE_OMIT_SUBQUERY
645 #if SQLITE_OMIT_TCL_VARIABLE
648 #if SQLITE_OMIT_TEMPDB
651 #if SQLITE_OMIT_TEST_CONTROL
654 #ifdef SQLITE_OMIT_TRACE
655 # if SQLITE_OMIT_TRACE != 1
656 "OMIT_TRACE=" CTIMEOPT_VAL(SQLITE_OMIT_TRACE
),
659 #if SQLITE_OMIT_TRIGGER
662 #if SQLITE_OMIT_TRUNCATE_OPTIMIZATION
663 "OMIT_TRUNCATE_OPTIMIZATION",
665 #if SQLITE_OMIT_UTF16
668 #if SQLITE_OMIT_VACUUM
674 #if SQLITE_OMIT_VIRTUALTABLE
683 #if SQLITE_OMIT_XFER_OPT
686 #if SQLITE_PCACHE_SEPARATE_HEADER
687 "PCACHE_SEPARATE_HEADER",
689 #if SQLITE_PERFORMANCE_TRACE
692 #ifdef SQLITE_POWERSAFE_OVERWRITE
693 # if SQLITE_POWERSAFE_OVERWRITE != 1
694 "POWERSAFE_OVERWRITE=" CTIMEOPT_VAL(SQLITE_POWERSAFE_OVERWRITE
),
697 #if SQLITE_PREFER_PROXY_LOCKING
698 "PREFER_PROXY_LOCKING",
700 #if SQLITE_PROXY_DEBUG
703 #if SQLITE_REVERSE_UNORDERED_SELECTS
704 "REVERSE_UNORDERED_SELECTS",
706 #if SQLITE_RTREE_INT_ONLY
709 #if SQLITE_SECURE_DELETE
712 #if SQLITE_SMALL_STACK
715 #ifdef SQLITE_SORTER_PMASZ
716 "SORTER_PMASZ=" CTIMEOPT_VAL(SQLITE_SORTER_PMASZ
),
721 #ifdef SQLITE_STAT4_SAMPLES
722 "STAT4_SAMPLES=" CTIMEOPT_VAL(SQLITE_STAT4_SAMPLES
),
724 #ifdef SQLITE_STMTJRNL_SPILL
725 "STMTJRNL_SPILL=" CTIMEOPT_VAL(SQLITE_STMTJRNL_SPILL
),
727 #if SQLITE_SUBSTR_COMPATIBILITY
728 "SUBSTR_COMPATIBILITY",
730 #if (!defined(SQLITE_WIN32_MALLOC) \
731 && !defined(SQLITE_ZERO_MALLOC) \
732 && !defined(SQLITE_MEMDEBUG) \
733 ) || defined(SQLITE_SYSTEM_MALLOC)
739 #ifdef SQLITE_TEMP_STORE
740 "TEMP_STORE=" CTIMEOPT_VAL(SQLITE_TEMP_STORE
),
745 #if defined(SQLITE_THREADSAFE)
746 "THREADSAFE=" CTIMEOPT_VAL(SQLITE_THREADSAFE
),
747 #elif defined(THREADSAFE)
748 "THREADSAFE=" CTIMEOPT_VAL(THREADSAFE
),
752 #if SQLITE_UNLINK_AFTER_CLOSE
753 "UNLINK_AFTER_CLOSE",
755 #if SQLITE_UNTESTABLE
758 #if SQLITE_USER_AUTHENTICATION
759 "USER_AUTHENTICATION",
761 #if SQLITE_USE_ALLOCA
764 #if SQLITE_USE_FCNTL_TRACE
770 #if SQLITE_VDBE_COVERAGE
773 #if SQLITE_WIN32_MALLOC
776 #if SQLITE_ZERO_MALLOC
780 ** END CODE GENERATED BY tool/mkctime.tcl
784 const char **sqlite3CompileOptions(int *pnOpt
){
785 *pnOpt
= sizeof(sqlite3azCompileOpt
) / sizeof(sqlite3azCompileOpt
[0]);
786 return (const char**)sqlite3azCompileOpt
;
789 #endif /* SQLITE_OMIT_COMPILEOPTION_DIAGS */