Merge sqlite-release(3.44.0) into prerelease-integration
[sqlcipher.git] / src / ctime.c
blob6ca70601adc4dd18e8952a1b276d31f1255857b7
1 /* DO NOT EDIT!
2 ** This file is automatically generated by the script in the canonical
3 ** SQLite source tree at tool/mkctimec.tcl.
4 **
5 ** To modify this header, edit any of the various lists in that script
6 ** which specify categories of generated conditionals in this file.
7 */
9 /*
10 ** 2010 February 23
12 ** The author disclaims copyright to this source code. In place of
13 ** a legal notice, here is a blessing:
15 ** May you do good and not evil.
16 ** May you find forgiveness for yourself and forgive others.
17 ** May you share freely, never taking more than you give.
19 *************************************************************************
21 ** This file implements routines used to report what compile-time options
22 ** SQLite was built with.
24 #ifndef SQLITE_OMIT_COMPILEOPTION_DIAGS /* IMP: R-16824-07538 */
27 ** Include the configuration header output by 'configure' if we're using the
28 ** autoconf-based build
30 #if defined(_HAVE_SQLITE_CONFIG_H) && !defined(SQLITECONFIG_H)
31 #include "sqlite_cfg.h"
32 #define SQLITECONFIG_H 1
33 #endif
35 /* These macros are provided to "stringify" the value of the define
36 ** for those options in which the value is meaningful. */
37 #define CTIMEOPT_VAL_(opt) #opt
38 #define CTIMEOPT_VAL(opt) CTIMEOPT_VAL_(opt)
40 /* Like CTIMEOPT_VAL, but especially for SQLITE_DEFAULT_LOOKASIDE. This
41 ** option requires a separate macro because legal values contain a single
42 ** comma. e.g. (-DSQLITE_DEFAULT_LOOKASIDE="100,100") */
43 #define CTIMEOPT_VAL2_(opt1,opt2) #opt1 "," #opt2
44 #define CTIMEOPT_VAL2(opt) CTIMEOPT_VAL2_(opt)
45 #include "sqliteInt.h"
48 ** An array of names of all compile-time options. This array should
49 ** be sorted A-Z.
51 ** This array looks large, but in a typical installation actually uses
52 ** only a handful of compile-time options, so most times this array is usually
53 ** rather short and uses little memory space.
55 static const char * const sqlite3azCompileOpt[] = {
57 #ifdef SQLITE_32BIT_ROWID
58 "32BIT_ROWID",
59 #endif
60 #ifdef SQLITE_4_BYTE_ALIGNED_MALLOC
61 "4_BYTE_ALIGNED_MALLOC",
62 #endif
63 #ifdef SQLITE_ALLOW_COVERING_INDEX_SCAN
64 # if SQLITE_ALLOW_COVERING_INDEX_SCAN != 1
65 "ALLOW_COVERING_INDEX_SCAN=" CTIMEOPT_VAL(SQLITE_ALLOW_COVERING_INDEX_SCAN),
66 # endif
67 #endif
68 #ifdef SQLITE_ALLOW_URI_AUTHORITY
69 "ALLOW_URI_AUTHORITY",
70 #endif
71 #ifdef SQLITE_ATOMIC_INTRINSICS
72 "ATOMIC_INTRINSICS=" CTIMEOPT_VAL(SQLITE_ATOMIC_INTRINSICS),
73 #endif
74 #ifdef SQLITE_BITMASK_TYPE
75 "BITMASK_TYPE=" CTIMEOPT_VAL(SQLITE_BITMASK_TYPE),
76 #endif
77 #ifdef SQLITE_BUG_COMPATIBLE_20160819
78 "BUG_COMPATIBLE_20160819",
79 #endif
80 #ifdef SQLITE_CASE_SENSITIVE_LIKE
81 "CASE_SENSITIVE_LIKE",
82 #endif
83 #ifdef SQLITE_CHECK_PAGES
84 "CHECK_PAGES",
85 #endif
86 #if defined(__clang__) && defined(__clang_major__)
87 "COMPILER=clang-" CTIMEOPT_VAL(__clang_major__) "."
88 CTIMEOPT_VAL(__clang_minor__) "."
89 CTIMEOPT_VAL(__clang_patchlevel__),
90 #elif defined(_MSC_VER)
91 "COMPILER=msvc-" CTIMEOPT_VAL(_MSC_VER),
92 #elif defined(__GNUC__) && defined(__VERSION__)
93 "COMPILER=gcc-" __VERSION__,
94 #endif
95 #ifdef SQLITE_COVERAGE_TEST
96 "COVERAGE_TEST",
97 #endif
98 #ifdef SQLITE_DEBUG
99 "DEBUG",
100 #endif
101 #ifdef SQLITE_DEFAULT_AUTOMATIC_INDEX
102 "DEFAULT_AUTOMATIC_INDEX",
103 #endif
104 #ifdef SQLITE_DEFAULT_AUTOVACUUM
105 "DEFAULT_AUTOVACUUM",
106 #endif
107 #ifdef SQLITE_DEFAULT_CACHE_SIZE
108 "DEFAULT_CACHE_SIZE=" CTIMEOPT_VAL(SQLITE_DEFAULT_CACHE_SIZE),
109 #endif
110 #ifdef SQLITE_DEFAULT_CKPTFULLFSYNC
111 "DEFAULT_CKPTFULLFSYNC",
112 #endif
113 #ifdef SQLITE_DEFAULT_FILE_FORMAT
114 "DEFAULT_FILE_FORMAT=" CTIMEOPT_VAL(SQLITE_DEFAULT_FILE_FORMAT),
115 #endif
116 #ifdef SQLITE_DEFAULT_FILE_PERMISSIONS
117 "DEFAULT_FILE_PERMISSIONS=" CTIMEOPT_VAL(SQLITE_DEFAULT_FILE_PERMISSIONS),
118 #endif
119 #ifdef SQLITE_DEFAULT_FOREIGN_KEYS
120 "DEFAULT_FOREIGN_KEYS",
121 #endif
122 #ifdef SQLITE_DEFAULT_JOURNAL_SIZE_LIMIT
123 "DEFAULT_JOURNAL_SIZE_LIMIT=" CTIMEOPT_VAL(SQLITE_DEFAULT_JOURNAL_SIZE_LIMIT),
124 #endif
125 #ifdef SQLITE_DEFAULT_LOCKING_MODE
126 "DEFAULT_LOCKING_MODE=" CTIMEOPT_VAL(SQLITE_DEFAULT_LOCKING_MODE),
127 #endif
128 #ifdef SQLITE_DEFAULT_LOOKASIDE
129 "DEFAULT_LOOKASIDE=" CTIMEOPT_VAL2(SQLITE_DEFAULT_LOOKASIDE),
130 #endif
131 #ifdef SQLITE_DEFAULT_MEMSTATUS
132 # if SQLITE_DEFAULT_MEMSTATUS != 1
133 "DEFAULT_MEMSTATUS=" CTIMEOPT_VAL(SQLITE_DEFAULT_MEMSTATUS),
134 # endif
135 #endif
136 #ifdef SQLITE_DEFAULT_MMAP_SIZE
137 "DEFAULT_MMAP_SIZE=" CTIMEOPT_VAL(SQLITE_DEFAULT_MMAP_SIZE),
138 #endif
139 #ifdef SQLITE_DEFAULT_PAGE_SIZE
140 "DEFAULT_PAGE_SIZE=" CTIMEOPT_VAL(SQLITE_DEFAULT_PAGE_SIZE),
141 #endif
142 #ifdef SQLITE_DEFAULT_PCACHE_INITSZ
143 "DEFAULT_PCACHE_INITSZ=" CTIMEOPT_VAL(SQLITE_DEFAULT_PCACHE_INITSZ),
144 #endif
145 #ifdef SQLITE_DEFAULT_PROXYDIR_PERMISSIONS
146 "DEFAULT_PROXYDIR_PERMISSIONS=" CTIMEOPT_VAL(SQLITE_DEFAULT_PROXYDIR_PERMISSIONS),
147 #endif
148 #ifdef SQLITE_DEFAULT_RECURSIVE_TRIGGERS
149 "DEFAULT_RECURSIVE_TRIGGERS",
150 #endif
151 #ifdef SQLITE_DEFAULT_ROWEST
152 "DEFAULT_ROWEST=" CTIMEOPT_VAL(SQLITE_DEFAULT_ROWEST),
153 #endif
154 #ifdef SQLITE_DEFAULT_SECTOR_SIZE
155 "DEFAULT_SECTOR_SIZE=" CTIMEOPT_VAL(SQLITE_DEFAULT_SECTOR_SIZE),
156 #endif
157 #ifdef SQLITE_DEFAULT_SYNCHRONOUS
158 "DEFAULT_SYNCHRONOUS=" CTIMEOPT_VAL(SQLITE_DEFAULT_SYNCHRONOUS),
159 #endif
160 #ifdef SQLITE_DEFAULT_WAL_AUTOCHECKPOINT
161 "DEFAULT_WAL_AUTOCHECKPOINT=" CTIMEOPT_VAL(SQLITE_DEFAULT_WAL_AUTOCHECKPOINT),
162 #endif
163 #ifdef SQLITE_DEFAULT_WAL_SYNCHRONOUS
164 "DEFAULT_WAL_SYNCHRONOUS=" CTIMEOPT_VAL(SQLITE_DEFAULT_WAL_SYNCHRONOUS),
165 #endif
166 #ifdef SQLITE_DEFAULT_WORKER_THREADS
167 "DEFAULT_WORKER_THREADS=" CTIMEOPT_VAL(SQLITE_DEFAULT_WORKER_THREADS),
168 #endif
169 #ifdef SQLITE_DIRECT_OVERFLOW_READ
170 "DIRECT_OVERFLOW_READ",
171 #endif
172 #ifdef SQLITE_DISABLE_DIRSYNC
173 "DISABLE_DIRSYNC",
174 #endif
175 #ifdef SQLITE_DISABLE_FTS3_UNICODE
176 "DISABLE_FTS3_UNICODE",
177 #endif
178 #ifdef SQLITE_DISABLE_FTS4_DEFERRED
179 "DISABLE_FTS4_DEFERRED",
180 #endif
181 #ifdef SQLITE_DISABLE_INTRINSIC
182 "DISABLE_INTRINSIC",
183 #endif
184 #ifdef SQLITE_DISABLE_LFS
185 "DISABLE_LFS",
186 #endif
187 #ifdef SQLITE_DISABLE_PAGECACHE_OVERFLOW_STATS
188 "DISABLE_PAGECACHE_OVERFLOW_STATS",
189 #endif
190 #ifdef SQLITE_DISABLE_SKIPAHEAD_DISTINCT
191 "DISABLE_SKIPAHEAD_DISTINCT",
192 #endif
193 #ifdef SQLITE_DQS
194 "DQS=" CTIMEOPT_VAL(SQLITE_DQS),
195 #endif
196 #ifdef SQLITE_ENABLE_8_3_NAMES
197 "ENABLE_8_3_NAMES=" CTIMEOPT_VAL(SQLITE_ENABLE_8_3_NAMES),
198 #endif
199 #ifdef SQLITE_ENABLE_API_ARMOR
200 "ENABLE_API_ARMOR",
201 #endif
202 #ifdef SQLITE_ENABLE_ATOMIC_WRITE
203 "ENABLE_ATOMIC_WRITE",
204 #endif
205 #ifdef SQLITE_ENABLE_BATCH_ATOMIC_WRITE
206 "ENABLE_BATCH_ATOMIC_WRITE",
207 #endif
208 #ifdef SQLITE_ENABLE_BYTECODE_VTAB
209 "ENABLE_BYTECODE_VTAB",
210 #endif
211 #ifdef SQLITE_ENABLE_CEROD
212 "ENABLE_CEROD=" CTIMEOPT_VAL(SQLITE_ENABLE_CEROD),
213 #endif
214 #ifdef SQLITE_ENABLE_COLUMN_METADATA
215 "ENABLE_COLUMN_METADATA",
216 #endif
217 #ifdef SQLITE_ENABLE_COLUMN_USED_MASK
218 "ENABLE_COLUMN_USED_MASK",
219 #endif
220 #ifdef SQLITE_ENABLE_COSTMULT
221 "ENABLE_COSTMULT",
222 #endif
223 #ifdef SQLITE_ENABLE_CURSOR_HINTS
224 "ENABLE_CURSOR_HINTS",
225 #endif
226 #ifdef SQLITE_ENABLE_DBPAGE_VTAB
227 "ENABLE_DBPAGE_VTAB",
228 #endif
229 #ifdef SQLITE_ENABLE_DBSTAT_VTAB
230 "ENABLE_DBSTAT_VTAB",
231 #endif
232 #ifdef SQLITE_ENABLE_EXPENSIVE_ASSERT
233 "ENABLE_EXPENSIVE_ASSERT",
234 #endif
235 #ifdef SQLITE_ENABLE_EXPLAIN_COMMENTS
236 "ENABLE_EXPLAIN_COMMENTS",
237 #endif
238 #ifdef SQLITE_ENABLE_FTS3
239 "ENABLE_FTS3",
240 #endif
241 #ifdef SQLITE_ENABLE_FTS3_PARENTHESIS
242 "ENABLE_FTS3_PARENTHESIS",
243 #endif
244 #ifdef SQLITE_ENABLE_FTS3_TOKENIZER
245 "ENABLE_FTS3_TOKENIZER",
246 #endif
247 #ifdef SQLITE_ENABLE_FTS4
248 "ENABLE_FTS4",
249 #endif
250 #ifdef SQLITE_ENABLE_FTS5
251 "ENABLE_FTS5",
252 #endif
253 #ifdef SQLITE_ENABLE_GEOPOLY
254 "ENABLE_GEOPOLY",
255 #endif
256 #ifdef SQLITE_ENABLE_HIDDEN_COLUMNS
257 "ENABLE_HIDDEN_COLUMNS",
258 #endif
259 #ifdef SQLITE_ENABLE_ICU
260 "ENABLE_ICU",
261 #endif
262 #ifdef SQLITE_ENABLE_IOTRACE
263 "ENABLE_IOTRACE",
264 #endif
265 #ifdef SQLITE_ENABLE_LOAD_EXTENSION
266 "ENABLE_LOAD_EXTENSION",
267 #endif
268 #ifdef SQLITE_ENABLE_LOCKING_STYLE
269 "ENABLE_LOCKING_STYLE=" CTIMEOPT_VAL(SQLITE_ENABLE_LOCKING_STYLE),
270 #endif
271 #ifdef SQLITE_ENABLE_MATH_FUNCTIONS
272 "ENABLE_MATH_FUNCTIONS",
273 #endif
274 #ifdef SQLITE_ENABLE_MEMORY_MANAGEMENT
275 "ENABLE_MEMORY_MANAGEMENT",
276 #endif
277 #ifdef SQLITE_ENABLE_MEMSYS3
278 "ENABLE_MEMSYS3",
279 #endif
280 #ifdef SQLITE_ENABLE_MEMSYS5
281 "ENABLE_MEMSYS5",
282 #endif
283 #ifdef SQLITE_ENABLE_MULTIPLEX
284 "ENABLE_MULTIPLEX",
285 #endif
286 #ifdef SQLITE_ENABLE_NORMALIZE
287 "ENABLE_NORMALIZE",
288 #endif
289 #ifdef SQLITE_ENABLE_NULL_TRIM
290 "ENABLE_NULL_TRIM",
291 #endif
292 #ifdef SQLITE_ENABLE_OFFSET_SQL_FUNC
293 "ENABLE_OFFSET_SQL_FUNC",
294 #endif
295 #ifdef SQLITE_ENABLE_OVERSIZE_CELL_CHECK
296 "ENABLE_OVERSIZE_CELL_CHECK",
297 #endif
298 #ifdef SQLITE_ENABLE_PREUPDATE_HOOK
299 "ENABLE_PREUPDATE_HOOK",
300 #endif
301 #ifdef SQLITE_ENABLE_QPSG
302 "ENABLE_QPSG",
303 #endif
304 #ifdef SQLITE_ENABLE_RBU
305 "ENABLE_RBU",
306 #endif
307 #ifdef SQLITE_ENABLE_RTREE
308 "ENABLE_RTREE",
309 #endif
310 #ifdef SQLITE_ENABLE_SESSION
311 "ENABLE_SESSION",
312 #endif
313 #ifdef SQLITE_ENABLE_SNAPSHOT
314 "ENABLE_SNAPSHOT",
315 #endif
316 #ifdef SQLITE_ENABLE_SORTER_REFERENCES
317 "ENABLE_SORTER_REFERENCES",
318 #endif
319 #ifdef SQLITE_ENABLE_SQLLOG
320 "ENABLE_SQLLOG",
321 #endif
322 #ifdef SQLITE_ENABLE_STAT4
323 "ENABLE_STAT4",
324 #endif
325 #ifdef SQLITE_ENABLE_STMTVTAB
326 "ENABLE_STMTVTAB",
327 #endif
328 #ifdef SQLITE_ENABLE_STMT_SCANSTATUS
329 "ENABLE_STMT_SCANSTATUS",
330 #endif
331 #ifdef SQLITE_ENABLE_TREETRACE
332 "ENABLE_TREETRACE",
333 #endif
334 #ifdef SQLITE_ENABLE_UNKNOWN_SQL_FUNCTION
335 "ENABLE_UNKNOWN_SQL_FUNCTION",
336 #endif
337 #ifdef SQLITE_ENABLE_UNLOCK_NOTIFY
338 "ENABLE_UNLOCK_NOTIFY",
339 #endif
340 #ifdef SQLITE_ENABLE_UPDATE_DELETE_LIMIT
341 "ENABLE_UPDATE_DELETE_LIMIT",
342 #endif
343 #ifdef SQLITE_ENABLE_URI_00_ERROR
344 "ENABLE_URI_00_ERROR",
345 #endif
346 #ifdef SQLITE_ENABLE_VFSTRACE
347 "ENABLE_VFSTRACE",
348 #endif
349 #ifdef SQLITE_ENABLE_WHERETRACE
350 "ENABLE_WHERETRACE",
351 #endif
352 #ifdef SQLITE_ENABLE_ZIPVFS
353 "ENABLE_ZIPVFS",
354 #endif
355 #ifdef SQLITE_EXPLAIN_ESTIMATED_ROWS
356 "EXPLAIN_ESTIMATED_ROWS",
357 #endif
358 #ifdef SQLITE_EXTRA_AUTOEXT
359 "EXTRA_AUTOEXT=" CTIMEOPT_VAL(SQLITE_EXTRA_AUTOEXT),
360 #endif
361 #ifdef SQLITE_EXTRA_IFNULLROW
362 "EXTRA_IFNULLROW",
363 #endif
364 #ifdef SQLITE_EXTRA_INIT
365 "EXTRA_INIT=" CTIMEOPT_VAL(SQLITE_EXTRA_INIT),
366 #endif
367 #ifdef SQLITE_EXTRA_SHUTDOWN
368 "EXTRA_SHUTDOWN=" CTIMEOPT_VAL(SQLITE_EXTRA_SHUTDOWN),
369 #endif
370 #ifdef SQLITE_FTS3_MAX_EXPR_DEPTH
371 "FTS3_MAX_EXPR_DEPTH=" CTIMEOPT_VAL(SQLITE_FTS3_MAX_EXPR_DEPTH),
372 #endif
373 #ifdef SQLITE_FTS5_ENABLE_TEST_MI
374 "FTS5_ENABLE_TEST_MI",
375 #endif
376 #ifdef SQLITE_FTS5_NO_WITHOUT_ROWID
377 "FTS5_NO_WITHOUT_ROWID",
378 #endif
379 /* BEGIN SQLCIPHER */
380 #if SQLITE_HAS_CODEC
381 "HAS_CODEC",
382 #endif
383 /* END SQLCIPHER */
384 #if HAVE_ISNAN || SQLITE_HAVE_ISNAN
385 "HAVE_ISNAN",
386 #endif
387 #ifdef SQLITE_HOMEGROWN_RECURSIVE_MUTEX
388 # if SQLITE_HOMEGROWN_RECURSIVE_MUTEX != 1
389 "HOMEGROWN_RECURSIVE_MUTEX=" CTIMEOPT_VAL(SQLITE_HOMEGROWN_RECURSIVE_MUTEX),
390 # endif
391 #endif
392 #ifdef SQLITE_IGNORE_AFP_LOCK_ERRORS
393 "IGNORE_AFP_LOCK_ERRORS",
394 #endif
395 #ifdef SQLITE_IGNORE_FLOCK_LOCK_ERRORS
396 "IGNORE_FLOCK_LOCK_ERRORS",
397 #endif
398 #ifdef SQLITE_INLINE_MEMCPY
399 "INLINE_MEMCPY",
400 #endif
401 #ifdef SQLITE_INT64_TYPE
402 "INT64_TYPE",
403 #endif
404 #ifdef SQLITE_INTEGRITY_CHECK_ERROR_MAX
405 "INTEGRITY_CHECK_ERROR_MAX=" CTIMEOPT_VAL(SQLITE_INTEGRITY_CHECK_ERROR_MAX),
406 #endif
407 #ifdef SQLITE_LEGACY_JSON_VALID
408 "LEGACY_JSON_VALID",
409 #endif
410 #ifdef SQLITE_LIKE_DOESNT_MATCH_BLOBS
411 "LIKE_DOESNT_MATCH_BLOBS",
412 #endif
413 #ifdef SQLITE_LOCK_TRACE
414 "LOCK_TRACE",
415 #endif
416 #ifdef SQLITE_LOG_CACHE_SPILL
417 "LOG_CACHE_SPILL",
418 #endif
419 #ifdef SQLITE_MALLOC_SOFT_LIMIT
420 "MALLOC_SOFT_LIMIT=" CTIMEOPT_VAL(SQLITE_MALLOC_SOFT_LIMIT),
421 #endif
422 #ifdef SQLITE_MAX_ATTACHED
423 "MAX_ATTACHED=" CTIMEOPT_VAL(SQLITE_MAX_ATTACHED),
424 #endif
425 #ifdef SQLITE_MAX_COLUMN
426 "MAX_COLUMN=" CTIMEOPT_VAL(SQLITE_MAX_COLUMN),
427 #endif
428 #ifdef SQLITE_MAX_COMPOUND_SELECT
429 "MAX_COMPOUND_SELECT=" CTIMEOPT_VAL(SQLITE_MAX_COMPOUND_SELECT),
430 #endif
431 #ifdef SQLITE_MAX_DEFAULT_PAGE_SIZE
432 "MAX_DEFAULT_PAGE_SIZE=" CTIMEOPT_VAL(SQLITE_MAX_DEFAULT_PAGE_SIZE),
433 #endif
434 #ifdef SQLITE_MAX_EXPR_DEPTH
435 "MAX_EXPR_DEPTH=" CTIMEOPT_VAL(SQLITE_MAX_EXPR_DEPTH),
436 #endif
437 #ifdef SQLITE_MAX_FUNCTION_ARG
438 "MAX_FUNCTION_ARG=" CTIMEOPT_VAL(SQLITE_MAX_FUNCTION_ARG),
439 #endif
440 #ifdef SQLITE_MAX_LENGTH
441 "MAX_LENGTH=" CTIMEOPT_VAL(SQLITE_MAX_LENGTH),
442 #endif
443 #ifdef SQLITE_MAX_LIKE_PATTERN_LENGTH
444 "MAX_LIKE_PATTERN_LENGTH=" CTIMEOPT_VAL(SQLITE_MAX_LIKE_PATTERN_LENGTH),
445 #endif
446 #ifdef SQLITE_MAX_MEMORY
447 "MAX_MEMORY=" CTIMEOPT_VAL(SQLITE_MAX_MEMORY),
448 #endif
449 #ifdef SQLITE_MAX_MMAP_SIZE
450 "MAX_MMAP_SIZE=" CTIMEOPT_VAL(SQLITE_MAX_MMAP_SIZE),
451 #endif
452 #ifdef SQLITE_MAX_MMAP_SIZE_
453 "MAX_MMAP_SIZE_=" CTIMEOPT_VAL(SQLITE_MAX_MMAP_SIZE_),
454 #endif
455 #ifdef SQLITE_MAX_PAGE_COUNT
456 "MAX_PAGE_COUNT=" CTIMEOPT_VAL(SQLITE_MAX_PAGE_COUNT),
457 #endif
458 #ifdef SQLITE_MAX_PAGE_SIZE
459 "MAX_PAGE_SIZE=" CTIMEOPT_VAL(SQLITE_MAX_PAGE_SIZE),
460 #endif
461 #ifdef SQLITE_MAX_SCHEMA_RETRY
462 "MAX_SCHEMA_RETRY=" CTIMEOPT_VAL(SQLITE_MAX_SCHEMA_RETRY),
463 #endif
464 #ifdef SQLITE_MAX_SQL_LENGTH
465 "MAX_SQL_LENGTH=" CTIMEOPT_VAL(SQLITE_MAX_SQL_LENGTH),
466 #endif
467 #ifdef SQLITE_MAX_TRIGGER_DEPTH
468 "MAX_TRIGGER_DEPTH=" CTIMEOPT_VAL(SQLITE_MAX_TRIGGER_DEPTH),
469 #endif
470 #ifdef SQLITE_MAX_VARIABLE_NUMBER
471 "MAX_VARIABLE_NUMBER=" CTIMEOPT_VAL(SQLITE_MAX_VARIABLE_NUMBER),
472 #endif
473 #ifdef SQLITE_MAX_VDBE_OP
474 "MAX_VDBE_OP=" CTIMEOPT_VAL(SQLITE_MAX_VDBE_OP),
475 #endif
476 #ifdef SQLITE_MAX_WORKER_THREADS
477 "MAX_WORKER_THREADS=" CTIMEOPT_VAL(SQLITE_MAX_WORKER_THREADS),
478 #endif
479 #ifdef SQLITE_MEMDEBUG
480 "MEMDEBUG",
481 #endif
482 #ifdef SQLITE_MIXED_ENDIAN_64BIT_FLOAT
483 "MIXED_ENDIAN_64BIT_FLOAT",
484 #endif
485 #ifdef SQLITE_MMAP_READWRITE
486 "MMAP_READWRITE",
487 #endif
488 #ifdef SQLITE_MUTEX_NOOP
489 "MUTEX_NOOP",
490 #endif
491 #ifdef SQLITE_MUTEX_OMIT
492 "MUTEX_OMIT",
493 #endif
494 #ifdef SQLITE_MUTEX_PTHREADS
495 "MUTEX_PTHREADS",
496 #endif
497 #ifdef SQLITE_MUTEX_W32
498 "MUTEX_W32",
499 #endif
500 #ifdef SQLITE_NEED_ERR_NAME
501 "NEED_ERR_NAME",
502 #endif
503 #ifdef SQLITE_NO_SYNC
504 "NO_SYNC",
505 #endif
506 #ifdef SQLITE_OMIT_ALTERTABLE
507 "OMIT_ALTERTABLE",
508 #endif
509 #ifdef SQLITE_OMIT_ANALYZE
510 "OMIT_ANALYZE",
511 #endif
512 #ifdef SQLITE_OMIT_ATTACH
513 "OMIT_ATTACH",
514 #endif
515 #ifdef SQLITE_OMIT_AUTHORIZATION
516 "OMIT_AUTHORIZATION",
517 #endif
518 #ifdef SQLITE_OMIT_AUTOINCREMENT
519 "OMIT_AUTOINCREMENT",
520 #endif
521 #ifdef SQLITE_OMIT_AUTOINIT
522 "OMIT_AUTOINIT",
523 #endif
524 #ifdef SQLITE_OMIT_AUTOMATIC_INDEX
525 "OMIT_AUTOMATIC_INDEX",
526 #endif
527 #ifdef SQLITE_OMIT_AUTORESET
528 "OMIT_AUTORESET",
529 #endif
530 #ifdef SQLITE_OMIT_AUTOVACUUM
531 "OMIT_AUTOVACUUM",
532 #endif
533 #ifdef SQLITE_OMIT_BETWEEN_OPTIMIZATION
534 "OMIT_BETWEEN_OPTIMIZATION",
535 #endif
536 #ifdef SQLITE_OMIT_BLOB_LITERAL
537 "OMIT_BLOB_LITERAL",
538 #endif
539 #ifdef SQLITE_OMIT_CAST
540 "OMIT_CAST",
541 #endif
542 #ifdef SQLITE_OMIT_CHECK
543 "OMIT_CHECK",
544 #endif
545 #ifdef SQLITE_OMIT_COMPLETE
546 "OMIT_COMPLETE",
547 #endif
548 #ifdef SQLITE_OMIT_COMPOUND_SELECT
549 "OMIT_COMPOUND_SELECT",
550 #endif
551 #ifdef SQLITE_OMIT_CONFLICT_CLAUSE
552 "OMIT_CONFLICT_CLAUSE",
553 #endif
554 #ifdef SQLITE_OMIT_CTE
555 "OMIT_CTE",
556 #endif
557 #if defined(SQLITE_OMIT_DATETIME_FUNCS) || defined(SQLITE_OMIT_FLOATING_POINT)
558 "OMIT_DATETIME_FUNCS",
559 #endif
560 #ifdef SQLITE_OMIT_DECLTYPE
561 "OMIT_DECLTYPE",
562 #endif
563 #ifdef SQLITE_OMIT_DEPRECATED
564 "OMIT_DEPRECATED",
565 #endif
566 #ifdef SQLITE_OMIT_DESERIALIZE
567 "OMIT_DESERIALIZE",
568 #endif
569 #ifdef SQLITE_OMIT_DISKIO
570 "OMIT_DISKIO",
571 #endif
572 #ifdef SQLITE_OMIT_EXPLAIN
573 "OMIT_EXPLAIN",
574 #endif
575 #ifdef SQLITE_OMIT_FLAG_PRAGMAS
576 "OMIT_FLAG_PRAGMAS",
577 #endif
578 #ifdef SQLITE_OMIT_FLOATING_POINT
579 "OMIT_FLOATING_POINT",
580 #endif
581 #ifdef SQLITE_OMIT_FOREIGN_KEY
582 "OMIT_FOREIGN_KEY",
583 #endif
584 #ifdef SQLITE_OMIT_GET_TABLE
585 "OMIT_GET_TABLE",
586 #endif
587 #ifdef SQLITE_OMIT_HEX_INTEGER
588 "OMIT_HEX_INTEGER",
589 #endif
590 #ifdef SQLITE_OMIT_INCRBLOB
591 "OMIT_INCRBLOB",
592 #endif
593 #ifdef SQLITE_OMIT_INTEGRITY_CHECK
594 "OMIT_INTEGRITY_CHECK",
595 #endif
596 #ifdef SQLITE_OMIT_INTROSPECTION_PRAGMAS
597 "OMIT_INTROSPECTION_PRAGMAS",
598 #endif
599 #ifdef SQLITE_OMIT_JSON
600 "OMIT_JSON",
601 #endif
602 #ifdef SQLITE_OMIT_LIKE_OPTIMIZATION
603 "OMIT_LIKE_OPTIMIZATION",
604 #endif
605 #ifdef SQLITE_OMIT_LOAD_EXTENSION
606 "OMIT_LOAD_EXTENSION",
607 #endif
608 #ifdef SQLITE_OMIT_LOCALTIME
609 "OMIT_LOCALTIME",
610 #endif
611 #ifdef SQLITE_OMIT_LOOKASIDE
612 "OMIT_LOOKASIDE",
613 #endif
614 #ifdef SQLITE_OMIT_MEMORYDB
615 "OMIT_MEMORYDB",
616 #endif
617 #ifdef SQLITE_OMIT_OR_OPTIMIZATION
618 "OMIT_OR_OPTIMIZATION",
619 #endif
620 #ifdef SQLITE_OMIT_PAGER_PRAGMAS
621 "OMIT_PAGER_PRAGMAS",
622 #endif
623 #ifdef SQLITE_OMIT_PARSER_TRACE
624 "OMIT_PARSER_TRACE",
625 #endif
626 #ifdef SQLITE_OMIT_POPEN
627 "OMIT_POPEN",
628 #endif
629 #ifdef SQLITE_OMIT_PRAGMA
630 "OMIT_PRAGMA",
631 #endif
632 #ifdef SQLITE_OMIT_PROGRESS_CALLBACK
633 "OMIT_PROGRESS_CALLBACK",
634 #endif
635 #ifdef SQLITE_OMIT_QUICKBALANCE
636 "OMIT_QUICKBALANCE",
637 #endif
638 #ifdef SQLITE_OMIT_REINDEX
639 "OMIT_REINDEX",
640 #endif
641 #ifdef SQLITE_OMIT_SCHEMA_PRAGMAS
642 "OMIT_SCHEMA_PRAGMAS",
643 #endif
644 #ifdef SQLITE_OMIT_SCHEMA_VERSION_PRAGMAS
645 "OMIT_SCHEMA_VERSION_PRAGMAS",
646 #endif
647 #ifdef SQLITE_OMIT_SEH
648 "OMIT_SEH",
649 #endif
650 #ifdef SQLITE_OMIT_SHARED_CACHE
651 "OMIT_SHARED_CACHE",
652 #endif
653 #ifdef SQLITE_OMIT_SHUTDOWN_DIRECTORIES
654 "OMIT_SHUTDOWN_DIRECTORIES",
655 #endif
656 #ifdef SQLITE_OMIT_SUBQUERY
657 "OMIT_SUBQUERY",
658 #endif
659 #ifdef SQLITE_OMIT_TCL_VARIABLE
660 "OMIT_TCL_VARIABLE",
661 #endif
662 #ifdef SQLITE_OMIT_TEMPDB
663 "OMIT_TEMPDB",
664 #endif
665 #ifdef SQLITE_OMIT_TEST_CONTROL
666 "OMIT_TEST_CONTROL",
667 #endif
668 #ifdef SQLITE_OMIT_TRACE
669 # if SQLITE_OMIT_TRACE != 1
670 "OMIT_TRACE=" CTIMEOPT_VAL(SQLITE_OMIT_TRACE),
671 # endif
672 #endif
673 #ifdef SQLITE_OMIT_TRIGGER
674 "OMIT_TRIGGER",
675 #endif
676 #ifdef SQLITE_OMIT_TRUNCATE_OPTIMIZATION
677 "OMIT_TRUNCATE_OPTIMIZATION",
678 #endif
679 #ifdef SQLITE_OMIT_UTF16
680 "OMIT_UTF16",
681 #endif
682 #ifdef SQLITE_OMIT_VACUUM
683 "OMIT_VACUUM",
684 #endif
685 #ifdef SQLITE_OMIT_VIEW
686 "OMIT_VIEW",
687 #endif
688 #ifdef SQLITE_OMIT_VIRTUALTABLE
689 "OMIT_VIRTUALTABLE",
690 #endif
691 #ifdef SQLITE_OMIT_WAL
692 "OMIT_WAL",
693 #endif
694 #ifdef SQLITE_OMIT_WSD
695 "OMIT_WSD",
696 #endif
697 #ifdef SQLITE_OMIT_XFER_OPT
698 "OMIT_XFER_OPT",
699 #endif
700 #ifdef SQLITE_PERFORMANCE_TRACE
701 "PERFORMANCE_TRACE",
702 #endif
703 #ifdef SQLITE_POWERSAFE_OVERWRITE
704 # if SQLITE_POWERSAFE_OVERWRITE != 1
705 "POWERSAFE_OVERWRITE=" CTIMEOPT_VAL(SQLITE_POWERSAFE_OVERWRITE),
706 # endif
707 #endif
708 #ifdef SQLITE_PREFER_PROXY_LOCKING
709 "PREFER_PROXY_LOCKING",
710 #endif
711 #ifdef SQLITE_PROXY_DEBUG
712 "PROXY_DEBUG",
713 #endif
714 #ifdef SQLITE_REVERSE_UNORDERED_SELECTS
715 "REVERSE_UNORDERED_SELECTS",
716 #endif
717 #ifdef SQLITE_RTREE_INT_ONLY
718 "RTREE_INT_ONLY",
719 #endif
720 #ifdef SQLITE_SECURE_DELETE
721 "SECURE_DELETE",
722 #endif
723 #ifdef SQLITE_SMALL_STACK
724 "SMALL_STACK",
725 #endif
726 #ifdef SQLITE_SORTER_PMASZ
727 "SORTER_PMASZ=" CTIMEOPT_VAL(SQLITE_SORTER_PMASZ),
728 #endif
729 #ifdef SQLITE_SOUNDEX
730 "SOUNDEX",
731 #endif
732 #ifdef SQLITE_STAT4_SAMPLES
733 "STAT4_SAMPLES=" CTIMEOPT_VAL(SQLITE_STAT4_SAMPLES),
734 #endif
735 #ifdef SQLITE_STMTJRNL_SPILL
736 "STMTJRNL_SPILL=" CTIMEOPT_VAL(SQLITE_STMTJRNL_SPILL),
737 #endif
738 #ifdef SQLITE_SUBSTR_COMPATIBILITY
739 "SUBSTR_COMPATIBILITY",
740 #endif
741 #if (!defined(SQLITE_WIN32_MALLOC) \
742 && !defined(SQLITE_ZERO_MALLOC) \
743 && !defined(SQLITE_MEMDEBUG) \
744 ) || defined(SQLITE_SYSTEM_MALLOC)
745 "SYSTEM_MALLOC",
746 #endif
747 #ifdef SQLITE_TCL
748 "TCL",
749 #endif
750 #ifdef SQLITE_TEMP_STORE
751 "TEMP_STORE=" CTIMEOPT_VAL(SQLITE_TEMP_STORE),
752 #endif
753 #ifdef SQLITE_TEST
754 "TEST",
755 #endif
756 #if defined(SQLITE_THREADSAFE)
757 "THREADSAFE=" CTIMEOPT_VAL(SQLITE_THREADSAFE),
758 #elif defined(THREADSAFE)
759 "THREADSAFE=" CTIMEOPT_VAL(THREADSAFE),
760 #else
761 "THREADSAFE=1",
762 #endif
763 #ifdef SQLITE_UNLINK_AFTER_CLOSE
764 "UNLINK_AFTER_CLOSE",
765 #endif
766 #ifdef SQLITE_UNTESTABLE
767 "UNTESTABLE",
768 #endif
769 #ifdef SQLITE_USER_AUTHENTICATION
770 "USER_AUTHENTICATION",
771 #endif
772 #ifdef SQLITE_USE_ALLOCA
773 "USE_ALLOCA",
774 #endif
775 #ifdef SQLITE_USE_FCNTL_TRACE
776 "USE_FCNTL_TRACE",
777 #endif
778 #ifdef SQLITE_USE_URI
779 "USE_URI",
780 #endif
781 #ifdef SQLITE_VDBE_COVERAGE
782 "VDBE_COVERAGE",
783 #endif
784 #ifdef SQLITE_WIN32_MALLOC
785 "WIN32_MALLOC",
786 #endif
787 #ifdef SQLITE_ZERO_MALLOC
788 "ZERO_MALLOC",
789 #endif
793 const char **sqlite3CompileOptions(int *pnOpt){
794 *pnOpt = sizeof(sqlite3azCompileOpt) / sizeof(sqlite3azCompileOpt[0]);
795 return (const char**)sqlite3azCompileOpt;
798 #endif /* SQLITE_OMIT_COMPILEOPTION_DIAGS */