/ Hex Artifact Content
Login

Artifact 109e58d00f62e8e71ee1eb5944ac18b90171c928ab2e082e058056e1137cc20b:


0000: 2f 2a 0a 2a 2a 20 32 30 31 30 20 46 65 62 72 75  /*.** 2010 Febru
0010: 61 72 79 20 32 33 0a 2a 2a 0a 2a 2a 20 54 68 65  ary 23.**.** The
0020: 20 61 75 74 68 6f 72 20 64 69 73 63 6c 61 69 6d   author disclaim
0030: 73 20 63 6f 70 79 72 69 67 68 74 20 74 6f 20 74  s copyright to t
0040: 68 69 73 20 73 6f 75 72 63 65 20 63 6f 64 65 2e  his source code.
0050: 20 20 49 6e 20 70 6c 61 63 65 20 6f 66 0a 2a 2a    In place of.**
0060: 20 61 20 6c 65 67 61 6c 20 6e 6f 74 69 63 65 2c   a legal notice,
0070: 20 68 65 72 65 20 69 73 20 61 20 62 6c 65 73 73   here is a bless
0080: 69 6e 67 3a 0a 2a 2a 0a 2a 2a 20 20 20 20 4d 61  ing:.**.**    Ma
0090: 79 20 79 6f 75 20 64 6f 20 67 6f 6f 64 20 61 6e  y you do good an
00a0: 64 20 6e 6f 74 20 65 76 69 6c 2e 0a 2a 2a 20 20  d not evil..**  
00b0: 20 20 4d 61 79 20 79 6f 75 20 66 69 6e 64 20 66    May you find f
00c0: 6f 72 67 69 76 65 6e 65 73 73 20 66 6f 72 20 79  orgiveness for y
00d0: 6f 75 72 73 65 6c 66 20 61 6e 64 20 66 6f 72 67  ourself and forg
00e0: 69 76 65 20 6f 74 68 65 72 73 2e 0a 2a 2a 20 20  ive others..**  
00f0: 20 20 4d 61 79 20 79 6f 75 20 73 68 61 72 65 20    May you share 
0100: 66 72 65 65 6c 79 2c 20 6e 65 76 65 72 20 74 61  freely, never ta
0110: 6b 69 6e 67 20 6d 6f 72 65 20 74 68 61 6e 20 79  king more than y
0120: 6f 75 20 67 69 76 65 2e 0a 2a 2a 0a 2a 2a 2a 2a  ou give..**.****
0130: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0140: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0150: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0160: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a  ****************
0170: 2a 2a 2a 2a 2a 0a 2a 2a 0a 2a 2a 20 54 68 69 73  *****.**.** This
0180: 20 66 69 6c 65 20 69 6d 70 6c 65 6d 65 6e 74 73   file implements
0190: 20 72 6f 75 74 69 6e 65 73 20 75 73 65 64 20 74   routines used t
01a0: 6f 20 72 65 70 6f 72 74 20 77 68 61 74 20 63 6f  o report what co
01b0: 6d 70 69 6c 65 2d 74 69 6d 65 20 6f 70 74 69 6f  mpile-time optio
01c0: 6e 73 0a 2a 2a 20 53 51 4c 69 74 65 20 77 61 73  ns.** SQLite was
01d0: 20 62 75 69 6c 74 20 77 69 74 68 2e 0a 2a 2f 0a   built with..*/.
01e0: 0a 23 69 66 6e 64 65 66 20 53 51 4c 49 54 45 5f  .#ifndef SQLITE_
01f0: 4f 4d 49 54 5f 43 4f 4d 50 49 4c 45 4f 50 54 49  OMIT_COMPILEOPTI
0200: 4f 4e 5f 44 49 41 47 53 0a 0a 2f 2a 0a 2a 2a 20  ON_DIAGS../*.** 
0210: 49 6e 63 6c 75 64 65 20 74 68 65 20 63 6f 6e 66  Include the conf
0220: 69 67 75 72 61 74 69 6f 6e 20 68 65 61 64 65 72  iguration header
0230: 20 6f 75 74 70 75 74 20 62 79 20 27 63 6f 6e 66   output by 'conf
0240: 69 67 75 72 65 27 20 69 66 20 77 65 27 72 65 20  igure' if we're 
0250: 75 73 69 6e 67 20 74 68 65 0a 2a 2a 20 61 75 74  using the.** aut
0260: 6f 63 6f 6e 66 2d 62 61 73 65 64 20 62 75 69 6c  oconf-based buil
0270: 64 0a 2a 2f 0a 23 69 66 20 64 65 66 69 6e 65 64  d.*/.#if defined
0280: 28 5f 48 41 56 45 5f 53 51 4c 49 54 45 5f 43 4f  (_HAVE_SQLITE_CO
0290: 4e 46 49 47 5f 48 29 20 26 26 20 21 64 65 66 69  NFIG_H) && !defi
02a0: 6e 65 64 28 53 51 4c 49 54 45 43 4f 4e 46 49 47  ned(SQLITECONFIG
02b0: 5f 48 29 0a 23 69 6e 63 6c 75 64 65 20 22 63 6f  _H).#include "co
02c0: 6e 66 69 67 2e 68 22 0a 23 64 65 66 69 6e 65 20  nfig.h".#define 
02d0: 53 51 4c 49 54 45 43 4f 4e 46 49 47 5f 48 20 31  SQLITECONFIG_H 1
02e0: 0a 23 65 6e 64 69 66 0a 0a 2f 2a 20 54 68 65 73  .#endif../* Thes
02f0: 65 20 6d 61 63 72 6f 73 20 61 72 65 20 70 72 6f  e macros are pro
0300: 76 69 64 65 64 20 74 6f 20 22 73 74 72 69 6e 67  vided to "string
0310: 69 66 79 22 20 74 68 65 20 76 61 6c 75 65 20 6f  ify" the value o
0320: 66 20 74 68 65 20 64 65 66 69 6e 65 0a 2a 2a 20  f the define.** 
0330: 66 6f 72 20 74 68 6f 73 65 20 6f 70 74 69 6f 6e  for those option
0340: 73 20 69 6e 20 77 68 69 63 68 20 74 68 65 20 76  s in which the v
0350: 61 6c 75 65 20 69 73 20 6d 65 61 6e 69 6e 67 66  alue is meaningf
0360: 75 6c 2e 20 2a 2f 0a 23 64 65 66 69 6e 65 20 43  ul. */.#define C
0370: 54 49 4d 45 4f 50 54 5f 56 41 4c 5f 28 6f 70 74  TIMEOPT_VAL_(opt
0380: 29 20 23 6f 70 74 0a 23 64 65 66 69 6e 65 20 43  ) #opt.#define C
0390: 54 49 4d 45 4f 50 54 5f 56 41 4c 28 6f 70 74 29  TIMEOPT_VAL(opt)
03a0: 20 43 54 49 4d 45 4f 50 54 5f 56 41 4c 5f 28 6f   CTIMEOPT_VAL_(o
03b0: 70 74 29 0a 0a 2f 2a 20 4c 69 6b 65 20 43 54 49  pt)../* Like CTI
03c0: 4d 45 4f 50 54 5f 56 41 4c 2c 20 62 75 74 20 65  MEOPT_VAL, but e
03d0: 73 70 65 63 69 61 6c 6c 79 20 66 6f 72 20 53 51  specially for SQ
03e0: 4c 49 54 45 5f 44 45 46 41 55 4c 54 5f 4c 4f 4f  LITE_DEFAULT_LOO
03f0: 4b 41 53 49 44 45 2e 20 54 68 69 73 0a 2a 2a 20  KASIDE. This.** 
0400: 6f 70 74 69 6f 6e 20 72 65 71 75 69 72 65 73 20  option requires 
0410: 61 20 73 65 70 61 72 61 74 65 20 6d 61 63 72 6f  a separate macro
0420: 20 62 65 63 61 75 73 65 20 6c 65 67 61 6c 20 76   because legal v
0430: 61 6c 75 65 73 20 63 6f 6e 74 61 69 6e 20 61 20  alues contain a 
0440: 73 69 6e 67 6c 65 0a 2a 2a 20 63 6f 6d 6d 61 2e  single.** comma.
0450: 20 65 2e 67 2e 20 28 2d 44 53 51 4c 49 54 45 5f   e.g. (-DSQLITE_
0460: 44 45 46 41 55 4c 54 5f 4c 4f 4f 4b 41 53 49 44  DEFAULT_LOOKASID
0470: 45 3d 22 31 30 30 2c 31 30 30 22 29 20 2a 2f 0a  E="100,100") */.
0480: 23 64 65 66 69 6e 65 20 43 54 49 4d 45 4f 50 54  #define CTIMEOPT
0490: 5f 56 41 4c 32 5f 28 6f 70 74 31 2c 6f 70 74 32  _VAL2_(opt1,opt2
04a0: 29 20 23 6f 70 74 31 20 22 2c 22 20 23 6f 70 74  ) #opt1 "," #opt
04b0: 32 0a 23 64 65 66 69 6e 65 20 43 54 49 4d 45 4f  2.#define CTIMEO
04c0: 50 54 5f 56 41 4c 32 28 6f 70 74 29 20 43 54 49  PT_VAL2(opt) CTI
04d0: 4d 45 4f 50 54 5f 56 41 4c 32 5f 28 6f 70 74 29  MEOPT_VAL2_(opt)
04e0: 0a 0a 2f 2a 0a 2a 2a 20 41 6e 20 61 72 72 61 79  ../*.** An array
04f0: 20 6f 66 20 6e 61 6d 65 73 20 6f 66 20 61 6c 6c   of names of all
0500: 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 6f 70   compile-time op
0510: 74 69 6f 6e 73 2e 20 20 54 68 69 73 20 61 72 72  tions.  This arr
0520: 61 79 20 73 68 6f 75 6c 64 20 0a 2a 2a 20 62 65  ay should .** be
0530: 20 73 6f 72 74 65 64 20 41 2d 5a 2e 0a 2a 2a 0a   sorted A-Z..**.
0540: 2a 2a 20 54 68 69 73 20 61 72 72 61 79 20 6c 6f  ** This array lo
0550: 6f 6b 73 20 6c 61 72 67 65 2c 20 62 75 74 20 69  oks large, but i
0560: 6e 20 61 20 74 79 70 69 63 61 6c 20 69 6e 73 74  n a typical inst
0570: 61 6c 6c 61 74 69 6f 6e 20 61 63 74 75 61 6c 6c  allation actuall
0580: 79 20 75 73 65 73 0a 2a 2a 20 6f 6e 6c 79 20 61  y uses.** only a
0590: 20 68 61 6e 64 66 75 6c 20 6f 66 20 63 6f 6d 70   handful of comp
05a0: 69 6c 65 2d 74 69 6d 65 20 6f 70 74 69 6f 6e 73  ile-time options
05b0: 2c 20 73 6f 20 6d 6f 73 74 20 74 69 6d 65 73 20  , so most times 
05c0: 74 68 69 73 20 61 72 72 61 79 20 69 73 20 75 73  this array is us
05d0: 75 61 6c 6c 79 0a 2a 2a 20 72 61 74 68 65 72 20  ually.** rather 
05e0: 73 68 6f 72 74 20 61 6e 64 20 75 73 65 73 20 6c  short and uses l
05f0: 69 74 74 6c 65 20 6d 65 6d 6f 72 79 20 73 70 61  ittle memory spa
0600: 63 65 2e 0a 2a 2f 0a 73 74 61 74 69 63 20 63 6f  ce..*/.static co
0610: 6e 73 74 20 63 68 61 72 20 2a 20 63 6f 6e 73 74  nst char * const
0620: 20 73 71 6c 69 74 65 33 61 7a 43 6f 6d 70 69 6c   sqlite3azCompil
0630: 65 4f 70 74 5b 5d 20 3d 20 7b 0a 0a 2f 2a 20 0a  eOpt[] = {../* .
0640: 2a 2a 20 42 45 47 49 4e 20 43 4f 44 45 20 47 45  ** BEGIN CODE GE
0650: 4e 45 52 41 54 45 44 20 42 59 20 74 6f 6f 6c 2f  NERATED BY tool/
0660: 6d 6b 63 74 69 6d 65 2e 74 63 6c 20 0a 2a 2f 0a  mkctime.tcl .*/.
0670: 23 69 66 20 53 51 4c 49 54 45 5f 33 32 42 49 54  #if SQLITE_32BIT
0680: 5f 52 4f 57 49 44 0a 20 20 22 33 32 42 49 54 5f  _ROWID.  "32BIT_
0690: 52 4f 57 49 44 22 2c 0a 23 65 6e 64 69 66 0a 23  ROWID",.#endif.#
06a0: 69 66 20 53 51 4c 49 54 45 5f 34 5f 42 59 54 45  if SQLITE_4_BYTE
06b0: 5f 41 4c 49 47 4e 45 44 5f 4d 41 4c 4c 4f 43 0a  _ALIGNED_MALLOC.
06c0: 20 20 22 34 5f 42 59 54 45 5f 41 4c 49 47 4e 45    "4_BYTE_ALIGNE
06d0: 44 5f 4d 41 4c 4c 4f 43 22 2c 0a 23 65 6e 64 69  D_MALLOC",.#endi
06e0: 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 36 34 42  f.#if SQLITE_64B
06f0: 49 54 5f 53 54 41 54 53 0a 20 20 22 36 34 42 49  IT_STATS.  "64BI
0700: 54 5f 53 54 41 54 53 22 2c 0a 23 65 6e 64 69 66  T_STATS",.#endif
0710: 0a 23 69 66 20 53 51 4c 49 54 45 5f 41 4c 4c 4f  .#if SQLITE_ALLO
0720: 57 5f 43 4f 56 45 52 49 4e 47 5f 49 4e 44 45 58  W_COVERING_INDEX
0730: 5f 53 43 41 4e 0a 20 20 22 41 4c 4c 4f 57 5f 43  _SCAN.  "ALLOW_C
0740: 4f 56 45 52 49 4e 47 5f 49 4e 44 45 58 5f 53 43  OVERING_INDEX_SC
0750: 41 4e 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20  AN",.#endif.#if 
0760: 53 51 4c 49 54 45 5f 41 4c 4c 4f 57 5f 55 52 49  SQLITE_ALLOW_URI
0770: 5f 41 55 54 48 4f 52 49 54 59 0a 20 20 22 41 4c  _AUTHORITY.  "AL
0780: 4c 4f 57 5f 55 52 49 5f 41 55 54 48 4f 52 49 54  LOW_URI_AUTHORIT
0790: 59 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 64 65  Y",.#endif.#ifde
07a0: 66 20 53 51 4c 49 54 45 5f 42 49 54 4d 41 53 4b  f SQLITE_BITMASK
07b0: 5f 54 59 50 45 0a 20 20 22 42 49 54 4d 41 53 4b  _TYPE.  "BITMASK
07c0: 5f 54 59 50 45 3d 22 20 43 54 49 4d 45 4f 50 54  _TYPE=" CTIMEOPT
07d0: 5f 56 41 4c 28 53 51 4c 49 54 45 5f 42 49 54 4d  _VAL(SQLITE_BITM
07e0: 41 53 4b 5f 54 59 50 45 29 2c 0a 23 65 6e 64 69  ASK_TYPE),.#endi
07f0: 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 42 55 47  f.#if SQLITE_BUG
0800: 5f 43 4f 4d 50 41 54 49 42 4c 45 5f 32 30 31 36  _COMPATIBLE_2016
0810: 30 38 31 39 0a 20 20 22 42 55 47 5f 43 4f 4d 50  0819.  "BUG_COMP
0820: 41 54 49 42 4c 45 5f 32 30 31 36 30 38 31 39 22  ATIBLE_20160819"
0830: 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c  ,.#endif.#if SQL
0840: 49 54 45 5f 43 41 53 45 5f 53 45 4e 53 49 54 49  ITE_CASE_SENSITI
0850: 56 45 5f 4c 49 4b 45 0a 20 20 22 43 41 53 45 5f  VE_LIKE.  "CASE_
0860: 53 45 4e 53 49 54 49 56 45 5f 4c 49 4b 45 22 2c  SENSITIVE_LIKE",
0870: 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49  .#endif.#if SQLI
0880: 54 45 5f 43 48 45 43 4b 5f 50 41 47 45 53 0a 20  TE_CHECK_PAGES. 
0890: 20 22 43 48 45 43 4b 5f 50 41 47 45 53 22 2c 0a   "CHECK_PAGES",.
08a0: 23 65 6e 64 69 66 0a 23 69 66 20 64 65 66 69 6e  #endif.#if defin
08b0: 65 64 28 5f 5f 63 6c 61 6e 67 5f 5f 29 20 26 26  ed(__clang__) &&
08c0: 20 64 65 66 69 6e 65 64 28 5f 5f 63 6c 61 6e 67   defined(__clang
08d0: 5f 6d 61 6a 6f 72 5f 5f 29 0a 20 20 22 43 4f 4d  _major__).  "COM
08e0: 50 49 4c 45 52 3d 63 6c 61 6e 67 2d 22 20 43 54  PILER=clang-" CT
08f0: 49 4d 45 4f 50 54 5f 56 41 4c 28 5f 5f 63 6c 61  IMEOPT_VAL(__cla
0900: 6e 67 5f 6d 61 6a 6f 72 5f 5f 29 20 22 2e 22 0a  ng_major__) ".".
0910: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0920: 20 20 20 20 43 54 49 4d 45 4f 50 54 5f 56 41 4c      CTIMEOPT_VAL
0930: 28 5f 5f 63 6c 61 6e 67 5f 6d 69 6e 6f 72 5f 5f  (__clang_minor__
0940: 29 20 22 2e 22 0a 20 20 20 20 20 20 20 20 20 20  ) ".".          
0950: 20 20 20 20 20 20 20 20 20 20 43 54 49 4d 45 4f            CTIMEO
0960: 50 54 5f 56 41 4c 28 5f 5f 63 6c 61 6e 67 5f 70  PT_VAL(__clang_p
0970: 61 74 63 68 6c 65 76 65 6c 5f 5f 29 2c 0a 23 65  atchlevel__),.#e
0980: 6c 69 66 20 64 65 66 69 6e 65 64 28 5f 4d 53 43  lif defined(_MSC
0990: 5f 56 45 52 29 0a 20 20 22 43 4f 4d 50 49 4c 45  _VER).  "COMPILE
09a0: 52 3d 6d 73 76 63 2d 22 20 43 54 49 4d 45 4f 50  R=msvc-" CTIMEOP
09b0: 54 5f 56 41 4c 28 5f 4d 53 43 5f 56 45 52 29 2c  T_VAL(_MSC_VER),
09c0: 0a 23 65 6c 69 66 20 64 65 66 69 6e 65 64 28 5f  .#elif defined(_
09d0: 5f 47 4e 55 43 5f 5f 29 20 26 26 20 64 65 66 69  _GNUC__) && defi
09e0: 6e 65 64 28 5f 5f 56 45 52 53 49 4f 4e 5f 5f 29  ned(__VERSION__)
09f0: 0a 20 20 22 43 4f 4d 50 49 4c 45 52 3d 67 63 63  .  "COMPILER=gcc
0a00: 2d 22 20 5f 5f 56 45 52 53 49 4f 4e 5f 5f 2c 0a  -" __VERSION__,.
0a10: 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54  #endif.#if SQLIT
0a20: 45 5f 43 4f 56 45 52 41 47 45 5f 54 45 53 54 0a  E_COVERAGE_TEST.
0a30: 20 20 22 43 4f 56 45 52 41 47 45 5f 54 45 53 54    "COVERAGE_TEST
0a40: 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51  ",.#endif.#if SQ
0a50: 4c 49 54 45 5f 44 45 42 55 47 0a 20 20 22 44 45  LITE_DEBUG.  "DE
0a60: 42 55 47 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66  BUG",.#endif.#if
0a70: 20 53 51 4c 49 54 45 5f 44 45 46 41 55 4c 54 5f   SQLITE_DEFAULT_
0a80: 41 55 54 4f 4d 41 54 49 43 5f 49 4e 44 45 58 0a  AUTOMATIC_INDEX.
0a90: 20 20 22 44 45 46 41 55 4c 54 5f 41 55 54 4f 4d    "DEFAULT_AUTOM
0aa0: 41 54 49 43 5f 49 4e 44 45 58 22 2c 0a 23 65 6e  ATIC_INDEX",.#en
0ab0: 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 44  dif.#if SQLITE_D
0ac0: 45 46 41 55 4c 54 5f 41 55 54 4f 56 41 43 55 55  EFAULT_AUTOVACUU
0ad0: 4d 0a 20 20 22 44 45 46 41 55 4c 54 5f 41 55 54  M.  "DEFAULT_AUT
0ae0: 4f 56 41 43 55 55 4d 22 2c 0a 23 65 6e 64 69 66  OVACUUM",.#endif
0af0: 0a 23 69 66 64 65 66 20 53 51 4c 49 54 45 5f 44  .#ifdef SQLITE_D
0b00: 45 46 41 55 4c 54 5f 43 41 43 48 45 5f 53 49 5a  EFAULT_CACHE_SIZ
0b10: 45 0a 20 20 22 44 45 46 41 55 4c 54 5f 43 41 43  E.  "DEFAULT_CAC
0b20: 48 45 5f 53 49 5a 45 3d 22 20 43 54 49 4d 45 4f  HE_SIZE=" CTIMEO
0b30: 50 54 5f 56 41 4c 28 53 51 4c 49 54 45 5f 44 45  PT_VAL(SQLITE_DE
0b40: 46 41 55 4c 54 5f 43 41 43 48 45 5f 53 49 5a 45  FAULT_CACHE_SIZE
0b50: 29 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51  ),.#endif.#if SQ
0b60: 4c 49 54 45 5f 44 45 46 41 55 4c 54 5f 43 4b 50  LITE_DEFAULT_CKP
0b70: 54 46 55 4c 4c 46 53 59 4e 43 0a 20 20 22 44 45  TFULLFSYNC.  "DE
0b80: 46 41 55 4c 54 5f 43 4b 50 54 46 55 4c 4c 46 53  FAULT_CKPTFULLFS
0b90: 59 4e 43 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66  YNC",.#endif.#if
0ba0: 64 65 66 20 53 51 4c 49 54 45 5f 44 45 46 41 55  def SQLITE_DEFAU
0bb0: 4c 54 5f 46 49 4c 45 5f 46 4f 52 4d 41 54 0a 20  LT_FILE_FORMAT. 
0bc0: 20 22 44 45 46 41 55 4c 54 5f 46 49 4c 45 5f 46   "DEFAULT_FILE_F
0bd0: 4f 52 4d 41 54 3d 22 20 43 54 49 4d 45 4f 50 54  ORMAT=" CTIMEOPT
0be0: 5f 56 41 4c 28 53 51 4c 49 54 45 5f 44 45 46 41  _VAL(SQLITE_DEFA
0bf0: 55 4c 54 5f 46 49 4c 45 5f 46 4f 52 4d 41 54 29  ULT_FILE_FORMAT)
0c00: 2c 0a 23 65 6e 64 69 66 0a 23 69 66 64 65 66 20  ,.#endif.#ifdef 
0c10: 53 51 4c 49 54 45 5f 44 45 46 41 55 4c 54 5f 46  SQLITE_DEFAULT_F
0c20: 49 4c 45 5f 50 45 52 4d 49 53 53 49 4f 4e 53 0a  ILE_PERMISSIONS.
0c30: 20 20 22 44 45 46 41 55 4c 54 5f 46 49 4c 45 5f    "DEFAULT_FILE_
0c40: 50 45 52 4d 49 53 53 49 4f 4e 53 3d 22 20 43 54  PERMISSIONS=" CT
0c50: 49 4d 45 4f 50 54 5f 56 41 4c 28 53 51 4c 49 54  IMEOPT_VAL(SQLIT
0c60: 45 5f 44 45 46 41 55 4c 54 5f 46 49 4c 45 5f 50  E_DEFAULT_FILE_P
0c70: 45 52 4d 49 53 53 49 4f 4e 53 29 2c 0a 23 65 6e  ERMISSIONS),.#en
0c80: 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 44  dif.#if SQLITE_D
0c90: 45 46 41 55 4c 54 5f 46 4f 52 45 49 47 4e 5f 4b  EFAULT_FOREIGN_K
0ca0: 45 59 53 0a 20 20 22 44 45 46 41 55 4c 54 5f 46  EYS.  "DEFAULT_F
0cb0: 4f 52 45 49 47 4e 5f 4b 45 59 53 22 2c 0a 23 65  OREIGN_KEYS",.#e
0cc0: 6e 64 69 66 0a 23 69 66 64 65 66 20 53 51 4c 49  ndif.#ifdef SQLI
0cd0: 54 45 5f 44 45 46 41 55 4c 54 5f 4a 4f 55 52 4e  TE_DEFAULT_JOURN
0ce0: 41 4c 5f 53 49 5a 45 5f 4c 49 4d 49 54 0a 20 20  AL_SIZE_LIMIT.  
0cf0: 22 44 45 46 41 55 4c 54 5f 4a 4f 55 52 4e 41 4c  "DEFAULT_JOURNAL
0d00: 5f 53 49 5a 45 5f 4c 49 4d 49 54 3d 22 20 43 54  _SIZE_LIMIT=" CT
0d10: 49 4d 45 4f 50 54 5f 56 41 4c 28 53 51 4c 49 54  IMEOPT_VAL(SQLIT
0d20: 45 5f 44 45 46 41 55 4c 54 5f 4a 4f 55 52 4e 41  E_DEFAULT_JOURNA
0d30: 4c 5f 53 49 5a 45 5f 4c 49 4d 49 54 29 2c 0a 23  L_SIZE_LIMIT),.#
0d40: 65 6e 64 69 66 0a 23 69 66 64 65 66 20 53 51 4c  endif.#ifdef SQL
0d50: 49 54 45 5f 44 45 46 41 55 4c 54 5f 4c 4f 43 4b  ITE_DEFAULT_LOCK
0d60: 49 4e 47 5f 4d 4f 44 45 0a 20 20 22 44 45 46 41  ING_MODE.  "DEFA
0d70: 55 4c 54 5f 4c 4f 43 4b 49 4e 47 5f 4d 4f 44 45  ULT_LOCKING_MODE
0d80: 3d 22 20 43 54 49 4d 45 4f 50 54 5f 56 41 4c 28  =" CTIMEOPT_VAL(
0d90: 53 51 4c 49 54 45 5f 44 45 46 41 55 4c 54 5f 4c  SQLITE_DEFAULT_L
0da0: 4f 43 4b 49 4e 47 5f 4d 4f 44 45 29 2c 0a 23 65  OCKING_MODE),.#e
0db0: 6e 64 69 66 0a 23 69 66 64 65 66 20 53 51 4c 49  ndif.#ifdef SQLI
0dc0: 54 45 5f 44 45 46 41 55 4c 54 5f 4c 4f 4f 4b 41  TE_DEFAULT_LOOKA
0dd0: 53 49 44 45 0a 20 20 22 44 45 46 41 55 4c 54 5f  SIDE.  "DEFAULT_
0de0: 4c 4f 4f 4b 41 53 49 44 45 3d 22 20 43 54 49 4d  LOOKASIDE=" CTIM
0df0: 45 4f 50 54 5f 56 41 4c 32 28 53 51 4c 49 54 45  EOPT_VAL2(SQLITE
0e00: 5f 44 45 46 41 55 4c 54 5f 4c 4f 4f 4b 41 53 49  _DEFAULT_LOOKASI
0e10: 44 45 29 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20  DE),.#endif.#if 
0e20: 53 51 4c 49 54 45 5f 44 45 46 41 55 4c 54 5f 4d  SQLITE_DEFAULT_M
0e30: 45 4d 53 54 41 54 55 53 0a 20 20 22 44 45 46 41  EMSTATUS.  "DEFA
0e40: 55 4c 54 5f 4d 45 4d 53 54 41 54 55 53 22 2c 0a  ULT_MEMSTATUS",.
0e50: 23 65 6e 64 69 66 0a 23 69 66 64 65 66 20 53 51  #endif.#ifdef SQ
0e60: 4c 49 54 45 5f 44 45 46 41 55 4c 54 5f 4d 4d 41  LITE_DEFAULT_MMA
0e70: 50 5f 53 49 5a 45 0a 20 20 22 44 45 46 41 55 4c  P_SIZE.  "DEFAUL
0e80: 54 5f 4d 4d 41 50 5f 53 49 5a 45 3d 22 20 43 54  T_MMAP_SIZE=" CT
0e90: 49 4d 45 4f 50 54 5f 56 41 4c 28 53 51 4c 49 54  IMEOPT_VAL(SQLIT
0ea0: 45 5f 44 45 46 41 55 4c 54 5f 4d 4d 41 50 5f 53  E_DEFAULT_MMAP_S
0eb0: 49 5a 45 29 2c 0a 23 65 6e 64 69 66 0a 23 69 66  IZE),.#endif.#if
0ec0: 64 65 66 20 53 51 4c 49 54 45 5f 44 45 46 41 55  def SQLITE_DEFAU
0ed0: 4c 54 5f 50 41 47 45 5f 53 49 5a 45 0a 20 20 22  LT_PAGE_SIZE.  "
0ee0: 44 45 46 41 55 4c 54 5f 50 41 47 45 5f 53 49 5a  DEFAULT_PAGE_SIZ
0ef0: 45 3d 22 20 43 54 49 4d 45 4f 50 54 5f 56 41 4c  E=" CTIMEOPT_VAL
0f00: 28 53 51 4c 49 54 45 5f 44 45 46 41 55 4c 54 5f  (SQLITE_DEFAULT_
0f10: 50 41 47 45 5f 53 49 5a 45 29 2c 0a 23 65 6e 64  PAGE_SIZE),.#end
0f20: 69 66 0a 23 69 66 64 65 66 20 53 51 4c 49 54 45  if.#ifdef SQLITE
0f30: 5f 44 45 46 41 55 4c 54 5f 50 43 41 43 48 45 5f  _DEFAULT_PCACHE_
0f40: 49 4e 49 54 53 5a 0a 20 20 22 44 45 46 41 55 4c  INITSZ.  "DEFAUL
0f50: 54 5f 50 43 41 43 48 45 5f 49 4e 49 54 53 5a 3d  T_PCACHE_INITSZ=
0f60: 22 20 43 54 49 4d 45 4f 50 54 5f 56 41 4c 28 53  " CTIMEOPT_VAL(S
0f70: 51 4c 49 54 45 5f 44 45 46 41 55 4c 54 5f 50 43  QLITE_DEFAULT_PC
0f80: 41 43 48 45 5f 49 4e 49 54 53 5a 29 2c 0a 23 65  ACHE_INITSZ),.#e
0f90: 6e 64 69 66 0a 23 69 66 64 65 66 20 53 51 4c 49  ndif.#ifdef SQLI
0fa0: 54 45 5f 44 45 46 41 55 4c 54 5f 50 52 4f 58 59  TE_DEFAULT_PROXY
0fb0: 44 49 52 5f 50 45 52 4d 49 53 53 49 4f 4e 53 0a  DIR_PERMISSIONS.
0fc0: 20 20 22 44 45 46 41 55 4c 54 5f 50 52 4f 58 59    "DEFAULT_PROXY
0fd0: 44 49 52 5f 50 45 52 4d 49 53 53 49 4f 4e 53 3d  DIR_PERMISSIONS=
0fe0: 22 20 43 54 49 4d 45 4f 50 54 5f 56 41 4c 28 53  " CTIMEOPT_VAL(S
0ff0: 51 4c 49 54 45 5f 44 45 46 41 55 4c 54 5f 50 52  QLITE_DEFAULT_PR
1000: 4f 58 59 44 49 52 5f 50 45 52 4d 49 53 53 49 4f  OXYDIR_PERMISSIO
1010: 4e 53 29 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20  NS),.#endif.#if 
1020: 53 51 4c 49 54 45 5f 44 45 46 41 55 4c 54 5f 52  SQLITE_DEFAULT_R
1030: 45 43 55 52 53 49 56 45 5f 54 52 49 47 47 45 52  ECURSIVE_TRIGGER
1040: 53 0a 20 20 22 44 45 46 41 55 4c 54 5f 52 45 43  S.  "DEFAULT_REC
1050: 55 52 53 49 56 45 5f 54 52 49 47 47 45 52 53 22  URSIVE_TRIGGERS"
1060: 2c 0a 23 65 6e 64 69 66 0a 23 69 66 64 65 66 20  ,.#endif.#ifdef 
1070: 53 51 4c 49 54 45 5f 44 45 46 41 55 4c 54 5f 52  SQLITE_DEFAULT_R
1080: 4f 57 45 53 54 0a 20 20 22 44 45 46 41 55 4c 54  OWEST.  "DEFAULT
1090: 5f 52 4f 57 45 53 54 3d 22 20 43 54 49 4d 45 4f  _ROWEST=" CTIMEO
10a0: 50 54 5f 56 41 4c 28 53 51 4c 49 54 45 5f 44 45  PT_VAL(SQLITE_DE
10b0: 46 41 55 4c 54 5f 52 4f 57 45 53 54 29 2c 0a 23  FAULT_ROWEST),.#
10c0: 65 6e 64 69 66 0a 23 69 66 64 65 66 20 53 51 4c  endif.#ifdef SQL
10d0: 49 54 45 5f 44 45 46 41 55 4c 54 5f 53 45 43 54  ITE_DEFAULT_SECT
10e0: 4f 52 5f 53 49 5a 45 0a 20 20 22 44 45 46 41 55  OR_SIZE.  "DEFAU
10f0: 4c 54 5f 53 45 43 54 4f 52 5f 53 49 5a 45 3d 22  LT_SECTOR_SIZE="
1100: 20 43 54 49 4d 45 4f 50 54 5f 56 41 4c 28 53 51   CTIMEOPT_VAL(SQ
1110: 4c 49 54 45 5f 44 45 46 41 55 4c 54 5f 53 45 43  LITE_DEFAULT_SEC
1120: 54 4f 52 5f 53 49 5a 45 29 2c 0a 23 65 6e 64 69  TOR_SIZE),.#endi
1130: 66 0a 23 69 66 64 65 66 20 53 51 4c 49 54 45 5f  f.#ifdef SQLITE_
1140: 44 45 46 41 55 4c 54 5f 53 59 4e 43 48 52 4f 4e  DEFAULT_SYNCHRON
1150: 4f 55 53 0a 20 20 22 44 45 46 41 55 4c 54 5f 53  OUS.  "DEFAULT_S
1160: 59 4e 43 48 52 4f 4e 4f 55 53 3d 22 20 43 54 49  YNCHRONOUS=" CTI
1170: 4d 45 4f 50 54 5f 56 41 4c 28 53 51 4c 49 54 45  MEOPT_VAL(SQLITE
1180: 5f 44 45 46 41 55 4c 54 5f 53 59 4e 43 48 52 4f  _DEFAULT_SYNCHRO
1190: 4e 4f 55 53 29 2c 0a 23 65 6e 64 69 66 0a 23 69  NOUS),.#endif.#i
11a0: 66 64 65 66 20 53 51 4c 49 54 45 5f 44 45 46 41  fdef SQLITE_DEFA
11b0: 55 4c 54 5f 57 41 4c 5f 41 55 54 4f 43 48 45 43  ULT_WAL_AUTOCHEC
11c0: 4b 50 4f 49 4e 54 0a 20 20 22 44 45 46 41 55 4c  KPOINT.  "DEFAUL
11d0: 54 5f 57 41 4c 5f 41 55 54 4f 43 48 45 43 4b 50  T_WAL_AUTOCHECKP
11e0: 4f 49 4e 54 3d 22 20 43 54 49 4d 45 4f 50 54 5f  OINT=" CTIMEOPT_
11f0: 56 41 4c 28 53 51 4c 49 54 45 5f 44 45 46 41 55  VAL(SQLITE_DEFAU
1200: 4c 54 5f 57 41 4c 5f 41 55 54 4f 43 48 45 43 4b  LT_WAL_AUTOCHECK
1210: 50 4f 49 4e 54 29 2c 0a 23 65 6e 64 69 66 0a 23  POINT),.#endif.#
1220: 69 66 64 65 66 20 53 51 4c 49 54 45 5f 44 45 46  ifdef SQLITE_DEF
1230: 41 55 4c 54 5f 57 41 4c 5f 53 59 4e 43 48 52 4f  AULT_WAL_SYNCHRO
1240: 4e 4f 55 53 0a 20 20 22 44 45 46 41 55 4c 54 5f  NOUS.  "DEFAULT_
1250: 57 41 4c 5f 53 59 4e 43 48 52 4f 4e 4f 55 53 3d  WAL_SYNCHRONOUS=
1260: 22 20 43 54 49 4d 45 4f 50 54 5f 56 41 4c 28 53  " CTIMEOPT_VAL(S
1270: 51 4c 49 54 45 5f 44 45 46 41 55 4c 54 5f 57 41  QLITE_DEFAULT_WA
1280: 4c 5f 53 59 4e 43 48 52 4f 4e 4f 55 53 29 2c 0a  L_SYNCHRONOUS),.
1290: 23 65 6e 64 69 66 0a 23 69 66 64 65 66 20 53 51  #endif.#ifdef SQ
12a0: 4c 49 54 45 5f 44 45 46 41 55 4c 54 5f 57 4f 52  LITE_DEFAULT_WOR
12b0: 4b 45 52 5f 54 48 52 45 41 44 53 0a 20 20 22 44  KER_THREADS.  "D
12c0: 45 46 41 55 4c 54 5f 57 4f 52 4b 45 52 5f 54 48  EFAULT_WORKER_TH
12d0: 52 45 41 44 53 3d 22 20 43 54 49 4d 45 4f 50 54  READS=" CTIMEOPT
12e0: 5f 56 41 4c 28 53 51 4c 49 54 45 5f 44 45 46 41  _VAL(SQLITE_DEFA
12f0: 55 4c 54 5f 57 4f 52 4b 45 52 5f 54 48 52 45 41  ULT_WORKER_THREA
1300: 44 53 29 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20  DS),.#endif.#if 
1310: 53 51 4c 49 54 45 5f 44 49 52 45 43 54 5f 4f 56  SQLITE_DIRECT_OV
1320: 45 52 46 4c 4f 57 5f 52 45 41 44 0a 20 20 22 44  ERFLOW_READ.  "D
1330: 49 52 45 43 54 5f 4f 56 45 52 46 4c 4f 57 5f 52  IRECT_OVERFLOW_R
1340: 45 41 44 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66  EAD",.#endif.#if
1350: 20 53 51 4c 49 54 45 5f 44 49 53 41 42 4c 45 5f   SQLITE_DISABLE_
1360: 44 49 52 53 59 4e 43 0a 20 20 22 44 49 53 41 42  DIRSYNC.  "DISAB
1370: 4c 45 5f 44 49 52 53 59 4e 43 22 2c 0a 23 65 6e  LE_DIRSYNC",.#en
1380: 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 44  dif.#if SQLITE_D
1390: 49 53 41 42 4c 45 5f 46 54 53 33 5f 55 4e 49 43  ISABLE_FTS3_UNIC
13a0: 4f 44 45 0a 20 20 22 44 49 53 41 42 4c 45 5f 46  ODE.  "DISABLE_F
13b0: 54 53 33 5f 55 4e 49 43 4f 44 45 22 2c 0a 23 65  TS3_UNICODE",.#e
13c0: 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f  ndif.#if SQLITE_
13d0: 44 49 53 41 42 4c 45 5f 46 54 53 34 5f 44 45 46  DISABLE_FTS4_DEF
13e0: 45 52 52 45 44 0a 20 20 22 44 49 53 41 42 4c 45  ERRED.  "DISABLE
13f0: 5f 46 54 53 34 5f 44 45 46 45 52 52 45 44 22 2c  _FTS4_DEFERRED",
1400: 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49  .#endif.#if SQLI
1410: 54 45 5f 44 49 53 41 42 4c 45 5f 49 4e 54 52 49  TE_DISABLE_INTRI
1420: 4e 53 49 43 0a 20 20 22 44 49 53 41 42 4c 45 5f  NSIC.  "DISABLE_
1430: 49 4e 54 52 49 4e 53 49 43 22 2c 0a 23 65 6e 64  INTRINSIC",.#end
1440: 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 44 49  if.#if SQLITE_DI
1450: 53 41 42 4c 45 5f 4c 46 53 0a 20 20 22 44 49 53  SABLE_LFS.  "DIS
1460: 41 42 4c 45 5f 4c 46 53 22 2c 0a 23 65 6e 64 69  ABLE_LFS",.#endi
1470: 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 44 49 53  f.#if SQLITE_DIS
1480: 41 42 4c 45 5f 50 41 47 45 43 41 43 48 45 5f 4f  ABLE_PAGECACHE_O
1490: 56 45 52 46 4c 4f 57 5f 53 54 41 54 53 0a 20 20  VERFLOW_STATS.  
14a0: 22 44 49 53 41 42 4c 45 5f 50 41 47 45 43 41 43  "DISABLE_PAGECAC
14b0: 48 45 5f 4f 56 45 52 46 4c 4f 57 5f 53 54 41 54  HE_OVERFLOW_STAT
14c0: 53 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53  S",.#endif.#if S
14d0: 51 4c 49 54 45 5f 44 49 53 41 42 4c 45 5f 53 4b  QLITE_DISABLE_SK
14e0: 49 50 41 48 45 41 44 5f 44 49 53 54 49 4e 43 54  IPAHEAD_DISTINCT
14f0: 0a 20 20 22 44 49 53 41 42 4c 45 5f 53 4b 49 50  .  "DISABLE_SKIP
1500: 41 48 45 41 44 5f 44 49 53 54 49 4e 43 54 22 2c  AHEAD_DISTINCT",
1510: 0a 23 65 6e 64 69 66 0a 23 69 66 64 65 66 20 53  .#endif.#ifdef S
1520: 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 38 5f 33  QLITE_ENABLE_8_3
1530: 5f 4e 41 4d 45 53 0a 20 20 22 45 4e 41 42 4c 45  _NAMES.  "ENABLE
1540: 5f 38 5f 33 5f 4e 41 4d 45 53 3d 22 20 43 54 49  _8_3_NAMES=" CTI
1550: 4d 45 4f 50 54 5f 56 41 4c 28 53 51 4c 49 54 45  MEOPT_VAL(SQLITE
1560: 5f 45 4e 41 42 4c 45 5f 38 5f 33 5f 4e 41 4d 45  _ENABLE_8_3_NAME
1570: 53 29 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53  S),.#endif.#if S
1580: 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 41 50 49  QLITE_ENABLE_API
1590: 5f 41 52 4d 4f 52 0a 20 20 22 45 4e 41 42 4c 45  _ARMOR.  "ENABLE
15a0: 5f 41 50 49 5f 41 52 4d 4f 52 22 2c 0a 23 65 6e  _API_ARMOR",.#en
15b0: 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 45  dif.#if SQLITE_E
15c0: 4e 41 42 4c 45 5f 41 54 4f 4d 49 43 5f 57 52 49  NABLE_ATOMIC_WRI
15d0: 54 45 0a 20 20 22 45 4e 41 42 4c 45 5f 41 54 4f  TE.  "ENABLE_ATO
15e0: 4d 49 43 5f 57 52 49 54 45 22 2c 0a 23 65 6e 64  MIC_WRITE",.#end
15f0: 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 45 4e  if.#if SQLITE_EN
1600: 41 42 4c 45 5f 42 41 54 43 48 5f 41 54 4f 4d 49  ABLE_BATCH_ATOMI
1610: 43 5f 57 52 49 54 45 0a 20 20 22 45 4e 41 42 4c  C_WRITE.  "ENABL
1620: 45 5f 42 41 54 43 48 5f 41 54 4f 4d 49 43 5f 57  E_BATCH_ATOMIC_W
1630: 52 49 54 45 22 2c 0a 23 65 6e 64 69 66 0a 23 69  RITE",.#endif.#i
1640: 66 20 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f  f SQLITE_ENABLE_
1650: 43 45 52 4f 44 0a 20 20 22 45 4e 41 42 4c 45 5f  CEROD.  "ENABLE_
1660: 43 45 52 4f 44 3d 22 20 43 54 49 4d 45 4f 50 54  CEROD=" CTIMEOPT
1670: 5f 56 41 4c 28 53 51 4c 49 54 45 5f 45 4e 41 42  _VAL(SQLITE_ENAB
1680: 4c 45 5f 43 45 52 4f 44 29 2c 0a 23 65 6e 64 69  LE_CEROD),.#endi
1690: 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 45 4e 41  f.#if SQLITE_ENA
16a0: 42 4c 45 5f 43 4f 4c 55 4d 4e 5f 4d 45 54 41 44  BLE_COLUMN_METAD
16b0: 41 54 41 0a 20 20 22 45 4e 41 42 4c 45 5f 43 4f  ATA.  "ENABLE_CO
16c0: 4c 55 4d 4e 5f 4d 45 54 41 44 41 54 41 22 2c 0a  LUMN_METADATA",.
16d0: 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54  #endif.#if SQLIT
16e0: 45 5f 45 4e 41 42 4c 45 5f 43 4f 4c 55 4d 4e 5f  E_ENABLE_COLUMN_
16f0: 55 53 45 44 5f 4d 41 53 4b 0a 20 20 22 45 4e 41  USED_MASK.  "ENA
1700: 42 4c 45 5f 43 4f 4c 55 4d 4e 5f 55 53 45 44 5f  BLE_COLUMN_USED_
1710: 4d 41 53 4b 22 2c 0a 23 65 6e 64 69 66 0a 23 69  MASK",.#endif.#i
1720: 66 20 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f  f SQLITE_ENABLE_
1730: 43 4f 53 54 4d 55 4c 54 0a 20 20 22 45 4e 41 42  COSTMULT.  "ENAB
1740: 4c 45 5f 43 4f 53 54 4d 55 4c 54 22 2c 0a 23 65  LE_COSTMULT",.#e
1750: 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f  ndif.#if SQLITE_
1760: 45 4e 41 42 4c 45 5f 43 55 52 53 4f 52 5f 48 49  ENABLE_CURSOR_HI
1770: 4e 54 53 0a 20 20 22 45 4e 41 42 4c 45 5f 43 55  NTS.  "ENABLE_CU
1780: 52 53 4f 52 5f 48 49 4e 54 53 22 2c 0a 23 65 6e  RSOR_HINTS",.#en
1790: 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 45  dif.#if SQLITE_E
17a0: 4e 41 42 4c 45 5f 44 42 53 54 41 54 5f 56 54 41  NABLE_DBSTAT_VTA
17b0: 42 0a 20 20 22 45 4e 41 42 4c 45 5f 44 42 53 54  B.  "ENABLE_DBST
17c0: 41 54 5f 56 54 41 42 22 2c 0a 23 65 6e 64 69 66  AT_VTAB",.#endif
17d0: 0a 23 69 66 20 53 51 4c 49 54 45 5f 45 4e 41 42  .#if SQLITE_ENAB
17e0: 4c 45 5f 45 58 50 45 4e 53 49 56 45 5f 41 53 53  LE_EXPENSIVE_ASS
17f0: 45 52 54 0a 20 20 22 45 4e 41 42 4c 45 5f 45 58  ERT.  "ENABLE_EX
1800: 50 45 4e 53 49 56 45 5f 41 53 53 45 52 54 22 2c  PENSIVE_ASSERT",
1810: 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49  .#endif.#if SQLI
1820: 54 45 5f 45 4e 41 42 4c 45 5f 46 54 53 31 0a 20  TE_ENABLE_FTS1. 
1830: 20 22 45 4e 41 42 4c 45 5f 46 54 53 31 22 2c 0a   "ENABLE_FTS1",.
1840: 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54  #endif.#if SQLIT
1850: 45 5f 45 4e 41 42 4c 45 5f 46 54 53 32 0a 20 20  E_ENABLE_FTS2.  
1860: 22 45 4e 41 42 4c 45 5f 46 54 53 32 22 2c 0a 23  "ENABLE_FTS2",.#
1870: 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45  endif.#if SQLITE
1880: 5f 45 4e 41 42 4c 45 5f 46 54 53 33 0a 20 20 22  _ENABLE_FTS3.  "
1890: 45 4e 41 42 4c 45 5f 46 54 53 33 22 2c 0a 23 65  ENABLE_FTS3",.#e
18a0: 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f  ndif.#if SQLITE_
18b0: 45 4e 41 42 4c 45 5f 46 54 53 33 5f 50 41 52 45  ENABLE_FTS3_PARE
18c0: 4e 54 48 45 53 49 53 0a 20 20 22 45 4e 41 42 4c  NTHESIS.  "ENABL
18d0: 45 5f 46 54 53 33 5f 50 41 52 45 4e 54 48 45 53  E_FTS3_PARENTHES
18e0: 49 53 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20  IS",.#endif.#if 
18f0: 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 46 54  SQLITE_ENABLE_FT
1900: 53 33 5f 54 4f 4b 45 4e 49 5a 45 52 0a 20 20 22  S3_TOKENIZER.  "
1910: 45 4e 41 42 4c 45 5f 46 54 53 33 5f 54 4f 4b 45  ENABLE_FTS3_TOKE
1920: 4e 49 5a 45 52 22 2c 0a 23 65 6e 64 69 66 0a 23  NIZER",.#endif.#
1930: 69 66 20 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45  if SQLITE_ENABLE
1940: 5f 46 54 53 34 0a 20 20 22 45 4e 41 42 4c 45 5f  _FTS4.  "ENABLE_
1950: 46 54 53 34 22 2c 0a 23 65 6e 64 69 66 0a 23 69  FTS4",.#endif.#i
1960: 66 20 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f  f SQLITE_ENABLE_
1970: 46 54 53 35 0a 20 20 22 45 4e 41 42 4c 45 5f 46  FTS5.  "ENABLE_F
1980: 54 53 35 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66  TS5",.#endif.#if
1990: 20 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 47   SQLITE_ENABLE_G
19a0: 45 4f 50 4f 4c 59 0a 20 20 22 45 4e 41 42 4c 45  EOPOLY.  "ENABLE
19b0: 5f 47 45 4f 50 4f 4c 59 22 2c 0a 23 65 6e 64 69  _GEOPOLY",.#endi
19c0: 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 45 4e 41  f.#if SQLITE_ENA
19d0: 42 4c 45 5f 48 49 44 44 45 4e 5f 43 4f 4c 55 4d  BLE_HIDDEN_COLUM
19e0: 4e 53 0a 20 20 22 45 4e 41 42 4c 45 5f 48 49 44  NS.  "ENABLE_HID
19f0: 44 45 4e 5f 43 4f 4c 55 4d 4e 53 22 2c 0a 23 65  DEN_COLUMNS",.#e
1a00: 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f  ndif.#if SQLITE_
1a10: 45 4e 41 42 4c 45 5f 49 43 55 0a 20 20 22 45 4e  ENABLE_ICU.  "EN
1a20: 41 42 4c 45 5f 49 43 55 22 2c 0a 23 65 6e 64 69  ABLE_ICU",.#endi
1a30: 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 45 4e 41  f.#if SQLITE_ENA
1a40: 42 4c 45 5f 49 4f 54 52 41 43 45 0a 20 20 22 45  BLE_IOTRACE.  "E
1a50: 4e 41 42 4c 45 5f 49 4f 54 52 41 43 45 22 2c 0a  NABLE_IOTRACE",.
1a60: 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54  #endif.#if SQLIT
1a70: 45 5f 45 4e 41 42 4c 45 5f 4a 53 4f 4e 31 0a 20  E_ENABLE_JSON1. 
1a80: 20 22 45 4e 41 42 4c 45 5f 4a 53 4f 4e 31 22 2c   "ENABLE_JSON1",
1a90: 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49  .#endif.#if SQLI
1aa0: 54 45 5f 45 4e 41 42 4c 45 5f 4c 4f 41 44 5f 45  TE_ENABLE_LOAD_E
1ab0: 58 54 45 4e 53 49 4f 4e 0a 20 20 22 45 4e 41 42  XTENSION.  "ENAB
1ac0: 4c 45 5f 4c 4f 41 44 5f 45 58 54 45 4e 53 49 4f  LE_LOAD_EXTENSIO
1ad0: 4e 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 64 65  N",.#endif.#ifde
1ae0: 66 20 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f  f SQLITE_ENABLE_
1af0: 4c 4f 43 4b 49 4e 47 5f 53 54 59 4c 45 0a 20 20  LOCKING_STYLE.  
1b00: 22 45 4e 41 42 4c 45 5f 4c 4f 43 4b 49 4e 47 5f  "ENABLE_LOCKING_
1b10: 53 54 59 4c 45 3d 22 20 43 54 49 4d 45 4f 50 54  STYLE=" CTIMEOPT
1b20: 5f 56 41 4c 28 53 51 4c 49 54 45 5f 45 4e 41 42  _VAL(SQLITE_ENAB
1b30: 4c 45 5f 4c 4f 43 4b 49 4e 47 5f 53 54 59 4c 45  LE_LOCKING_STYLE
1b40: 29 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51  ),.#endif.#if SQ
1b50: 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 4d 45 4d 4f  LITE_ENABLE_MEMO
1b60: 52 59 5f 4d 41 4e 41 47 45 4d 45 4e 54 0a 20 20  RY_MANAGEMENT.  
1b70: 22 45 4e 41 42 4c 45 5f 4d 45 4d 4f 52 59 5f 4d  "ENABLE_MEMORY_M
1b80: 41 4e 41 47 45 4d 45 4e 54 22 2c 0a 23 65 6e 64  ANAGEMENT",.#end
1b90: 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 45 4e  if.#if SQLITE_EN
1ba0: 41 42 4c 45 5f 4d 45 4d 53 59 53 33 0a 20 20 22  ABLE_MEMSYS3.  "
1bb0: 45 4e 41 42 4c 45 5f 4d 45 4d 53 59 53 33 22 2c  ENABLE_MEMSYS3",
1bc0: 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49  .#endif.#if SQLI
1bd0: 54 45 5f 45 4e 41 42 4c 45 5f 4d 45 4d 53 59 53  TE_ENABLE_MEMSYS
1be0: 35 0a 20 20 22 45 4e 41 42 4c 45 5f 4d 45 4d 53  5.  "ENABLE_MEMS
1bf0: 59 53 35 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66  YS5",.#endif.#if
1c00: 20 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 4d   SQLITE_ENABLE_M
1c10: 55 4c 54 49 50 4c 45 58 0a 20 20 22 45 4e 41 42  ULTIPLEX.  "ENAB
1c20: 4c 45 5f 4d 55 4c 54 49 50 4c 45 58 22 2c 0a 23  LE_MULTIPLEX",.#
1c30: 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45  endif.#if SQLITE
1c40: 5f 45 4e 41 42 4c 45 5f 4e 4f 52 4d 41 4c 49 5a  _ENABLE_NORMALIZ
1c50: 45 0a 20 20 22 45 4e 41 42 4c 45 5f 4e 4f 52 4d  E.  "ENABLE_NORM
1c60: 41 4c 49 5a 45 22 2c 0a 23 65 6e 64 69 66 0a 23  ALIZE",.#endif.#
1c70: 69 66 20 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45  if SQLITE_ENABLE
1c80: 5f 4e 55 4c 4c 5f 54 52 49 4d 0a 20 20 22 45 4e  _NULL_TRIM.  "EN
1c90: 41 42 4c 45 5f 4e 55 4c 4c 5f 54 52 49 4d 22 2c  ABLE_NULL_TRIM",
1ca0: 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49  .#endif.#if SQLI
1cb0: 54 45 5f 45 4e 41 42 4c 45 5f 4f 56 45 52 53 49  TE_ENABLE_OVERSI
1cc0: 5a 45 5f 43 45 4c 4c 5f 43 48 45 43 4b 0a 20 20  ZE_CELL_CHECK.  
1cd0: 22 45 4e 41 42 4c 45 5f 4f 56 45 52 53 49 5a 45  "ENABLE_OVERSIZE
1ce0: 5f 43 45 4c 4c 5f 43 48 45 43 4b 22 2c 0a 23 65  _CELL_CHECK",.#e
1cf0: 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f  ndif.#if SQLITE_
1d00: 45 4e 41 42 4c 45 5f 50 52 45 55 50 44 41 54 45  ENABLE_PREUPDATE
1d10: 5f 48 4f 4f 4b 0a 20 20 22 45 4e 41 42 4c 45 5f  _HOOK.  "ENABLE_
1d20: 50 52 45 55 50 44 41 54 45 5f 48 4f 4f 4b 22 2c  PREUPDATE_HOOK",
1d30: 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49  .#endif.#if SQLI
1d40: 54 45 5f 45 4e 41 42 4c 45 5f 51 50 53 47 0a 20  TE_ENABLE_QPSG. 
1d50: 20 22 45 4e 41 42 4c 45 5f 51 50 53 47 22 2c 0a   "ENABLE_QPSG",.
1d60: 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54  #endif.#if SQLIT
1d70: 45 5f 45 4e 41 42 4c 45 5f 52 42 55 0a 20 20 22  E_ENABLE_RBU.  "
1d80: 45 4e 41 42 4c 45 5f 52 42 55 22 2c 0a 23 65 6e  ENABLE_RBU",.#en
1d90: 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 45  dif.#if SQLITE_E
1da0: 4e 41 42 4c 45 5f 52 54 52 45 45 0a 20 20 22 45  NABLE_RTREE.  "E
1db0: 4e 41 42 4c 45 5f 52 54 52 45 45 22 2c 0a 23 65  NABLE_RTREE",.#e
1dc0: 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f  ndif.#if SQLITE_
1dd0: 45 4e 41 42 4c 45 5f 53 45 4c 45 43 54 54 52 41  ENABLE_SELECTTRA
1de0: 43 45 0a 20 20 22 45 4e 41 42 4c 45 5f 53 45 4c  CE.  "ENABLE_SEL
1df0: 45 43 54 54 52 41 43 45 22 2c 0a 23 65 6e 64 69  ECTTRACE",.#endi
1e00: 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 45 4e 41  f.#if SQLITE_ENA
1e10: 42 4c 45 5f 53 45 53 53 49 4f 4e 0a 20 20 22 45  BLE_SESSION.  "E
1e20: 4e 41 42 4c 45 5f 53 45 53 53 49 4f 4e 22 2c 0a  NABLE_SESSION",.
1e30: 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54  #endif.#if SQLIT
1e40: 45 5f 45 4e 41 42 4c 45 5f 53 4e 41 50 53 48 4f  E_ENABLE_SNAPSHO
1e50: 54 0a 20 20 22 45 4e 41 42 4c 45 5f 53 4e 41 50  T.  "ENABLE_SNAP
1e60: 53 48 4f 54 22 2c 0a 23 65 6e 64 69 66 0a 23 69  SHOT",.#endif.#i
1e70: 66 20 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f  f SQLITE_ENABLE_
1e80: 53 4f 52 54 45 52 5f 52 45 46 45 52 45 4e 43 45  SORTER_REFERENCE
1e90: 53 0a 20 20 22 45 4e 41 42 4c 45 5f 53 4f 52 54  S.  "ENABLE_SORT
1ea0: 45 52 5f 52 45 46 45 52 45 4e 43 45 53 22 2c 0a  ER_REFERENCES",.
1eb0: 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54  #endif.#if SQLIT
1ec0: 45 5f 45 4e 41 42 4c 45 5f 53 51 4c 4c 4f 47 0a  E_ENABLE_SQLLOG.
1ed0: 20 20 22 45 4e 41 42 4c 45 5f 53 51 4c 4c 4f 47    "ENABLE_SQLLOG
1ee0: 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 64 65  ",.#endif.#if de
1ef0: 66 69 6e 65 64 28 53 51 4c 49 54 45 5f 45 4e 41  fined(SQLITE_ENA
1f00: 42 4c 45 5f 53 54 41 54 34 29 0a 20 20 22 45 4e  BLE_STAT4).  "EN
1f10: 41 42 4c 45 5f 53 54 41 54 34 22 2c 0a 23 65 6c  ABLE_STAT4",.#el
1f20: 69 66 20 64 65 66 69 6e 65 64 28 53 51 4c 49 54  if defined(SQLIT
1f30: 45 5f 45 4e 41 42 4c 45 5f 53 54 41 54 33 29 0a  E_ENABLE_STAT3).
1f40: 20 20 22 45 4e 41 42 4c 45 5f 53 54 41 54 33 22    "ENABLE_STAT3"
1f50: 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c  ,.#endif.#if SQL
1f60: 49 54 45 5f 45 4e 41 42 4c 45 5f 53 54 4d 54 56  ITE_ENABLE_STMTV
1f70: 54 41 42 0a 20 20 22 45 4e 41 42 4c 45 5f 53 54  TAB.  "ENABLE_ST
1f80: 4d 54 56 54 41 42 22 2c 0a 23 65 6e 64 69 66 0a  MTVTAB",.#endif.
1f90: 23 69 66 20 53 51 4c 49 54 45 5f 45 4e 41 42 4c  #if SQLITE_ENABL
1fa0: 45 5f 53 54 4d 54 5f 53 43 41 4e 53 54 41 54 55  E_STMT_SCANSTATU
1fb0: 53 0a 20 20 22 45 4e 41 42 4c 45 5f 53 54 4d 54  S.  "ENABLE_STMT
1fc0: 5f 53 43 41 4e 53 54 41 54 55 53 22 2c 0a 23 65  _SCANSTATUS",.#e
1fd0: 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f  ndif.#if SQLITE_
1fe0: 45 4e 41 42 4c 45 5f 55 4e 4b 4e 4f 57 4e 5f 53  ENABLE_UNKNOWN_S
1ff0: 51 4c 5f 46 55 4e 43 54 49 4f 4e 0a 20 20 22 45  QL_FUNCTION.  "E
2000: 4e 41 42 4c 45 5f 55 4e 4b 4e 4f 57 4e 5f 53 51  NABLE_UNKNOWN_SQ
2010: 4c 5f 46 55 4e 43 54 49 4f 4e 22 2c 0a 23 65 6e  L_FUNCTION",.#en
2020: 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 45  dif.#if SQLITE_E
2030: 4e 41 42 4c 45 5f 55 4e 4c 4f 43 4b 5f 4e 4f 54  NABLE_UNLOCK_NOT
2040: 49 46 59 0a 20 20 22 45 4e 41 42 4c 45 5f 55 4e  IFY.  "ENABLE_UN
2050: 4c 4f 43 4b 5f 4e 4f 54 49 46 59 22 2c 0a 23 65  LOCK_NOTIFY",.#e
2060: 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f  ndif.#if SQLITE_
2070: 45 4e 41 42 4c 45 5f 55 50 44 41 54 45 5f 44 45  ENABLE_UPDATE_DE
2080: 4c 45 54 45 5f 4c 49 4d 49 54 0a 20 20 22 45 4e  LETE_LIMIT.  "EN
2090: 41 42 4c 45 5f 55 50 44 41 54 45 5f 44 45 4c 45  ABLE_UPDATE_DELE
20a0: 54 45 5f 4c 49 4d 49 54 22 2c 0a 23 65 6e 64 69  TE_LIMIT",.#endi
20b0: 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 45 4e 41  f.#if SQLITE_ENA
20c0: 42 4c 45 5f 55 52 49 5f 30 30 5f 45 52 52 4f 52  BLE_URI_00_ERROR
20d0: 0a 20 20 22 45 4e 41 42 4c 45 5f 55 52 49 5f 30  .  "ENABLE_URI_0
20e0: 30 5f 45 52 52 4f 52 22 2c 0a 23 65 6e 64 69 66  0_ERROR",.#endif
20f0: 0a 23 69 66 20 53 51 4c 49 54 45 5f 45 4e 41 42  .#if SQLITE_ENAB
2100: 4c 45 5f 56 46 53 54 52 41 43 45 0a 20 20 22 45  LE_VFSTRACE.  "E
2110: 4e 41 42 4c 45 5f 56 46 53 54 52 41 43 45 22 2c  NABLE_VFSTRACE",
2120: 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49  .#endif.#if SQLI
2130: 54 45 5f 45 4e 41 42 4c 45 5f 57 48 45 52 45 54  TE_ENABLE_WHERET
2140: 52 41 43 45 0a 20 20 22 45 4e 41 42 4c 45 5f 57  RACE.  "ENABLE_W
2150: 48 45 52 45 54 52 41 43 45 22 2c 0a 23 65 6e 64  HERETRACE",.#end
2160: 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 45 4e  if.#if SQLITE_EN
2170: 41 42 4c 45 5f 5a 49 50 56 46 53 0a 20 20 22 45  ABLE_ZIPVFS.  "E
2180: 4e 41 42 4c 45 5f 5a 49 50 56 46 53 22 2c 0a 23  NABLE_ZIPVFS",.#
2190: 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45  endif.#if SQLITE
21a0: 5f 45 58 50 4c 41 49 4e 5f 45 53 54 49 4d 41 54  _EXPLAIN_ESTIMAT
21b0: 45 44 5f 52 4f 57 53 0a 20 20 22 45 58 50 4c 41  ED_ROWS.  "EXPLA
21c0: 49 4e 5f 45 53 54 49 4d 41 54 45 44 5f 52 4f 57  IN_ESTIMATED_ROW
21d0: 53 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53  S",.#endif.#if S
21e0: 51 4c 49 54 45 5f 45 58 54 52 41 5f 49 46 4e 55  QLITE_EXTRA_IFNU
21f0: 4c 4c 52 4f 57 0a 20 20 22 45 58 54 52 41 5f 49  LLROW.  "EXTRA_I
2200: 46 4e 55 4c 4c 52 4f 57 22 2c 0a 23 65 6e 64 69  FNULLROW",.#endi
2210: 66 0a 23 69 66 64 65 66 20 53 51 4c 49 54 45 5f  f.#ifdef SQLITE_
2220: 45 58 54 52 41 5f 49 4e 49 54 0a 20 20 22 45 58  EXTRA_INIT.  "EX
2230: 54 52 41 5f 49 4e 49 54 3d 22 20 43 54 49 4d 45  TRA_INIT=" CTIME
2240: 4f 50 54 5f 56 41 4c 28 53 51 4c 49 54 45 5f 45  OPT_VAL(SQLITE_E
2250: 58 54 52 41 5f 49 4e 49 54 29 2c 0a 23 65 6e 64  XTRA_INIT),.#end
2260: 69 66 0a 23 69 66 64 65 66 20 53 51 4c 49 54 45  if.#ifdef SQLITE
2270: 5f 45 58 54 52 41 5f 53 48 55 54 44 4f 57 4e 0a  _EXTRA_SHUTDOWN.
2280: 20 20 22 45 58 54 52 41 5f 53 48 55 54 44 4f 57    "EXTRA_SHUTDOW
2290: 4e 3d 22 20 43 54 49 4d 45 4f 50 54 5f 56 41 4c  N=" CTIMEOPT_VAL
22a0: 28 53 51 4c 49 54 45 5f 45 58 54 52 41 5f 53 48  (SQLITE_EXTRA_SH
22b0: 55 54 44 4f 57 4e 29 2c 0a 23 65 6e 64 69 66 0a  UTDOWN),.#endif.
22c0: 23 69 66 64 65 66 20 53 51 4c 49 54 45 5f 46 54  #ifdef SQLITE_FT
22d0: 53 33 5f 4d 41 58 5f 45 58 50 52 5f 44 45 50 54  S3_MAX_EXPR_DEPT
22e0: 48 0a 20 20 22 46 54 53 33 5f 4d 41 58 5f 45 58  H.  "FTS3_MAX_EX
22f0: 50 52 5f 44 45 50 54 48 3d 22 20 43 54 49 4d 45  PR_DEPTH=" CTIME
2300: 4f 50 54 5f 56 41 4c 28 53 51 4c 49 54 45 5f 46  OPT_VAL(SQLITE_F
2310: 54 53 33 5f 4d 41 58 5f 45 58 50 52 5f 44 45 50  TS3_MAX_EXPR_DEP
2320: 54 48 29 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20  TH),.#endif.#if 
2330: 53 51 4c 49 54 45 5f 46 54 53 35 5f 45 4e 41 42  SQLITE_FTS5_ENAB
2340: 4c 45 5f 54 45 53 54 5f 4d 49 0a 20 20 22 46 54  LE_TEST_MI.  "FT
2350: 53 35 5f 45 4e 41 42 4c 45 5f 54 45 53 54 5f 4d  S5_ENABLE_TEST_M
2360: 49 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53  I",.#endif.#if S
2370: 51 4c 49 54 45 5f 46 54 53 35 5f 4e 4f 5f 57 49  QLITE_FTS5_NO_WI
2380: 54 48 4f 55 54 5f 52 4f 57 49 44 0a 20 20 22 46  THOUT_ROWID.  "F
2390: 54 53 35 5f 4e 4f 5f 57 49 54 48 4f 55 54 5f 52  TS5_NO_WITHOUT_R
23a0: 4f 57 49 44 22 2c 0a 23 65 6e 64 69 66 0a 23 69  OWID",.#endif.#i
23b0: 66 20 53 51 4c 49 54 45 5f 48 41 53 5f 43 4f 44  f SQLITE_HAS_COD
23c0: 45 43 0a 20 20 22 48 41 53 5f 43 4f 44 45 43 22  EC.  "HAS_CODEC"
23d0: 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 48 41 56  ,.#endif.#if HAV
23e0: 45 5f 49 53 4e 41 4e 20 7c 7c 20 53 51 4c 49 54  E_ISNAN || SQLIT
23f0: 45 5f 48 41 56 45 5f 49 53 4e 41 4e 0a 20 20 22  E_HAVE_ISNAN.  "
2400: 48 41 56 45 5f 49 53 4e 41 4e 22 2c 0a 23 65 6e  HAVE_ISNAN",.#en
2410: 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 48  dif.#if SQLITE_H
2420: 4f 4d 45 47 52 4f 57 4e 5f 52 45 43 55 52 53 49  OMEGROWN_RECURSI
2430: 56 45 5f 4d 55 54 45 58 0a 20 20 22 48 4f 4d 45  VE_MUTEX.  "HOME
2440: 47 52 4f 57 4e 5f 52 45 43 55 52 53 49 56 45 5f  GROWN_RECURSIVE_
2450: 4d 55 54 45 58 22 2c 0a 23 65 6e 64 69 66 0a 23  MUTEX",.#endif.#
2460: 69 66 20 53 51 4c 49 54 45 5f 49 47 4e 4f 52 45  if SQLITE_IGNORE
2470: 5f 41 46 50 5f 4c 4f 43 4b 5f 45 52 52 4f 52 53  _AFP_LOCK_ERRORS
2480: 0a 20 20 22 49 47 4e 4f 52 45 5f 41 46 50 5f 4c  .  "IGNORE_AFP_L
2490: 4f 43 4b 5f 45 52 52 4f 52 53 22 2c 0a 23 65 6e  OCK_ERRORS",.#en
24a0: 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 49  dif.#if SQLITE_I
24b0: 47 4e 4f 52 45 5f 46 4c 4f 43 4b 5f 4c 4f 43 4b  GNORE_FLOCK_LOCK
24c0: 5f 45 52 52 4f 52 53 0a 20 20 22 49 47 4e 4f 52  _ERRORS.  "IGNOR
24d0: 45 5f 46 4c 4f 43 4b 5f 4c 4f 43 4b 5f 45 52 52  E_FLOCK_LOCK_ERR
24e0: 4f 52 53 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66  ORS",.#endif.#if
24f0: 20 53 51 4c 49 54 45 5f 49 4e 4c 49 4e 45 5f 4d   SQLITE_INLINE_M
2500: 45 4d 43 50 59 0a 20 20 22 49 4e 4c 49 4e 45 5f  EMCPY.  "INLINE_
2510: 4d 45 4d 43 50 59 22 2c 0a 23 65 6e 64 69 66 0a  MEMCPY",.#endif.
2520: 23 69 66 20 53 51 4c 49 54 45 5f 49 4e 54 36 34  #if SQLITE_INT64
2530: 5f 54 59 50 45 0a 20 20 22 49 4e 54 36 34 5f 54  _TYPE.  "INT64_T
2540: 59 50 45 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66  YPE",.#endif.#if
2550: 64 65 66 20 53 51 4c 49 54 45 5f 49 4e 54 45 47  def SQLITE_INTEG
2560: 52 49 54 59 5f 43 48 45 43 4b 5f 45 52 52 4f 52  RITY_CHECK_ERROR
2570: 5f 4d 41 58 0a 20 20 22 49 4e 54 45 47 52 49 54  _MAX.  "INTEGRIT
2580: 59 5f 43 48 45 43 4b 5f 45 52 52 4f 52 5f 4d 41  Y_CHECK_ERROR_MA
2590: 58 3d 22 20 43 54 49 4d 45 4f 50 54 5f 56 41 4c  X=" CTIMEOPT_VAL
25a0: 28 53 51 4c 49 54 45 5f 49 4e 54 45 47 52 49 54  (SQLITE_INTEGRIT
25b0: 59 5f 43 48 45 43 4b 5f 45 52 52 4f 52 5f 4d 41  Y_CHECK_ERROR_MA
25c0: 58 29 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53  X),.#endif.#if S
25d0: 51 4c 49 54 45 5f 4c 49 4b 45 5f 44 4f 45 53 4e  QLITE_LIKE_DOESN
25e0: 54 5f 4d 41 54 43 48 5f 42 4c 4f 42 53 0a 20 20  T_MATCH_BLOBS.  
25f0: 22 4c 49 4b 45 5f 44 4f 45 53 4e 54 5f 4d 41 54  "LIKE_DOESNT_MAT
2600: 43 48 5f 42 4c 4f 42 53 22 2c 0a 23 65 6e 64 69  CH_BLOBS",.#endi
2610: 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 4c 4f 43  f.#if SQLITE_LOC
2620: 4b 5f 54 52 41 43 45 0a 20 20 22 4c 4f 43 4b 5f  K_TRACE.  "LOCK_
2630: 54 52 41 43 45 22 2c 0a 23 65 6e 64 69 66 0a 23  TRACE",.#endif.#
2640: 69 66 20 53 51 4c 49 54 45 5f 4c 4f 47 5f 43 41  if SQLITE_LOG_CA
2650: 43 48 45 5f 53 50 49 4c 4c 0a 20 20 22 4c 4f 47  CHE_SPILL.  "LOG
2660: 5f 43 41 43 48 45 5f 53 50 49 4c 4c 22 2c 0a 23  _CACHE_SPILL",.#
2670: 65 6e 64 69 66 0a 23 69 66 64 65 66 20 53 51 4c  endif.#ifdef SQL
2680: 49 54 45 5f 4d 41 4c 4c 4f 43 5f 53 4f 46 54 5f  ITE_MALLOC_SOFT_
2690: 4c 49 4d 49 54 0a 20 20 22 4d 41 4c 4c 4f 43 5f  LIMIT.  "MALLOC_
26a0: 53 4f 46 54 5f 4c 49 4d 49 54 3d 22 20 43 54 49  SOFT_LIMIT=" CTI
26b0: 4d 45 4f 50 54 5f 56 41 4c 28 53 51 4c 49 54 45  MEOPT_VAL(SQLITE
26c0: 5f 4d 41 4c 4c 4f 43 5f 53 4f 46 54 5f 4c 49 4d  _MALLOC_SOFT_LIM
26d0: 49 54 29 2c 0a 23 65 6e 64 69 66 0a 23 69 66 64  IT),.#endif.#ifd
26e0: 65 66 20 53 51 4c 49 54 45 5f 4d 41 58 5f 41 54  ef SQLITE_MAX_AT
26f0: 54 41 43 48 45 44 0a 20 20 22 4d 41 58 5f 41 54  TACHED.  "MAX_AT
2700: 54 41 43 48 45 44 3d 22 20 43 54 49 4d 45 4f 50  TACHED=" CTIMEOP
2710: 54 5f 56 41 4c 28 53 51 4c 49 54 45 5f 4d 41 58  T_VAL(SQLITE_MAX
2720: 5f 41 54 54 41 43 48 45 44 29 2c 0a 23 65 6e 64  _ATTACHED),.#end
2730: 69 66 0a 23 69 66 64 65 66 20 53 51 4c 49 54 45  if.#ifdef SQLITE
2740: 5f 4d 41 58 5f 43 4f 4c 55 4d 4e 0a 20 20 22 4d  _MAX_COLUMN.  "M
2750: 41 58 5f 43 4f 4c 55 4d 4e 3d 22 20 43 54 49 4d  AX_COLUMN=" CTIM
2760: 45 4f 50 54 5f 56 41 4c 28 53 51 4c 49 54 45 5f  EOPT_VAL(SQLITE_
2770: 4d 41 58 5f 43 4f 4c 55 4d 4e 29 2c 0a 23 65 6e  MAX_COLUMN),.#en
2780: 64 69 66 0a 23 69 66 64 65 66 20 53 51 4c 49 54  dif.#ifdef SQLIT
2790: 45 5f 4d 41 58 5f 43 4f 4d 50 4f 55 4e 44 5f 53  E_MAX_COMPOUND_S
27a0: 45 4c 45 43 54 0a 20 20 22 4d 41 58 5f 43 4f 4d  ELECT.  "MAX_COM
27b0: 50 4f 55 4e 44 5f 53 45 4c 45 43 54 3d 22 20 43  POUND_SELECT=" C
27c0: 54 49 4d 45 4f 50 54 5f 56 41 4c 28 53 51 4c 49  TIMEOPT_VAL(SQLI
27d0: 54 45 5f 4d 41 58 5f 43 4f 4d 50 4f 55 4e 44 5f  TE_MAX_COMPOUND_
27e0: 53 45 4c 45 43 54 29 2c 0a 23 65 6e 64 69 66 0a  SELECT),.#endif.
27f0: 23 69 66 64 65 66 20 53 51 4c 49 54 45 5f 4d 41  #ifdef SQLITE_MA
2800: 58 5f 44 45 46 41 55 4c 54 5f 50 41 47 45 5f 53  X_DEFAULT_PAGE_S
2810: 49 5a 45 0a 20 20 22 4d 41 58 5f 44 45 46 41 55  IZE.  "MAX_DEFAU
2820: 4c 54 5f 50 41 47 45 5f 53 49 5a 45 3d 22 20 43  LT_PAGE_SIZE=" C
2830: 54 49 4d 45 4f 50 54 5f 56 41 4c 28 53 51 4c 49  TIMEOPT_VAL(SQLI
2840: 54 45 5f 4d 41 58 5f 44 45 46 41 55 4c 54 5f 50  TE_MAX_DEFAULT_P
2850: 41 47 45 5f 53 49 5a 45 29 2c 0a 23 65 6e 64 69  AGE_SIZE),.#endi
2860: 66 0a 23 69 66 64 65 66 20 53 51 4c 49 54 45 5f  f.#ifdef SQLITE_
2870: 4d 41 58 5f 45 58 50 52 5f 44 45 50 54 48 0a 20  MAX_EXPR_DEPTH. 
2880: 20 22 4d 41 58 5f 45 58 50 52 5f 44 45 50 54 48   "MAX_EXPR_DEPTH
2890: 3d 22 20 43 54 49 4d 45 4f 50 54 5f 56 41 4c 28  =" CTIMEOPT_VAL(
28a0: 53 51 4c 49 54 45 5f 4d 41 58 5f 45 58 50 52 5f  SQLITE_MAX_EXPR_
28b0: 44 45 50 54 48 29 2c 0a 23 65 6e 64 69 66 0a 23  DEPTH),.#endif.#
28c0: 69 66 64 65 66 20 53 51 4c 49 54 45 5f 4d 41 58  ifdef SQLITE_MAX
28d0: 5f 46 55 4e 43 54 49 4f 4e 5f 41 52 47 0a 20 20  _FUNCTION_ARG.  
28e0: 22 4d 41 58 5f 46 55 4e 43 54 49 4f 4e 5f 41 52  "MAX_FUNCTION_AR
28f0: 47 3d 22 20 43 54 49 4d 45 4f 50 54 5f 56 41 4c  G=" CTIMEOPT_VAL
2900: 28 53 51 4c 49 54 45 5f 4d 41 58 5f 46 55 4e 43  (SQLITE_MAX_FUNC
2910: 54 49 4f 4e 5f 41 52 47 29 2c 0a 23 65 6e 64 69  TION_ARG),.#endi
2920: 66 0a 23 69 66 64 65 66 20 53 51 4c 49 54 45 5f  f.#ifdef SQLITE_
2930: 4d 41 58 5f 4c 45 4e 47 54 48 0a 20 20 22 4d 41  MAX_LENGTH.  "MA
2940: 58 5f 4c 45 4e 47 54 48 3d 22 20 43 54 49 4d 45  X_LENGTH=" CTIME
2950: 4f 50 54 5f 56 41 4c 28 53 51 4c 49 54 45 5f 4d  OPT_VAL(SQLITE_M
2960: 41 58 5f 4c 45 4e 47 54 48 29 2c 0a 23 65 6e 64  AX_LENGTH),.#end
2970: 69 66 0a 23 69 66 64 65 66 20 53 51 4c 49 54 45  if.#ifdef SQLITE
2980: 5f 4d 41 58 5f 4c 49 4b 45 5f 50 41 54 54 45 52  _MAX_LIKE_PATTER
2990: 4e 5f 4c 45 4e 47 54 48 0a 20 20 22 4d 41 58 5f  N_LENGTH.  "MAX_
29a0: 4c 49 4b 45 5f 50 41 54 54 45 52 4e 5f 4c 45 4e  LIKE_PATTERN_LEN
29b0: 47 54 48 3d 22 20 43 54 49 4d 45 4f 50 54 5f 56  GTH=" CTIMEOPT_V
29c0: 41 4c 28 53 51 4c 49 54 45 5f 4d 41 58 5f 4c 49  AL(SQLITE_MAX_LI
29d0: 4b 45 5f 50 41 54 54 45 52 4e 5f 4c 45 4e 47 54  KE_PATTERN_LENGT
29e0: 48 29 2c 0a 23 65 6e 64 69 66 0a 23 69 66 64 65  H),.#endif.#ifde
29f0: 66 20 53 51 4c 49 54 45 5f 4d 41 58 5f 4d 45 4d  f SQLITE_MAX_MEM
2a00: 4f 52 59 0a 20 20 22 4d 41 58 5f 4d 45 4d 4f 52  ORY.  "MAX_MEMOR
2a10: 59 3d 22 20 43 54 49 4d 45 4f 50 54 5f 56 41 4c  Y=" CTIMEOPT_VAL
2a20: 28 53 51 4c 49 54 45 5f 4d 41 58 5f 4d 45 4d 4f  (SQLITE_MAX_MEMO
2a30: 52 59 29 2c 0a 23 65 6e 64 69 66 0a 23 69 66 64  RY),.#endif.#ifd
2a40: 65 66 20 53 51 4c 49 54 45 5f 4d 41 58 5f 4d 4d  ef SQLITE_MAX_MM
2a50: 41 50 5f 53 49 5a 45 0a 20 20 22 4d 41 58 5f 4d  AP_SIZE.  "MAX_M
2a60: 4d 41 50 5f 53 49 5a 45 3d 22 20 43 54 49 4d 45  MAP_SIZE=" CTIME
2a70: 4f 50 54 5f 56 41 4c 28 53 51 4c 49 54 45 5f 4d  OPT_VAL(SQLITE_M
2a80: 41 58 5f 4d 4d 41 50 5f 53 49 5a 45 29 2c 0a 23  AX_MMAP_SIZE),.#
2a90: 65 6e 64 69 66 0a 23 69 66 64 65 66 20 53 51 4c  endif.#ifdef SQL
2aa0: 49 54 45 5f 4d 41 58 5f 4d 4d 41 50 5f 53 49 5a  ITE_MAX_MMAP_SIZ
2ab0: 45 5f 0a 20 20 22 4d 41 58 5f 4d 4d 41 50 5f 53  E_.  "MAX_MMAP_S
2ac0: 49 5a 45 5f 3d 22 20 43 54 49 4d 45 4f 50 54 5f  IZE_=" CTIMEOPT_
2ad0: 56 41 4c 28 53 51 4c 49 54 45 5f 4d 41 58 5f 4d  VAL(SQLITE_MAX_M
2ae0: 4d 41 50 5f 53 49 5a 45 5f 29 2c 0a 23 65 6e 64  MAP_SIZE_),.#end
2af0: 69 66 0a 23 69 66 64 65 66 20 53 51 4c 49 54 45  if.#ifdef SQLITE
2b00: 5f 4d 41 58 5f 50 41 47 45 5f 43 4f 55 4e 54 0a  _MAX_PAGE_COUNT.
2b10: 20 20 22 4d 41 58 5f 50 41 47 45 5f 43 4f 55 4e    "MAX_PAGE_COUN
2b20: 54 3d 22 20 43 54 49 4d 45 4f 50 54 5f 56 41 4c  T=" CTIMEOPT_VAL
2b30: 28 53 51 4c 49 54 45 5f 4d 41 58 5f 50 41 47 45  (SQLITE_MAX_PAGE
2b40: 5f 43 4f 55 4e 54 29 2c 0a 23 65 6e 64 69 66 0a  _COUNT),.#endif.
2b50: 23 69 66 64 65 66 20 53 51 4c 49 54 45 5f 4d 41  #ifdef SQLITE_MA
2b60: 58 5f 50 41 47 45 5f 53 49 5a 45 0a 20 20 22 4d  X_PAGE_SIZE.  "M
2b70: 41 58 5f 50 41 47 45 5f 53 49 5a 45 3d 22 20 43  AX_PAGE_SIZE=" C
2b80: 54 49 4d 45 4f 50 54 5f 56 41 4c 28 53 51 4c 49  TIMEOPT_VAL(SQLI
2b90: 54 45 5f 4d 41 58 5f 50 41 47 45 5f 53 49 5a 45  TE_MAX_PAGE_SIZE
2ba0: 29 2c 0a 23 65 6e 64 69 66 0a 23 69 66 64 65 66  ),.#endif.#ifdef
2bb0: 20 53 51 4c 49 54 45 5f 4d 41 58 5f 53 43 48 45   SQLITE_MAX_SCHE
2bc0: 4d 41 5f 52 45 54 52 59 0a 20 20 22 4d 41 58 5f  MA_RETRY.  "MAX_
2bd0: 53 43 48 45 4d 41 5f 52 45 54 52 59 3d 22 20 43  SCHEMA_RETRY=" C
2be0: 54 49 4d 45 4f 50 54 5f 56 41 4c 28 53 51 4c 49  TIMEOPT_VAL(SQLI
2bf0: 54 45 5f 4d 41 58 5f 53 43 48 45 4d 41 5f 52 45  TE_MAX_SCHEMA_RE
2c00: 54 52 59 29 2c 0a 23 65 6e 64 69 66 0a 23 69 66  TRY),.#endif.#if
2c10: 64 65 66 20 53 51 4c 49 54 45 5f 4d 41 58 5f 53  def SQLITE_MAX_S
2c20: 51 4c 5f 4c 45 4e 47 54 48 0a 20 20 22 4d 41 58  QL_LENGTH.  "MAX
2c30: 5f 53 51 4c 5f 4c 45 4e 47 54 48 3d 22 20 43 54  _SQL_LENGTH=" CT
2c40: 49 4d 45 4f 50 54 5f 56 41 4c 28 53 51 4c 49 54  IMEOPT_VAL(SQLIT
2c50: 45 5f 4d 41 58 5f 53 51 4c 5f 4c 45 4e 47 54 48  E_MAX_SQL_LENGTH
2c60: 29 2c 0a 23 65 6e 64 69 66 0a 23 69 66 64 65 66  ),.#endif.#ifdef
2c70: 20 53 51 4c 49 54 45 5f 4d 41 58 5f 54 52 49 47   SQLITE_MAX_TRIG
2c80: 47 45 52 5f 44 45 50 54 48 0a 20 20 22 4d 41 58  GER_DEPTH.  "MAX
2c90: 5f 54 52 49 47 47 45 52 5f 44 45 50 54 48 3d 22  _TRIGGER_DEPTH="
2ca0: 20 43 54 49 4d 45 4f 50 54 5f 56 41 4c 28 53 51   CTIMEOPT_VAL(SQ
2cb0: 4c 49 54 45 5f 4d 41 58 5f 54 52 49 47 47 45 52  LITE_MAX_TRIGGER
2cc0: 5f 44 45 50 54 48 29 2c 0a 23 65 6e 64 69 66 0a  _DEPTH),.#endif.
2cd0: 23 69 66 64 65 66 20 53 51 4c 49 54 45 5f 4d 41  #ifdef SQLITE_MA
2ce0: 58 5f 56 41 52 49 41 42 4c 45 5f 4e 55 4d 42 45  X_VARIABLE_NUMBE
2cf0: 52 0a 20 20 22 4d 41 58 5f 56 41 52 49 41 42 4c  R.  "MAX_VARIABL
2d00: 45 5f 4e 55 4d 42 45 52 3d 22 20 43 54 49 4d 45  E_NUMBER=" CTIME
2d10: 4f 50 54 5f 56 41 4c 28 53 51 4c 49 54 45 5f 4d  OPT_VAL(SQLITE_M
2d20: 41 58 5f 56 41 52 49 41 42 4c 45 5f 4e 55 4d 42  AX_VARIABLE_NUMB
2d30: 45 52 29 2c 0a 23 65 6e 64 69 66 0a 23 69 66 64  ER),.#endif.#ifd
2d40: 65 66 20 53 51 4c 49 54 45 5f 4d 41 58 5f 56 44  ef SQLITE_MAX_VD
2d50: 42 45 5f 4f 50 0a 20 20 22 4d 41 58 5f 56 44 42  BE_OP.  "MAX_VDB
2d60: 45 5f 4f 50 3d 22 20 43 54 49 4d 45 4f 50 54 5f  E_OP=" CTIMEOPT_
2d70: 56 41 4c 28 53 51 4c 49 54 45 5f 4d 41 58 5f 56  VAL(SQLITE_MAX_V
2d80: 44 42 45 5f 4f 50 29 2c 0a 23 65 6e 64 69 66 0a  DBE_OP),.#endif.
2d90: 23 69 66 64 65 66 20 53 51 4c 49 54 45 5f 4d 41  #ifdef SQLITE_MA
2da0: 58 5f 57 4f 52 4b 45 52 5f 54 48 52 45 41 44 53  X_WORKER_THREADS
2db0: 0a 20 20 22 4d 41 58 5f 57 4f 52 4b 45 52 5f 54  .  "MAX_WORKER_T
2dc0: 48 52 45 41 44 53 3d 22 20 43 54 49 4d 45 4f 50  HREADS=" CTIMEOP
2dd0: 54 5f 56 41 4c 28 53 51 4c 49 54 45 5f 4d 41 58  T_VAL(SQLITE_MAX
2de0: 5f 57 4f 52 4b 45 52 5f 54 48 52 45 41 44 53 29  _WORKER_THREADS)
2df0: 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c  ,.#endif.#if SQL
2e00: 49 54 45 5f 4d 45 4d 44 45 42 55 47 0a 20 20 22  ITE_MEMDEBUG.  "
2e10: 4d 45 4d 44 45 42 55 47 22 2c 0a 23 65 6e 64 69  MEMDEBUG",.#endi
2e20: 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 4d 49 58  f.#if SQLITE_MIX
2e30: 45 44 5f 45 4e 44 49 41 4e 5f 36 34 42 49 54 5f  ED_ENDIAN_64BIT_
2e40: 46 4c 4f 41 54 0a 20 20 22 4d 49 58 45 44 5f 45  FLOAT.  "MIXED_E
2e50: 4e 44 49 41 4e 5f 36 34 42 49 54 5f 46 4c 4f 41  NDIAN_64BIT_FLOA
2e60: 54 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53  T",.#endif.#if S
2e70: 51 4c 49 54 45 5f 4d 4d 41 50 5f 52 45 41 44 57  QLITE_MMAP_READW
2e80: 52 49 54 45 0a 20 20 22 4d 4d 41 50 5f 52 45 41  RITE.  "MMAP_REA
2e90: 44 57 52 49 54 45 22 2c 0a 23 65 6e 64 69 66 0a  DWRITE",.#endif.
2ea0: 23 69 66 20 53 51 4c 49 54 45 5f 4d 55 54 45 58  #if SQLITE_MUTEX
2eb0: 5f 4e 4f 4f 50 0a 20 20 22 4d 55 54 45 58 5f 4e  _NOOP.  "MUTEX_N
2ec0: 4f 4f 50 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66  OOP",.#endif.#if
2ed0: 20 53 51 4c 49 54 45 5f 4d 55 54 45 58 5f 4e 52   SQLITE_MUTEX_NR
2ee0: 45 46 0a 20 20 22 4d 55 54 45 58 5f 4e 52 45 46  EF.  "MUTEX_NREF
2ef0: 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51  ",.#endif.#if SQ
2f00: 4c 49 54 45 5f 4d 55 54 45 58 5f 4f 4d 49 54 0a  LITE_MUTEX_OMIT.
2f10: 20 20 22 4d 55 54 45 58 5f 4f 4d 49 54 22 2c 0a    "MUTEX_OMIT",.
2f20: 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54  #endif.#if SQLIT
2f30: 45 5f 4d 55 54 45 58 5f 50 54 48 52 45 41 44 53  E_MUTEX_PTHREADS
2f40: 0a 20 20 22 4d 55 54 45 58 5f 50 54 48 52 45 41  .  "MUTEX_PTHREA
2f50: 44 53 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20  DS",.#endif.#if 
2f60: 53 51 4c 49 54 45 5f 4d 55 54 45 58 5f 57 33 32  SQLITE_MUTEX_W32
2f70: 0a 20 20 22 4d 55 54 45 58 5f 57 33 32 22 2c 0a  .  "MUTEX_W32",.
2f80: 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54  #endif.#if SQLIT
2f90: 45 5f 4e 45 45 44 5f 45 52 52 5f 4e 41 4d 45 0a  E_NEED_ERR_NAME.
2fa0: 20 20 22 4e 45 45 44 5f 45 52 52 5f 4e 41 4d 45    "NEED_ERR_NAME
2fb0: 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51  ",.#endif.#if SQ
2fc0: 4c 49 54 45 5f 4e 4f 49 4e 4c 49 4e 45 0a 20 20  LITE_NOINLINE.  
2fd0: 22 4e 4f 49 4e 4c 49 4e 45 22 2c 0a 23 65 6e 64  "NOINLINE",.#end
2fe0: 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 4e 4f  if.#if SQLITE_NO
2ff0: 5f 53 59 4e 43 0a 20 20 22 4e 4f 5f 53 59 4e 43  _SYNC.  "NO_SYNC
3000: 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51  ",.#endif.#if SQ
3010: 4c 49 54 45 5f 4f 4d 49 54 5f 41 4c 54 45 52 54  LITE_OMIT_ALTERT
3020: 41 42 4c 45 0a 20 20 22 4f 4d 49 54 5f 41 4c 54  ABLE.  "OMIT_ALT
3030: 45 52 54 41 42 4c 45 22 2c 0a 23 65 6e 64 69 66  ERTABLE",.#endif
3040: 0a 23 69 66 20 53 51 4c 49 54 45 5f 4f 4d 49 54  .#if SQLITE_OMIT
3050: 5f 41 4e 41 4c 59 5a 45 0a 20 20 22 4f 4d 49 54  _ANALYZE.  "OMIT
3060: 5f 41 4e 41 4c 59 5a 45 22 2c 0a 23 65 6e 64 69  _ANALYZE",.#endi
3070: 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 4f 4d 49  f.#if SQLITE_OMI
3080: 54 5f 41 54 54 41 43 48 0a 20 20 22 4f 4d 49 54  T_ATTACH.  "OMIT
3090: 5f 41 54 54 41 43 48 22 2c 0a 23 65 6e 64 69 66  _ATTACH",.#endif
30a0: 0a 23 69 66 20 53 51 4c 49 54 45 5f 4f 4d 49 54  .#if SQLITE_OMIT
30b0: 5f 41 55 54 48 4f 52 49 5a 41 54 49 4f 4e 0a 20  _AUTHORIZATION. 
30c0: 20 22 4f 4d 49 54 5f 41 55 54 48 4f 52 49 5a 41   "OMIT_AUTHORIZA
30d0: 54 49 4f 4e 22 2c 0a 23 65 6e 64 69 66 0a 23 69  TION",.#endif.#i
30e0: 66 20 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 41 55  f SQLITE_OMIT_AU
30f0: 54 4f 49 4e 43 52 45 4d 45 4e 54 0a 20 20 22 4f  TOINCREMENT.  "O
3100: 4d 49 54 5f 41 55 54 4f 49 4e 43 52 45 4d 45 4e  MIT_AUTOINCREMEN
3110: 54 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53  T",.#endif.#if S
3120: 51 4c 49 54 45 5f 4f 4d 49 54 5f 41 55 54 4f 49  QLITE_OMIT_AUTOI
3130: 4e 49 54 0a 20 20 22 4f 4d 49 54 5f 41 55 54 4f  NIT.  "OMIT_AUTO
3140: 49 4e 49 54 22 2c 0a 23 65 6e 64 69 66 0a 23 69  INIT",.#endif.#i
3150: 66 20 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 41 55  f SQLITE_OMIT_AU
3160: 54 4f 4d 41 54 49 43 5f 49 4e 44 45 58 0a 20 20  TOMATIC_INDEX.  
3170: 22 4f 4d 49 54 5f 41 55 54 4f 4d 41 54 49 43 5f  "OMIT_AUTOMATIC_
3180: 49 4e 44 45 58 22 2c 0a 23 65 6e 64 69 66 0a 23  INDEX",.#endif.#
3190: 69 66 20 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 41  if SQLITE_OMIT_A
31a0: 55 54 4f 52 45 53 45 54 0a 20 20 22 4f 4d 49 54  UTORESET.  "OMIT
31b0: 5f 41 55 54 4f 52 45 53 45 54 22 2c 0a 23 65 6e  _AUTORESET",.#en
31c0: 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 4f  dif.#if SQLITE_O
31d0: 4d 49 54 5f 41 55 54 4f 56 41 43 55 55 4d 0a 20  MIT_AUTOVACUUM. 
31e0: 20 22 4f 4d 49 54 5f 41 55 54 4f 56 41 43 55 55   "OMIT_AUTOVACUU
31f0: 4d 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53  M",.#endif.#if S
3200: 51 4c 49 54 45 5f 4f 4d 49 54 5f 42 45 54 57 45  QLITE_OMIT_BETWE
3210: 45 4e 5f 4f 50 54 49 4d 49 5a 41 54 49 4f 4e 0a  EN_OPTIMIZATION.
3220: 20 20 22 4f 4d 49 54 5f 42 45 54 57 45 45 4e 5f    "OMIT_BETWEEN_
3230: 4f 50 54 49 4d 49 5a 41 54 49 4f 4e 22 2c 0a 23  OPTIMIZATION",.#
3240: 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45  endif.#if SQLITE
3250: 5f 4f 4d 49 54 5f 42 4c 4f 42 5f 4c 49 54 45 52  _OMIT_BLOB_LITER
3260: 41 4c 0a 20 20 22 4f 4d 49 54 5f 42 4c 4f 42 5f  AL.  "OMIT_BLOB_
3270: 4c 49 54 45 52 41 4c 22 2c 0a 23 65 6e 64 69 66  LITERAL",.#endif
3280: 0a 23 69 66 20 53 51 4c 49 54 45 5f 4f 4d 49 54  .#if SQLITE_OMIT
3290: 5f 42 54 52 45 45 43 4f 55 4e 54 0a 20 20 22 4f  _BTREECOUNT.  "O
32a0: 4d 49 54 5f 42 54 52 45 45 43 4f 55 4e 54 22 2c  MIT_BTREECOUNT",
32b0: 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49  .#endif.#if SQLI
32c0: 54 45 5f 4f 4d 49 54 5f 43 41 53 54 0a 20 20 22  TE_OMIT_CAST.  "
32d0: 4f 4d 49 54 5f 43 41 53 54 22 2c 0a 23 65 6e 64  OMIT_CAST",.#end
32e0: 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 4f 4d  if.#if SQLITE_OM
32f0: 49 54 5f 43 48 45 43 4b 0a 20 20 22 4f 4d 49 54  IT_CHECK.  "OMIT
3300: 5f 43 48 45 43 4b 22 2c 0a 23 65 6e 64 69 66 0a  _CHECK",.#endif.
3310: 23 69 66 20 53 51 4c 49 54 45 5f 4f 4d 49 54 5f  #if SQLITE_OMIT_
3320: 43 4f 4d 50 4c 45 54 45 0a 20 20 22 4f 4d 49 54  COMPLETE.  "OMIT
3330: 5f 43 4f 4d 50 4c 45 54 45 22 2c 0a 23 65 6e 64  _COMPLETE",.#end
3340: 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 4f 4d  if.#if SQLITE_OM
3350: 49 54 5f 43 4f 4d 50 4f 55 4e 44 5f 53 45 4c 45  IT_COMPOUND_SELE
3360: 43 54 0a 20 20 22 4f 4d 49 54 5f 43 4f 4d 50 4f  CT.  "OMIT_COMPO
3370: 55 4e 44 5f 53 45 4c 45 43 54 22 2c 0a 23 65 6e  UND_SELECT",.#en
3380: 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 4f  dif.#if SQLITE_O
3390: 4d 49 54 5f 43 4f 4e 46 4c 49 43 54 5f 43 4c 41  MIT_CONFLICT_CLA
33a0: 55 53 45 0a 20 20 22 4f 4d 49 54 5f 43 4f 4e 46  USE.  "OMIT_CONF
33b0: 4c 49 43 54 5f 43 4c 41 55 53 45 22 2c 0a 23 65  LICT_CLAUSE",.#e
33c0: 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f  ndif.#if SQLITE_
33d0: 4f 4d 49 54 5f 43 54 45 0a 20 20 22 4f 4d 49 54  OMIT_CTE.  "OMIT
33e0: 5f 43 54 45 22 2c 0a 23 65 6e 64 69 66 0a 23 69  _CTE",.#endif.#i
33f0: 66 20 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 44 41  f SQLITE_OMIT_DA
3400: 54 45 54 49 4d 45 5f 46 55 4e 43 53 0a 20 20 22  TETIME_FUNCS.  "
3410: 4f 4d 49 54 5f 44 41 54 45 54 49 4d 45 5f 46 55  OMIT_DATETIME_FU
3420: 4e 43 53 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66  NCS",.#endif.#if
3430: 20 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 44 45 43   SQLITE_OMIT_DEC
3440: 4c 54 59 50 45 0a 20 20 22 4f 4d 49 54 5f 44 45  LTYPE.  "OMIT_DE
3450: 43 4c 54 59 50 45 22 2c 0a 23 65 6e 64 69 66 0a  CLTYPE",.#endif.
3460: 23 69 66 20 53 51 4c 49 54 45 5f 4f 4d 49 54 5f  #if SQLITE_OMIT_
3470: 44 45 50 52 45 43 41 54 45 44 0a 20 20 22 4f 4d  DEPRECATED.  "OM
3480: 49 54 5f 44 45 50 52 45 43 41 54 45 44 22 2c 0a  IT_DEPRECATED",.
3490: 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54  #endif.#if SQLIT
34a0: 45 5f 4f 4d 49 54 5f 44 49 53 4b 49 4f 0a 20 20  E_OMIT_DISKIO.  
34b0: 22 4f 4d 49 54 5f 44 49 53 4b 49 4f 22 2c 0a 23  "OMIT_DISKIO",.#
34c0: 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45  endif.#if SQLITE
34d0: 5f 4f 4d 49 54 5f 45 58 50 4c 41 49 4e 0a 20 20  _OMIT_EXPLAIN.  
34e0: 22 4f 4d 49 54 5f 45 58 50 4c 41 49 4e 22 2c 0a  "OMIT_EXPLAIN",.
34f0: 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54  #endif.#if SQLIT
3500: 45 5f 4f 4d 49 54 5f 46 4c 41 47 5f 50 52 41 47  E_OMIT_FLAG_PRAG
3510: 4d 41 53 0a 20 20 22 4f 4d 49 54 5f 46 4c 41 47  MAS.  "OMIT_FLAG
3520: 5f 50 52 41 47 4d 41 53 22 2c 0a 23 65 6e 64 69  _PRAGMAS",.#endi
3530: 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 4f 4d 49  f.#if SQLITE_OMI
3540: 54 5f 46 4c 4f 41 54 49 4e 47 5f 50 4f 49 4e 54  T_FLOATING_POINT
3550: 0a 20 20 22 4f 4d 49 54 5f 46 4c 4f 41 54 49 4e  .  "OMIT_FLOATIN
3560: 47 5f 50 4f 49 4e 54 22 2c 0a 23 65 6e 64 69 66  G_POINT",.#endif
3570: 0a 23 69 66 20 53 51 4c 49 54 45 5f 4f 4d 49 54  .#if SQLITE_OMIT
3580: 5f 46 4f 52 45 49 47 4e 5f 4b 45 59 0a 20 20 22  _FOREIGN_KEY.  "
3590: 4f 4d 49 54 5f 46 4f 52 45 49 47 4e 5f 4b 45 59  OMIT_FOREIGN_KEY
35a0: 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51  ",.#endif.#if SQ
35b0: 4c 49 54 45 5f 4f 4d 49 54 5f 47 45 54 5f 54 41  LITE_OMIT_GET_TA
35c0: 42 4c 45 0a 20 20 22 4f 4d 49 54 5f 47 45 54 5f  BLE.  "OMIT_GET_
35d0: 54 41 42 4c 45 22 2c 0a 23 65 6e 64 69 66 0a 23  TABLE",.#endif.#
35e0: 69 66 20 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 48  if SQLITE_OMIT_H
35f0: 45 58 5f 49 4e 54 45 47 45 52 0a 20 20 22 4f 4d  EX_INTEGER.  "OM
3600: 49 54 5f 48 45 58 5f 49 4e 54 45 47 45 52 22 2c  IT_HEX_INTEGER",
3610: 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49  .#endif.#if SQLI
3620: 54 45 5f 4f 4d 49 54 5f 49 4e 43 52 42 4c 4f 42  TE_OMIT_INCRBLOB
3630: 0a 20 20 22 4f 4d 49 54 5f 49 4e 43 52 42 4c 4f  .  "OMIT_INCRBLO
3640: 42 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53  B",.#endif.#if S
3650: 51 4c 49 54 45 5f 4f 4d 49 54 5f 49 4e 54 45 47  QLITE_OMIT_INTEG
3660: 52 49 54 59 5f 43 48 45 43 4b 0a 20 20 22 4f 4d  RITY_CHECK.  "OM
3670: 49 54 5f 49 4e 54 45 47 52 49 54 59 5f 43 48 45  IT_INTEGRITY_CHE
3680: 43 4b 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20  CK",.#endif.#if 
3690: 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 4c 49 4b 45  SQLITE_OMIT_LIKE
36a0: 5f 4f 50 54 49 4d 49 5a 41 54 49 4f 4e 0a 20 20  _OPTIMIZATION.  
36b0: 22 4f 4d 49 54 5f 4c 49 4b 45 5f 4f 50 54 49 4d  "OMIT_LIKE_OPTIM
36c0: 49 5a 41 54 49 4f 4e 22 2c 0a 23 65 6e 64 69 66  IZATION",.#endif
36d0: 0a 23 69 66 20 53 51 4c 49 54 45 5f 4f 4d 49 54  .#if SQLITE_OMIT
36e0: 5f 4c 4f 41 44 5f 45 58 54 45 4e 53 49 4f 4e 0a  _LOAD_EXTENSION.
36f0: 20 20 22 4f 4d 49 54 5f 4c 4f 41 44 5f 45 58 54    "OMIT_LOAD_EXT
3700: 45 4e 53 49 4f 4e 22 2c 0a 23 65 6e 64 69 66 0a  ENSION",.#endif.
3710: 23 69 66 20 53 51 4c 49 54 45 5f 4f 4d 49 54 5f  #if SQLITE_OMIT_
3720: 4c 4f 43 41 4c 54 49 4d 45 0a 20 20 22 4f 4d 49  LOCALTIME.  "OMI
3730: 54 5f 4c 4f 43 41 4c 54 49 4d 45 22 2c 0a 23 65  T_LOCALTIME",.#e
3740: 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f  ndif.#if SQLITE_
3750: 4f 4d 49 54 5f 4c 4f 4f 4b 41 53 49 44 45 0a 20  OMIT_LOOKASIDE. 
3760: 20 22 4f 4d 49 54 5f 4c 4f 4f 4b 41 53 49 44 45   "OMIT_LOOKASIDE
3770: 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51  ",.#endif.#if SQ
3780: 4c 49 54 45 5f 4f 4d 49 54 5f 4d 45 4d 4f 52 59  LITE_OMIT_MEMORY
3790: 44 42 0a 20 20 22 4f 4d 49 54 5f 4d 45 4d 4f 52  DB.  "OMIT_MEMOR
37a0: 59 44 42 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66  YDB",.#endif.#if
37b0: 20 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 4f 52 5f   SQLITE_OMIT_OR_
37c0: 4f 50 54 49 4d 49 5a 41 54 49 4f 4e 0a 20 20 22  OPTIMIZATION.  "
37d0: 4f 4d 49 54 5f 4f 52 5f 4f 50 54 49 4d 49 5a 41  OMIT_OR_OPTIMIZA
37e0: 54 49 4f 4e 22 2c 0a 23 65 6e 64 69 66 0a 23 69  TION",.#endif.#i
37f0: 66 20 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 50 41  f SQLITE_OMIT_PA
3800: 47 45 52 5f 50 52 41 47 4d 41 53 0a 20 20 22 4f  GER_PRAGMAS.  "O
3810: 4d 49 54 5f 50 41 47 45 52 5f 50 52 41 47 4d 41  MIT_PAGER_PRAGMA
3820: 53 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53  S",.#endif.#if S
3830: 51 4c 49 54 45 5f 4f 4d 49 54 5f 50 41 52 53 45  QLITE_OMIT_PARSE
3840: 52 5f 54 52 41 43 45 0a 20 20 22 4f 4d 49 54 5f  R_TRACE.  "OMIT_
3850: 50 41 52 53 45 52 5f 54 52 41 43 45 22 2c 0a 23  PARSER_TRACE",.#
3860: 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45  endif.#if SQLITE
3870: 5f 4f 4d 49 54 5f 50 4f 50 45 4e 0a 20 20 22 4f  _OMIT_POPEN.  "O
3880: 4d 49 54 5f 50 4f 50 45 4e 22 2c 0a 23 65 6e 64  MIT_POPEN",.#end
3890: 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 4f 4d  if.#if SQLITE_OM
38a0: 49 54 5f 50 52 41 47 4d 41 0a 20 20 22 4f 4d 49  IT_PRAGMA.  "OMI
38b0: 54 5f 50 52 41 47 4d 41 22 2c 0a 23 65 6e 64 69  T_PRAGMA",.#endi
38c0: 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 4f 4d 49  f.#if SQLITE_OMI
38d0: 54 5f 50 52 4f 47 52 45 53 53 5f 43 41 4c 4c 42  T_PROGRESS_CALLB
38e0: 41 43 4b 0a 20 20 22 4f 4d 49 54 5f 50 52 4f 47  ACK.  "OMIT_PROG
38f0: 52 45 53 53 5f 43 41 4c 4c 42 41 43 4b 22 2c 0a  RESS_CALLBACK",.
3900: 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54  #endif.#if SQLIT
3910: 45 5f 4f 4d 49 54 5f 51 55 49 43 4b 42 41 4c 41  E_OMIT_QUICKBALA
3920: 4e 43 45 0a 20 20 22 4f 4d 49 54 5f 51 55 49 43  NCE.  "OMIT_QUIC
3930: 4b 42 41 4c 41 4e 43 45 22 2c 0a 23 65 6e 64 69  KBALANCE",.#endi
3940: 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 4f 4d 49  f.#if SQLITE_OMI
3950: 54 5f 52 45 49 4e 44 45 58 0a 20 20 22 4f 4d 49  T_REINDEX.  "OMI
3960: 54 5f 52 45 49 4e 44 45 58 22 2c 0a 23 65 6e 64  T_REINDEX",.#end
3970: 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 4f 4d  if.#if SQLITE_OM
3980: 49 54 5f 53 43 48 45 4d 41 5f 50 52 41 47 4d 41  IT_SCHEMA_PRAGMA
3990: 53 0a 20 20 22 4f 4d 49 54 5f 53 43 48 45 4d 41  S.  "OMIT_SCHEMA
39a0: 5f 50 52 41 47 4d 41 53 22 2c 0a 23 65 6e 64 69  _PRAGMAS",.#endi
39b0: 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 4f 4d 49  f.#if SQLITE_OMI
39c0: 54 5f 53 43 48 45 4d 41 5f 56 45 52 53 49 4f 4e  T_SCHEMA_VERSION
39d0: 5f 50 52 41 47 4d 41 53 0a 20 20 22 4f 4d 49 54  _PRAGMAS.  "OMIT
39e0: 5f 53 43 48 45 4d 41 5f 56 45 52 53 49 4f 4e 5f  _SCHEMA_VERSION_
39f0: 50 52 41 47 4d 41 53 22 2c 0a 23 65 6e 64 69 66  PRAGMAS",.#endif
3a00: 0a 23 69 66 20 53 51 4c 49 54 45 5f 4f 4d 49 54  .#if SQLITE_OMIT
3a10: 5f 53 48 41 52 45 44 5f 43 41 43 48 45 0a 20 20  _SHARED_CACHE.  
3a20: 22 4f 4d 49 54 5f 53 48 41 52 45 44 5f 43 41 43  "OMIT_SHARED_CAC
3a30: 48 45 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20  HE",.#endif.#if 
3a40: 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 53 48 55 54  SQLITE_OMIT_SHUT
3a50: 44 4f 57 4e 5f 44 49 52 45 43 54 4f 52 49 45 53  DOWN_DIRECTORIES
3a60: 0a 20 20 22 4f 4d 49 54 5f 53 48 55 54 44 4f 57  .  "OMIT_SHUTDOW
3a70: 4e 5f 44 49 52 45 43 54 4f 52 49 45 53 22 2c 0a  N_DIRECTORIES",.
3a80: 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54  #endif.#if SQLIT
3a90: 45 5f 4f 4d 49 54 5f 53 55 42 51 55 45 52 59 0a  E_OMIT_SUBQUERY.
3aa0: 20 20 22 4f 4d 49 54 5f 53 55 42 51 55 45 52 59    "OMIT_SUBQUERY
3ab0: 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51  ",.#endif.#if SQ
3ac0: 4c 49 54 45 5f 4f 4d 49 54 5f 54 43 4c 5f 56 41  LITE_OMIT_TCL_VA
3ad0: 52 49 41 42 4c 45 0a 20 20 22 4f 4d 49 54 5f 54  RIABLE.  "OMIT_T
3ae0: 43 4c 5f 56 41 52 49 41 42 4c 45 22 2c 0a 23 65  CL_VARIABLE",.#e
3af0: 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f  ndif.#if SQLITE_
3b00: 4f 4d 49 54 5f 54 45 4d 50 44 42 0a 20 20 22 4f  OMIT_TEMPDB.  "O
3b10: 4d 49 54 5f 54 45 4d 50 44 42 22 2c 0a 23 65 6e  MIT_TEMPDB",.#en
3b20: 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 4f  dif.#if SQLITE_O
3b30: 4d 49 54 5f 54 45 53 54 5f 43 4f 4e 54 52 4f 4c  MIT_TEST_CONTROL
3b40: 0a 20 20 22 4f 4d 49 54 5f 54 45 53 54 5f 43 4f  .  "OMIT_TEST_CO
3b50: 4e 54 52 4f 4c 22 2c 0a 23 65 6e 64 69 66 0a 23  NTROL",.#endif.#
3b60: 69 66 20 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 54  if SQLITE_OMIT_T
3b70: 52 41 43 45 0a 20 20 22 4f 4d 49 54 5f 54 52 41  RACE.  "OMIT_TRA
3b80: 43 45 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20  CE",.#endif.#if 
3b90: 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 54 52 49 47  SQLITE_OMIT_TRIG
3ba0: 47 45 52 0a 20 20 22 4f 4d 49 54 5f 54 52 49 47  GER.  "OMIT_TRIG
3bb0: 47 45 52 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66  GER",.#endif.#if
3bc0: 20 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 54 52 55   SQLITE_OMIT_TRU
3bd0: 4e 43 41 54 45 5f 4f 50 54 49 4d 49 5a 41 54 49  NCATE_OPTIMIZATI
3be0: 4f 4e 0a 20 20 22 4f 4d 49 54 5f 54 52 55 4e 43  ON.  "OMIT_TRUNC
3bf0: 41 54 45 5f 4f 50 54 49 4d 49 5a 41 54 49 4f 4e  ATE_OPTIMIZATION
3c00: 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51  ",.#endif.#if SQ
3c10: 4c 49 54 45 5f 4f 4d 49 54 5f 55 54 46 31 36 0a  LITE_OMIT_UTF16.
3c20: 20 20 22 4f 4d 49 54 5f 55 54 46 31 36 22 2c 0a    "OMIT_UTF16",.
3c30: 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54  #endif.#if SQLIT
3c40: 45 5f 4f 4d 49 54 5f 56 41 43 55 55 4d 0a 20 20  E_OMIT_VACUUM.  
3c50: 22 4f 4d 49 54 5f 56 41 43 55 55 4d 22 2c 0a 23  "OMIT_VACUUM",.#
3c60: 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45  endif.#if SQLITE
3c70: 5f 4f 4d 49 54 5f 56 49 45 57 0a 20 20 22 4f 4d  _OMIT_VIEW.  "OM
3c80: 49 54 5f 56 49 45 57 22 2c 0a 23 65 6e 64 69 66  IT_VIEW",.#endif
3c90: 0a 23 69 66 20 53 51 4c 49 54 45 5f 4f 4d 49 54  .#if SQLITE_OMIT
3ca0: 5f 56 49 52 54 55 41 4c 54 41 42 4c 45 0a 20 20  _VIRTUALTABLE.  
3cb0: 22 4f 4d 49 54 5f 56 49 52 54 55 41 4c 54 41 42  "OMIT_VIRTUALTAB
3cc0: 4c 45 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20  LE",.#endif.#if 
3cd0: 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 57 41 4c 0a  SQLITE_OMIT_WAL.
3ce0: 20 20 22 4f 4d 49 54 5f 57 41 4c 22 2c 0a 23 65    "OMIT_WAL",.#e
3cf0: 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f  ndif.#if SQLITE_
3d00: 4f 4d 49 54 5f 57 53 44 0a 20 20 22 4f 4d 49 54  OMIT_WSD.  "OMIT
3d10: 5f 57 53 44 22 2c 0a 23 65 6e 64 69 66 0a 23 69  _WSD",.#endif.#i
3d20: 66 20 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 58 46  f SQLITE_OMIT_XF
3d30: 45 52 5f 4f 50 54 0a 20 20 22 4f 4d 49 54 5f 58  ER_OPT.  "OMIT_X
3d40: 46 45 52 5f 4f 50 54 22 2c 0a 23 65 6e 64 69 66  FER_OPT",.#endif
3d50: 0a 23 69 66 20 53 51 4c 49 54 45 5f 50 43 41 43  .#if SQLITE_PCAC
3d60: 48 45 5f 53 45 50 41 52 41 54 45 5f 48 45 41 44  HE_SEPARATE_HEAD
3d70: 45 52 0a 20 20 22 50 43 41 43 48 45 5f 53 45 50  ER.  "PCACHE_SEP
3d80: 41 52 41 54 45 5f 48 45 41 44 45 52 22 2c 0a 23  ARATE_HEADER",.#
3d90: 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45  endif.#if SQLITE
3da0: 5f 50 45 52 46 4f 52 4d 41 4e 43 45 5f 54 52 41  _PERFORMANCE_TRA
3db0: 43 45 0a 20 20 22 50 45 52 46 4f 52 4d 41 4e 43  CE.  "PERFORMANC
3dc0: 45 5f 54 52 41 43 45 22 2c 0a 23 65 6e 64 69 66  E_TRACE",.#endif
3dd0: 0a 23 69 66 20 53 51 4c 49 54 45 5f 50 4f 57 45  .#if SQLITE_POWE
3de0: 52 53 41 46 45 5f 4f 56 45 52 57 52 49 54 45 0a  RSAFE_OVERWRITE.
3df0: 20 20 22 50 4f 57 45 52 53 41 46 45 5f 4f 56 45    "POWERSAFE_OVE
3e00: 52 57 52 49 54 45 22 2c 0a 23 65 6e 64 69 66 0a  RWRITE",.#endif.
3e10: 23 69 66 20 53 51 4c 49 54 45 5f 50 52 45 46 45  #if SQLITE_PREFE
3e20: 52 5f 50 52 4f 58 59 5f 4c 4f 43 4b 49 4e 47 0a  R_PROXY_LOCKING.
3e30: 20 20 22 50 52 45 46 45 52 5f 50 52 4f 58 59 5f    "PREFER_PROXY_
3e40: 4c 4f 43 4b 49 4e 47 22 2c 0a 23 65 6e 64 69 66  LOCKING",.#endif
3e50: 0a 23 69 66 20 53 51 4c 49 54 45 5f 50 52 4f 58  .#if SQLITE_PROX
3e60: 59 5f 44 45 42 55 47 0a 20 20 22 50 52 4f 58 59  Y_DEBUG.  "PROXY
3e70: 5f 44 45 42 55 47 22 2c 0a 23 65 6e 64 69 66 0a  _DEBUG",.#endif.
3e80: 23 69 66 20 53 51 4c 49 54 45 5f 52 45 56 45 52  #if SQLITE_REVER
3e90: 53 45 5f 55 4e 4f 52 44 45 52 45 44 5f 53 45 4c  SE_UNORDERED_SEL
3ea0: 45 43 54 53 0a 20 20 22 52 45 56 45 52 53 45 5f  ECTS.  "REVERSE_
3eb0: 55 4e 4f 52 44 45 52 45 44 5f 53 45 4c 45 43 54  UNORDERED_SELECT
3ec0: 53 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53  S",.#endif.#if S
3ed0: 51 4c 49 54 45 5f 52 54 52 45 45 5f 49 4e 54 5f  QLITE_RTREE_INT_
3ee0: 4f 4e 4c 59 0a 20 20 22 52 54 52 45 45 5f 49 4e  ONLY.  "RTREE_IN
3ef0: 54 5f 4f 4e 4c 59 22 2c 0a 23 65 6e 64 69 66 0a  T_ONLY",.#endif.
3f00: 23 69 66 20 53 51 4c 49 54 45 5f 53 45 43 55 52  #if SQLITE_SECUR
3f10: 45 5f 44 45 4c 45 54 45 0a 20 20 22 53 45 43 55  E_DELETE.  "SECU
3f20: 52 45 5f 44 45 4c 45 54 45 22 2c 0a 23 65 6e 64  RE_DELETE",.#end
3f30: 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 53 4d  if.#if SQLITE_SM
3f40: 41 4c 4c 5f 53 54 41 43 4b 0a 20 20 22 53 4d 41  ALL_STACK.  "SMA
3f50: 4c 4c 5f 53 54 41 43 4b 22 2c 0a 23 65 6e 64 69  LL_STACK",.#endi
3f60: 66 0a 23 69 66 64 65 66 20 53 51 4c 49 54 45 5f  f.#ifdef SQLITE_
3f70: 53 4f 52 54 45 52 5f 50 4d 41 53 5a 0a 20 20 22  SORTER_PMASZ.  "
3f80: 53 4f 52 54 45 52 5f 50 4d 41 53 5a 3d 22 20 43  SORTER_PMASZ=" C
3f90: 54 49 4d 45 4f 50 54 5f 56 41 4c 28 53 51 4c 49  TIMEOPT_VAL(SQLI
3fa0: 54 45 5f 53 4f 52 54 45 52 5f 50 4d 41 53 5a 29  TE_SORTER_PMASZ)
3fb0: 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c  ,.#endif.#if SQL
3fc0: 49 54 45 5f 53 4f 55 4e 44 45 58 0a 20 20 22 53  ITE_SOUNDEX.  "S
3fd0: 4f 55 4e 44 45 58 22 2c 0a 23 65 6e 64 69 66 0a  OUNDEX",.#endif.
3fe0: 23 69 66 64 65 66 20 53 51 4c 49 54 45 5f 53 54  #ifdef SQLITE_ST
3ff0: 41 54 34 5f 53 41 4d 50 4c 45 53 0a 20 20 22 53  AT4_SAMPLES.  "S
4000: 54 41 54 34 5f 53 41 4d 50 4c 45 53 3d 22 20 43  TAT4_SAMPLES=" C
4010: 54 49 4d 45 4f 50 54 5f 56 41 4c 28 53 51 4c 49  TIMEOPT_VAL(SQLI
4020: 54 45 5f 53 54 41 54 34 5f 53 41 4d 50 4c 45 53  TE_STAT4_SAMPLES
4030: 29 2c 0a 23 65 6e 64 69 66 0a 23 69 66 64 65 66  ),.#endif.#ifdef
4040: 20 53 51 4c 49 54 45 5f 53 54 4d 54 4a 52 4e 4c   SQLITE_STMTJRNL
4050: 5f 53 50 49 4c 4c 0a 20 20 22 53 54 4d 54 4a 52  _SPILL.  "STMTJR
4060: 4e 4c 5f 53 50 49 4c 4c 3d 22 20 43 54 49 4d 45  NL_SPILL=" CTIME
4070: 4f 50 54 5f 56 41 4c 28 53 51 4c 49 54 45 5f 53  OPT_VAL(SQLITE_S
4080: 54 4d 54 4a 52 4e 4c 5f 53 50 49 4c 4c 29 2c 0a  TMTJRNL_SPILL),.
4090: 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54  #endif.#if SQLIT
40a0: 45 5f 53 55 42 53 54 52 5f 43 4f 4d 50 41 54 49  E_SUBSTR_COMPATI
40b0: 42 49 4c 49 54 59 0a 20 20 22 53 55 42 53 54 52  BILITY.  "SUBSTR
40c0: 5f 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 22 2c  _COMPATIBILITY",
40d0: 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49  .#endif.#if SQLI
40e0: 54 45 5f 53 59 53 54 45 4d 5f 4d 41 4c 4c 4f 43  TE_SYSTEM_MALLOC
40f0: 0a 20 20 22 53 59 53 54 45 4d 5f 4d 41 4c 4c 4f  .  "SYSTEM_MALLO
4100: 43 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53  C",.#endif.#if S
4110: 51 4c 49 54 45 5f 54 43 4c 0a 20 20 22 54 43 4c  QLITE_TCL.  "TCL
4120: 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 64 65 66  ",.#endif.#ifdef
4130: 20 53 51 4c 49 54 45 5f 54 45 4d 50 5f 53 54 4f   SQLITE_TEMP_STO
4140: 52 45 0a 20 20 22 54 45 4d 50 5f 53 54 4f 52 45  RE.  "TEMP_STORE
4150: 3d 22 20 43 54 49 4d 45 4f 50 54 5f 56 41 4c 28  =" CTIMEOPT_VAL(
4160: 53 51 4c 49 54 45 5f 54 45 4d 50 5f 53 54 4f 52  SQLITE_TEMP_STOR
4170: 45 29 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53  E),.#endif.#if S
4180: 51 4c 49 54 45 5f 54 45 53 54 0a 20 20 22 54 45  QLITE_TEST.  "TE
4190: 53 54 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20  ST",.#endif.#if 
41a0: 64 65 66 69 6e 65 64 28 53 51 4c 49 54 45 5f 54  defined(SQLITE_T
41b0: 48 52 45 41 44 53 41 46 45 29 0a 20 20 22 54 48  HREADSAFE).  "TH
41c0: 52 45 41 44 53 41 46 45 3d 22 20 43 54 49 4d 45  READSAFE=" CTIME
41d0: 4f 50 54 5f 56 41 4c 28 53 51 4c 49 54 45 5f 54  OPT_VAL(SQLITE_T
41e0: 48 52 45 41 44 53 41 46 45 29 2c 0a 23 65 6c 69  HREADSAFE),.#eli
41f0: 66 20 64 65 66 69 6e 65 64 28 54 48 52 45 41 44  f defined(THREAD
4200: 53 41 46 45 29 0a 20 20 22 54 48 52 45 41 44 53  SAFE).  "THREADS
4210: 41 46 45 3d 22 20 43 54 49 4d 45 4f 50 54 5f 56  AFE=" CTIMEOPT_V
4220: 41 4c 28 54 48 52 45 41 44 53 41 46 45 29 2c 0a  AL(THREADSAFE),.
4230: 23 65 6c 73 65 0a 20 20 22 54 48 52 45 41 44 53  #else.  "THREADS
4240: 41 46 45 3d 31 22 2c 0a 23 65 6e 64 69 66 0a 23  AFE=1",.#endif.#
4250: 69 66 20 53 51 4c 49 54 45 5f 55 4e 4c 49 4e 4b  if SQLITE_UNLINK
4260: 5f 41 46 54 45 52 5f 43 4c 4f 53 45 0a 20 20 22  _AFTER_CLOSE.  "
4270: 55 4e 4c 49 4e 4b 5f 41 46 54 45 52 5f 43 4c 4f  UNLINK_AFTER_CLO
4280: 53 45 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20  SE",.#endif.#if 
4290: 53 51 4c 49 54 45 5f 55 4e 54 45 53 54 41 42 4c  SQLITE_UNTESTABL
42a0: 45 0a 20 20 22 55 4e 54 45 53 54 41 42 4c 45 22  E.  "UNTESTABLE"
42b0: 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c  ,.#endif.#if SQL
42c0: 49 54 45 5f 55 53 45 52 5f 41 55 54 48 45 4e 54  ITE_USER_AUTHENT
42d0: 49 43 41 54 49 4f 4e 0a 20 20 22 55 53 45 52 5f  ICATION.  "USER_
42e0: 41 55 54 48 45 4e 54 49 43 41 54 49 4f 4e 22 2c  AUTHENTICATION",
42f0: 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49  .#endif.#if SQLI
4300: 54 45 5f 55 53 45 5f 41 4c 4c 4f 43 41 0a 20 20  TE_USE_ALLOCA.  
4310: 22 55 53 45 5f 41 4c 4c 4f 43 41 22 2c 0a 23 65  "USE_ALLOCA",.#e
4320: 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f  ndif.#if SQLITE_
4330: 55 53 45 5f 46 43 4e 54 4c 5f 54 52 41 43 45 0a  USE_FCNTL_TRACE.
4340: 20 20 22 55 53 45 5f 46 43 4e 54 4c 5f 54 52 41    "USE_FCNTL_TRA
4350: 43 45 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20  CE",.#endif.#if 
4360: 53 51 4c 49 54 45 5f 55 53 45 5f 55 52 49 0a 20  SQLITE_USE_URI. 
4370: 20 22 55 53 45 5f 55 52 49 22 2c 0a 23 65 6e 64   "USE_URI",.#end
4380: 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 56 44  if.#if SQLITE_VD
4390: 42 45 5f 43 4f 56 45 52 41 47 45 0a 20 20 22 56  BE_COVERAGE.  "V
43a0: 44 42 45 5f 43 4f 56 45 52 41 47 45 22 2c 0a 23  DBE_COVERAGE",.#
43b0: 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45  endif.#if SQLITE
43c0: 5f 57 49 4e 33 32 5f 4d 41 4c 4c 4f 43 0a 20 20  _WIN32_MALLOC.  
43d0: 22 57 49 4e 33 32 5f 4d 41 4c 4c 4f 43 22 2c 0a  "WIN32_MALLOC",.
43e0: 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54  #endif.#if SQLIT
43f0: 45 5f 5a 45 52 4f 5f 4d 41 4c 4c 4f 43 0a 20 20  E_ZERO_MALLOC.  
4400: 22 5a 45 52 4f 5f 4d 41 4c 4c 4f 43 22 2c 0a 23  "ZERO_MALLOC",.#
4410: 65 6e 64 69 66 0a 2f 2a 20 0a 2a 2a 20 45 4e 44  endif./* .** END
4420: 20 43 4f 44 45 20 47 45 4e 45 52 41 54 45 44 20   CODE GENERATED 
4430: 42 59 20 74 6f 6f 6c 2f 6d 6b 63 74 69 6d 65 2e  BY tool/mkctime.
4440: 74 63 6c 20 0a 2a 2f 0a 7d 3b 0a 0a 63 6f 6e 73  tcl .*/.};..cons
4450: 74 20 63 68 61 72 20 2a 2a 73 71 6c 69 74 65 33  t char **sqlite3
4460: 43 6f 6d 70 69 6c 65 4f 70 74 69 6f 6e 73 28 69  CompileOptions(i
4470: 6e 74 20 2a 70 6e 4f 70 74 29 7b 0a 20 20 2a 70  nt *pnOpt){.  *p
4480: 6e 4f 70 74 20 3d 20 73 69 7a 65 6f 66 28 73 71  nOpt = sizeof(sq
4490: 6c 69 74 65 33 61 7a 43 6f 6d 70 69 6c 65 4f 70  lite3azCompileOp
44a0: 74 29 20 2f 20 73 69 7a 65 6f 66 28 73 71 6c 69  t) / sizeof(sqli
44b0: 74 65 33 61 7a 43 6f 6d 70 69 6c 65 4f 70 74 5b  te3azCompileOpt[
44c0: 30 5d 29 3b 0a 20 20 72 65 74 75 72 6e 20 28 63  0]);.  return (c
44d0: 6f 6e 73 74 20 63 68 61 72 2a 2a 29 73 71 6c 69  onst char**)sqli
44e0: 74 65 33 61 7a 43 6f 6d 70 69 6c 65 4f 70 74 3b  te3azCompileOpt;
44f0: 0a 7d 0a 0a 23 65 6e 64 69 66 20 2f 2a 20 53 51  .}..#endif /* SQ
4500: 4c 49 54 45 5f 4f 4d 49 54 5f 43 4f 4d 50 49 4c  LITE_OMIT_COMPIL
4510: 45 4f 50 54 49 4f 4e 5f 44 49 41 47 53 20 2a 2f  EOPTION_DIAGS */
4520: 0a                                               .