/ Hex Artifact Content
Login

Artifact ff1be3eed7bdd75aaca61ca8dc848f7c9f850ef2fb9cb56f2734e922a098f9c0:


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 0a 2a 2a 20 41 6e 20 61 72  pt)../*.** An ar
03c0: 72 61 79 20 6f 66 20 6e 61 6d 65 73 20 6f 66 20  ray of names of 
03d0: 61 6c 6c 20 63 6f 6d 70 69 6c 65 2d 74 69 6d 65  all compile-time
03e0: 20 6f 70 74 69 6f 6e 73 2e 20 20 54 68 69 73 20   options.  This 
03f0: 61 72 72 61 79 20 73 68 6f 75 6c 64 20 0a 2a 2a  array should .**
0400: 20 62 65 20 73 6f 72 74 65 64 20 41 2d 5a 2e 0a   be sorted A-Z..
0410: 2a 2a 0a 2a 2a 20 54 68 69 73 20 61 72 72 61 79  **.** This array
0420: 20 6c 6f 6f 6b 73 20 6c 61 72 67 65 2c 20 62 75   looks large, bu
0430: 74 20 69 6e 20 61 20 74 79 70 69 63 61 6c 20 69  t in a typical i
0440: 6e 73 74 61 6c 6c 61 74 69 6f 6e 20 61 63 74 75  nstallation actu
0450: 61 6c 6c 79 20 75 73 65 73 0a 2a 2a 20 6f 6e 6c  ally uses.** onl
0460: 79 20 61 20 68 61 6e 64 66 75 6c 20 6f 66 20 63  y a handful of c
0470: 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 6f 70 74 69  ompile-time opti
0480: 6f 6e 73 2c 20 73 6f 20 6d 6f 73 74 20 74 69 6d  ons, so most tim
0490: 65 73 20 74 68 69 73 20 61 72 72 61 79 20 69 73  es this array is
04a0: 20 75 73 75 61 6c 6c 79 0a 2a 2a 20 72 61 74 68   usually.** rath
04b0: 65 72 20 73 68 6f 72 74 20 61 6e 64 20 75 73 65  er short and use
04c0: 73 20 6c 69 74 74 6c 65 20 6d 65 6d 6f 72 79 20  s little memory 
04d0: 73 70 61 63 65 2e 0a 2a 2f 0a 73 74 61 74 69 63  space..*/.static
04e0: 20 63 6f 6e 73 74 20 63 68 61 72 20 2a 20 63 6f   const char * co
04f0: 6e 73 74 20 73 71 6c 69 74 65 33 61 7a 43 6f 6d  nst sqlite3azCom
0500: 70 69 6c 65 4f 70 74 5b 5d 20 3d 20 7b 0a 0a 2f  pileOpt[] = {../
0510: 2a 20 0a 2a 2a 20 42 45 47 49 4e 20 43 4f 44 45  * .** BEGIN CODE
0520: 20 47 45 4e 45 52 41 54 45 44 20 42 59 20 74 6f   GENERATED BY to
0530: 6f 6c 2f 6d 6b 63 74 69 6d 65 2e 74 63 6c 20 0a  ol/mkctime.tcl .
0540: 2a 2f 0a 23 69 66 20 53 51 4c 49 54 45 5f 33 32  */.#if SQLITE_32
0550: 42 49 54 5f 52 4f 57 49 44 0a 20 20 22 33 32 42  BIT_ROWID.  "32B
0560: 49 54 5f 52 4f 57 49 44 22 2c 0a 23 65 6e 64 69  IT_ROWID",.#endi
0570: 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 34 5f 42  f.#if SQLITE_4_B
0580: 59 54 45 5f 41 4c 49 47 4e 45 44 5f 4d 41 4c 4c  YTE_ALIGNED_MALL
0590: 4f 43 0a 20 20 22 34 5f 42 59 54 45 5f 41 4c 49  OC.  "4_BYTE_ALI
05a0: 47 4e 45 44 5f 4d 41 4c 4c 4f 43 22 2c 0a 23 65  GNED_MALLOC",.#e
05b0: 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f  ndif.#if SQLITE_
05c0: 36 34 42 49 54 5f 53 54 41 54 53 0a 20 20 22 36  64BIT_STATS.  "6
05d0: 34 42 49 54 5f 53 54 41 54 53 22 2c 0a 23 65 6e  4BIT_STATS",.#en
05e0: 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 41  dif.#if SQLITE_A
05f0: 4c 4c 4f 57 5f 43 4f 56 45 52 49 4e 47 5f 49 4e  LLOW_COVERING_IN
0600: 44 45 58 5f 53 43 41 4e 0a 20 20 22 41 4c 4c 4f  DEX_SCAN.  "ALLO
0610: 57 5f 43 4f 56 45 52 49 4e 47 5f 49 4e 44 45 58  W_COVERING_INDEX
0620: 5f 53 43 41 4e 22 2c 0a 23 65 6e 64 69 66 0a 23  _SCAN",.#endif.#
0630: 69 66 20 53 51 4c 49 54 45 5f 41 4c 4c 4f 57 5f  if SQLITE_ALLOW_
0640: 55 52 49 5f 41 55 54 48 4f 52 49 54 59 0a 20 20  URI_AUTHORITY.  
0650: 22 41 4c 4c 4f 57 5f 55 52 49 5f 41 55 54 48 4f  "ALLOW_URI_AUTHO
0660: 52 49 54 59 22 2c 0a 23 65 6e 64 69 66 0a 23 69  RITY",.#endif.#i
0670: 66 64 65 66 20 53 51 4c 49 54 45 5f 42 49 54 4d  fdef SQLITE_BITM
0680: 41 53 4b 5f 54 59 50 45 0a 20 20 22 42 49 54 4d  ASK_TYPE.  "BITM
0690: 41 53 4b 5f 54 59 50 45 3d 22 20 43 54 49 4d 45  ASK_TYPE=" CTIME
06a0: 4f 50 54 5f 56 41 4c 28 53 51 4c 49 54 45 5f 42  OPT_VAL(SQLITE_B
06b0: 49 54 4d 41 53 4b 5f 54 59 50 45 29 2c 0a 23 65  ITMASK_TYPE),.#e
06c0: 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f  ndif.#if SQLITE_
06d0: 42 55 47 5f 43 4f 4d 50 41 54 49 42 4c 45 5f 32  BUG_COMPATIBLE_2
06e0: 30 31 36 30 38 31 39 0a 20 20 22 42 55 47 5f 43  0160819.  "BUG_C
06f0: 4f 4d 50 41 54 49 42 4c 45 5f 32 30 31 36 30 38  OMPATIBLE_201608
0700: 31 39 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20  19",.#endif.#if 
0710: 53 51 4c 49 54 45 5f 43 41 53 45 5f 53 45 4e 53  SQLITE_CASE_SENS
0720: 49 54 49 56 45 5f 4c 49 4b 45 0a 20 20 22 43 41  ITIVE_LIKE.  "CA
0730: 53 45 5f 53 45 4e 53 49 54 49 56 45 5f 4c 49 4b  SE_SENSITIVE_LIK
0740: 45 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53  E",.#endif.#if S
0750: 51 4c 49 54 45 5f 43 48 45 43 4b 5f 50 41 47 45  QLITE_CHECK_PAGE
0760: 53 0a 20 20 22 43 48 45 43 4b 5f 50 41 47 45 53  S.  "CHECK_PAGES
0770: 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 64 65  ",.#endif.#if de
0780: 66 69 6e 65 64 28 5f 5f 63 6c 61 6e 67 5f 5f 29  fined(__clang__)
0790: 20 26 26 20 64 65 66 69 6e 65 64 28 5f 5f 63 6c   && defined(__cl
07a0: 61 6e 67 5f 6d 61 6a 6f 72 5f 5f 29 0a 20 20 22  ang_major__).  "
07b0: 43 4f 4d 50 49 4c 45 52 3d 63 6c 61 6e 67 2d 22  COMPILER=clang-"
07c0: 20 43 54 49 4d 45 4f 50 54 5f 56 41 4c 28 5f 5f   CTIMEOPT_VAL(__
07d0: 63 6c 61 6e 67 5f 6d 61 6a 6f 72 5f 5f 29 20 22  clang_major__) "
07e0: 2e 22 0a 20 20 20 20 20 20 20 20 20 20 20 20 20  .".             
07f0: 20 20 20 20 20 20 20 43 54 49 4d 45 4f 50 54 5f         CTIMEOPT_
0800: 56 41 4c 28 5f 5f 63 6c 61 6e 67 5f 6d 69 6e 6f  VAL(__clang_mino
0810: 72 5f 5f 29 20 22 2e 22 0a 20 20 20 20 20 20 20  r__) ".".       
0820: 20 20 20 20 20 20 20 20 20 20 20 20 20 43 54 49               CTI
0830: 4d 45 4f 50 54 5f 56 41 4c 28 5f 5f 63 6c 61 6e  MEOPT_VAL(__clan
0840: 67 5f 70 61 74 63 68 6c 65 76 65 6c 5f 5f 29 2c  g_patchlevel__),
0850: 0a 23 65 6c 69 66 20 64 65 66 69 6e 65 64 28 5f  .#elif defined(_
0860: 4d 53 43 5f 56 45 52 29 0a 20 20 22 43 4f 4d 50  MSC_VER).  "COMP
0870: 49 4c 45 52 3d 6d 73 76 63 2d 22 20 43 54 49 4d  ILER=msvc-" CTIM
0880: 45 4f 50 54 5f 56 41 4c 28 5f 4d 53 43 5f 56 45  EOPT_VAL(_MSC_VE
0890: 52 29 2c 0a 23 65 6c 69 66 20 64 65 66 69 6e 65  R),.#elif define
08a0: 64 28 5f 5f 47 4e 55 43 5f 5f 29 20 26 26 20 64  d(__GNUC__) && d
08b0: 65 66 69 6e 65 64 28 5f 5f 56 45 52 53 49 4f 4e  efined(__VERSION
08c0: 5f 5f 29 0a 20 20 22 43 4f 4d 50 49 4c 45 52 3d  __).  "COMPILER=
08d0: 67 63 63 2d 22 20 5f 5f 56 45 52 53 49 4f 4e 5f  gcc-" __VERSION_
08e0: 5f 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51  _,.#endif.#if SQ
08f0: 4c 49 54 45 5f 43 4f 56 45 52 41 47 45 5f 54 45  LITE_COVERAGE_TE
0900: 53 54 0a 20 20 22 43 4f 56 45 52 41 47 45 5f 54  ST.  "COVERAGE_T
0910: 45 53 54 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66  EST",.#endif.#if
0920: 20 53 51 4c 49 54 45 5f 44 45 42 55 47 0a 20 20   SQLITE_DEBUG.  
0930: 22 44 45 42 55 47 22 2c 0a 23 65 6e 64 69 66 0a  "DEBUG",.#endif.
0940: 23 69 66 20 53 51 4c 49 54 45 5f 44 45 46 41 55  #if SQLITE_DEFAU
0950: 4c 54 5f 41 55 54 4f 4d 41 54 49 43 5f 49 4e 44  LT_AUTOMATIC_IND
0960: 45 58 0a 20 20 22 44 45 46 41 55 4c 54 5f 41 55  EX.  "DEFAULT_AU
0970: 54 4f 4d 41 54 49 43 5f 49 4e 44 45 58 22 2c 0a  TOMATIC_INDEX",.
0980: 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54  #endif.#if SQLIT
0990: 45 5f 44 45 46 41 55 4c 54 5f 41 55 54 4f 56 41  E_DEFAULT_AUTOVA
09a0: 43 55 55 4d 0a 20 20 22 44 45 46 41 55 4c 54 5f  CUUM.  "DEFAULT_
09b0: 41 55 54 4f 56 41 43 55 55 4d 22 2c 0a 23 65 6e  AUTOVACUUM",.#en
09c0: 64 69 66 0a 23 69 66 64 65 66 20 53 51 4c 49 54  dif.#ifdef SQLIT
09d0: 45 5f 44 45 46 41 55 4c 54 5f 43 41 43 48 45 5f  E_DEFAULT_CACHE_
09e0: 53 49 5a 45 0a 20 20 22 44 45 46 41 55 4c 54 5f  SIZE.  "DEFAULT_
09f0: 43 41 43 48 45 5f 53 49 5a 45 3d 22 20 43 54 49  CACHE_SIZE=" CTI
0a00: 4d 45 4f 50 54 5f 56 41 4c 28 53 51 4c 49 54 45  MEOPT_VAL(SQLITE
0a10: 5f 44 45 46 41 55 4c 54 5f 43 41 43 48 45 5f 53  _DEFAULT_CACHE_S
0a20: 49 5a 45 29 2c 0a 23 65 6e 64 69 66 0a 23 69 66  IZE),.#endif.#if
0a30: 20 53 51 4c 49 54 45 5f 44 45 46 41 55 4c 54 5f   SQLITE_DEFAULT_
0a40: 43 4b 50 54 46 55 4c 4c 46 53 59 4e 43 0a 20 20  CKPTFULLFSYNC.  
0a50: 22 44 45 46 41 55 4c 54 5f 43 4b 50 54 46 55 4c  "DEFAULT_CKPTFUL
0a60: 4c 46 53 59 4e 43 22 2c 0a 23 65 6e 64 69 66 0a  LFSYNC",.#endif.
0a70: 23 69 66 64 65 66 20 53 51 4c 49 54 45 5f 44 45  #ifdef SQLITE_DE
0a80: 46 41 55 4c 54 5f 46 49 4c 45 5f 46 4f 52 4d 41  FAULT_FILE_FORMA
0a90: 54 0a 20 20 22 44 45 46 41 55 4c 54 5f 46 49 4c  T.  "DEFAULT_FIL
0aa0: 45 5f 46 4f 52 4d 41 54 3d 22 20 43 54 49 4d 45  E_FORMAT=" CTIME
0ab0: 4f 50 54 5f 56 41 4c 28 53 51 4c 49 54 45 5f 44  OPT_VAL(SQLITE_D
0ac0: 45 46 41 55 4c 54 5f 46 49 4c 45 5f 46 4f 52 4d  EFAULT_FILE_FORM
0ad0: 41 54 29 2c 0a 23 65 6e 64 69 66 0a 23 69 66 64  AT),.#endif.#ifd
0ae0: 65 66 20 53 51 4c 49 54 45 5f 44 45 46 41 55 4c  ef SQLITE_DEFAUL
0af0: 54 5f 46 49 4c 45 5f 50 45 52 4d 49 53 53 49 4f  T_FILE_PERMISSIO
0b00: 4e 53 0a 20 20 22 44 45 46 41 55 4c 54 5f 46 49  NS.  "DEFAULT_FI
0b10: 4c 45 5f 50 45 52 4d 49 53 53 49 4f 4e 53 3d 22  LE_PERMISSIONS="
0b20: 20 43 54 49 4d 45 4f 50 54 5f 56 41 4c 28 53 51   CTIMEOPT_VAL(SQ
0b30: 4c 49 54 45 5f 44 45 46 41 55 4c 54 5f 46 49 4c  LITE_DEFAULT_FIL
0b40: 45 5f 50 45 52 4d 49 53 53 49 4f 4e 53 29 2c 0a  E_PERMISSIONS),.
0b50: 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54  #endif.#if SQLIT
0b60: 45 5f 44 45 46 41 55 4c 54 5f 46 4f 52 45 49 47  E_DEFAULT_FOREIG
0b70: 4e 5f 4b 45 59 53 0a 20 20 22 44 45 46 41 55 4c  N_KEYS.  "DEFAUL
0b80: 54 5f 46 4f 52 45 49 47 4e 5f 4b 45 59 53 22 2c  T_FOREIGN_KEYS",
0b90: 0a 23 65 6e 64 69 66 0a 23 69 66 64 65 66 20 53  .#endif.#ifdef S
0ba0: 51 4c 49 54 45 5f 44 45 46 41 55 4c 54 5f 4a 4f  QLITE_DEFAULT_JO
0bb0: 55 52 4e 41 4c 5f 53 49 5a 45 5f 4c 49 4d 49 54  URNAL_SIZE_LIMIT
0bc0: 0a 20 20 22 44 45 46 41 55 4c 54 5f 4a 4f 55 52  .  "DEFAULT_JOUR
0bd0: 4e 41 4c 5f 53 49 5a 45 5f 4c 49 4d 49 54 3d 22  NAL_SIZE_LIMIT="
0be0: 20 43 54 49 4d 45 4f 50 54 5f 56 41 4c 28 53 51   CTIMEOPT_VAL(SQ
0bf0: 4c 49 54 45 5f 44 45 46 41 55 4c 54 5f 4a 4f 55  LITE_DEFAULT_JOU
0c00: 52 4e 41 4c 5f 53 49 5a 45 5f 4c 49 4d 49 54 29  RNAL_SIZE_LIMIT)
0c10: 2c 0a 23 65 6e 64 69 66 0a 23 69 66 64 65 66 20  ,.#endif.#ifdef 
0c20: 53 51 4c 49 54 45 5f 44 45 46 41 55 4c 54 5f 4c  SQLITE_DEFAULT_L
0c30: 4f 43 4b 49 4e 47 5f 4d 4f 44 45 0a 20 20 22 44  OCKING_MODE.  "D
0c40: 45 46 41 55 4c 54 5f 4c 4f 43 4b 49 4e 47 5f 4d  EFAULT_LOCKING_M
0c50: 4f 44 45 3d 22 20 43 54 49 4d 45 4f 50 54 5f 56  ODE=" CTIMEOPT_V
0c60: 41 4c 28 53 51 4c 49 54 45 5f 44 45 46 41 55 4c  AL(SQLITE_DEFAUL
0c70: 54 5f 4c 4f 43 4b 49 4e 47 5f 4d 4f 44 45 29 2c  T_LOCKING_MODE),
0c80: 0a 23 65 6e 64 69 66 0a 23 69 66 64 65 66 20 53  .#endif.#ifdef S
0c90: 51 4c 49 54 45 5f 44 45 46 41 55 4c 54 5f 4c 4f  QLITE_DEFAULT_LO
0ca0: 4f 4b 41 53 49 44 45 0a 20 20 22 44 45 46 41 55  OKASIDE.  "DEFAU
0cb0: 4c 54 5f 4c 4f 4f 4b 41 53 49 44 45 3d 22 20 43  LT_LOOKASIDE=" C
0cc0: 54 49 4d 45 4f 50 54 5f 56 41 4c 28 53 51 4c 49  TIMEOPT_VAL(SQLI
0cd0: 54 45 5f 44 45 46 41 55 4c 54 5f 4c 4f 4f 4b 41  TE_DEFAULT_LOOKA
0ce0: 53 49 44 45 29 2c 0a 23 65 6e 64 69 66 0a 23 69  SIDE),.#endif.#i
0cf0: 66 20 53 51 4c 49 54 45 5f 44 45 46 41 55 4c 54  f SQLITE_DEFAULT
0d00: 5f 4d 45 4d 53 54 41 54 55 53 0a 20 20 22 44 45  _MEMSTATUS.  "DE
0d10: 46 41 55 4c 54 5f 4d 45 4d 53 54 41 54 55 53 22  FAULT_MEMSTATUS"
0d20: 2c 0a 23 65 6e 64 69 66 0a 23 69 66 64 65 66 20  ,.#endif.#ifdef 
0d30: 53 51 4c 49 54 45 5f 44 45 46 41 55 4c 54 5f 4d  SQLITE_DEFAULT_M
0d40: 4d 41 50 5f 53 49 5a 45 0a 20 20 22 44 45 46 41  MAP_SIZE.  "DEFA
0d50: 55 4c 54 5f 4d 4d 41 50 5f 53 49 5a 45 3d 22 20  ULT_MMAP_SIZE=" 
0d60: 43 54 49 4d 45 4f 50 54 5f 56 41 4c 28 53 51 4c  CTIMEOPT_VAL(SQL
0d70: 49 54 45 5f 44 45 46 41 55 4c 54 5f 4d 4d 41 50  ITE_DEFAULT_MMAP
0d80: 5f 53 49 5a 45 29 2c 0a 23 65 6e 64 69 66 0a 23  _SIZE),.#endif.#
0d90: 69 66 64 65 66 20 53 51 4c 49 54 45 5f 44 45 46  ifdef SQLITE_DEF
0da0: 41 55 4c 54 5f 50 41 47 45 5f 53 49 5a 45 0a 20  AULT_PAGE_SIZE. 
0db0: 20 22 44 45 46 41 55 4c 54 5f 50 41 47 45 5f 53   "DEFAULT_PAGE_S
0dc0: 49 5a 45 3d 22 20 43 54 49 4d 45 4f 50 54 5f 56  IZE=" CTIMEOPT_V
0dd0: 41 4c 28 53 51 4c 49 54 45 5f 44 45 46 41 55 4c  AL(SQLITE_DEFAUL
0de0: 54 5f 50 41 47 45 5f 53 49 5a 45 29 2c 0a 23 65  T_PAGE_SIZE),.#e
0df0: 6e 64 69 66 0a 23 69 66 64 65 66 20 53 51 4c 49  ndif.#ifdef SQLI
0e00: 54 45 5f 44 45 46 41 55 4c 54 5f 50 43 41 43 48  TE_DEFAULT_PCACH
0e10: 45 5f 49 4e 49 54 53 5a 0a 20 20 22 44 45 46 41  E_INITSZ.  "DEFA
0e20: 55 4c 54 5f 50 43 41 43 48 45 5f 49 4e 49 54 53  ULT_PCACHE_INITS
0e30: 5a 3d 22 20 43 54 49 4d 45 4f 50 54 5f 56 41 4c  Z=" CTIMEOPT_VAL
0e40: 28 53 51 4c 49 54 45 5f 44 45 46 41 55 4c 54 5f  (SQLITE_DEFAULT_
0e50: 50 43 41 43 48 45 5f 49 4e 49 54 53 5a 29 2c 0a  PCACHE_INITSZ),.
0e60: 23 65 6e 64 69 66 0a 23 69 66 64 65 66 20 53 51  #endif.#ifdef SQ
0e70: 4c 49 54 45 5f 44 45 46 41 55 4c 54 5f 50 52 4f  LITE_DEFAULT_PRO
0e80: 58 59 44 49 52 5f 50 45 52 4d 49 53 53 49 4f 4e  XYDIR_PERMISSION
0e90: 53 0a 20 20 22 44 45 46 41 55 4c 54 5f 50 52 4f  S.  "DEFAULT_PRO
0ea0: 58 59 44 49 52 5f 50 45 52 4d 49 53 53 49 4f 4e  XYDIR_PERMISSION
0eb0: 53 3d 22 20 43 54 49 4d 45 4f 50 54 5f 56 41 4c  S=" CTIMEOPT_VAL
0ec0: 28 53 51 4c 49 54 45 5f 44 45 46 41 55 4c 54 5f  (SQLITE_DEFAULT_
0ed0: 50 52 4f 58 59 44 49 52 5f 50 45 52 4d 49 53 53  PROXYDIR_PERMISS
0ee0: 49 4f 4e 53 29 2c 0a 23 65 6e 64 69 66 0a 23 69  IONS),.#endif.#i
0ef0: 66 20 53 51 4c 49 54 45 5f 44 45 46 41 55 4c 54  f SQLITE_DEFAULT
0f00: 5f 52 45 43 55 52 53 49 56 45 5f 54 52 49 47 47  _RECURSIVE_TRIGG
0f10: 45 52 53 0a 20 20 22 44 45 46 41 55 4c 54 5f 52  ERS.  "DEFAULT_R
0f20: 45 43 55 52 53 49 56 45 5f 54 52 49 47 47 45 52  ECURSIVE_TRIGGER
0f30: 53 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 64 65  S",.#endif.#ifde
0f40: 66 20 53 51 4c 49 54 45 5f 44 45 46 41 55 4c 54  f SQLITE_DEFAULT
0f50: 5f 52 4f 57 45 53 54 0a 20 20 22 44 45 46 41 55  _ROWEST.  "DEFAU
0f60: 4c 54 5f 52 4f 57 45 53 54 3d 22 20 43 54 49 4d  LT_ROWEST=" CTIM
0f70: 45 4f 50 54 5f 56 41 4c 28 53 51 4c 49 54 45 5f  EOPT_VAL(SQLITE_
0f80: 44 45 46 41 55 4c 54 5f 52 4f 57 45 53 54 29 2c  DEFAULT_ROWEST),
0f90: 0a 23 65 6e 64 69 66 0a 23 69 66 64 65 66 20 53  .#endif.#ifdef S
0fa0: 51 4c 49 54 45 5f 44 45 46 41 55 4c 54 5f 53 45  QLITE_DEFAULT_SE
0fb0: 43 54 4f 52 5f 53 49 5a 45 0a 20 20 22 44 45 46  CTOR_SIZE.  "DEF
0fc0: 41 55 4c 54 5f 53 45 43 54 4f 52 5f 53 49 5a 45  AULT_SECTOR_SIZE
0fd0: 3d 22 20 43 54 49 4d 45 4f 50 54 5f 56 41 4c 28  =" CTIMEOPT_VAL(
0fe0: 53 51 4c 49 54 45 5f 44 45 46 41 55 4c 54 5f 53  SQLITE_DEFAULT_S
0ff0: 45 43 54 4f 52 5f 53 49 5a 45 29 2c 0a 23 65 6e  ECTOR_SIZE),.#en
1000: 64 69 66 0a 23 69 66 64 65 66 20 53 51 4c 49 54  dif.#ifdef SQLIT
1010: 45 5f 44 45 46 41 55 4c 54 5f 53 59 4e 43 48 52  E_DEFAULT_SYNCHR
1020: 4f 4e 4f 55 53 0a 20 20 22 44 45 46 41 55 4c 54  ONOUS.  "DEFAULT
1030: 5f 53 59 4e 43 48 52 4f 4e 4f 55 53 3d 22 20 43  _SYNCHRONOUS=" C
1040: 54 49 4d 45 4f 50 54 5f 56 41 4c 28 53 51 4c 49  TIMEOPT_VAL(SQLI
1050: 54 45 5f 44 45 46 41 55 4c 54 5f 53 59 4e 43 48  TE_DEFAULT_SYNCH
1060: 52 4f 4e 4f 55 53 29 2c 0a 23 65 6e 64 69 66 0a  RONOUS),.#endif.
1070: 23 69 66 64 65 66 20 53 51 4c 49 54 45 5f 44 45  #ifdef SQLITE_DE
1080: 46 41 55 4c 54 5f 57 41 4c 5f 41 55 54 4f 43 48  FAULT_WAL_AUTOCH
1090: 45 43 4b 50 4f 49 4e 54 0a 20 20 22 44 45 46 41  ECKPOINT.  "DEFA
10a0: 55 4c 54 5f 57 41 4c 5f 41 55 54 4f 43 48 45 43  ULT_WAL_AUTOCHEC
10b0: 4b 50 4f 49 4e 54 3d 22 20 43 54 49 4d 45 4f 50  KPOINT=" CTIMEOP
10c0: 54 5f 56 41 4c 28 53 51 4c 49 54 45 5f 44 45 46  T_VAL(SQLITE_DEF
10d0: 41 55 4c 54 5f 57 41 4c 5f 41 55 54 4f 43 48 45  AULT_WAL_AUTOCHE
10e0: 43 4b 50 4f 49 4e 54 29 2c 0a 23 65 6e 64 69 66  CKPOINT),.#endif
10f0: 0a 23 69 66 64 65 66 20 53 51 4c 49 54 45 5f 44  .#ifdef SQLITE_D
1100: 45 46 41 55 4c 54 5f 57 41 4c 5f 53 59 4e 43 48  EFAULT_WAL_SYNCH
1110: 52 4f 4e 4f 55 53 0a 20 20 22 44 45 46 41 55 4c  RONOUS.  "DEFAUL
1120: 54 5f 57 41 4c 5f 53 59 4e 43 48 52 4f 4e 4f 55  T_WAL_SYNCHRONOU
1130: 53 3d 22 20 43 54 49 4d 45 4f 50 54 5f 56 41 4c  S=" CTIMEOPT_VAL
1140: 28 53 51 4c 49 54 45 5f 44 45 46 41 55 4c 54 5f  (SQLITE_DEFAULT_
1150: 57 41 4c 5f 53 59 4e 43 48 52 4f 4e 4f 55 53 29  WAL_SYNCHRONOUS)
1160: 2c 0a 23 65 6e 64 69 66 0a 23 69 66 64 65 66 20  ,.#endif.#ifdef 
1170: 53 51 4c 49 54 45 5f 44 45 46 41 55 4c 54 5f 57  SQLITE_DEFAULT_W
1180: 4f 52 4b 45 52 5f 54 48 52 45 41 44 53 0a 20 20  ORKER_THREADS.  
1190: 22 44 45 46 41 55 4c 54 5f 57 4f 52 4b 45 52 5f  "DEFAULT_WORKER_
11a0: 54 48 52 45 41 44 53 3d 22 20 43 54 49 4d 45 4f  THREADS=" CTIMEO
11b0: 50 54 5f 56 41 4c 28 53 51 4c 49 54 45 5f 44 45  PT_VAL(SQLITE_DE
11c0: 46 41 55 4c 54 5f 57 4f 52 4b 45 52 5f 54 48 52  FAULT_WORKER_THR
11d0: 45 41 44 53 29 2c 0a 23 65 6e 64 69 66 0a 23 69  EADS),.#endif.#i
11e0: 66 20 53 51 4c 49 54 45 5f 44 49 52 45 43 54 5f  f SQLITE_DIRECT_
11f0: 4f 56 45 52 46 4c 4f 57 5f 52 45 41 44 0a 20 20  OVERFLOW_READ.  
1200: 22 44 49 52 45 43 54 5f 4f 56 45 52 46 4c 4f 57  "DIRECT_OVERFLOW
1210: 5f 52 45 41 44 22 2c 0a 23 65 6e 64 69 66 0a 23  _READ",.#endif.#
1220: 69 66 20 53 51 4c 49 54 45 5f 44 49 53 41 42 4c  if SQLITE_DISABL
1230: 45 5f 44 49 52 53 59 4e 43 0a 20 20 22 44 49 53  E_DIRSYNC.  "DIS
1240: 41 42 4c 45 5f 44 49 52 53 59 4e 43 22 2c 0a 23  ABLE_DIRSYNC",.#
1250: 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45  endif.#if SQLITE
1260: 5f 44 49 53 41 42 4c 45 5f 46 54 53 33 5f 55 4e  _DISABLE_FTS3_UN
1270: 49 43 4f 44 45 0a 20 20 22 44 49 53 41 42 4c 45  ICODE.  "DISABLE
1280: 5f 46 54 53 33 5f 55 4e 49 43 4f 44 45 22 2c 0a  _FTS3_UNICODE",.
1290: 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54  #endif.#if SQLIT
12a0: 45 5f 44 49 53 41 42 4c 45 5f 46 54 53 34 5f 44  E_DISABLE_FTS4_D
12b0: 45 46 45 52 52 45 44 0a 20 20 22 44 49 53 41 42  EFERRED.  "DISAB
12c0: 4c 45 5f 46 54 53 34 5f 44 45 46 45 52 52 45 44  LE_FTS4_DEFERRED
12d0: 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51  ",.#endif.#if SQ
12e0: 4c 49 54 45 5f 44 49 53 41 42 4c 45 5f 49 4e 54  LITE_DISABLE_INT
12f0: 52 49 4e 53 49 43 0a 20 20 22 44 49 53 41 42 4c  RINSIC.  "DISABL
1300: 45 5f 49 4e 54 52 49 4e 53 49 43 22 2c 0a 23 65  E_INTRINSIC",.#e
1310: 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f  ndif.#if SQLITE_
1320: 44 49 53 41 42 4c 45 5f 4c 46 53 0a 20 20 22 44  DISABLE_LFS.  "D
1330: 49 53 41 42 4c 45 5f 4c 46 53 22 2c 0a 23 65 6e  ISABLE_LFS",.#en
1340: 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 44  dif.#if SQLITE_D
1350: 49 53 41 42 4c 45 5f 50 41 47 45 43 41 43 48 45  ISABLE_PAGECACHE
1360: 5f 4f 56 45 52 46 4c 4f 57 5f 53 54 41 54 53 0a  _OVERFLOW_STATS.
1370: 20 20 22 44 49 53 41 42 4c 45 5f 50 41 47 45 43    "DISABLE_PAGEC
1380: 41 43 48 45 5f 4f 56 45 52 46 4c 4f 57 5f 53 54  ACHE_OVERFLOW_ST
1390: 41 54 53 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66  ATS",.#endif.#if
13a0: 20 53 51 4c 49 54 45 5f 44 49 53 41 42 4c 45 5f   SQLITE_DISABLE_
13b0: 53 4b 49 50 41 48 45 41 44 5f 44 49 53 54 49 4e  SKIPAHEAD_DISTIN
13c0: 43 54 0a 20 20 22 44 49 53 41 42 4c 45 5f 53 4b  CT.  "DISABLE_SK
13d0: 49 50 41 48 45 41 44 5f 44 49 53 54 49 4e 43 54  IPAHEAD_DISTINCT
13e0: 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 64 65 66  ",.#endif.#ifdef
13f0: 20 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 38   SQLITE_ENABLE_8
1400: 5f 33 5f 4e 41 4d 45 53 0a 20 20 22 45 4e 41 42  _3_NAMES.  "ENAB
1410: 4c 45 5f 38 5f 33 5f 4e 41 4d 45 53 3d 22 20 43  LE_8_3_NAMES=" C
1420: 54 49 4d 45 4f 50 54 5f 56 41 4c 28 53 51 4c 49  TIMEOPT_VAL(SQLI
1430: 54 45 5f 45 4e 41 42 4c 45 5f 38 5f 33 5f 4e 41  TE_ENABLE_8_3_NA
1440: 4d 45 53 29 2c 0a 23 65 6e 64 69 66 0a 23 69 66  MES),.#endif.#if
1450: 20 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 41   SQLITE_ENABLE_A
1460: 50 49 5f 41 52 4d 4f 52 0a 20 20 22 45 4e 41 42  PI_ARMOR.  "ENAB
1470: 4c 45 5f 41 50 49 5f 41 52 4d 4f 52 22 2c 0a 23  LE_API_ARMOR",.#
1480: 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45  endif.#if SQLITE
1490: 5f 45 4e 41 42 4c 45 5f 41 54 4f 4d 49 43 5f 57  _ENABLE_ATOMIC_W
14a0: 52 49 54 45 0a 20 20 22 45 4e 41 42 4c 45 5f 41  RITE.  "ENABLE_A
14b0: 54 4f 4d 49 43 5f 57 52 49 54 45 22 2c 0a 23 65  TOMIC_WRITE",.#e
14c0: 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f  ndif.#if SQLITE_
14d0: 45 4e 41 42 4c 45 5f 42 41 54 43 48 5f 41 54 4f  ENABLE_BATCH_ATO
14e0: 4d 49 43 5f 57 52 49 54 45 0a 20 20 22 45 4e 41  MIC_WRITE.  "ENA
14f0: 42 4c 45 5f 42 41 54 43 48 5f 41 54 4f 4d 49 43  BLE_BATCH_ATOMIC
1500: 5f 57 52 49 54 45 22 2c 0a 23 65 6e 64 69 66 0a  _WRITE",.#endif.
1510: 23 69 66 20 53 51 4c 49 54 45 5f 45 4e 41 42 4c  #if SQLITE_ENABL
1520: 45 5f 43 45 52 4f 44 0a 20 20 22 45 4e 41 42 4c  E_CEROD.  "ENABL
1530: 45 5f 43 45 52 4f 44 22 2c 0a 23 65 6e 64 69 66  E_CEROD",.#endif
1540: 0a 23 69 66 20 53 51 4c 49 54 45 5f 45 4e 41 42  .#if SQLITE_ENAB
1550: 4c 45 5f 43 4f 4c 55 4d 4e 5f 4d 45 54 41 44 41  LE_COLUMN_METADA
1560: 54 41 0a 20 20 22 45 4e 41 42 4c 45 5f 43 4f 4c  TA.  "ENABLE_COL
1570: 55 4d 4e 5f 4d 45 54 41 44 41 54 41 22 2c 0a 23  UMN_METADATA",.#
1580: 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45  endif.#if SQLITE
1590: 5f 45 4e 41 42 4c 45 5f 43 4f 4c 55 4d 4e 5f 55  _ENABLE_COLUMN_U
15a0: 53 45 44 5f 4d 41 53 4b 0a 20 20 22 45 4e 41 42  SED_MASK.  "ENAB
15b0: 4c 45 5f 43 4f 4c 55 4d 4e 5f 55 53 45 44 5f 4d  LE_COLUMN_USED_M
15c0: 41 53 4b 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66  ASK",.#endif.#if
15d0: 20 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 43   SQLITE_ENABLE_C
15e0: 4f 53 54 4d 55 4c 54 0a 20 20 22 45 4e 41 42 4c  OSTMULT.  "ENABL
15f0: 45 5f 43 4f 53 54 4d 55 4c 54 22 2c 0a 23 65 6e  E_COSTMULT",.#en
1600: 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 45  dif.#if SQLITE_E
1610: 4e 41 42 4c 45 5f 43 55 52 53 4f 52 5f 48 49 4e  NABLE_CURSOR_HIN
1620: 54 53 0a 20 20 22 45 4e 41 42 4c 45 5f 43 55 52  TS.  "ENABLE_CUR
1630: 53 4f 52 5f 48 49 4e 54 53 22 2c 0a 23 65 6e 64  SOR_HINTS",.#end
1640: 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 45 4e  if.#if SQLITE_EN
1650: 41 42 4c 45 5f 44 42 53 54 41 54 5f 56 54 41 42  ABLE_DBSTAT_VTAB
1660: 0a 20 20 22 45 4e 41 42 4c 45 5f 44 42 53 54 41  .  "ENABLE_DBSTA
1670: 54 5f 56 54 41 42 22 2c 0a 23 65 6e 64 69 66 0a  T_VTAB",.#endif.
1680: 23 69 66 20 53 51 4c 49 54 45 5f 45 4e 41 42 4c  #if SQLITE_ENABL
1690: 45 5f 45 58 50 45 4e 53 49 56 45 5f 41 53 53 45  E_EXPENSIVE_ASSE
16a0: 52 54 0a 20 20 22 45 4e 41 42 4c 45 5f 45 58 50  RT.  "ENABLE_EXP
16b0: 45 4e 53 49 56 45 5f 41 53 53 45 52 54 22 2c 0a  ENSIVE_ASSERT",.
16c0: 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54  #endif.#if SQLIT
16d0: 45 5f 45 4e 41 42 4c 45 5f 46 54 53 31 0a 20 20  E_ENABLE_FTS1.  
16e0: 22 45 4e 41 42 4c 45 5f 46 54 53 31 22 2c 0a 23  "ENABLE_FTS1",.#
16f0: 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45  endif.#if SQLITE
1700: 5f 45 4e 41 42 4c 45 5f 46 54 53 32 0a 20 20 22  _ENABLE_FTS2.  "
1710: 45 4e 41 42 4c 45 5f 46 54 53 32 22 2c 0a 23 65  ENABLE_FTS2",.#e
1720: 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f  ndif.#if SQLITE_
1730: 45 4e 41 42 4c 45 5f 46 54 53 33 0a 20 20 22 45  ENABLE_FTS3.  "E
1740: 4e 41 42 4c 45 5f 46 54 53 33 22 2c 0a 23 65 6e  NABLE_FTS3",.#en
1750: 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 45  dif.#if SQLITE_E
1760: 4e 41 42 4c 45 5f 46 54 53 33 5f 50 41 52 45 4e  NABLE_FTS3_PAREN
1770: 54 48 45 53 49 53 0a 20 20 22 45 4e 41 42 4c 45  THESIS.  "ENABLE
1780: 5f 46 54 53 33 5f 50 41 52 45 4e 54 48 45 53 49  _FTS3_PARENTHESI
1790: 53 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53  S",.#endif.#if S
17a0: 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 46 54 53  QLITE_ENABLE_FTS
17b0: 33 5f 54 4f 4b 45 4e 49 5a 45 52 0a 20 20 22 45  3_TOKENIZER.  "E
17c0: 4e 41 42 4c 45 5f 46 54 53 33 5f 54 4f 4b 45 4e  NABLE_FTS3_TOKEN
17d0: 49 5a 45 52 22 2c 0a 23 65 6e 64 69 66 0a 23 69  IZER",.#endif.#i
17e0: 66 20 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f  f SQLITE_ENABLE_
17f0: 46 54 53 34 0a 20 20 22 45 4e 41 42 4c 45 5f 46  FTS4.  "ENABLE_F
1800: 54 53 34 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66  TS4",.#endif.#if
1810: 20 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 46   SQLITE_ENABLE_F
1820: 54 53 35 0a 20 20 22 45 4e 41 42 4c 45 5f 46 54  TS5.  "ENABLE_FT
1830: 53 35 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20  S5",.#endif.#if 
1840: 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 48 49  SQLITE_ENABLE_HI
1850: 44 44 45 4e 5f 43 4f 4c 55 4d 4e 53 0a 20 20 22  DDEN_COLUMNS.  "
1860: 45 4e 41 42 4c 45 5f 48 49 44 44 45 4e 5f 43 4f  ENABLE_HIDDEN_CO
1870: 4c 55 4d 4e 53 22 2c 0a 23 65 6e 64 69 66 0a 23  LUMNS",.#endif.#
1880: 69 66 20 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45  if SQLITE_ENABLE
1890: 5f 49 43 55 0a 20 20 22 45 4e 41 42 4c 45 5f 49  _ICU.  "ENABLE_I
18a0: 43 55 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20  CU",.#endif.#if 
18b0: 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 49 4f  SQLITE_ENABLE_IO
18c0: 54 52 41 43 45 0a 20 20 22 45 4e 41 42 4c 45 5f  TRACE.  "ENABLE_
18d0: 49 4f 54 52 41 43 45 22 2c 0a 23 65 6e 64 69 66  IOTRACE",.#endif
18e0: 0a 23 69 66 20 53 51 4c 49 54 45 5f 45 4e 41 42  .#if SQLITE_ENAB
18f0: 4c 45 5f 4a 53 4f 4e 31 0a 20 20 22 45 4e 41 42  LE_JSON1.  "ENAB
1900: 4c 45 5f 4a 53 4f 4e 31 22 2c 0a 23 65 6e 64 69  LE_JSON1",.#endi
1910: 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 45 4e 41  f.#if SQLITE_ENA
1920: 42 4c 45 5f 4c 4f 41 44 5f 45 58 54 45 4e 53 49  BLE_LOAD_EXTENSI
1930: 4f 4e 0a 20 20 22 45 4e 41 42 4c 45 5f 4c 4f 41  ON.  "ENABLE_LOA
1940: 44 5f 45 58 54 45 4e 53 49 4f 4e 22 2c 0a 23 65  D_EXTENSION",.#e
1950: 6e 64 69 66 0a 23 69 66 64 65 66 20 53 51 4c 49  ndif.#ifdef SQLI
1960: 54 45 5f 45 4e 41 42 4c 45 5f 4c 4f 43 4b 49 4e  TE_ENABLE_LOCKIN
1970: 47 5f 53 54 59 4c 45 0a 20 20 22 45 4e 41 42 4c  G_STYLE.  "ENABL
1980: 45 5f 4c 4f 43 4b 49 4e 47 5f 53 54 59 4c 45 3d  E_LOCKING_STYLE=
1990: 22 20 43 54 49 4d 45 4f 50 54 5f 56 41 4c 28 53  " CTIMEOPT_VAL(S
19a0: 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 4c 4f 43  QLITE_ENABLE_LOC
19b0: 4b 49 4e 47 5f 53 54 59 4c 45 29 2c 0a 23 65 6e  KING_STYLE),.#en
19c0: 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 45  dif.#if SQLITE_E
19d0: 4e 41 42 4c 45 5f 4d 45 4d 4f 52 59 5f 4d 41 4e  NABLE_MEMORY_MAN
19e0: 41 47 45 4d 45 4e 54 0a 20 20 22 45 4e 41 42 4c  AGEMENT.  "ENABL
19f0: 45 5f 4d 45 4d 4f 52 59 5f 4d 41 4e 41 47 45 4d  E_MEMORY_MANAGEM
1a00: 45 4e 54 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66  ENT",.#endif.#if
1a10: 20 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 4d   SQLITE_ENABLE_M
1a20: 45 4d 53 59 53 33 0a 20 20 22 45 4e 41 42 4c 45  EMSYS3.  "ENABLE
1a30: 5f 4d 45 4d 53 59 53 33 22 2c 0a 23 65 6e 64 69  _MEMSYS3",.#endi
1a40: 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 45 4e 41  f.#if SQLITE_ENA
1a50: 42 4c 45 5f 4d 45 4d 53 59 53 35 0a 20 20 22 45  BLE_MEMSYS5.  "E
1a60: 4e 41 42 4c 45 5f 4d 45 4d 53 59 53 35 22 2c 0a  NABLE_MEMSYS5",.
1a70: 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54  #endif.#if SQLIT
1a80: 45 5f 45 4e 41 42 4c 45 5f 4d 55 4c 54 49 50 4c  E_ENABLE_MULTIPL
1a90: 45 58 0a 20 20 22 45 4e 41 42 4c 45 5f 4d 55 4c  EX.  "ENABLE_MUL
1aa0: 54 49 50 4c 45 58 22 2c 0a 23 65 6e 64 69 66 0a  TIPLEX",.#endif.
1ab0: 23 69 66 20 53 51 4c 49 54 45 5f 45 4e 41 42 4c  #if SQLITE_ENABL
1ac0: 45 5f 4e 55 4c 4c 5f 54 52 49 4d 0a 20 20 22 45  E_NULL_TRIM.  "E
1ad0: 4e 41 42 4c 45 5f 4e 55 4c 4c 5f 54 52 49 4d 22  NABLE_NULL_TRIM"
1ae0: 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c  ,.#endif.#if SQL
1af0: 49 54 45 5f 45 4e 41 42 4c 45 5f 4f 56 45 52 53  ITE_ENABLE_OVERS
1b00: 49 5a 45 5f 43 45 4c 4c 5f 43 48 45 43 4b 0a 20  IZE_CELL_CHECK. 
1b10: 20 22 45 4e 41 42 4c 45 5f 4f 56 45 52 53 49 5a   "ENABLE_OVERSIZ
1b20: 45 5f 43 45 4c 4c 5f 43 48 45 43 4b 22 2c 0a 23  E_CELL_CHECK",.#
1b30: 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45  endif.#if SQLITE
1b40: 5f 45 4e 41 42 4c 45 5f 50 52 45 55 50 44 41 54  _ENABLE_PREUPDAT
1b50: 45 5f 48 4f 4f 4b 0a 20 20 22 45 4e 41 42 4c 45  E_HOOK.  "ENABLE
1b60: 5f 50 52 45 55 50 44 41 54 45 5f 48 4f 4f 4b 22  _PREUPDATE_HOOK"
1b70: 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c  ,.#endif.#if SQL
1b80: 49 54 45 5f 45 4e 41 42 4c 45 5f 51 50 53 47 0a  ITE_ENABLE_QPSG.
1b90: 20 20 22 45 4e 41 42 4c 45 5f 51 50 53 47 22 2c    "ENABLE_QPSG",
1ba0: 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49  .#endif.#if SQLI
1bb0: 54 45 5f 45 4e 41 42 4c 45 5f 52 42 55 0a 20 20  TE_ENABLE_RBU.  
1bc0: 22 45 4e 41 42 4c 45 5f 52 42 55 22 2c 0a 23 65  "ENABLE_RBU",.#e
1bd0: 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f  ndif.#if SQLITE_
1be0: 45 4e 41 42 4c 45 5f 52 54 52 45 45 0a 20 20 22  ENABLE_RTREE.  "
1bf0: 45 4e 41 42 4c 45 5f 52 54 52 45 45 22 2c 0a 23  ENABLE_RTREE",.#
1c00: 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45  endif.#if SQLITE
1c10: 5f 45 4e 41 42 4c 45 5f 53 45 4c 45 43 54 54 52  _ENABLE_SELECTTR
1c20: 41 43 45 0a 20 20 22 45 4e 41 42 4c 45 5f 53 45  ACE.  "ENABLE_SE
1c30: 4c 45 43 54 54 52 41 43 45 22 2c 0a 23 65 6e 64  LECTTRACE",.#end
1c40: 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 45 4e  if.#if SQLITE_EN
1c50: 41 42 4c 45 5f 53 45 53 53 49 4f 4e 0a 20 20 22  ABLE_SESSION.  "
1c60: 45 4e 41 42 4c 45 5f 53 45 53 53 49 4f 4e 22 2c  ENABLE_SESSION",
1c70: 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49  .#endif.#if SQLI
1c80: 54 45 5f 45 4e 41 42 4c 45 5f 53 4e 41 50 53 48  TE_ENABLE_SNAPSH
1c90: 4f 54 0a 20 20 22 45 4e 41 42 4c 45 5f 53 4e 41  OT.  "ENABLE_SNA
1ca0: 50 53 48 4f 54 22 2c 0a 23 65 6e 64 69 66 0a 23  PSHOT",.#endif.#
1cb0: 69 66 20 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45  if SQLITE_ENABLE
1cc0: 5f 53 51 4c 4c 4f 47 0a 20 20 22 45 4e 41 42 4c  _SQLLOG.  "ENABL
1cd0: 45 5f 53 51 4c 4c 4f 47 22 2c 0a 23 65 6e 64 69  E_SQLLOG",.#endi
1ce0: 66 0a 23 69 66 20 64 65 66 69 6e 65 64 28 53 51  f.#if defined(SQ
1cf0: 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 53 54 41 54  LITE_ENABLE_STAT
1d00: 34 29 0a 20 20 22 45 4e 41 42 4c 45 5f 53 54 41  4).  "ENABLE_STA
1d10: 54 34 22 2c 0a 23 65 6c 69 66 20 64 65 66 69 6e  T4",.#elif defin
1d20: 65 64 28 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45  ed(SQLITE_ENABLE
1d30: 5f 53 54 41 54 33 29 0a 20 20 22 45 4e 41 42 4c  _STAT3).  "ENABL
1d40: 45 5f 53 54 41 54 33 22 2c 0a 23 65 6e 64 69 66  E_STAT3",.#endif
1d50: 0a 23 69 66 20 53 51 4c 49 54 45 5f 45 4e 41 42  .#if SQLITE_ENAB
1d60: 4c 45 5f 53 54 4d 54 56 54 41 42 0a 20 20 22 45  LE_STMTVTAB.  "E
1d70: 4e 41 42 4c 45 5f 53 54 4d 54 56 54 41 42 22 2c  NABLE_STMTVTAB",
1d80: 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49  .#endif.#if SQLI
1d90: 54 45 5f 45 4e 41 42 4c 45 5f 53 54 4d 54 5f 53  TE_ENABLE_STMT_S
1da0: 43 41 4e 53 54 41 54 55 53 0a 20 20 22 45 4e 41  CANSTATUS.  "ENA
1db0: 42 4c 45 5f 53 54 4d 54 5f 53 43 41 4e 53 54 41  BLE_STMT_SCANSTA
1dc0: 54 55 53 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66  TUS",.#endif.#if
1dd0: 20 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 55   SQLITE_ENABLE_U
1de0: 4e 4b 4e 4f 57 4e 5f 53 51 4c 5f 46 55 4e 43 54  NKNOWN_SQL_FUNCT
1df0: 49 4f 4e 0a 20 20 22 45 4e 41 42 4c 45 5f 55 4e  ION.  "ENABLE_UN
1e00: 4b 4e 4f 57 4e 5f 53 51 4c 5f 46 55 4e 43 54 49  KNOWN_SQL_FUNCTI
1e10: 4f 4e 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20  ON",.#endif.#if 
1e20: 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 55 4e  SQLITE_ENABLE_UN
1e30: 4c 4f 43 4b 5f 4e 4f 54 49 46 59 0a 20 20 22 45  LOCK_NOTIFY.  "E
1e40: 4e 41 42 4c 45 5f 55 4e 4c 4f 43 4b 5f 4e 4f 54  NABLE_UNLOCK_NOT
1e50: 49 46 59 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66  IFY",.#endif.#if
1e60: 20 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 55   SQLITE_ENABLE_U
1e70: 50 44 41 54 45 5f 44 45 4c 45 54 45 5f 4c 49 4d  PDATE_DELETE_LIM
1e80: 49 54 0a 20 20 22 45 4e 41 42 4c 45 5f 55 50 44  IT.  "ENABLE_UPD
1e90: 41 54 45 5f 44 45 4c 45 54 45 5f 4c 49 4d 49 54  ATE_DELETE_LIMIT
1ea0: 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51  ",.#endif.#if SQ
1eb0: 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 55 52 49 5f  LITE_ENABLE_URI_
1ec0: 30 30 5f 45 52 52 4f 52 0a 20 20 22 45 4e 41 42  00_ERROR.  "ENAB
1ed0: 4c 45 5f 55 52 49 5f 30 30 5f 45 52 52 4f 52 22  LE_URI_00_ERROR"
1ee0: 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c  ,.#endif.#if SQL
1ef0: 49 54 45 5f 45 4e 41 42 4c 45 5f 56 46 53 54 52  ITE_ENABLE_VFSTR
1f00: 41 43 45 0a 20 20 22 45 4e 41 42 4c 45 5f 56 46  ACE.  "ENABLE_VF
1f10: 53 54 52 41 43 45 22 2c 0a 23 65 6e 64 69 66 0a  STRACE",.#endif.
1f20: 23 69 66 20 53 51 4c 49 54 45 5f 45 4e 41 42 4c  #if SQLITE_ENABL
1f30: 45 5f 57 48 45 52 45 54 52 41 43 45 0a 20 20 22  E_WHERETRACE.  "
1f40: 45 4e 41 42 4c 45 5f 57 48 45 52 45 54 52 41 43  ENABLE_WHERETRAC
1f50: 45 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53  E",.#endif.#if S
1f60: 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 5a 49 50  QLITE_ENABLE_ZIP
1f70: 56 46 53 0a 20 20 22 45 4e 41 42 4c 45 5f 5a 49  VFS.  "ENABLE_ZI
1f80: 50 56 46 53 22 2c 0a 23 65 6e 64 69 66 0a 23 69  PVFS",.#endif.#i
1f90: 66 20 53 51 4c 49 54 45 5f 45 58 50 4c 41 49 4e  f SQLITE_EXPLAIN
1fa0: 5f 45 53 54 49 4d 41 54 45 44 5f 52 4f 57 53 0a  _ESTIMATED_ROWS.
1fb0: 20 20 22 45 58 50 4c 41 49 4e 5f 45 53 54 49 4d    "EXPLAIN_ESTIM
1fc0: 41 54 45 44 5f 52 4f 57 53 22 2c 0a 23 65 6e 64  ATED_ROWS",.#end
1fd0: 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 45 58  if.#if SQLITE_EX
1fe0: 54 52 41 5f 49 46 4e 55 4c 4c 52 4f 57 0a 20 20  TRA_IFNULLROW.  
1ff0: 22 45 58 54 52 41 5f 49 46 4e 55 4c 4c 52 4f 57  "EXTRA_IFNULLROW
2000: 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 64 65 66  ",.#endif.#ifdef
2010: 20 53 51 4c 49 54 45 5f 45 58 54 52 41 5f 49 4e   SQLITE_EXTRA_IN
2020: 49 54 0a 20 20 22 45 58 54 52 41 5f 49 4e 49 54  IT.  "EXTRA_INIT
2030: 3d 22 20 43 54 49 4d 45 4f 50 54 5f 56 41 4c 28  =" CTIMEOPT_VAL(
2040: 53 51 4c 49 54 45 5f 45 58 54 52 41 5f 49 4e 49  SQLITE_EXTRA_INI
2050: 54 29 2c 0a 23 65 6e 64 69 66 0a 23 69 66 64 65  T),.#endif.#ifde
2060: 66 20 53 51 4c 49 54 45 5f 45 58 54 52 41 5f 53  f SQLITE_EXTRA_S
2070: 48 55 54 44 4f 57 4e 0a 20 20 22 45 58 54 52 41  HUTDOWN.  "EXTRA
2080: 5f 53 48 55 54 44 4f 57 4e 3d 22 20 43 54 49 4d  _SHUTDOWN=" CTIM
2090: 45 4f 50 54 5f 56 41 4c 28 53 51 4c 49 54 45 5f  EOPT_VAL(SQLITE_
20a0: 45 58 54 52 41 5f 53 48 55 54 44 4f 57 4e 29 2c  EXTRA_SHUTDOWN),
20b0: 0a 23 65 6e 64 69 66 0a 23 69 66 64 65 66 20 53  .#endif.#ifdef S
20c0: 51 4c 49 54 45 5f 46 54 53 33 5f 4d 41 58 5f 45  QLITE_FTS3_MAX_E
20d0: 58 50 52 5f 44 45 50 54 48 0a 20 20 22 46 54 53  XPR_DEPTH.  "FTS
20e0: 33 5f 4d 41 58 5f 45 58 50 52 5f 44 45 50 54 48  3_MAX_EXPR_DEPTH
20f0: 3d 22 20 43 54 49 4d 45 4f 50 54 5f 56 41 4c 28  =" CTIMEOPT_VAL(
2100: 53 51 4c 49 54 45 5f 46 54 53 33 5f 4d 41 58 5f  SQLITE_FTS3_MAX_
2110: 45 58 50 52 5f 44 45 50 54 48 29 2c 0a 23 65 6e  EXPR_DEPTH),.#en
2120: 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 46  dif.#if SQLITE_F
2130: 54 53 35 5f 45 4e 41 42 4c 45 5f 54 45 53 54 5f  TS5_ENABLE_TEST_
2140: 4d 49 0a 20 20 22 46 54 53 35 5f 45 4e 41 42 4c  MI.  "FTS5_ENABL
2150: 45 5f 54 45 53 54 5f 4d 49 22 2c 0a 23 65 6e 64  E_TEST_MI",.#end
2160: 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 46 54  if.#if SQLITE_FT
2170: 53 35 5f 4e 4f 5f 57 49 54 48 4f 55 54 5f 52 4f  S5_NO_WITHOUT_RO
2180: 57 49 44 0a 20 20 22 46 54 53 35 5f 4e 4f 5f 57  WID.  "FTS5_NO_W
2190: 49 54 48 4f 55 54 5f 52 4f 57 49 44 22 2c 0a 23  ITHOUT_ROWID",.#
21a0: 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45  endif.#if SQLITE
21b0: 5f 48 41 53 5f 43 4f 44 45 43 0a 20 20 22 48 41  _HAS_CODEC.  "HA
21c0: 53 5f 43 4f 44 45 43 22 2c 0a 23 65 6e 64 69 66  S_CODEC",.#endif
21d0: 0a 23 69 66 20 48 41 56 45 5f 49 53 4e 41 4e 20  .#if HAVE_ISNAN 
21e0: 7c 7c 20 53 51 4c 49 54 45 5f 48 41 56 45 5f 49  || SQLITE_HAVE_I
21f0: 53 4e 41 4e 0a 20 20 22 48 41 56 45 5f 49 53 4e  SNAN.  "HAVE_ISN
2200: 41 4e 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20  AN",.#endif.#if 
2210: 53 51 4c 49 54 45 5f 48 4f 4d 45 47 52 4f 57 4e  SQLITE_HOMEGROWN
2220: 5f 52 45 43 55 52 53 49 56 45 5f 4d 55 54 45 58  _RECURSIVE_MUTEX
2230: 0a 20 20 22 48 4f 4d 45 47 52 4f 57 4e 5f 52 45  .  "HOMEGROWN_RE
2240: 43 55 52 53 49 56 45 5f 4d 55 54 45 58 22 2c 0a  CURSIVE_MUTEX",.
2250: 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54  #endif.#if SQLIT
2260: 45 5f 49 47 4e 4f 52 45 5f 41 46 50 5f 4c 4f 43  E_IGNORE_AFP_LOC
2270: 4b 5f 45 52 52 4f 52 53 0a 20 20 22 49 47 4e 4f  K_ERRORS.  "IGNO
2280: 52 45 5f 41 46 50 5f 4c 4f 43 4b 5f 45 52 52 4f  RE_AFP_LOCK_ERRO
2290: 52 53 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20  RS",.#endif.#if 
22a0: 53 51 4c 49 54 45 5f 49 47 4e 4f 52 45 5f 46 4c  SQLITE_IGNORE_FL
22b0: 4f 43 4b 5f 4c 4f 43 4b 5f 45 52 52 4f 52 53 0a  OCK_LOCK_ERRORS.
22c0: 20 20 22 49 47 4e 4f 52 45 5f 46 4c 4f 43 4b 5f    "IGNORE_FLOCK_
22d0: 4c 4f 43 4b 5f 45 52 52 4f 52 53 22 2c 0a 23 65  LOCK_ERRORS",.#e
22e0: 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f  ndif.#if SQLITE_
22f0: 49 4e 4c 49 4e 45 5f 4d 45 4d 43 50 59 0a 20 20  INLINE_MEMCPY.  
2300: 22 49 4e 4c 49 4e 45 5f 4d 45 4d 43 50 59 22 2c  "INLINE_MEMCPY",
2310: 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49  .#endif.#if SQLI
2320: 54 45 5f 49 4e 54 36 34 5f 54 59 50 45 0a 20 20  TE_INT64_TYPE.  
2330: 22 49 4e 54 36 34 5f 54 59 50 45 22 2c 0a 23 65  "INT64_TYPE",.#e
2340: 6e 64 69 66 0a 23 69 66 64 65 66 20 53 51 4c 49  ndif.#ifdef SQLI
2350: 54 45 5f 49 4e 54 45 47 52 49 54 59 5f 43 48 45  TE_INTEGRITY_CHE
2360: 43 4b 5f 45 52 52 4f 52 5f 4d 41 58 0a 20 20 22  CK_ERROR_MAX.  "
2370: 49 4e 54 45 47 52 49 54 59 5f 43 48 45 43 4b 5f  INTEGRITY_CHECK_
2380: 45 52 52 4f 52 5f 4d 41 58 3d 22 20 43 54 49 4d  ERROR_MAX=" CTIM
2390: 45 4f 50 54 5f 56 41 4c 28 53 51 4c 49 54 45 5f  EOPT_VAL(SQLITE_
23a0: 49 4e 54 45 47 52 49 54 59 5f 43 48 45 43 4b 5f  INTEGRITY_CHECK_
23b0: 45 52 52 4f 52 5f 4d 41 58 29 2c 0a 23 65 6e 64  ERROR_MAX),.#end
23c0: 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 4c 49  if.#if SQLITE_LI
23d0: 4b 45 5f 44 4f 45 53 4e 54 5f 4d 41 54 43 48 5f  KE_DOESNT_MATCH_
23e0: 42 4c 4f 42 53 0a 20 20 22 4c 49 4b 45 5f 44 4f  BLOBS.  "LIKE_DO
23f0: 45 53 4e 54 5f 4d 41 54 43 48 5f 42 4c 4f 42 53  ESNT_MATCH_BLOBS
2400: 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51  ",.#endif.#if SQ
2410: 4c 49 54 45 5f 4c 4f 43 4b 5f 54 52 41 43 45 0a  LITE_LOCK_TRACE.
2420: 20 20 22 4c 4f 43 4b 5f 54 52 41 43 45 22 2c 0a    "LOCK_TRACE",.
2430: 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54  #endif.#if SQLIT
2440: 45 5f 4c 4f 47 5f 43 41 43 48 45 5f 53 50 49 4c  E_LOG_CACHE_SPIL
2450: 4c 0a 20 20 22 4c 4f 47 5f 43 41 43 48 45 5f 53  L.  "LOG_CACHE_S
2460: 50 49 4c 4c 22 2c 0a 23 65 6e 64 69 66 0a 23 69  PILL",.#endif.#i
2470: 66 64 65 66 20 53 51 4c 49 54 45 5f 4d 41 4c 4c  fdef SQLITE_MALL
2480: 4f 43 5f 53 4f 46 54 5f 4c 49 4d 49 54 0a 20 20  OC_SOFT_LIMIT.  
2490: 22 4d 41 4c 4c 4f 43 5f 53 4f 46 54 5f 4c 49 4d  "MALLOC_SOFT_LIM
24a0: 49 54 3d 22 20 43 54 49 4d 45 4f 50 54 5f 56 41  IT=" CTIMEOPT_VA
24b0: 4c 28 53 51 4c 49 54 45 5f 4d 41 4c 4c 4f 43 5f  L(SQLITE_MALLOC_
24c0: 53 4f 46 54 5f 4c 49 4d 49 54 29 2c 0a 23 65 6e  SOFT_LIMIT),.#en
24d0: 64 69 66 0a 23 69 66 64 65 66 20 53 51 4c 49 54  dif.#ifdef SQLIT
24e0: 45 5f 4d 41 58 5f 41 54 54 41 43 48 45 44 0a 20  E_MAX_ATTACHED. 
24f0: 20 22 4d 41 58 5f 41 54 54 41 43 48 45 44 3d 22   "MAX_ATTACHED="
2500: 20 43 54 49 4d 45 4f 50 54 5f 56 41 4c 28 53 51   CTIMEOPT_VAL(SQ
2510: 4c 49 54 45 5f 4d 41 58 5f 41 54 54 41 43 48 45  LITE_MAX_ATTACHE
2520: 44 29 2c 0a 23 65 6e 64 69 66 0a 23 69 66 64 65  D),.#endif.#ifde
2530: 66 20 53 51 4c 49 54 45 5f 4d 41 58 5f 43 4f 4c  f SQLITE_MAX_COL
2540: 55 4d 4e 0a 20 20 22 4d 41 58 5f 43 4f 4c 55 4d  UMN.  "MAX_COLUM
2550: 4e 3d 22 20 43 54 49 4d 45 4f 50 54 5f 56 41 4c  N=" CTIMEOPT_VAL
2560: 28 53 51 4c 49 54 45 5f 4d 41 58 5f 43 4f 4c 55  (SQLITE_MAX_COLU
2570: 4d 4e 29 2c 0a 23 65 6e 64 69 66 0a 23 69 66 64  MN),.#endif.#ifd
2580: 65 66 20 53 51 4c 49 54 45 5f 4d 41 58 5f 43 4f  ef SQLITE_MAX_CO
2590: 4d 50 4f 55 4e 44 5f 53 45 4c 45 43 54 0a 20 20  MPOUND_SELECT.  
25a0: 22 4d 41 58 5f 43 4f 4d 50 4f 55 4e 44 5f 53 45  "MAX_COMPOUND_SE
25b0: 4c 45 43 54 3d 22 20 43 54 49 4d 45 4f 50 54 5f  LECT=" CTIMEOPT_
25c0: 56 41 4c 28 53 51 4c 49 54 45 5f 4d 41 58 5f 43  VAL(SQLITE_MAX_C
25d0: 4f 4d 50 4f 55 4e 44 5f 53 45 4c 45 43 54 29 2c  OMPOUND_SELECT),
25e0: 0a 23 65 6e 64 69 66 0a 23 69 66 64 65 66 20 53  .#endif.#ifdef S
25f0: 51 4c 49 54 45 5f 4d 41 58 5f 44 45 46 41 55 4c  QLITE_MAX_DEFAUL
2600: 54 5f 50 41 47 45 5f 53 49 5a 45 0a 20 20 22 4d  T_PAGE_SIZE.  "M
2610: 41 58 5f 44 45 46 41 55 4c 54 5f 50 41 47 45 5f  AX_DEFAULT_PAGE_
2620: 53 49 5a 45 3d 22 20 43 54 49 4d 45 4f 50 54 5f  SIZE=" CTIMEOPT_
2630: 56 41 4c 28 53 51 4c 49 54 45 5f 4d 41 58 5f 44  VAL(SQLITE_MAX_D
2640: 45 46 41 55 4c 54 5f 50 41 47 45 5f 53 49 5a 45  EFAULT_PAGE_SIZE
2650: 29 2c 0a 23 65 6e 64 69 66 0a 23 69 66 64 65 66  ),.#endif.#ifdef
2660: 20 53 51 4c 49 54 45 5f 4d 41 58 5f 45 58 50 52   SQLITE_MAX_EXPR
2670: 5f 44 45 50 54 48 0a 20 20 22 4d 41 58 5f 45 58  _DEPTH.  "MAX_EX
2680: 50 52 5f 44 45 50 54 48 3d 22 20 43 54 49 4d 45  PR_DEPTH=" CTIME
2690: 4f 50 54 5f 56 41 4c 28 53 51 4c 49 54 45 5f 4d  OPT_VAL(SQLITE_M
26a0: 41 58 5f 45 58 50 52 5f 44 45 50 54 48 29 2c 0a  AX_EXPR_DEPTH),.
26b0: 23 65 6e 64 69 66 0a 23 69 66 64 65 66 20 53 51  #endif.#ifdef SQ
26c0: 4c 49 54 45 5f 4d 41 58 5f 46 55 4e 43 54 49 4f  LITE_MAX_FUNCTIO
26d0: 4e 5f 41 52 47 0a 20 20 22 4d 41 58 5f 46 55 4e  N_ARG.  "MAX_FUN
26e0: 43 54 49 4f 4e 5f 41 52 47 3d 22 20 43 54 49 4d  CTION_ARG=" CTIM
26f0: 45 4f 50 54 5f 56 41 4c 28 53 51 4c 49 54 45 5f  EOPT_VAL(SQLITE_
2700: 4d 41 58 5f 46 55 4e 43 54 49 4f 4e 5f 41 52 47  MAX_FUNCTION_ARG
2710: 29 2c 0a 23 65 6e 64 69 66 0a 23 69 66 64 65 66  ),.#endif.#ifdef
2720: 20 53 51 4c 49 54 45 5f 4d 41 58 5f 4c 45 4e 47   SQLITE_MAX_LENG
2730: 54 48 0a 20 20 22 4d 41 58 5f 4c 45 4e 47 54 48  TH.  "MAX_LENGTH
2740: 3d 22 20 43 54 49 4d 45 4f 50 54 5f 56 41 4c 28  =" CTIMEOPT_VAL(
2750: 53 51 4c 49 54 45 5f 4d 41 58 5f 4c 45 4e 47 54  SQLITE_MAX_LENGT
2760: 48 29 2c 0a 23 65 6e 64 69 66 0a 23 69 66 64 65  H),.#endif.#ifde
2770: 66 20 53 51 4c 49 54 45 5f 4d 41 58 5f 4c 49 4b  f SQLITE_MAX_LIK
2780: 45 5f 50 41 54 54 45 52 4e 5f 4c 45 4e 47 54 48  E_PATTERN_LENGTH
2790: 0a 20 20 22 4d 41 58 5f 4c 49 4b 45 5f 50 41 54  .  "MAX_LIKE_PAT
27a0: 54 45 52 4e 5f 4c 45 4e 47 54 48 3d 22 20 43 54  TERN_LENGTH=" CT
27b0: 49 4d 45 4f 50 54 5f 56 41 4c 28 53 51 4c 49 54  IMEOPT_VAL(SQLIT
27c0: 45 5f 4d 41 58 5f 4c 49 4b 45 5f 50 41 54 54 45  E_MAX_LIKE_PATTE
27d0: 52 4e 5f 4c 45 4e 47 54 48 29 2c 0a 23 65 6e 64  RN_LENGTH),.#end
27e0: 69 66 0a 23 69 66 64 65 66 20 53 51 4c 49 54 45  if.#ifdef SQLITE
27f0: 5f 4d 41 58 5f 4d 45 4d 4f 52 59 0a 20 20 22 4d  _MAX_MEMORY.  "M
2800: 41 58 5f 4d 45 4d 4f 52 59 3d 22 20 43 54 49 4d  AX_MEMORY=" CTIM
2810: 45 4f 50 54 5f 56 41 4c 28 53 51 4c 49 54 45 5f  EOPT_VAL(SQLITE_
2820: 4d 41 58 5f 4d 45 4d 4f 52 59 29 2c 0a 23 65 6e  MAX_MEMORY),.#en
2830: 64 69 66 0a 23 69 66 64 65 66 20 53 51 4c 49 54  dif.#ifdef SQLIT
2840: 45 5f 4d 41 58 5f 4d 4d 41 50 5f 53 49 5a 45 0a  E_MAX_MMAP_SIZE.
2850: 20 20 22 4d 41 58 5f 4d 4d 41 50 5f 53 49 5a 45    "MAX_MMAP_SIZE
2860: 3d 22 20 43 54 49 4d 45 4f 50 54 5f 56 41 4c 28  =" CTIMEOPT_VAL(
2870: 53 51 4c 49 54 45 5f 4d 41 58 5f 4d 4d 41 50 5f  SQLITE_MAX_MMAP_
2880: 53 49 5a 45 29 2c 0a 23 65 6e 64 69 66 0a 23 69  SIZE),.#endif.#i
2890: 66 64 65 66 20 53 51 4c 49 54 45 5f 4d 41 58 5f  fdef SQLITE_MAX_
28a0: 4d 4d 41 50 5f 53 49 5a 45 5f 0a 20 20 22 4d 41  MMAP_SIZE_.  "MA
28b0: 58 5f 4d 4d 41 50 5f 53 49 5a 45 5f 3d 22 20 43  X_MMAP_SIZE_=" C
28c0: 54 49 4d 45 4f 50 54 5f 56 41 4c 28 53 51 4c 49  TIMEOPT_VAL(SQLI
28d0: 54 45 5f 4d 41 58 5f 4d 4d 41 50 5f 53 49 5a 45  TE_MAX_MMAP_SIZE
28e0: 5f 29 2c 0a 23 65 6e 64 69 66 0a 23 69 66 64 65  _),.#endif.#ifde
28f0: 66 20 53 51 4c 49 54 45 5f 4d 41 58 5f 50 41 47  f SQLITE_MAX_PAG
2900: 45 5f 43 4f 55 4e 54 0a 20 20 22 4d 41 58 5f 50  E_COUNT.  "MAX_P
2910: 41 47 45 5f 43 4f 55 4e 54 3d 22 20 43 54 49 4d  AGE_COUNT=" CTIM
2920: 45 4f 50 54 5f 56 41 4c 28 53 51 4c 49 54 45 5f  EOPT_VAL(SQLITE_
2930: 4d 41 58 5f 50 41 47 45 5f 43 4f 55 4e 54 29 2c  MAX_PAGE_COUNT),
2940: 0a 23 65 6e 64 69 66 0a 23 69 66 64 65 66 20 53  .#endif.#ifdef S
2950: 51 4c 49 54 45 5f 4d 41 58 5f 50 41 47 45 5f 53  QLITE_MAX_PAGE_S
2960: 49 5a 45 0a 20 20 22 4d 41 58 5f 50 41 47 45 5f  IZE.  "MAX_PAGE_
2970: 53 49 5a 45 3d 22 20 43 54 49 4d 45 4f 50 54 5f  SIZE=" CTIMEOPT_
2980: 56 41 4c 28 53 51 4c 49 54 45 5f 4d 41 58 5f 50  VAL(SQLITE_MAX_P
2990: 41 47 45 5f 53 49 5a 45 29 2c 0a 23 65 6e 64 69  AGE_SIZE),.#endi
29a0: 66 0a 23 69 66 64 65 66 20 53 51 4c 49 54 45 5f  f.#ifdef SQLITE_
29b0: 4d 41 58 5f 53 43 48 45 4d 41 5f 52 45 54 52 59  MAX_SCHEMA_RETRY
29c0: 0a 20 20 22 4d 41 58 5f 53 43 48 45 4d 41 5f 52  .  "MAX_SCHEMA_R
29d0: 45 54 52 59 3d 22 20 43 54 49 4d 45 4f 50 54 5f  ETRY=" CTIMEOPT_
29e0: 56 41 4c 28 53 51 4c 49 54 45 5f 4d 41 58 5f 53  VAL(SQLITE_MAX_S
29f0: 43 48 45 4d 41 5f 52 45 54 52 59 29 2c 0a 23 65  CHEMA_RETRY),.#e
2a00: 6e 64 69 66 0a 23 69 66 64 65 66 20 53 51 4c 49  ndif.#ifdef SQLI
2a10: 54 45 5f 4d 41 58 5f 53 51 4c 5f 4c 45 4e 47 54  TE_MAX_SQL_LENGT
2a20: 48 0a 20 20 22 4d 41 58 5f 53 51 4c 5f 4c 45 4e  H.  "MAX_SQL_LEN
2a30: 47 54 48 3d 22 20 43 54 49 4d 45 4f 50 54 5f 56  GTH=" CTIMEOPT_V
2a40: 41 4c 28 53 51 4c 49 54 45 5f 4d 41 58 5f 53 51  AL(SQLITE_MAX_SQ
2a50: 4c 5f 4c 45 4e 47 54 48 29 2c 0a 23 65 6e 64 69  L_LENGTH),.#endi
2a60: 66 0a 23 69 66 64 65 66 20 53 51 4c 49 54 45 5f  f.#ifdef SQLITE_
2a70: 4d 41 58 5f 54 52 49 47 47 45 52 5f 44 45 50 54  MAX_TRIGGER_DEPT
2a80: 48 0a 20 20 22 4d 41 58 5f 54 52 49 47 47 45 52  H.  "MAX_TRIGGER
2a90: 5f 44 45 50 54 48 3d 22 20 43 54 49 4d 45 4f 50  _DEPTH=" CTIMEOP
2aa0: 54 5f 56 41 4c 28 53 51 4c 49 54 45 5f 4d 41 58  T_VAL(SQLITE_MAX
2ab0: 5f 54 52 49 47 47 45 52 5f 44 45 50 54 48 29 2c  _TRIGGER_DEPTH),
2ac0: 0a 23 65 6e 64 69 66 0a 23 69 66 64 65 66 20 53  .#endif.#ifdef S
2ad0: 51 4c 49 54 45 5f 4d 41 58 5f 56 41 52 49 41 42  QLITE_MAX_VARIAB
2ae0: 4c 45 5f 4e 55 4d 42 45 52 0a 20 20 22 4d 41 58  LE_NUMBER.  "MAX
2af0: 5f 56 41 52 49 41 42 4c 45 5f 4e 55 4d 42 45 52  _VARIABLE_NUMBER
2b00: 3d 22 20 43 54 49 4d 45 4f 50 54 5f 56 41 4c 28  =" CTIMEOPT_VAL(
2b10: 53 51 4c 49 54 45 5f 4d 41 58 5f 56 41 52 49 41  SQLITE_MAX_VARIA
2b20: 42 4c 45 5f 4e 55 4d 42 45 52 29 2c 0a 23 65 6e  BLE_NUMBER),.#en
2b30: 64 69 66 0a 23 69 66 64 65 66 20 53 51 4c 49 54  dif.#ifdef SQLIT
2b40: 45 5f 4d 41 58 5f 56 44 42 45 5f 4f 50 0a 20 20  E_MAX_VDBE_OP.  
2b50: 22 4d 41 58 5f 56 44 42 45 5f 4f 50 3d 22 20 43  "MAX_VDBE_OP=" C
2b60: 54 49 4d 45 4f 50 54 5f 56 41 4c 28 53 51 4c 49  TIMEOPT_VAL(SQLI
2b70: 54 45 5f 4d 41 58 5f 56 44 42 45 5f 4f 50 29 2c  TE_MAX_VDBE_OP),
2b80: 0a 23 65 6e 64 69 66 0a 23 69 66 64 65 66 20 53  .#endif.#ifdef S
2b90: 51 4c 49 54 45 5f 4d 41 58 5f 57 4f 52 4b 45 52  QLITE_MAX_WORKER
2ba0: 5f 54 48 52 45 41 44 53 0a 20 20 22 4d 41 58 5f  _THREADS.  "MAX_
2bb0: 57 4f 52 4b 45 52 5f 54 48 52 45 41 44 53 3d 22  WORKER_THREADS="
2bc0: 20 43 54 49 4d 45 4f 50 54 5f 56 41 4c 28 53 51   CTIMEOPT_VAL(SQ
2bd0: 4c 49 54 45 5f 4d 41 58 5f 57 4f 52 4b 45 52 5f  LITE_MAX_WORKER_
2be0: 54 48 52 45 41 44 53 29 2c 0a 23 65 6e 64 69 66  THREADS),.#endif
2bf0: 0a 23 69 66 20 53 51 4c 49 54 45 5f 4d 45 4d 44  .#if SQLITE_MEMD
2c00: 45 42 55 47 0a 20 20 22 4d 45 4d 44 45 42 55 47  EBUG.  "MEMDEBUG
2c10: 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51  ",.#endif.#if SQ
2c20: 4c 49 54 45 5f 4d 49 58 45 44 5f 45 4e 44 49 41  LITE_MIXED_ENDIA
2c30: 4e 5f 36 34 42 49 54 5f 46 4c 4f 41 54 0a 20 20  N_64BIT_FLOAT.  
2c40: 22 4d 49 58 45 44 5f 45 4e 44 49 41 4e 5f 36 34  "MIXED_ENDIAN_64
2c50: 42 49 54 5f 46 4c 4f 41 54 22 2c 0a 23 65 6e 64  BIT_FLOAT",.#end
2c60: 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 4d 4d  if.#if SQLITE_MM
2c70: 41 50 5f 52 45 41 44 57 52 49 54 45 0a 20 20 22  AP_READWRITE.  "
2c80: 4d 4d 41 50 5f 52 45 41 44 57 52 49 54 45 22 2c  MMAP_READWRITE",
2c90: 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49  .#endif.#if SQLI
2ca0: 54 45 5f 4d 55 54 45 58 5f 4e 4f 4f 50 0a 20 20  TE_MUTEX_NOOP.  
2cb0: 22 4d 55 54 45 58 5f 4e 4f 4f 50 22 2c 0a 23 65  "MUTEX_NOOP",.#e
2cc0: 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f  ndif.#if SQLITE_
2cd0: 4d 55 54 45 58 5f 4e 52 45 46 0a 20 20 22 4d 55  MUTEX_NREF.  "MU
2ce0: 54 45 58 5f 4e 52 45 46 22 2c 0a 23 65 6e 64 69  TEX_NREF",.#endi
2cf0: 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 4d 55 54  f.#if SQLITE_MUT
2d00: 45 58 5f 4f 4d 49 54 0a 20 20 22 4d 55 54 45 58  EX_OMIT.  "MUTEX
2d10: 5f 4f 4d 49 54 22 2c 0a 23 65 6e 64 69 66 0a 23  _OMIT",.#endif.#
2d20: 69 66 20 53 51 4c 49 54 45 5f 4d 55 54 45 58 5f  if SQLITE_MUTEX_
2d30: 50 54 48 52 45 41 44 53 0a 20 20 22 4d 55 54 45  PTHREADS.  "MUTE
2d40: 58 5f 50 54 48 52 45 41 44 53 22 2c 0a 23 65 6e  X_PTHREADS",.#en
2d50: 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 4d  dif.#if SQLITE_M
2d60: 55 54 45 58 5f 57 33 32 0a 20 20 22 4d 55 54 45  UTEX_W32.  "MUTE
2d70: 58 5f 57 33 32 22 2c 0a 23 65 6e 64 69 66 0a 23  X_W32",.#endif.#
2d80: 69 66 20 53 51 4c 49 54 45 5f 4e 45 45 44 5f 45  if SQLITE_NEED_E
2d90: 52 52 5f 4e 41 4d 45 0a 20 20 22 4e 45 45 44 5f  RR_NAME.  "NEED_
2da0: 45 52 52 5f 4e 41 4d 45 22 2c 0a 23 65 6e 64 69  ERR_NAME",.#endi
2db0: 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 4e 4f 49  f.#if SQLITE_NOI
2dc0: 4e 4c 49 4e 45 0a 20 20 22 4e 4f 49 4e 4c 49 4e  NLINE.  "NOINLIN
2dd0: 45 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53  E",.#endif.#if S
2de0: 51 4c 49 54 45 5f 4e 4f 5f 53 59 4e 43 0a 20 20  QLITE_NO_SYNC.  
2df0: 22 4e 4f 5f 53 59 4e 43 22 2c 0a 23 65 6e 64 69  "NO_SYNC",.#endi
2e00: 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 4f 4d 49  f.#if SQLITE_OMI
2e10: 54 5f 41 4c 54 45 52 54 41 42 4c 45 0a 20 20 22  T_ALTERTABLE.  "
2e20: 4f 4d 49 54 5f 41 4c 54 45 52 54 41 42 4c 45 22  OMIT_ALTERTABLE"
2e30: 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c  ,.#endif.#if SQL
2e40: 49 54 45 5f 4f 4d 49 54 5f 41 4e 41 4c 59 5a 45  ITE_OMIT_ANALYZE
2e50: 0a 20 20 22 4f 4d 49 54 5f 41 4e 41 4c 59 5a 45  .  "OMIT_ANALYZE
2e60: 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51  ",.#endif.#if SQ
2e70: 4c 49 54 45 5f 4f 4d 49 54 5f 41 54 54 41 43 48  LITE_OMIT_ATTACH
2e80: 0a 20 20 22 4f 4d 49 54 5f 41 54 54 41 43 48 22  .  "OMIT_ATTACH"
2e90: 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c  ,.#endif.#if SQL
2ea0: 49 54 45 5f 4f 4d 49 54 5f 41 55 54 48 4f 52 49  ITE_OMIT_AUTHORI
2eb0: 5a 41 54 49 4f 4e 0a 20 20 22 4f 4d 49 54 5f 41  ZATION.  "OMIT_A
2ec0: 55 54 48 4f 52 49 5a 41 54 49 4f 4e 22 2c 0a 23  UTHORIZATION",.#
2ed0: 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45  endif.#if SQLITE
2ee0: 5f 4f 4d 49 54 5f 41 55 54 4f 49 4e 43 52 45 4d  _OMIT_AUTOINCREM
2ef0: 45 4e 54 0a 20 20 22 4f 4d 49 54 5f 41 55 54 4f  ENT.  "OMIT_AUTO
2f00: 49 4e 43 52 45 4d 45 4e 54 22 2c 0a 23 65 6e 64  INCREMENT",.#end
2f10: 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 4f 4d  if.#if SQLITE_OM
2f20: 49 54 5f 41 55 54 4f 49 4e 49 54 0a 20 20 22 4f  IT_AUTOINIT.  "O
2f30: 4d 49 54 5f 41 55 54 4f 49 4e 49 54 22 2c 0a 23  MIT_AUTOINIT",.#
2f40: 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45  endif.#if SQLITE
2f50: 5f 4f 4d 49 54 5f 41 55 54 4f 4d 41 54 49 43 5f  _OMIT_AUTOMATIC_
2f60: 49 4e 44 45 58 0a 20 20 22 4f 4d 49 54 5f 41 55  INDEX.  "OMIT_AU
2f70: 54 4f 4d 41 54 49 43 5f 49 4e 44 45 58 22 2c 0a  TOMATIC_INDEX",.
2f80: 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54  #endif.#if SQLIT
2f90: 45 5f 4f 4d 49 54 5f 41 55 54 4f 52 45 53 45 54  E_OMIT_AUTORESET
2fa0: 0a 20 20 22 4f 4d 49 54 5f 41 55 54 4f 52 45 53  .  "OMIT_AUTORES
2fb0: 45 54 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20  ET",.#endif.#if 
2fc0: 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 41 55 54 4f  SQLITE_OMIT_AUTO
2fd0: 56 41 43 55 55 4d 0a 20 20 22 4f 4d 49 54 5f 41  VACUUM.  "OMIT_A
2fe0: 55 54 4f 56 41 43 55 55 4d 22 2c 0a 23 65 6e 64  UTOVACUUM",.#end
2ff0: 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 4f 4d  if.#if SQLITE_OM
3000: 49 54 5f 42 45 54 57 45 45 4e 5f 4f 50 54 49 4d  IT_BETWEEN_OPTIM
3010: 49 5a 41 54 49 4f 4e 0a 20 20 22 4f 4d 49 54 5f  IZATION.  "OMIT_
3020: 42 45 54 57 45 45 4e 5f 4f 50 54 49 4d 49 5a 41  BETWEEN_OPTIMIZA
3030: 54 49 4f 4e 22 2c 0a 23 65 6e 64 69 66 0a 23 69  TION",.#endif.#i
3040: 66 20 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 42 4c  f SQLITE_OMIT_BL
3050: 4f 42 5f 4c 49 54 45 52 41 4c 0a 20 20 22 4f 4d  OB_LITERAL.  "OM
3060: 49 54 5f 42 4c 4f 42 5f 4c 49 54 45 52 41 4c 22  IT_BLOB_LITERAL"
3070: 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c  ,.#endif.#if SQL
3080: 49 54 45 5f 4f 4d 49 54 5f 42 54 52 45 45 43 4f  ITE_OMIT_BTREECO
3090: 55 4e 54 0a 20 20 22 4f 4d 49 54 5f 42 54 52 45  UNT.  "OMIT_BTRE
30a0: 45 43 4f 55 4e 54 22 2c 0a 23 65 6e 64 69 66 0a  ECOUNT",.#endif.
30b0: 23 69 66 20 53 51 4c 49 54 45 5f 4f 4d 49 54 5f  #if SQLITE_OMIT_
30c0: 43 41 53 54 0a 20 20 22 4f 4d 49 54 5f 43 41 53  CAST.  "OMIT_CAS
30d0: 54 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53  T",.#endif.#if S
30e0: 51 4c 49 54 45 5f 4f 4d 49 54 5f 43 48 45 43 4b  QLITE_OMIT_CHECK
30f0: 0a 20 20 22 4f 4d 49 54 5f 43 48 45 43 4b 22 2c  .  "OMIT_CHECK",
3100: 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49  .#endif.#if SQLI
3110: 54 45 5f 4f 4d 49 54 5f 43 4f 4d 50 4c 45 54 45  TE_OMIT_COMPLETE
3120: 0a 20 20 22 4f 4d 49 54 5f 43 4f 4d 50 4c 45 54  .  "OMIT_COMPLET
3130: 45 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53  E",.#endif.#if S
3140: 51 4c 49 54 45 5f 4f 4d 49 54 5f 43 4f 4d 50 4f  QLITE_OMIT_COMPO
3150: 55 4e 44 5f 53 45 4c 45 43 54 0a 20 20 22 4f 4d  UND_SELECT.  "OM
3160: 49 54 5f 43 4f 4d 50 4f 55 4e 44 5f 53 45 4c 45  IT_COMPOUND_SELE
3170: 43 54 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20  CT",.#endif.#if 
3180: 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 43 4f 4e 46  SQLITE_OMIT_CONF
3190: 4c 49 43 54 5f 43 4c 41 55 53 45 0a 20 20 22 4f  LICT_CLAUSE.  "O
31a0: 4d 49 54 5f 43 4f 4e 46 4c 49 43 54 5f 43 4c 41  MIT_CONFLICT_CLA
31b0: 55 53 45 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66  USE",.#endif.#if
31c0: 20 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 43 54 45   SQLITE_OMIT_CTE
31d0: 0a 20 20 22 4f 4d 49 54 5f 43 54 45 22 2c 0a 23  .  "OMIT_CTE",.#
31e0: 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45  endif.#if SQLITE
31f0: 5f 4f 4d 49 54 5f 44 41 54 45 54 49 4d 45 5f 46  _OMIT_DATETIME_F
3200: 55 4e 43 53 0a 20 20 22 4f 4d 49 54 5f 44 41 54  UNCS.  "OMIT_DAT
3210: 45 54 49 4d 45 5f 46 55 4e 43 53 22 2c 0a 23 65  ETIME_FUNCS",.#e
3220: 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f  ndif.#if SQLITE_
3230: 4f 4d 49 54 5f 44 45 43 4c 54 59 50 45 0a 20 20  OMIT_DECLTYPE.  
3240: 22 4f 4d 49 54 5f 44 45 43 4c 54 59 50 45 22 2c  "OMIT_DECLTYPE",
3250: 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49  .#endif.#if SQLI
3260: 54 45 5f 4f 4d 49 54 5f 44 45 50 52 45 43 41 54  TE_OMIT_DEPRECAT
3270: 45 44 0a 20 20 22 4f 4d 49 54 5f 44 45 50 52 45  ED.  "OMIT_DEPRE
3280: 43 41 54 45 44 22 2c 0a 23 65 6e 64 69 66 0a 23  CATED",.#endif.#
3290: 69 66 20 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 44  if SQLITE_OMIT_D
32a0: 49 53 4b 49 4f 0a 20 20 22 4f 4d 49 54 5f 44 49  ISKIO.  "OMIT_DI
32b0: 53 4b 49 4f 22 2c 0a 23 65 6e 64 69 66 0a 23 69  SKIO",.#endif.#i
32c0: 66 20 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 45 58  f SQLITE_OMIT_EX
32d0: 50 4c 41 49 4e 0a 20 20 22 4f 4d 49 54 5f 45 58  PLAIN.  "OMIT_EX
32e0: 50 4c 41 49 4e 22 2c 0a 23 65 6e 64 69 66 0a 23  PLAIN",.#endif.#
32f0: 69 66 20 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 46  if SQLITE_OMIT_F
3300: 4c 41 47 5f 50 52 41 47 4d 41 53 0a 20 20 22 4f  LAG_PRAGMAS.  "O
3310: 4d 49 54 5f 46 4c 41 47 5f 50 52 41 47 4d 41 53  MIT_FLAG_PRAGMAS
3320: 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51  ",.#endif.#if SQ
3330: 4c 49 54 45 5f 4f 4d 49 54 5f 46 4c 4f 41 54 49  LITE_OMIT_FLOATI
3340: 4e 47 5f 50 4f 49 4e 54 0a 20 20 22 4f 4d 49 54  NG_POINT.  "OMIT
3350: 5f 46 4c 4f 41 54 49 4e 47 5f 50 4f 49 4e 54 22  _FLOATING_POINT"
3360: 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c  ,.#endif.#if SQL
3370: 49 54 45 5f 4f 4d 49 54 5f 46 4f 52 45 49 47 4e  ITE_OMIT_FOREIGN
3380: 5f 4b 45 59 0a 20 20 22 4f 4d 49 54 5f 46 4f 52  _KEY.  "OMIT_FOR
3390: 45 49 47 4e 5f 4b 45 59 22 2c 0a 23 65 6e 64 69  EIGN_KEY",.#endi
33a0: 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 4f 4d 49  f.#if SQLITE_OMI
33b0: 54 5f 47 45 54 5f 54 41 42 4c 45 0a 20 20 22 4f  T_GET_TABLE.  "O
33c0: 4d 49 54 5f 47 45 54 5f 54 41 42 4c 45 22 2c 0a  MIT_GET_TABLE",.
33d0: 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54  #endif.#if SQLIT
33e0: 45 5f 4f 4d 49 54 5f 48 45 58 5f 49 4e 54 45 47  E_OMIT_HEX_INTEG
33f0: 45 52 0a 20 20 22 4f 4d 49 54 5f 48 45 58 5f 49  ER.  "OMIT_HEX_I
3400: 4e 54 45 47 45 52 22 2c 0a 23 65 6e 64 69 66 0a  NTEGER",.#endif.
3410: 23 69 66 20 53 51 4c 49 54 45 5f 4f 4d 49 54 5f  #if SQLITE_OMIT_
3420: 49 4e 43 52 42 4c 4f 42 0a 20 20 22 4f 4d 49 54  INCRBLOB.  "OMIT
3430: 5f 49 4e 43 52 42 4c 4f 42 22 2c 0a 23 65 6e 64  _INCRBLOB",.#end
3440: 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 4f 4d  if.#if SQLITE_OM
3450: 49 54 5f 49 4e 54 45 47 52 49 54 59 5f 43 48 45  IT_INTEGRITY_CHE
3460: 43 4b 0a 20 20 22 4f 4d 49 54 5f 49 4e 54 45 47  CK.  "OMIT_INTEG
3470: 52 49 54 59 5f 43 48 45 43 4b 22 2c 0a 23 65 6e  RITY_CHECK",.#en
3480: 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 4f  dif.#if SQLITE_O
3490: 4d 49 54 5f 4c 49 4b 45 5f 4f 50 54 49 4d 49 5a  MIT_LIKE_OPTIMIZ
34a0: 41 54 49 4f 4e 0a 20 20 22 4f 4d 49 54 5f 4c 49  ATION.  "OMIT_LI
34b0: 4b 45 5f 4f 50 54 49 4d 49 5a 41 54 49 4f 4e 22  KE_OPTIMIZATION"
34c0: 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c  ,.#endif.#if SQL
34d0: 49 54 45 5f 4f 4d 49 54 5f 4c 4f 41 44 5f 45 58  ITE_OMIT_LOAD_EX
34e0: 54 45 4e 53 49 4f 4e 0a 20 20 22 4f 4d 49 54 5f  TENSION.  "OMIT_
34f0: 4c 4f 41 44 5f 45 58 54 45 4e 53 49 4f 4e 22 2c  LOAD_EXTENSION",
3500: 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49  .#endif.#if SQLI
3510: 54 45 5f 4f 4d 49 54 5f 4c 4f 43 41 4c 54 49 4d  TE_OMIT_LOCALTIM
3520: 45 0a 20 20 22 4f 4d 49 54 5f 4c 4f 43 41 4c 54  E.  "OMIT_LOCALT
3530: 49 4d 45 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66  IME",.#endif.#if
3540: 20 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 4c 4f 4f   SQLITE_OMIT_LOO
3550: 4b 41 53 49 44 45 0a 20 20 22 4f 4d 49 54 5f 4c  KASIDE.  "OMIT_L
3560: 4f 4f 4b 41 53 49 44 45 22 2c 0a 23 65 6e 64 69  OOKASIDE",.#endi
3570: 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 4f 4d 49  f.#if SQLITE_OMI
3580: 54 5f 4d 45 4d 4f 52 59 44 42 0a 20 20 22 4f 4d  T_MEMORYDB.  "OM
3590: 49 54 5f 4d 45 4d 4f 52 59 44 42 22 2c 0a 23 65  IT_MEMORYDB",.#e
35a0: 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f  ndif.#if SQLITE_
35b0: 4f 4d 49 54 5f 4f 52 5f 4f 50 54 49 4d 49 5a 41  OMIT_OR_OPTIMIZA
35c0: 54 49 4f 4e 0a 20 20 22 4f 4d 49 54 5f 4f 52 5f  TION.  "OMIT_OR_
35d0: 4f 50 54 49 4d 49 5a 41 54 49 4f 4e 22 2c 0a 23  OPTIMIZATION",.#
35e0: 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45  endif.#if SQLITE
35f0: 5f 4f 4d 49 54 5f 50 41 47 45 52 5f 50 52 41 47  _OMIT_PAGER_PRAG
3600: 4d 41 53 0a 20 20 22 4f 4d 49 54 5f 50 41 47 45  MAS.  "OMIT_PAGE
3610: 52 5f 50 52 41 47 4d 41 53 22 2c 0a 23 65 6e 64  R_PRAGMAS",.#end
3620: 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 4f 4d  if.#if SQLITE_OM
3630: 49 54 5f 50 41 52 53 45 52 5f 54 52 41 43 45 0a  IT_PARSER_TRACE.
3640: 20 20 22 4f 4d 49 54 5f 50 41 52 53 45 52 5f 54    "OMIT_PARSER_T
3650: 52 41 43 45 22 2c 0a 23 65 6e 64 69 66 0a 23 69  RACE",.#endif.#i
3660: 66 20 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 50 4f  f SQLITE_OMIT_PO
3670: 50 45 4e 0a 20 20 22 4f 4d 49 54 5f 50 4f 50 45  PEN.  "OMIT_POPE
3680: 4e 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53  N",.#endif.#if S
3690: 51 4c 49 54 45 5f 4f 4d 49 54 5f 50 52 41 47 4d  QLITE_OMIT_PRAGM
36a0: 41 0a 20 20 22 4f 4d 49 54 5f 50 52 41 47 4d 41  A.  "OMIT_PRAGMA
36b0: 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51  ",.#endif.#if SQ
36c0: 4c 49 54 45 5f 4f 4d 49 54 5f 50 52 4f 47 52 45  LITE_OMIT_PROGRE
36d0: 53 53 5f 43 41 4c 4c 42 41 43 4b 0a 20 20 22 4f  SS_CALLBACK.  "O
36e0: 4d 49 54 5f 50 52 4f 47 52 45 53 53 5f 43 41 4c  MIT_PROGRESS_CAL
36f0: 4c 42 41 43 4b 22 2c 0a 23 65 6e 64 69 66 0a 23  LBACK",.#endif.#
3700: 69 66 20 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 51  if SQLITE_OMIT_Q
3710: 55 49 43 4b 42 41 4c 41 4e 43 45 0a 20 20 22 4f  UICKBALANCE.  "O
3720: 4d 49 54 5f 51 55 49 43 4b 42 41 4c 41 4e 43 45  MIT_QUICKBALANCE
3730: 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51  ",.#endif.#if SQ
3740: 4c 49 54 45 5f 4f 4d 49 54 5f 52 45 49 4e 44 45  LITE_OMIT_REINDE
3750: 58 0a 20 20 22 4f 4d 49 54 5f 52 45 49 4e 44 45  X.  "OMIT_REINDE
3760: 58 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53  X",.#endif.#if S
3770: 51 4c 49 54 45 5f 4f 4d 49 54 5f 53 43 48 45 4d  QLITE_OMIT_SCHEM
3780: 41 5f 50 52 41 47 4d 41 53 0a 20 20 22 4f 4d 49  A_PRAGMAS.  "OMI
3790: 54 5f 53 43 48 45 4d 41 5f 50 52 41 47 4d 41 53  T_SCHEMA_PRAGMAS
37a0: 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51  ",.#endif.#if SQ
37b0: 4c 49 54 45 5f 4f 4d 49 54 5f 53 43 48 45 4d 41  LITE_OMIT_SCHEMA
37c0: 5f 56 45 52 53 49 4f 4e 5f 50 52 41 47 4d 41 53  _VERSION_PRAGMAS
37d0: 0a 20 20 22 4f 4d 49 54 5f 53 43 48 45 4d 41 5f  .  "OMIT_SCHEMA_
37e0: 56 45 52 53 49 4f 4e 5f 50 52 41 47 4d 41 53 22  VERSION_PRAGMAS"
37f0: 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c  ,.#endif.#if SQL
3800: 49 54 45 5f 4f 4d 49 54 5f 53 48 41 52 45 44 5f  ITE_OMIT_SHARED_
3810: 43 41 43 48 45 0a 20 20 22 4f 4d 49 54 5f 53 48  CACHE.  "OMIT_SH
3820: 41 52 45 44 5f 43 41 43 48 45 22 2c 0a 23 65 6e  ARED_CACHE",.#en
3830: 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 4f  dif.#if SQLITE_O
3840: 4d 49 54 5f 53 48 55 54 44 4f 57 4e 5f 44 49 52  MIT_SHUTDOWN_DIR
3850: 45 43 54 4f 52 49 45 53 0a 20 20 22 4f 4d 49 54  ECTORIES.  "OMIT
3860: 5f 53 48 55 54 44 4f 57 4e 5f 44 49 52 45 43 54  _SHUTDOWN_DIRECT
3870: 4f 52 49 45 53 22 2c 0a 23 65 6e 64 69 66 0a 23  ORIES",.#endif.#
3880: 69 66 20 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 53  if SQLITE_OMIT_S
3890: 55 42 51 55 45 52 59 0a 20 20 22 4f 4d 49 54 5f  UBQUERY.  "OMIT_
38a0: 53 55 42 51 55 45 52 59 22 2c 0a 23 65 6e 64 69  SUBQUERY",.#endi
38b0: 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 4f 4d 49  f.#if SQLITE_OMI
38c0: 54 5f 54 43 4c 5f 56 41 52 49 41 42 4c 45 0a 20  T_TCL_VARIABLE. 
38d0: 20 22 4f 4d 49 54 5f 54 43 4c 5f 56 41 52 49 41   "OMIT_TCL_VARIA
38e0: 42 4c 45 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66  BLE",.#endif.#if
38f0: 20 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 54 45 4d   SQLITE_OMIT_TEM
3900: 50 44 42 0a 20 20 22 4f 4d 49 54 5f 54 45 4d 50  PDB.  "OMIT_TEMP
3910: 44 42 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20  DB",.#endif.#if 
3920: 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 54 45 53 54  SQLITE_OMIT_TEST
3930: 5f 43 4f 4e 54 52 4f 4c 0a 20 20 22 4f 4d 49 54  _CONTROL.  "OMIT
3940: 5f 54 45 53 54 5f 43 4f 4e 54 52 4f 4c 22 2c 0a  _TEST_CONTROL",.
3950: 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54  #endif.#if SQLIT
3960: 45 5f 4f 4d 49 54 5f 54 52 41 43 45 0a 20 20 22  E_OMIT_TRACE.  "
3970: 4f 4d 49 54 5f 54 52 41 43 45 22 2c 0a 23 65 6e  OMIT_TRACE",.#en
3980: 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 4f  dif.#if SQLITE_O
3990: 4d 49 54 5f 54 52 49 47 47 45 52 0a 20 20 22 4f  MIT_TRIGGER.  "O
39a0: 4d 49 54 5f 54 52 49 47 47 45 52 22 2c 0a 23 65  MIT_TRIGGER",.#e
39b0: 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f  ndif.#if SQLITE_
39c0: 4f 4d 49 54 5f 54 52 55 4e 43 41 54 45 5f 4f 50  OMIT_TRUNCATE_OP
39d0: 54 49 4d 49 5a 41 54 49 4f 4e 0a 20 20 22 4f 4d  TIMIZATION.  "OM
39e0: 49 54 5f 54 52 55 4e 43 41 54 45 5f 4f 50 54 49  IT_TRUNCATE_OPTI
39f0: 4d 49 5a 41 54 49 4f 4e 22 2c 0a 23 65 6e 64 69  MIZATION",.#endi
3a00: 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 4f 4d 49  f.#if SQLITE_OMI
3a10: 54 5f 55 54 46 31 36 0a 20 20 22 4f 4d 49 54 5f  T_UTF16.  "OMIT_
3a20: 55 54 46 31 36 22 2c 0a 23 65 6e 64 69 66 0a 23  UTF16",.#endif.#
3a30: 69 66 20 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 56  if SQLITE_OMIT_V
3a40: 41 43 55 55 4d 0a 20 20 22 4f 4d 49 54 5f 56 41  ACUUM.  "OMIT_VA
3a50: 43 55 55 4d 22 2c 0a 23 65 6e 64 69 66 0a 23 69  CUUM",.#endif.#i
3a60: 66 20 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 56 49  f SQLITE_OMIT_VI
3a70: 45 57 0a 20 20 22 4f 4d 49 54 5f 56 49 45 57 22  EW.  "OMIT_VIEW"
3a80: 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c  ,.#endif.#if SQL
3a90: 49 54 45 5f 4f 4d 49 54 5f 56 49 52 54 55 41 4c  ITE_OMIT_VIRTUAL
3aa0: 54 41 42 4c 45 0a 20 20 22 4f 4d 49 54 5f 56 49  TABLE.  "OMIT_VI
3ab0: 52 54 55 41 4c 54 41 42 4c 45 22 2c 0a 23 65 6e  RTUALTABLE",.#en
3ac0: 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 4f  dif.#if SQLITE_O
3ad0: 4d 49 54 5f 57 41 4c 0a 20 20 22 4f 4d 49 54 5f  MIT_WAL.  "OMIT_
3ae0: 57 41 4c 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66  WAL",.#endif.#if
3af0: 20 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 57 53 44   SQLITE_OMIT_WSD
3b00: 0a 20 20 22 4f 4d 49 54 5f 57 53 44 22 2c 0a 23  .  "OMIT_WSD",.#
3b10: 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45  endif.#if SQLITE
3b20: 5f 4f 4d 49 54 5f 58 46 45 52 5f 4f 50 54 0a 20  _OMIT_XFER_OPT. 
3b30: 20 22 4f 4d 49 54 5f 58 46 45 52 5f 4f 50 54 22   "OMIT_XFER_OPT"
3b40: 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c  ,.#endif.#if SQL
3b50: 49 54 45 5f 50 43 41 43 48 45 5f 53 45 50 41 52  ITE_PCACHE_SEPAR
3b60: 41 54 45 5f 48 45 41 44 45 52 0a 20 20 22 50 43  ATE_HEADER.  "PC
3b70: 41 43 48 45 5f 53 45 50 41 52 41 54 45 5f 48 45  ACHE_SEPARATE_HE
3b80: 41 44 45 52 22 2c 0a 23 65 6e 64 69 66 0a 23 69  ADER",.#endif.#i
3b90: 66 20 53 51 4c 49 54 45 5f 50 45 52 46 4f 52 4d  f SQLITE_PERFORM
3ba0: 41 4e 43 45 5f 54 52 41 43 45 0a 20 20 22 50 45  ANCE_TRACE.  "PE
3bb0: 52 46 4f 52 4d 41 4e 43 45 5f 54 52 41 43 45 22  RFORMANCE_TRACE"
3bc0: 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c  ,.#endif.#if SQL
3bd0: 49 54 45 5f 50 4f 57 45 52 53 41 46 45 5f 4f 56  ITE_POWERSAFE_OV
3be0: 45 52 57 52 49 54 45 0a 20 20 22 50 4f 57 45 52  ERWRITE.  "POWER
3bf0: 53 41 46 45 5f 4f 56 45 52 57 52 49 54 45 22 2c  SAFE_OVERWRITE",
3c00: 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49  .#endif.#if SQLI
3c10: 54 45 5f 50 52 45 46 45 52 5f 50 52 4f 58 59 5f  TE_PREFER_PROXY_
3c20: 4c 4f 43 4b 49 4e 47 0a 20 20 22 50 52 45 46 45  LOCKING.  "PREFE
3c30: 52 5f 50 52 4f 58 59 5f 4c 4f 43 4b 49 4e 47 22  R_PROXY_LOCKING"
3c40: 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c  ,.#endif.#if SQL
3c50: 49 54 45 5f 50 52 4f 58 59 5f 44 45 42 55 47 0a  ITE_PROXY_DEBUG.
3c60: 20 20 22 50 52 4f 58 59 5f 44 45 42 55 47 22 2c    "PROXY_DEBUG",
3c70: 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49  .#endif.#if SQLI
3c80: 54 45 5f 52 45 56 45 52 53 45 5f 55 4e 4f 52 44  TE_REVERSE_UNORD
3c90: 45 52 45 44 5f 53 45 4c 45 43 54 53 0a 20 20 22  ERED_SELECTS.  "
3ca0: 52 45 56 45 52 53 45 5f 55 4e 4f 52 44 45 52 45  REVERSE_UNORDERE
3cb0: 44 5f 53 45 4c 45 43 54 53 22 2c 0a 23 65 6e 64  D_SELECTS",.#end
3cc0: 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 52 54  if.#if SQLITE_RT
3cd0: 52 45 45 5f 49 4e 54 5f 4f 4e 4c 59 0a 20 20 22  REE_INT_ONLY.  "
3ce0: 52 54 52 45 45 5f 49 4e 54 5f 4f 4e 4c 59 22 2c  RTREE_INT_ONLY",
3cf0: 0a 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49  .#endif.#if SQLI
3d00: 54 45 5f 53 45 43 55 52 45 5f 44 45 4c 45 54 45  TE_SECURE_DELETE
3d10: 0a 20 20 22 53 45 43 55 52 45 5f 44 45 4c 45 54  .  "SECURE_DELET
3d20: 45 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53  E",.#endif.#if S
3d30: 51 4c 49 54 45 5f 53 4d 41 4c 4c 5f 53 54 41 43  QLITE_SMALL_STAC
3d40: 4b 0a 20 20 22 53 4d 41 4c 4c 5f 53 54 41 43 4b  K.  "SMALL_STACK
3d50: 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 64 65 66  ",.#endif.#ifdef
3d60: 20 53 51 4c 49 54 45 5f 53 4f 52 54 45 52 5f 50   SQLITE_SORTER_P
3d70: 4d 41 53 5a 0a 20 20 22 53 4f 52 54 45 52 5f 50  MASZ.  "SORTER_P
3d80: 4d 41 53 5a 3d 22 20 43 54 49 4d 45 4f 50 54 5f  MASZ=" CTIMEOPT_
3d90: 56 41 4c 28 53 51 4c 49 54 45 5f 53 4f 52 54 45  VAL(SQLITE_SORTE
3da0: 52 5f 50 4d 41 53 5a 29 2c 0a 23 65 6e 64 69 66  R_PMASZ),.#endif
3db0: 0a 23 69 66 20 53 51 4c 49 54 45 5f 53 4f 55 4e  .#if SQLITE_SOUN
3dc0: 44 45 58 0a 20 20 22 53 4f 55 4e 44 45 58 22 2c  DEX.  "SOUNDEX",
3dd0: 0a 23 65 6e 64 69 66 0a 23 69 66 64 65 66 20 53  .#endif.#ifdef S
3de0: 51 4c 49 54 45 5f 53 54 41 54 34 5f 53 41 4d 50  QLITE_STAT4_SAMP
3df0: 4c 45 53 0a 20 20 22 53 54 41 54 34 5f 53 41 4d  LES.  "STAT4_SAM
3e00: 50 4c 45 53 3d 22 20 43 54 49 4d 45 4f 50 54 5f  PLES=" CTIMEOPT_
3e10: 56 41 4c 28 53 51 4c 49 54 45 5f 53 54 41 54 34  VAL(SQLITE_STAT4
3e20: 5f 53 41 4d 50 4c 45 53 29 2c 0a 23 65 6e 64 69  _SAMPLES),.#endi
3e30: 66 0a 23 69 66 64 65 66 20 53 51 4c 49 54 45 5f  f.#ifdef SQLITE_
3e40: 53 54 4d 54 4a 52 4e 4c 5f 53 50 49 4c 4c 0a 20  STMTJRNL_SPILL. 
3e50: 20 22 53 54 4d 54 4a 52 4e 4c 5f 53 50 49 4c 4c   "STMTJRNL_SPILL
3e60: 3d 22 20 43 54 49 4d 45 4f 50 54 5f 56 41 4c 28  =" CTIMEOPT_VAL(
3e70: 53 51 4c 49 54 45 5f 53 54 4d 54 4a 52 4e 4c 5f  SQLITE_STMTJRNL_
3e80: 53 50 49 4c 4c 29 2c 0a 23 65 6e 64 69 66 0a 23  SPILL),.#endif.#
3e90: 69 66 20 53 51 4c 49 54 45 5f 53 55 42 53 54 52  if SQLITE_SUBSTR
3ea0: 5f 43 4f 4d 50 41 54 49 42 49 4c 49 54 59 0a 20  _COMPATIBILITY. 
3eb0: 20 22 53 55 42 53 54 52 5f 43 4f 4d 50 41 54 49   "SUBSTR_COMPATI
3ec0: 42 49 4c 49 54 59 22 2c 0a 23 65 6e 64 69 66 0a  BILITY",.#endif.
3ed0: 23 69 66 20 53 51 4c 49 54 45 5f 53 59 53 54 45  #if SQLITE_SYSTE
3ee0: 4d 5f 4d 41 4c 4c 4f 43 0a 20 20 22 53 59 53 54  M_MALLOC.  "SYST
3ef0: 45 4d 5f 4d 41 4c 4c 4f 43 22 2c 0a 23 65 6e 64  EM_MALLOC",.#end
3f00: 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 54 43  if.#if SQLITE_TC
3f10: 4c 0a 20 20 22 54 43 4c 22 2c 0a 23 65 6e 64 69  L.  "TCL",.#endi
3f20: 66 0a 23 69 66 64 65 66 20 53 51 4c 49 54 45 5f  f.#ifdef SQLITE_
3f30: 54 45 4d 50 5f 53 54 4f 52 45 0a 20 20 22 54 45  TEMP_STORE.  "TE
3f40: 4d 50 5f 53 54 4f 52 45 3d 22 20 43 54 49 4d 45  MP_STORE=" CTIME
3f50: 4f 50 54 5f 56 41 4c 28 53 51 4c 49 54 45 5f 54  OPT_VAL(SQLITE_T
3f60: 45 4d 50 5f 53 54 4f 52 45 29 2c 0a 23 65 6e 64  EMP_STORE),.#end
3f70: 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 54 45  if.#if SQLITE_TE
3f80: 53 54 0a 20 20 22 54 45 53 54 22 2c 0a 23 65 6e  ST.  "TEST",.#en
3f90: 64 69 66 0a 23 69 66 20 64 65 66 69 6e 65 64 28  dif.#if defined(
3fa0: 53 51 4c 49 54 45 5f 54 48 52 45 41 44 53 41 46  SQLITE_THREADSAF
3fb0: 45 29 0a 20 20 22 54 48 52 45 41 44 53 41 46 45  E).  "THREADSAFE
3fc0: 3d 22 20 43 54 49 4d 45 4f 50 54 5f 56 41 4c 28  =" CTIMEOPT_VAL(
3fd0: 53 51 4c 49 54 45 5f 54 48 52 45 41 44 53 41 46  SQLITE_THREADSAF
3fe0: 45 29 2c 0a 23 65 6c 69 66 20 64 65 66 69 6e 65  E),.#elif define
3ff0: 64 28 54 48 52 45 41 44 53 41 46 45 29 0a 20 20  d(THREADSAFE).  
4000: 22 54 48 52 45 41 44 53 41 46 45 3d 22 20 43 54  "THREADSAFE=" CT
4010: 49 4d 45 4f 50 54 5f 56 41 4c 28 54 48 52 45 41  IMEOPT_VAL(THREA
4020: 44 53 41 46 45 29 2c 0a 23 65 6c 73 65 0a 20 20  DSAFE),.#else.  
4030: 22 54 48 52 45 41 44 53 41 46 45 3d 31 22 2c 0a  "THREADSAFE=1",.
4040: 23 65 6e 64 69 66 0a 23 69 66 20 53 51 4c 49 54  #endif.#if SQLIT
4050: 45 5f 55 4e 4c 49 4e 4b 5f 41 46 54 45 52 5f 43  E_UNLINK_AFTER_C
4060: 4c 4f 53 45 0a 20 20 22 55 4e 4c 49 4e 4b 5f 41  LOSE.  "UNLINK_A
4070: 46 54 45 52 5f 43 4c 4f 53 45 22 2c 0a 23 65 6e  FTER_CLOSE",.#en
4080: 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 55  dif.#if SQLITE_U
4090: 4e 54 45 53 54 41 42 4c 45 0a 20 20 22 55 4e 54  NTESTABLE.  "UNT
40a0: 45 53 54 41 42 4c 45 22 2c 0a 23 65 6e 64 69 66  ESTABLE",.#endif
40b0: 0a 23 69 66 20 53 51 4c 49 54 45 5f 55 53 45 52  .#if SQLITE_USER
40c0: 5f 41 55 54 48 45 4e 54 49 43 41 54 49 4f 4e 0a  _AUTHENTICATION.
40d0: 20 20 22 55 53 45 52 5f 41 55 54 48 45 4e 54 49    "USER_AUTHENTI
40e0: 43 41 54 49 4f 4e 22 2c 0a 23 65 6e 64 69 66 0a  CATION",.#endif.
40f0: 23 69 66 20 53 51 4c 49 54 45 5f 55 53 45 5f 41  #if SQLITE_USE_A
4100: 4c 4c 4f 43 41 0a 20 20 22 55 53 45 5f 41 4c 4c  LLOCA.  "USE_ALL
4110: 4f 43 41 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66  OCA",.#endif.#if
4120: 20 53 51 4c 49 54 45 5f 55 53 45 5f 46 43 4e 54   SQLITE_USE_FCNT
4130: 4c 5f 54 52 41 43 45 0a 20 20 22 55 53 45 5f 46  L_TRACE.  "USE_F
4140: 43 4e 54 4c 5f 54 52 41 43 45 22 2c 0a 23 65 6e  CNTL_TRACE",.#en
4150: 64 69 66 0a 23 69 66 20 53 51 4c 49 54 45 5f 55  dif.#if SQLITE_U
4160: 53 45 5f 55 52 49 0a 20 20 22 55 53 45 5f 55 52  SE_URI.  "USE_UR
4170: 49 22 2c 0a 23 65 6e 64 69 66 0a 23 69 66 20 53  I",.#endif.#if S
4180: 51 4c 49 54 45 5f 56 44 42 45 5f 43 4f 56 45 52  QLITE_VDBE_COVER
4190: 41 47 45 0a 20 20 22 56 44 42 45 5f 43 4f 56 45  AGE.  "VDBE_COVE
41a0: 52 41 47 45 22 2c 0a 23 65 6e 64 69 66 0a 23 69  RAGE",.#endif.#i
41b0: 66 20 53 51 4c 49 54 45 5f 57 49 4e 33 32 5f 4d  f SQLITE_WIN32_M
41c0: 41 4c 4c 4f 43 0a 20 20 22 57 49 4e 33 32 5f 4d  ALLOC.  "WIN32_M
41d0: 41 4c 4c 4f 43 22 2c 0a 23 65 6e 64 69 66 0a 23  ALLOC",.#endif.#
41e0: 69 66 20 53 51 4c 49 54 45 5f 5a 45 52 4f 5f 4d  if SQLITE_ZERO_M
41f0: 41 4c 4c 4f 43 0a 20 20 22 5a 45 52 4f 5f 4d 41  ALLOC.  "ZERO_MA
4200: 4c 4c 4f 43 22 2c 0a 23 65 6e 64 69 66 0a 2f 2a  LLOC",.#endif./*
4210: 20 0a 2a 2a 20 45 4e 44 20 43 4f 44 45 20 47 45   .** END CODE GE
4220: 4e 45 52 41 54 45 44 20 42 59 20 74 6f 6f 6c 2f  NERATED BY tool/
4230: 6d 6b 63 74 69 6d 65 2e 74 63 6c 20 0a 2a 2f 0a  mkctime.tcl .*/.
4240: 7d 3b 0a 0a 63 6f 6e 73 74 20 63 68 61 72 20 2a  };..const char *
4250: 2a 73 71 6c 69 74 65 33 43 6f 6d 70 69 6c 65 4f  *sqlite3CompileO
4260: 70 74 69 6f 6e 73 28 69 6e 74 20 2a 70 6e 4f 70  ptions(int *pnOp
4270: 74 29 7b 0a 20 20 2a 70 6e 4f 70 74 20 3d 20 73  t){.  *pnOpt = s
4280: 69 7a 65 6f 66 28 73 71 6c 69 74 65 33 61 7a 43  izeof(sqlite3azC
4290: 6f 6d 70 69 6c 65 4f 70 74 29 20 2f 20 73 69 7a  ompileOpt) / siz
42a0: 65 6f 66 28 73 71 6c 69 74 65 33 61 7a 43 6f 6d  eof(sqlite3azCom
42b0: 70 69 6c 65 4f 70 74 5b 30 5d 29 3b 0a 20 20 72  pileOpt[0]);.  r
42c0: 65 74 75 72 6e 20 28 63 6f 6e 73 74 20 63 68 61  eturn (const cha
42d0: 72 2a 2a 29 73 71 6c 69 74 65 33 61 7a 43 6f 6d  r**)sqlite3azCom
42e0: 70 69 6c 65 4f 70 74 3b 0a 7d 0a 0a 23 65 6e 64  pileOpt;.}..#end
42f0: 69 66 20 2f 2a 20 53 51 4c 49 54 45 5f 4f 4d 49  if /* SQLITE_OMI
4300: 54 5f 43 4f 4d 50 49 4c 45 4f 50 54 49 4f 4e 5f  T_COMPILEOPTION_
4310: 44 49 41 47 53 20 2a 2f 0a                       DIAGS */.