/ Hex Artifact Content

## Artifact 3c4c7e94419ff28cb68850188c9d153b343aed4c5ebed5965426232ed67ff9d9:

• File Makefile.msc — part of check-in [682053d1] at 2018-12-13 21:05:45 on branch trunk — Fix a problem in sqlite3BtreeDelete() in which deleting an entry from a corrupt database can leave a btree page with zero cells. (user: drh size: 78072) [more...]

0000: 23 0a 23 20 6e 6d 61 6b 65 20 4d 61 6b 65 66 69  #.# nmake Makefi
0010: 6c 65 20 66 6f 72 20 53 51 4c 69 74 65 0a 23 0a  le for SQLite.#.
0020: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0030: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0040: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0050: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0060: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 0a  ###############.
0070: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0080: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 20 53  ############## S
0090: 54 41 52 54 20 4f 46 20 4f 50 54 49 4f 4e 53 20  TART OF OPTIONS
00a0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
00b0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 0a  ###############.
00c0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
00d0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
00e0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
00f0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
0100: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 0a  ###############.
0110: 0a 23 20 54 68 65 20 74 6f 70 6c 65 76 65 6c 20  .# The toplevel
0120: 64 69 72 65 63 74 6f 72 79 20 6f 66 20 74 68 65  directory of the
0130: 20 73 6f 75 72 63 65 20 74 72 65 65 2e 20 20 54   source tree.  T
0140: 68 69 73 20 69 73 20 74 68 65 20 64 69 72 65 63  his is the direc
0150: 74 6f 72 79 0a 23 20 74 68 61 74 20 63 6f 6e 74  tory.# that cont
0160: 61 69 6e 73 20 74 68 69 73 20 22 4d 61 6b 65 66  ains this "Makef
0170: 69 6c 65 2e 6d 73 63 22 2e 0a 23 0a 54 4f 50 20  ile.msc"..#.TOP
0180: 3d 20 2e 0a 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a  = ...# <<mark>>.
0190: 23 20 53 65 74 20 74 68 69 73 20 6e 6f 6e 2d 30  # Set this non-0
01a0: 20 74 6f 20 63 72 65 61 74 65 20 61 6e 64 20 75   to create and u
01b0: 73 65 20 74 68 65 20 53 51 4c 69 74 65 20 61 6d  se the SQLite am
01c0: 61 6c 67 61 6d 61 74 69 6f 6e 20 66 69 6c 65 2e  algamation file.
01d0: 0a 23 0a 21 49 46 4e 44 45 46 20 55 53 45 5f 41  .#.!IFNDEF USE_A
01e0: 4d 41 4c 47 41 4d 41 54 49 4f 4e 0a 55 53 45 5f  MALGAMATION.USE_
01f0: 41 4d 41 4c 47 41 4d 41 54 49 4f 4e 20 3d 20 31  AMALGAMATION = 1
0200: 0a 21 45 4e 44 49 46 0a 23 20 3c 3c 2f 6d 61 72  .!ENDIF.# <</mar
0210: 6b 3e 3e 0a 0a 23 20 53 65 74 20 74 68 69 73 20  k>>..# Set this
0220: 6e 6f 6e 2d 30 20 74 6f 20 65 6e 61 62 6c 65 20  non-0 to enable
0230: 66 75 6c 6c 20 77 61 72 6e 69 6e 67 73 20 28 2d  full warnings (-
0240: 57 34 2c 20 65 74 63 29 20 77 68 65 6e 20 63 6f  W4, etc) when co
0250: 6d 70 69 6c 69 6e 67 2e 0a 23 0a 21 49 46 4e 44  mpiling..#.!IFND
0260: 45 46 20 55 53 45 5f 46 55 4c 4c 57 41 52 4e 0a  EF USE_FULLWARN.
0270: 55 53 45 5f 46 55 4c 4c 57 41 52 4e 20 3d 20 31  USE_FULLWARN = 1
0280: 0a 21 45 4e 44 49 46 0a 0a 23 20 53 65 74 20 74  .!ENDIF..# Set t
0290: 68 69 73 20 6e 6f 6e 2d 30 20 74 6f 20 65 6e 61  his non-0 to ena
02a0: 62 6c 65 20 74 72 65 61 74 69 6e 67 20 77 61 72  ble treating war
02b0: 6e 69 6e 67 73 20 61 73 20 65 72 72 6f 72 73 20  nings as errors
02c0: 28 2d 57 58 2c 20 65 74 63 29 20 77 68 65 6e 0a  (-WX, etc) when.
02d0: 23 20 63 6f 6d 70 69 6c 69 6e 67 2e 0a 23 0a 21  # compiling..#.!
02e0: 49 46 4e 44 45 46 20 55 53 45 5f 46 41 54 41 4c  IFNDEF USE_FATAL
02f0: 5f 57 41 52 4e 0a 55 53 45 5f 46 41 54 41 4c 5f  _WARN.USE_FATAL_
0300: 57 41 52 4e 20 3d 20 30 0a 21 45 4e 44 49 46 0a  WARN = 0.!ENDIF.
0310: 0a 23 20 53 65 74 20 74 68 69 73 20 6e 6f 6e 2d  .# Set this non-
0320: 30 20 74 6f 20 65 6e 61 62 6c 65 20 66 75 6c 6c  0 to enable full
0330: 20 72 75 6e 74 69 6d 65 20 65 72 72 6f 72 20 63   runtime error c
0340: 68 65 63 6b 73 20 28 2d 52 54 43 31 2c 20 65 74  hecks (-RTC1, et
0350: 63 29 2e 20 20 54 68 69 73 0a 23 20 68 61 73 20  c).  This.# has
0360: 6e 6f 20 65 66 66 65 63 74 20 69 66 20 28 61 6e  no effect if (an
0370: 79 29 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 73  y) optimizations
0380: 20 61 72 65 20 65 6e 61 62 6c 65 64 2e 0a 23 0a   are enabled..#.
0390: 21 49 46 4e 44 45 46 20 55 53 45 5f 52 55 4e 54  !IFNDEF USE_RUNT
03a0: 49 4d 45 5f 43 48 45 43 4b 53 0a 55 53 45 5f 52  IME_CHECKS.USE_R
03b0: 55 4e 54 49 4d 45 5f 43 48 45 43 4b 53 20 3d 20  UNTIME_CHECKS =
03c0: 30 0a 21 45 4e 44 49 46 0a 0a 23 20 53 65 74 20  0.!ENDIF..# Set
03d0: 74 68 69 73 20 6e 6f 6e 2d 30 20 74 6f 20 63 72  this non-0 to cr
03e0: 65 61 74 65 20 61 20 53 51 4c 69 74 65 20 61 6d  eate a SQLite am
03f0: 61 6c 67 61 6d 61 74 69 6f 6e 20 66 69 6c 65 20  algamation file
0400: 74 68 61 74 20 65 78 63 6c 75 64 65 73 20 74 68  that excludes th
0410: 65 0a 23 20 76 61 72 69 6f 75 73 20 62 75 69 6c  e.# various buil
0420: 74 2d 69 6e 20 65 78 74 65 6e 73 69 6f 6e 73 2e  t-in extensions.
0430: 0a 23 0a 21 49 46 4e 44 45 46 20 4d 49 4e 49 4d  .#.!IFNDEF MINIM
0440: 41 4c 5f 41 4d 41 4c 47 41 4d 41 54 49 4f 4e 0a  AL_AMALGAMATION.
0450: 4d 49 4e 49 4d 41 4c 5f 41 4d 41 4c 47 41 4d 41  MINIMAL_AMALGAMA
0460: 54 49 4f 4e 20 3d 20 30 0a 21 45 4e 44 49 46 0a  TION = 0.!ENDIF.
0470: 0a 23 20 53 65 74 20 74 68 69 73 20 6e 6f 6e 2d  .# Set this non-
0480: 30 20 74 6f 20 75 73 65 20 22 73 74 64 63 61 6c  0 to use "stdcal
0490: 6c 22 20 63 61 6c 6c 69 6e 67 20 63 6f 6e 76 65  l" calling conve
04a0: 6e 74 69 6f 6e 20 66 6f 72 20 74 68 65 20 63 6f  ntion for the co
04b0: 72 65 20 6c 69 62 72 61 72 79 0a 23 20 61 6e 64  re library.# and
04c0: 20 73 68 65 6c 6c 20 65 78 65 63 75 74 61 62 6c   shell executabl
04d0: 65 2e 0a 23 0a 21 49 46 4e 44 45 46 20 55 53 45  e..#.!IFNDEF USE
04e0: 5f 53 54 44 43 41 4c 4c 0a 55 53 45 5f 53 54 44  _STDCALL.USE_STD
04f0: 43 41 4c 4c 20 3d 20 30 0a 21 45 4e 44 49 46 0a  CALL = 0.!ENDIF.
0500: 0a 23 20 53 65 74 20 74 68 69 73 20 6e 6f 6e 2d  .# Set this non-
0510: 30 20 74 6f 20 68 61 76 65 20 74 68 65 20 73 68  0 to have the sh
0520: 65 6c 6c 20 65 78 65 63 75 74 61 62 6c 65 20 6c  ell executable l
0530: 69 6e 6b 20 61 67 61 69 6e 73 74 20 74 68 65 20  ink against the
0540: 63 6f 72 65 20 64 79 6e 61 6d 69 63 0a 23 20 6c  core dynamic.# l
0550: 69 6e 6b 20 6c 69 62 72 61 72 79 2e 0a 23 0a 21  ink library..#.!
0560: 49 46 4e 44 45 46 20 44 59 4e 41 4d 49 43 5f 53  IFNDEF DYNAMIC_S
0570: 48 45 4c 4c 0a 44 59 4e 41 4d 49 43 5f 53 48 45  HELL.DYNAMIC_SHE
0580: 4c 4c 20 3d 20 30 0a 21 45 4e 44 49 46 0a 0a 23  LL = 0.!ENDIF..#
0590: 20 53 65 74 20 74 68 69 73 20 6e 6f 6e 2d 30 20   Set this non-0
05a0: 74 6f 20 65 6e 61 62 6c 65 20 65 78 74 72 61 20  to enable extra
05b0: 63 6f 64 65 20 74 68 61 74 20 61 74 74 65 6d 70  code that attemp
05c0: 74 73 20 74 6f 20 64 65 74 65 63 74 20 6d 69 73  ts to detect mis
05d0: 75 73 65 20 6f 66 20 74 68 65 0a 23 20 53 51 4c  use of the.# SQL
05e0: 69 74 65 20 41 50 49 2e 0a 23 0a 21 49 46 4e 44  ite API..#.!IFND
05f0: 45 46 20 41 50 49 5f 41 52 4d 4f 52 0a 41 50 49  EF API_ARMOR.API
0600: 5f 41 52 4d 4f 52 20 3d 20 30 0a 21 45 4e 44 49  _ARMOR = 0.!ENDI
0610: 46 0a 0a 23 20 49 66 20 6e 65 63 65 73 73 61 72  F..# If necessar
0620: 79 2c 20 63 72 65 61 74 65 20 61 20 6c 69 73 74  y, create a list
0630: 20 6f 66 20 68 61 72 6d 6c 65 73 73 20 63 6f 6d   of harmless com
0640: 70 69 6c 65 72 20 77 61 72 6e 69 6e 67 73 20 74  piler warnings t
0650: 6f 20 64 69 73 61 62 6c 65 20 77 68 65 6e 0a 23  o disable when.#
0660: 20 63 6f 6d 70 69 6c 69 6e 67 20 74 68 65 20 76   compiling the v
0670: 61 72 69 6f 75 73 20 74 6f 6f 6c 73 2e 20 20 46  arious tools.  F
0680: 6f 72 20 74 68 65 20 53 51 4c 69 74 65 20 73 6f  or the SQLite so
0690: 75 72 63 65 20 63 6f 64 65 20 69 74 73 65 6c 66  urce code itself
06a0: 2c 20 77 61 72 6e 69 6e 67 73 2c 0a 23 20 69 66  , warnings,.# if
06b0: 20 61 6e 79 2c 20 77 69 6c 6c 20 62 65 20 64 69   any, will be di
06c0: 73 61 62 6c 65 64 20 66 72 6f 6d 20 77 69 74 68  sabled from with
06d0: 69 6e 20 69 74 2e 0a 23 0a 21 49 46 4e 44 45 46  in it..#.!IFNDEF
06e0: 20 4e 4f 5f 57 41 52 4e 0a 21 49 46 20 24 28 55   NO_WARN.!IF $(U 06f0: 53 45 5f 46 55 4c 4c 57 41 52 4e 29 21 3d 30 0a SE_FULLWARN)!=0. 0700: 4e 4f 5f 57 41 52 4e 20 3d 20 2d 77 64 34 30 35 NO_WARN = -wd405 0710: 34 20 2d 77 64 34 30 35 35 20 2d 77 64 34 31 30 4 -wd4055 -wd410 0720: 30 20 2d 77 64 34 31 32 37 20 2d 77 64 34 31 33 0 -wd4127 -wd413 0730: 30 20 2d 77 64 34 31 35 32 20 2d 77 64 34 31 38 0 -wd4152 -wd418 0740: 39 20 2d 77 64 34 32 30 36 0a 4e 4f 5f 57 41 52 9 -wd4206.NO_WAR 0750: 4e 20 3d 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d N =$(NO_WARN) -
0760: 77 64 34 32 31 30 20 2d 77 64 34 32 33 32 20 2d  wd4210 -wd4232 -
0770: 77 64 34 33 30 35 20 2d 77 64 34 33 30 36 20 2d  wd4305 -wd4306 -
0780: 77 64 34 37 30 32 20 2d 77 64 34 37 30 36 0a 21  wd4702 -wd4706.!
0790: 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a 23 20  ENDIF.!ENDIF..#
07a0: 53 65 74 20 74 68 69 73 20 6e 6f 6e 2d 30 20 74  Set this non-0 t
07b0: 6f 20 75 73 65 20 74 68 65 20 6c 69 62 72 61 72  o use the librar
07c0: 79 20 70 61 74 68 73 20 61 6e 64 20 6f 74 68 65  y paths and othe
07d0: 72 20 6f 70 74 69 6f 6e 73 20 6e 65 63 65 73 73  r options necess
07e0: 61 72 79 20 66 6f 72 0a 23 20 57 69 6e 64 6f 77  ary for.# Window
07f0: 73 20 50 68 6f 6e 65 20 38 2e 31 2e 0a 23 0a 21  s Phone 8.1..#.!
0800: 49 46 4e 44 45 46 20 55 53 45 5f 57 50 38 31 5f  IFNDEF USE_WP81_
0810: 4f 50 54 53 0a 55 53 45 5f 57 50 38 31 5f 4f 50  OPTS.USE_WP81_OP
0820: 54 53 20 3d 20 30 0a 21 45 4e 44 49 46 0a 0a 23  TS = 0.!ENDIF..#
0830: 20 53 65 74 20 74 68 69 73 20 6e 6f 6e 2d 30 20   Set this non-0
0840: 74 6f 20 73 70 6c 69 74 20 74 68 65 20 53 51 4c  to split the SQL
0850: 69 74 65 20 61 6d 61 6c 67 61 6d 61 74 69 6f 6e  ite amalgamation
0860: 20 66 69 6c 65 20 69 6e 74 6f 20 63 68 75 6e 6b   file into chunk
0870: 73 20 74 6f 0a 23 20 62 65 20 75 73 65 64 20 66  s to.# be used f
0880: 6f 72 20 64 65 62 75 67 67 69 6e 67 20 77 69 74  or debugging wit
0890: 68 20 56 69 73 75 61 6c 20 53 74 75 64 69 6f 2e  h Visual Studio.
08a0: 0a 23 0a 21 49 46 4e 44 45 46 20 53 50 4c 49 54  .#.!IFNDEF SPLIT
08b0: 5f 41 4d 41 4c 47 41 4d 41 54 49 4f 4e 0a 53 50  _AMALGAMATION.SP
08c0: 4c 49 54 5f 41 4d 41 4c 47 41 4d 41 54 49 4f 4e  LIT_AMALGAMATION
08d0: 20 3d 20 30 0a 21 45 4e 44 49 46 0a 0a 23 20 3c   = 0.!ENDIF..# <
08e0: 3c 6d 61 72 6b 3e 3e 0a 23 20 53 65 74 20 74 68  <mark>>.# Set th
08f0: 69 73 20 6e 6f 6e 2d 30 20 74 6f 20 68 61 76 65  is non-0 to have
0900: 20 74 68 69 73 20 6d 61 6b 65 66 69 6c 65 20 61   this makefile a
0910: 73 73 75 6d 65 20 74 68 65 20 54 63 6c 20 73 68  ssume the Tcl sh
0920: 65 6c 6c 20 65 78 65 63 75 74 61 62 6c 65 0a 23  ell executable.#
0930: 20 28 74 63 6c 73 68 2a 2e 65 78 65 29 20 69 73   (tclsh*.exe) is
0940: 20 61 76 61 69 6c 61 62 6c 65 20 69 6e 20 74 68   available in th
0950: 65 20 50 41 54 48 2e 20 20 42 79 20 64 65 66 61  e PATH.  By defa
0960: 75 6c 74 2c 20 74 68 69 73 20 69 73 20 64 69 73  ult, this is dis
0970: 61 62 6c 65 64 0a 23 20 66 6f 72 20 63 6f 6d 70  abled.# for comp
0980: 61 74 69 62 69 6c 69 74 79 20 77 69 74 68 20 6f  atibility with o
0990: 6c 64 65 72 20 62 75 69 6c 64 20 65 6e 76 69 72  lder build envir
09a0: 6f 6e 6d 65 6e 74 73 2e 20 20 54 68 69 73 20 73  onments.  This s
09b0: 65 74 74 69 6e 67 20 6f 6e 6c 79 0a 23 20 61 70  etting only.# ap
09c0: 70 6c 69 65 73 20 69 66 20 54 43 4c 53 48 5f 43  plies if TCLSH_C
09d0: 4d 44 20 69 73 20 6e 6f 74 20 73 65 74 20 6d 61  MD is not set ma
09e0: 6e 75 61 6c 6c 79 2e 0a 23 0a 21 49 46 4e 44 45  nually..#.!IFNDE
09f0: 46 20 55 53 45 5f 54 43 4c 53 48 5f 49 4e 5f 50  F USE_TCLSH_IN_P
0a00: 41 54 48 0a 55 53 45 5f 54 43 4c 53 48 5f 49 4e  ATH.USE_TCLSH_IN
0a10: 5f 50 41 54 48 20 3d 20 30 0a 21 45 4e 44 49 46  _PATH = 0.!ENDIF
0a20: 0a 0a 23 20 53 65 74 20 74 68 69 73 20 6e 6f 6e  ..# Set this non
0a30: 2d 30 20 74 6f 20 75 73 65 20 7a 6c 69 62 2c 20  -0 to use zlib,
0a40: 70 6f 73 73 69 62 6c 79 20 63 6f 6d 70 69 6c 69  possibly compili
0a50: 6e 67 20 69 74 20 66 72 6f 6d 20 73 6f 75 72 63  ng it from sourc
0a60: 65 20 63 6f 64 65 2e 0a 23 0a 21 49 46 4e 44 45  e code..#.!IFNDE
0a70: 46 20 55 53 45 5f 5a 4c 49 42 0a 55 53 45 5f 5a  F USE_ZLIB.USE_Z
0a80: 4c 49 42 20 3d 20 30 0a 21 45 4e 44 49 46 0a 0a  LIB = 0.!ENDIF..
0a90: 23 20 53 65 74 20 74 68 69 73 20 6e 6f 6e 2d 30  # Set this non-0
0aa0: 20 74 6f 20 62 75 69 6c 64 20 7a 6c 69 62 20 66   to build zlib f
0ab0: 72 6f 6d 20 73 6f 75 72 63 65 20 63 6f 64 65 2e  rom source code.
0ac0: 20 20 54 68 69 73 20 69 73 20 65 6e 61 62 6c 65    This is enable
0ad0: 64 20 62 79 0a 23 20 64 65 66 61 75 6c 74 20 61  d by.# default a
0ae0: 6e 64 20 69 6e 20 74 68 61 74 20 63 61 73 65 20  nd in that case
0af0: 69 74 20 77 69 6c 6c 20 62 65 20 61 73 73 75 6d  it will be assum
0b00: 65 64 20 74 68 61 74 20 74 68 65 20 5a 4c 49 42  ed that the ZLIB
0b10: 44 49 52 20 6d 61 63 72 6f 0a 23 20 70 6f 69 6e  DIR macro.# poin
0b20: 74 73 20 74 6f 20 74 68 65 20 74 6f 70 2d 6c 65  ts to the top-le
0b30: 76 65 6c 20 73 6f 75 72 63 65 20 63 6f 64 65 20  vel source code
0b40: 64 69 72 65 63 74 6f 72 79 20 66 6f 72 20 7a 6c  directory for zl
0b50: 69 62 2e 0a 23 0a 21 49 46 4e 44 45 46 20 42 55  ib..#.!IFNDEF BU
0b60: 49 4c 44 5f 5a 4c 49 42 0a 42 55 49 4c 44 5f 5a  ILD_ZLIB.BUILD_Z
0b70: 4c 49 42 20 3d 20 31 0a 21 45 4e 44 49 46 0a 0a  LIB = 1.!ENDIF..
0b80: 23 20 53 65 74 20 74 68 69 73 20 6e 6f 6e 2d 30  # Set this non-0
0b90: 20 74 6f 20 75 73 65 20 74 68 65 20 49 6e 74 65   to use the Inte
0ba0: 72 6e 61 74 69 6f 6e 61 6c 20 43 6f 6d 70 6f 6e  rnational Compon
0bb0: 65 6e 74 73 20 66 6f 72 20 55 6e 69 63 6f 64 65  ents for Unicode
0bc0: 20 28 49 43 55 29 2e 0a 23 0a 21 49 46 4e 44 45   (ICU)..#.!IFNDE
0bd0: 46 20 55 53 45 5f 49 43 55 0a 55 53 45 5f 49 43  F USE_ICU.USE_IC
0be0: 55 20 3d 20 30 0a 21 45 4e 44 49 46 0a 23 20 3c  U = 0.!ENDIF.# <
0bf0: 3c 2f 6d 61 72 6b 3e 3e 0a 0a 23 20 53 65 74 20  </mark>>..# Set
0c00: 74 68 69 73 20 6e 6f 6e 2d 30 20 74 6f 20 64 79  this non-0 to dy
0c10: 6e 61 6d 69 63 61 6c 6c 79 20 6c 69 6e 6b 20 74  namically link t
0c20: 6f 20 74 68 65 20 4d 53 56 43 20 72 75 6e 74 69  o the MSVC runti
0c30: 6d 65 20 6c 69 62 72 61 72 79 2e 0a 23 0a 21 49  me library..#.!I
0c40: 46 4e 44 45 46 20 55 53 45 5f 43 52 54 5f 44 4c  FNDEF USE_CRT_DL
0c50: 4c 0a 55 53 45 5f 43 52 54 5f 44 4c 4c 20 3d 20  L.USE_CRT_DLL =
0c60: 30 0a 21 45 4e 44 49 46 0a 0a 23 20 53 65 74 20  0.!ENDIF..# Set
0c70: 74 68 69 73 20 6e 6f 6e 2d 30 20 74 6f 20 6c 69  this non-0 to li
0c80: 6e 6b 20 74 6f 20 74 68 65 20 52 50 43 52 54 34  nk to the RPCRT4
0c90: 20 6c 69 62 72 61 72 79 2e 0a 23 0a 21 49 46 4e   library..#.!IFN
0ca0: 44 45 46 20 55 53 45 5f 52 50 43 52 54 34 5f 4c  DEF USE_RPCRT4_L
0cb0: 49 42 0a 55 53 45 5f 52 50 43 52 54 34 5f 4c 49  IB.USE_RPCRT4_LI
0cc0: 42 20 3d 20 30 0a 21 45 4e 44 49 46 0a 0a 23 20  B = 0.!ENDIF..#
0cd0: 53 65 74 20 74 68 69 73 20 6e 6f 6e 2d 30 20 74  Set this non-0 t
0ce0: 6f 20 67 65 6e 65 72 61 74 65 20 61 73 73 65 6d  o generate assem
0cf0: 62 6c 79 20 63 6f 64 65 20 6c 69 73 74 69 6e 67  bly code listing
0d00: 73 20 66 6f 72 20 74 68 65 20 73 6f 75 72 63 65  s for the source
0d10: 20 63 6f 64 65 0a 23 20 66 69 6c 65 73 2e 0a 23   code.# files..#
0d20: 0a 21 49 46 4e 44 45 46 20 55 53 45 5f 4c 49 53  .!IFNDEF USE_LIS
0d30: 54 49 4e 47 53 0a 55 53 45 5f 4c 49 53 54 49 4e  TINGS.USE_LISTIN
0d40: 47 53 20 3d 20 30 0a 21 45 4e 44 49 46 0a 0a 23  GS = 0.!ENDIF..#
0d50: 20 53 65 74 20 74 68 69 73 20 6e 6f 6e 2d 30 20   Set this non-0
0d60: 74 6f 20 61 74 74 65 6d 70 74 20 73 65 74 74 69  to attempt setti
0d70: 6e 67 20 74 68 65 20 6e 61 74 69 76 65 20 63 6f  ng the native co
0d80: 6d 70 69 6c 65 72 20 61 75 74 6f 6d 61 74 69 63  mpiler automatic
0d90: 61 6c 6c 79 0a 23 20 66 6f 72 20 63 72 6f 73 73  ally.# for cross
0da0: 2d 63 6f 6d 70 69 6c 69 6e 67 20 74 68 65 20 63  -compiling the c
0db0: 6f 6d 6d 61 6e 64 20 6c 69 6e 65 20 74 6f 6f 6c  ommand line tool
0dc0: 73 20 6e 65 65 64 65 64 20 64 75 72 69 6e 67 20  s needed during
0dd0: 74 68 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 0a  the compilation.
0de0: 23 20 70 72 6f 63 65 73 73 2e 0a 23 0a 21 49 46  # process..#.!IF
0df0: 4e 44 45 46 20 58 43 4f 4d 50 49 4c 45 0a 58 43  NDEF XCOMPILE.XC
0e00: 4f 4d 50 49 4c 45 20 3d 20 30 0a 21 45 4e 44 49  OMPILE = 0.!ENDI
0e10: 46 0a 0a 23 20 53 65 74 20 74 68 69 73 20 6e 6f  F..# Set this no
0e20: 6e 2d 30 20 74 6f 20 75 73 65 20 74 68 65 20 6e  n-0 to use the n
0e30: 61 74 69 76 65 20 6c 69 62 72 61 72 69 65 73 20  ative libraries
0e40: 70 61 74 68 73 20 66 6f 72 20 63 72 6f 73 73 2d  paths for cross-
0e50: 63 6f 6d 70 69 6c 69 6e 67 0a 23 20 74 68 65 20  compiling.# the
0e60: 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65 20 74 6f 6f  command line too
0e70: 6c 73 20 6e 65 65 64 65 64 20 64 75 72 69 6e 67  ls needed during
0e80: 20 74 68 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e   the compilation
0e90: 20 70 72 6f 63 65 73 73 2e 0a 23 0a 21 49 46 4e   process..#.!IFN
0ea0: 44 45 46 20 55 53 45 5f 4e 41 54 49 56 45 5f 4c  DEF USE_NATIVE_L
0eb0: 49 42 50 41 54 48 53 0a 55 53 45 5f 4e 41 54 49  IBPATHS.USE_NATI
0ec0: 56 45 5f 4c 49 42 50 41 54 48 53 20 3d 20 30 0a  VE_LIBPATHS = 0.
0ed0: 21 45 4e 44 49 46 0a 0a 23 20 53 65 74 20 74 68  !ENDIF..# Set th
0ee0: 69 73 20 30 20 74 6f 20 73 6b 69 70 20 74 68 65  is 0 to skip the
0ef0: 20 63 6f 6d 70 69 6c 69 6e 67 20 61 6e 64 20 65   compiling and e
0f00: 6d 62 65 64 64 69 6e 67 20 6f 66 20 76 65 72 73  mbedding of vers
0f10: 69 6f 6e 20 72 65 73 6f 75 72 63 65 73 2e 0a 23  ion resources..#
0f20: 0a 21 49 46 4e 44 45 46 20 55 53 45 5f 52 43 0a  .!IFNDEF USE_RC.
0f30: 55 53 45 5f 52 43 20 3d 20 31 0a 21 45 4e 44 49  USE_RC = 1.!ENDI
0f40: 46 0a 0a 23 20 53 65 74 20 74 68 69 73 20 6e 6f  F..# Set this no
0f50: 6e 2d 30 20 74 6f 20 63 6f 6d 70 69 6c 65 20 62  n-0 to compile b
0f60: 69 6e 61 72 69 65 73 20 73 75 69 74 61 62 6c 65  inaries suitable
0f70: 20 66 6f 72 20 74 68 65 20 57 69 6e 52 54 20 65   for the WinRT e
0f80: 6e 76 69 72 6f 6e 6d 65 6e 74 2e 0a 23 20 54 68  nvironment..# Th
0f90: 69 73 20 73 65 74 74 69 6e 67 20 64 6f 65 73 20  is setting does
0fa0: 6e 6f 74 20 61 70 70 6c 79 20 74 6f 20 61 6e 79  not apply to any
0fb0: 20 62 69 6e 61 72 69 65 73 20 74 68 61 74 20 72   binaries that r
0fc0: 65 71 75 69 72 65 20 54 63 6c 20 74 6f 20 6f 70  equire Tcl to op
0fd0: 65 72 61 74 65 0a 23 20 70 72 6f 70 65 72 6c 79  erate.# properly
0fe0: 20 28 69 2e 65 2e 20 74 68 65 20 74 65 78 74 20   (i.e. the text
0ff0: 66 69 78 74 75 72 65 2c 20 65 74 63 29 2e 0a 23  fixture, etc)..#
1000: 0a 21 49 46 4e 44 45 46 20 46 4f 52 5f 57 49 4e  .!IFNDEF FOR_WIN
1010: 52 54 0a 46 4f 52 5f 57 49 4e 52 54 20 3d 20 30  RT.FOR_WINRT = 0
1020: 0a 21 45 4e 44 49 46 0a 0a 23 20 53 65 74 20 74  .!ENDIF..# Set t
1030: 68 69 73 20 6e 6f 6e 2d 30 20 74 6f 20 63 6f 6d  his non-0 to com
1040: 70 69 6c 65 20 62 69 6e 61 72 69 65 73 20 73 75  pile binaries su
1050: 69 74 61 62 6c 65 20 66 6f 72 20 74 68 65 20 55  itable for the U
1060: 57 50 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 2e 0a  WP environment..
1070: 23 20 54 68 69 73 20 73 65 74 74 69 6e 67 20 64  # This setting d
1080: 6f 65 73 20 6e 6f 74 20 61 70 70 6c 79 20 74 6f  oes not apply to
1090: 20 61 6e 79 20 62 69 6e 61 72 69 65 73 20 74 68   any binaries th
10a0: 61 74 20 72 65 71 75 69 72 65 20 54 63 6c 20 74  at require Tcl t
10b0: 6f 20 6f 70 65 72 61 74 65 0a 23 20 70 72 6f 70  o operate.# prop
10c0: 65 72 6c 79 20 28 69 2e 65 2e 20 74 68 65 20 74  erly (i.e. the t
10d0: 65 78 74 20 66 69 78 74 75 72 65 2c 20 65 74 63  ext fixture, etc
10e0: 29 2e 0a 23 0a 21 49 46 4e 44 45 46 20 46 4f 52  )..#.!IFNDEF FOR
10f0: 5f 55 57 50 0a 46 4f 52 5f 55 57 50 20 3d 20 30  _UWP.FOR_UWP = 0
1100: 0a 21 45 4e 44 49 46 0a 0a 23 20 53 65 74 20 74  .!ENDIF..# Set t
1110: 68 69 73 20 6e 6f 6e 2d 30 20 74 6f 20 63 6f 6d  his non-0 to com
1120: 70 69 6c 65 20 62 69 6e 61 72 69 65 73 20 73 75  pile binaries su
1130: 69 74 61 62 6c 65 20 66 6f 72 20 74 68 65 20 57  itable for the W
1140: 69 6e 64 6f 77 73 20 31 30 20 70 6c 61 74 66 6f  indows 10 platfo
1150: 72 6d 2e 0a 23 0a 21 49 46 4e 44 45 46 20 46 4f  rm..#.!IFNDEF FO
1160: 52 5f 57 49 4e 31 30 0a 46 4f 52 5f 57 49 4e 31  R_WIN10.FOR_WIN1
1170: 30 20 3d 20 30 0a 21 45 4e 44 49 46 0a 0a 23 20  0 = 0.!ENDIF..#
1180: 3c 3c 6d 61 72 6b 3e 3e 0a 23 20 53 65 74 20 74  <<mark>>.# Set t
1190: 68 69 73 20 6e 6f 6e 2d 30 20 74 6f 20 73 6b 69  his non-0 to ski
11a0: 70 20 61 74 74 65 6d 70 74 69 6e 67 20 74 6f 20  p attempting to
11b0: 6c 6f 6f 6b 20 66 6f 72 20 61 6e 64 2f 6f 72 20  look for and/or
11c0: 6c 69 6e 6b 20 77 69 74 68 20 74 68 65 20 54 63  link with the Tc
11d0: 6c 0a 23 20 72 75 6e 74 69 6d 65 20 6c 69 62 72  l.# runtime libr
11e0: 61 72 79 2e 0a 23 0a 21 49 46 4e 44 45 46 20 4e  ary..#.!IFNDEF N
11f0: 4f 5f 54 43 4c 0a 4e 4f 5f 54 43 4c 20 3d 20 30  O_TCL.NO_TCL = 0
1200: 0a 21 45 4e 44 49 46 0a 23 20 3c 3c 2f 6d 61 72  .!ENDIF.# <</mar
1210: 6b 3e 3e 0a 0a 23 20 53 65 74 20 74 68 69 73 20  k>>..# Set this
1220: 74 6f 20 6e 6f 6e 2d 30 20 74 6f 20 63 72 65 61  to non-0 to crea
1230: 74 65 20 61 6e 64 20 75 73 65 20 50 44 42 73 2e  te and use PDBs.
1240: 0a 23 0a 21 49 46 4e 44 45 46 20 53 59 4d 42 4f  .#.!IFNDEF SYMBO
1250: 4c 53 0a 53 59 4d 42 4f 4c 53 20 3d 20 31 0a 21  LS.SYMBOLS = 1.!
1260: 45 4e 44 49 46 0a 0a 23 20 53 65 74 20 74 68 69  ENDIF..# Set thi
1270: 73 20 74 6f 20 6e 6f 6e 2d 30 20 74 6f 20 75 73  s to non-0 to us
1280: 65 20 74 68 65 20 53 51 4c 69 74 65 20 64 65 62  e the SQLite deb
1290: 75 67 67 69 6e 67 20 68 65 61 70 20 73 75 62 73  ugging heap subs
12a0: 79 73 74 65 6d 2e 0a 23 0a 21 49 46 4e 44 45 46  ystem..#.!IFNDEF
12b0: 20 4d 45 4d 44 45 42 55 47 0a 4d 45 4d 44 45 42   MEMDEBUG.MEMDEB
12c0: 55 47 20 3d 20 30 0a 21 45 4e 44 49 46 0a 0a 23  UG = 0.!ENDIF..#
12d0: 20 53 65 74 20 74 68 69 73 20 74 6f 20 6e 6f 6e   Set this to non
12e0: 2d 30 20 74 6f 20 75 73 65 20 74 68 65 20 57 69  -0 to use the Wi
12f0: 6e 33 32 20 6e 61 74 69 76 65 20 68 65 61 70 20  n32 native heap
1300: 73 75 62 73 79 73 74 65 6d 2e 0a 23 0a 21 49 46  subsystem..#.!IF
1310: 4e 44 45 46 20 57 49 4e 33 32 48 45 41 50 0a 57  NDEF WIN32HEAP.W
1320: 49 4e 33 32 48 45 41 50 20 3d 20 30 0a 21 45 4e  IN32HEAP = 0.!EN
1330: 44 49 46 0a 0a 23 20 53 65 74 20 74 68 69 73 20  DIF..# Set this
1340: 74 6f 20 6e 6f 6e 2d 30 20 74 6f 20 65 6e 61 62  to non-0 to enab
1350: 6c 65 20 4f 53 54 52 41 43 45 28 29 20 6d 61 63  le OSTRACE() mac
1360: 72 6f 73 2c 20 77 68 69 63 68 20 63 61 6e 20 62  ros, which can b
1370: 65 20 75 73 65 66 75 6c 20 77 68 65 6e 0a 23 20  e useful when.#
1380: 64 65 62 75 67 67 69 6e 67 2e 0a 23 0a 21 49 46  debugging..#.!IF
1390: 4e 44 45 46 20 4f 53 54 52 41 43 45 0a 4f 53 54  NDEF OSTRACE.OST
13a0: 52 41 43 45 20 3d 20 30 0a 21 45 4e 44 49 46 0a  RACE = 0.!ENDIF.
13b0: 0a 23 20 53 65 74 20 74 68 69 73 20 74 6f 20 6f  .# Set this to o
13c0: 6e 65 20 6f 66 20 74 68 65 20 66 6f 6c 6c 6f 77  ne of the follow
13d0: 69 6e 67 20 76 61 6c 75 65 73 20 74 6f 20 65 6e  ing values to en
13e0: 61 62 6c 65 20 76 61 72 69 6f 75 73 20 64 65 62  able various deb
13f0: 75 67 67 69 6e 67 0a 23 20 66 65 61 74 75 72 65  ugging.# feature
1400: 73 2e 20 20 45 61 63 68 20 6c 65 76 65 6c 20 69  s.  Each level i
1410: 6e 63 6c 75 64 65 73 20 74 68 65 20 64 65 62 75  ncludes the debu
1420: 67 67 69 6e 67 20 6f 70 74 69 6f 6e 73 20 66 72  gging options fr
1430: 6f 6d 20 74 68 65 20 70 72 65 76 69 6f 75 73 0a  om the previous.
1440: 23 20 6c 65 76 65 6c 73 2e 20 20 43 75 72 72 65  # levels.  Curre
1450: 6e 74 6c 79 2c 20 74 68 65 20 72 65 63 6f 67 6e  ntly, the recogn
1460: 69 7a 65 64 20 76 61 6c 75 65 73 20 66 6f 72 20  ized values for
1470: 44 45 42 55 47 20 61 72 65 3a 0a 23 0a 23 20 30  DEBUG are:.#.# 0
1480: 20 3d 3d 20 4e 44 45 42 55 47 3a 20 44 69 73 61   == NDEBUG: Disa
1490: 62 6c 65 73 20 61 73 73 65 72 74 28 29 20 61 6e  bles assert() an
14a0: 64 20 6f 74 68 65 72 20 72 75 6e 74 69 6d 65 20  d other runtime
14b0: 64 69 61 67 6e 6f 73 74 69 63 73 2e 0a 23 20 31  diagnostics..# 1
14c0: 20 3d 3d 20 53 51 4c 49 54 45 5f 45 4e 41 42 4c   == SQLITE_ENABL
14d0: 45 5f 41 50 49 5f 41 52 4d 4f 52 3a 20 65 78 74  E_API_ARMOR: ext
14e0: 72 61 20 61 74 74 65 6d 70 74 73 20 74 6f 20 64  ra attempts to d
14f0: 65 74 65 63 74 20 6d 69 73 75 73 65 20 6f 66 20  etect misuse of
1500: 74 68 65 20 41 50 49 2e 0a 23 20 32 20 3d 3d 20  the API..# 2 ==
1510: 44 69 73 61 62 6c 65 73 20 4e 44 45 42 55 47 20  Disables NDEBUG
1520: 61 6e 64 20 61 6c 6c 20 6f 70 74 69 6d 69 7a 61  and all optimiza
1530: 74 69 6f 6e 73 20 61 6e 64 20 74 68 65 6e 20 65  tions and then e
1540: 6e 61 62 6c 65 73 20 50 44 42 73 2e 0a 23 20 33  nables PDBs..# 3
1550: 20 3d 3d 20 53 51 4c 49 54 45 5f 44 45 42 55 47   == SQLITE_DEBUG
1560: 3a 20 45 6e 61 62 6c 65 73 20 76 61 72 69 6f 75  : Enables variou
1570: 73 20 64 69 61 67 6e 6f 73 74 69 63 73 20 6d 65  s diagnostics me
1580: 73 73 61 67 65 73 20 61 6e 64 20 63 6f 64 65 2e  ssages and code.
1590: 0a 23 20 34 20 3d 3d 20 53 51 4c 49 54 45 5f 57  .# 4 == SQLITE_W
15a0: 49 4e 33 32 5f 4d 41 4c 4c 4f 43 5f 56 41 4c 49  IN32_MALLOC_VALI
15b0: 44 41 54 45 3a 20 56 61 6c 69 64 61 74 65 20 74  DATE: Validate t
15c0: 68 65 20 57 69 6e 33 32 20 6e 61 74 69 76 65 20  he Win32 native
15d0: 68 65 61 70 20 70 65 72 20 63 61 6c 6c 2e 0a 23  heap per call..#
15e0: 20 35 20 3d 3d 20 53 51 4c 49 54 45 5f 44 45 42   5 == SQLITE_DEB
15f0: 55 47 5f 4f 53 5f 54 52 41 43 45 3a 20 45 6e 61  UG_OS_TRACE: Ena
1600: 62 6c 65 73 20 6f 75 74 70 75 74 20 66 72 6f 6d  bles output from
1610: 20 74 68 65 20 4f 53 54 52 41 43 45 28 29 20 6d   the OSTRACE() m
1620: 61 63 72 6f 73 2e 0a 23 20 36 20 3d 3d 20 53 51  acros..# 6 == SQ
1630: 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 49 4f 54 52  LITE_ENABLE_IOTR
1640: 41 43 45 3a 20 45 6e 61 62 6c 65 73 20 6f 75 74  ACE: Enables out
1650: 70 75 74 20 66 72 6f 6d 20 74 68 65 20 49 4f 54  put from the IOT
1660: 52 41 43 45 28 29 20 6d 61 63 72 6f 73 2e 0a 23  RACE() macros..#
1670: 0a 21 49 46 4e 44 45 46 20 44 45 42 55 47 0a 44  .!IFNDEF DEBUG.D
1680: 45 42 55 47 20 3d 20 30 0a 21 45 4e 44 49 46 0a  EBUG = 0.!ENDIF.
1690: 0a 23 20 45 6e 61 62 6c 65 20 75 73 65 20 6f 66  .# Enable use of
16a0: 20 61 76 61 69 6c 61 62 6c 65 20 63 6f 6d 70 69   available compi
16b0: 6c 65 72 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e  ler optimization
16c0: 73 3f 20 20 4e 6f 72 6d 61 6c 6c 79 2c 20 74 68  s?  Normally, th
16d0: 69 73 20 73 68 6f 75 6c 64 20 62 65 0a 23 20 6e  is should be.# n
16e0: 6f 6e 2d 7a 65 72 6f 2e 20 20 53 65 74 74 69 6e  on-zero.  Settin
16f0: 67 20 74 68 69 73 20 74 6f 20 7a 65 72 6f 2c 20  g this to zero,
1700: 74 68 75 73 20 64 69 73 61 62 6c 69 6e 67 20 61  thus disabling a
1710: 6c 6c 20 63 6f 6d 70 69 6c 65 72 20 6f 70 74 69  ll compiler opti
1720: 6d 69 7a 61 74 69 6f 6e 73 2c 0a 23 20 63 61 6e  mizations,.# can
1730: 20 62 65 20 75 73 65 66 75 6c 20 66 6f 72 20 74   be useful for t
1740: 65 73 74 69 6e 67 2e 0a 23 0a 21 49 46 4e 44 45  esting..#.!IFNDE
1750: 46 20 4f 50 54 49 4d 49 5a 41 54 49 4f 4e 53 0a  F OPTIMIZATIONS.
1760: 4f 50 54 49 4d 49 5a 41 54 49 4f 4e 53 20 3d 20  OPTIMIZATIONS =
1770: 32 0a 21 45 4e 44 49 46 0a 0a 23 20 53 65 74 20  2.!ENDIF..# Set
1780: 74 68 69 73 20 74 6f 20 6e 6f 6e 2d 30 20 74 6f  this to non-0 to
1790: 20 65 6e 61 62 6c 65 20 73 75 70 70 6f 72 74 20   enable support
17a0: 66 6f 72 20 74 68 65 20 73 65 73 73 69 6f 6e 20  for the session
17b0: 65 78 74 65 6e 73 69 6f 6e 2e 0a 23 0a 21 49 46  extension..#.!IF
17c0: 4e 44 45 46 20 53 45 53 53 49 4f 4e 0a 53 45 53  NDEF SESSION.SES
17d0: 53 49 4f 4e 20 3d 20 30 0a 21 45 4e 44 49 46 0a  SION = 0.!ENDIF.
17e0: 0a 23 20 53 65 74 20 74 68 65 20 73 6f 75 72 63  .# Set the sourc
17f0: 65 20 63 6f 64 65 20 66 69 6c 65 20 74 6f 20 62  e code file to b
1800: 65 20 75 73 65 64 20 62 79 20 65 78 65 63 75 74  e used by execut
1810: 61 62 6c 65 73 20 61 6e 64 20 6c 69 62 72 61 72  ables and librar
1820: 69 65 73 20 77 68 65 6e 0a 23 20 74 68 65 79 20  ies when.# they
1830: 6e 65 65 64 20 74 68 65 20 61 6d 61 6c 67 61 6d  need the amalgam
1840: 61 74 69 6f 6e 2e 0a 23 0a 21 49 46 4e 44 45 46  ation..#.!IFNDEF
1850: 20 53 51 4c 49 54 45 33 43 0a 21 49 46 20 24 28   SQLITE3C.!IF $( 1860: 53 50 4c 49 54 5f 41 4d 41 4c 47 41 4d 41 54 49 SPLIT_AMALGAMATI 1870: 4f 4e 29 21 3d 30 0a 53 51 4c 49 54 45 33 43 20 ON)!=0.SQLITE3C 1880: 3d 20 73 71 6c 69 74 65 33 2d 61 6c 6c 2e 63 0a = sqlite3-all.c. 1890: 21 45 4c 53 45 0a 53 51 4c 49 54 45 33 43 20 3d !ELSE.SQLITE3C = 18a0: 20 73 71 6c 69 74 65 33 2e 63 0a 21 45 4e 44 49 sqlite3.c.!ENDI 18b0: 46 0a 21 45 4e 44 49 46 0a 0a 23 20 53 65 74 20 F.!ENDIF..# Set 18c0: 74 68 65 20 69 6e 63 6c 75 64 65 20 63 6f 64 65 the include code 18d0: 20 66 69 6c 65 20 74 6f 20 62 65 20 75 73 65 64 file to be used 18e0: 20 62 79 20 65 78 65 63 75 74 61 62 6c 65 73 20 by executables 18f0: 61 6e 64 20 6c 69 62 72 61 72 69 65 73 20 77 68 and libraries wh 1900: 65 6e 0a 23 20 74 68 65 79 20 6e 65 65 64 20 53 en.# they need S 1910: 51 4c 69 74 65 2e 0a 23 0a 21 49 46 4e 44 45 46 QLite..#.!IFNDEF 1920: 20 53 51 4c 49 54 45 33 48 0a 53 51 4c 49 54 45 SQLITE3H.SQLITE 1930: 33 48 20 3d 20 73 71 6c 69 74 65 33 2e 68 0a 21 3H = sqlite3.h.! 1940: 45 4e 44 49 46 0a 0a 23 20 54 68 69 73 20 69 73 ENDIF..# This is 1950: 20 74 68 65 20 6e 61 6d 65 20 74 6f 20 75 73 65 the name to use 1960: 20 66 6f 72 20 74 68 65 20 53 51 4c 69 74 65 20 for the SQLite 1970: 64 79 6e 61 6d 69 63 20 6c 69 6e 6b 20 6c 69 62 dynamic link lib 1980: 72 61 72 79 20 28 44 4c 4c 29 2e 0a 23 0a 21 49 rary (DLL)..#.!I 1990: 46 4e 44 45 46 20 53 51 4c 49 54 45 33 44 4c 4c FNDEF SQLITE3DLL 19a0: 0a 21 49 46 20 24 28 46 4f 52 5f 57 49 4e 31 30 .!IF$(FOR_WIN10
19b0: 29 21 3d 30 0a 53 51 4c 49 54 45 33 44 4c 4c 20  )!=0.SQLITE3DLL
19c0: 3d 20 77 69 6e 73 71 6c 69 74 65 33 2e 64 6c 6c  = winsqlite3.dll
19d0: 0a 21 45 4c 53 45 0a 53 51 4c 49 54 45 33 44 4c  .!ELSE.SQLITE3DL
19e0: 4c 20 3d 20 73 71 6c 69 74 65 33 2e 64 6c 6c 0a  L = sqlite3.dll.
19f0: 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a 23  !ENDIF.!ENDIF..#
1a00: 20 54 68 69 73 20 69 73 20 74 68 65 20 6e 61 6d   This is the nam
1a10: 65 20 74 6f 20 75 73 65 20 66 6f 72 20 74 68 65  e to use for the
1a20: 20 53 51 4c 69 74 65 20 69 6d 70 6f 72 74 20 6c   SQLite import l
1a30: 69 62 72 61 72 79 20 28 4c 49 42 29 2e 0a 23 0a  ibrary (LIB)..#.
1a40: 21 49 46 4e 44 45 46 20 53 51 4c 49 54 45 33 4c  !IFNDEF SQLITE3L
1a50: 49 42 0a 21 49 46 20 24 28 46 4f 52 5f 57 49 4e  IB.!IF $(FOR_WIN 1a60: 31 30 29 21 3d 30 0a 53 51 4c 49 54 45 33 4c 49 10)!=0.SQLITE3LI 1a70: 42 20 3d 20 77 69 6e 73 71 6c 69 74 65 33 2e 6c B = winsqlite3.l 1a80: 69 62 0a 21 45 4c 53 45 0a 53 51 4c 49 54 45 33 ib.!ELSE.SQLITE3 1a90: 4c 49 42 20 3d 20 73 71 6c 69 74 65 33 2e 6c 69 LIB = sqlite3.li 1aa0: 62 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a b.!ENDIF.!ENDIF. 1ab0: 0a 23 20 54 68 69 73 20 69 73 20 74 68 65 20 6e .# This is the n 1ac0: 61 6d 65 20 74 6f 20 75 73 65 20 66 6f 72 20 74 ame to use for t 1ad0: 68 65 20 53 51 4c 69 74 65 20 73 68 65 6c 6c 20 he SQLite shell 1ae0: 65 78 65 63 75 74 61 62 6c 65 20 28 45 58 45 29 executable (EXE) 1af0: 2e 0a 23 0a 21 49 46 4e 44 45 46 20 53 51 4c 49 ..#.!IFNDEF SQLI 1b00: 54 45 33 45 58 45 0a 21 49 46 20 24 28 46 4f 52 TE3EXE.!IF$(FOR
1b10: 5f 57 49 4e 31 30 29 21 3d 30 0a 53 51 4c 49 54  _WIN10)!=0.SQLIT
1b20: 45 33 45 58 45 20 3d 20 77 69 6e 73 71 6c 69 74  E3EXE = winsqlit
1b30: 65 33 73 68 65 6c 6c 2e 65 78 65 0a 21 45 4c 53  e3shell.exe.!ELS
1b40: 45 0a 53 51 4c 49 54 45 33 45 58 45 20 3d 20 73  E.SQLITE3EXE = s
1b50: 71 6c 69 74 65 33 2e 65 78 65 0a 21 45 4e 44 49  qlite3.exe.!ENDI
1b60: 46 0a 21 45 4e 44 49 46 0a 0a 23 20 54 68 69 73  F.!ENDIF..# This
1b70: 20 69 73 20 74 68 65 20 61 72 67 75 6d 65 6e 74   is the argument
1b80: 20 75 73 65 64 20 74 6f 20 73 65 74 20 74 68 65   used to set the
1b90: 20 70 72 6f 67 72 61 6d 20 64 61 74 61 62 61 73   program databas
1ba0: 65 20 28 50 44 42 29 20 66 69 6c 65 20 66 6f 72  e (PDB) file for
1bb0: 20 74 68 65 0a 23 20 53 51 4c 69 74 65 20 73 68   the.# SQLite sh
1bc0: 65 6c 6c 20 65 78 65 63 75 74 61 62 6c 65 20 28  ell executable (
1bd0: 45 58 45 29 2e 0a 23 0a 21 49 46 4e 44 45 46 20  EXE)..#.!IFNDEF
1be0: 53 51 4c 49 54 45 33 45 58 45 50 44 42 0a 21 49  SQLITE3EXEPDB.!I
1bf0: 46 20 24 28 46 4f 52 5f 57 49 4e 31 30 29 21 3d  F $(FOR_WIN10)!= 1c00: 30 0a 53 51 4c 49 54 45 33 45 58 45 50 44 42 20 0.SQLITE3EXEPDB 1c10: 3d 0a 21 45 4c 53 45 0a 53 51 4c 49 54 45 33 45 =.!ELSE.SQLITE3E 1c20: 58 45 50 44 42 20 3d 20 2f 70 64 62 3a 73 71 6c XEPDB = /pdb:sql 1c30: 69 74 65 33 73 68 2e 70 64 62 0a 21 45 4e 44 49 ite3sh.pdb.!ENDI 1c40: 46 0a 21 45 4e 44 49 46 0a 0a 23 20 3c 3c 6d 61 F.!ENDIF..# <<ma 1c50: 72 6b 3e 3e 0a 23 20 54 68 65 73 65 20 61 72 65 rk>>.# These are 1c60: 20 74 68 65 20 6e 61 6d 65 73 20 6f 66 20 74 68 the names of th 1c70: 65 20 63 75 73 74 6f 6d 69 7a 65 64 20 54 63 6c e customized Tcl 1c80: 20 68 65 61 64 65 72 20 66 69 6c 65 73 20 75 73 header files us 1c90: 65 64 20 62 79 20 76 61 72 69 6f 75 73 20 70 61 ed by various pa 1ca0: 72 74 73 0a 23 20 6f 66 20 74 68 69 73 20 6d 61 rts.# of this ma 1cb0: 6b 65 66 69 6c 65 20 77 68 65 6e 20 74 68 65 20 kefile when the 1cc0: 73 74 64 63 61 6c 6c 20 63 61 6c 6c 69 6e 67 20 stdcall calling 1cd0: 63 6f 6e 76 65 6e 74 69 6f 6e 20 69 73 20 69 6e convention is in 1ce0: 20 75 73 65 2e 20 20 49 74 20 69 73 20 6e 6f 74 use. It is not 1cf0: 0a 23 20 75 73 65 64 20 66 6f 72 20 61 6e 79 20 .# used for any 1d00: 6f 74 68 65 72 20 70 75 72 70 6f 73 65 2e 0a 23 other purpose..# 1d10: 0a 21 49 46 4e 44 45 46 20 53 51 4c 49 54 45 54 .!IFNDEF SQLITET 1d20: 43 4c 48 0a 53 51 4c 49 54 45 54 43 4c 48 20 3d CLH.SQLITETCLH = 1d30: 20 73 71 6c 69 74 65 5f 74 63 6c 2e 68 0a 21 45 sqlite_tcl.h.!E 1d40: 4e 44 49 46 0a 0a 21 49 46 4e 44 45 46 20 53 51 NDIF..!IFNDEF SQ 1d50: 4c 49 54 45 54 43 4c 44 45 43 4c 53 48 0a 53 51 LITETCLDECLSH.SQ 1d60: 4c 49 54 45 54 43 4c 44 45 43 4c 53 48 20 3d 20 LITETCLDECLSH = 1d70: 73 71 6c 69 74 65 5f 74 63 6c 44 65 63 6c 73 2e sqlite_tclDecls. 1d80: 68 0a 21 45 4e 44 49 46 0a 0a 23 20 54 68 65 73 h.!ENDIF..# Thes 1d90: 65 20 61 72 65 20 74 68 65 20 61 64 64 69 74 69 e are the additi 1da0: 6f 6e 61 6c 20 74 61 72 67 65 74 73 20 74 68 61 onal targets tha 1db0: 74 20 74 68 65 20 74 61 72 67 65 74 73 20 74 68 t the targets th 1dc0: 61 74 20 69 6e 74 65 67 72 61 74 65 20 77 69 74 at integrate wit 1dd0: 68 20 74 68 65 0a 23 20 54 63 6c 20 6c 69 62 72 h the.# Tcl libr 1de0: 61 72 79 20 73 68 6f 75 6c 64 20 64 65 70 65 6e ary should depen 1df0: 64 20 6f 6e 20 77 68 65 6e 20 63 6f 6d 70 69 6c d on when compil 1e00: 69 6e 67 2c 20 65 74 63 2e 0a 23 0a 21 49 46 4e ing, etc..#.!IFN 1e10: 44 45 46 20 53 51 4c 49 54 45 5f 54 43 4c 5f 44 DEF SQLITE_TCL_D 1e20: 45 50 0a 21 49 46 20 24 28 55 53 45 5f 53 54 44 EP.!IF$(USE_STD
1e30: 43 41 4c 4c 29 21 3d 30 20 7c 7c 20 24 28 46 4f  CALL)!=0 || $(FO 1e40: 52 5f 57 49 4e 31 30 29 21 3d 30 0a 53 51 4c 49 R_WIN10)!=0.SQLI 1e50: 54 45 5f 54 43 4c 5f 44 45 50 20 3d 20 24 28 53 TE_TCL_DEP =$(S
1e60: 51 4c 49 54 45 54 43 4c 44 45 43 4c 53 48 29 20  QLITETCLDECLSH)
1e70: 24 28 53 51 4c 49 54 45 54 43 4c 48 29 0a 21 45  $(SQLITETCLH).!E 1e80: 4c 53 45 0a 53 51 4c 49 54 45 5f 54 43 4c 5f 44 LSE.SQLITE_TCL_D 1e90: 45 50 20 3d 0a 21 45 4e 44 49 46 0a 21 45 4e 44 EP =.!ENDIF.!END 1ea0: 49 46 0a 23 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a 0a IF.# <</mark>>.. 1eb0: 23 20 54 68 65 73 65 20 61 72 65 20 74 68 65 20 # These are the 1ec0: 22 73 74 61 6e 64 61 72 64 22 20 53 51 4c 69 74 "standard" SQLit 1ed0: 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 6f 70 e compilation op 1ee0: 74 69 6f 6e 73 20 75 73 65 64 20 77 68 65 6e 20 tions used when 1ef0: 63 6f 6d 70 69 6c 69 6e 67 20 66 6f 72 0a 23 20 compiling for.# 1f00: 74 68 65 20 57 69 6e 64 6f 77 73 20 70 6c 61 74 the Windows plat 1f10: 66 6f 72 6d 2e 0a 23 0a 21 49 46 4e 44 45 46 20 form..#.!IFNDEF 1f20: 4f 50 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 OPT_FEATURE_FLAG 1f30: 53 0a 21 49 46 20 24 28 4d 49 4e 49 4d 41 4c 5f S.!IF$(MINIMAL_
1f40: 41 4d 41 4c 47 41 4d 41 54 49 4f 4e 29 3d 3d 30  AMALGAMATION)==0
1f50: 0a 4f 50 54 5f 46 45 41 54 55 52 45 5f 46 4c 41  .OPT_FEATURE_FLA
1f60: 47 53 20 3d 20 24 28 4f 50 54 5f 46 45 41 54 55  GS = $(OPT_FEATU 1f70: 52 45 5f 46 4c 41 47 53 29 20 2d 44 53 51 4c 49 RE_FLAGS) -DSQLI 1f80: 54 45 5f 45 4e 41 42 4c 45 5f 46 54 53 33 3d 31 TE_ENABLE_FTS3=1 1f90: 0a 4f 50 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 .OPT_FEATURE_FLA 1fa0: 47 53 20 3d 20 24 28 4f 50 54 5f 46 45 41 54 55 GS =$(OPT_FEATU
1fb0: 52 45 5f 46 4c 41 47 53 29 20 2d 44 53 51 4c 49  RE_FLAGS) -DSQLI
1fc0: 54 45 5f 45 4e 41 42 4c 45 5f 52 54 52 45 45 3d  TE_ENABLE_RTREE=
1fd0: 31 0a 4f 50 54 5f 46 45 41 54 55 52 45 5f 46 4c  1.OPT_FEATURE_FL
1fe0: 41 47 53 20 3d 20 24 28 4f 50 54 5f 46 45 41 54  AGS = $(OPT_FEAT 1ff0: 55 52 45 5f 46 4c 41 47 53 29 20 2d 44 53 51 4c URE_FLAGS) -DSQL 2000: 49 54 45 5f 45 4e 41 42 4c 45 5f 47 45 4f 50 4f ITE_ENABLE_GEOPO 2010: 4c 59 3d 31 0a 4f 50 54 5f 46 45 41 54 55 52 45 LY=1.OPT_FEATURE 2020: 5f 46 4c 41 47 53 20 3d 20 24 28 4f 50 54 5f 46 _FLAGS =$(OPT_F
2030: 45 41 54 55 52 45 5f 46 4c 41 47 53 29 20 2d 44  EATURE_FLAGS) -D
2040: 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 4a 53  SQLITE_ENABLE_JS
2050: 4f 4e 31 3d 31 0a 4f 50 54 5f 46 45 41 54 55 52  ON1=1.OPT_FEATUR
2060: 45 5f 46 4c 41 47 53 20 3d 20 24 28 4f 50 54 5f  E_FLAGS = $(OPT_ 2070: 46 45 41 54 55 52 45 5f 46 4c 41 47 53 29 20 2d FEATURE_FLAGS) - 2080: 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 53 DSQLITE_ENABLE_S 2090: 54 4d 54 56 54 41 42 3d 31 0a 4f 50 54 5f 46 45 TMTVTAB=1.OPT_FE 20a0: 41 54 55 52 45 5f 46 4c 41 47 53 20 3d 20 24 28 ATURE_FLAGS =$(
20b0: 4f 50 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 47  OPT_FEATURE_FLAG
20c0: 53 29 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42  S) -DSQLITE_ENAB
20d0: 4c 45 5f 44 42 50 41 47 45 5f 56 54 41 42 3d 31  LE_DBPAGE_VTAB=1
20e0: 0a 4f 50 54 5f 46 45 41 54 55 52 45 5f 46 4c 41  .OPT_FEATURE_FLA
20f0: 47 53 20 3d 20 24 28 4f 50 54 5f 46 45 41 54 55  GS = $(OPT_FEATU 2100: 52 45 5f 46 4c 41 47 53 29 20 2d 44 53 51 4c 49 RE_FLAGS) -DSQLI 2110: 54 45 5f 45 4e 41 42 4c 45 5f 44 42 53 54 41 54 TE_ENABLE_DBSTAT 2120: 5f 56 54 41 42 3d 31 0a 4f 50 54 5f 46 45 41 54 _VTAB=1.OPT_FEAT 2130: 55 52 45 5f 46 4c 41 47 53 20 3d 20 24 28 4f 50 URE_FLAGS =$(OP
2140: 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 29  T_FEATURE_FLAGS)
2150: 20 2d 44 53 51 4c 49 54 45 5f 49 4e 54 52 4f 53   -DSQLITE_INTROS
2160: 50 45 43 54 49 4f 4e 5f 50 52 41 47 4d 41 53 3d  PECTION_PRAGMAS=
2170: 31 0a 4f 50 54 5f 46 45 41 54 55 52 45 5f 46 4c  1.OPT_FEATURE_FL
2180: 41 47 53 20 3d 20 24 28 4f 50 54 5f 46 45 41 54  AGS = $(OPT_FEAT 2190: 55 52 45 5f 46 4c 41 47 53 29 20 2d 44 53 51 4c URE_FLAGS) -DSQL 21a0: 49 54 45 5f 45 4e 41 42 4c 45 5f 44 45 53 45 52 ITE_ENABLE_DESER 21b0: 49 41 4c 49 5a 45 3d 31 0a 21 45 4e 44 49 46 0a IALIZE=1.!ENDIF. 21c0: 4f 50 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 OPT_FEATURE_FLAG 21d0: 53 20 3d 20 24 28 4f 50 54 5f 46 45 41 54 55 52 S =$(OPT_FEATUR
21e0: 45 5f 46 4c 41 47 53 29 20 2d 44 53 51 4c 49 54  E_FLAGS) -DSQLIT
21f0: 45 5f 45 4e 41 42 4c 45 5f 43 4f 4c 55 4d 4e 5f  E_ENABLE_COLUMN_
2200: 4d 45 54 41 44 41 54 41 3d 31 0a 21 45 4e 44 49  METADATA=1.!ENDI
2210: 46 0a 0a 23 20 53 68 6f 75 6c 64 20 74 68 65 20  F..# Should the
2220: 73 65 73 73 69 6f 6e 20 65 78 74 65 6e 73 69 6f  session extensio
2230: 6e 20 62 65 20 65 6e 61 62 6c 65 64 3f 20 20 49  n be enabled?  I
2240: 66 20 73 6f 2c 20 61 64 64 20 63 6f 6d 70 69 6c  f so, add compil
2250: 61 74 69 6f 6e 20 6f 70 74 69 6f 6e 73 0a 23 20  ation options.#
2260: 74 6f 20 65 6e 61 62 6c 65 20 69 74 2e 0a 23 0a  to enable it..#.
2270: 21 49 46 20 24 28 53 45 53 53 49 4f 4e 29 21 3d  !IF $(SESSION)!= 2280: 30 0a 4f 50 54 5f 46 45 41 54 55 52 45 5f 46 4c 0.OPT_FEATURE_FL 2290: 41 47 53 20 3d 20 24 28 4f 50 54 5f 46 45 41 54 AGS =$(OPT_FEAT
22a0: 55 52 45 5f 46 4c 41 47 53 29 20 2d 44 53 51 4c  URE_FLAGS) -DSQL
22b0: 49 54 45 5f 45 4e 41 42 4c 45 5f 53 45 53 53 49  ITE_ENABLE_SESSI
22c0: 4f 4e 3d 31 0a 4f 50 54 5f 46 45 41 54 55 52 45  ON=1.OPT_FEATURE
22d0: 5f 46 4c 41 47 53 20 3d 20 24 28 4f 50 54 5f 46  _FLAGS = $(OPT_F 22e0: 45 41 54 55 52 45 5f 46 4c 41 47 53 29 20 2d 44 EATURE_FLAGS) -D 22f0: 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 50 52 SQLITE_ENABLE_PR 2300: 45 55 50 44 41 54 45 5f 48 4f 4f 4b 3d 31 0a 21 EUPDATE_HOOK=1.! 2310: 45 4e 44 49 46 0a 0a 23 20 54 68 65 73 65 20 61 ENDIF..# These a 2320: 72 65 20 74 68 65 20 22 65 78 74 65 6e 64 65 64 re the "extended 2330: 22 20 53 51 4c 69 74 65 20 63 6f 6d 70 69 6c 61 " SQLite compila 2340: 74 69 6f 6e 20 6f 70 74 69 6f 6e 73 20 75 73 65 tion options use 2350: 64 20 77 68 65 6e 20 63 6f 6d 70 69 6c 69 6e 67 d when compiling 2360: 20 66 6f 72 0a 23 20 74 68 65 20 57 69 6e 64 6f for.# the Windo 2370: 77 73 20 31 30 20 70 6c 61 74 66 6f 72 6d 2e 0a ws 10 platform.. 2380: 23 0a 21 49 46 4e 44 45 46 20 45 58 54 5f 46 45 #.!IFNDEF EXT_FE 2390: 41 54 55 52 45 5f 46 4c 41 47 53 0a 21 49 46 20 ATURE_FLAGS.!IF 23a0: 24 28 46 4f 52 5f 57 49 4e 31 30 29 21 3d 30 0a$(FOR_WIN10)!=0.
23b0: 45 58 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 47  EXT_FEATURE_FLAG
23c0: 53 20 3d 20 24 28 45 58 54 5f 46 45 41 54 55 52  S = $(EXT_FEATUR 23d0: 45 5f 46 4c 41 47 53 29 20 2d 44 53 51 4c 49 54 E_FLAGS) -DSQLIT 23e0: 45 5f 45 4e 41 42 4c 45 5f 46 54 53 34 3d 31 0a E_ENABLE_FTS4=1. 23f0: 45 58 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 EXT_FEATURE_FLAG 2400: 53 20 3d 20 24 28 45 58 54 5f 46 45 41 54 55 52 S =$(EXT_FEATUR
2410: 45 5f 46 4c 41 47 53 29 20 2d 44 53 51 4c 49 54  E_FLAGS) -DSQLIT
2420: 45 5f 53 59 53 54 45 4d 5f 4d 41 4c 4c 4f 43 3d  E_SYSTEM_MALLOC=
2430: 31 0a 45 58 54 5f 46 45 41 54 55 52 45 5f 46 4c  1.EXT_FEATURE_FL
2440: 41 47 53 20 3d 20 24 28 45 58 54 5f 46 45 41 54  AGS = $(EXT_FEAT 2450: 55 52 45 5f 46 4c 41 47 53 29 20 2d 44 53 51 4c URE_FLAGS) -DSQL 2460: 49 54 45 5f 4f 4d 49 54 5f 4c 4f 43 41 4c 54 49 ITE_OMIT_LOCALTI 2470: 4d 45 3d 31 0a 21 45 4c 53 45 0a 45 58 54 5f 46 ME=1.!ELSE.EXT_F 2480: 45 41 54 55 52 45 5f 46 4c 41 47 53 20 3d 0a 21 EATURE_FLAGS =.! 2490: 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a 23 23 ENDIF.!ENDIF..## 24a0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 24b0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 24c0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 24d0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 24e0: 23 23 23 23 23 23 23 23 23 23 23 23 23 0a 23 23 #############.## 24f0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 2500: 23 23 23 23 23 23 23 23 23 23 23 23 23 20 45 4e ############# EN 2510: 44 20 4f 46 20 4f 50 54 49 4f 4e 53 20 23 23 23 D OF OPTIONS ### 2520: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 2530: 23 23 23 23 23 23 23 23 23 23 23 23 23 0a 23 23 #############.## 2540: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 2550: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 2560: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 2570: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 2580: 23 23 23 23 23 23 23 23 23 23 23 23 23 0a 0a 23 #############..# 2590: 20 57 68 65 6e 20 63 6f 6d 70 69 6c 69 6e 67 20 When compiling 25a0: 66 6f 72 20 74 68 65 20 57 69 6e 64 6f 77 73 20 for the Windows 25b0: 31 30 20 70 6c 61 74 66 6f 72 6d 2c 20 74 68 65 10 platform, the 25c0: 20 50 4c 41 54 46 4f 52 4d 20 6d 61 63 72 6f 20 PLATFORM macro 25d0: 6d 75 73 74 20 62 65 20 73 65 74 0a 23 20 74 6f must be set.# to 25e0: 20 61 6e 20 61 70 70 72 6f 70 72 69 61 74 65 20 an appropriate 25f0: 76 61 6c 75 65 20 28 65 2e 67 2e 20 78 38 36 2c value (e.g. x86, 2600: 20 78 36 34 2c 20 61 72 6d 2c 20 61 72 6d 36 34 x64, arm, arm64 2610: 2c 20 65 74 63 29 2e 0a 23 0a 21 49 46 20 24 28 , etc)..#.!IF$(
2620: 46 4f 52 5f 57 49 4e 31 30 29 21 3d 30 0a 21 49  FOR_WIN10)!=0.!I
2630: 46 4e 44 45 46 20 50 4c 41 54 46 4f 52 4d 0a 21  FNDEF PLATFORM.!
2640: 45 52 52 4f 52 20 55 73 69 6e 67 20 74 68 65 20  ERROR Using the
2650: 46 4f 52 5f 57 49 4e 31 30 20 6f 70 74 69 6f 6e  FOR_WIN10 option
2660: 20 72 65 71 75 69 72 65 73 20 61 20 76 61 6c 75   requires a valu
2670: 65 20 66 6f 72 20 50 4c 41 54 46 4f 52 4d 2e 0a  e for PLATFORM..
2680: 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a 23  !ENDIF.!ENDIF..#
2690: 20 54 68 69 73 20 61 73 73 75 6d 65 73 20 74 68   This assumes th
26a0: 61 74 20 4d 53 56 43 20 69 73 20 61 6c 77 61 79  at MSVC is alway
26b0: 73 20 69 6e 73 74 61 6c 6c 65 64 20 69 6e 20 33  s installed in 3
26c0: 32 2d 62 69 74 20 50 72 6f 67 72 61 6d 20 46 69  2-bit Program Fi
26d0: 6c 65 73 20 64 69 72 65 63 74 6f 72 79 0a 23 20  les directory.#
26e0: 61 6e 64 20 73 65 74 73 20 74 68 65 20 76 61 72  and sets the var
26f0: 69 61 62 6c 65 20 66 6f 72 20 75 73 65 20 69 6e  iable for use in
2700: 20 6c 6f 63 61 74 69 6e 67 20 6f 74 68 65 72 20   locating other
2710: 33 32 2d 62 69 74 20 69 6e 73 74 61 6c 6c 73 20  32-bit installs
2720: 61 63 63 6f 72 64 69 6e 67 6c 79 2e 0a 23 0a 50  accordingly..#.P
2730: 52 4f 47 52 41 4d 46 49 4c 45 53 5f 58 38 36 20  ROGRAMFILES_X86
2740: 3d 20 24 28 56 43 49 4e 53 54 41 4c 4c 44 49 52  = $(VCINSTALLDIR 2750: 29 5c 2e 2e 5c 2e 2e 0a 50 52 4f 47 52 41 4d 46 )\..\...PROGRAMF 2760: 49 4c 45 53 5f 58 38 36 20 3d 20 24 28 50 52 4f ILES_X86 =$(PRO
2770: 47 52 41 4d 46 49 4c 45 53 5f 58 38 36 3a 5c 5c  GRAMFILES_X86:\\
2780: 3d 5c 29 0a 0a 23 20 43 68 65 63 6b 20 66 6f 72  =\)..# Check for
2790: 20 74 68 65 20 70 72 65 64 65 66 69 6e 65 64 20   the predefined
27a0: 63 6f 6d 6d 61 6e 64 20 6d 61 63 72 6f 20 43 43  command macro CC
27b0: 2e 20 20 54 68 69 73 20 73 68 6f 75 6c 64 20 70  .  This should p
27c0: 6f 69 6e 74 20 74 6f 20 74 68 65 20 63 6f 6d 70  oint to the comp
27d0: 69 6c 65 72 0a 23 20 62 69 6e 61 72 79 20 66 6f  iler.# binary fo
27e0: 72 20 74 68 65 20 74 61 72 67 65 74 20 70 6c 61  r the target pla
27f0: 74 66 6f 72 6d 2e 20 20 49 66 20 69 74 20 69 73  tform.  If it is
2800: 20 6e 6f 74 20 64 65 66 69 6e 65 64 2c 20 73 69   not defined, si
2810: 6d 70 6c 79 20 64 65 66 69 6e 65 20 69 74 20 74  mply define it t
2820: 6f 0a 23 20 74 68 65 20 6c 65 67 61 63 79 20 64  o.# the legacy d
2830: 65 66 61 75 6c 74 20 76 61 6c 75 65 20 27 63 6c  efault value 'cl
2840: 2e 65 78 65 27 2e 0a 23 0a 21 49 46 4e 44 45 46  .exe'..#.!IFNDEF
2850: 20 43 43 0a 43 43 20 3d 20 63 6c 2e 65 78 65 0a   CC.CC = cl.exe.
2860: 21 45 4e 44 49 46 0a 0a 23 20 43 68 65 63 6b 20  !ENDIF..# Check
2870: 66 6f 72 20 74 68 65 20 70 72 65 64 65 66 69 6e  for the predefin
2880: 65 64 20 63 6f 6d 6d 61 6e 64 20 6d 61 63 72 6f  ed command macro
2890: 20 43 53 43 2e 20 20 54 68 69 73 20 73 68 6f 75   CSC.  This shou
28a0: 6c 64 20 70 6f 69 6e 74 20 74 6f 20 61 20 77 6f  ld point to a wo
28b0: 72 6b 69 6e 67 0a 23 20 43 20 53 68 61 72 70 20  rking.# C Sharp
28c0: 63 6f 6d 70 69 6c 65 72 20 62 69 6e 61 72 79 2e  compiler binary.
28d0: 20 20 49 66 20 69 74 20 69 73 20 6e 6f 74 20 64    If it is not d
28e0: 65 66 69 6e 65 64 2c 20 73 69 6d 70 6c 79 20 64  efined, simply d
28f0: 65 66 69 6e 65 20 69 74 20 74 6f 20 74 68 65 0a  efine it to the.
2900: 23 20 6c 65 67 61 63 79 20 64 65 66 61 75 6c 74  # legacy default
2910: 20 76 61 6c 75 65 20 27 63 73 63 2e 65 78 65 27   value 'csc.exe'
2920: 2e 0a 23 0a 21 49 46 4e 44 45 46 20 43 53 43 0a  ..#.!IFNDEF CSC.
2930: 43 53 43 20 3d 20 63 73 63 2e 65 78 65 0a 21 45  CSC = csc.exe.!E
2940: 4e 44 49 46 0a 0a 23 20 43 68 65 63 6b 20 66 6f  NDIF..# Check fo
2950: 72 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 6d 61  r the command ma
2960: 63 72 6f 20 4c 44 2e 20 20 54 68 69 73 20 73 68  cro LD.  This sh
2970: 6f 75 6c 64 20 70 6f 69 6e 74 20 74 6f 20 74 68  ould point to th
2980: 65 20 6c 69 6e 6b 65 72 20 62 69 6e 61 72 79 20  e linker binary
2990: 66 6f 72 0a 23 20 74 68 65 20 74 61 72 67 65 74  for.# the target
29a0: 20 70 6c 61 74 66 6f 72 6d 2e 20 20 49 66 20 69   platform.  If i
29b0: 74 20 69 73 20 6e 6f 74 20 64 65 66 69 6e 65 64  t is not defined
29c0: 2c 20 73 69 6d 70 6c 79 20 64 65 66 69 6e 65 20  , simply define
29d0: 69 74 20 74 6f 20 74 68 65 20 6c 65 67 61 63 79  it to the legacy
29e0: 0a 23 20 64 65 66 61 75 6c 74 20 76 61 6c 75 65  .# default value
29f0: 20 27 6c 69 6e 6b 2e 65 78 65 27 2e 0a 23 0a 21   'link.exe'..#.!
2a00: 49 46 4e 44 45 46 20 4c 44 0a 4c 44 20 3d 20 6c  IFNDEF LD.LD = l
2a10: 69 6e 6b 2e 65 78 65 0a 21 45 4e 44 49 46 0a 0a  ink.exe.!ENDIF..
2a20: 23 20 43 68 65 63 6b 20 66 6f 72 20 74 68 65 20  # Check for the
2a30: 70 72 65 64 65 66 69 6e 65 64 20 63 6f 6d 6d 61  predefined comma
2a40: 6e 64 20 6d 61 63 72 6f 20 52 43 2e 20 20 54 68  nd macro RC.  Th
2a50: 69 73 20 73 68 6f 75 6c 64 20 70 6f 69 6e 74 20  is should point
2a60: 74 6f 20 74 68 65 20 72 65 73 6f 75 72 63 65 0a  to the resource.
2a70: 23 20 63 6f 6d 70 69 6c 65 72 20 62 69 6e 61 72  # compiler binar
2a80: 79 20 66 6f 72 20 74 68 65 20 74 61 72 67 65 74  y for the target
2a90: 20 70 6c 61 74 66 6f 72 6d 2e 20 20 49 66 20 69   platform.  If i
2aa0: 74 20 69 73 20 6e 6f 74 20 64 65 66 69 6e 65 64  t is not defined
2ab0: 2c 20 73 69 6d 70 6c 79 20 64 65 66 69 6e 65 0a  , simply define.
2ac0: 23 20 69 74 20 74 6f 20 74 68 65 20 6c 65 67 61  # it to the lega
2ad0: 63 79 20 64 65 66 61 75 6c 74 20 76 61 6c 75 65  cy default value
2ae0: 20 27 72 63 2e 65 78 65 27 2e 0a 23 0a 21 49 46   'rc.exe'..#.!IF
2af0: 4e 44 45 46 20 52 43 0a 52 43 20 3d 20 72 63 2e  NDEF RC.RC = rc.
2b00: 65 78 65 0a 21 45 4e 44 49 46 0a 0a 23 20 43 68  exe.!ENDIF..# Ch
2b10: 65 63 6b 20 66 6f 72 20 74 68 65 20 4d 53 56 43  eck for the MSVC
2b20: 20 72 75 6e 74 69 6d 65 20 6c 69 62 72 61 72 79   runtime library
2b30: 20 70 61 74 68 20 6d 61 63 72 6f 2e 20 20 4f 74   path macro.  Ot
2b40: 68 65 72 77 69 73 65 2c 20 74 68 69 73 20 76 61  herwise, this va
2b50: 6c 75 65 20 77 69 6c 6c 0a 23 20 64 65 66 61 75  lue will.# defau
2b60: 6c 74 20 74 6f 20 74 68 65 20 27 6c 69 62 27 20  lt to the 'lib'
2b70: 64 69 72 65 63 74 6f 72 79 20 75 6e 64 65 72 6e  directory undern
2b80: 65 61 74 68 20 74 68 65 20 4d 53 56 43 20 69 6e  eath the MSVC in
2b90: 73 74 61 6c 6c 61 74 69 6f 6e 20 64 69 72 65 63  stallation direc
2ba0: 74 6f 72 79 2e 0a 23 0a 21 49 46 4e 44 45 46 20  tory..#.!IFNDEF
2bb0: 43 52 54 4c 49 42 50 41 54 48 0a 43 52 54 4c 49  CRTLIBPATH.CRTLI
2bc0: 42 50 41 54 48 20 3d 20 24 28 56 43 49 4e 53 54  BPATH = $(VCINST 2bd0: 41 4c 4c 44 49 52 29 5c 6c 69 62 0a 21 45 4e 44 ALLDIR)\lib.!END 2be0: 49 46 0a 0a 43 52 54 4c 49 42 50 41 54 48 20 3d IF..CRTLIBPATH = 2bf0: 20 24 28 43 52 54 4c 49 42 50 41 54 48 3a 5c 5c$(CRTLIBPATH:\\
2c00: 3d 5c 29 0a 0a 23 20 43 68 65 63 6b 20 66 6f 72  =\)..# Check for
2c10: 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 6d 61 63   the command mac
2c20: 72 6f 20 4e 43 43 2e 20 20 54 68 69 73 20 73 68  ro NCC.  This sh
2c30: 6f 75 6c 64 20 70 6f 69 6e 74 20 74 6f 20 74 68  ould point to th
2c40: 65 20 63 6f 6d 70 69 6c 65 72 20 62 69 6e 61 72  e compiler binar
2c50: 79 0a 23 20 66 6f 72 20 74 68 65 20 70 6c 61 74  y.# for the plat
2c60: 66 6f 72 6d 20 74 68 65 20 63 6f 6d 70 69 6c 61  form the compila
2c70: 74 69 6f 6e 20 70 72 6f 63 65 73 73 20 69 73 20  tion process is
2c80: 74 61 6b 69 6e 67 20 70 6c 61 63 65 20 6f 6e 2e  taking place on.
2c90: 20 20 49 66 20 69 74 20 69 73 20 6e 6f 74 0a 23    If it is not.#
2ca0: 20 64 65 66 69 6e 65 64 2c 20 73 69 6d 70 6c 79   defined, simply
2cb0: 20 64 65 66 69 6e 65 20 69 74 20 74 6f 20 68 61   define it to ha
2cc0: 76 65 20 74 68 65 20 73 61 6d 65 20 76 61 6c 75  ve the same valu
2cd0: 65 20 61 73 20 74 68 65 20 43 43 20 6d 61 63 72  e as the CC macr
2ce0: 6f 2e 20 20 57 68 65 6e 0a 23 20 63 72 6f 73 73  o.  When.# cross
2cf0: 2d 63 6f 6d 70 69 6c 69 6e 67 2c 20 69 74 20 69  -compiling, it i
2d00: 73 20 73 75 67 67 65 73 74 65 64 20 74 68 61 74  s suggested that
2d10: 20 74 68 69 73 20 6d 61 63 72 6f 20 62 65 20 6d   this macro be m
2d20: 6f 64 69 66 69 65 64 20 76 69 61 20 74 68 65 20  odified via the
2d30: 63 6f 6d 6d 61 6e 64 0a 23 20 6c 69 6e 65 20 28  command.# line (
2d40: 73 69 6e 63 65 20 6e 6d 61 6b 65 20 69 74 73 65  since nmake itse
2d50: 6c 66 20 64 6f 65 73 20 6e 6f 74 20 70 72 6f 76  lf does not prov
2d60: 69 64 65 20 61 20 62 75 69 6c 74 2d 69 6e 20 6d  ide a built-in m
2d70: 65 74 68 6f 64 20 74 6f 20 67 75 65 73 73 20 69  ethod to guess i
2d80: 74 29 2e 0a 23 20 46 6f 72 20 65 78 61 6d 70 6c  t)..# For exampl
2d90: 65 2c 20 74 6f 20 75 73 65 20 74 68 65 20 78 38  e, to use the x8
2da0: 36 20 63 6f 6d 70 69 6c 65 72 20 77 68 65 6e 20  6 compiler when
2db0: 63 72 6f 73 73 2d 63 6f 6d 70 69 6c 69 6e 67 20  cross-compiling
2dc0: 66 6f 72 20 78 36 34 2c 20 61 20 63 6f 6d 6d 61  for x64, a comma
2dd0: 6e 64 0a 23 20 6c 69 6e 65 20 73 69 6d 69 6c 61  nd.# line simila
2de0: 72 20 74 6f 20 74 68 65 20 66 6f 6c 6c 6f 77 69  r to the followi
2df0: 6e 67 20 63 6f 75 6c 64 20 62 65 20 75 73 65 64  ng could be used
2e00: 20 28 61 6c 6c 20 6f 6e 20 6f 6e 65 20 6c 69 6e   (all on one lin
2e10: 65 29 3a 0a 23 0a 23 20 20 20 20 20 6e 6d 61 6b  e):.#.#     nmak
2e20: 65 20 2f 66 20 4d 61 6b 65 66 69 6c 65 2e 6d 73  e /f Makefile.ms
2e30: 63 20 73 71 6c 69 74 65 33 2e 64 6c 6c 0a 23 20  c sqlite3.dll.#
2e40: 20 20 20 20 20 20 20 20 20 20 58 43 4f 4d 50 49            XCOMPI
2e50: 4c 45 3d 31 20 55 53 45 5f 4e 41 54 49 56 45 5f  LE=1 USE_NATIVE_
2e60: 4c 49 42 50 41 54 48 53 3d 31 0a 23 0a 23 20 41  LIBPATHS=1.#.# A
2e70: 6c 74 65 72 6e 61 74 69 76 65 6c 79 2c 20 74 68  lternatively, th
2e80: 65 20 66 75 6c 6c 20 70 61 74 68 20 61 6e 64 20  e full path and
2e90: 66 69 6c 65 20 6e 61 6d 65 20 74 6f 20 74 68 65  file name to the
2ea0: 20 63 6f 6d 70 69 6c 65 72 20 62 69 6e 61 72 79   compiler binary
2eb0: 20 66 6f 72 20 74 68 65 0a 23 20 70 6c 61 74 66   for the.# platf
2ec0: 6f 72 6d 20 74 68 65 20 63 6f 6d 70 69 6c 61 74  orm the compilat
2ed0: 69 6f 6e 20 70 72 6f 63 65 73 73 20 69 73 20 74  ion process is t
2ee0: 61 6b 69 6e 67 20 70 6c 61 63 65 20 6d 61 79 20  aking place may
2ef0: 62 65 20 73 70 65 63 69 66 69 65 64 20 28 61 6c  be specified (al
2f00: 6c 20 6f 6e 0a 23 20 6f 6e 65 20 6c 69 6e 65 29  l on.# one line)
2f10: 3a 0a 23 0a 23 20 20 20 20 20 6e 6d 61 6b 65 20  :.#.#     nmake
2f20: 2f 66 20 4d 61 6b 65 66 69 6c 65 2e 6d 73 63 20  /f Makefile.msc
2f30: 73 71 6c 69 74 65 33 2e 64 6c 6c 0a 23 20 20 20  sqlite3.dll.#
2f40: 20 20 20 20 20 20 20 20 22 4e 43 43 3d 22 22 25          "NCC=""%
2f50: 56 43 49 4e 53 54 41 4c 4c 44 49 52 25 5c 62 69  VCINSTALLDIR%\bi
2f60: 6e 5c 63 6c 2e 65 78 65 22 22 22 0a 23 20 20 20  n\cl.exe""".#
2f70: 20 20 20 20 20 20 20 20 55 53 45 5f 4e 41 54 49          USE_NATI
2f80: 56 45 5f 4c 49 42 50 41 54 48 53 3d 31 0a 23 0a  VE_LIBPATHS=1.#.
2f90: 21 49 46 44 45 46 20 4e 43 43 0a 4e 43 43 20 3d  !IFDEF NCC.NCC =
2fa0: 20 24 28 4e 43 43 3a 5c 5c 3d 5c 29 0a 21 45 4c   $(NCC:\\=\).!EL 2fb0: 53 45 49 46 20 24 28 58 43 4f 4d 50 49 4c 45 29 SEIF$(XCOMPILE)
2fc0: 21 3d 30 0a 4e 43 43 20 3d 20 22 24 28 56 43 49  !=0.NCC = "$(VCI 2fd0: 4e 53 54 41 4c 4c 44 49 52 29 5c 62 69 6e 5c 24 NSTALLDIR)\bin\$
2fe0: 28 43 43 29 22 0a 4e 43 43 20 3d 20 24 28 4e 43  (CC)".NCC = $(NC 2ff0: 43 3a 5c 5c 3d 5c 29 0a 21 45 4c 53 45 0a 4e 43 C:\\=\).!ELSE.NC 3000: 43 20 3d 20 24 28 43 43 29 0a 21 45 4e 44 49 46 C =$(CC).!ENDIF
3010: 0a 0a 23 20 43 68 65 63 6b 20 66 6f 72 20 74 68  ..# Check for th
3020: 65 20 4d 53 56 43 20 6e 61 74 69 76 65 20 72 75  e MSVC native ru
3030: 6e 74 69 6d 65 20 6c 69 62 72 61 72 79 20 70 61  ntime library pa
3040: 74 68 20 6d 61 63 72 6f 2e 20 20 4f 74 68 65 72  th macro.  Other
3050: 77 69 73 65 2c 0a 23 20 74 68 69 73 20 76 61 6c  wise,.# this val
3060: 75 65 20 77 69 6c 6c 20 64 65 66 61 75 6c 74 20  ue will default
3070: 74 6f 20 74 68 65 20 27 6c 69 62 27 20 64 69 72  to the 'lib' dir
3080: 65 63 74 6f 72 79 20 75 6e 64 65 72 6e 65 61 74  ectory underneat
3090: 68 20 74 68 65 20 4d 53 56 43 0a 23 20 69 6e 73  h the MSVC.# ins
30a0: 74 61 6c 6c 61 74 69 6f 6e 20 64 69 72 65 63 74  tallation direct
30b0: 6f 72 79 2e 0a 23 0a 21 49 46 4e 44 45 46 20 4e  ory..#.!IFNDEF N
30c0: 43 52 54 4c 49 42 50 41 54 48 0a 4e 43 52 54 4c  CRTLIBPATH.NCRTL
30d0: 49 42 50 41 54 48 20 3d 20 24 28 56 43 49 4e 53  IBPATH = $(VCINS 30e0: 54 41 4c 4c 44 49 52 29 5c 6c 69 62 0a 21 45 4e TALLDIR)\lib.!EN 30f0: 44 49 46 0a 0a 4e 43 52 54 4c 49 42 50 41 54 48 DIF..NCRTLIBPATH 3100: 20 3d 20 24 28 4e 43 52 54 4c 49 42 50 41 54 48 =$(NCRTLIBPATH
3110: 3a 5c 5c 3d 5c 29 0a 0a 23 20 43 68 65 63 6b 20  :\\=\)..# Check
3120: 66 6f 72 20 74 68 65 20 50 6c 61 74 66 6f 72 6d  for the Platform
3130: 20 53 44 4b 20 6c 69 62 72 61 72 79 20 70 61 74   SDK library pat
3140: 68 20 6d 61 63 72 6f 2e 20 20 4f 74 68 65 72 77  h macro.  Otherw
3150: 69 73 65 2c 20 74 68 69 73 0a 23 20 76 61 6c 75  ise, this.# valu
3160: 65 20 77 69 6c 6c 20 64 65 66 61 75 6c 74 20 74  e will default t
3170: 6f 20 74 68 65 20 27 6c 69 62 27 20 64 69 72 65  o the 'lib' dire
3180: 63 74 6f 72 79 20 75 6e 64 65 72 6e 65 61 74 68  ctory underneath
3190: 20 74 68 65 20 57 69 6e 64 6f 77 73 0a 23 20 53   the Windows.# S
31a0: 44 4b 20 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 20  DK installation
31b0: 64 69 72 65 63 74 6f 72 79 20 28 74 68 65 20 65  directory (the e
31c0: 6e 76 69 72 6f 6e 6d 65 6e 74 20 76 61 72 69 61  nvironment varia
31d0: 62 6c 65 20 75 73 65 64 20 61 70 70 65 61 72 73  ble used appears
31e0: 0a 23 20 74 6f 20 62 65 20 61 76 61 69 6c 61 62  .# to be availab
31f0: 6c 65 20 77 68 65 6e 20 75 73 69 6e 67 20 56 69  le when using Vi
3200: 73 75 61 6c 20 43 2b 2b 20 32 30 30 38 20 6f 72  sual C++ 2008 or
3210: 20 6c 61 74 65 72 20 76 69 61 20 74 68 65 0a 23   later via the.#
3220: 20 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65 29 2e 0a   command line)..
3230: 23 0a 21 49 46 4e 44 45 46 20 4e 53 44 4b 4c 49  #.!IFNDEF NSDKLI
3240: 42 50 41 54 48 0a 4e 53 44 4b 4c 49 42 50 41 54  BPATH.NSDKLIBPAT
3250: 48 20 3d 20 24 28 57 49 4e 44 4f 57 53 53 44 4b  H = $(WINDOWSSDK 3260: 44 49 52 29 5c 6c 69 62 0a 21 45 4e 44 49 46 0a DIR)\lib.!ENDIF. 3270: 0a 4e 53 44 4b 4c 49 42 50 41 54 48 20 3d 20 24 .NSDKLIBPATH =$
3280: 28 4e 53 44 4b 4c 49 42 50 41 54 48 3a 5c 5c 3d  (NSDKLIBPATH:\\=
3290: 5c 29 0a 0a 23 20 43 68 65 63 6b 20 66 6f 72 20  \)..# Check for
32a0: 74 68 65 20 55 43 52 54 20 6c 69 62 72 61 72 79  the UCRT library
32b0: 20 70 61 74 68 20 6d 61 63 72 6f 2e 20 20 4f 74   path macro.  Ot
32c0: 68 65 72 77 69 73 65 2c 20 74 68 69 73 20 76 61  herwise, this va
32d0: 6c 75 65 20 77 69 6c 6c 0a 23 20 64 65 66 61 75  lue will.# defau
32e0: 6c 74 20 74 6f 20 74 68 65 20 76 65 72 73 69 6f  lt to the versio
32f0: 6e 2d 73 70 65 63 69 66 69 63 2c 20 70 6c 61 74  n-specific, plat
3300: 66 6f 72 6d 2d 73 70 65 63 69 66 69 63 20 27 6c  form-specific 'l
3310: 69 62 27 20 64 69 72 65 63 74 6f 72 79 0a 23 20  ib' directory.#
3320: 75 6e 64 65 72 6e 65 61 74 68 20 74 68 65 20 57  underneath the W
3330: 69 6e 64 6f 77 73 20 53 44 4b 20 69 6e 73 74 61  indows SDK insta
3340: 6c 6c 61 74 69 6f 6e 20 64 69 72 65 63 74 6f 72  llation director
3350: 79 2e 0a 23 0a 21 49 46 4e 44 45 46 20 55 43 52  y..#.!IFNDEF UCR
3360: 54 4c 49 42 50 41 54 48 0a 55 43 52 54 4c 49 42  TLIBPATH.UCRTLIB
3370: 50 41 54 48 20 3d 20 24 28 57 49 4e 44 4f 57 53  PATH = $(WINDOWS 3380: 53 44 4b 44 49 52 29 5c 6c 69 62 5c 24 28 57 49 SDKDIR)\lib\$(WI
3390: 4e 44 4f 57 53 53 44 4b 4c 49 42 56 45 52 53 49  NDOWSSDKLIBVERSI
33a0: 4f 4e 29 5c 75 63 72 74 5c 24 28 50 4c 41 54 46  ON)\ucrt\$(PLATF 33b0: 4f 52 4d 29 0a 21 45 4e 44 49 46 0a 0a 55 43 52 ORM).!ENDIF..UCR 33c0: 54 4c 49 42 50 41 54 48 20 3d 20 24 28 55 43 52 TLIBPATH =$(UCR
33d0: 54 4c 49 42 50 41 54 48 3a 5c 5c 3d 5c 29 0a 0a  TLIBPATH:\\=\)..
33e0: 23 20 43 20 63 6f 6d 70 69 6c 65 72 20 61 6e 64  # C compiler and
33f0: 20 6f 70 74 69 6f 6e 73 20 66 6f 72 20 75 73 65   options for use
3400: 20 69 6e 20 62 75 69 6c 64 69 6e 67 20 65 78 65   in building exe
3410: 63 75 74 61 62 6c 65 73 20 74 68 61 74 0a 23 20  cutables that.#
3420: 77 69 6c 6c 20 72 75 6e 20 6f 6e 20 74 68 65 20  will run on the
3430: 70 6c 61 74 66 6f 72 6d 20 74 68 61 74 20 69 73  platform that is
3440: 20 64 6f 69 6e 67 20 74 68 65 20 62 75 69 6c 64   doing the build
3450: 2e 0a 23 0a 21 49 46 20 24 28 55 53 45 5f 46 55  ..#.!IF $(USE_FU 3460: 4c 4c 57 41 52 4e 29 21 3d 30 0a 42 43 43 20 3d LLWARN)!=0.BCC = 3470: 20 24 28 4e 43 43 29 20 2d 6e 6f 6c 6f 67 6f 20$(NCC) -nologo
3480: 2d 57 34 20 24 28 43 43 4f 50 54 53 29 20 24 28  -W4 $(CCOPTS)$(
3490: 42 43 43 4f 50 54 53 29 0a 21 45 4c 53 45 0a 42  BCCOPTS).!ELSE.B
34a0: 43 43 20 3d 20 24 28 4e 43 43 29 20 2d 6e 6f 6c  CC = $(NCC) -nol 34b0: 6f 67 6f 20 2d 57 33 20 24 28 43 43 4f 50 54 53 ogo -W3$(CCOPTS
34c0: 29 20 24 28 42 43 43 4f 50 54 53 29 0a 21 45 4e  ) $(BCCOPTS).!EN 34d0: 44 49 46 0a 0a 23 20 43 68 65 63 6b 20 69 66 20 DIF..# Check if 34e0: 61 73 73 65 6d 62 6c 79 20 63 6f 64 65 20 6c 69 assembly code li 34f0: 73 74 69 6e 67 73 20 73 68 6f 75 6c 64 20 62 65 stings should be 3500: 20 67 65 6e 65 72 61 74 65 64 20 66 6f 72 20 74 generated for t 3510: 68 65 20 73 6f 75 72 63 65 0a 23 20 63 6f 64 65 he source.# code 3520: 20 66 69 6c 65 73 20 74 6f 20 62 65 20 63 6f 6d files to be com 3530: 70 69 6c 65 64 2e 0a 23 0a 21 49 46 20 24 28 55 piled..#.!IF$(U
3540: 53 45 5f 4c 49 53 54 49 4e 47 53 29 21 3d 30 0a  SE_LISTINGS)!=0.
3550: 42 43 43 20 3d 20 24 28 42 43 43 29 20 2d 46 41  BCC = $(BCC) -FA 3560: 63 73 0a 21 45 4e 44 49 46 0a 0a 23 20 43 68 65 cs.!ENDIF..# Che 3570: 63 6b 20 69 66 20 74 68 65 20 6e 61 74 69 76 65 ck if the native 3580: 20 6c 69 62 72 61 72 79 20 70 61 74 68 73 20 73 library paths s 3590: 68 6f 75 6c 64 20 62 65 20 75 73 65 64 20 77 68 hould be used wh 35a0: 65 6e 20 63 6f 6d 70 69 6c 69 6e 67 0a 23 20 74 en compiling.# t 35b0: 68 65 20 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65 20 he command line 35c0: 74 6f 6f 6c 73 20 75 73 65 64 20 64 75 72 69 6e tools used durin 35d0: 67 20 74 68 65 20 63 6f 6d 70 69 6c 61 74 69 6f g the compilatio 35e0: 6e 20 70 72 6f 63 65 73 73 2e 20 20 49 66 0a 23 n process. If.# 35f0: 20 73 6f 2c 20 73 65 74 20 74 68 65 20 6e 65 63 so, set the nec 3600: 65 73 73 61 72 79 20 6d 61 63 72 6f 20 6e 6f 77 essary macro now 3610: 2e 0a 23 0a 21 49 46 20 24 28 55 53 45 5f 4e 41 ..#.!IF$(USE_NA
3620: 54 49 56 45 5f 4c 49 42 50 41 54 48 53 29 21 3d  TIVE_LIBPATHS)!=
3630: 30 0a 4e 4c 54 4c 49 42 50 41 54 48 53 20 3d 20  0.NLTLIBPATHS =
3640: 22 2f 4c 49 42 50 41 54 48 3a 24 28 4e 43 52 54  "/LIBPATH:$(NCRT 3650: 4c 49 42 50 41 54 48 29 22 20 22 2f 4c 49 42 50 LIBPATH)" "/LIBP 3660: 41 54 48 3a 24 28 4e 53 44 4b 4c 49 42 50 41 54 ATH:$(NSDKLIBPAT
3670: 48 29 22 0a 0a 21 49 46 44 45 46 20 4e 55 43 52  H)"..!IFDEF NUCR
3680: 54 4c 49 42 50 41 54 48 0a 4e 55 43 52 54 4c 49  TLIBPATH.NUCRTLI
3690: 42 50 41 54 48 20 3d 20 24 28 4e 55 43 52 54 4c  BPATH = $(NUCRTL 36a0: 49 42 50 41 54 48 3a 5c 5c 3d 5c 29 0a 4e 4c 54 IBPATH:\\=\).NLT 36b0: 4c 49 42 50 41 54 48 53 20 3d 20 24 28 4e 4c 54 LIBPATHS =$(NLT
36c0: 4c 49 42 50 41 54 48 53 29 20 22 2f 4c 49 42 50  LIBPATHS) "/LIBP
36d0: 41 54 48 3a 24 28 4e 55 43 52 54 4c 49 42 50 41  ATH:$(NUCRTLIBPA 36e0: 54 48 29 22 0a 21 45 4e 44 49 46 0a 21 45 4e 44 TH)".!ENDIF.!END 36f0: 49 46 0a 0a 23 20 43 20 63 6f 6d 70 69 6c 65 72 IF..# C compiler 3700: 20 61 6e 64 20 6f 70 74 69 6f 6e 73 20 66 6f 72 and options for 3710: 20 75 73 65 20 69 6e 20 62 75 69 6c 64 69 6e 67 use in building 3720: 20 65 78 65 63 75 74 61 62 6c 65 73 20 74 68 61 executables tha 3730: 74 0a 23 20 77 69 6c 6c 20 72 75 6e 20 6f 6e 20 t.# will run on 3740: 74 68 65 20 74 61 72 67 65 74 20 70 6c 61 74 66 the target platf 3750: 6f 72 6d 2e 20 20 28 42 43 43 20 61 6e 64 20 54 orm. (BCC and T 3760: 43 43 20 61 72 65 20 75 73 75 61 6c 6c 79 20 74 CC are usually t 3770: 68 65 0a 23 20 73 61 6d 65 20 75 6e 6c 65 73 73 he.# same unless 3780: 20 79 6f 75 72 20 61 72 65 20 63 72 6f 73 73 2d your are cross- 3790: 63 6f 6d 70 69 6c 69 6e 67 2e 29 0a 23 0a 21 49 compiling.).#.!I 37a0: 46 20 24 28 55 53 45 5f 46 55 4c 4c 57 41 52 4e F$(USE_FULLWARN
37b0: 29 21 3d 30 0a 54 43 43 20 3d 20 24 28 43 43 29  )!=0.TCC = $(CC) 37c0: 20 2d 6e 6f 6c 6f 67 6f 20 2d 57 34 20 2d 44 49 -nologo -W4 -DI 37d0: 4e 43 4c 55 44 45 5f 4d 53 56 43 5f 48 3d 31 20 NCLUDE_MSVC_H=1 37e0: 24 28 43 43 4f 50 54 53 29 20 24 28 54 43 43 4f$(CCOPTS) $(TCCO 37f0: 50 54 53 29 0a 21 45 4c 53 45 0a 54 43 43 20 3d PTS).!ELSE.TCC = 3800: 20 24 28 43 43 29 20 2d 6e 6f 6c 6f 67 6f 20 2d$(CC) -nologo -
3810: 57 33 20 24 28 43 43 4f 50 54 53 29 20 24 28 54  W3 $(CCOPTS)$(T
3820: 43 43 4f 50 54 53 29 0a 21 45 4e 44 49 46 0a 0a  CCOPTS).!ENDIF..
3830: 23 20 43 68 65 63 6b 20 69 66 20 77 61 72 6e 69  # Check if warni
3840: 6e 67 73 20 73 68 6f 75 6c 64 20 62 65 20 74 72  ngs should be tr
3850: 65 61 74 65 64 20 61 73 20 65 72 72 6f 72 73 20  eated as errors
3860: 77 68 65 6e 20 63 6f 6d 70 69 6c 69 6e 67 2e 0a  when compiling..
3870: 23 0a 21 49 46 20 24 28 55 53 45 5f 46 41 54 41  #.!IF $(USE_FATA 3880: 4c 5f 57 41 52 4e 29 21 3d 30 0a 54 43 43 20 3d L_WARN)!=0.TCC = 3890: 20 24 28 54 43 43 29 20 2d 57 58 0a 21 45 4e 44$(TCC) -WX.!END
38a0: 49 46 0a 0a 54 43 43 20 3d 20 24 28 54 43 43 29  IF..TCC = $(TCC) 38b0: 20 2d 44 53 51 4c 49 54 45 5f 4f 53 5f 57 49 4e -DSQLITE_OS_WIN 38c0: 3d 31 20 2d 49 2e 20 2d 49 24 28 54 4f 50 29 20 =1 -I. -I$(TOP)
38d0: 2d 49 24 28 54 4f 50 29 5c 73 72 63 20 2d 66 70  -I$(TOP)\src -fp 38e0: 3a 70 72 65 63 69 73 65 0a 52 43 43 20 3d 20 24 :precise.RCC =$
38f0: 28 52 43 29 20 2d 44 53 51 4c 49 54 45 5f 4f 53  (RC) -DSQLITE_OS
3900: 5f 57 49 4e 3d 31 20 2d 49 2e 20 2d 49 24 28 54  _WIN=1 -I. -I$(T 3910: 4f 50 29 20 2d 49 24 28 54 4f 50 29 5c 73 72 63 OP) -I$(TOP)\src
3920: 20 24 28 52 43 4f 50 54 53 29 20 24 28 52 43 43   $(RCOPTS)$(RCC
3930: 4f 50 54 53 29 0a 0a 23 20 43 68 65 63 6b 20 69  OPTS)..# Check i
3940: 66 20 77 65 20 77 61 6e 74 20 74 6f 20 75 73 65  f we want to use
3950: 20 74 68 65 20 22 73 74 64 63 61 6c 6c 22 20 63   the "stdcall" c
3960: 61 6c 6c 69 6e 67 20 63 6f 6e 76 65 6e 74 69 6f  alling conventio
3970: 6e 20 77 68 65 6e 20 63 6f 6d 70 69 6c 69 6e 67  n when compiling
3980: 2e 0a 23 20 54 68 69 73 20 69 73 20 6e 6f 74 20  ..# This is not
3990: 73 75 70 70 6f 72 74 65 64 20 62 79 20 74 68 65  supported by the
39a0: 20 63 6f 6d 70 69 6c 65 72 73 20 66 6f 72 20 6e   compilers for n
39b0: 6f 6e 2d 78 38 36 20 70 6c 61 74 66 6f 72 6d 73  on-x86 platforms
39c0: 2e 20 20 49 74 20 73 68 6f 75 6c 64 0a 23 20 61  .  It should.# a
39d0: 6c 73 6f 20 62 65 20 6e 6f 74 65 64 20 68 65 72  lso be noted her
39e0: 65 20 74 68 61 74 20 62 75 69 6c 64 69 6e 67 20  e that building
39f0: 61 6e 79 20 74 61 72 67 65 74 20 77 69 74 68 20  any target with
3a00: 74 68 65 73 65 20 22 73 74 64 63 61 6c 6c 22 20  these "stdcall"
3a10: 6f 70 74 69 6f 6e 73 0a 23 20 77 69 6c 6c 20 6d  options.# will m
3a20: 6f 73 74 20 6c 69 6b 65 6c 79 20 66 61 69 6c 20  ost likely fail
3a30: 69 66 20 74 68 65 20 54 63 6c 20 6c 69 62 72 61  if the Tcl libra
3a40: 72 79 20 69 73 20 61 6c 73 6f 20 72 65 71 75 69  ry is also requi
3a50: 72 65 64 2e 20 20 54 68 69 73 20 69 73 20 64 75  red.  This is du
3a60: 65 0a 23 20 74 6f 20 68 6f 77 20 74 68 65 20 54  e.# to how the T
3a70: 63 6c 20 6c 69 62 72 61 72 79 20 66 75 6e 63 74  cl library funct
3a80: 69 6f 6e 73 20 61 72 65 20 64 65 63 6c 61 72 65  ions are declare
3a90: 64 20 61 6e 64 20 65 78 70 6f 72 74 65 64 20 28  d and exported (
3aa0: 69 2e 65 2e 20 77 69 74 68 6f 75 74 0a 23 20 61  i.e. without.# a
3ab0: 6e 20 65 78 70 6c 69 63 69 74 20 63 61 6c 6c 69  n explicit calli
3ac0: 6e 67 20 63 6f 6e 76 65 6e 74 69 6f 6e 2c 20 77  ng convention, w
3ad0: 68 69 63 68 20 72 65 73 75 6c 74 73 20 69 6e 20  hich results in
3ae0: 22 63 64 65 63 6c 22 29 2e 0a 23 0a 21 49 46 20  "cdecl")..#.!IF
3af0: 24 28 55 53 45 5f 53 54 44 43 41 4c 4c 29 21 3d  $(USE_STDCALL)!= 3b00: 30 20 7c 7c 20 24 28 46 4f 52 5f 57 49 4e 31 30 0 ||$(FOR_WIN10
3b10: 29 21 3d 30 0a 21 49 46 20 22 24 28 50 4c 41 54  )!=0.!IF "$(PLAT 3b20: 46 4f 52 4d 29 22 3d 3d 22 78 38 36 22 0a 43 4f FORM)"=="x86".CO 3b30: 52 45 5f 43 43 4f 4e 56 5f 4f 50 54 53 20 3d 20 RE_CCONV_OPTS = 3b40: 2d 47 7a 20 2d 44 53 51 4c 49 54 45 5f 43 44 45 -Gz -DSQLITE_CDE 3b50: 43 4c 3d 5f 5f 63 64 65 63 6c 20 2d 44 53 51 4c CL=__cdecl -DSQL 3b60: 49 54 45 5f 41 50 49 43 41 4c 4c 3d 5f 5f 73 74 ITE_APICALL=__st 3b70: 64 63 61 6c 6c 20 2d 44 53 51 4c 49 54 45 5f 43 dcall -DSQLITE_C 3b80: 41 4c 4c 42 41 43 4b 3d 5f 5f 73 74 64 63 61 6c ALLBACK=__stdcal 3b90: 6c 20 2d 44 53 51 4c 49 54 45 5f 53 59 53 41 50 l -DSQLITE_SYSAP 3ba0: 49 3d 5f 5f 73 74 64 63 61 6c 6c 0a 53 48 45 4c I=__stdcall.SHEL 3bb0: 4c 5f 43 43 4f 4e 56 5f 4f 50 54 53 20 3d 20 2d L_CCONV_OPTS = - 3bc0: 47 7a 20 2d 44 53 51 4c 49 54 45 5f 43 44 45 43 Gz -DSQLITE_CDEC 3bd0: 4c 3d 5f 5f 63 64 65 63 6c 20 2d 44 53 51 4c 49 L=__cdecl -DSQLI 3be0: 54 45 5f 41 50 49 43 41 4c 4c 3d 5f 5f 73 74 64 TE_APICALL=__std 3bf0: 63 61 6c 6c 20 2d 44 53 51 4c 49 54 45 5f 43 41 call -DSQLITE_CA 3c00: 4c 4c 42 41 43 4b 3d 5f 5f 73 74 64 63 61 6c 6c LLBACK=__stdcall 3c10: 20 2d 44 53 51 4c 49 54 45 5f 53 59 53 41 50 49 -DSQLITE_SYSAPI 3c20: 3d 5f 5f 73 74 64 63 61 6c 6c 0a 23 20 3c 3c 6d =__stdcall.# <<m 3c30: 61 72 6b 3e 3e 0a 54 45 53 54 5f 43 43 4f 4e 56 ark>>.TEST_CCONV 3c40: 5f 4f 50 54 53 20 3d 20 2d 47 7a 20 2d 44 53 51 _OPTS = -Gz -DSQ 3c50: 4c 49 54 45 5f 43 44 45 43 4c 3d 5f 5f 63 64 65 LITE_CDECL=__cde 3c60: 63 6c 20 2d 44 53 51 4c 49 54 45 5f 41 50 49 43 cl -DSQLITE_APIC 3c70: 41 4c 4c 3d 5f 5f 73 74 64 63 61 6c 6c 20 2d 44 ALL=__stdcall -D 3c80: 53 51 4c 49 54 45 5f 43 41 4c 4c 42 41 43 4b 3d SQLITE_CALLBACK= 3c90: 5f 5f 73 74 64 63 61 6c 6c 20 2d 44 53 51 4c 49 __stdcall -DSQLI 3ca0: 54 45 5f 53 59 53 41 50 49 3d 5f 5f 73 74 64 63 TE_SYSAPI=__stdc 3cb0: 61 6c 6c 20 2d 44 49 4e 43 4c 55 44 45 5f 53 51 all -DINCLUDE_SQ 3cc0: 4c 49 54 45 5f 54 43 4c 5f 48 3d 31 20 2d 44 53 LITE_TCL_H=1 -DS 3cd0: 51 4c 49 54 45 5f 54 43 4c 41 50 49 3d 5f 5f 63 QLITE_TCLAPI=__c 3ce0: 64 65 63 6c 0a 23 20 3c 3c 2f 6d 61 72 6b 3e 3e decl.# <</mark>> 3cf0: 0a 21 45 4c 53 45 0a 21 49 46 4e 44 45 46 20 50 .!ELSE.!IFNDEF P 3d00: 4c 41 54 46 4f 52 4d 0a 43 4f 52 45 5f 43 43 4f LATFORM.CORE_CCO 3d10: 4e 56 5f 4f 50 54 53 20 3d 20 2d 47 7a 20 2d 44 NV_OPTS = -Gz -D 3d20: 53 51 4c 49 54 45 5f 43 44 45 43 4c 3d 5f 5f 63 SQLITE_CDECL=__c 3d30: 64 65 63 6c 20 2d 44 53 51 4c 49 54 45 5f 41 50 decl -DSQLITE_AP 3d40: 49 43 41 4c 4c 3d 5f 5f 73 74 64 63 61 6c 6c 20 ICALL=__stdcall 3d50: 2d 44 53 51 4c 49 54 45 5f 43 41 4c 4c 42 41 43 -DSQLITE_CALLBAC 3d60: 4b 3d 5f 5f 73 74 64 63 61 6c 6c 20 2d 44 53 51 K=__stdcall -DSQ 3d70: 4c 49 54 45 5f 53 59 53 41 50 49 3d 5f 5f 73 74 LITE_SYSAPI=__st 3d80: 64 63 61 6c 6c 0a 53 48 45 4c 4c 5f 43 43 4f 4e dcall.SHELL_CCON 3d90: 56 5f 4f 50 54 53 20 3d 20 2d 47 7a 20 2d 44 53 V_OPTS = -Gz -DS 3da0: 51 4c 49 54 45 5f 43 44 45 43 4c 3d 5f 5f 63 64 QLITE_CDECL=__cd 3db0: 65 63 6c 20 2d 44 53 51 4c 49 54 45 5f 41 50 49 ecl -DSQLITE_API 3dc0: 43 41 4c 4c 3d 5f 5f 73 74 64 63 61 6c 6c 20 2d CALL=__stdcall - 3dd0: 44 53 51 4c 49 54 45 5f 43 41 4c 4c 42 41 43 4b DSQLITE_CALLBACK 3de0: 3d 5f 5f 73 74 64 63 61 6c 6c 20 2d 44 53 51 4c =__stdcall -DSQL 3df0: 49 54 45 5f 53 59 53 41 50 49 3d 5f 5f 73 74 64 ITE_SYSAPI=__std 3e00: 63 61 6c 6c 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a call.# <<mark>>. 3e10: 54 45 53 54 5f 43 43 4f 4e 56 5f 4f 50 54 53 20 TEST_CCONV_OPTS 3e20: 3d 20 2d 47 7a 20 2d 44 53 51 4c 49 54 45 5f 43 = -Gz -DSQLITE_C 3e30: 44 45 43 4c 3d 5f 5f 63 64 65 63 6c 20 2d 44 53 DECL=__cdecl -DS 3e40: 51 4c 49 54 45 5f 41 50 49 43 41 4c 4c 3d 5f 5f QLITE_APICALL=__ 3e50: 73 74 64 63 61 6c 6c 20 2d 44 53 51 4c 49 54 45 stdcall -DSQLITE 3e60: 5f 43 41 4c 4c 42 41 43 4b 3d 5f 5f 73 74 64 63 _CALLBACK=__stdc 3e70: 61 6c 6c 20 2d 44 53 51 4c 49 54 45 5f 53 59 53 all -DSQLITE_SYS 3e80: 41 50 49 3d 5f 5f 73 74 64 63 61 6c 6c 20 2d 44 API=__stdcall -D 3e90: 49 4e 43 4c 55 44 45 5f 53 51 4c 49 54 45 5f 54 INCLUDE_SQLITE_T 3ea0: 43 4c 5f 48 3d 31 20 2d 44 53 51 4c 49 54 45 5f CL_H=1 -DSQLITE_ 3eb0: 54 43 4c 41 50 49 3d 5f 5f 63 64 65 63 6c 0a 23 TCLAPI=__cdecl.# 3ec0: 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a 21 45 4c 53 45 <</mark>>.!ELSE 3ed0: 0a 43 4f 52 45 5f 43 43 4f 4e 56 5f 4f 50 54 53 .CORE_CCONV_OPTS 3ee0: 20 3d 0a 53 48 45 4c 4c 5f 43 43 4f 4e 56 5f 4f =.SHELL_CCONV_O 3ef0: 50 54 53 20 3d 0a 23 20 3c 3c 6d 61 72 6b 3e 3e PTS =.# <<mark>> 3f00: 0a 54 45 53 54 5f 43 43 4f 4e 56 5f 4f 50 54 53 .TEST_CCONV_OPTS 3f10: 20 3d 0a 23 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a 21 =.# <</mark>>.! 3f20: 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 21 45 4c ENDIF.!ENDIF.!EL 3f30: 53 45 0a 43 4f 52 45 5f 43 43 4f 4e 56 5f 4f 50 SE.CORE_CCONV_OP 3f40: 54 53 20 3d 0a 53 48 45 4c 4c 5f 43 43 4f 4e 56 TS =.SHELL_CCONV 3f50: 5f 4f 50 54 53 20 3d 0a 23 20 3c 3c 6d 61 72 6b _OPTS =.# <<mark 3f60: 3e 3e 0a 54 45 53 54 5f 43 43 4f 4e 56 5f 4f 50 >>.TEST_CCONV_OP 3f70: 54 53 20 3d 0a 23 20 3c 3c 2f 6d 61 72 6b 3e 3e TS =.# <</mark>> 3f80: 0a 21 45 4e 44 49 46 0a 0a 23 20 54 68 65 73 65 .!ENDIF..# These 3f90: 20 61 72 65 20 61 64 64 69 74 69 6f 6e 61 6c 20 are additional 3fa0: 63 6f 6d 70 69 6c 65 72 20 6f 70 74 69 6f 6e 73 compiler options 3fb0: 20 75 73 65 64 20 66 6f 72 20 74 68 65 20 63 6f used for the co 3fc0: 72 65 20 6c 69 62 72 61 72 79 2e 0a 23 0a 21 49 re library..#.!I 3fd0: 46 4e 44 45 46 20 43 4f 52 45 5f 43 4f 4d 50 49 FNDEF CORE_COMPI 3fe0: 4c 45 5f 4f 50 54 53 0a 21 49 46 20 24 28 44 59 LE_OPTS.!IF$(DY
3ff0: 4e 41 4d 49 43 5f 53 48 45 4c 4c 29 21 3d 30 20  NAMIC_SHELL)!=0
4000: 7c 7c 20 24 28 46 4f 52 5f 57 49 4e 31 30 29 21  || $(FOR_WIN10)! 4010: 3d 30 0a 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f =0.CORE_COMPILE_ 4020: 4f 50 54 53 20 3d 20 24 28 43 4f 52 45 5f 43 43 OPTS =$(CORE_CC
4030: 4f 4e 56 5f 4f 50 54 53 29 20 2d 44 53 51 4c 49  ONV_OPTS) -DSQLI
4040: 54 45 5f 41 50 49 3d 5f 5f 64 65 63 6c 73 70 65  TE_API=__declspe
4050: 63 28 64 6c 6c 65 78 70 6f 72 74 29 0a 21 45 4c  c(dllexport).!EL
4060: 53 45 0a 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f  SE.CORE_COMPILE_
4070: 4f 50 54 53 20 3d 20 24 28 43 4f 52 45 5f 43 43  OPTS = $(CORE_CC 4080: 4f 4e 56 5f 4f 50 54 53 29 0a 21 45 4e 44 49 46 ONV_OPTS).!ENDIF 4090: 0a 21 45 4e 44 49 46 0a 0a 23 20 54 68 65 73 65 .!ENDIF..# These 40a0: 20 61 72 65 20 74 68 65 20 61 64 64 69 74 69 6f are the additio 40b0: 6e 61 6c 20 74 61 72 67 65 74 73 20 74 68 61 74 nal targets that 40c0: 20 74 68 65 20 63 6f 72 65 20 6c 69 62 72 61 72 the core librar 40d0: 79 20 73 68 6f 75 6c 64 20 64 65 70 65 6e 64 20 y should depend 40e0: 6f 6e 0a 23 20 77 68 65 6e 20 6c 69 6e 6b 69 6e on.# when linkin 40f0: 67 2e 0a 23 0a 21 49 46 4e 44 45 46 20 43 4f 52 g..#.!IFNDEF COR 4100: 45 5f 4c 49 4e 4b 5f 44 45 50 0a 21 49 46 20 24 E_LINK_DEP.!IF$
4110: 28 44 59 4e 41 4d 49 43 5f 53 48 45 4c 4c 29 21  (DYNAMIC_SHELL)!
4120: 3d 30 0a 43 4f 52 45 5f 4c 49 4e 4b 5f 44 45 50  =0.CORE_LINK_DEP
4130: 20 3d 0a 21 45 4c 53 45 49 46 20 24 28 46 4f 52   =.!ELSEIF $(FOR 4140: 5f 57 49 4e 31 30 29 3d 3d 30 20 7c 7c 20 22 24 _WIN10)==0 || "$
4150: 28 50 4c 41 54 46 4f 52 4d 29 22 3d 3d 22 78 38  (PLATFORM)"=="x8
4160: 36 22 0a 43 4f 52 45 5f 4c 49 4e 4b 5f 44 45 50  6".CORE_LINK_DEP
4170: 20 3d 20 73 71 6c 69 74 65 33 2e 64 65 66 0a 21   = sqlite3.def.!
4180: 45 4c 53 45 0a 43 4f 52 45 5f 4c 49 4e 4b 5f 44  ELSE.CORE_LINK_D
4190: 45 50 20 3d 0a 21 45 4e 44 49 46 0a 21 45 4e 44  EP =.!ENDIF.!END
41a0: 49 46 0a 0a 23 20 54 68 65 73 65 20 61 72 65 20  IF..# These are
41b0: 61 64 64 69 74 69 6f 6e 61 6c 20 6c 69 6e 6b 65  additional linke
41c0: 72 20 6f 70 74 69 6f 6e 73 20 75 73 65 64 20 66  r options used f
41d0: 6f 72 20 74 68 65 20 63 6f 72 65 20 6c 69 62 72  or the core libr
41e0: 61 72 79 2e 0a 23 0a 21 49 46 4e 44 45 46 20 43  ary..#.!IFNDEF C
41f0: 4f 52 45 5f 4c 49 4e 4b 5f 4f 50 54 53 0a 21 49  ORE_LINK_OPTS.!I
4200: 46 20 24 28 44 59 4e 41 4d 49 43 5f 53 48 45 4c  F $(DYNAMIC_SHEL 4210: 4c 29 21 3d 30 0a 43 4f 52 45 5f 4c 49 4e 4b 5f L)!=0.CORE_LINK_ 4220: 4f 50 54 53 20 3d 0a 21 45 4c 53 45 49 46 20 24 OPTS =.!ELSEIF$
4230: 28 46 4f 52 5f 57 49 4e 31 30 29 3d 3d 30 20 7c  (FOR_WIN10)==0 |
4240: 7c 20 22 24 28 50 4c 41 54 46 4f 52 4d 29 22 3d  | "$(PLATFORM)"= 4250: 3d 22 78 38 36 22 0a 43 4f 52 45 5f 4c 49 4e 4b ="x86".CORE_LINK 4260: 5f 4f 50 54 53 20 3d 20 2f 44 45 46 3a 73 71 6c _OPTS = /DEF:sql 4270: 69 74 65 33 2e 64 65 66 0a 21 45 4c 53 45 0a 43 ite3.def.!ELSE.C 4280: 4f 52 45 5f 4c 49 4e 4b 5f 4f 50 54 53 20 3d 0a ORE_LINK_OPTS =. 4290: 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a 23 !ENDIF.!ENDIF..# 42a0: 20 54 68 65 73 65 20 61 72 65 20 61 64 64 69 74 These are addit 42b0: 69 6f 6e 61 6c 20 63 6f 6d 70 69 6c 65 72 20 6f ional compiler o 42c0: 70 74 69 6f 6e 73 20 75 73 65 64 20 66 6f 72 20 ptions used for 42d0: 74 68 65 20 73 68 65 6c 6c 20 65 78 65 63 75 74 the shell execut 42e0: 61 62 6c 65 2e 0a 23 0a 21 49 46 4e 44 45 46 20 able..#.!IFNDEF 42f0: 53 48 45 4c 4c 5f 43 4f 4d 50 49 4c 45 5f 4f 50 SHELL_COMPILE_OP 4300: 54 53 0a 21 49 46 20 24 28 44 59 4e 41 4d 49 43 TS.!IF$(DYNAMIC
4310: 5f 53 48 45 4c 4c 29 21 3d 30 20 7c 7c 20 24 28  _SHELL)!=0 || $( 4320: 46 4f 52 5f 57 49 4e 31 30 29 21 3d 30 0a 53 48 FOR_WIN10)!=0.SH 4330: 45 4c 4c 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 ELL_COMPILE_OPTS 4340: 20 3d 20 24 28 53 48 45 4c 4c 5f 43 43 4f 4e 56 =$(SHELL_CCONV
4350: 5f 4f 50 54 53 29 20 2d 44 53 51 4c 49 54 45 5f  _OPTS) -DSQLITE_
4360: 41 50 49 3d 5f 5f 64 65 63 6c 73 70 65 63 28 64  API=__declspec(d
4370: 6c 6c 69 6d 70 6f 72 74 29 0a 21 45 4c 53 45 0a  llimport).!ELSE.
4380: 53 48 45 4c 4c 5f 43 4f 4d 50 49 4c 45 5f 4f 50  SHELL_COMPILE_OP
4390: 54 53 20 3d 20 24 28 53 48 45 4c 4c 5f 43 43 4f  TS = $(SHELL_CCO 43a0: 4e 56 5f 4f 50 54 53 29 0a 21 45 4e 44 49 46 0a NV_OPTS).!ENDIF. 43b0: 21 45 4e 44 49 46 0a 0a 23 20 54 68 69 73 20 69 !ENDIF..# This i 43c0: 73 20 74 68 65 20 73 6f 75 72 63 65 20 63 6f 64 s the source cod 43d0: 65 20 74 68 61 74 20 74 68 65 20 73 68 65 6c 6c e that the shell 43e0: 20 65 78 65 63 75 74 61 62 6c 65 20 73 68 6f 75 executable shou 43f0: 6c 64 20 62 65 20 63 6f 6d 70 69 6c 65 64 0a 23 ld be compiled.# 4400: 20 77 69 74 68 2e 0a 23 0a 21 49 46 4e 44 45 46 with..#.!IFNDEF 4410: 20 53 48 45 4c 4c 5f 43 4f 52 45 5f 53 52 43 0a SHELL_CORE_SRC. 4420: 21 49 46 20 24 28 44 59 4e 41 4d 49 43 5f 53 48 !IF$(DYNAMIC_SH
4430: 45 4c 4c 29 21 3d 30 20 7c 7c 20 24 28 46 4f 52  ELL)!=0 || $(FOR 4440: 5f 57 49 4e 31 30 29 21 3d 30 0a 53 48 45 4c 4c _WIN10)!=0.SHELL 4450: 5f 43 4f 52 45 5f 53 52 43 20 3d 0a 23 20 3c 3c _CORE_SRC =.# << 4460: 6d 61 72 6b 3e 3e 0a 21 45 4c 53 45 49 46 20 24 mark>>.!ELSEIF$
4470: 28 55 53 45 5f 41 4d 41 4c 47 41 4d 41 54 49 4f  (USE_AMALGAMATIO
4480: 4e 29 3d 3d 30 0a 53 48 45 4c 4c 5f 43 4f 52 45  N)==0.SHELL_CORE
4490: 5f 53 52 43 20 3d 0a 23 20 3c 3c 2f 6d 61 72 6b  _SRC =.# <</mark
44a0: 3e 3e 0a 21 45 4c 53 45 0a 53 48 45 4c 4c 5f 43  >>.!ELSE.SHELL_C
44b0: 4f 52 45 5f 53 52 43 20 3d 20 24 28 53 51 4c 49  ORE_SRC = $(SQLI 44c0: 54 45 33 43 29 0a 21 45 4e 44 49 46 0a 21 45 4e TE3C).!ENDIF.!EN 44d0: 44 49 46 0a 0a 23 20 54 68 69 73 20 69 73 20 74 DIF..# This is t 44e0: 68 65 20 63 6f 72 65 20 6c 69 62 72 61 72 79 20 he core library 44f0: 74 68 61 74 20 74 68 65 20 73 68 65 6c 6c 20 65 that the shell e 4500: 78 65 63 75 74 61 62 6c 65 20 73 68 6f 75 6c 64 xecutable should 4510: 20 64 65 70 65 6e 64 20 6f 6e 2e 0a 23 0a 21 49 depend on..#.!I 4520: 46 4e 44 45 46 20 53 48 45 4c 4c 5f 43 4f 52 45 FNDEF SHELL_CORE 4530: 5f 44 45 50 0a 21 49 46 20 24 28 44 59 4e 41 4d _DEP.!IF$(DYNAM
4540: 49 43 5f 53 48 45 4c 4c 29 21 3d 30 20 7c 7c 20  IC_SHELL)!=0 ||
4550: 24 28 46 4f 52 5f 57 49 4e 31 30 29 21 3d 30 0a  $(FOR_WIN10)!=0. 4560: 53 48 45 4c 4c 5f 43 4f 52 45 5f 44 45 50 20 3d SHELL_CORE_DEP = 4570: 20 24 28 53 51 4c 49 54 45 33 44 4c 4c 29 0a 23$(SQLITE3DLL).#
4580: 20 3c 3c 6d 61 72 6b 3e 3e 0a 21 45 4c 53 45 49   <<mark>>.!ELSEI
4590: 46 20 24 28 55 53 45 5f 41 4d 41 4c 47 41 4d 41  F $(USE_AMALGAMA 45a0: 54 49 4f 4e 29 3d 3d 30 0a 53 48 45 4c 4c 5f 43 TION)==0.SHELL_C 45b0: 4f 52 45 5f 44 45 50 20 3d 20 6c 69 62 73 71 6c ORE_DEP = libsql 45c0: 69 74 65 33 2e 6c 69 62 0a 23 20 3c 3c 2f 6d 61 ite3.lib.# <</ma 45d0: 72 6b 3e 3e 0a 21 45 4c 53 45 0a 53 48 45 4c 4c rk>>.!ELSE.SHELL 45e0: 5f 43 4f 52 45 5f 44 45 50 20 3d 0a 21 45 4e 44 _CORE_DEP =.!END 45f0: 49 46 0a 21 45 4e 44 49 46 0a 0a 23 20 3c 3c 6d IF.!ENDIF..# <<m 4600: 61 72 6b 3e 3e 0a 23 20 49 66 20 7a 6c 69 62 20 ark>>.# If zlib 4610: 73 75 70 70 6f 72 74 20 69 73 20 65 6e 61 62 6c support is enabl 4620: 65 64 2c 20 61 64 64 20 74 68 65 20 64 65 70 65 ed, add the depe 4630: 6e 64 65 6e 63 69 65 73 20 66 6f 72 20 69 74 2e ndencies for it. 4640: 0a 23 0a 21 49 46 20 24 28 55 53 45 5f 5a 4c 49 .#.!IF$(USE_ZLI
4650: 42 29 21 3d 30 20 26 26 20 24 28 42 55 49 4c 44  B)!=0 && $(BUILD 4660: 5f 5a 4c 49 42 29 21 3d 30 0a 53 48 45 4c 4c 5f _ZLIB)!=0.SHELL_ 4670: 43 4f 52 45 5f 44 45 50 20 3d 20 7a 6c 69 62 20 CORE_DEP = zlib 4680: 24 28 53 48 45 4c 4c 5f 43 4f 52 45 5f 44 45 50$(SHELL_CORE_DEP
4690: 29 0a 54 45 53 54 46 49 58 54 55 52 45 5f 44 45  ).TESTFIXTURE_DE
46a0: 50 20 3d 20 7a 6c 69 62 20 24 28 54 45 53 54 46  P = zlib $(TESTF 46b0: 49 58 54 55 52 45 5f 44 45 50 29 0a 21 45 4e 44 IXTURE_DEP).!END 46c0: 49 46 0a 23 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a 0a IF.# <</mark>>.. 46d0: 23 20 54 68 69 73 20 69 73 20 74 68 65 20 63 6f # This is the co 46e0: 72 65 20 6c 69 62 72 61 72 79 20 74 68 61 74 20 re library that 46f0: 74 68 65 20 73 68 65 6c 6c 20 65 78 65 63 75 74 the shell execut 4700: 61 62 6c 65 20 73 68 6f 75 6c 64 20 6c 69 6e 6b able should link 4710: 20 77 69 74 68 2e 0a 23 0a 21 49 46 4e 44 45 46 with..#.!IFNDEF 4720: 20 53 48 45 4c 4c 5f 43 4f 52 45 5f 4c 49 42 0a SHELL_CORE_LIB. 4730: 21 49 46 20 24 28 44 59 4e 41 4d 49 43 5f 53 48 !IF$(DYNAMIC_SH
4740: 45 4c 4c 29 21 3d 30 20 7c 7c 20 24 28 46 4f 52  ELL)!=0 || $(FOR 4750: 5f 57 49 4e 31 30 29 21 3d 30 0a 53 48 45 4c 4c _WIN10)!=0.SHELL 4760: 5f 43 4f 52 45 5f 4c 49 42 20 3d 20 24 28 53 51 _CORE_LIB =$(SQ
4770: 4c 49 54 45 33 4c 49 42 29 0a 23 20 3c 3c 6d 61  LITE3LIB).# <<ma
4780: 72 6b 3e 3e 0a 21 45 4c 53 45 49 46 20 24 28 55  rk>>.!ELSEIF $(U 4790: 53 45 5f 41 4d 41 4c 47 41 4d 41 54 49 4f 4e 29 SE_AMALGAMATION) 47a0: 3d 3d 30 0a 53 48 45 4c 4c 5f 43 4f 52 45 5f 4c ==0.SHELL_CORE_L 47b0: 49 42 20 3d 20 6c 69 62 73 71 6c 69 74 65 33 2e IB = libsqlite3. 47c0: 6c 69 62 0a 23 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a lib.# <</mark>>. 47d0: 21 45 4c 53 45 0a 53 48 45 4c 4c 5f 43 4f 52 45 !ELSE.SHELL_CORE 47e0: 5f 4c 49 42 20 3d 0a 21 45 4e 44 49 46 0a 21 45 _LIB =.!ENDIF.!E 47f0: 4e 44 49 46 0a 0a 23 20 54 68 65 73 65 20 61 72 NDIF..# These ar 4800: 65 20 61 64 64 69 74 69 6f 6e 61 6c 20 6c 69 6e e additional lin 4810: 6b 65 72 20 6f 70 74 69 6f 6e 73 20 75 73 65 64 ker options used 4820: 20 66 6f 72 20 74 68 65 20 73 68 65 6c 6c 20 65 for the shell e 4830: 78 65 63 75 74 61 62 6c 65 2e 0a 23 0a 21 49 46 xecutable..#.!IF 4840: 4e 44 45 46 20 53 48 45 4c 4c 5f 4c 49 4e 4b 5f NDEF SHELL_LINK_ 4850: 4f 50 54 53 0a 53 48 45 4c 4c 5f 4c 49 4e 4b 5f OPTS.SHELL_LINK_ 4860: 4f 50 54 53 20 3d 20 24 28 53 48 45 4c 4c 5f 43 OPTS =$(SHELL_C
4870: 4f 52 45 5f 4c 49 42 29 0a 21 45 4e 44 49 46 0a  ORE_LIB).!ENDIF.
4880: 0a 23 20 43 68 65 63 6b 20 69 66 20 61 73 73 65  .# Check if asse
4890: 6d 62 6c 79 20 63 6f 64 65 20 6c 69 73 74 69 6e  mbly code listin
48a0: 67 73 20 73 68 6f 75 6c 64 20 62 65 20 67 65 6e  gs should be gen
48b0: 65 72 61 74 65 64 20 66 6f 72 20 74 68 65 20 73  erated for the s
48c0: 6f 75 72 63 65 0a 23 20 63 6f 64 65 20 66 69 6c  ource.# code fil
48d0: 65 73 20 74 6f 20 62 65 20 63 6f 6d 70 69 6c 65  es to be compile
48e0: 64 2e 0a 23 0a 21 49 46 20 24 28 55 53 45 5f 4c  d..#.!IF $(USE_L 48f0: 49 53 54 49 4e 47 53 29 21 3d 30 0a 54 43 43 20 ISTINGS)!=0.TCC 4900: 3d 20 24 28 54 43 43 29 20 2d 46 41 63 73 0a 21 =$(TCC) -FAcs.!
4910: 45 4e 44 49 46 0a 0a 23 20 57 68 65 6e 20 63 6f  ENDIF..# When co
4920: 6d 70 69 6c 69 6e 67 20 74 68 65 20 6c 69 62 72  mpiling the libr
4930: 61 72 79 20 66 6f 72 20 75 73 65 20 69 6e 20 74  ary for use in t
4940: 68 65 20 57 69 6e 52 54 20 65 6e 76 69 72 6f 6e  he WinRT environ
4950: 6d 65 6e 74 2c 0a 23 20 74 68 65 20 66 6f 6c 6c  ment,.# the foll
4960: 6f 77 69 6e 67 20 63 6f 6d 70 69 6c 65 2d 74 69  owing compile-ti
4970: 6d 65 20 6f 70 74 69 6f 6e 73 20 6d 75 73 74 20  me options must
4980: 62 65 20 75 73 65 64 20 61 73 20 77 65 6c 6c 20  be used as well
4990: 74 6f 0a 23 20 64 69 73 61 62 6c 65 20 75 73 65  to.# disable use
49a0: 20 6f 66 20 57 69 6e 33 32 20 41 50 49 73 20 74   of Win32 APIs t
49b0: 68 61 74 20 61 72 65 20 6e 6f 74 20 61 76 61 69  hat are not avai
49c0: 6c 61 62 6c 65 20 61 6e 64 20 74 6f 20 65 6e 61  lable and to ena
49d0: 62 6c 65 0a 23 20 75 73 65 20 6f 66 20 57 69 6e  ble.# use of Win
49e0: 33 32 20 41 50 49 73 20 74 68 61 74 20 61 72 65  32 APIs that are
49f0: 20 73 70 65 63 69 66 69 63 20 74 6f 20 57 69 6e   specific to Win
4a00: 64 6f 77 73 20 38 20 61 6e 64 2f 6f 72 20 57 69  dows 8 and/or Wi
4a10: 6e 52 54 2e 0a 23 0a 21 49 46 20 24 28 46 4f 52  nRT..#.!IF $(FOR 4a20: 5f 57 49 4e 52 54 29 21 3d 30 0a 54 43 43 20 3d _WINRT)!=0.TCC = 4a30: 20 24 28 54 43 43 29 20 2d 44 53 51 4c 49 54 45$(TCC) -DSQLITE
4a40: 5f 4f 53 5f 57 49 4e 52 54 3d 31 0a 52 43 43 20  _OS_WINRT=1.RCC
4a50: 3d 20 24 28 52 43 43 29 20 2d 44 53 51 4c 49 54  = $(RCC) -DSQLIT 4a60: 45 5f 4f 53 5f 57 49 4e 52 54 3d 31 0a 54 43 43 E_OS_WINRT=1.TCC 4a70: 20 3d 20 24 28 54 43 43 29 20 2d 44 57 49 4e 41 =$(TCC) -DWINA
4a80: 50 49 5f 46 41 4d 49 4c 59 3d 57 49 4e 41 50 49  PI_FAMILY=WINAPI
4a90: 5f 46 41 4d 49 4c 59 5f 41 50 50 0a 52 43 43 20  _FAMILY_APP.RCC
4aa0: 3d 20 24 28 52 43 43 29 20 2d 44 57 49 4e 41 50  = $(RCC) -DWINAP 4ab0: 49 5f 46 41 4d 49 4c 59 3d 57 49 4e 41 50 49 5f I_FAMILY=WINAPI_ 4ac0: 46 41 4d 49 4c 59 5f 41 50 50 0a 21 45 4e 44 49 FAMILY_APP.!ENDI 4ad0: 46 0a 0a 23 20 43 20 63 6f 6d 70 69 6c 65 72 20 F..# C compiler 4ae0: 6f 70 74 69 6f 6e 73 20 66 6f 72 20 74 68 65 20 options for the 4af0: 57 69 6e 64 6f 77 73 20 31 30 20 70 6c 61 74 66 Windows 10 platf 4b00: 6f 72 6d 20 28 6e 65 65 64 73 20 4d 53 56 43 20 orm (needs MSVC 4b10: 32 30 31 35 29 2e 0a 23 0a 21 49 46 20 24 28 46 2015)..#.!IF$(F
4b20: 4f 52 5f 57 49 4e 31 30 29 21 3d 30 0a 54 43 43  OR_WIN10)!=0.TCC
4b30: 20 3d 20 24 28 54 43 43 29 20 2f 64 32 67 75 61   = $(TCC) /d2gua 4b40: 72 64 34 20 2d 44 5f 41 52 4d 5f 57 49 4e 41 50 rd4 -D_ARM_WINAP 4b50: 49 5f 50 41 52 54 49 54 49 4f 4e 5f 44 45 53 4b I_PARTITION_DESK 4b60: 54 4f 50 5f 53 44 4b 5f 41 56 41 49 4c 41 42 4c TOP_SDK_AVAILABL 4b70: 45 0a 42 43 43 20 3d 20 24 28 42 43 43 29 20 2f E.BCC =$(BCC) /
4b80: 64 32 67 75 61 72 64 34 20 2d 44 5f 41 52 4d 5f  d2guard4 -D_ARM_
4b90: 57 49 4e 41 50 49 5f 50 41 52 54 49 54 49 4f 4e  WINAPI_PARTITION
4ba0: 5f 44 45 53 4b 54 4f 50 5f 53 44 4b 5f 41 56 41  _DESKTOP_SDK_AVA
4bb0: 49 4c 41 42 4c 45 0a 21 45 4e 44 49 46 0a 0a 23  ILABLE.!ENDIF..#
4bc0: 20 41 6c 73 6f 2c 20 77 65 20 6e 65 65 64 20 74   Also, we need t
4bd0: 6f 20 64 79 6e 61 6d 69 63 61 6c 6c 79 20 6c 69  o dynamically li
4be0: 6e 6b 20 74 6f 20 74 68 65 20 63 6f 72 72 65 63  nk to the correc
4bf0: 74 20 4d 53 56 43 20 72 75 6e 74 69 6d 65 0a 23  t MSVC runtime.#
4c00: 20 77 68 65 6e 20 63 6f 6d 70 69 6c 69 6e 67 20   when compiling
4c10: 66 6f 72 20 57 69 6e 52 54 20 28 65 2e 67 2e 20  for WinRT (e.g.
4c20: 64 65 62 75 67 20 6f 72 20 72 65 6c 65 61 73 65  debug or release
4c30: 29 20 4f 52 20 69 66 20 74 68 65 0a 23 20 55 53  ) OR if the.# US
4c40: 45 5f 43 52 54 5f 44 4c 4c 20 6f 70 74 69 6f 6e  E_CRT_DLL option
4c50: 20 69 73 20 73 65 74 20 74 6f 20 66 6f 72 63 65   is set to force
4c60: 20 64 79 6e 61 6d 69 63 61 6c 6c 79 20 6c 69 6e   dynamically lin
4c70: 6b 69 6e 67 20 74 6f 20 74 68 65 0a 23 20 4d 53  king to the.# MS
4c80: 56 43 20 72 75 6e 74 69 6d 65 20 6c 69 62 72 61  VC runtime libra
4c90: 72 79 2e 0a 23 0a 21 49 46 20 24 28 46 4f 52 5f  ry..#.!IF $(FOR_ 4ca0: 57 49 4e 52 54 29 21 3d 30 20 7c 7c 20 24 28 55 WINRT)!=0 ||$(U
4cb0: 53 45 5f 43 52 54 5f 44 4c 4c 29 21 3d 30 0a 21  SE_CRT_DLL)!=0.!
4cc0: 49 46 20 24 28 44 45 42 55 47 29 3e 31 0a 54 43  IF $(DEBUG)>1.TC 4cd0: 43 20 3d 20 24 28 54 43 43 29 20 2d 4d 44 64 0a C =$(TCC) -MDd.
4ce0: 42 43 43 20 3d 20 24 28 42 43 43 29 20 2d 4d 44  BCC = $(BCC) -MD 4cf0: 64 0a 21 45 4c 53 45 0a 54 43 43 20 3d 20 24 28 d.!ELSE.TCC =$(
4d00: 54 43 43 29 20 2d 4d 44 0a 42 43 43 20 3d 20 24  TCC) -MD.BCC = $4d10: 28 42 43 43 29 20 2d 4d 44 0a 21 45 4e 44 49 46 (BCC) -MD.!ENDIF 4d20: 0a 21 45 4c 53 45 0a 21 49 46 20 24 28 44 45 42 .!ELSE.!IF$(DEB
4d30: 55 47 29 3e 31 0a 54 43 43 20 3d 20 24 28 54 43  UG)>1.TCC = $(TC 4d40: 43 29 20 2d 4d 54 64 0a 42 43 43 20 3d 20 24 28 C) -MTd.BCC =$(
4d50: 42 43 43 29 20 2d 4d 54 64 0a 21 45 4c 53 45 0a  BCC) -MTd.!ELSE.
4d60: 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 4d 54  TCC = $(TCC) -MT 4d70: 0a 42 43 43 20 3d 20 24 28 42 43 43 29 20 2d 4d .BCC =$(BCC) -M
4d80: 54 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a  T.!ENDIF.!ENDIF.
4d90: 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 23 20 54 68  .# <<mark>>.# Th
4da0: 65 20 6d 6b 73 71 6c 69 74 65 33 63 2e 74 63 6c  e mksqlite3c.tcl
4db0: 20 61 6e 64 20 6d 6b 73 71 6c 69 74 65 33 68 2e   and mksqlite3h.
4dc0: 74 63 6c 20 73 63 72 69 70 74 73 20 77 69 6c 6c  tcl scripts will
4dd0: 20 70 75 6c 6c 20 69 6e 0a 23 20 61 6e 79 20 65   pull in.# any e
4de0: 78 74 65 6e 73 69 6f 6e 20 68 65 61 64 65 72 20  xtension header
4df0: 66 69 6c 65 73 20 62 79 20 64 65 66 61 75 6c 74  files by default
4e00: 2e 20 20 46 6f 72 20 6e 6f 6e 2d 61 6d 61 6c 67  .  For non-amalg
4e10: 61 6d 61 74 69 6f 6e 0a 23 20 62 75 69 6c 64 73  amation.# builds
4e20: 2c 20 77 65 20 6e 65 65 64 20 74 6f 20 6d 61 6b  , we need to mak
4e30: 65 20 73 75 72 65 20 74 68 65 20 63 6f 6d 70 69  e sure the compi
4e40: 6c 65 72 20 63 61 6e 20 66 69 6e 64 20 74 68 65  ler can find the
4e50: 73 65 2e 0a 23 0a 21 49 46 20 24 28 55 53 45 5f  se..#.!IF $(USE_ 4e60: 41 4d 41 4c 47 41 4d 41 54 49 4f 4e 29 3d 3d 30 AMALGAMATION)==0 4e70: 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 49 .TCC =$(TCC) -I
4e80: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 0a  $(TOP)\ext\fts3. 4e90: 52 43 43 20 3d 20 24 28 52 43 43 29 20 2d 49 24 RCC =$(RCC) -I$4ea0: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 0a 54 (TOP)\ext\fts3.T 4eb0: 43 43 20 3d 20 24 28 54 43 43 29 20 2d 49 24 28 CC =$(TCC) -I$( 4ec0: 54 4f 50 29 5c 65 78 74 5c 72 74 72 65 65 0a 52 TOP)\ext\rtree.R 4ed0: 43 43 20 3d 20 24 28 52 43 43 29 20 2d 49 24 28 CC =$(RCC) -I$( 4ee0: 54 4f 50 29 5c 65 78 74 5c 72 74 72 65 65 0a 54 TOP)\ext\rtree.T 4ef0: 43 43 20 3d 20 24 28 54 43 43 29 20 2d 49 24 28 CC =$(TCC) -I$( 4f00: 54 4f 50 29 5c 65 78 74 5c 73 65 73 73 69 6f 6e TOP)\ext\session 4f10: 0a 52 43 43 20 3d 20 24 28 52 43 43 29 20 2d 49 .RCC =$(RCC) -I
4f20: 24 28 54 4f 50 29 5c 65 78 74 5c 73 65 73 73 69  $(TOP)\ext\sessi 4f30: 6f 6e 0a 21 45 4e 44 49 46 0a 0a 23 20 54 68 65 on.!ENDIF..# The 4f40: 20 6d 6b 73 71 6c 69 74 65 33 63 2e 74 63 6c 20 mksqlite3c.tcl 4f50: 73 63 72 69 70 74 20 61 63 63 65 70 74 73 20 73 script accepts s 4f60: 6f 6d 65 20 6f 70 74 69 6f 6e 73 20 6f 6e 20 74 ome options on t 4f70: 68 65 20 63 6f 6d 6d 61 6e 64 0a 23 20 6c 69 6e he command.# lin 4f80: 65 2e 20 20 57 68 65 6e 20 63 6f 6d 70 69 6c 69 e. When compili 4f90: 6e 67 20 77 69 74 68 20 64 65 62 75 67 67 69 6e ng with debuggin 4fa0: 67 20 65 6e 61 62 6c 65 64 2c 20 73 6f 6d 65 20 g enabled, some 4fb0: 6f 66 20 74 68 65 73 65 0a 23 20 6f 70 74 69 6f of these.# optio 4fc0: 6e 73 20 61 72 65 20 6e 65 63 65 73 73 61 72 79 ns are necessary 4fd0: 20 69 6e 20 6f 72 64 65 72 20 74 6f 20 61 6c 6c in order to all 4fe0: 6f 77 20 64 65 62 75 67 67 69 6e 67 20 73 79 6d ow debugging sym 4ff0: 62 6f 6c 73 20 74 6f 0a 23 20 77 6f 72 6b 20 63 bols to.# work c 5000: 6f 72 72 65 63 74 6c 79 20 77 69 74 68 20 56 69 orrectly with Vi 5010: 73 75 61 6c 20 53 74 75 64 69 6f 20 77 68 65 6e sual Studio when 5020: 20 75 73 69 6e 67 20 74 68 65 20 61 6d 61 6c 67 using the amalg 5030: 61 6d 61 74 69 6f 6e 2e 0a 23 0a 21 49 46 4e 44 amation..#.!IFND 5040: 45 46 20 4d 4b 53 51 4c 49 54 45 33 43 5f 54 4f EF MKSQLITE3C_TO 5050: 4f 4c 0a 21 49 46 20 24 28 4d 49 4e 49 4d 41 4c OL.!IF$(MINIMAL
5060: 5f 41 4d 41 4c 47 41 4d 41 54 49 4f 4e 29 21 3d  _AMALGAMATION)!=
5070: 30 0a 4d 4b 53 51 4c 49 54 45 33 43 5f 54 4f 4f  0.MKSQLITE3C_TOO
5080: 4c 20 3d 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c  L = $(TOP)\tool\ 5090: 6d 6b 73 71 6c 69 74 65 33 63 2d 6e 6f 65 78 74 mksqlite3c-noext 50a0: 2e 74 63 6c 0a 21 45 4c 53 45 0a 4d 4b 53 51 4c .tcl.!ELSE.MKSQL 50b0: 49 54 45 33 43 5f 54 4f 4f 4c 20 3d 20 24 28 54 ITE3C_TOOL =$(T
50c0: 4f 50 29 5c 74 6f 6f 6c 5c 6d 6b 73 71 6c 69 74  OP)\tool\mksqlit
50d0: 65 33 63 2e 74 63 6c 0a 21 45 4e 44 49 46 0a 21  e3c.tcl.!ENDIF.!
50e0: 45 4e 44 49 46 0a 0a 21 49 46 4e 44 45 46 20 4d  ENDIF..!IFNDEF M
50f0: 4b 53 51 4c 49 54 45 33 43 5f 41 52 47 53 0a 21  KSQLITE3C_ARGS.!
5100: 49 46 20 24 28 44 45 42 55 47 29 3e 31 0a 4d 4b  IF $(DEBUG)>1.MK 5110: 53 51 4c 49 54 45 33 43 5f 41 52 47 53 20 3d 20 SQLITE3C_ARGS = 5120: 2d 2d 6c 69 6e 65 6d 61 63 72 6f 73 0a 21 45 4c --linemacros.!EL 5130: 53 45 0a 4d 4b 53 51 4c 49 54 45 33 43 5f 41 52 SE.MKSQLITE3C_AR 5140: 47 53 20 3d 0a 21 45 4e 44 49 46 0a 21 49 46 20 GS =.!ENDIF.!IF 5150: 24 28 55 53 45 5f 53 54 44 43 41 4c 4c 29 21 3d$(USE_STDCALL)!=
5160: 30 20 7c 7c 20 24 28 46 4f 52 5f 57 49 4e 31 30  0 || $(FOR_WIN10 5170: 29 21 3d 30 0a 4d 4b 53 51 4c 49 54 45 33 43 5f )!=0.MKSQLITE3C_ 5180: 41 52 47 53 20 3d 20 24 28 4d 4b 53 51 4c 49 54 ARGS =$(MKSQLIT
5190: 45 33 43 5f 41 52 47 53 29 20 2d 2d 75 73 65 61  E3C_ARGS) --usea
51a0: 70 69 63 61 6c 6c 0a 21 45 4e 44 49 46 0a 21 45  picall.!ENDIF.!E
51b0: 4e 44 49 46 0a 0a 23 20 54 68 65 20 6d 6b 73 71  NDIF..# The mksq
51c0: 6c 69 74 65 33 68 2e 74 63 6c 20 73 63 72 69 70  lite3h.tcl scrip
51d0: 74 20 61 63 63 65 70 74 73 20 73 6f 6d 65 20 6f  t accepts some o
51e0: 70 74 69 6f 6e 73 20 6f 6e 20 74 68 65 20 63 6f  ptions on the co
51f0: 6d 6d 61 6e 64 20 6c 69 6e 65 2e 0a 23 20 57 68  mmand line..# Wh
5200: 65 6e 20 63 6f 6d 70 69 6c 69 6e 67 20 77 69 74  en compiling wit
5210: 68 20 73 74 64 63 61 6c 6c 20 73 75 70 70 6f 72  h stdcall suppor
5220: 74 2c 20 73 6f 6d 65 20 6f 66 20 74 68 65 73 65  t, some of these
5230: 20 6f 70 74 69 6f 6e 73 20 61 72 65 0a 23 20 6e   options are.# n
5240: 65 63 65 73 73 61 72 79 2e 0a 23 0a 21 49 46 4e  ecessary..#.!IFN
5250: 44 45 46 20 4d 4b 53 51 4c 49 54 45 33 48 5f 41  DEF MKSQLITE3H_A
5260: 52 47 53 0a 21 49 46 20 24 28 55 53 45 5f 53 54  RGS.!IF $(USE_ST 5270: 44 43 41 4c 4c 29 21 3d 30 20 7c 7c 20 24 28 46 DCALL)!=0 ||$(F
5280: 4f 52 5f 57 49 4e 31 30 29 21 3d 30 0a 4d 4b 53  OR_WIN10)!=0.MKS
5290: 51 4c 49 54 45 33 48 5f 41 52 47 53 20 3d 20 2d  QLITE3H_ARGS = -
52a0: 2d 75 73 65 61 70 69 63 61 6c 6c 0a 21 45 4c 53  -useapicall.!ELS
52b0: 45 0a 4d 4b 53 51 4c 49 54 45 33 48 5f 41 52 47  E.MKSQLITE3H_ARG
52c0: 53 20 3d 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49  S =.!ENDIF.!ENDI
52d0: 46 0a 23 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a 0a 23  F.# <</mark>>..#
52e0: 20 44 65 66 69 6e 65 20 2d 44 4e 44 45 42 55 47   Define -DNDEBUG
52f0: 20 74 6f 20 63 6f 6d 70 69 6c 65 20 77 69 74 68   to compile with
5300: 6f 75 74 20 64 65 62 75 67 67 69 6e 67 20 28 69  out debugging (i
5310: 2e 65 2e 2c 20 66 6f 72 20 70 72 6f 64 75 63 74  .e., for product
5320: 69 6f 6e 20 75 73 61 67 65 29 0a 23 20 4f 6d 69  ion usage).# Omi
5330: 74 74 69 6e 67 20 74 68 65 20 64 65 66 69 6e 65  tting the define
5340: 20 77 69 6c 6c 20 63 61 75 73 65 20 65 78 74 72   will cause extr
5350: 61 20 64 65 62 75 67 67 69 6e 67 20 63 6f 64 65  a debugging code
5360: 20 74 6f 20 62 65 20 69 6e 73 65 72 74 65 64 20   to be inserted
5370: 61 6e 64 0a 23 20 69 6e 63 6c 75 64 65 73 20 65  and.# includes e
5380: 78 74 72 61 20 63 6f 6d 6d 65 6e 74 73 20 77 68  xtra comments wh
5390: 65 6e 20 22 45 58 50 4c 41 49 4e 20 73 74 6d 74  en "EXPLAIN stmt
53a0: 22 20 69 73 20 75 73 65 64 2e 0a 23 0a 21 49 46  " is used..#.!IF
53b0: 20 24 28 44 45 42 55 47 29 3d 3d 30 0a 54 43 43   $(DEBUG)==0.TCC 53c0: 20 3d 20 24 28 54 43 43 29 20 2d 44 4e 44 45 42 =$(TCC) -DNDEB
53d0: 55 47 0a 42 43 43 20 3d 20 24 28 42 43 43 29 20  UG.BCC = $(BCC) 53e0: 2d 44 4e 44 45 42 55 47 0a 52 43 43 20 3d 20 24 -DNDEBUG.RCC =$
53f0: 28 52 43 43 29 20 2d 44 4e 44 45 42 55 47 0a 21  (RCC) -DNDEBUG.!
5400: 45 4e 44 49 46 0a 0a 21 49 46 20 24 28 44 45 42  ENDIF..!IF $(DEB 5410: 55 47 29 3e 30 20 7c 7c 20 24 28 41 50 49 5f 41 UG)>0 ||$(API_A
5420: 52 4d 4f 52 29 21 3d 30 20 7c 7c 20 24 28 46 4f  RMOR)!=0 || $(FO 5430: 52 5f 57 49 4e 31 30 29 21 3d 30 0a 54 43 43 20 R_WIN10)!=0.TCC 5440: 3d 20 24 28 54 43 43 29 20 2d 44 53 51 4c 49 54 =$(TCC) -DSQLIT
5450: 45 5f 45 4e 41 42 4c 45 5f 41 50 49 5f 41 52 4d  E_ENABLE_API_ARM
5460: 4f 52 3d 31 0a 52 43 43 20 3d 20 24 28 52 43 43  OR=1.RCC = $(RCC 5470: 29 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c ) -DSQLITE_ENABL 5480: 45 5f 41 50 49 5f 41 52 4d 4f 52 3d 31 0a 21 45 E_API_ARMOR=1.!E 5490: 4e 44 49 46 0a 0a 21 49 46 20 24 28 44 45 42 55 NDIF..!IF$(DEBU
54a0: 47 29 3e 32 0a 54 43 43 20 3d 20 24 28 54 43 43  G)>2.TCC = $(TCC 54b0: 29 20 2d 44 53 51 4c 49 54 45 5f 44 45 42 55 47 ) -DSQLITE_DEBUG 54c0: 3d 31 0a 52 43 43 20 3d 20 24 28 52 43 43 29 20 =1.RCC =$(RCC)
54d0: 2d 44 53 51 4c 49 54 45 5f 44 45 42 55 47 3d 31  -DSQLITE_DEBUG=1
54e0: 0a 21 49 46 20 24 28 44 59 4e 41 4d 49 43 5f 53  .!IF $(DYNAMIC_S 54f0: 48 45 4c 4c 29 3d 3d 30 0a 54 43 43 20 3d 20 24 HELL)==0.TCC =$
5500: 28 54 43 43 29 20 2d 44 53 51 4c 49 54 45 5f 45  (TCC) -DSQLITE_E
5510: 4e 41 42 4c 45 5f 57 48 45 52 45 54 52 41 43 45  NABLE_WHERETRACE
5520: 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45   -DSQLITE_ENABLE
5530: 5f 53 45 4c 45 43 54 54 52 41 43 45 0a 52 43 43  _SELECTTRACE.RCC
5540: 20 3d 20 24 28 52 43 43 29 20 2d 44 53 51 4c 49   = $(RCC) -DSQLI 5550: 54 45 5f 45 4e 41 42 4c 45 5f 57 48 45 52 45 54 TE_ENABLE_WHERET 5560: 52 41 43 45 20 2d 44 53 51 4c 49 54 45 5f 45 4e RACE -DSQLITE_EN 5570: 41 42 4c 45 5f 53 45 4c 45 43 54 54 52 41 43 45 ABLE_SELECTTRACE 5580: 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a .!ENDIF.!ENDIF.. 5590: 21 49 46 20 24 28 44 45 42 55 47 29 3e 34 20 7c !IF$(DEBUG)>4 |
55a0: 7c 20 24 28 4f 53 54 52 41 43 45 29 21 3d 30 0a  | $(OSTRACE)!=0. 55b0: 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 44 53 TCC =$(TCC) -DS
55c0: 51 4c 49 54 45 5f 46 4f 52 43 45 5f 4f 53 5f 54  QLITE_FORCE_OS_T
55d0: 52 41 43 45 3d 31 20 2d 44 53 51 4c 49 54 45 5f  RACE=1 -DSQLITE_
55e0: 44 45 42 55 47 5f 4f 53 5f 54 52 41 43 45 3d 31  DEBUG_OS_TRACE=1
55f0: 0a 52 43 43 20 3d 20 24 28 52 43 43 29 20 2d 44  .RCC = $(RCC) -D 5600: 53 51 4c 49 54 45 5f 46 4f 52 43 45 5f 4f 53 5f SQLITE_FORCE_OS_ 5610: 54 52 41 43 45 3d 31 20 2d 44 53 51 4c 49 54 45 TRACE=1 -DSQLITE 5620: 5f 44 45 42 55 47 5f 4f 53 5f 54 52 41 43 45 3d _DEBUG_OS_TRACE= 5630: 31 0a 21 45 4e 44 49 46 0a 0a 21 49 46 20 24 28 1.!ENDIF..!IF$(
5640: 44 45 42 55 47 29 3e 35 0a 54 43 43 20 3d 20 24  DEBUG)>5.TCC = $5650: 28 54 43 43 29 20 2d 44 53 51 4c 49 54 45 5f 45 (TCC) -DSQLITE_E 5660: 4e 41 42 4c 45 5f 49 4f 54 52 41 43 45 3d 31 0a NABLE_IOTRACE=1. 5670: 52 43 43 20 3d 20 24 28 52 43 43 29 20 2d 44 53 RCC =$(RCC) -DS
5680: 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 49 4f 54  QLITE_ENABLE_IOT
5690: 52 41 43 45 3d 31 0a 21 45 4e 44 49 46 0a 0a 23  RACE=1.!ENDIF..#
56a0: 20 50 72 65 76 65 6e 74 20 77 61 72 6e 69 6e 67   Prevent warning
56b0: 73 20 61 62 6f 75 74 20 22 69 6e 73 65 63 75 72  s about "insecur
56c0: 65 22 20 4d 53 56 43 20 72 75 6e 74 69 6d 65 20  e" MSVC runtime
56d0: 6c 69 62 72 61 72 79 20 66 75 6e 63 74 69 6f 6e  library function
56e0: 73 0a 23 20 62 65 69 6e 67 20 75 73 65 64 2e 0a  s.# being used..
56f0: 23 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d  #.TCC = $(TCC) - 5700: 44 5f 43 52 54 5f 53 45 43 55 52 45 5f 4e 4f 5f D_CRT_SECURE_NO_ 5710: 44 45 50 52 45 43 41 54 45 20 2d 44 5f 43 52 54 DEPRECATE -D_CRT 5720: 5f 53 45 43 55 52 45 5f 4e 4f 5f 57 41 52 4e 49 _SECURE_NO_WARNI 5730: 4e 47 53 0a 42 43 43 20 3d 20 24 28 42 43 43 29 NGS.BCC =$(BCC)
5740: 20 2d 44 5f 43 52 54 5f 53 45 43 55 52 45 5f 4e   -D_CRT_SECURE_N
5750: 4f 5f 44 45 50 52 45 43 41 54 45 20 2d 44 5f 43  O_DEPRECATE -D_C
5760: 52 54 5f 53 45 43 55 52 45 5f 4e 4f 5f 57 41 52  RT_SECURE_NO_WAR
5770: 4e 49 4e 47 53 0a 52 43 43 20 3d 20 24 28 52 43  NINGS.RCC = $(RC 5780: 43 29 20 2d 44 5f 43 52 54 5f 53 45 43 55 52 45 C) -D_CRT_SECURE 5790: 5f 4e 4f 5f 44 45 50 52 45 43 41 54 45 20 2d 44 _NO_DEPRECATE -D 57a0: 5f 43 52 54 5f 53 45 43 55 52 45 5f 4e 4f 5f 57 _CRT_SECURE_NO_W 57b0: 41 52 4e 49 4e 47 53 0a 0a 23 20 50 72 65 76 65 ARNINGS..# Preve 57c0: 6e 74 20 77 61 72 6e 69 6e 67 73 20 61 62 6f 75 nt warnings abou 57d0: 74 20 22 64 65 70 72 65 63 61 74 65 64 22 20 50 t "deprecated" P 57e0: 4f 53 49 58 20 66 75 6e 63 74 69 6f 6e 73 20 62 OSIX functions b 57f0: 65 69 6e 67 20 75 73 65 64 2e 0a 23 0a 54 43 43 eing used..#.TCC 5800: 20 3d 20 24 28 54 43 43 29 20 2d 44 5f 43 52 54 =$(TCC) -D_CRT
5810: 5f 4e 4f 4e 53 54 44 43 5f 4e 4f 5f 44 45 50 52  _NONSTDC_NO_DEPR
5820: 45 43 41 54 45 20 2d 44 5f 43 52 54 5f 4e 4f 4e  ECATE -D_CRT_NON
5830: 53 54 44 43 5f 4e 4f 5f 57 41 52 4e 49 4e 47 53  STDC_NO_WARNINGS
5840: 0a 42 43 43 20 3d 20 24 28 42 43 43 29 20 2d 44  .BCC = $(BCC) -D 5850: 5f 43 52 54 5f 4e 4f 4e 53 54 44 43 5f 4e 4f 5f _CRT_NONSTDC_NO_ 5860: 44 45 50 52 45 43 41 54 45 20 2d 44 5f 43 52 54 DEPRECATE -D_CRT 5870: 5f 4e 4f 4e 53 54 44 43 5f 4e 4f 5f 57 41 52 4e _NONSTDC_NO_WARN 5880: 49 4e 47 53 0a 52 43 43 20 3d 20 24 28 52 43 43 INGS.RCC =$(RCC
5890: 29 20 2d 44 5f 43 52 54 5f 4e 4f 4e 53 54 44 43  ) -D_CRT_NONSTDC
58a0: 5f 4e 4f 5f 44 45 50 52 45 43 41 54 45 20 2d 44  _NO_DEPRECATE -D
58b0: 5f 43 52 54 5f 4e 4f 4e 53 54 44 43 5f 4e 4f 5f  _CRT_NONSTDC_NO_
58c0: 57 41 52 4e 49 4e 47 53 0a 0a 23 20 55 73 65 20  WARNINGS..# Use
58d0: 74 68 65 20 53 51 4c 69 74 65 20 64 65 62 75 67  the SQLite debug
58e0: 67 69 6e 67 20 68 65 61 70 20 73 75 62 73 79 73  ging heap subsys
58f0: 74 65 6d 3f 0a 23 0a 21 49 46 20 24 28 4d 45 4d  tem?.#.!IF $(MEM 5900: 44 45 42 55 47 29 21 3d 30 0a 54 43 43 20 3d 20 DEBUG)!=0.TCC = 5910: 24 28 54 43 43 29 20 2d 44 53 51 4c 49 54 45 5f$(TCC) -DSQLITE_
5920: 4d 45 4d 44 45 42 55 47 3d 31 0a 52 43 43 20 3d  MEMDEBUG=1.RCC =
5930: 20 24 28 52 43 43 29 20 2d 44 53 51 4c 49 54 45   $(RCC) -DSQLITE 5940: 5f 4d 45 4d 44 45 42 55 47 3d 31 0a 0a 23 20 55 _MEMDEBUG=1..# U 5950: 73 65 20 6e 61 74 69 76 65 20 57 69 6e 33 32 20 se native Win32 5960: 68 65 61 70 20 73 75 62 73 79 73 74 65 6d 20 69 heap subsystem i 5970: 6e 73 74 65 61 64 20 6f 66 20 6d 61 6c 6c 6f 63 nstead of malloc 5980: 2f 66 72 65 65 3f 0a 23 0a 21 45 4c 53 45 49 46 /free?.#.!ELSEIF 5990: 20 24 28 57 49 4e 33 32 48 45 41 50 29 21 3d 30$(WIN32HEAP)!=0
59a0: 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 44  .TCC = $(TCC) -D 59b0: 53 51 4c 49 54 45 5f 57 49 4e 33 32 5f 4d 41 4c SQLITE_WIN32_MAL 59c0: 4c 4f 43 3d 31 0a 52 43 43 20 3d 20 24 28 52 43 LOC=1.RCC =$(RC
59d0: 43 29 20 2d 44 53 51 4c 49 54 45 5f 57 49 4e 33  C) -DSQLITE_WIN3
59e0: 32 5f 4d 41 4c 4c 4f 43 3d 31 0a 0a 23 20 56 61  2_MALLOC=1..# Va
59f0: 6c 69 64 61 74 65 20 74 68 65 20 68 65 61 70 20  lidate the heap
5a00: 6f 6e 20 65 76 65 72 79 20 63 61 6c 6c 20 69 6e  on every call in
5a10: 74 6f 20 74 68 65 20 6e 61 74 69 76 65 20 57 69  to the native Wi
5a20: 6e 33 32 20 68 65 61 70 20 73 75 62 73 79 73 74  n32 heap subsyst
5a30: 65 6d 3f 0a 23 0a 21 49 46 20 24 28 44 45 42 55  em?.#.!IF $(DEBU 5a40: 47 29 3e 33 0a 54 43 43 20 3d 20 24 28 54 43 43 G)>3.TCC =$(TCC
5a50: 29 20 2d 44 53 51 4c 49 54 45 5f 57 49 4e 33 32  ) -DSQLITE_WIN32
5a60: 5f 4d 41 4c 4c 4f 43 5f 56 41 4c 49 44 41 54 45  _MALLOC_VALIDATE
5a70: 3d 31 0a 52 43 43 20 3d 20 24 28 52 43 43 29 20  =1.RCC = $(RCC) 5a80: 2d 44 53 51 4c 49 54 45 5f 57 49 4e 33 32 5f 4d -DSQLITE_WIN32_M 5a90: 41 4c 4c 4f 43 5f 56 41 4c 49 44 41 54 45 3d 31 ALLOC_VALIDATE=1 5aa0: 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a .!ENDIF.!ENDIF.. 5ab0: 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 23 20 54 68 65 # <<mark>>.# The 5ac0: 20 6c 6f 63 61 74 69 6f 6e 73 20 6f 66 20 74 68 locations of th 5ad0: 65 20 54 63 6c 20 68 65 61 64 65 72 20 61 6e 64 e Tcl header and 5ae0: 20 6c 69 62 72 61 72 79 20 66 69 6c 65 73 2e 20 library files. 5af0: 20 41 6c 73 6f 2c 20 74 68 65 20 6c 69 62 72 61 Also, the libra 5b00: 72 79 20 74 68 61 74 0a 23 20 6e 6f 6e 2d 73 74 ry that.# non-st 5b10: 75 62 73 20 65 6e 61 62 6c 65 64 20 70 72 6f 67 ubs enabled prog 5b20: 72 61 6d 73 20 75 73 69 6e 67 20 54 63 6c 20 6d rams using Tcl m 5b30: 75 73 74 20 6c 69 6e 6b 20 61 67 61 69 6e 73 74 ust link against 5b40: 2e 20 20 54 68 65 73 65 20 76 61 72 69 61 62 6c . These variabl 5b50: 65 73 0a 23 20 28 54 43 4c 49 4e 43 44 49 52 2c es.# (TCLINCDIR, 5b60: 20 54 43 4c 4c 49 42 44 49 52 2c 20 61 6e 64 20 TCLLIBDIR, and 5b70: 4c 49 42 54 43 4c 29 20 6d 61 79 20 62 65 20 6f LIBTCL) may be o 5b80: 76 65 72 72 69 64 64 65 6e 20 76 69 61 20 74 68 verridden via th 5b90: 65 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 0a 23 20 e environment.# 5ba0: 70 72 69 6f 72 20 74 6f 20 72 75 6e 6e 69 6e 67 prior to running 5bb0: 20 6e 6d 61 6b 65 20 69 6e 20 6f 72 64 65 72 20 nmake in order 5bc0: 74 6f 20 6d 61 74 63 68 20 74 68 65 20 61 63 74 to match the act 5bd0: 75 61 6c 20 69 6e 73 74 61 6c 6c 65 64 20 6c 6f ual installed lo 5be0: 63 61 74 69 6f 6e 20 61 6e 64 0a 23 20 76 65 72 cation and.# ver 5bf0: 73 69 6f 6e 20 6f 6e 20 74 68 69 73 20 6d 61 63 sion on this mac 5c00: 68 69 6e 65 2e 0a 23 0a 21 49 46 4e 44 45 46 20 hine..#.!IFNDEF 5c10: 54 43 4c 44 49 52 0a 54 43 4c 44 49 52 20 3d 20 TCLDIR.TCLDIR = 5c20: 24 28 54 4f 50 29 5c 63 6f 6d 70 61 74 5c 74 63$(TOP)\compat\tc
5c30: 6c 0a 21 45 4e 44 49 46 0a 0a 21 49 46 4e 44 45  l.!ENDIF..!IFNDE
5c40: 46 20 54 43 4c 49 4e 43 44 49 52 0a 54 43 4c 49  F TCLINCDIR.TCLI
5c50: 4e 43 44 49 52 20 3d 20 24 28 54 43 4c 44 49 52  NCDIR = $(TCLDIR 5c60: 29 5c 69 6e 63 6c 75 64 65 0a 21 45 4e 44 49 46 )\include.!ENDIF 5c70: 0a 0a 21 49 46 4e 44 45 46 20 54 43 4c 4c 49 42 ..!IFNDEF TCLLIB 5c80: 44 49 52 0a 54 43 4c 4c 49 42 44 49 52 20 3d 20 DIR.TCLLIBDIR = 5c90: 24 28 54 43 4c 44 49 52 29 5c 6c 69 62 0a 21 45$(TCLDIR)\lib.!E
5ca0: 4e 44 49 46 0a 0a 21 49 46 4e 44 45 46 20 4c 49  NDIF..!IFNDEF LI
5cb0: 42 54 43 4c 0a 4c 49 42 54 43 4c 20 3d 20 74 63  BTCL.LIBTCL = tc
5cc0: 6c 38 36 2e 6c 69 62 0a 21 45 4e 44 49 46 0a 0a  l86.lib.!ENDIF..
5cd0: 21 49 46 4e 44 45 46 20 4c 49 42 54 43 4c 53 54  !IFNDEF LIBTCLST
5ce0: 55 42 0a 4c 49 42 54 43 4c 53 54 55 42 20 3d 20  UB.LIBTCLSTUB =
5cf0: 74 63 6c 73 74 75 62 38 36 2e 6c 69 62 0a 21 45  tclstub86.lib.!E
5d00: 4e 44 49 46 0a 0a 21 49 46 4e 44 45 46 20 4c 49  NDIF..!IFNDEF LI
5d10: 42 54 43 4c 50 41 54 48 0a 4c 49 42 54 43 4c 50  BTCLPATH.LIBTCLP
5d20: 41 54 48 20 3d 20 24 28 54 43 4c 44 49 52 29 5c  ATH = $(TCLDIR)\ 5d30: 62 69 6e 0a 21 45 4e 44 49 46 0a 0a 23 20 54 68 bin.!ENDIF..# Th 5d40: 65 20 6c 6f 63 61 74 69 6f 6e 73 20 6f 66 20 74 e locations of t 5d50: 68 65 20 7a 6c 69 62 20 68 65 61 64 65 72 20 61 he zlib header a 5d60: 6e 64 20 6c 69 62 72 61 72 79 20 66 69 6c 65 73 nd library files 5d70: 2e 20 20 54 68 65 73 65 20 76 61 72 69 61 62 6c . These variabl 5d80: 65 73 0a 23 20 28 5a 4c 49 42 49 4e 43 44 49 52 es.# (ZLIBINCDIR 5d90: 2c 20 5a 4c 49 42 4c 49 42 44 49 52 2c 20 61 6e , ZLIBLIBDIR, an 5da0: 64 20 5a 4c 49 42 4c 49 42 29 20 6d 61 79 20 62 d ZLIBLIB) may b 5db0: 65 20 6f 76 65 72 72 69 64 64 65 6e 20 76 69 61 e overridden via 5dc0: 20 74 68 65 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 the environment 5dd0: 0a 23 20 70 72 69 6f 72 20 74 6f 20 72 75 6e 6e .# prior to runn 5de0: 69 6e 67 20 6e 6d 61 6b 65 20 69 6e 20 6f 72 64 ing nmake in ord 5df0: 65 72 20 74 6f 20 6d 61 74 63 68 20 74 68 65 20 er to match the 5e00: 61 63 74 75 61 6c 20 69 6e 73 74 61 6c 6c 65 64 actual installed 5e10: 20 28 6f 72 20 73 6f 75 72 63 65 0a 23 20 63 6f (or source.# co 5e20: 64 65 29 20 6c 6f 63 61 74 69 6f 6e 20 6f 6e 20 de) location on 5e30: 74 68 69 73 20 6d 61 63 68 69 6e 65 2e 0a 23 0a this machine..#. 5e40: 21 49 46 4e 44 45 46 20 5a 4c 49 42 44 49 52 0a !IFNDEF ZLIBDIR. 5e50: 5a 4c 49 42 44 49 52 20 3d 20 24 28 54 4f 50 29 ZLIBDIR =$(TOP)
5e60: 5c 63 6f 6d 70 61 74 5c 7a 6c 69 62 0a 21 45 4e  \compat\zlib.!EN
5e70: 44 49 46 0a 0a 21 49 46 4e 44 45 46 20 5a 4c 49  DIF..!IFNDEF ZLI
5e80: 42 49 4e 43 44 49 52 0a 5a 4c 49 42 49 4e 43 44  BINCDIR.ZLIBINCD
5e90: 49 52 20 3d 20 24 28 5a 4c 49 42 44 49 52 29 0a  IR = $(ZLIBDIR). 5ea0: 21 45 4e 44 49 46 0a 0a 21 49 46 4e 44 45 46 20 !ENDIF..!IFNDEF 5eb0: 5a 4c 49 42 4c 49 42 44 49 52 0a 5a 4c 49 42 4c ZLIBLIBDIR.ZLIBL 5ec0: 49 42 44 49 52 20 3d 20 24 28 5a 4c 49 42 44 49 IBDIR =$(ZLIBDI
5ed0: 52 29 0a 21 45 4e 44 49 46 0a 0a 21 49 46 4e 44  R).!ENDIF..!IFND
5ee0: 45 46 20 5a 4c 49 42 4c 49 42 0a 21 49 46 20 24  EF ZLIBLIB.!IF $5ef0: 28 44 59 4e 41 4d 49 43 5f 53 48 45 4c 4c 29 21 (DYNAMIC_SHELL)! 5f00: 3d 30 0a 5a 4c 49 42 4c 49 42 20 3d 20 7a 64 6c =0.ZLIBLIB = zdl 5f10: 6c 2e 6c 69 62 0a 21 45 4c 53 45 0a 5a 4c 49 42 l.lib.!ELSE.ZLIB 5f20: 4c 49 42 20 3d 20 7a 6c 69 62 2e 6c 69 62 0a 21 LIB = zlib.lib.! 5f30: 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a 23 20 ENDIF.!ENDIF..# 5f40: 54 68 65 20 6c 6f 63 61 74 69 6f 6e 73 20 6f 66 The locations of 5f50: 20 74 68 65 20 49 43 55 20 68 65 61 64 65 72 20 the ICU header 5f60: 61 6e 64 20 6c 69 62 72 61 72 79 20 66 69 6c 65 and library file 5f70: 73 2e 20 20 54 68 65 73 65 20 76 61 72 69 61 62 s. These variab 5f80: 6c 65 73 0a 23 20 28 49 43 55 49 4e 43 44 49 52 les.# (ICUINCDIR 5f90: 2c 20 49 43 55 4c 49 42 44 49 52 2c 20 61 6e 64 , ICULIBDIR, and 5fa0: 20 4c 49 42 49 43 55 29 20 6d 61 79 20 62 65 20 LIBICU) may be 5fb0: 6f 76 65 72 72 69 64 64 65 6e 20 76 69 61 20 74 overridden via t 5fc0: 68 65 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 0a 23 he environment.# 5fd0: 20 70 72 69 6f 72 20 74 6f 20 72 75 6e 6e 69 6e prior to runnin 5fe0: 67 20 6e 6d 61 6b 65 20 69 6e 20 6f 72 64 65 72 g nmake in order 5ff0: 20 74 6f 20 6d 61 74 63 68 20 74 68 65 20 61 63 to match the ac 6000: 74 75 61 6c 20 69 6e 73 74 61 6c 6c 65 64 20 6c tual installed l 6010: 6f 63 61 74 69 6f 6e 20 6f 6e 0a 23 20 74 68 69 ocation on.# thi 6020: 73 20 6d 61 63 68 69 6e 65 2e 0a 23 0a 21 49 46 s machine..#.!IF 6030: 4e 44 45 46 20 49 43 55 44 49 52 0a 49 43 55 44 NDEF ICUDIR.ICUD 6040: 49 52 20 3d 20 24 28 54 4f 50 29 5c 63 6f 6d 70 IR =$(TOP)\comp
6050: 61 74 5c 69 63 75 0a 21 45 4e 44 49 46 0a 0a 21  at\icu.!ENDIF..!
6060: 49 46 4e 44 45 46 20 49 43 55 49 4e 43 44 49 52  IFNDEF ICUINCDIR
6070: 0a 49 43 55 49 4e 43 44 49 52 20 3d 20 24 28 49  .ICUINCDIR = $(I 6080: 43 55 44 49 52 29 5c 69 6e 63 6c 75 64 65 0a 21 CUDIR)\include.! 6090: 45 4e 44 49 46 0a 0a 21 49 46 4e 44 45 46 20 49 ENDIF..!IFNDEF I 60a0: 43 55 4c 49 42 44 49 52 0a 49 43 55 4c 49 42 44 CULIBDIR.ICULIBD 60b0: 49 52 20 3d 20 24 28 49 43 55 44 49 52 29 5c 6c IR =$(ICUDIR)\l
60c0: 69 62 0a 21 45 4e 44 49 46 0a 0a 21 49 46 4e 44  ib.!ENDIF..!IFND
60d0: 45 46 20 4c 49 42 49 43 55 0a 4c 49 42 49 43 55  EF LIBICU.LIBICU
60e0: 20 3d 20 69 63 75 75 63 2e 6c 69 62 20 69 63 75   = icuuc.lib icu
60f0: 69 6e 2e 6c 69 62 0a 21 45 4e 44 49 46 0a 0a 23  in.lib.!ENDIF..#
6100: 20 54 68 69 73 20 69 73 20 74 68 65 20 63 6f 6d   This is the com
6110: 6d 61 6e 64 20 74 6f 20 75 73 65 20 66 6f 72 20  mand to use for
6120: 74 63 6c 73 68 20 2d 20 6e 6f 72 6d 61 6c 6c 79  tclsh - normally
6130: 20 6a 75 73 74 20 22 74 63 6c 73 68 22 2c 20 62   just "tclsh", b
6140: 75 74 20 77 65 20 6d 61 79 0a 23 20 6b 6e 6f 77  ut we may.# know
6150: 20 74 68 65 20 73 70 65 63 69 66 69 63 20 76 65   the specific ve
6160: 72 73 69 6f 6e 20 77 65 20 77 61 6e 74 20 74 6f  rsion we want to
6170: 20 75 73 65 2e 20 20 54 68 69 73 20 76 61 72 69   use.  This vari
6180: 61 62 6c 65 20 28 54 43 4c 53 48 5f 43 4d 44 29  able (TCLSH_CMD)
6190: 20 6d 61 79 20 62 65 0a 23 20 6f 76 65 72 72 69   may be.# overri
61a0: 64 64 65 6e 20 76 69 61 20 74 68 65 20 65 6e 76  dden via the env
61b0: 69 72 6f 6e 6d 65 6e 74 20 70 72 69 6f 72 20 74  ironment prior t
61c0: 6f 20 72 75 6e 6e 69 6e 67 20 6e 6d 61 6b 65 20  o running nmake
61d0: 69 6e 20 6f 72 64 65 72 20 74 6f 20 73 65 6c 65  in order to sele
61e0: 63 74 20 61 0a 23 20 73 70 65 63 69 66 69 63 20  ct a.# specific
61f0: 54 63 6c 20 73 68 65 6c 6c 20 74 6f 20 75 73 65  Tcl shell to use
6200: 2e 0a 23 0a 21 49 46 4e 44 45 46 20 54 43 4c 53  ..#.!IFNDEF TCLS
6210: 48 5f 43 4d 44 0a 21 49 46 20 24 28 55 53 45 5f  H_CMD.!IF $(USE_ 6220: 54 43 4c 53 48 5f 49 4e 5f 50 41 54 48 29 21 3d TCLSH_IN_PATH)!= 6230: 30 20 7c 7c 20 21 45 58 49 53 54 28 22 24 28 54 0 || !EXIST("$(T
6240: 43 4c 44 49 52 29 5c 62 69 6e 5c 74 63 6c 73 68  CLDIR)\bin\tclsh
6250: 2e 65 78 65 22 29 0a 54 43 4c 53 48 5f 43 4d 44  .exe").TCLSH_CMD
6260: 20 3d 20 74 63 6c 73 68 0a 21 45 4c 53 45 0a 54   = tclsh.!ELSE.T
6270: 43 4c 53 48 5f 43 4d 44 20 3d 20 24 28 54 43 4c  CLSH_CMD = $(TCL 6280: 44 49 52 29 5c 62 69 6e 5c 74 63 6c 73 68 2e 65 DIR)\bin\tclsh.e 6290: 78 65 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 xe.!ENDIF.!ENDIF 62a0: 0a 23 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a 0a 23 20 .# <</mark>>..# 62b0: 43 6f 6d 70 69 6c 65 72 20 6f 70 74 69 6f 6e 73 Compiler options 62c0: 20 6e 65 65 64 65 64 20 66 6f 72 20 70 72 6f 67 needed for prog 62d0: 72 61 6d 73 20 74 68 61 74 20 75 73 65 20 74 68 rams that use th 62e0: 65 20 72 65 61 64 6c 69 6e 65 28 29 20 6c 69 62 e readline() lib 62f0: 72 61 72 79 2e 0a 23 0a 21 49 46 4e 44 45 46 20 rary..#.!IFNDEF 6300: 52 45 41 44 4c 49 4e 45 5f 46 4c 41 47 53 0a 52 READLINE_FLAGS.R 6310: 45 41 44 4c 49 4e 45 5f 46 4c 41 47 53 20 3d 20 EADLINE_FLAGS = 6320: 2d 44 48 41 56 45 5f 52 45 41 44 4c 49 4e 45 3d -DHAVE_READLINE= 6330: 30 0a 21 45 4e 44 49 46 0a 0a 23 20 54 68 65 20 0.!ENDIF..# The 6340: 6c 69 62 72 61 72 79 20 74 68 61 74 20 70 72 6f library that pro 6350: 67 72 61 6d 73 20 75 73 69 6e 67 20 72 65 61 64 grams using read 6360: 6c 69 6e 65 28 29 20 6d 75 73 74 20 6c 69 6e 6b line() must link 6370: 20 61 67 61 69 6e 73 74 2e 0a 23 0a 21 49 46 4e against..#.!IFN 6380: 44 45 46 20 4c 49 42 52 45 41 44 4c 49 4e 45 0a DEF LIBREADLINE. 6390: 4c 49 42 52 45 41 44 4c 49 4e 45 20 3d 0a 21 45 LIBREADLINE =.!E 63a0: 4e 44 49 46 0a 0a 23 20 53 68 6f 75 6c 64 20 74 NDIF..# Should t 63b0: 68 65 20 64 61 74 61 62 61 73 65 20 65 6e 67 69 he database engi 63c0: 6e 65 20 62 65 20 63 6f 6d 70 69 6c 65 64 20 74 ne be compiled t 63d0: 68 72 65 61 64 73 61 66 65 0a 23 0a 54 43 43 20 hreadsafe.#.TCC 63e0: 3d 20 24 28 54 43 43 29 20 2d 44 53 51 4c 49 54 =$(TCC) -DSQLIT
63f0: 45 5f 54 48 52 45 41 44 53 41 46 45 3d 31 0a 52  E_THREADSAFE=1.R
6400: 43 43 20 3d 20 24 28 52 43 43 29 20 2d 44 53 51  CC = $(RCC) -DSQ 6410: 4c 49 54 45 5f 54 48 52 45 41 44 53 41 46 45 3d LITE_THREADSAFE= 6420: 31 0a 0a 23 20 44 6f 20 74 68 72 65 61 64 73 20 1..# Do threads 6430: 6f 76 65 72 72 69 64 65 20 65 61 63 68 20 6f 74 override each ot 6440: 68 65 72 73 20 6c 6f 63 6b 73 20 62 79 20 64 65 hers locks by de 6450: 66 61 75 6c 74 20 28 31 29 2c 20 6f 72 20 64 6f fault (1), or do 6460: 20 77 65 20 74 65 73 74 20 28 2d 31 29 0a 23 0a we test (-1).#. 6470: 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 44 53 TCC =$(TCC) -DS
6480: 51 4c 49 54 45 5f 54 48 52 45 41 44 5f 4f 56 45  QLITE_THREAD_OVE
6490: 52 52 49 44 45 5f 4c 4f 43 4b 3d 2d 31 0a 52 43  RRIDE_LOCK=-1.RC
64a0: 43 20 3d 20 24 28 52 43 43 29 20 2d 44 53 51 4c  C = $(RCC) -DSQL 64b0: 49 54 45 5f 54 48 52 45 41 44 5f 4f 56 45 52 52 ITE_THREAD_OVERR 64c0: 49 44 45 5f 4c 4f 43 4b 3d 2d 31 0a 0a 23 20 41 IDE_LOCK=-1..# A 64d0: 6e 79 20 74 61 72 67 65 74 20 6c 69 62 72 61 72 ny target librar 64e0: 69 65 73 20 77 68 69 63 68 20 6c 69 62 73 71 6c ies which libsql 64f0: 69 74 65 20 6d 75 73 74 20 62 65 20 6c 69 6e 6b ite must be link 6500: 65 64 20 61 67 61 69 6e 73 74 0a 23 0a 21 49 46 ed against.#.!IF 6510: 4e 44 45 46 20 54 4c 49 42 53 0a 54 4c 49 42 53 NDEF TLIBS.TLIBS 6520: 20 3d 0a 21 45 4e 44 49 46 0a 0a 23 20 46 6c 61 =.!ENDIF..# Fla 6530: 67 73 20 63 6f 6e 74 72 6f 6c 6c 69 6e 67 20 75 gs controlling u 6540: 73 65 20 6f 66 20 74 68 65 20 69 6e 20 6d 65 6d se of the in mem 6550: 6f 72 79 20 62 74 72 65 65 20 69 6d 70 6c 65 6d ory btree implem 6560: 65 6e 74 61 74 69 6f 6e 0a 23 0a 23 20 53 51 4c entation.#.# SQL 6570: 49 54 45 5f 54 45 4d 50 5f 53 54 4f 52 45 20 69 ITE_TEMP_STORE i 6580: 73 20 30 20 74 6f 20 66 6f 72 63 65 20 74 65 6d s 0 to force tem 6590: 70 6f 72 61 72 79 20 74 61 62 6c 65 73 20 74 6f porary tables to 65a0: 20 62 65 20 69 6e 20 61 20 66 69 6c 65 2c 20 31 be in a file, 1 65b0: 20 74 6f 0a 23 20 64 65 66 61 75 6c 74 20 74 6f to.# default to 65c0: 20 66 69 6c 65 2c 20 32 20 74 6f 20 64 65 66 61 file, 2 to defa 65d0: 75 6c 74 20 74 6f 20 6d 65 6d 6f 72 79 2c 20 61 ult to memory, a 65e0: 6e 64 20 33 20 74 6f 20 66 6f 72 63 65 20 74 65 nd 3 to force te 65f0: 6d 70 6f 72 61 72 79 0a 23 20 74 61 62 6c 65 73 mporary.# tables 6600: 20 74 6f 20 61 6c 77 61 79 73 20 62 65 20 69 6e to always be in 6610: 20 6d 65 6d 6f 72 79 2e 0a 23 0a 54 43 43 20 3d memory..#.TCC = 6620: 20 24 28 54 43 43 29 20 2d 44 53 51 4c 49 54 45$(TCC) -DSQLITE
6630: 5f 54 45 4d 50 5f 53 54 4f 52 45 3d 31 0a 52 43  _TEMP_STORE=1.RC
6640: 43 20 3d 20 24 28 52 43 43 29 20 2d 44 53 51 4c  C = $(RCC) -DSQL 6650: 49 54 45 5f 54 45 4d 50 5f 53 54 4f 52 45 3d 31 ITE_TEMP_STORE=1 6660: 0a 0a 23 20 45 6e 61 62 6c 65 2f 64 69 73 61 62 ..# Enable/disab 6670: 6c 65 20 6c 6f 61 64 61 62 6c 65 20 65 78 74 65 le loadable exte 6680: 6e 73 69 6f 6e 73 2c 20 61 6e 64 20 6f 74 68 65 nsions, and othe 6690: 72 20 6f 70 74 69 6f 6e 61 6c 20 66 65 61 74 75 r optional featu 66a0: 72 65 73 0a 23 20 62 61 73 65 64 20 6f 6e 20 63 res.# based on c 66b0: 6f 6e 66 69 67 75 72 61 74 69 6f 6e 2e 20 28 2d onfiguration. (- 66c0: 44 53 51 4c 49 54 45 5f 4f 4d 49 54 2a 2c 20 2d DSQLITE_OMIT*, - 66d0: 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 2a 29 DSQLITE_ENABLE*) 66e0: 2e 0a 23 20 54 68 65 20 73 61 6d 65 20 73 65 74 ..# The same set 66f0: 20 6f 66 20 4f 4d 49 54 20 61 6e 64 20 45 4e 41 of OMIT and ENA 6700: 42 4c 45 20 66 6c 61 67 73 20 73 68 6f 75 6c 64 BLE flags should 6710: 20 62 65 20 70 61 73 73 65 64 20 74 6f 20 74 68 be passed to th 6720: 65 0a 23 20 4c 45 4d 4f 4e 20 70 61 72 73 65 72 e.# LEMON parser 6730: 20 67 65 6e 65 72 61 74 6f 72 20 61 6e 64 20 74 generator and t 6740: 68 65 20 6d 6b 6b 65 79 77 6f 72 64 68 61 73 68 he mkkeywordhash 6750: 20 74 6f 6f 6c 20 61 73 20 77 65 6c 6c 2e 0a 0a tool as well... 6760: 23 20 54 68 65 73 65 20 61 72 65 20 74 68 65 20 # These are the 6770: 72 65 71 75 69 72 65 64 20 53 51 4c 69 74 65 20 required SQLite 6780: 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 6f 70 74 69 compilation opti 6790: 6f 6e 73 20 75 73 65 64 20 77 68 65 6e 20 63 6f ons used when co 67a0: 6d 70 69 6c 69 6e 67 20 66 6f 72 0a 23 20 74 68 mpiling for.# th 67b0: 65 20 57 69 6e 64 6f 77 73 20 70 6c 61 74 66 6f e Windows platfo 67c0: 72 6d 2e 0a 23 0a 52 45 51 5f 46 45 41 54 55 52 rm..#.REQ_FEATUR 67d0: 45 5f 46 4c 41 47 53 20 3d 20 24 28 52 45 51 5f E_FLAGS =$(REQ_
67e0: 46 45 41 54 55 52 45 5f 46 4c 41 47 53 29 20 2d  FEATURE_FLAGS) -
67f0: 44 53 51 4c 49 54 45 5f 4d 41 58 5f 54 52 49 47  DSQLITE_MAX_TRIG
6800: 47 45 52 5f 44 45 50 54 48 3d 31 30 30 0a 0a 23  GER_DEPTH=100..#
6810: 20 49 66 20 77 65 20 61 72 65 20 6c 69 6e 6b 69   If we are linki
6820: 6e 67 20 74 6f 20 74 68 65 20 52 50 43 52 54 34  ng to the RPCRT4
6830: 20 6c 69 62 72 61 72 79 2c 20 65 6e 61 62 6c 65   library, enable
6840: 20 66 65 61 74 75 72 65 73 20 74 68 61 74 20 6e   features that n
6850: 65 65 64 20 69 74 2e 0a 23 0a 21 49 46 20 24 28  eed it..#.!IF $( 6860: 55 53 45 5f 52 50 43 52 54 34 5f 4c 49 42 29 21 USE_RPCRT4_LIB)! 6870: 3d 30 0a 52 45 51 5f 46 45 41 54 55 52 45 5f 46 =0.REQ_FEATURE_F 6880: 4c 41 47 53 20 3d 20 24 28 52 45 51 5f 46 45 41 LAGS =$(REQ_FEA
6890: 54 55 52 45 5f 46 4c 41 47 53 29 20 2d 44 53 51  TURE_FLAGS) -DSQ
68a0: 4c 49 54 45 5f 57 49 4e 33 32 5f 55 53 45 5f 55  LITE_WIN32_USE_U
68b0: 55 49 44 3d 31 0a 21 45 4e 44 49 46 0a 0a 23 20  UID=1.!ENDIF..#
68c0: 41 64 64 20 74 68 65 20 72 65 71 75 69 72 65 64  Add the required
68d0: 20 61 6e 64 20 6f 70 74 69 6f 6e 61 6c 20 53 51   and optional SQ
68e0: 4c 69 74 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e  Lite compilation
68f0: 20 6f 70 74 69 6f 6e 73 20 69 6e 74 6f 20 74 68   options into th
6900: 65 20 63 6f 6d 6d 61 6e 64 0a 23 20 6c 69 6e 65  e command.# line
6910: 73 20 75 73 65 64 20 74 6f 20 69 6e 76 6f 6b 65  s used to invoke
6920: 20 74 68 65 20 4d 53 56 43 20 63 6f 64 65 20 61   the MSVC code a
6930: 6e 64 20 72 65 73 6f 75 72 63 65 20 63 6f 6d 70  nd resource comp
6940: 69 6c 65 72 73 2e 0a 23 0a 54 43 43 20 3d 20 24  ilers..#.TCC = $6950: 28 54 43 43 29 20 24 28 52 45 51 5f 46 45 41 54 (TCC)$(REQ_FEAT
6960: 55 52 45 5f 46 4c 41 47 53 29 20 24 28 4f 50 54  URE_FLAGS) $(OPT 6970: 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 29 20 _FEATURE_FLAGS) 6980: 24 28 45 58 54 5f 46 45 41 54 55 52 45 5f 46 4c$(EXT_FEATURE_FL
6990: 41 47 53 29 0a 52 43 43 20 3d 20 24 28 52 43 43  AGS).RCC = $(RCC 69a0: 29 20 24 28 52 45 51 5f 46 45 41 54 55 52 45 5f )$(REQ_FEATURE_
69b0: 46 4c 41 47 53 29 20 24 28 4f 50 54 5f 46 45 41  FLAGS) $(OPT_FEA 69c0: 54 55 52 45 5f 46 4c 41 47 53 29 20 24 28 45 58 TURE_FLAGS)$(EX
69d0: 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 29  T_FEATURE_FLAGS)
69e0: 0a 0a 23 20 41 64 64 20 69 6e 20 61 6e 79 20 6f  ..# Add in any o
69f0: 70 74 69 6f 6e 61 6c 20 70 61 72 61 6d 65 74 65  ptional paramete
6a00: 72 73 20 73 70 65 63 69 66 69 65 64 20 6f 6e 20  rs specified on
6a10: 74 68 65 20 63 6f 6d 6d 61 6e 65 20 6c 69 6e 65  the commane line
6a20: 2c 20 65 2e 67 2e 0a 23 20 6e 6d 61 6b 65 20 2f  , e.g..# nmake /
6a30: 66 20 4d 61 6b 65 66 69 6c 65 2e 6d 73 63 20 61  f Makefile.msc a
6a40: 6c 6c 20 22 4f 50 54 53 3d 2d 44 53 51 4c 49 54  ll "OPTS=-DSQLIT
6a50: 45 5f 45 4e 41 42 4c 45 5f 46 4f 4f 3d 31 20 2d  E_ENABLE_FOO=1 -
6a60: 44 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 46 4f 4f  DSQLITE_OMIT_FOO
6a70: 3d 31 22 0a 23 0a 54 43 43 20 3d 20 24 28 54 43  =1".#.TCC = $(TC 6a80: 43 29 20 24 28 4f 50 54 53 29 0a 52 43 43 20 3d C)$(OPTS).RCC =
6a90: 20 24 28 52 43 43 29 20 24 28 4f 50 54 53 29 0a   $(RCC)$(OPTS).
6aa0: 0a 23 20 49 66 20 63 6f 6d 70 69 6c 69 6e 67 20  .# If compiling
6ab0: 66 6f 72 20 64 65 62 75 67 67 69 6e 67 2c 20 61  for debugging, a
6ac0: 64 64 20 73 6f 6d 65 20 64 65 66 69 6e 65 73 2e  dd some defines.
6ad0: 0a 23 0a 21 49 46 20 24 28 44 45 42 55 47 29 3e  .#.!IF $(DEBUG)> 6ae0: 31 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 1.TCC =$(TCC) -
6af0: 44 5f 44 45 42 55 47 0a 42 43 43 20 3d 20 24 28  D_DEBUG.BCC = $( 6b00: 42 43 43 29 20 2d 44 5f 44 45 42 55 47 0a 52 43 BCC) -D_DEBUG.RC 6b10: 43 20 3d 20 24 28 52 43 43 29 20 2d 44 5f 44 45 C =$(RCC) -D_DE
6b20: 42 55 47 0a 21 45 4e 44 49 46 0a 0a 23 20 49 66  BUG.!ENDIF..# If
6b30: 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 73 20 61   optimizations a
6b40: 72 65 20 65 6e 61 62 6c 65 64 20 6f 72 20 64 69  re enabled or di
6b50: 73 61 62 6c 65 64 20 28 65 69 74 68 65 72 20 69  sabled (either i
6b60: 6d 70 6c 69 63 69 74 6c 79 20 6f 72 0a 23 20 65  mplicitly or.# e
6b70: 78 70 6c 69 63 69 74 6c 79 29 2c 20 61 64 64 20  xplicitly), add
6b80: 74 68 65 20 6e 65 63 65 73 73 61 72 79 20 66 6c  the necessary fl
6b90: 61 67 73 2e 0a 23 0a 21 49 46 20 24 28 44 45 42  ags..#.!IF $(DEB 6ba0: 55 47 29 3e 31 20 7c 7c 20 24 28 4f 50 54 49 4d UG)>1 ||$(OPTIM
6bb0: 49 5a 41 54 49 4f 4e 53 29 3d 3d 30 0a 54 43 43  IZATIONS)==0.TCC
6bc0: 20 3d 20 24 28 54 43 43 29 20 2d 4f 64 0a 42 43   = $(TCC) -Od.BC 6bd0: 43 20 3d 20 24 28 42 43 43 29 20 2d 4f 64 0a 21 C =$(BCC) -Od.!
6be0: 49 46 20 24 28 55 53 45 5f 52 55 4e 54 49 4d 45  IF $(USE_RUNTIME 6bf0: 5f 43 48 45 43 4b 53 29 21 3d 30 0a 54 43 43 20 _CHECKS)!=0.TCC 6c00: 3d 20 24 28 54 43 43 29 20 2d 52 54 43 31 0a 42 =$(TCC) -RTC1.B
6c10: 43 43 20 3d 20 24 28 42 43 43 29 20 2d 52 54 43  CC = $(BCC) -RTC 6c20: 31 0a 21 45 4e 44 49 46 0a 21 45 4c 53 45 49 46 1.!ENDIF.!ELSEIF 6c30: 20 24 28 4f 50 54 49 4d 49 5a 41 54 49 4f 4e 53$(OPTIMIZATIONS
6c40: 29 3e 3d 33 0a 54 43 43 20 3d 20 24 28 54 43 43  )>=3.TCC = $(TCC 6c50: 29 20 2d 4f 78 0a 42 43 43 20 3d 20 24 28 42 43 ) -Ox.BCC =$(BC
6c60: 43 29 20 2d 4f 78 0a 21 45 4c 53 45 49 46 20 24  C) -Ox.!ELSEIF $6c70: 28 4f 50 54 49 4d 49 5a 41 54 49 4f 4e 53 29 3d (OPTIMIZATIONS)= 6c80: 3d 32 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 =2.TCC =$(TCC)
6c90: 2d 4f 32 0a 42 43 43 20 3d 20 24 28 42 43 43 29  -O2.BCC = $(BCC) 6ca0: 20 2d 4f 32 0a 21 45 4c 53 45 49 46 20 24 28 4f -O2.!ELSEIF$(O
6cb0: 50 54 49 4d 49 5a 41 54 49 4f 4e 53 29 3d 3d 31  PTIMIZATIONS)==1
6cc0: 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 4f  .TCC = $(TCC) -O 6cd0: 31 0a 42 43 43 20 3d 20 24 28 42 43 43 29 20 2d 1.BCC =$(BCC) -
6ce0: 4f 31 0a 21 45 4e 44 49 46 0a 0a 23 20 49 66 20  O1.!ENDIF..# If
6cf0: 73 79 6d 62 6f 6c 73 20 61 72 65 20 65 6e 61 62  symbols are enab
6d00: 6c 65 64 20 28 6f 72 20 63 6f 6d 70 69 6c 69 6e  led (or compilin
6d10: 67 20 66 6f 72 20 64 65 62 75 67 67 69 6e 67 29  g for debugging)
6d20: 2c 20 65 6e 61 62 6c 65 20 50 44 42 73 2e 0a 23  , enable PDBs..#
6d30: 0a 21 49 46 20 24 28 44 45 42 55 47 29 3e 31 20  .!IF $(DEBUG)>1 6d40: 7c 7c 20 24 28 53 59 4d 42 4f 4c 53 29 21 3d 30 ||$(SYMBOLS)!=0
6d50: 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 5a  .TCC = $(TCC) -Z 6d60: 69 0a 42 43 43 20 3d 20 24 28 42 43 43 29 20 2d i.BCC =$(BCC) -
6d70: 5a 69 0a 21 45 4e 44 49 46 0a 0a 23 20 3c 3c 6d  Zi.!ENDIF..# <<m
6d80: 61 72 6b 3e 3e 0a 23 20 49 66 20 7a 6c 69 62 20  ark>>.# If zlib
6d90: 73 75 70 70 6f 72 74 20 69 73 20 65 6e 61 62 6c  support is enabl
6da0: 65 64 2c 20 61 64 64 20 74 68 65 20 63 6f 6d 70  ed, add the comp
6db0: 69 6c 65 72 20 6f 70 74 69 6f 6e 73 20 66 6f 72  iler options for
6dc0: 20 69 74 2e 0a 23 0a 21 49 46 20 24 28 55 53 45   it..#.!IF $(USE 6dd0: 5f 5a 4c 49 42 29 21 3d 30 0a 54 43 43 20 3d 20 _ZLIB)!=0.TCC = 6de0: 24 28 54 43 43 29 20 2d 44 53 51 4c 49 54 45 5f$(TCC) -DSQLITE_
6df0: 48 41 56 45 5f 5a 4c 49 42 3d 31 0a 52 43 43 20  HAVE_ZLIB=1.RCC
6e00: 3d 20 24 28 52 43 43 29 20 2d 44 53 51 4c 49 54  = $(RCC) -DSQLIT 6e10: 45 5f 48 41 56 45 5f 5a 4c 49 42 3d 31 0a 54 43 E_HAVE_ZLIB=1.TC 6e20: 43 20 3d 20 24 28 54 43 43 29 20 2d 49 24 28 5a C =$(TCC) -I$(Z 6e30: 4c 49 42 49 4e 43 44 49 52 29 0a 52 43 43 20 3d LIBINCDIR).RCC = 6e40: 20 24 28 52 43 43 29 20 2d 49 24 28 5a 4c 49 42$(RCC) -I$(ZLIB 6e50: 49 4e 43 44 49 52 29 0a 21 45 4e 44 49 46 0a 0a INCDIR).!ENDIF.. 6e60: 23 20 49 66 20 49 43 55 20 73 75 70 70 6f 72 74 # If ICU support 6e70: 20 69 73 20 65 6e 61 62 6c 65 64 2c 20 61 64 64 is enabled, add 6e80: 20 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 6f 70 the compiler op 6e90: 74 69 6f 6e 73 20 66 6f 72 20 69 74 2e 0a 23 0a tions for it..#. 6ea0: 21 49 46 20 24 28 55 53 45 5f 49 43 55 29 21 3d !IF$(USE_ICU)!=
6eb0: 30 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d  0.TCC = $(TCC) - 6ec0: 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 49 DSQLITE_ENABLE_I 6ed0: 43 55 3d 31 0a 52 43 43 20 3d 20 24 28 52 43 43 CU=1.RCC =$(RCC
6ee0: 29 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c  ) -DSQLITE_ENABL
6ef0: 45 5f 49 43 55 3d 31 0a 54 43 43 20 3d 20 24 28  E_ICU=1.TCC = $( 6f00: 54 43 43 29 20 2d 49 24 28 54 4f 50 29 5c 65 78 TCC) -I$(TOP)\ex
6f10: 74 5c 69 63 75 0a 52 43 43 20 3d 20 24 28 52 43  t\icu.RCC = $(RC 6f20: 43 29 20 2d 49 24 28 54 4f 50 29 5c 65 78 74 5c C) -I$(TOP)\ext\
6f30: 69 63 75 0a 54 43 43 20 3d 20 24 28 54 43 43 29  icu.TCC = $(TCC) 6f40: 20 2d 49 24 28 49 43 55 49 4e 43 44 49 52 29 0a -I$(ICUINCDIR).
6f50: 52 43 43 20 3d 20 24 28 52 43 43 29 20 2d 49 24  RCC = $(RCC) -I$
6f60: 28 49 43 55 49 4e 43 44 49 52 29 0a 21 45 4e 44  (ICUINCDIR).!END
6f70: 49 46 0a 23 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a 0a  IF.# <</mark>>..
6f80: 23 20 43 6f 6d 6d 61 6e 64 20 6c 69 6e 65 20 70  # Command line p
6f90: 72 65 66 69 78 65 73 20 66 6f 72 20 63 6f 6d 70  refixes for comp
6fa0: 69 6c 69 6e 67 20 63 6f 64 65 2c 20 63 6f 6d 70  iling code, comp
6fb0: 69 6c 69 6e 67 20 72 65 73 6f 75 72 63 65 73 2c  iling resources,
6fc0: 0a 23 20 6c 69 6e 6b 69 6e 67 2c 20 65 74 63 2e  .# linking, etc.
6fd0: 0a 23 0a 4c 54 43 4f 4d 50 49 4c 45 20 3d 20 24  .#.LTCOMPILE = $6fe0: 28 54 43 43 29 20 2d 46 6f 24 40 0a 4c 54 52 43 (TCC) -Fo$@.LTRC
6ff0: 4f 4d 50 49 4c 45 20 3d 20 24 28 52 43 43 29 20  OMPILE = $(RCC) 7000: 2d 72 0a 4c 54 4c 49 42 20 3d 20 6c 69 62 2e 65 -r.LTLIB = lib.e 7010: 78 65 0a 4c 54 4c 49 4e 4b 20 3d 20 24 28 54 43 xe.LTLINK =$(TC
7020: 43 29 20 2d 46 65 24 40 0a 0a 23 20 49 66 20 72  C) -Fe$@..# If r 7030: 65 71 75 65 73 74 65 64 2c 20 6c 69 6e 6b 20 74 equested, link t 7040: 6f 20 74 68 65 20 52 50 43 52 54 34 20 6c 69 62 o the RPCRT4 lib 7050: 72 61 72 79 2e 0a 23 0a 21 49 46 20 24 28 55 53 rary..#.!IF$(US
7060: 45 5f 52 50 43 52 54 34 5f 4c 49 42 29 21 3d 30  E_RPCRT4_LIB)!=0
7070: 0a 4c 54 4c 49 42 53 20 3d 20 24 28 4c 54 4c 49  .LTLIBS = $(LTLI 7080: 42 53 29 20 72 70 63 72 74 34 2e 6c 69 62 0a 21 BS) rpcrt4.lib.! 7090: 45 4e 44 49 46 0a 0a 23 20 49 66 20 61 20 70 6c ENDIF..# If a pl 70a0: 61 74 66 6f 72 6d 20 77 61 73 20 73 65 74 2c 20 atform was set, 70b0: 66 6f 72 63 65 20 74 68 65 20 6c 69 6e 6b 65 72 force the linker 70c0: 20 74 6f 20 74 61 72 67 65 74 20 74 68 61 74 2e to target that. 70d0: 0a 23 20 4e 6f 74 65 20 74 68 61 74 20 74 68 65 .# Note that the 70e0: 20 76 63 76 61 72 73 2a 2e 62 61 74 20 66 61 6d vcvars*.bat fam 70f0: 69 6c 79 20 6f 66 20 62 61 74 63 68 20 66 69 6c ily of batch fil 7100: 65 73 20 74 79 70 69 63 61 6c 6c 79 0a 23 20 73 es typically.# s 7110: 65 74 20 74 68 69 73 20 66 6f 72 20 79 6f 75 2e et this for you. 7120: 20 20 4f 74 68 65 72 77 69 73 65 2c 20 74 68 65 Otherwise, the 7130: 20 6c 69 6e 6b 65 72 20 77 69 6c 6c 20 61 74 74 linker will att 7140: 65 6d 70 74 0a 23 20 74 6f 20 64 65 64 75 63 65 empt.# to deduce 7150: 20 74 68 65 20 62 69 6e 61 72 79 20 74 79 70 65 the binary type 7160: 20 62 61 73 65 64 20 6f 6e 20 74 68 65 20 6f 62 based on the ob 7170: 6a 65 63 74 20 66 69 6c 65 73 2e 0a 21 49 46 44 ject files..!IFD 7180: 45 46 20 50 4c 41 54 46 4f 52 4d 0a 4c 54 4c 49 EF PLATFORM.LTLI 7190: 4e 4b 4f 50 54 53 20 3d 20 2f 4e 4f 4c 4f 47 4f NKOPTS = /NOLOGO 71a0: 20 2f 4d 41 43 48 49 4e 45 3a 24 28 50 4c 41 54 /MACHINE:$(PLAT
71b0: 46 4f 52 4d 29 0a 4c 54 4c 49 42 4f 50 54 53 20  FORM).LTLIBOPTS
71c0: 3d 20 2f 4e 4f 4c 4f 47 4f 20 2f 4d 41 43 48 49  = /NOLOGO /MACHI
71d0: 4e 45 3a 24 28 50 4c 41 54 46 4f 52 4d 29 0a 21  NE:$(PLATFORM).! 71e0: 45 4c 53 45 0a 4c 54 4c 49 4e 4b 4f 50 54 53 20 ELSE.LTLINKOPTS 71f0: 3d 20 2f 4e 4f 4c 4f 47 4f 0a 4c 54 4c 49 42 4f = /NOLOGO.LTLIBO 7200: 50 54 53 20 3d 20 2f 4e 4f 4c 4f 47 4f 0a 21 45 PTS = /NOLOGO.!E 7210: 4e 44 49 46 0a 0a 23 20 57 68 65 6e 20 63 6f 6d NDIF..# When com 7220: 70 69 6c 69 6e 67 20 66 6f 72 20 75 73 65 20 69 piling for use i 7230: 6e 20 74 68 65 20 57 69 6e 52 54 20 65 6e 76 69 n the WinRT envi 7240: 72 6f 6e 6d 65 6e 74 2c 20 74 68 65 20 66 6f 6c ronment, the fol 7250: 6c 6f 77 69 6e 67 0a 23 20 6c 69 6e 6b 65 72 20 lowing.# linker 7260: 6f 70 74 69 6f 6e 20 6d 75 73 74 20 62 65 20 75 option must be u 7270: 73 65 64 20 74 6f 20 6d 61 72 6b 20 74 68 65 20 sed to mark the 7280: 65 78 65 63 75 74 61 62 6c 65 20 61 73 20 72 75 executable as ru 7290: 6e 6e 61 62 6c 65 0a 23 20 6f 6e 6c 79 20 69 6e nnable.# only in 72a0: 20 74 68 65 20 63 6f 6e 74 65 78 74 20 6f 66 20 the context of 72b0: 61 6e 20 61 70 70 6c 69 63 61 74 69 6f 6e 20 63 an application c 72c0: 6f 6e 74 61 69 6e 65 72 2e 0a 23 0a 21 49 46 20 ontainer..#.!IF 72d0: 24 28 46 4f 52 5f 57 49 4e 52 54 29 21 3d 30 0a$(FOR_WINRT)!=0.
72e0: 4c 54 4c 49 4e 4b 4f 50 54 53 20 3d 20 24 28 4c  LTLINKOPTS = $(L 72f0: 54 4c 49 4e 4b 4f 50 54 53 29 20 2f 41 50 50 43 TLINKOPTS) /APPC 7300: 4f 4e 54 41 49 4e 45 52 0a 21 49 46 20 22 24 28 ONTAINER.!IF "$(
7310: 56 49 53 55 41 4c 53 54 55 44 49 4f 56 45 52 53  VISUALSTUDIOVERS
7320: 49 4f 4e 29 22 3d 3d 22 31 32 2e 30 22 20 7c 7c  ION)"=="12.0" ||
7330: 20 22 24 28 56 49 53 55 41 4c 53 54 55 44 49 4f   "$(VISUALSTUDIO 7340: 56 45 52 53 49 4f 4e 29 22 3d 3d 22 31 34 2e 30 VERSION)"=="14.0 7350: 22 0a 21 49 46 4e 44 45 46 20 53 54 4f 52 45 4c ".!IFNDEF STOREL 7360: 49 42 50 41 54 48 0a 21 49 46 20 22 24 28 50 4c IBPATH.!IF "$(PL
7370: 41 54 46 4f 52 4d 29 22 3d 3d 22 78 38 36 22 0a  ATFORM)"=="x86".
7380: 53 54 4f 52 45 4c 49 42 50 41 54 48 20 3d 20 24  STORELIBPATH = $7390: 28 43 52 54 4c 49 42 50 41 54 48 29 5c 73 74 6f (CRTLIBPATH)\sto 73a0: 72 65 0a 21 45 4c 53 45 49 46 20 22 24 28 50 4c re.!ELSEIF "$(PL
73b0: 41 54 46 4f 52 4d 29 22 3d 3d 22 78 36 34 22 0a  ATFORM)"=="x64".
73c0: 53 54 4f 52 45 4c 49 42 50 41 54 48 20 3d 20 24  STORELIBPATH = $73d0: 28 43 52 54 4c 49 42 50 41 54 48 29 5c 73 74 6f (CRTLIBPATH)\sto 73e0: 72 65 5c 61 6d 64 36 34 0a 21 45 4c 53 45 49 46 re\amd64.!ELSEIF 73f0: 20 22 24 28 50 4c 41 54 46 4f 52 4d 29 22 3d 3d "$(PLATFORM)"==
7400: 22 41 52 4d 22 0a 53 54 4f 52 45 4c 49 42 50 41  "ARM".STORELIBPA
7410: 54 48 20 3d 20 24 28 43 52 54 4c 49 42 50 41 54  TH = $(CRTLIBPAT 7420: 48 29 5c 73 74 6f 72 65 5c 61 72 6d 0a 21 45 4c H)\store\arm.!EL 7430: 53 45 0a 53 54 4f 52 45 4c 49 42 50 41 54 48 20 SE.STORELIBPATH 7440: 3d 20 24 28 43 52 54 4c 49 42 50 41 54 48 29 5c =$(CRTLIBPATH)\
7450: 73 74 6f 72 65 0a 21 45 4e 44 49 46 0a 21 45 4e  store.!ENDIF.!EN
7460: 44 49 46 0a 53 54 4f 52 45 4c 49 42 50 41 54 48  DIF.STORELIBPATH
7470: 20 3d 20 24 28 53 54 4f 52 45 4c 49 42 50 41 54   = $(STORELIBPAT 7480: 48 3a 5c 5c 3d 5c 29 0a 4c 54 4c 49 4e 4b 4f 50 H:\\=\).LTLINKOP 7490: 54 53 20 3d 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 TS =$(LTLINKOPT
74a0: 53 29 20 22 2f 4c 49 42 50 41 54 48 3a 24 28 53  S) "/LIBPATH:$(S 74b0: 54 4f 52 45 4c 49 42 50 41 54 48 29 22 0a 21 45 TORELIBPATH)".!E 74c0: 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a 23 20 57 NDIF.!ENDIF..# W 74d0: 68 65 6e 20 63 6f 6d 70 69 6c 69 6e 67 20 66 6f hen compiling fo 74e0: 72 20 57 69 6e 64 6f 77 73 20 50 68 6f 6e 65 20 r Windows Phone 74f0: 38 2e 31 2c 20 61 6e 20 65 78 74 72 61 20 6c 69 8.1, an extra li 7500: 62 72 61 72 79 20 70 61 74 68 20 69 73 0a 23 20 brary path is.# 7510: 72 65 71 75 69 72 65 64 2e 0a 23 0a 21 49 46 20 required..#.!IF 7520: 24 28 55 53 45 5f 57 50 38 31 5f 4f 50 54 53 29$(USE_WP81_OPTS)
7530: 21 3d 30 0a 21 49 46 4e 44 45 46 20 57 50 38 31  !=0.!IFNDEF WP81
7540: 4c 49 42 50 41 54 48 0a 21 49 46 20 22 24 28 50  LIBPATH.!IF "$(P 7550: 4c 41 54 46 4f 52 4d 29 22 3d 3d 22 78 38 36 22 LATFORM)"=="x86" 7560: 0a 57 50 38 31 4c 49 42 50 41 54 48 20 3d 20 24 .WP81LIBPATH =$
7570: 28 50 52 4f 47 52 41 4d 46 49 4c 45 53 5f 58 38  (PROGRAMFILES_X8
7580: 36 29 5c 57 69 6e 64 6f 77 73 20 50 68 6f 6e 65  6)\Windows Phone
7590: 20 4b 69 74 73 5c 38 2e 31 5c 6c 69 62 5c 78 38   Kits\8.1\lib\x8
75a0: 36 0a 21 45 4c 53 45 49 46 20 22 24 28 50 4c 41  6.!ELSEIF "$(PLA 75b0: 54 46 4f 52 4d 29 22 3d 3d 22 41 52 4d 22 0a 57 TFORM)"=="ARM".W 75c0: 50 38 31 4c 49 42 50 41 54 48 20 3d 20 24 28 50 P81LIBPATH =$(P
75d0: 52 4f 47 52 41 4d 46 49 4c 45 53 5f 58 38 36 29  ROGRAMFILES_X86)
75e0: 5c 57 69 6e 64 6f 77 73 20 50 68 6f 6e 65 20 4b  \Windows Phone K
75f0: 69 74 73 5c 38 2e 31 5c 6c 69 62 5c 41 52 4d 0a  its\8.1\lib\ARM.
7600: 21 45 4c 53 45 0a 57 50 38 31 4c 49 42 50 41 54  !ELSE.WP81LIBPAT
7610: 48 20 3d 20 24 28 50 52 4f 47 52 41 4d 46 49 4c  H = $(PROGRAMFIL 7620: 45 53 5f 58 38 36 29 5c 57 69 6e 64 6f 77 73 20 ES_X86)\Windows 7630: 50 68 6f 6e 65 20 4b 69 74 73 5c 38 2e 31 5c 6c Phone Kits\8.1\l 7640: 69 62 5c 78 38 36 0a 21 45 4e 44 49 46 0a 21 45 ib\x86.!ENDIF.!E 7650: 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a 23 20 57 NDIF.!ENDIF..# W 7660: 68 65 6e 20 63 6f 6d 70 69 6c 69 6e 67 20 66 6f hen compiling fo 7670: 72 20 57 69 6e 64 6f 77 73 20 50 68 6f 6e 65 20 r Windows Phone 7680: 38 2e 31 2c 20 73 6f 6d 65 20 65 78 74 72 61 20 8.1, some extra 7690: 6c 69 6e 6b 65 72 20 6f 70 74 69 6f 6e 73 0a 23 linker options.# 76a0: 20 61 72 65 20 61 6c 73 6f 20 72 65 71 75 69 72 are also requir 76b0: 65 64 2e 0a 23 0a 21 49 46 20 24 28 55 53 45 5f ed..#.!IF$(USE_
76c0: 57 50 38 31 5f 4f 50 54 53 29 21 3d 30 0a 21 49  WP81_OPTS)!=0.!I
76d0: 46 44 45 46 20 57 50 38 31 4c 49 42 50 41 54 48  FDEF WP81LIBPATH
76e0: 0a 4c 54 4c 49 4e 4b 4f 50 54 53 20 3d 20 24 28  .LTLINKOPTS = $( 76f0: 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 22 2f 4c 49 LTLINKOPTS) "/LI 7700: 42 50 41 54 48 3a 24 28 57 50 38 31 4c 49 42 50 BPATH:$(WP81LIBP
7710: 41 54 48 29 22 0a 21 45 4e 44 49 46 0a 4c 54 4c  ATH)".!ENDIF.LTL
7720: 49 4e 4b 4f 50 54 53 20 3d 20 24 28 4c 54 4c 49  INKOPTS = $(LTLI 7730: 4e 4b 4f 50 54 53 29 20 2f 44 59 4e 41 4d 49 43 NKOPTS) /DYNAMIC 7740: 42 41 53 45 0a 4c 54 4c 49 4e 4b 4f 50 54 53 20 BASE.LTLINKOPTS 7750: 3d 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 =$(LTLINKOPTS)
7760: 57 69 6e 64 6f 77 73 50 68 6f 6e 65 43 6f 72 65  WindowsPhoneCore
7770: 2e 6c 69 62 20 52 75 6e 74 69 6d 65 4f 62 6a 65  .lib RuntimeObje
7780: 63 74 2e 6c 69 62 20 50 68 6f 6e 65 41 70 70 4d  ct.lib PhoneAppM
7790: 6f 64 65 6c 48 6f 73 74 2e 6c 69 62 0a 4c 54 4c  odelHost.lib.LTL
77a0: 49 4e 4b 4f 50 54 53 20 3d 20 24 28 4c 54 4c 49  INKOPTS = $(LTLI 77b0: 4e 4b 4f 50 54 53 29 20 2f 4e 4f 44 45 46 41 55 NKOPTS) /NODEFAU 77c0: 4c 54 4c 49 42 3a 6b 65 72 6e 65 6c 33 32 2e 6c LTLIB:kernel32.l 77d0: 69 62 20 2f 4e 4f 44 45 46 41 55 4c 54 4c 49 42 ib /NODEFAULTLIB 77e0: 3a 6f 6c 65 33 32 2e 6c 69 62 0a 21 45 4e 44 49 :ole32.lib.!ENDI 77f0: 46 0a 0a 23 20 57 68 65 6e 20 63 6f 6d 70 69 6c F..# When compil 7800: 69 6e 67 20 66 6f 72 20 55 57 50 20 6f 72 20 74 ing for UWP or t 7810: 68 65 20 57 69 6e 64 6f 77 73 20 31 30 20 70 6c he Windows 10 pl 7820: 61 74 66 6f 72 6d 2c 20 73 6f 6d 65 20 65 78 74 atform, some ext 7830: 72 61 20 6c 69 6e 6b 65 72 0a 23 20 6f 70 74 69 ra linker.# opti 7840: 6f 6e 73 20 61 72 65 20 61 6c 73 6f 20 72 65 71 ons are also req 7850: 75 69 72 65 64 2e 0a 23 0a 21 49 46 20 24 28 46 uired..#.!IF$(F
7860: 4f 52 5f 55 57 50 29 21 3d 30 20 7c 7c 20 24 28  OR_UWP)!=0 || $( 7870: 46 4f 52 5f 57 49 4e 31 30 29 21 3d 30 0a 4c 54 FOR_WIN10)!=0.LT 7880: 4c 49 4e 4b 4f 50 54 53 20 3d 20 24 28 4c 54 4c LINKOPTS =$(LTL
7890: 49 4e 4b 4f 50 54 53 29 20 2f 44 59 4e 41 4d 49  INKOPTS) /DYNAMI
78a0: 43 42 41 53 45 20 2f 4e 4f 44 45 46 41 55 4c 54  CBASE /NODEFAULT
78b0: 4c 49 42 3a 6b 65 72 6e 65 6c 33 32 2e 6c 69 62  LIB:kernel32.lib
78c0: 0a 4c 54 4c 49 4e 4b 4f 50 54 53 20 3d 20 24 28  .LTLINKOPTS = $( 78d0: 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 6d 69 6e 63 LTLINKOPTS) minc 78e0: 6f 72 65 2e 6c 69 62 0a 21 49 46 44 45 46 20 50 ore.lib.!IFDEF P 78f0: 53 44 4b 4c 49 42 50 41 54 48 0a 4c 54 4c 49 4e SDKLIBPATH.LTLIN 7900: 4b 4f 50 54 53 20 3d 20 24 28 4c 54 4c 49 4e 4b KOPTS =$(LTLINK
7910: 4f 50 54 53 29 20 22 2f 4c 49 42 50 41 54 48 3a  OPTS) "/LIBPATH:
7920: 24 28 50 53 44 4b 4c 49 42 50 41 54 48 29 22 0a  $(PSDKLIBPATH)". 7930: 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a 21 !ENDIF.!ENDIF..! 7940: 49 46 20 24 28 46 4f 52 5f 57 49 4e 31 30 29 21 IF$(FOR_WIN10)!
7950: 3d 30 0a 4c 54 4c 49 4e 4b 4f 50 54 53 20 3d 20  =0.LTLINKOPTS =
7960: 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 2f 67  $(LTLINKOPTS) /g 7970: 75 61 72 64 3a 63 66 20 22 2f 4c 49 42 50 41 54 uard:cf "/LIBPAT 7980: 48 3a 24 28 55 43 52 54 4c 49 42 50 41 54 48 29 H:$(UCRTLIBPATH)
7990: 22 0a 21 49 46 20 24 28 44 45 42 55 47 29 3e 31  ".!IF $(DEBUG)>1 79a0: 0a 4c 54 4c 49 4e 4b 4f 50 54 53 20 3d 20 24 28 .LTLINKOPTS =$(
79b0: 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 2f 4e 4f 44  LTLINKOPTS) /NOD
79c0: 45 46 41 55 4c 54 4c 49 42 3a 6c 69 62 75 63 72  EFAULTLIB:libucr
79d0: 74 64 2e 6c 69 62 20 2f 44 45 46 41 55 4c 54 4c  td.lib /DEFAULTL
79e0: 49 42 3a 75 63 72 74 64 2e 6c 69 62 0a 21 45 4c  IB:ucrtd.lib.!EL
79f0: 53 45 0a 4c 54 4c 49 4e 4b 4f 50 54 53 20 3d 20  SE.LTLINKOPTS =
7a00: 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 2f 4e  $(LTLINKOPTS) /N 7a10: 4f 44 45 46 41 55 4c 54 4c 49 42 3a 6c 69 62 75 ODEFAULTLIB:libu 7a20: 63 72 74 2e 6c 69 62 20 2f 44 45 46 41 55 4c 54 crt.lib /DEFAULT 7a30: 4c 49 42 3a 75 63 72 74 2e 6c 69 62 0a 21 45 4e LIB:ucrt.lib.!EN 7a40: 44 49 46 0a 21 45 4e 44 49 46 0a 0a 23 20 49 66 DIF.!ENDIF..# If 7a50: 20 65 69 74 68 65 72 20 64 65 62 75 67 67 69 6e either debuggin 7a60: 67 20 6f 72 20 73 79 6d 62 6f 6c 73 20 61 72 65 g or symbols are 7a70: 20 65 6e 61 62 6c 65 64 2c 20 65 6e 61 62 6c 65 enabled, enable 7a80: 20 50 44 42 73 2e 0a 23 0a 21 49 46 20 24 28 44 PDBs..#.!IF$(D
7a90: 45 42 55 47 29 3e 31 20 7c 7c 20 24 28 53 59 4d  EBUG)>1 || $(SYM 7aa0: 42 4f 4c 53 29 21 3d 30 0a 4c 44 46 4c 41 47 53 BOLS)!=0.LDFLAGS 7ab0: 20 3d 20 2f 44 45 42 55 47 20 24 28 4c 44 4f 50 = /DEBUG$(LDOP
7ac0: 54 53 29 0a 21 45 4c 53 45 0a 4c 44 46 4c 41 47  TS).!ELSE.LDFLAG
7ad0: 53 20 3d 20 24 28 4c 44 4f 50 54 53 29 0a 21 45  S = $(LDOPTS).!E 7ae0: 4e 44 49 46 0a 0a 23 20 3c 3c 6d 61 72 6b 3e 3e NDIF..# <<mark>> 7af0: 0a 23 20 53 74 61 72 74 20 77 69 74 68 20 74 68 .# Start with th 7b00: 65 20 54 63 6c 20 72 65 6c 61 74 65 64 20 6c 69 e Tcl related li 7b10: 6e 6b 65 72 20 6f 70 74 69 6f 6e 73 2e 0a 23 0a nker options..#. 7b20: 21 49 46 20 24 28 4e 4f 5f 54 43 4c 29 3d 3d 30 !IF$(NO_TCL)==0
7b30: 0a 54 43 4c 4c 49 42 50 41 54 48 53 20 3d 20 24  .TCLLIBPATHS = $7b40: 28 54 43 4c 4c 49 42 50 41 54 48 53 29 20 2f 4c (TCLLIBPATHS) /L 7b50: 49 42 50 41 54 48 3a 24 28 54 43 4c 4c 49 42 44 IBPATH:$(TCLLIBD
7b60: 49 52 29 0a 54 43 4c 4c 49 42 53 20 3d 20 24 28  IR).TCLLIBS = $( 7b70: 54 43 4c 4c 49 42 53 29 20 24 28 4c 49 42 54 43 TCLLIBS)$(LIBTC
7b80: 4c 29 0a 21 45 4e 44 49 46 0a 0a 23 20 49 66 20  L).!ENDIF..# If
7b90: 7a 6c 69 62 20 73 75 70 70 6f 72 74 20 69 73 20  zlib support is
7ba0: 65 6e 61 62 6c 65 64 2c 20 61 64 64 20 74 68 65  enabled, add the
7bb0: 20 6c 69 6e 6b 65 72 20 6f 70 74 69 6f 6e 73 20   linker options
7bc0: 66 6f 72 20 69 74 2e 0a 23 0a 21 49 46 20 24 28  for it..#.!IF $( 7bd0: 55 53 45 5f 5a 4c 49 42 29 21 3d 30 0a 4c 54 4c USE_ZLIB)!=0.LTL 7be0: 49 42 50 41 54 48 53 20 3d 20 24 28 4c 54 4c 49 IBPATHS =$(LTLI
7bf0: 42 50 41 54 48 53 29 20 2f 4c 49 42 50 41 54 48  BPATHS) /LIBPATH
7c00: 3a 24 28 5a 4c 49 42 4c 49 42 44 49 52 29 0a 4c  :$(ZLIBLIBDIR).L 7c10: 54 4c 49 42 53 20 3d 20 24 28 4c 54 4c 49 42 53 TLIBS =$(LTLIBS
7c20: 29 20 24 28 5a 4c 49 42 4c 49 42 29 0a 21 45 4e  ) $(ZLIBLIB).!EN 7c30: 44 49 46 0a 0a 23 20 49 66 20 49 43 55 20 73 75 DIF..# If ICU su 7c40: 70 70 6f 72 74 20 69 73 20 65 6e 61 62 6c 65 64 pport is enabled 7c50: 2c 20 61 64 64 20 74 68 65 20 6c 69 6e 6b 65 72 , add the linker 7c60: 20 6f 70 74 69 6f 6e 73 20 66 6f 72 20 69 74 2e options for it. 7c70: 0a 23 0a 21 49 46 20 24 28 55 53 45 5f 49 43 55 .#.!IF$(USE_ICU
7c80: 29 21 3d 30 0a 4c 54 4c 49 42 50 41 54 48 53 20  )!=0.LTLIBPATHS
7c90: 3d 20 24 28 4c 54 4c 49 42 50 41 54 48 53 29 20  = $(LTLIBPATHS) 7ca0: 2f 4c 49 42 50 41 54 48 3a 24 28 49 43 55 4c 49 /LIBPATH:$(ICULI
7cb0: 42 44 49 52 29 0a 4c 54 4c 49 42 53 20 3d 20 24  BDIR).LTLIBS = $7cc0: 28 4c 54 4c 49 42 53 29 20 24 28 4c 49 42 49 43 (LTLIBS)$(LIBIC
7cd0: 55 29 0a 21 45 4e 44 49 46 0a 23 20 3c 3c 2f 6d  U).!ENDIF.# <</m
7ce0: 61 72 6b 3e 3e 0a 0a 23 20 59 6f 75 20 73 68 6f  ark>>..# You sho
7cf0: 75 6c 64 20 6e 6f 74 20 68 61 76 65 20 74 6f 20  uld not have to
7d00: 63 68 61 6e 67 65 20 61 6e 79 74 68 69 6e 67 20  change anything
7d10: 62 65 6c 6f 77 20 74 68 69 73 20 6c 69 6e 65 0a  below this line.
7d20: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
7d30: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
7d40: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
7d50: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
7d60: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 0a  ###############.
7d70: 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 23 20 4f 62  .# <<mark>>.# Ob
7d80: 6a 65 63 74 20 66 69 6c 65 73 20 66 6f 72 20 74  ject files for t
7d90: 68 65 20 53 51 4c 69 74 65 20 6c 69 62 72 61 72  he SQLite librar
7da0: 79 20 28 6e 6f 6e 2d 61 6d 61 6c 67 61 6d 61 74  y (non-amalgamat
7db0: 69 6f 6e 29 2e 0a 23 0a 4c 49 42 4f 42 4a 53 30  ion)..#.LIBOBJS0
7dc0: 20 3d 20 76 64 62 65 2e 6c 6f 20 70 61 72 73 65   = vdbe.lo parse
7dd0: 2e 6c 6f 20 61 6c 74 65 72 2e 6c 6f 20 61 6e 61  .lo alter.lo ana
7de0: 6c 79 7a 65 2e 6c 6f 20 61 74 74 61 63 68 2e 6c  lyze.lo attach.l
7df0: 6f 20 61 75 74 68 2e 6c 6f 20 5c 0a 20 20 20 20  o auth.lo \.
7e00: 20 20 20 20 20 62 61 63 6b 75 70 2e 6c 6f 20 62       backup.lo b
7e10: 69 74 76 65 63 2e 6c 6f 20 62 74 6d 75 74 65 78  itvec.lo btmutex
7e20: 2e 6c 6f 20 62 74 72 65 65 2e 6c 6f 20 62 75 69  .lo btree.lo bui
7e30: 6c 64 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20  ld.lo \.
7e40: 20 63 61 6c 6c 62 61 63 6b 2e 6c 6f 20 63 6f 6d   callback.lo com
7e50: 70 6c 65 74 65 2e 6c 6f 20 63 74 69 6d 65 2e 6c  plete.lo ctime.l
7e60: 6f 20 5c 0a 20 20 20 20 20 20 20 20 20 64 61 74  o \.         dat
7e70: 65 2e 6c 6f 20 64 62 70 61 67 65 2e 6c 6f 20 64  e.lo dbpage.lo d
7e80: 62 73 74 61 74 2e 6c 6f 20 64 65 6c 65 74 65 2e  bstat.lo delete.
7e90: 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 20 65 78  lo \.         ex
7ea0: 70 72 2e 6c 6f 20 66 61 75 6c 74 2e 6c 6f 20 66  pr.lo fault.lo f
7eb0: 6b 65 79 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20  key.lo \.
7ec0: 20 20 66 74 73 33 2e 6c 6f 20 66 74 73 33 5f 61    fts3.lo fts3_a
7ed0: 75 78 2e 6c 6f 20 66 74 73 33 5f 65 78 70 72 2e  ux.lo fts3_expr.
7ee0: 6c 6f 20 66 74 73 33 5f 68 61 73 68 2e 6c 6f 20  lo fts3_hash.lo
7ef0: 66 74 73 33 5f 69 63 75 2e 6c 6f 20 5c 0a 20 20  fts3_icu.lo \.
7f00: 20 20 20 20 20 20 20 66 74 73 33 5f 70 6f 72 74         fts3_port
7f10: 65 72 2e 6c 6f 20 66 74 73 33 5f 73 6e 69 70 70  er.lo fts3_snipp
7f20: 65 74 2e 6c 6f 20 66 74 73 33 5f 74 6f 6b 65 6e  et.lo fts3_token
7f30: 69 7a 65 72 2e 6c 6f 20 66 74 73 33 5f 74 6f 6b  izer.lo fts3_tok
7f40: 65 6e 69 7a 65 72 31 2e 6c 6f 20 5c 0a 20 20 20  enizer1.lo \.
7f50: 20 20 20 20 20 20 66 74 73 33 5f 74 6f 6b 65 6e        fts3_token
7f60: 69 7a 65 5f 76 74 61 62 2e 6c 6f 20 66 74 73 33  ize_vtab.lo fts3
7f70: 5f 75 6e 69 63 6f 64 65 2e 6c 6f 20 66 74 73 33  _unicode.lo fts3
7f80: 5f 75 6e 69 63 6f 64 65 32 2e 6c 6f 20 66 74 73  _unicode2.lo fts
7f90: 33 5f 77 72 69 74 65 2e 6c 6f 20 5c 0a 20 20 20  3_write.lo \.
7fa0: 20 20 20 20 20 20 66 74 73 35 2e 6c 6f 20 5c 0a        fts5.lo \.
7fb0: 20 20 20 20 20 20 20 20 20 66 75 6e 63 2e 6c 6f           func.lo
7fc0: 20 67 6c 6f 62 61 6c 2e 6c 6f 20 68 61 73 68 2e   global.lo hash.
7fd0: 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 20 69 63  lo \.         ic
7fe0: 75 2e 6c 6f 20 69 6e 73 65 72 74 2e 6c 6f 20 6a  u.lo insert.lo j
7ff0: 73 6f 6e 31 2e 6c 6f 20 6c 65 67 61 63 79 2e 6c  son1.lo legacy.l
8000: 6f 20 6c 6f 61 64 65 78 74 2e 6c 6f 20 5c 0a 20  o loadext.lo \.
8010: 20 20 20 20 20 20 20 20 6d 61 69 6e 2e 6c 6f 20          main.lo
8020: 6d 61 6c 6c 6f 63 2e 6c 6f 20 6d 65 6d 30 2e 6c  malloc.lo mem0.l
8030: 6f 20 6d 65 6d 31 2e 6c 6f 20 6d 65 6d 32 2e 6c  o mem1.lo mem2.l
8040: 6f 20 6d 65 6d 33 2e 6c 6f 20 6d 65 6d 35 2e 6c  o mem3.lo mem5.l
8050: 6f 20 5c 0a 20 20 20 20 20 20 20 20 20 6d 65 6d  o \.         mem
8060: 64 62 2e 6c 6f 20 6d 65 6d 6a 6f 75 72 6e 61 6c  db.lo memjournal
8070: 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 20 6d  .lo \.         m
8080: 75 74 65 78 2e 6c 6f 20 6d 75 74 65 78 5f 6e 6f  utex.lo mutex_no
8090: 6f 70 2e 6c 6f 20 6d 75 74 65 78 5f 75 6e 69 78  op.lo mutex_unix
80a0: 2e 6c 6f 20 6d 75 74 65 78 5f 77 33 32 2e 6c 6f  .lo mutex_w32.lo
80b0: 20 5c 0a 20 20 20 20 20 20 20 20 20 6e 6f 74 69   \.         noti
80c0: 66 79 2e 6c 6f 20 6f 70 63 6f 64 65 73 2e 6c 6f  fy.lo opcodes.lo
80d0: 20 6f 73 2e 6c 6f 20 6f 73 5f 75 6e 69 78 2e 6c   os.lo os_unix.l
80e0: 6f 20 6f 73 5f 77 69 6e 2e 6c 6f 20 5c 0a 20 20  o os_win.lo \.
80f0: 20 20 20 20 20 20 20 70 61 67 65 72 2e 6c 6f 20         pager.lo
8100: 70 63 61 63 68 65 2e 6c 6f 20 70 63 61 63 68 65  pcache.lo pcache
8110: 31 2e 6c 6f 20 70 72 61 67 6d 61 2e 6c 6f 20 70  1.lo pragma.lo p
8120: 72 65 70 61 72 65 2e 6c 6f 20 70 72 69 6e 74 66  repare.lo printf
8130: 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 20 72  .lo \.         r
8140: 61 6e 64 6f 6d 2e 6c 6f 20 72 65 73 6f 6c 76 65  andom.lo resolve
8150: 2e 6c 6f 20 72 6f 77 73 65 74 2e 6c 6f 20 72 74  .lo rowset.lo rt
8160: 72 65 65 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20  ree.lo \.
8170: 20 20 73 71 6c 69 74 65 33 73 65 73 73 69 6f 6e    sqlite3session
8180: 2e 6c 6f 20 73 65 6c 65 63 74 2e 6c 6f 20 73 71  .lo select.lo sq
8190: 6c 69 74 65 33 72 62 75 2e 6c 6f 20 73 74 61 74  lite3rbu.lo stat
81a0: 75 73 2e 6c 6f 20 73 74 6d 74 2e 6c 6f 20 5c 0a  us.lo stmt.lo \.
81b0: 20 20 20 20 20 20 20 20 20 74 61 62 6c 65 2e 6c           table.l
81c0: 6f 20 74 68 72 65 61 64 73 2e 6c 6f 20 74 6f 6b  o threads.lo tok
81d0: 65 6e 69 7a 65 2e 6c 6f 20 74 72 65 65 76 69 65  enize.lo treevie
81e0: 77 2e 6c 6f 20 74 72 69 67 67 65 72 2e 6c 6f 20  w.lo trigger.lo
81f0: 5c 0a 20 20 20 20 20 20 20 20 20 75 70 64 61 74  \.         updat
8200: 65 2e 6c 6f 20 75 70 73 65 72 74 2e 6c 6f 20 75  e.lo upsert.lo u
8210: 74 69 6c 2e 6c 6f 20 76 61 63 75 75 6d 2e 6c 6f  til.lo vacuum.lo
8220: 20 5c 0a 20 20 20 20 20 20 20 20 20 76 64 62 65   \.         vdbe
8230: 61 70 69 2e 6c 6f 20 76 64 62 65 61 75 78 2e 6c  api.lo vdbeaux.l
8240: 6f 20 76 64 62 65 62 6c 6f 62 2e 6c 6f 20 76 64  o vdbeblob.lo vd
8250: 62 65 6d 65 6d 2e 6c 6f 20 76 64 62 65 73 6f 72  bemem.lo vdbesor
8260: 74 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 20  t.lo \.
8270: 76 64 62 65 74 72 61 63 65 2e 6c 6f 20 77 61 6c  vdbetrace.lo wal
8280: 2e 6c 6f 20 77 61 6c 6b 65 72 2e 6c 6f 20 77 68  .lo walker.lo wh
8290: 65 72 65 2e 6c 6f 20 77 68 65 72 65 63 6f 64 65  ere.lo wherecode
82a0: 2e 6c 6f 20 77 68 65 72 65 65 78 70 72 2e 6c 6f  .lo whereexpr.lo
82b0: 20 5c 0a 20 20 20 20 20 20 20 20 20 77 69 6e 64   \.         wind
82c0: 6f 77 2e 6c 6f 20 75 74 66 2e 6c 6f 20 76 74 61  ow.lo utf.lo vta
82d0: 62 2e 6c 6f 0a 23 20 3c 3c 2f 6d 61 72 6b 3e 3e  b.lo.# <</mark>>
82e0: 0a 0a 23 20 4f 62 6a 65 63 74 20 66 69 6c 65 73  ..# Object files
82f0: 20 66 6f 72 20 74 68 65 20 61 6d 61 6c 67 61 6d   for the amalgam
8300: 61 74 69 6f 6e 2e 0a 23 0a 4c 49 42 4f 42 4a 53  ation..#.LIBOBJS
8310: 31 20 3d 20 73 71 6c 69 74 65 33 2e 6c 6f 0a 0a  1 = sqlite3.lo..
8320: 23 20 44 65 74 65 72 6d 69 6e 65 20 74 68 65 20  # Determine the
8330: 72 65 61 6c 20 76 61 6c 75 65 20 6f 66 20 4c 49  real value of LI
8340: 42 4f 42 4a 20 62 61 73 65 64 20 6f 6e 20 74 68  BOBJ based on th
8350: 65 20 27 63 6f 6e 66 69 67 75 72 65 27 20 73 63  e 'configure' sc
8360: 72 69 70 74 0a 23 0a 23 20 3c 3c 6d 61 72 6b 3e  ript.#.# <<mark>
8370: 3e 0a 21 49 46 20 24 28 55 53 45 5f 41 4d 41 4c  >.!IF $(USE_AMAL 8380: 47 41 4d 41 54 49 4f 4e 29 3d 3d 30 0a 4c 49 42 GAMATION)==0.LIB 8390: 4f 42 4a 20 3d 20 24 28 4c 49 42 4f 42 4a 53 30 OBJ =$(LIBOBJS0
83a0: 29 0a 21 45 4c 53 45 0a 23 20 3c 3c 2f 6d 61 72  ).!ELSE.# <</mar
83b0: 6b 3e 3e 0a 4c 49 42 4f 42 4a 20 3d 20 24 28 4c  k>>.LIBOBJ = $(L 83c0: 49 42 4f 42 4a 53 31 29 0a 23 20 3c 3c 6d 61 72 IBOBJS1).# <<mar 83d0: 6b 3e 3e 0a 21 45 4e 44 49 46 0a 23 20 3c 3c 2f k>>.!ENDIF.# <</ 83e0: 6d 61 72 6b 3e 3e 0a 0a 23 20 44 65 74 65 72 6d mark>>..# Determ 83f0: 69 6e 65 20 69 66 20 65 6d 62 65 64 64 65 64 20 ine if embedded 8400: 72 65 73 6f 75 72 63 65 20 63 6f 6d 70 69 6c 61 resource compila 8410: 74 69 6f 6e 20 61 6e 64 20 75 73 61 67 65 20 61 tion and usage a 8420: 72 65 20 65 6e 61 62 6c 65 64 2e 0a 23 0a 21 49 re enabled..#.!I 8430: 46 20 24 28 55 53 45 5f 52 43 29 21 3d 30 0a 4c F$(USE_RC)!=0.L
8440: 49 42 52 45 53 4f 42 4a 53 20 3d 20 73 71 6c 69  IBRESOBJS = sqli
8450: 74 65 33 72 65 73 2e 6c 6f 0a 21 45 4c 53 45 0a  te3res.lo.!ELSE.
8460: 4c 49 42 52 45 53 4f 42 4a 53 20 3d 0a 21 45 4e  LIBRESOBJS =.!EN
8470: 44 49 46 0a 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a  DIF..# <<mark>>.
8480: 23 20 43 6f 72 65 20 73 6f 75 72 63 65 20 63 6f  # Core source co
8490: 64 65 20 66 69 6c 65 73 2c 20 70 61 72 74 20 31  de files, part 1
84a0: 2e 0a 23 0a 53 52 43 30 30 20 3d 20 5c 0a 20 20  ..#.SRC00 = \.
84b0: 24 28 54 4f 50 29 5c 73 72 63 5c 61 6c 74 65 72  $(TOP)\src\alter 84c0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 .c \.$(TOP)\sr
84d0: 63 5c 61 6e 61 6c 79 7a 65 2e 63 20 5c 0a 20 20  c\analyze.c \.
84e0: 24 28 54 4f 50 29 5c 73 72 63 5c 61 74 74 61 63  $(TOP)\src\attac 84f0: 68 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 h.c \.$(TOP)\s
8500: 72 63 5c 61 75 74 68 2e 63 20 5c 0a 20 20 24 28  rc\auth.c \.  $( 8510: 54 4f 50 29 5c 73 72 63 5c 62 61 63 6b 75 70 2e TOP)\src\backup. 8520: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 c \.$(TOP)\src
8530: 5c 62 69 74 76 65 63 2e 63 20 5c 0a 20 20 24 28  \bitvec.c \.  $( 8540: 54 4f 50 29 5c 73 72 63 5c 62 74 6d 75 74 65 78 TOP)\src\btmutex 8550: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 .c \.$(TOP)\sr
8560: 63 5c 62 74 72 65 65 2e 63 20 5c 0a 20 20 24 28  c\btree.c \.  $( 8570: 54 4f 50 29 5c 73 72 63 5c 62 75 69 6c 64 2e 63 TOP)\src\build.c 8580: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c \.$(TOP)\src\
8590: 63 61 6c 6c 62 61 63 6b 2e 63 20 5c 0a 20 20 24  callback.c \.  $85a0: 28 54 4f 50 29 5c 73 72 63 5c 63 6f 6d 70 6c 65 (TOP)\src\comple 85b0: 74 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c te.c \.$(TOP)\
85c0: 73 72 63 5c 63 74 69 6d 65 2e 63 20 5c 0a 20 20  src\ctime.c \.
85d0: 24 28 54 4f 50 29 5c 73 72 63 5c 64 61 74 65 2e  $(TOP)\src\date. 85e0: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 c \.$(TOP)\src
85f0: 5c 64 62 70 61 67 65 2e 63 20 5c 0a 20 20 24 28  \dbpage.c \.  $( 8600: 54 4f 50 29 5c 73 72 63 5c 64 62 73 74 61 74 2e TOP)\src\dbstat. 8610: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 c \.$(TOP)\src
8620: 5c 64 65 6c 65 74 65 2e 63 20 5c 0a 20 20 24 28  \delete.c \.  $( 8630: 54 4f 50 29 5c 73 72 63 5c 65 78 70 72 2e 63 20 TOP)\src\expr.c 8640: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 66 \.$(TOP)\src\f
8650: 61 75 6c 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50  ault.c \.  $(TOP 8660: 29 5c 73 72 63 5c 66 6b 65 79 2e 63 20 5c 0a 20 )\src\fkey.c \. 8670: 20 24 28 54 4f 50 29 5c 73 72 63 5c 66 75 6e 63$(TOP)\src\func
8680: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr 8690: 63 5c 67 6c 6f 62 61 6c 2e 63 20 5c 0a 20 20 24 c\global.c \.$
86a0: 28 54 4f 50 29 5c 73 72 63 5c 68 61 73 68 2e 63  (TOP)\src\hash.c
86b0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\ 86c0: 69 6e 73 65 72 74 2e 63 20 5c 0a 20 20 24 28 54 insert.c \.$(T
86d0: 4f 50 29 5c 73 72 63 5c 6c 65 67 61 63 79 2e 63  OP)\src\legacy.c
86e0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\ 86f0: 6c 6f 61 64 65 78 74 2e 63 20 5c 0a 20 20 24 28 loadext.c \.$(
8700: 54 4f 50 29 5c 73 72 63 5c 6d 61 69 6e 2e 63 20  TOP)\src\main.c
8710: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d  \.  $(TOP)\src\m 8720: 61 6c 6c 6f 63 2e 63 20 5c 0a 20 20 24 28 54 4f alloc.c \.$(TO
8730: 50 29 5c 73 72 63 5c 6d 65 6d 30 2e 63 20 5c 0a  P)\src\mem0.c \.
8740: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d    $(TOP)\src\mem 8750: 31 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 1.c \.$(TOP)\s
8760: 72 63 5c 6d 65 6d 32 2e 63 20 5c 0a 20 20 24 28  rc\mem2.c \.  $( 8770: 54 4f 50 29 5c 73 72 63 5c 6d 65 6d 33 2e 63 20 TOP)\src\mem3.c 8780: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d \.$(TOP)\src\m
8790: 65 6d 35 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  em5.c \.  $(TOP) 87a0: 5c 73 72 63 5c 6d 65 6d 64 62 2e 63 20 5c 0a 20 \src\memdb.c \. 87b0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d 6a$(TOP)\src\memj
87c0: 6f 75 72 6e 61 6c 2e 63 20 5c 0a 20 20 24 28 54  ournal.c \.  $(T 87d0: 4f 50 29 5c 73 72 63 5c 6d 75 74 65 78 2e 63 20 OP)\src\mutex.c 87e0: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d \.$(TOP)\src\m
87f0: 75 74 65 78 5f 6e 6f 6f 70 2e 63 20 5c 0a 20 20  utex_noop.c \.
8800: 24 28 54 4f 50 29 5c 73 72 63 5c 6d 75 74 65 78  $(TOP)\src\mutex 8810: 5f 75 6e 69 78 2e 63 20 5c 0a 20 20 24 28 54 4f _unix.c \.$(TO
8820: 50 29 5c 73 72 63 5c 6d 75 74 65 78 5f 77 33 32  P)\src\mutex_w32
8830: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr 8840: 63 5c 6e 6f 74 69 66 79 2e 63 20 5c 0a 20 20 24 c\notify.c \.$
8850: 28 54 4f 50 29 5c 73 72 63 5c 6f 73 2e 63 20 5c  (TOP)\src\os.c \
8860: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6f 73  .  $(TOP)\src\os 8870: 5f 75 6e 69 78 2e 63 20 5c 0a 20 20 24 28 54 4f _unix.c \.$(TO
8880: 50 29 5c 73 72 63 5c 6f 73 5f 77 69 6e 2e 63 0a  P)\src\os_win.c.
8890: 0a 23 20 43 6f 72 65 20 73 6f 75 72 63 65 20 63  .# Core source c
88a0: 6f 64 65 20 66 69 6c 65 73 2c 20 70 61 72 74 20  ode files, part
88b0: 32 2e 0a 23 0a 53 52 43 30 31 20 3d 20 5c 0a 20  2..#.SRC01 = \.
88c0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 61 67 65   $(TOP)\src\page 88d0: 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 r.c \.$(TOP)\s
88e0: 72 63 5c 70 63 61 63 68 65 2e 63 20 5c 0a 20 20  rc\pcache.c \.
88f0: 24 28 54 4f 50 29 5c 73 72 63 5c 70 63 61 63 68  $(TOP)\src\pcach 8900: 65 31 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c e1.c \.$(TOP)\
8910: 73 72 63 5c 70 72 61 67 6d 61 2e 63 20 5c 0a 20  src\pragma.c \.
8920: 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 72 65 70   $(TOP)\src\prep 8930: 61 72 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 are.c \.$(TOP)
8940: 5c 73 72 63 5c 70 72 69 6e 74 66 2e 63 20 5c 0a  \src\printf.c \.
8950: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 72 61 6e    $(TOP)\src\ran 8960: 64 6f 6d 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 dom.c \.$(TOP)
8970: 5c 73 72 63 5c 72 65 73 6f 6c 76 65 2e 63 20 5c  \src\resolve.c \
8980: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 72 6f  .  $(TOP)\src\ro 8990: 77 73 65 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50 wset.c \.$(TOP
89a0: 29 5c 73 72 63 5c 73 65 6c 65 63 74 2e 63 20 5c  )\src\select.c \
89b0: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 73 74  .  $(TOP)\src\st 89c0: 61 74 75 73 2e 63 20 5c 0a 20 20 24 28 54 4f 50 atus.c \.$(TOP
89d0: 29 5c 73 72 63 5c 74 61 62 6c 65 2e 63 20 5c 0a  )\src\table.c \.
89e0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 68 72    $(TOP)\src\thr 89f0: 65 61 64 73 2e 63 20 5c 0a 20 20 24 28 54 4f 50 eads.c \.$(TOP
8a00: 29 5c 73 72 63 5c 74 63 6c 73 71 6c 69 74 65 2e  )\src\tclsqlite.
8a10: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src 8a20: 5c 74 6f 6b 65 6e 69 7a 65 2e 63 20 5c 0a 20 20 \tokenize.c \. 8a30: 24 28 54 4f 50 29 5c 73 72 63 5c 74 72 65 65 76$(TOP)\src\treev
8a40: 69 65 77 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  iew.c \.  $(TOP) 8a50: 5c 73 72 63 5c 74 72 69 67 67 65 72 2e 63 20 5c \src\trigger.c \ 8a60: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 75 74 .$(TOP)\src\ut
8a70: 66 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  f.c \.  $(TOP)\s 8a80: 72 63 5c 75 70 64 61 74 65 2e 63 20 5c 0a 20 20 rc\update.c \. 8a90: 24 28 54 4f 50 29 5c 73 72 63 5c 75 70 73 65 72$(TOP)\src\upser
8aa0: 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  t.c \.  $(TOP)\s 8ab0: 72 63 5c 75 74 69 6c 2e 63 20 5c 0a 20 20 24 28 rc\util.c \.$(
8ac0: 54 4f 50 29 5c 73 72 63 5c 76 61 63 75 75 6d 2e  TOP)\src\vacuum.
8ad0: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src 8ae0: 5c 76 64 62 65 2e 63 20 5c 0a 20 20 24 28 54 4f \vdbe.c \.$(TO
8af0: 50 29 5c 73 72 63 5c 76 64 62 65 61 70 69 2e 63  P)\src\vdbeapi.c
8b00: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\ 8b10: 76 64 62 65 61 75 78 2e 63 20 5c 0a 20 20 24 28 vdbeaux.c \.$(
8b20: 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 62 6c 6f  TOP)\src\vdbeblo
8b30: 62 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  b.c \.  $(TOP)\s 8b40: 72 63 5c 76 64 62 65 6d 65 6d 2e 63 20 5c 0a 20 rc\vdbemem.c \. 8b50: 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65$(TOP)\src\vdbe
8b60: 73 6f 72 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50  sort.c \.  $(TOP 8b70: 29 5c 73 72 63 5c 76 64 62 65 74 72 61 63 65 2e )\src\vdbetrace. 8b80: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 c \.$(TOP)\src
8b90: 5c 76 74 61 62 2e 63 20 5c 0a 20 20 24 28 54 4f  \vtab.c \.  $(TO 8ba0: 50 29 5c 73 72 63 5c 77 61 6c 2e 63 20 5c 0a 20 P)\src\wal.c \. 8bb0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 77 61 6c 6b$(TOP)\src\walk
8bc0: 65 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  er.c \.  $(TOP)\ 8bd0: 73 72 63 5c 77 68 65 72 65 2e 63 20 5c 0a 20 20 src\where.c \. 8be0: 24 28 54 4f 50 29 5c 73 72 63 5c 77 68 65 72 65$(TOP)\src\where
8bf0: 63 6f 64 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50  code.c \.  $(TOP 8c00: 29 5c 73 72 63 5c 77 68 65 72 65 65 78 70 72 2e )\src\whereexpr. 8c10: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 c \.$(TOP)\src
8c20: 5c 77 69 6e 64 6f 77 2e 63 0a 0a 23 20 43 6f 72  \window.c..# Cor
8c30: 65 20 6d 69 73 63 65 6c 6c 61 6e 65 6f 75 73 20  e miscellaneous
8c40: 66 69 6c 65 73 2e 0a 23 0a 53 52 43 30 33 20 3d  files..#.SRC03 =
8c50: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\ 8c60: 70 61 72 73 65 2e 79 0a 0a 23 20 43 6f 72 65 20 parse.y..# Core 8c70: 68 65 61 64 65 72 20 66 69 6c 65 73 2c 20 70 61 header files, pa 8c80: 72 74 20 31 2e 0a 23 0a 53 52 43 30 34 20 3d 20 rt 1..#.SRC04 = 8c90: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 62 \.$(TOP)\src\b
8ca0: 74 72 65 65 2e 68 20 5c 0a 20 20 24 28 54 4f 50  tree.h \.  $(TOP 8cb0: 29 5c 73 72 63 5c 62 74 72 65 65 49 6e 74 2e 68 )\src\btreeInt.h 8cc0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c \.$(TOP)\src\
8cd0: 68 61 73 68 2e 68 20 5c 0a 20 20 24 28 54 4f 50  hash.h \.  $(TOP 8ce0: 29 5c 73 72 63 5c 68 77 74 69 6d 65 2e 68 20 5c )\src\hwtime.h \ 8cf0: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 73 .$(TOP)\src\ms
8d00: 76 63 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c  vc.h \.  $(TOP)\ 8d10: 73 72 63 5c 6d 75 74 65 78 2e 68 20 5c 0a 20 20 src\mutex.h \. 8d20: 24 28 54 4f 50 29 5c 73 72 63 5c 6f 73 2e 68 20$(TOP)\src\os.h
8d30: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6f  \.  $(TOP)\src\o 8d40: 73 5f 63 6f 6d 6d 6f 6e 2e 68 20 5c 0a 20 20 24 s_common.h \.$
8d50: 28 54 4f 50 29 5c 73 72 63 5c 6f 73 5f 73 65 74  (TOP)\src\os_set
8d60: 75 70 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c  up.h \.  $(TOP)\ 8d70: 73 72 63 5c 6f 73 5f 77 69 6e 2e 68 0a 0a 23 20 src\os_win.h..# 8d80: 43 6f 72 65 20 68 65 61 64 65 72 20 66 69 6c 65 Core header file 8d90: 73 2c 20 70 61 72 74 20 32 2e 0a 23 0a 53 52 43 s, part 2..#.SRC 8da0: 30 35 20 3d 20 5c 0a 20 20 24 28 54 4f 50 29 5c 05 = \.$(TOP)\
8db0: 73 72 63 5c 70 61 67 65 72 2e 68 20 5c 0a 20 20  src\pager.h \.
8dc0: 24 28 54 4f 50 29 5c 73 72 63 5c 70 63 61 63 68  $(TOP)\src\pcach 8dd0: 65 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 e.h \.$(TOP)\s
8de0: 72 63 5c 70 72 61 67 6d 61 2e 68 20 5c 0a 20 20  rc\pragma.h \.
8df0: 24 28 54 4f 50 29 5c 73 72 63 5c 73 71 6c 69 74  $(TOP)\src\sqlit 8e00: 65 2e 68 2e 69 6e 20 5c 0a 20 20 24 28 54 4f 50 e.h.in \.$(TOP
8e10: 29 5c 73 72 63 5c 73 71 6c 69 74 65 33 65 78 74  )\src\sqlite3ext
8e20: 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .h \.  $(TOP)\sr 8e30: 63 5c 73 71 6c 69 74 65 49 6e 74 2e 68 20 5c 0a c\sqliteInt.h \. 8e40: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 73 71 6c$(TOP)\src\sql
8e50: 69 74 65 4c 69 6d 69 74 2e 68 20 5c 0a 20 20 24  iteLimit.h \.  $8e60: 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 2e 68 (TOP)\src\vdbe.h 8e70: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c \.$(TOP)\src\
8e80: 76 64 62 65 49 6e 74 2e 68 20 5c 0a 20 20 24 28  vdbeInt.h \.  $( 8e90: 54 4f 50 29 5c 73 72 63 5c 76 78 77 6f 72 6b 73 TOP)\src\vxworks 8ea0: 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 .h \.$(TOP)\sr
8eb0: 63 5c 77 61 6c 2e 68 20 5c 0a 20 20 24 28 54 4f  c\wal.h \.  $(TO 8ec0: 50 29 5c 73 72 63 5c 77 68 65 72 65 49 6e 74 2e P)\src\whereInt. 8ed0: 68 0a 0a 23 20 45 78 74 65 6e 73 69 6f 6e 20 73 h..# Extension s 8ee0: 6f 75 72 63 65 20 63 6f 64 65 20 66 69 6c 65 73 ource code files 8ef0: 2c 20 70 61 72 74 20 31 2e 0a 23 0a 53 52 43 30 , part 1..#.SRC0 8f00: 36 20 3d 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 6 = \.$(TOP)\e
8f10: 78 74 5c 66 74 73 31 5c 66 74 73 31 2e 63 20 5c  xt\fts1\fts1.c \
8f20: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74  .  $(TOP)\ext\ft 8f30: 73 31 5c 66 74 73 31 5f 68 61 73 68 2e 63 20 5c s1\fts1_hash.c \ 8f40: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 .$(TOP)\ext\ft
8f50: 73 31 5c 66 74 73 31 5f 70 6f 72 74 65 72 2e 63  s1\fts1_porter.c
8f60: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c   \.  $(TOP)\ext\ 8f70: 66 74 73 31 5c 66 74 73 31 5f 74 6f 6b 65 6e 69 fts1\fts1_tokeni 8f80: 7a 65 72 31 2e 63 20 5c 0a 20 20 24 28 54 4f 50 zer1.c \.$(TOP
8f90: 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 2e  )\ext\fts2\fts2.
8fa0: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74  c \.  $(TOP)\ext 8fb0: 5c 66 74 73 32 5c 66 74 73 32 5f 68 61 73 68 2e \fts2\fts2_hash. 8fc0: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 c \.$(TOP)\ext
8fd0: 5c 66 74 73 32 5c 66 74 73 32 5f 69 63 75 2e 63  \fts2\fts2_icu.c
8fe0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c   \.  $(TOP)\ext\ 8ff0: 66 74 73 32 5c 66 74 73 32 5f 70 6f 72 74 65 72 fts2\fts2_porter 9000: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 .c \.$(TOP)\ex
9010: 74 5c 66 74 73 32 5c 66 74 73 32 5f 74 6f 6b 65  t\fts2\fts2_toke
9020: 6e 69 7a 65 72 2e 63 20 5c 0a 20 20 24 28 54 4f  nizer.c \.  $(TO 9030: 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 P)\ext\fts2\fts2 9040: 5f 74 6f 6b 65 6e 69 7a 65 72 31 2e 63 0a 0a 23 _tokenizer1.c..# 9050: 20 45 78 74 65 6e 73 69 6f 6e 20 73 6f 75 72 63 Extension sourc 9060: 65 20 63 6f 64 65 20 66 69 6c 65 73 2c 20 70 61 e code files, pa 9070: 72 74 20 32 2e 0a 23 0a 53 52 43 30 37 20 3d 20 rt 2..#.SRC07 = 9080: 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 \.$(TOP)\ext\f
9090: 74 73 33 5c 66 74 73 33 2e 63 20 5c 0a 20 20 24  ts3\fts3.c \.  $90a0: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 (TOP)\ext\fts3\f 90b0: 74 73 33 5f 61 75 78 2e 63 20 5c 0a 20 20 24 28 ts3_aux.c \.$(
90c0: 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74  TOP)\ext\fts3\ft
90d0: 73 33 5f 65 78 70 72 2e 63 20 5c 0a 20 20 24 28  s3_expr.c \.  $( 90e0: 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 TOP)\ext\fts3\ft 90f0: 73 33 5f 68 61 73 68 2e 63 20 5c 0a 20 20 24 28 s3_hash.c \.$(
9100: 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74  TOP)\ext\fts3\ft
9110: 73 33 5f 69 63 75 2e 63 20 5c 0a 20 20 24 28 54  s3_icu.c \.  $(T 9120: 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 OP)\ext\fts3\fts 9130: 33 5f 70 6f 72 74 65 72 2e 63 20 5c 0a 20 20 24 3_porter.c \.$
9140: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66  (TOP)\ext\fts3\f
9150: 74 73 33 5f 73 6e 69 70 70 65 74 2e 63 20 5c 0a  ts3_snippet.c \.
9160: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73    $(TOP)\ext\fts 9170: 33 5c 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 72 3\fts3_tokenizer 9180: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 .c \.$(TOP)\ex
9190: 74 5c 66 74 73 33 5c 66 74 73 33 5f 74 6f 6b 65  t\fts3\fts3_toke
91a0: 6e 69 7a 65 72 31 2e 63 20 5c 0a 20 20 24 28 54  nizer1.c \.  $(T 91b0: 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 OP)\ext\fts3\fts 91c0: 33 5f 74 6f 6b 65 6e 69 7a 65 5f 76 74 61 62 2e 3_tokenize_vtab. 91d0: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 c \.$(TOP)\ext
91e0: 5c 66 74 73 33 5c 66 74 73 33 5f 75 6e 69 63 6f  \fts3\fts3_unico
91f0: 64 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  de.c \.  $(TOP)\ 9200: 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 75 6e ext\fts3\fts3_un 9210: 69 63 6f 64 65 32 2e 63 20 5c 0a 20 20 24 28 54 icode2.c \.$(T
9220: 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73  OP)\ext\fts3\fts
9230: 33 5f 77 72 69 74 65 2e 63 20 5c 0a 20 20 24 28  3_write.c \.  $( 9240: 54 4f 50 29 5c 65 78 74 5c 69 63 75 5c 69 63 75 TOP)\ext\icu\icu 9250: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 .c \.$(TOP)\ex
9260: 74 5c 72 74 72 65 65 5c 72 74 72 65 65 2e 63 20  t\rtree\rtree.c
9270: 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 73  \.  $(TOP)\ext\s 9280: 65 73 73 69 6f 6e 5c 73 71 6c 69 74 65 33 73 65 ession\sqlite3se 9290: 73 73 69 6f 6e 2e 63 20 5c 0a 20 20 24 28 54 4f ssion.c \.$(TO
92a0: 50 29 5c 65 78 74 5c 72 62 75 5c 73 71 6c 69 74  P)\ext\rbu\sqlit
92b0: 65 33 72 62 75 2e 63 20 5c 0a 20 20 24 28 54 4f  e3rbu.c \.  $(TO 92c0: 50 29 5c 65 78 74 5c 6d 69 73 63 5c 6a 73 6f 6e P)\ext\misc\json 92d0: 31 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 1.c \.$(TOP)\e
92e0: 78 74 5c 6d 69 73 63 5c 73 74 6d 74 2e 63 0a 0a  xt\misc\stmt.c..
92f0: 23 20 45 78 74 65 6e 73 69 6f 6e 20 68 65 61 64  # Extension head
9300: 65 72 20 66 69 6c 65 73 2c 20 70 61 72 74 20 31  er files, part 1
9310: 2e 0a 23 0a 53 52 43 30 38 20 3d 20 5c 0a 20 20  ..#.SRC08 = \.
9320: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 31 5c  $(TOP)\ext\fts1\ 9330: 66 74 73 31 2e 68 20 5c 0a 20 20 24 28 54 4f 50 fts1.h \.$(TOP
9340: 29 5c 65 78 74 5c 66 74 73 31 5c 66 74 73 31 5f  )\ext\fts1\fts1_
9350: 68 61 73 68 2e 68 20 5c 0a 20 20 24 28 54 4f 50  hash.h \.  $(TOP 9360: 29 5c 65 78 74 5c 66 74 73 31 5c 66 74 73 31 5f )\ext\fts1\fts1_ 9370: 74 6f 6b 65 6e 69 7a 65 72 2e 68 20 5c 0a 20 20 tokenizer.h \. 9380: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c$(TOP)\ext\fts2\
9390: 66 74 73 32 2e 68 20 5c 0a 20 20 24 28 54 4f 50  fts2.h \.  $(TOP 93a0: 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f )\ext\fts2\fts2_ 93b0: 68 61 73 68 2e 68 20 5c 0a 20 20 24 28 54 4f 50 hash.h \.$(TOP
93c0: 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f  )\ext\fts2\fts2_
93d0: 74 6f 6b 65 6e 69 7a 65 72 2e 68 0a 0a 23 20 45  tokenizer.h..# E
93e0: 78 74 65 6e 73 69 6f 6e 20 68 65 61 64 65 72 20  xtension header
93f0: 66 69 6c 65 73 2c 20 70 61 72 74 20 32 2e 0a 23  files, part 2..#
9400: 0a 53 52 43 30 39 20 3d 20 5c 0a 20 20 24 28 54  .SRC09 = \.  $(T 9410: 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 OP)\ext\fts3\fts 9420: 33 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 3.h \.$(TOP)\e
9430: 78 74 5c 66 74 73 33 5c 66 74 73 33 49 6e 74 2e  xt\fts3\fts3Int.
9440: 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74  h \.  $(TOP)\ext 9450: 5c 66 74 73 33 5c 66 74 73 33 5f 68 61 73 68 2e \fts3\fts3_hash. 9460: 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 h \.$(TOP)\ext
9470: 5c 66 74 73 33 5c 66 74 73 33 5f 74 6f 6b 65 6e  \fts3\fts3_token
9480: 69 7a 65 72 2e 68 20 5c 0a 20 20 24 28 54 4f 50  izer.h \.  $(TOP 9490: 29 5c 65 78 74 5c 69 63 75 5c 73 71 6c 69 74 65 )\ext\icu\sqlite 94a0: 69 63 75 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 icu.h \.$(TOP)
94b0: 5c 65 78 74 5c 72 74 72 65 65 5c 72 74 72 65 65  \ext\rtree\rtree
94c0: 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78  .h \.  $(TOP)\ex 94d0: 74 5c 72 74 72 65 65 5c 67 65 6f 70 6f 6c 79 2e t\rtree\geopoly. 94e0: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 c \.$(TOP)\ext
94f0: 5c 72 62 75 5c 73 71 6c 69 74 65 33 72 62 75 2e  \rbu\sqlite3rbu.
9500: 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74  h \.  $(TOP)\ext 9510: 5c 73 65 73 73 69 6f 6e 5c 73 71 6c 69 74 65 33 \session\sqlite3 9520: 73 65 73 73 69 6f 6e 2e 68 0a 0a 23 20 47 65 6e session.h..# Gen 9530: 65 72 61 74 65 64 20 73 6f 75 72 63 65 20 63 6f erated source co 9540: 64 65 20 66 69 6c 65 73 0a 23 0a 53 52 43 31 30 de files.#.SRC10 9550: 20 3d 20 5c 0a 20 20 6f 70 63 6f 64 65 73 2e 63 = \. opcodes.c 9560: 20 5c 0a 20 20 70 61 72 73 65 2e 63 0a 0a 23 20 \. parse.c..# 9570: 47 65 6e 65 72 61 74 65 64 20 68 65 61 64 65 72 Generated header 9580: 20 66 69 6c 65 73 0a 23 0a 53 52 43 31 31 20 3d files.#.SRC11 = 9590: 20 5c 0a 20 20 6b 65 79 77 6f 72 64 68 61 73 68 \. keywordhash 95a0: 2e 68 20 5c 0a 20 20 6f 70 63 6f 64 65 73 2e 68 .h \. opcodes.h 95b0: 20 5c 0a 20 20 70 61 72 73 65 2e 68 20 5c 0a 20 \. parse.h \. 95c0: 20 73 68 65 6c 6c 2e 63 20 5c 0a 20 20 24 28 53 shell.c \.$(S
95d0: 51 4c 49 54 45 33 48 29 0a 0a 23 20 47 65 6e 65  QLITE3H)..# Gene
95e0: 72 61 74 65 64 20 54 63 6c 20 68 65 61 64 65 72  rated Tcl header
95f0: 20 66 69 6c 65 73 0a 23 0a 21 49 46 20 24 28 55   files.#.!IF $(U 9600: 53 45 5f 53 54 44 43 41 4c 4c 29 21 3d 30 20 7c SE_STDCALL)!=0 | 9610: 7c 20 24 28 46 4f 52 5f 57 49 4e 31 30 29 21 3d |$(FOR_WIN10)!=
9620: 30 0a 53 52 43 31 32 20 3d 20 5c 0a 20 20 24 28  0.SRC12 = \.  $( 9630: 53 51 4c 49 54 45 54 43 4c 48 29 20 5c 0a 20 20 SQLITETCLH) \. 9640: 24 28 53 51 4c 49 54 45 54 43 4c 44 45 43 4c 53$(SQLITETCLDECLS
9650: 48 29 0a 21 45 4c 53 45 0a 53 52 43 31 32 20 3d  H).!ELSE.SRC12 =
9660: 0a 21 45 4e 44 49 46 0a 0a 23 20 41 6c 6c 20 73  .!ENDIF..# All s
9670: 6f 75 72 63 65 20 63 6f 64 65 20 66 69 6c 65 73  ource code files
9680: 2e 0a 23 0a 53 52 43 20 3d 20 24 28 53 52 43 30  ..#.SRC = $(SRC0 9690: 30 29 20 24 28 53 52 43 30 31 29 20 24 28 53 52 0)$(SRC01) $(SR 96a0: 43 30 33 29 20 24 28 53 52 43 30 34 29 20 24 28 C03)$(SRC04) $( 96b0: 53 52 43 30 35 29 20 24 28 53 52 43 30 36 29 20 SRC05)$(SRC06)
96c0: 24 28 53 52 43 30 37 29 20 24 28 53 52 43 30 38  $(SRC07)$(SRC08
96d0: 29 20 24 28 53 52 43 30 39 29 20 24 28 53 52 43  ) $(SRC09)$(SRC
96e0: 31 30 29 20 24 28 53 52 43 31 31 29 0a 0a 23 20  10) $(SRC11)..# 96f0: 53 6f 75 72 63 65 20 63 6f 64 65 20 74 6f 20 74 Source code to t 9700: 68 65 20 74 65 73 74 20 66 69 6c 65 73 2e 0a 23 he test files..# 9710: 0a 54 45 53 54 53 52 43 20 3d 20 5c 0a 20 20 24 .TESTSRC = \.$
9720: 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 31 2e  (TOP)\src\test1.
9730: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src 9740: 5c 74 65 73 74 32 2e 63 20 5c 0a 20 20 24 28 54 \test2.c \.$(T
9750: 4f 50 29 5c 73 72 63 5c 74 65 73 74 33 2e 63 20  OP)\src\test3.c
9760: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74  \.  $(TOP)\src\t 9770: 65 73 74 34 2e 63 20 5c 0a 20 20 24 28 54 4f 50 est4.c \.$(TOP
9780: 29 5c 73 72 63 5c 74 65 73 74 35 2e 63 20 5c 0a  )\src\test5.c \.
9790: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73    $(TOP)\src\tes 97a0: 74 36 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c t6.c \.$(TOP)\
97b0: 73 72 63 5c 74 65 73 74 37 2e 63 20 5c 0a 20 20  src\test7.c \.
97c0: 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 38  $(TOP)\src\test8 97d0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 .c \.$(TOP)\sr
97e0: 63 5c 74 65 73 74 39 2e 63 20 5c 0a 20 20 24 28  c\test9.c \.  $( 97f0: 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 61 75 TOP)\src\test_au 9800: 74 6f 65 78 74 2e 63 20 5c 0a 20 20 24 28 54 4f toext.c \.$(TO
9810: 50 29 5c 73 72 63 5c 74 65 73 74 5f 61 73 79 6e  P)\src\test_asyn
9820: 63 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  c.c \.  $(TOP)\s 9830: 72 63 5c 74 65 73 74 5f 62 61 63 6b 75 70 2e 63 rc\test_backup.c 9840: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c \.$(TOP)\src\
9850: 74 65 73 74 5f 62 65 73 74 69 6e 64 65 78 2e 63  test_bestindex.c
9860: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\ 9870: 74 65 73 74 5f 62 6c 6f 62 2e 63 20 5c 0a 20 20 test_blob.c \. 9880: 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f$(TOP)\src\test_
9890: 62 74 72 65 65 2e 63 20 5c 0a 20 20 24 28 54 4f  btree.c \.  $(TO 98a0: 50 29 5c 73 72 63 5c 74 65 73 74 5f 63 6f 6e 66 P)\src\test_conf 98b0: 69 67 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c ig.c \.$(TOP)\
98c0: 73 72 63 5c 74 65 73 74 5f 64 65 6c 65 74 65 2e  src\test_delete.
98d0: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src 98e0: 5c 74 65 73 74 5f 64 65 6d 6f 76 66 73 2e 63 20 \test_demovfs.c 98f0: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 \.$(TOP)\src\t
9900: 65 73 74 5f 64 65 76 73 79 6d 2e 63 20 5c 0a 20  est_devsym.c \.
9910: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74   $(TOP)\src\test 9920: 5f 66 73 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 _fs.c \.$(TOP)
9930: 5c 73 72 63 5c 74 65 73 74 5f 66 75 6e 63 2e 63  \src\test_func.c
9940: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\ 9950: 74 65 73 74 5f 68 65 78 69 6f 2e 63 20 5c 0a 20 test_hexio.c \. 9960: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74$(TOP)\src\test
9970: 5f 69 6e 69 74 2e 63 20 5c 0a 20 20 24 28 54 4f  _init.c \.  $(TO 9980: 50 29 5c 73 72 63 5c 74 65 73 74 5f 69 6e 74 61 P)\src\test_inta 9990: 72 72 61 79 2e 63 20 5c 0a 20 20 24 28 54 4f 50 rray.c \.$(TOP
99a0: 29 5c 73 72 63 5c 74 65 73 74 5f 6a 6f 75 72 6e  )\src\test_journ
99b0: 61 6c 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  al.c \.  $(TOP)\ 99c0: 73 72 63 5c 74 65 73 74 5f 6d 61 6c 6c 6f 63 2e src\test_malloc. 99d0: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 c \.$(TOP)\src
99e0: 5c 74 65 73 74 5f 6d 64 35 2e 63 20 5c 0a 20 20  \test_md5.c \.
99f0: 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f  $(TOP)\src\test_ 9a00: 6d 75 6c 74 69 70 6c 65 78 2e 63 20 5c 0a 20 20 multiplex.c \. 9a10: 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f$(TOP)\src\test_
9a20: 6d 75 74 65 78 2e 63 20 5c 0a 20 20 24 28 54 4f  mutex.c \.  $(TO 9a30: 50 29 5c 73 72 63 5c 74 65 73 74 5f 6f 6e 65 66 P)\src\test_onef 9a40: 69 6c 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 ile.c \.$(TOP)
9a50: 5c 73 72 63 5c 74 65 73 74 5f 6f 73 69 6e 73 74  \src\test_osinst
9a60: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr 9a70: 63 5c 74 65 73 74 5f 70 63 61 63 68 65 2e 63 20 c\test_pcache.c 9a80: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 \.$(TOP)\src\t
9a90: 65 73 74 5f 71 75 6f 74 61 2e 63 20 5c 0a 20 20  est_quota.c \.
9aa0: 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f  $(TOP)\src\test_ 9ab0: 72 74 72 65 65 2e 63 20 5c 0a 20 20 24 28 54 4f rtree.c \.$(TO
9ac0: 50 29 5c 73 72 63 5c 74 65 73 74 5f 73 63 68 65  P)\src\test_sche
9ad0: 6d 61 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  ma.c \.  $(TOP)\ 9ae0: 73 72 63 5c 74 65 73 74 5f 73 65 72 76 65 72 2e src\test_server. 9af0: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 c \.$(TOP)\src
9b00: 5c 74 65 73 74 5f 73 75 70 65 72 6c 6f 63 6b 2e  \test_superlock.
9b10: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src 9b20: 5c 74 65 73 74 5f 73 79 73 63 61 6c 6c 2e 63 20 \test_syscall.c 9b30: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 \.$(TOP)\src\t
9b40: 65 73 74 5f 74 63 6c 73 68 2e 63 20 5c 0a 20 20  est_tclsh.c \.
9b50: 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f  $(TOP)\src\test_ 9b60: 74 63 6c 76 61 72 2e 63 20 5c 0a 20 20 24 28 54 tclvar.c \.$(T
9b70: 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 74 68 72  OP)\src\test_thr
9b80: 65 61 64 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  ead.c \.  $(TOP) 9b90: 5c 73 72 63 5c 74 65 73 74 5f 76 66 73 2e 63 20 \src\test_vfs.c 9ba0: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 \.$(TOP)\src\t
9bb0: 65 73 74 5f 77 69 6e 64 69 72 65 6e 74 2e 63 20  est_windirent.c
9bc0: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74  \.  $(TOP)\src\t 9bd0: 65 73 74 5f 77 69 6e 64 6f 77 2e 63 20 5c 0a 20 est_window.c \. 9be0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74$(TOP)\src\test
9bf0: 5f 77 73 64 2e 63 20 5c 0a 20 20 24 28 54 4f 50  _wsd.c \.  $(TOP 9c00: 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f )\ext\fts3\fts3_ 9c10: 74 65 72 6d 2e 63 20 5c 0a 20 20 24 28 54 4f 50 term.c \.$(TOP
9c20: 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f  )\ext\fts3\fts3_
9c30: 74 65 73 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50  test.c \.  $(TOP 9c40: 29 5c 65 78 74 5c 72 62 75 5c 74 65 73 74 5f 72 )\ext\rbu\test_r 9c50: 62 75 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c bu.c \.$(TOP)\
9c60: 65 78 74 5c 73 65 73 73 69 6f 6e 5c 74 65 73 74  ext\session\test
9c70: 5f 73 65 73 73 69 6f 6e 2e 63 0a 0a 23 20 53 74  _session.c..# St
9c80: 61 74 69 63 61 6c 6c 79 20 6c 69 6e 6b 65 64 20  atically linked
9c90: 65 78 74 65 6e 73 69 6f 6e 73 2e 0a 23 0a 54 45  extensions..#.TE
9ca0: 53 54 45 58 54 20 3d 20 5c 0a 20 20 24 28 54 4f  STEXT = \.  $(TO 9cb0: 50 29 5c 65 78 74 5c 65 78 70 65 72 74 5c 73 71 P)\ext\expert\sq 9cc0: 6c 69 74 65 33 65 78 70 65 72 74 2e 63 20 5c 0a lite3expert.c \. 9cd0: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 65 78 70$(TOP)\ext\exp
9ce0: 65 72 74 5c 74 65 73 74 5f 65 78 70 65 72 74 2e  ert\test_expert.
9cf0: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74  c \.  $(TOP)\ext 9d00: 5c 6d 69 73 63 5c 61 6d 61 74 63 68 2e 63 20 5c \misc\amatch.c \ 9d10: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69 .$(TOP)\ext\mi
9d20: 73 63 5c 63 61 72 72 61 79 2e 63 20 5c 0a 20 20  sc\carray.c \.
9d30: 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c  $(TOP)\ext\misc\ 9d40: 63 6c 6f 73 75 72 65 2e 63 20 5c 0a 20 20 24 28 closure.c \.$(
9d50: 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c 63 73  TOP)\ext\misc\cs
9d60: 76 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65  v.c \.  $(TOP)\e 9d70: 78 74 5c 6d 69 73 63 5c 65 76 61 6c 2e 63 20 5c xt\misc\eval.c \ 9d80: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69 .$(TOP)\ext\mi
9d90: 73 63 5c 65 78 70 6c 61 69 6e 2e 63 20 5c 0a 20  sc\explain.c \.
9da0: 20 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63   $(TOP)\ext\misc 9db0: 5c 66 69 6c 65 69 6f 2e 63 20 5c 0a 20 20 24 28 \fileio.c \.$(
9dc0: 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c 66 75  TOP)\ext\misc\fu
9dd0: 7a 7a 65 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50  zzer.c \.  $(TOP 9de0: 29 5c 65 78 74 5c 66 74 73 35 5c 66 74 73 35 5f )\ext\fts5\fts5_ 9df0: 74 63 6c 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 tcl.c \.$(TOP)
9e00: 5c 65 78 74 5c 66 74 73 35 5c 66 74 73 35 5f 74  \ext\fts5\fts5_t
9e10: 65 73 74 5f 6d 69 2e 63 20 5c 0a 20 20 24 28 54  est_mi.c \.  $(T 9e20: 4f 50 29 5c 65 78 74 5c 66 74 73 35 5c 66 74 73 OP)\ext\fts5\fts 9e30: 35 5f 74 65 73 74 5f 74 6f 6b 2e 63 20 5c 0a 20 5_test_tok.c \. 9e40: 20 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63$(TOP)\ext\misc
9e50: 5c 69 65 65 65 37 35 34 2e 63 20 5c 0a 20 20 24  \ieee754.c \.  $9e60: 28 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c 6d (TOP)\ext\misc\m 9e70: 6d 61 70 77 61 72 6d 2e 63 20 5c 0a 20 20 24 28 mapwarm.c \.$(
9e80: 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c 6e 65  TOP)\ext\misc\ne
9e90: 78 74 63 68 61 72 2e 63 20 5c 0a 20 20 24 28 54  xtchar.c \.  $(T 9ea0: 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c 6e 6f 72 OP)\ext\misc\nor 9eb0: 6d 61 6c 69 7a 65 2e 63 20 5c 0a 20 20 24 28 54 malize.c \.$(T
9ec0: 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c 70 65 72  OP)\ext\misc\per
9ed0: 63 65 6e 74 69 6c 65 2e 63 20 5c 0a 20 20 24 28  centile.c \.  $( 9ee0: 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c 72 65 TOP)\ext\misc\re 9ef0: 67 65 78 70 2e 63 20 5c 0a 20 20 24 28 54 4f 50 gexp.c \.$(TOP
9f00: 29 5c 65 78 74 5c 6d 69 73 63 5c 72 65 6d 65 6d  )\ext\misc\remem
9f10: 62 65 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  ber.c \.  $(TOP) 9f20: 5c 65 78 74 5c 6d 69 73 63 5c 73 65 72 69 65 73 \ext\misc\series 9f30: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 .c \.$(TOP)\ex
9f40: 74 5c 6d 69 73 63 5c 73 70 65 6c 6c 66 69 78 2e  t\misc\spellfix.
9f50: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74  c \.  $(TOP)\ext 9f60: 5c 6d 69 73 63 5c 74 6f 74 79 70 65 2e 63 20 5c \misc\totype.c \ 9f70: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69 .$(TOP)\ext\mi
9f80: 73 63 5c 75 6e 69 6f 6e 76 74 61 62 2e 63 20 5c  sc\unionvtab.c \
9f90: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69  .  $(TOP)\ext\mi 9fa0: 73 63 5c 77 68 6f 6c 65 6e 75 6d 62 65 72 2e 63 sc\wholenumber.c 9fb0: 0a 0a 23 20 49 66 20 75 73 65 20 6f 66 20 7a 6c ..# If use of zl 9fc0: 69 62 20 69 73 20 65 6e 61 62 6c 65 64 2c 20 61 ib is enabled, a 9fd0: 64 64 20 74 68 65 20 22 7a 69 70 66 69 6c 65 2e dd the "zipfile. 9fe0: 63 22 20 73 6f 75 72 63 65 20 66 69 6c 65 2e 0a c" source file.. 9ff0: 23 0a 21 49 46 20 24 28 55 53 45 5f 5a 4c 49 42 #.!IF$(USE_ZLIB
a000: 29 21 3d 30 0a 54 45 53 54 45 58 54 20 3d 20 24  )!=0.TESTEXT = $a010: 28 54 45 53 54 45 58 54 29 20 24 28 54 4f 50 29 (TESTEXT)$(TOP)
a020: 5c 65 78 74 5c 6d 69 73 63 5c 7a 69 70 66 69 6c  \ext\misc\zipfil
a030: 65 2e 63 0a 21 45 4e 44 49 46 0a 0a 23 20 53 6f  e.c.!ENDIF..# So
a040: 75 72 63 65 20 63 6f 64 65 20 74 6f 20 74 68 65  urce code to the
a050: 20 6c 69 62 72 61 72 79 20 66 69 6c 65 73 20 6e   library files n
a060: 65 65 64 65 64 20 62 79 20 74 68 65 20 74 65 73  eeded by the tes
a070: 74 20 66 69 78 74 75 72 65 0a 23 20 28 6e 6f 6e  t fixture.# (non
a080: 2d 61 6d 61 6c 67 61 6d 61 74 69 6f 6e 29 0a 23  -amalgamation).#
a090: 0a 54 45 53 54 53 52 43 32 20 3d 20 5c 0a 20 20  .TESTSRC2 = \.
a0a0: 24 28 53 52 43 30 30 29 20 5c 0a 20 20 24 28 53  $(SRC00) \.$(S
a0b0: 52 43 30 31 29 20 5c 0a 20 20 24 28 53 52 43 30  RC01) \.  $(SRC0 a0c0: 36 29 20 5c 0a 20 20 24 28 53 52 43 30 37 29 20 6) \.$(SRC07)
a0d0: 5c 0a 20 20 24 28 53 52 43 31 30 29 20 5c 0a 20  \.  $(SRC10) \. a0e0: 20 24 28 54 4f 50 29 5c 65 78 74 5c 61 73 79 6e$(TOP)\ext\asyn
a0f0: 63 5c 73 71 6c 69 74 65 33 61 73 79 6e 63 2e 63  c\sqlite3async.c
a100: 0a 0a 23 20 48 65 61 64 65 72 20 66 69 6c 65 73  ..# Header files
a110: 20 75 73 65 64 20 62 79 20 61 6c 6c 20 6c 69 62   used by all lib
a120: 72 61 72 79 20 73 6f 75 72 63 65 20 66 69 6c 65  rary source file
a130: 73 2e 0a 23 0a 48 44 52 20 3d 20 5c 0a 20 20 20  s..#.HDR = \.
a140: 24 28 54 4f 50 29 5c 73 72 63 5c 62 74 72 65 65  $(TOP)\src\btree a150: 2e 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73 .h \.$(TOP)\s
a160: 72 63 5c 62 74 72 65 65 49 6e 74 2e 68 20 5c 0a  rc\btreeInt.h \.
a170: 20 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 68 61     $(TOP)\src\ha a180: 73 68 2e 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 sh.h \.$(TOP)
a190: 5c 73 72 63 5c 68 77 74 69 6d 65 2e 68 20 5c 0a  \src\hwtime.h \.
a1a0: 20 20 20 6b 65 79 77 6f 72 64 68 61 73 68 2e 68     keywordhash.h
a1b0: 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73 72 63   \.   $(TOP)\src a1c0: 5c 6d 73 76 63 2e 68 20 5c 0a 20 20 20 24 28 54 \msvc.h \.$(T
a1d0: 4f 50 29 5c 73 72 63 5c 6d 75 74 65 78 2e 68 20  OP)\src\mutex.h
a1e0: 5c 0a 20 20 20 6f 70 63 6f 64 65 73 2e 68 20 5c  \.   opcodes.h \
a1f0: 0a 20 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6f  .   $(TOP)\src\o a200: 73 2e 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c s.h \.$(TOP)\
a210: 73 72 63 5c 6f 73 5f 63 6f 6d 6d 6f 6e 2e 68 20  src\os_common.h
a220: 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73 72 63 5c  \.   $(TOP)\src\ a230: 6f 73 5f 73 65 74 75 70 2e 68 20 5c 0a 20 20 20 os_setup.h \. a240: 24 28 54 4f 50 29 5c 73 72 63 5c 6f 73 5f 77 69$(TOP)\src\os_wi
a250: 6e 2e 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c  n.h \.   $(TOP)\ a260: 73 72 63 5c 70 61 67 65 72 2e 68 20 5c 0a 20 20 src\pager.h \. a270: 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 63 61 63$(TOP)\src\pcac
a280: 68 65 2e 68 20 5c 0a 20 20 20 70 61 72 73 65 2e  he.h \.   parse.
a290: 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73 72  h \.   $(TOP)\sr a2a0: 63 5c 70 72 61 67 6d 61 2e 68 20 5c 0a 20 20 20 c\pragma.h \. a2b0: 24 28 53 51 4c 49 54 45 33 48 29 20 5c 0a 20 20$(SQLITE3H) \.
a2c0: 20 73 71 6c 69 74 65 33 65 78 74 2e 68 20 5c 0a   sqlite3ext.h \.
a2d0: 20 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 73 71     $(TOP)\src\sq a2e0: 6c 69 74 65 49 6e 74 2e 68 20 5c 0a 20 20 20 24 liteInt.h \.$
a2f0: 28 54 4f 50 29 5c 73 72 63 5c 73 71 6c 69 74 65  (TOP)\src\sqlite
a300: 4c 69 6d 69 74 2e 68 20 5c 0a 20 20 20 24 28 54  Limit.h \.   $(T a310: 4f 50 29 5c 73 72 63 5c 76 64 62 65 2e 68 20 5c OP)\src\vdbe.h \ a320: 0a 20 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 .$(TOP)\src\v
a330: 64 62 65 49 6e 74 2e 68 20 5c 0a 20 20 20 24 28  dbeInt.h \.   $( a340: 54 4f 50 29 5c 73 72 63 5c 76 78 77 6f 72 6b 73 TOP)\src\vxworks a350: 2e 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73 .h \.$(TOP)\s
a360: 72 63 5c 77 68 65 72 65 49 6e 74 2e 68 0a 0a 23  rc\whereInt.h..#
a370: 20 48 65 61 64 65 72 20 66 69 6c 65 73 20 75 73   Header files us
a380: 65 64 20 62 79 20 65 78 74 65 6e 73 69 6f 6e 73  ed by extensions
a390: 0a 23 0a 45 58 54 48 44 52 20 3d 20 24 28 45 58  .#.EXTHDR = $(EX a3a0: 54 48 44 52 29 20 5c 0a 20 20 24 28 54 4f 50 29 THDR) \.$(TOP)
a3b0: 5c 65 78 74 5c 66 74 73 31 5c 66 74 73 31 2e 68  \ext\fts1\fts1.h
a3c0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c   \.  $(TOP)\ext\ a3d0: 66 74 73 31 5c 66 74 73 31 5f 68 61 73 68 2e 68 fts1\fts1_hash.h a3e0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c \.$(TOP)\ext\
a3f0: 66 74 73 31 5c 66 74 73 31 5f 74 6f 6b 65 6e 69  fts1\fts1_tokeni
a400: 7a 65 72 2e 68 0a 45 58 54 48 44 52 20 3d 20 24  zer.h.EXTHDR = $a410: 28 45 58 54 48 44 52 29 20 5c 0a 20 20 24 28 54 (EXTHDR) \.$(T
a420: 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73  OP)\ext\fts2\fts
a430: 32 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65  2.h \.  $(TOP)\e a440: 78 74 5c 66 74 73 32 5c 66 74 73 32 5f 68 61 73 xt\fts2\fts2_has a450: 68 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 h.h \.$(TOP)\e
a460: 78 74 5c 66 74 73 32 5c 66 74 73 32 5f 74 6f 6b  xt\fts2\fts2_tok
a470: 65 6e 69 7a 65 72 2e 68 0a 45 58 54 48 44 52 20  enizer.h.EXTHDR
a480: 3d 20 24 28 45 58 54 48 44 52 29 20 5c 0a 20 20  = $(EXTHDR) \. a490: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c$(TOP)\ext\fts3\
a4a0: 66 74 73 33 2e 68 20 5c 0a 20 20 24 28 54 4f 50  fts3.h \.  $(TOP a4b0: 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 49 )\ext\fts3\fts3I a4c0: 6e 74 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c nt.h \.$(TOP)\
a4d0: 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 68 61  ext\fts3\fts3_ha
a4e0: 73 68 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c  sh.h \.  $(TOP)\ a4f0: 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 74 6f ext\fts3\fts3_to a500: 6b 65 6e 69 7a 65 72 2e 68 0a 45 58 54 48 44 52 kenizer.h.EXTHDR a510: 20 3d 20 24 28 45 58 54 48 44 52 29 20 5c 0a 20 =$(EXTHDR) \.
a520: 20 24 28 54 4f 50 29 5c 65 78 74 5c 72 74 72 65   $(TOP)\ext\rtre a530: 65 5c 72 74 72 65 65 2e 68 20 5c 0a 20 20 24 28 e\rtree.h \.$(
a540: 54 4f 50 29 5c 65 78 74 5c 72 74 72 65 65 5c 67  TOP)\ext\rtree\g
a550: 65 6f 70 6f 6c 79 2e 63 0a 45 58 54 48 44 52 20  eopoly.c.EXTHDR
a560: 3d 20 24 28 45 58 54 48 44 52 29 20 5c 0a 20 20  = $(EXTHDR) \. a570: 24 28 54 4f 50 29 5c 65 78 74 5c 69 63 75 5c 73$(TOP)\ext\icu\s
a580: 71 6c 69 74 65 69 63 75 2e 68 0a 45 58 54 48 44  qliteicu.h.EXTHD
a590: 52 20 3d 20 24 28 45 58 54 48 44 52 29 20 5c 0a  R = $(EXTHDR) \. a5a0: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 72 74 72$(TOP)\ext\rtr
a5b0: 65 65 5c 73 71 6c 69 74 65 33 72 74 72 65 65 2e  ee\sqlite3rtree.
a5c0: 68 0a 45 58 54 48 44 52 20 3d 20 24 28 45 58 54  h.EXTHDR = $(EXT a5d0: 48 44 52 29 20 5c 0a 20 20 24 28 54 4f 50 29 5c HDR) \.$(TOP)\
a5e0: 65 78 74 5c 73 65 73 73 69 6f 6e 5c 73 71 6c 69  ext\session\sqli
a5f0: 74 65 33 73 65 73 73 69 6f 6e 2e 68 0a 0a 23 20  te3session.h..#
a600: 65 78 65 63 75 74 61 62 6c 65 73 20 6e 65 65 64  executables need
a610: 65 64 20 66 6f 72 20 74 65 73 74 69 6e 67 0a 23  ed for testing.#
a620: 0a 54 45 53 54 50 52 4f 47 53 20 3d 20 5c 0a 20  .TESTPROGS = \.
a630: 20 74 65 73 74 66 69 78 74 75 72 65 2e 65 78 65   testfixture.exe
a640: 20 5c 0a 20 20 24 28 53 51 4c 49 54 45 33 45 58   \.  $(SQLITE3EX a650: 45 29 20 5c 0a 20 20 73 71 6c 69 74 65 33 5f 61 E) \. sqlite3_a a660: 6e 61 6c 79 7a 65 72 2e 65 78 65 20 5c 0a 20 20 nalyzer.exe \. a670: 73 71 6c 69 74 65 33 5f 63 68 65 63 6b 65 72 2e sqlite3_checker. a680: 65 78 65 20 5c 0a 20 20 73 71 6c 64 69 66 66 2e exe \. sqldiff. a690: 65 78 65 20 5c 0a 20 20 64 62 68 61 73 68 2e 65 exe \. dbhash.e a6a0: 78 65 20 5c 0a 20 20 73 71 6c 74 63 6c 73 68 2e xe \. sqltclsh. a6b0: 65 78 65 0a 0a 23 20 44 61 74 61 62 61 73 65 73 exe..# Databases a6c0: 20 63 6f 6e 74 61 69 6e 69 6e 67 20 66 75 7a 7a containing fuzz a6d0: 65 72 20 74 65 73 74 20 63 61 73 65 73 0a 23 0a er test cases.#. a6e0: 46 55 5a 5a 44 41 54 41 20 3d 20 5c 0a 20 20 24 FUZZDATA = \.$
a6f0: 28 54 4f 50 29 5c 74 65 73 74 5c 66 75 7a 7a 64  (TOP)\test\fuzzd
a700: 61 74 61 31 2e 64 62 20 5c 0a 20 20 24 28 54 4f  ata1.db \.  $(TO a710: 50 29 5c 74 65 73 74 5c 66 75 7a 7a 64 61 74 61 P)\test\fuzzdata a720: 32 2e 64 62 20 5c 0a 20 20 24 28 54 4f 50 29 5c 2.db \.$(TOP)\
a730: 74 65 73 74 5c 66 75 7a 7a 64 61 74 61 33 2e 64  test\fuzzdata3.d
a740: 62 20 5c 0a 20 20 24 28 54 4f 50 29 5c 74 65 73  b \.  $(TOP)\tes a750: 74 5c 66 75 7a 7a 64 61 74 61 34 2e 64 62 20 5c t\fuzzdata4.db \ a760: 0a 20 20 24 28 54 4f 50 29 5c 74 65 73 74 5c 66 .$(TOP)\test\f
a770: 75 7a 7a 64 61 74 61 35 2e 64 62 20 5c 0a 20 20  uzzdata5.db \.
a780: 24 28 54 4f 50 29 5c 74 65 73 74 5c 66 75 7a 7a  $(TOP)\test\fuzz a790: 64 61 74 61 36 2e 64 62 20 5c 0a 20 20 24 28 54 data6.db \.$(T
a7a0: 4f 50 29 5c 74 65 73 74 5c 66 75 7a 7a 64 61 74  OP)\test\fuzzdat
a7b0: 61 37 2e 64 62 0a 23 20 3c 3c 2f 6d 61 72 6b 3e  a7.db.# <</mark>
a7c0: 3e 0a 0a 23 20 41 64 64 69 74 69 6f 6e 61 6c 20  >..# Additional
a7d0: 63 6f 6d 70 69 6c 65 72 20 6f 70 74 69 6f 6e 73  compiler options
a7e0: 20 66 6f 72 20 74 68 65 20 73 68 65 6c 6c 2e 20   for the shell.
a7f0: 20 54 68 65 73 65 20 61 72 65 20 6f 6e 6c 79 20   These are only
a800: 65 66 66 65 63 74 69 76 65 0a 23 20 77 68 65 6e  effective.# when
a810: 20 74 68 65 20 73 68 65 6c 6c 20 69 73 20 6e 6f   the shell is no
a820: 74 20 62 65 69 6e 67 20 64 79 6e 61 6d 69 63 61  t being dynamica
a830: 6c 6c 79 20 6c 69 6e 6b 65 64 2e 0a 23 0a 21 49  lly linked..#.!I
a840: 46 20 24 28 44 59 4e 41 4d 49 43 5f 53 48 45 4c  F $(DYNAMIC_SHEL a850: 4c 29 3d 3d 30 20 26 26 20 24 28 46 4f 52 5f 57 L)==0 &&$(FOR_W
a860: 49 4e 31 30 29 3d 3d 30 0a 53 48 45 4c 4c 5f 43  IN10)==0.SHELL_C
a870: 4f 4d 50 49 4c 45 5f 4f 50 54 53 20 3d 20 24 28  OMPILE_OPTS = $( a880: 53 48 45 4c 4c 5f 43 4f 4d 50 49 4c 45 5f 4f 50 SHELL_COMPILE_OP a890: 54 53 29 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 TS) -DSQLITE_ENA a8a0: 42 4c 45 5f 46 54 53 34 3d 31 0a 53 48 45 4c 4c BLE_FTS4=1.SHELL a8b0: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 20 3d 20 _COMPILE_OPTS = a8c0: 24 28 53 48 45 4c 4c 5f 43 4f 4d 50 49 4c 45 5f$(SHELL_COMPILE_
a8d0: 4f 50 54 53 29 20 2d 44 53 51 4c 49 54 45 5f 45  OPTS) -DSQLITE_E
a8e0: 4e 41 42 4c 45 5f 45 58 50 4c 41 49 4e 5f 43 4f  NABLE_EXPLAIN_CO
a8f0: 4d 4d 45 4e 54 53 3d 31 0a 53 48 45 4c 4c 5f 43  MMENTS=1.SHELL_C
a900: 4f 4d 50 49 4c 45 5f 4f 50 54 53 20 3d 20 24 28  OMPILE_OPTS = $( a910: 53 48 45 4c 4c 5f 43 4f 4d 50 49 4c 45 5f 4f 50 SHELL_COMPILE_OP a920: 54 53 29 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 TS) -DSQLITE_ENA a930: 42 4c 45 5f 4f 46 46 53 45 54 5f 53 51 4c 5f 46 BLE_OFFSET_SQL_F a940: 55 4e 43 3d 31 0a 53 48 45 4c 4c 5f 43 4f 4d 50 UNC=1.SHELL_COMP a950: 49 4c 45 5f 4f 50 54 53 20 3d 20 24 28 53 48 45 ILE_OPTS =$(SHE
a960: 4c 4c 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29  LL_COMPILE_OPTS)
a970: 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45   -DSQLITE_ENABLE
a980: 5f 44 45 53 45 52 49 41 4c 49 5a 45 3d 31 0a 21  _DESERIALIZE=1.!
a990: 45 4e 44 49 46 0a 0a 23 20 3c 3c 6d 61 72 6b 3e  ENDIF..# <<mark>
a9a0: 3e 0a 23 20 45 78 74 72 61 20 63 6f 6d 70 69 6c  >.# Extra compil
a9b0: 65 72 20 6f 70 74 69 6f 6e 73 20 66 6f 72 20 76  er options for v
a9c0: 61 72 69 6f 75 73 20 74 65 73 74 20 74 6f 6f 6c  arious test tool
a9d0: 73 2e 0a 23 0a 4d 50 54 45 53 54 45 52 5f 43 4f  s..#.MPTESTER_CO
a9e0: 4d 50 49 4c 45 5f 4f 50 54 53 20 3d 20 2d 44 53  MPILE_OPTS = -DS
a9f0: 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 4a 53 4f  QLITE_ENABLE_JSO
aa00: 4e 31 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42  N1 -DSQLITE_ENAB
aa10: 4c 45 5f 46 54 53 35 0a 46 55 5a 5a 45 52 53 48  LE_FTS5.FUZZERSH
aa20: 45 4c 4c 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53  ELL_COMPILE_OPTS
aa30: 20 3d 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42   = -DSQLITE_ENAB
aa40: 4c 45 5f 4a 53 4f 4e 31 0a 46 55 5a 5a 43 48 45  LE_JSON1.FUZZCHE
aa50: 43 4b 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 20  CK_COMPILE_OPTS
aa60: 3d 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c  = -DSQLITE_ENABL
aa70: 45 5f 4a 53 4f 4e 31 20 2d 44 53 51 4c 49 54 45  E_JSON1 -DSQLITE
aa80: 5f 45 4e 41 42 4c 45 5f 4d 45 4d 53 59 53 35 20  _ENABLE_MEMSYS5
aa90: 2d 44 53 51 4c 49 54 45 5f 4f 53 53 5f 46 55 5a  -DSQLITE_OSS_FUZ
aaa0: 5a 20 2d 44 53 51 4c 49 54 45 5f 4d 41 58 5f 4d  Z -DSQLITE_MAX_M
aab0: 45 4d 4f 52 59 3d 35 30 30 30 30 30 30 30 20 2d  EMORY=50000000 -
aac0: 44 53 51 4c 49 54 45 5f 50 52 49 4e 54 46 5f 50  DSQLITE_PRINTF_P
aad0: 52 45 43 49 53 49 4f 4e 5f 4c 49 4d 49 54 3d 31  RECISION_LIMIT=1
aae0: 30 30 30 0a 46 55 5a 5a 43 48 45 43 4b 5f 53 52  000.FUZZCHECK_SR
aaf0: 43 20 3d 20 24 28 54 4f 50 29 5c 74 65 73 74 5c  C = $(TOP)\test\ ab00: 66 75 7a 7a 63 68 65 63 6b 2e 63 20 24 28 54 4f fuzzcheck.c$(TO
ab10: 50 29 5c 74 65 73 74 5c 6f 73 73 66 75 7a 7a 2e  P)\test\ossfuzz.
ab20: 63 0a 4f 53 53 53 48 45 4c 4c 5f 53 52 43 20 3d  c.OSSSHELL_SRC =
ab30: 20 24 28 54 4f 50 29 5c 74 65 73 74 5c 6f 73 73   $(TOP)\test\oss ab40: 73 68 65 6c 6c 2e 63 20 24 28 54 4f 50 29 5c 74 shell.c$(TOP)\t
ab50: 65 73 74 5c 6f 73 73 66 75 7a 7a 2e 63 0a 44 42  est\ossfuzz.c.DB
ab60: 46 55 5a 5a 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54  FUZZ_COMPILE_OPT
ab70: 53 20 3d 20 2d 44 53 51 4c 49 54 45 5f 54 48 52  S = -DSQLITE_THR
ab80: 45 41 44 53 41 46 45 3d 30 20 2d 44 53 51 4c 49  EADSAFE=0 -DSQLI
ab90: 54 45 5f 4f 4d 49 54 5f 4c 4f 41 44 5f 45 58 54  TE_OMIT_LOAD_EXT
aba0: 45 4e 53 49 4f 4e 0a 4b 56 5f 43 4f 4d 50 49 4c  ENSION.KV_COMPIL
abb0: 45 5f 4f 50 54 53 20 3d 20 2d 44 53 51 4c 49 54  E_OPTS = -DSQLIT
abc0: 45 5f 54 48 52 45 41 44 53 41 46 45 3d 30 20 2d  E_THREADSAFE=0 -
abd0: 44 53 51 4c 49 54 45 5f 44 49 52 45 43 54 5f 4f  DSQLITE_DIRECT_O
abe0: 56 45 52 46 4c 4f 57 5f 52 45 41 44 0a 53 54 5f  VERFLOW_READ.ST_
abf0: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 20 3d 20 2d  COMPILE_OPTS = -
ac00: 44 53 51 4c 49 54 45 5f 54 48 52 45 41 44 53 41  DSQLITE_THREADSA
ac10: 46 45 3d 30 0a 0a 23 20 53 74 61 6e 64 61 72 64  FE=0..# Standard
ac20: 20 6f 70 74 69 6f 6e 73 20 74 6f 20 74 65 73 74   options to test
ac30: 66 69 78 74 75 72 65 2e 0a 23 0a 54 45 53 54 4f  fixture..#.TESTO
ac40: 50 54 53 20 3d 20 2d 2d 76 65 72 62 6f 73 65 3d  PTS = --verbose=
ac50: 66 69 6c 65 20 2d 2d 6f 75 74 70 75 74 3d 74 65  file --output=te
ac60: 73 74 2d 6f 75 74 2e 74 78 74 0a 0a 23 20 45 78  st-out.txt..# Ex
ac70: 74 72 61 20 74 61 72 67 65 74 73 20 66 6f 72 20  tra targets for
ac80: 74 68 65 20 22 61 6c 6c 22 20 74 61 72 67 65 74  the "all" target
ac90: 20 74 68 61 74 20 72 65 71 75 69 72 65 20 54 63   that require Tc
aca0: 6c 2e 0a 23 0a 21 49 46 20 24 28 4e 4f 5f 54 43  l..#.!IF $(NO_TC acb0: 4c 29 3d 3d 30 0a 41 4c 4c 5f 54 43 4c 5f 54 41 L)==0.ALL_TCL_TA acc0: 52 47 45 54 53 20 3d 20 6c 69 62 74 63 6c 73 71 RGETS = libtclsq acd0: 6c 69 74 65 33 2e 6c 69 62 0a 21 45 4c 53 45 0a lite3.lib.!ELSE. ace0: 41 4c 4c 5f 54 43 4c 5f 54 41 52 47 45 54 53 20 ALL_TCL_TARGETS acf0: 3d 0a 21 45 4e 44 49 46 0a 23 20 3c 3c 2f 6d 61 =.!ENDIF.# <</ma ad00: 72 6b 3e 3e 0a 0a 23 20 54 68 69 73 20 69 73 20 rk>>..# This is ad10: 74 68 65 20 64 65 66 61 75 6c 74 20 4d 61 6b 65 the default Make ad20: 66 69 6c 65 20 74 61 72 67 65 74 2e 20 20 54 68 file target. Th ad30: 65 20 6f 62 6a 65 63 74 73 20 6c 69 73 74 65 64 e objects listed ad40: 20 68 65 72 65 0a 23 20 61 72 65 20 77 68 61 74 here.# are what ad50: 20 67 65 74 20 62 75 69 6c 64 20 77 68 65 6e 20 get build when ad60: 79 6f 75 20 74 79 70 65 20 6a 75 73 74 20 22 6d you type just "m ad70: 61 6b 65 22 20 77 69 74 68 20 6e 6f 20 61 72 67 ake" with no arg ad80: 75 6d 65 6e 74 73 2e 0a 23 0a 63 6f 72 65 3a 09 uments..#.core:. ad90: 64 6c 6c 20 6c 69 62 73 71 6c 69 74 65 33 2e 6c dll libsqlite3.l ada0: 69 62 20 73 68 65 6c 6c 0a 0a 23 20 54 61 72 67 ib shell..# Targ adb0: 65 74 73 20 74 68 61 74 20 72 65 71 75 69 72 65 ets that require adc0: 20 74 68 65 20 54 63 6c 20 6c 69 62 72 61 72 79 the Tcl library add0: 2e 0a 23 0a 74 63 6c 3a 09 24 28 41 4c 4c 5f 54 ..#.tcl:.$(ALL_T
ade0: 43 4c 5f 54 41 52 47 45 54 53 29 0a 0a 23 20 54  CL_TARGETS)..# T
adf0: 68 69 73 20 4d 61 6b 65 66 69 6c 65 20 74 61 72  his Makefile tar
ae00: 67 65 74 20 62 75 69 6c 64 73 20 61 6c 6c 20 6f  get builds all o
ae10: 66 20 74 68 65 20 73 74 61 6e 64 61 72 64 20 62  f the standard b
ae20: 69 6e 61 72 69 65 73 2e 0a 23 0a 61 6c 6c 3a 09  inaries..#.all:.
ae30: 63 6f 72 65 20 74 63 6c 0a 0a 23 20 44 79 6e 61  core tcl..# Dyna
ae40: 6d 69 63 20 6c 69 6e 6b 20 6c 69 62 72 61 72 79  mic link library
ae50: 20 73 65 63 74 69 6f 6e 2e 0a 23 0a 64 6c 6c 3a   section..#.dll:
ae60: 09 24 28 53 51 4c 49 54 45 33 44 4c 4c 29 0a 0a  .$(SQLITE3DLL).. ae70: 23 20 53 68 65 6c 6c 20 65 78 65 63 75 74 61 62 # Shell executab ae80: 6c 65 2e 0a 23 0a 73 68 65 6c 6c 3a 09 24 28 53 le..#.shell:.$(S
ae90: 51 4c 49 54 45 33 45 58 45 29 0a 0a 23 20 3c 3c  QLITE3EXE)..# <<
aea0: 6d 61 72 6b 3e 3e 0a 6c 69 62 73 71 6c 69 74 65  mark>>.libsqlite
aeb0: 33 2e 6c 69 62 3a 09 24 28 4c 49 42 4f 42 4a 29  3.lib:.$(LIBOBJ) aec0: 0a 09 24 28 4c 54 4c 49 42 29 20 24 28 4c 54 4c ..$(LTLIB) $(LTL aed0: 49 42 4f 50 54 53 29 20 2f 4f 55 54 3a 24 40 20 IBOPTS) /OUT:$@
aee0: 24 28 4c 49 42 4f 42 4a 29 20 24 28 54 4c 49 42  $(LIBOBJ)$(TLIB
aef0: 53 29 0a 0a 6c 69 62 74 63 6c 73 71 6c 69 74 65  S)..libtclsqlite
af00: 33 2e 6c 69 62 3a 09 74 63 6c 73 71 6c 69 74 65  3.lib:.tclsqlite
af10: 2e 6c 6f 20 6c 69 62 73 71 6c 69 74 65 33 2e 6c  .lo libsqlite3.l
af20: 69 62 0a 09 24 28 4c 54 4c 49 42 29 20 24 28 4c  ib..$(LTLIB)$(L
af30: 54 4c 49 42 4f 50 54 53 29 20 24 28 4c 54 4c 49  TLIBOPTS) $(LTLI af40: 42 50 41 54 48 53 29 20 2f 4f 55 54 3a 24 40 20 BPATHS) /OUT:$@
af50: 74 63 6c 73 71 6c 69 74 65 2e 6c 6f 20 6c 69 62  tclsqlite.lo lib
af60: 73 71 6c 69 74 65 33 2e 6c 69 62 20 24 28 4c 49  sqlite3.lib $(LI af70: 42 54 43 4c 53 54 55 42 29 20 24 28 54 4c 49 42 BTCLSTUB)$(TLIB
af80: 53 29 0a 23 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a 0a  S).# <</mark>>..
af90: 24 28 53 51 4c 49 54 45 33 44 4c 4c 29 3a 09 24  $(SQLITE3DLL):.$
afa0: 28 4c 49 42 4f 42 4a 29 20 24 28 4c 49 42 52 45  (LIBOBJ) $(LIBRE afb0: 53 4f 42 4a 53 29 20 24 28 43 4f 52 45 5f 4c 49 SOBJS)$(CORE_LI
afc0: 4e 4b 5f 44 45 50 29 0a 09 24 28 4c 44 29 20 24  NK_DEP)..$(LD)$
afd0: 28 4c 44 46 4c 41 47 53 29 20 24 28 4c 54 4c 49  (LDFLAGS) $(LTLI afe0: 4e 4b 4f 50 54 53 29 20 24 28 4c 54 4c 49 42 50 NKOPTS)$(LTLIBP
aff0: 41 54 48 53 29 20 2f 44 4c 4c 20 24 28 43 4f 52  ATHS) /DLL $(COR b000: 45 5f 4c 49 4e 4b 5f 4f 50 54 53 29 20 2f 4f 55 E_LINK_OPTS) /OU b010: 54 3a 24 40 20 24 28 4c 49 42 4f 42 4a 29 20 24 T:$@ $(LIBOBJ)$
b020: 28 4c 49 42 52 45 53 4f 42 4a 53 29 20 24 28 4c  (LIBRESOBJS) $(L b030: 54 4c 49 42 53 29 20 24 28 54 4c 49 42 53 29 0a TLIBS)$(TLIBS).
b040: 0a 23 20 3c 3c 62 6c 6f 63 6b 32 3e 3e 0a 73 71  .# <<block2>>.sq
b050: 6c 69 74 65 33 2e 64 65 66 3a 09 6c 69 62 73 71  lite3.def:.libsq
b060: 6c 69 74 65 33 2e 6c 69 62 0a 09 65 63 68 6f 20  lite3.lib..echo
b070: 45 58 50 4f 52 54 53 20 3e 20 73 71 6c 69 74 65  EXPORTS > sqlite
b080: 33 2e 64 65 66 0a 09 64 75 6d 70 62 69 6e 20 2f  3.def..dumpbin /
b090: 61 6c 6c 20 6c 69 62 73 71 6c 69 74 65 33 2e 6c  all libsqlite3.l
b0a0: 69 62 20 5c 0a 09 09 7c 20 24 28 54 43 4c 53 48  ib \...| $(TCLSH b0b0: 5f 43 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f 6f _CMD)$(TOP)\too
b0c0: 6c 5c 72 65 70 6c 61 63 65 2e 74 63 6c 20 69 6e  l\replace.tcl in
b0d0: 63 6c 75 64 65 20 22 5e 5c 73 2b 31 20 5f 3f 28  clude "^\s+1 _?(
b0e0: 73 71 6c 69 74 65 33 28 3f 3a 73 65 73 73 69 6f  sqlite3(?:sessio
b0f0: 6e 7c 63 68 61 6e 67 65 73 65 74 7c 63 68 61 6e  n|changeset|chan
b100: 67 65 67 72 6f 75 70 7c 72 65 62 61 73 65 72 29  gegroup|rebaser)
b110: 3f 5f 5b 5e 40 5d 2a 29 28 3f 3a 40 5c 64 2b 29  ?_[^@]*)(?:@\d+)
b120: 3f 24 24 22 20 5c 31 20 5c 0a 09 09 7c 20 73 6f  ?" \1 \...| so
b130: 72 74 20 3e 3e 20 73 71 6c 69 74 65 33 2e 64 65  rt >> sqlite3.de
b140: 66 0a 23 20 3c 3c 2f 62 6c 6f 63 6b 32 3e 3e 0a  f.# <</block2>>.
b150: 0a 24 28 53 51 4c 49 54 45 33 45 58 45 29 3a 09  .$(SQLITE3EXE):. b160: 73 68 65 6c 6c 2e 63 20 24 28 53 48 45 4c 4c 5f shell.c$(SHELL_
b170: 43 4f 52 45 5f 44 45 50 29 20 24 28 4c 49 42 52  CORE_DEP) $(LIBR b180: 45 53 4f 42 4a 53 29 20 24 28 53 48 45 4c 4c 5f ESOBJS)$(SHELL_
b190: 43 4f 52 45 5f 53 52 43 29 20 24 28 53 51 4c 49  CORE_SRC) $(SQLI b1a0: 54 45 33 48 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 TE3H)..$(LTLINK)
b1b0: 20 24 28 53 48 45 4c 4c 5f 43 4f 4d 50 49 4c 45   $(SHELL_COMPILE b1c0: 5f 4f 50 54 53 29 20 24 28 52 45 41 44 4c 49 4e _OPTS)$(READLIN
b1d0: 45 5f 46 4c 41 47 53 29 20 73 68 65 6c 6c 2e 63  E_FLAGS) shell.c
b1e0: 20 24 28 53 48 45 4c 4c 5f 43 4f 52 45 5f 53 52   $(SHELL_CORE_SR b1f0: 43 29 20 5c 0a 09 09 2f 6c 69 6e 6b 20 24 28 53 C) \.../link$(S
b200: 51 4c 49 54 45 33 45 58 45 50 44 42 29 20 24 28  QLITE3EXEPDB) $( b210: 4c 44 46 4c 41 47 53 29 20 24 28 4c 54 4c 49 4e LDFLAGS)$(LTLIN
b220: 4b 4f 50 54 53 29 20 24 28 53 48 45 4c 4c 5f 4c  KOPTS) $(SHELL_L b230: 49 4e 4b 5f 4f 50 54 53 29 20 24 28 4c 54 4c 49 INK_OPTS)$(LTLI
b240: 42 50 41 54 48 53 29 20 24 28 4c 49 42 52 45 53  BPATHS) $(LIBRES b250: 4f 42 4a 53 29 20 24 28 4c 49 42 52 45 41 44 4c OBJS)$(LIBREADL
b260: 49 4e 45 29 20 24 28 4c 54 4c 49 42 53 29 20 24  INE) $(LTLIBS)$
b270: 28 54 4c 49 42 53 29 0a 0a 23 20 3c 3c 6d 61 72  (TLIBS)..# <<mar
b280: 6b 3e 3e 0a 73 71 6c 64 69 66 66 2e 65 78 65 3a  k>>.sqldiff.exe:
b290: 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 71 6c  .$(TOP)\tool\sql b2a0: 64 69 66 66 2e 63 20 24 28 53 51 4c 49 54 45 33 diff.c$(SQLITE3
b2b0: 43 29 20 24 28 53 51 4c 49 54 45 33 48 29 0a 09  C) $(SQLITE3H).. b2c0: 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57$(LTLINK) $(NO_W b2d0: 41 52 4e 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c ARN)$(TOP)\tool
b2e0: 5c 73 71 6c 64 69 66 66 2e 63 20 24 28 53 51 4c  \sqldiff.c $(SQL b2f0: 49 54 45 33 43 29 20 2f 6c 69 6e 6b 20 24 28 4c ITE3C) /link$(L
b300: 44 46 4c 41 47 53 29 20 24 28 4c 54 4c 49 4e 4b  DFLAGS) $(LTLINK b310: 4f 50 54 53 29 0a 0a 64 62 68 61 73 68 2e 65 78 OPTS)..dbhash.ex b320: 65 3a 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 64 e:.$(TOP)\tool\d
b330: 62 68 61 73 68 2e 63 20 24 28 53 51 4c 49 54 45  bhash.c $(SQLITE b340: 33 43 29 20 24 28 53 51 4c 49 54 45 33 48 29 0a 3C)$(SQLITE3H).
b350: 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f  .$(LTLINK)$(NO_
b360: 57 41 52 4e 29 20 24 28 54 4f 50 29 5c 74 6f 6f  WARN) $(TOP)\too b370: 6c 5c 64 62 68 61 73 68 2e 63 20 24 28 53 51 4c l\dbhash.c$(SQL
b380: 49 54 45 33 43 29 20 2f 6c 69 6e 6b 20 24 28 4c  ITE3C) /link $(L b390: 44 46 4c 41 47 53 29 20 24 28 4c 54 4c 49 4e 4b DFLAGS)$(LTLINK
b3a0: 4f 50 54 53 29 0a 0a 73 63 72 75 62 2e 65 78 65  OPTS)..scrub.exe
b3b0: 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69 73  :.$(TOP)\ext\mis b3c0: 63 5c 73 63 72 75 62 2e 63 20 24 28 53 51 4c 49 c\scrub.c$(SQLI
b3d0: 54 45 33 43 29 20 24 28 53 51 4c 49 54 45 33 48  TE3C) $(SQLITE3H b3e0: 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e )..$(LTLINK) $(N b3f0: 4f 5f 57 41 52 4e 29 20 2d 44 53 43 52 55 42 5f O_WARN) -DSCRUB_ b400: 53 54 41 4e 44 41 4c 4f 4e 45 3d 31 20 24 28 54 STANDALONE=1$(T
b410: 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c 73 63 72  OP)\ext\misc\scr
b420: 75 62 2e 63 20 24 28 53 51 4c 49 54 45 33 43 29  ub.c $(SQLITE3C) b430: 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 47 53 /link$(LDFLAGS
b440: 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 0a  ) $(LTLINKOPTS). b450: 0a 73 72 63 63 6b 31 2e 65 78 65 3a 09 24 28 54 .srcck1.exe:.$(T
b460: 4f 50 29 5c 74 6f 6f 6c 5c 73 72 63 63 6b 31 2e  OP)\tool\srcck1.
b470: 63 0a 09 24 28 42 43 43 29 20 24 28 4e 4f 5f 57  c..$(BCC)$(NO_W
b480: 41 52 4e 29 20 2d 46 65 24 40 20 24 28 54 4f 50  ARN) -Fe$@$(TOP
b490: 29 5c 74 6f 6f 6c 5c 73 72 63 63 6b 31 2e 63 0a  )\tool\srcck1.c.
b4a0: 0a 73 6f 75 72 63 65 74 65 73 74 3a 09 73 72 63  .sourcetest:.src
b4b0: 63 6b 31 2e 65 78 65 20 24 28 53 51 4c 49 54 45  ck1.exe $(SQLITE b4c0: 33 43 29 0a 09 73 72 63 63 6b 31 2e 65 78 65 20 3C)..srcck1.exe b4d0: 24 28 53 51 4c 49 54 45 33 43 29 0a 0a 66 75 7a$(SQLITE3C)..fuz
b4e0: 7a 65 72 73 68 65 6c 6c 2e 65 78 65 3a 09 24 28  zershell.exe:.$( b4f0: 54 4f 50 29 5c 74 6f 6f 6c 5c 66 75 7a 7a 65 72 TOP)\tool\fuzzer b500: 73 68 65 6c 6c 2e 63 20 24 28 53 51 4c 49 54 45 shell.c$(SQLITE
b510: 33 43 29 20 24 28 53 51 4c 49 54 45 33 48 29 0a  3C) $(SQLITE3H). b520: 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f .$(LTLINK) $(NO_ b530: 57 41 52 4e 29 20 24 28 46 55 5a 5a 45 52 53 48 WARN)$(FUZZERSH
b540: 45 4c 4c 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53  ELL_COMPILE_OPTS
b550: 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 66 75  ) $(TOP)\tool\fu b560: 7a 7a 65 72 73 68 65 6c 6c 2e 63 20 24 28 53 51 zzershell.c$(SQ
b570: 4c 49 54 45 33 43 29 20 2f 6c 69 6e 6b 20 24 28  LITE3C) /link $( b580: 4c 44 46 4c 41 47 53 29 20 24 28 4c 54 4c 49 4e LDFLAGS)$(LTLIN
b590: 4b 4f 50 54 53 29 0a 0a 64 62 66 75 7a 7a 2e 65  KOPTS)..dbfuzz.e
b5a0: 78 65 3a 09 24 28 54 4f 50 29 5c 74 65 73 74 5c  xe:.$(TOP)\test\ b5b0: 64 62 66 75 7a 7a 2e 63 20 24 28 53 51 4c 49 54 dbfuzz.c$(SQLIT
b5c0: 45 33 43 29 20 24 28 53 51 4c 49 54 45 33 48 29  E3C) $(SQLITE3H) b5d0: 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f ..$(LTLINK) $(NO b5e0: 5f 57 41 52 4e 29 20 24 28 44 42 46 55 5a 5a 5f _WARN)$(DBFUZZ_
b5f0: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24 28  COMPILE_OPTS) $( b600: 54 4f 50 29 5c 74 65 73 74 5c 64 62 66 75 7a 7a TOP)\test\dbfuzz b610: 2e 63 20 24 28 53 51 4c 49 54 45 33 43 29 20 2f .c$(SQLITE3C) /
b620: 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 47 53 29 20  link $(LDFLAGS) b630: 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 0a 0a 66$(LTLINKOPTS)..f
b640: 75 7a 7a 63 68 65 63 6b 2e 65 78 65 3a 09 24 28  uzzcheck.exe:.$( b650: 46 55 5a 5a 43 48 45 43 4b 5f 53 52 43 29 20 24 FUZZCHECK_SRC)$
b660: 28 53 51 4c 49 54 45 33 43 29 20 24 28 53 51 4c  (SQLITE3C) $(SQL b670: 49 54 45 33 48 29 0a 09 24 28 4c 54 4c 49 4e 4b ITE3H)..$(LTLINK
b680: 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 24 28 46  ) $(NO_WARN)$(F
b690: 55 5a 5a 43 48 45 43 4b 5f 43 4f 4d 50 49 4c 45  UZZCHECK_COMPILE
b6a0: 5f 4f 50 54 53 29 20 24 28 46 55 5a 5a 43 48 45  _OPTS) $(FUZZCHE b6b0: 43 4b 5f 53 52 43 29 20 24 28 53 51 4c 49 54 45 CK_SRC)$(SQLITE
b6c0: 33 43 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c  3C) /link $(LDFL b6d0: 41 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 AGS)$(LTLINKOPT
b6e0: 53 29 0a 0a 6f 73 73 73 68 65 6c 6c 2e 65 78 65  S)..ossshell.exe
b6f0: 3a 09 24 28 4f 53 53 53 48 45 4c 4c 5f 53 52 43  :.$(OSSSHELL_SRC b700: 29 20 24 28 53 51 4c 49 54 45 33 43 29 20 24 28 )$(SQLITE3C) $( b710: 53 51 4c 49 54 45 33 48 29 0a 09 24 28 4c 54 4c SQLITE3H)..$(LTL
b720: 49 4e 4b 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20  INK) $(NO_WARN) b730: 24 28 46 55 5a 5a 43 48 45 43 4b 5f 43 4f 4d 50$(FUZZCHECK_COMP
b740: 49 4c 45 5f 4f 50 54 53 29 20 24 28 4f 53 53 53  ILE_OPTS) $(OSSS b750: 48 45 4c 4c 5f 53 52 43 29 20 24 28 53 51 4c 49 HELL_SRC)$(SQLI
b760: 54 45 33 43 29 20 2f 6c 69 6e 6b 20 24 28 4c 44  TE3C) /link $(LD b770: 46 4c 41 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f FLAGS)$(LTLINKO
b780: 50 54 53 29 0a 0a 73 65 73 73 69 6f 6e 66 75 7a  PTS)..sessionfuz
b790: 7a 2e 65 78 65 3a 09 7a 6c 69 62 20 24 28 54 4f  z.exe:.zlib $(TO b7a0: 50 29 5c 74 65 73 74 5c 73 65 73 73 69 6f 6e 66 P)\test\sessionf b7b0: 75 7a 7a 2e 63 20 24 28 53 51 4c 49 54 45 33 43 uzz.c$(SQLITE3C
b7c0: 29 20 24 28 53 51 4c 49 54 45 33 48 29 0a 09 24  ) $(SQLITE3H)..$
b7d0: 28 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57 41  (LTLINK) $(NO_WA b7e0: 52 4e 29 20 2d 49 24 28 5a 4c 49 42 49 4e 43 44 RN) -I$(ZLIBINCD
b7f0: 49 52 29 20 24 28 54 4f 50 29 5c 74 65 73 74 5c  IR) $(TOP)\test\ b800: 73 65 73 73 69 6f 6e 66 75 7a 7a 2e 63 20 2f 6c sessionfuzz.c /l b810: 69 6e 6b 20 24 28 4c 44 46 4c 41 47 53 29 20 24 ink$(LDFLAGS) $b820: 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 2f 4c 49 (LTLINKOPTS) /LI b830: 42 50 41 54 48 3a 24 28 5a 4c 49 42 4c 49 42 44 BPATH:$(ZLIBLIBD
b840: 49 52 29 20 24 28 5a 4c 49 42 4c 49 42 29 0a 0a  IR) $(ZLIBLIB).. b850: 6d 70 74 65 73 74 65 72 2e 65 78 65 3a 09 24 28 mptester.exe:.$(
b860: 54 4f 50 29 5c 6d 70 74 65 73 74 5c 6d 70 74 65  TOP)\mptest\mpte
b870: 73 74 2e 63 20 24 28 53 51 4c 49 54 45 33 43 29  st.c $(SQLITE3C) b880: 20 24 28 53 51 4c 49 54 45 33 48 29 0a 09 24 28$(SQLITE3H)..$( b890: 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57 41 52 LTLINK)$(NO_WAR
b8a0: 4e 29 20 24 28 4d 50 54 45 53 54 45 52 5f 43 4f  N) $(MPTESTER_CO b8b0: 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24 28 54 4f MPILE_OPTS)$(TO
b8c0: 50 29 5c 6d 70 74 65 73 74 5c 6d 70 74 65 73 74  P)\mptest\mptest
b8d0: 2e 63 20 24 28 53 51 4c 49 54 45 33 43 29 20 2f  .c $(SQLITE3C) / b8e0: 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 47 53 29 20 link$(LDFLAGS)
b8f0: 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 0a 0a 4d  $(LTLINKOPTS)..M b900: 50 54 45 53 54 31 20 3d 20 6d 70 74 65 73 74 65 PTEST1 = mpteste b910: 72 20 6d 70 74 65 73 74 2e 64 62 20 24 28 54 4f r mptest.db$(TO
b920: 50 29 5c 6d 70 74 65 73 74 5c 63 72 61 73 68 30  P)\mptest\crash0
b930: 31 2e 74 65 73 74 20 2d 2d 72 65 70 65 61 74 20  1.test --repeat
b940: 32 30 0a 4d 50 54 45 53 54 32 20 3d 20 6d 70 74  20.MPTEST2 = mpt
b950: 65 73 74 65 72 20 6d 70 74 65 73 74 2e 64 62 20  ester mptest.db
b960: 24 28 54 4f 50 29 5c 6d 70 74 65 73 74 5c 6d 75  $(TOP)\mptest\mu b970: 6c 74 69 77 72 69 74 65 30 31 2e 74 65 73 74 20 ltiwrite01.test b980: 2d 2d 72 65 70 65 61 74 20 32 30 0a 0a 6d 70 74 --repeat 20..mpt b990: 65 73 74 3a 09 6d 70 74 65 73 74 65 72 2e 65 78 est:.mptester.ex b9a0: 65 0a 09 64 65 6c 20 2f 51 20 6d 70 74 65 73 74 e..del /Q mptest b9b0: 2e 64 62 20 32 3e 4e 55 4c 0a 09 24 28 4d 50 54 .db 2>NUL..$(MPT
b9c0: 45 53 54 31 29 20 2d 2d 6a 6f 75 72 6e 61 6c 6d  EST1) --journalm
b9d0: 6f 64 65 20 44 45 4c 45 54 45 0a 09 24 28 4d 50  ode DELETE..$(MP b9e0: 54 45 53 54 32 29 20 2d 2d 6a 6f 75 72 6e 61 6c TEST2) --journal b9f0: 6d 6f 64 65 20 57 41 4c 0a 09 24 28 4d 50 54 45 mode WAL..$(MPTE
ba00: 53 54 31 29 20 2d 2d 6a 6f 75 72 6e 61 6c 6d 6f  ST1) --journalmo
ba10: 64 65 20 57 41 4c 0a 09 24 28 4d 50 54 45 53 54  de WAL..$(MPTEST ba20: 32 29 20 2d 2d 6a 6f 75 72 6e 61 6c 6d 6f 64 65 2) --journalmode ba30: 20 50 45 52 53 49 53 54 0a 09 24 28 4d 50 54 45 PERSIST..$(MPTE
ba40: 53 54 31 29 20 2d 2d 6a 6f 75 72 6e 61 6c 6d 6f  ST1) --journalmo
ba50: 64 65 20 50 45 52 53 49 53 54 0a 09 24 28 4d 50  de PERSIST..$(MP ba60: 54 45 53 54 32 29 20 2d 2d 6a 6f 75 72 6e 61 6c TEST2) --journal ba70: 6d 6f 64 65 20 54 52 55 4e 43 41 54 45 0a 09 24 mode TRUNCATE..$
ba80: 28 4d 50 54 45 53 54 31 29 20 2d 2d 6a 6f 75 72  (MPTEST1) --jour
ba90: 6e 61 6c 6d 6f 64 65 20 54 52 55 4e 43 41 54 45  nalmode TRUNCATE
baa0: 0a 09 24 28 4d 50 54 45 53 54 32 29 20 2d 2d 6a  ..$(MPTEST2) --j bab0: 6f 75 72 6e 61 6c 6d 6f 64 65 20 44 45 4c 45 54 ournalmode DELET bac0: 45 0a 0a 23 20 54 68 69 73 20 74 61 72 67 65 74 E..# This target bad0: 20 63 72 65 61 74 65 73 20 61 20 64 69 72 65 63 creates a direc bae0: 74 6f 72 79 20 6e 61 6d 65 64 20 22 74 73 72 63 tory named "tsrc baf0: 22 20 61 6e 64 20 66 69 6c 6c 73 20 69 74 20 77 " and fills it w bb00: 69 74 68 0a 23 20 63 6f 70 69 65 73 20 6f 66 20 ith.# copies of bb10: 61 6c 6c 20 6f 66 20 74 68 65 20 43 20 73 6f 75 all of the C sou bb20: 72 63 65 20 63 6f 64 65 20 61 6e 64 20 68 65 61 rce code and hea bb30: 64 65 72 20 66 69 6c 65 73 20 6e 65 65 64 65 64 der files needed bb40: 20 74 6f 0a 23 20 62 75 69 6c 64 20 6f 6e 20 74 to.# build on t bb50: 68 65 20 74 61 72 67 65 74 20 73 79 73 74 65 6d he target system bb60: 2e 20 20 53 6f 6d 65 20 6f 66 20 74 68 65 20 43 . Some of the C bb70: 20 73 6f 75 72 63 65 20 63 6f 64 65 20 61 6e 64 source code and bb80: 20 68 65 61 64 65 72 0a 23 20 66 69 6c 65 73 20 header.# files bb90: 61 72 65 20 61 75 74 6f 6d 61 74 69 63 61 6c 6c are automaticall bba0: 79 20 67 65 6e 65 72 61 74 65 64 2e 20 20 54 68 y generated. Th bbb0: 69 73 20 74 61 72 67 65 74 20 74 61 6b 65 73 20 is target takes bbc0: 63 61 72 65 20 6f 66 0a 23 20 61 6c 6c 20 74 68 care of.# all th bbd0: 61 74 20 61 75 74 6f 6d 61 74 69 63 20 67 65 6e at automatic gen bbe0: 65 72 61 74 69 6f 6e 2e 0a 23 0a 2e 74 61 72 67 eration..#..targ bbf0: 65 74 5f 73 6f 75 72 63 65 3a 09 24 28 53 52 43 et_source:.$(SRC
bc00: 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 76 64  ) $(TOP)\tool\vd bc10: 62 65 2d 63 6f 6d 70 72 65 73 73 2e 74 63 6c 20 be-compress.tcl bc20: 66 74 73 35 2e 63 20 24 28 53 51 4c 49 54 45 5f fts5.c$(SQLITE_
bc30: 54 43 4c 5f 44 45 50 29 0a 09 2d 72 6d 64 69 72  TCL_DEP)..-rmdir
bc40: 20 2f 51 2f 53 20 74 73 72 63 20 32 3e 4e 55 4c   /Q/S tsrc 2>NUL
bc50: 0a 09 2d 6d 6b 64 69 72 20 74 73 72 63 0a 09 66  ..-mkdir tsrc..f
bc60: 6f 72 20 25 69 20 69 6e 20 28 24 28 53 52 43 30  or %i in ($(SRC0 bc70: 30 29 29 20 64 6f 20 63 6f 70 79 20 2f 59 20 25 0)) do copy /Y % bc80: 69 20 74 73 72 63 0a 09 66 6f 72 20 25 69 20 69 i tsrc..for %i i bc90: 6e 20 28 24 28 53 52 43 30 31 29 29 20 64 6f 20 n ($(SRC01)) do
bca0: 63 6f 70 79 20 2f 59 20 25 69 20 74 73 72 63 0a  copy /Y %i tsrc.
bcb0: 09 66 6f 72 20 25 69 20 69 6e 20 28 24 28 53 52  .for %i in ($(SR bcc0: 43 30 33 29 29 20 64 6f 20 63 6f 70 79 20 2f 59 C03)) do copy /Y bcd0: 20 25 69 20 74 73 72 63 0a 09 66 6f 72 20 25 69 %i tsrc..for %i bce0: 20 69 6e 20 28 24 28 53 52 43 30 34 29 29 20 64 in ($(SRC04)) d
bcf0: 6f 20 63 6f 70 79 20 2f 59 20 25 69 20 74 73 72  o copy /Y %i tsr
bd00: 63 0a 09 66 6f 72 20 25 69 20 69 6e 20 28 24 28  c..for %i in ($( bd10: 53 52 43 30 35 29 29 20 64 6f 20 63 6f 70 79 20 SRC05)) do copy bd20: 2f 59 20 25 69 20 74 73 72 63 0a 09 66 6f 72 20 /Y %i tsrc..for bd30: 25 69 20 69 6e 20 28 24 28 53 52 43 30 36 29 29 %i in ($(SRC06))
bd40: 20 64 6f 20 63 6f 70 79 20 2f 59 20 25 69 20 74   do copy /Y %i t
bd50: 73 72 63 0a 09 66 6f 72 20 25 69 20 69 6e 20 28  src..for %i in (
bd60: 24 28 53 52 43 30 37 29 29 20 64 6f 20 63 6f 70  $(SRC07)) do cop bd70: 79 20 2f 59 20 25 69 20 74 73 72 63 0a 09 66 6f y /Y %i tsrc..fo bd80: 72 20 25 69 20 69 6e 20 28 24 28 53 52 43 30 38 r %i in ($(SRC08
bd90: 29 29 20 64 6f 20 63 6f 70 79 20 2f 59 20 25 69  )) do copy /Y %i
bda0: 20 74 73 72 63 0a 09 66 6f 72 20 25 69 20 69 6e   tsrc..for %i in
bdb0: 20 28 24 28 53 52 43 30 39 29 29 20 64 6f 20 63   ($(SRC09)) do c bdc0: 6f 70 79 20 2f 59 20 25 69 20 74 73 72 63 0a 09 opy /Y %i tsrc.. bdd0: 66 6f 72 20 25 69 20 69 6e 20 28 24 28 53 52 43 for %i in ($(SRC
bde0: 31 30 29 29 20 64 6f 20 63 6f 70 79 20 2f 59 20  10)) do copy /Y
bdf0: 25 69 20 74 73 72 63 0a 09 66 6f 72 20 25 69 20  %i tsrc..for %i
be00: 69 6e 20 28 24 28 53 52 43 31 31 29 29 20 64 6f  in ($(SRC11)) do be10: 20 63 6f 70 79 20 2f 59 20 25 69 20 74 73 72 63 copy /Y %i tsrc be20: 0a 09 66 6f 72 20 25 69 20 69 6e 20 28 24 28 53 ..for %i in ($(S
be30: 52 43 31 32 29 29 20 64 6f 20 63 6f 70 79 20 2f  RC12)) do copy /
be40: 59 20 25 69 20 74 73 72 63 0a 09 63 6f 70 79 20  Y %i tsrc..copy
be50: 2f 59 20 66 74 73 35 2e 63 20 74 73 72 63 0a 09  /Y fts5.c tsrc..
be60: 63 6f 70 79 20 2f 59 20 66 74 73 35 2e 68 20 74  copy /Y fts5.h t
be70: 73 72 63 0a 09 64 65 6c 20 2f 51 20 74 73 72 63  src..del /Q tsrc
be80: 5c 73 71 6c 69 74 65 2e 68 2e 69 6e 20 74 73 72  \sqlite.h.in tsr
be90: 63 5c 70 61 72 73 65 2e 79 20 32 3e 4e 55 4c 0a  c\parse.y 2>NUL.
bea0: 09 24 28 54 43 4c 53 48 5f 43 4d 44 29 20 24 28  .$(TCLSH_CMD)$(
beb0: 54 4f 50 29 5c 74 6f 6f 6c 5c 76 64 62 65 2d 63  TOP)\tool\vdbe-c
bec0: 6f 6d 70 72 65 73 73 2e 74 63 6c 20 24 28 4f 50  ompress.tcl $(OP bed0: 54 53 29 20 3c 20 74 73 72 63 5c 76 64 62 65 2e TS) < tsrc\vdbe. bee0: 63 20 3e 20 76 64 62 65 2e 6e 65 77 0a 09 6d 6f c > vdbe.new..mo bef0: 76 65 20 76 64 62 65 2e 6e 65 77 20 74 73 72 63 ve vdbe.new tsrc bf00: 5c 76 64 62 65 2e 63 0a 09 65 63 68 6f 20 3e 20 \vdbe.c..echo > bf10: 2e 74 61 72 67 65 74 5f 73 6f 75 72 63 65 0a 0a .target_source.. bf20: 73 71 6c 69 74 65 33 2e 63 3a 09 2e 74 61 72 67 sqlite3.c:..targ bf30: 65 74 5f 73 6f 75 72 63 65 20 73 71 6c 69 74 65 et_source sqlite bf40: 33 65 78 74 2e 68 20 24 28 4d 4b 53 51 4c 49 54 3ext.h$(MKSQLIT
bf50: 45 33 43 5f 54 4f 4f 4c 29 0a 09 24 28 54 43 4c  E3C_TOOL)..$(TCL bf60: 53 48 5f 43 4d 44 29 20 24 28 4d 4b 53 51 4c 49 SH_CMD)$(MKSQLI
bf70: 54 45 33 43 5f 54 4f 4f 4c 29 20 24 28 4d 4b 53  TE3C_TOOL) $(MKS bf80: 51 4c 49 54 45 33 43 5f 41 52 47 53 29 0a 09 63 QLITE3C_ARGS)..c bf90: 6f 70 79 20 24 28 54 4f 50 29 5c 65 78 74 5c 73 opy$(TOP)\ext\s
bfa0: 65 73 73 69 6f 6e 5c 73 71 6c 69 74 65 33 73 65  ession\sqlite3se
bfb0: 73 73 69 6f 6e 2e 68 20 2e 0a 0a 73 71 6c 69 74  ssion.h ...sqlit
bfc0: 65 33 2d 61 6c 6c 2e 63 3a 09 73 71 6c 69 74 65  e3-all.c:.sqlite
bfd0: 33 2e 63 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c  3.c $(TOP)\tool\ bfe0: 73 70 6c 69 74 2d 73 71 6c 69 74 65 33 63 2e 74 split-sqlite3c.t bff0: 63 6c 0a 09 24 28 54 43 4c 53 48 5f 43 4d 44 29 cl..$(TCLSH_CMD)
c000: 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 70 6c   $(TOP)\tool\spl c010: 69 74 2d 73 71 6c 69 74 65 33 63 2e 74 63 6c 0a it-sqlite3c.tcl. c020: 23 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a 0a 23 20 52 # <</mark>>..# R c030: 75 6c 65 20 74 6f 20 62 75 69 6c 64 20 74 68 65 ule to build the c040: 20 61 6d 61 6c 67 61 6d 61 74 69 6f 6e 0a 23 0a amalgamation.#. c050: 73 71 6c 69 74 65 33 2e 6c 6f 3a 09 24 28 53 51 sqlite3.lo:.$(SQ
c060: 4c 49 54 45 33 43 29 0a 09 24 28 4c 54 43 4f 4d  LITE3C)..$(LTCOM c070: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d PILE)$(CORE_COM
c080: 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28  PILE_OPTS) -c $( c090: 53 51 4c 49 54 45 33 43 29 0a 0a 23 20 3c 3c 6d SQLITE3C)..# <<m c0a0: 61 72 6b 3e 3e 0a 23 20 52 75 6c 65 73 20 74 6f ark>>.# Rules to c0b0: 20 62 75 69 6c 64 20 74 68 65 20 4c 45 4d 4f 4e build the LEMON c0c0: 20 63 6f 6d 70 69 6c 65 72 20 67 65 6e 65 72 61 compiler genera c0d0: 74 6f 72 0a 23 0a 6c 65 6d 70 61 72 2e 63 3a 09 tor.#.lempar.c:. c0e0: 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6c 65 6d 70$(TOP)\tool\lemp
c0f0: 61 72 2e 63 0a 09 63 6f 70 79 20 24 28 54 4f 50  ar.c..copy $(TOP c100: 29 5c 74 6f 6f 6c 5c 6c 65 6d 70 61 72 2e 63 20 )\tool\lempar.c c110: 2e 0a 0a 6c 65 6d 6f 6e 2e 65 78 65 3a 09 24 28 ...lemon.exe:.$(
c120: 54 4f 50 29 5c 74 6f 6f 6c 5c 6c 65 6d 6f 6e 2e  TOP)\tool\lemon.
c130: 63 20 6c 65 6d 70 61 72 2e 63 0a 09 24 28 42 43  c lempar.c..$(BC c140: 43 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 C)$(NO_WARN) -D
c150: 61 63 63 65 73 73 3d 5f 61 63 63 65 73 73 20 5c  access=_access \
c160: 0a 09 09 2d 46 65 24 40 20 24 28 54 4f 50 29 5c  ...-Fe$@$(TOP)\
c170: 74 6f 6f 6c 5c 6c 65 6d 6f 6e 2e 63 20 2f 6c 69  tool\lemon.c /li
c180: 6e 6b 20 24 28 4c 44 46 4c 41 47 53 29 20 24 28  nk $(LDFLAGS)$(
c190: 4e 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 24 28 4e  NLTLINKOPTS) $(N c1a0: 4c 54 4c 49 42 50 41 54 48 53 29 0a 0a 23 20 3c LTLIBPATHS)..# < c1b0: 3c 6d 61 72 6b 3e 3e 0a 23 20 52 75 6c 65 73 20 <mark>>.# Rules c1c0: 74 6f 20 62 75 69 6c 64 20 74 68 65 20 73 6f 75 to build the sou c1d0: 72 63 65 2d 69 64 20 67 65 6e 65 72 61 74 6f 72 rce-id generator c1e0: 20 74 6f 6f 6c 0a 23 0a 6d 6b 73 6f 75 72 63 65 tool.#.mksource c1f0: 69 64 2e 65 78 65 3a 09 24 28 54 4f 50 29 5c 74 id.exe:.$(TOP)\t
c200: 6f 6f 6c 5c 6d 6b 73 6f 75 72 63 65 69 64 2e 63  ool\mksourceid.c
c210: 0a 09 24 28 42 43 43 29 20 24 28 4e 4f 5f 57 41  ..$(BCC)$(NO_WA
c220: 52 4e 29 20 2d 46 65 24 40 20 24 28 54 4f 50 29  RN) -Fe$@$(TOP)
c230: 5c 74 6f 6f 6c 5c 6d 6b 73 6f 75 72 63 65 69 64  \tool\mksourceid
c240: 2e 63 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41  .c /link $(LDFLA c250: 47 53 29 20 24 28 4e 4c 54 4c 49 4e 4b 4f 50 54 GS)$(NLTLINKOPT
c260: 53 29 20 24 28 4e 4c 54 4c 49 42 50 41 54 48 53  S) $(NLTLIBPATHS c270: 29 0a 0a 23 20 52 75 6c 65 73 20 74 6f 20 62 75 )..# Rules to bu c280: 69 6c 64 20 69 6e 64 69 76 69 64 75 61 6c 20 2a ild individual * c290: 2e 6c 6f 20 66 69 6c 65 73 20 66 72 6f 6d 20 67 .lo files from g c2a0: 65 6e 65 72 61 74 65 64 20 2a 2e 63 20 66 69 6c enerated *.c fil c2b0: 65 73 2e 20 54 68 69 73 0a 23 20 61 70 70 6c 69 es. This.# appli c2c0: 65 73 20 74 6f 3a 0a 23 0a 23 20 20 20 20 20 70 es to:.#.# p c2d0: 61 72 73 65 2e 6c 6f 0a 23 20 20 20 20 20 6f 70 arse.lo.# op c2e0: 63 6f 64 65 73 2e 6c 6f 0a 23 0a 70 61 72 73 65 codes.lo.#.parse c2f0: 2e 6c 6f 3a 09 70 61 72 73 65 2e 63 20 24 28 48 .lo:.parse.c$(H
c300: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  DR)..$(LTCOMPILE c310: 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 )$(CORE_COMPILE
c320: 5f 4f 50 54 53 29 20 2d 63 20 70 61 72 73 65 2e  _OPTS) -c parse.
c330: 63 0a 0a 6f 70 63 6f 64 65 73 2e 6c 6f 3a 09 6f  c..opcodes.lo:.o
c340: 70 63 6f 64 65 73 2e 63 0a 09 24 28 4c 54 43 4f  pcodes.c..$(LTCO c350: 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f MPILE)$(CORE_CO
c360: 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 6f  MPILE_OPTS) -c o
c370: 70 63 6f 64 65 73 2e 63 0a 23 20 3c 3c 2f 6d 61  pcodes.c.# <</ma
c380: 72 6b 3e 3e 0a 0a 23 20 52 75 6c 65 20 74 6f 20  rk>>..# Rule to
c390: 62 75 69 6c 64 20 74 68 65 20 57 69 6e 33 32 20  build the Win32
c3a0: 72 65 73 6f 75 72 63 65 73 20 6f 62 6a 65 63 74  resources object
c3b0: 20 66 69 6c 65 2e 0a 23 0a 21 49 46 20 24 28 55   file..#.!IF $(U c3c0: 53 45 5f 52 43 29 21 3d 30 0a 23 20 3c 3c 62 6c SE_RC)!=0.# <<bl c3d0: 6f 63 6b 31 3e 3e 0a 24 28 4c 49 42 52 45 53 4f ock1>>.$(LIBRESO
c3e0: 42 4a 53 29 3a 09 24 28 54 4f 50 29 5c 73 72 63  BJS):.$(TOP)\src c3f0: 5c 73 71 6c 69 74 65 33 2e 72 63 20 24 28 53 51 \sqlite3.rc$(SQ
c400: 4c 49 54 45 33 48 29 0a 09 65 63 68 6f 20 23 69  LITE3H)..echo #i
c410: 66 6e 64 65 66 20 53 51 4c 49 54 45 5f 52 45 53  fndef SQLITE_RES
c420: 4f 55 52 43 45 5f 56 45 52 53 49 4f 4e 20 3e 20  OURCE_VERSION >
c430: 73 71 6c 69 74 65 33 72 63 2e 68 0a 09 66 6f 72  sqlite3rc.h..for
c440: 20 2f 46 20 25 25 56 20 69 6e 20 28 27 74 79 70   /F %%V in ('typ
c450: 65 20 22 24 28 54 4f 50 29 5c 56 45 52 53 49 4f  e "$(TOP)\VERSIO c460: 4e 22 27 29 20 64 6f 20 28 20 5c 0a 09 09 65 63 N"') do ( \...ec c470: 68 6f 20 23 64 65 66 69 6e 65 20 53 51 4c 49 54 ho #define SQLIT c480: 45 5f 52 45 53 4f 55 52 43 45 5f 56 45 52 53 49 E_RESOURCE_VERSI c490: 4f 4e 20 25 25 56 20 5c 0a 09 09 09 7c 20 24 28 ON %%V \....|$(
c4a0: 54 43 4c 53 48 5f 43 4d 44 29 20 24 28 54 4f 50  TCLSH_CMD) $(TOP c4b0: 29 5c 74 6f 6f 6c 5c 72 65 70 6c 61 63 65 2e 74 )\tool\replace.t c4c0: 63 6c 20 65 78 61 63 74 20 2e 20 5e 2c 20 3e 3e cl exact . ^, >> c4d0: 20 73 71 6c 69 74 65 33 72 63 2e 68 20 5c 0a 09 sqlite3rc.h \.. c4e0: 29 0a 09 65 63 68 6f 20 23 65 6e 64 69 66 20 3e )..echo #endif > c4f0: 3e 20 73 71 6c 69 74 65 33 72 63 2e 68 0a 09 24 > sqlite3rc.h..$
c500: 28 4c 54 52 43 4f 4d 50 49 4c 45 29 20 2d 66 6f  (LTRCOMPILE) -fo
c510: 20 24 28 4c 49 42 52 45 53 4f 42 4a 53 29 20 24   $(LIBRESOBJS)$
c520: 28 54 4f 50 29 5c 73 72 63 5c 73 71 6c 69 74 65  (TOP)\src\sqlite
c530: 33 2e 72 63 0a 23 20 3c 3c 2f 62 6c 6f 63 6b 31  3.rc.# <</block1
c540: 3e 3e 0a 21 45 4e 44 49 46 0a 0a 23 20 3c 3c 6d  >>.!ENDIF..# <<m
c550: 61 72 6b 3e 3e 0a 23 20 52 75 6c 65 73 20 74 6f  ark>>.# Rules to
c560: 20 62 75 69 6c 64 20 69 6e 64 69 76 69 64 75 61   build individua
c570: 6c 20 2a 2e 6c 6f 20 66 69 6c 65 73 20 66 72 6f  l *.lo files fro
c580: 6d 20 66 69 6c 65 73 20 69 6e 20 74 68 65 20 73  m files in the s
c590: 72 63 20 64 69 72 65 63 74 6f 72 79 2e 0a 23 0a  rc directory..#.
c5a0: 61 6c 74 65 72 2e 6c 6f 3a 09 24 28 54 4f 50 29  alter.lo:.$(TOP) c5b0: 5c 73 72 63 5c 61 6c 74 65 72 2e 63 20 24 28 48 \src\alter.c$(H
c5c0: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  DR)..$(LTCOMPILE c5d0: 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 )$(CORE_COMPILE
c5e0: 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29  _OPTS) -c $(TOP) c5f0: 5c 73 72 63 5c 61 6c 74 65 72 2e 63 0a 0a 61 6e \src\alter.c..an c600: 61 6c 79 7a 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 alyze.lo:.$(TOP)
c610: 5c 73 72 63 5c 61 6e 61 6c 79 7a 65 2e 63 20 24  \src\analyze.c $c620: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 (HDR)..$(LTCOMPI
c630: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49  LE) $(CORE_COMPI c640: 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f LE_OPTS) -c$(TO
c650: 50 29 5c 73 72 63 5c 61 6e 61 6c 79 7a 65 2e 63  P)\src\analyze.c
c660: 0a 0a 61 74 74 61 63 68 2e 6c 6f 3a 09 24 28 54  ..attach.lo:.$(T c670: 4f 50 29 5c 73 72 63 5c 61 74 74 61 63 68 2e 63 OP)\src\attach.c c680: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d$(HDR)..$(LTCOM c690: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d PILE)$(CORE_COM
c6a0: 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28  PILE_OPTS) -c $( c6b0: 54 4f 50 29 5c 73 72 63 5c 61 74 74 61 63 68 2e TOP)\src\attach. c6c0: 63 0a 0a 61 75 74 68 2e 6c 6f 3a 09 24 28 54 4f c..auth.lo:.$(TO
c6d0: 50 29 5c 73 72 63 5c 61 75 74 68 2e 63 20 24 28  P)\src\auth.c $( c6e0: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c HDR)..$(LTCOMPIL
c6f0: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c  E) $(CORE_COMPIL c700: 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 E_OPTS) -c$(TOP
c710: 29 5c 73 72 63 5c 61 75 74 68 2e 63 0a 0a 62 61  )\src\auth.c..ba
c720: 63 6b 75 70 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c  ckup.lo:.$(TOP)\ c730: 73 72 63 5c 62 61 63 6b 75 70 2e 63 20 24 28 48 src\backup.c$(H
c740: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  DR)..$(LTCOMPILE c750: 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 )$(CORE_COMPILE
c760: 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29  _OPTS) -c $(TOP) c770: 5c 73 72 63 5c 62 61 63 6b 75 70 2e 63 0a 0a 62 \src\backup.c..b c780: 69 74 76 65 63 2e 6c 6f 3a 09 24 28 54 4f 50 29 itvec.lo:.$(TOP)
c790: 5c 73 72 63 5c 62 69 74 76 65 63 2e 63 20 24 28  \src\bitvec.c $( c7a0: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c HDR)..$(LTCOMPIL
c7b0: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c  E) $(CORE_COMPIL c7c0: 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 E_OPTS) -c$(TOP
c7d0: 29 5c 73 72 63 5c 62 69 74 76 65 63 2e 63 0a 0a  )\src\bitvec.c..
c7e0: 62 74 6d 75 74 65 78 2e 6c 6f 3a 09 24 28 54 4f  btmutex.lo:.$(TO c7f0: 50 29 5c 73 72 63 5c 62 74 6d 75 74 65 78 2e 63 P)\src\btmutex.c c800: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d$(HDR)..$(LTCOM c810: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d PILE)$(CORE_COM
c820: 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28  PILE_OPTS) -c $( c830: 54 4f 50 29 5c 73 72 63 5c 62 74 6d 75 74 65 78 TOP)\src\btmutex c840: 2e 63 0a 0a 62 74 72 65 65 2e 6c 6f 3a 09 24 28 .c..btree.lo:.$(
c850: 54 4f 50 29 5c 73 72 63 5c 62 74 72 65 65 2e 63  TOP)\src\btree.c
c860: 20 24 28 48 44 52 29 20 24 28 54 4f 50 29 5c 73   $(HDR)$(TOP)\s
c870: 72 63 5c 70 61 67 65 72 2e 68 0a 09 24 28 4c 54  rc\pager.h..$(LT c880: 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f COMPILE)$(CORE_
c890: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63  COMPILE_OPTS) -c
c8a0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 62 74 72 65   $(TOP)\src\btre c8b0: 65 2e 63 0a 0a 62 75 69 6c 64 2e 6c 6f 3a 09 24 e.c..build.lo:.$
c8c0: 28 54 4f 50 29 5c 73 72 63 5c 62 75 69 6c 64 2e  (TOP)\src\build.
c8d0: 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f  c $(HDR)..$(LTCO
c8e0: 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f  MPILE) $(CORE_CO c8f0: 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 MPILE_OPTS) -c$
c900: 28 54 4f 50 29 5c 73 72 63 5c 62 75 69 6c 64 2e  (TOP)\src\build.
c910: 63 0a 0a 63 61 6c 6c 62 61 63 6b 2e 6c 6f 3a 09  c..callback.lo:.
c920: 24 28 54 4f 50 29 5c 73 72 63 5c 63 61 6c 6c 62  $(TOP)\src\callb c930: 61 63 6b 2e 63 20 24 28 48 44 52 29 0a 09 24 28 ack.c$(HDR)..$( c940: 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 LTCOMPILE)$(COR
c950: 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20  E_COMPILE_OPTS)
c960: 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 63 61  -c $(TOP)\src\ca c970: 6c 6c 62 61 63 6b 2e 63 0a 0a 63 6f 6d 70 6c 65 llback.c..comple c980: 74 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 te.lo:.$(TOP)\sr
c990: 63 5c 63 6f 6d 70 6c 65 74 65 2e 63 20 24 28 48  c\complete.c $(H c9a0: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 DR)..$(LTCOMPILE
c9b0: 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45  ) $(CORE_COMPILE c9c0: 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 _OPTS) -c$(TOP)
c9d0: 5c 73 72 63 5c 63 6f 6d 70 6c 65 74 65 2e 63 0a  \src\complete.c.
c9e0: 0a 63 74 69 6d 65 2e 6c 6f 3a 09 24 28 54 4f 50  .ctime.lo:.$(TOP c9f0: 29 5c 73 72 63 5c 63 74 69 6d 65 2e 63 20 24 28 )\src\ctime.c$(
ca00: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c  HDR)..$(LTCOMPIL ca10: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c E)$(CORE_COMPIL
ca20: 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50  E_OPTS) -c $(TOP ca30: 29 5c 73 72 63 5c 63 74 69 6d 65 2e 63 0a 0a 64 )\src\ctime.c..d ca40: 61 74 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 ate.lo:.$(TOP)\s
ca50: 72 63 5c 64 61 74 65 2e 63 20 24 28 48 44 52 29  rc\date.c $(HDR) ca60: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 ..$(LTCOMPILE) $ca70: 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 (CORE_COMPILE_OP ca80: 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 TS) -c$(TOP)\sr
ca90: 63 5c 64 61 74 65 2e 63 0a 0a 64 62 70 61 67 65  c\date.c..dbpage
caa0: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c  .lo:.$(TOP)\src\ cab0: 64 62 70 61 67 65 2e 63 20 24 28 48 44 52 29 0a dbpage.c$(HDR).
cac0: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28  .$(LTCOMPILE)$(
cad0: 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54  CORE_COMPILE_OPT
cae0: 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63  S) -c $(TOP)\src caf0: 5c 64 62 70 61 67 65 2e 63 0a 0a 64 62 73 74 61 \dbpage.c..dbsta cb00: 74 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 t.lo:.$(TOP)\src
cb10: 5c 64 62 73 74 61 74 2e 63 20 24 28 48 44 52 29  \dbstat.c $(HDR) cb20: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 ..$(LTCOMPILE) $cb30: 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 (CORE_COMPILE_OP cb40: 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 TS) -c$(TOP)\sr
cb50: 63 5c 64 62 73 74 61 74 2e 63 0a 0a 64 65 6c 65  c\dbstat.c..dele
cb60: 74 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72  te.lo:.$(TOP)\sr cb70: 63 5c 64 65 6c 65 74 65 2e 63 20 24 28 48 44 52 c\delete.c$(HDR
cb80: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20  )..$(LTCOMPILE) cb90: 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f$(CORE_COMPILE_O
cba0: 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73  PTS) -c $(TOP)\s cbb0: 72 63 5c 64 65 6c 65 74 65 2e 63 0a 0a 65 78 70 rc\delete.c..exp cbc0: 72 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 r.lo:.$(TOP)\src
cbd0: 5c 65 78 70 72 2e 63 20 24 28 48 44 52 29 0a 09  \expr.c $(HDR).. cbe0: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43$(LTCOMPILE) $(C cbf0: 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 ORE_COMPILE_OPTS cc00: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c ) -c$(TOP)\src\
cc10: 65 78 70 72 2e 63 0a 0a 66 61 75 6c 74 2e 6c 6f  expr.c..fault.lo
cc20: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 66 61 75  :.$(TOP)\src\fau cc30: 6c 74 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c lt.c$(HDR)..$(L cc40: 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 TCOMPILE)$(CORE
cc50: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d  _COMPILE_OPTS) -
cc60: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 66 61 75  c $(TOP)\src\fau cc70: 6c 74 2e 63 0a 0a 66 6b 65 79 2e 6c 6f 3a 09 24 lt.c..fkey.lo:.$
cc80: 28 54 4f 50 29 5c 73 72 63 5c 66 6b 65 79 2e 63  (TOP)\src\fkey.c
cc90: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d   $(HDR)..$(LTCOM
cca0: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d  PILE) $(CORE_COM ccb0: 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 PILE_OPTS) -c$(
ccc0: 54 4f 50 29 5c 73 72 63 5c 66 6b 65 79 2e 63 0a  TOP)\src\fkey.c.
ccd0: 0a 66 75 6e 63 2e 6c 6f 3a 09 24 28 54 4f 50 29  .func.lo:.$(TOP) cce0: 5c 73 72 63 5c 66 75 6e 63 2e 63 20 24 28 48 44 \src\func.c$(HD
ccf0: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  R)..$(LTCOMPILE) cd00: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f$(CORE_COMPILE_
cd10: 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c  OPTS) -c $(TOP)\ cd20: 73 72 63 5c 66 75 6e 63 2e 63 0a 0a 67 6c 6f 62 src\func.c..glob cd30: 61 6c 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 al.lo:.$(TOP)\sr
cd40: 63 5c 67 6c 6f 62 61 6c 2e 63 20 24 28 48 44 52  c\global.c $(HDR cd50: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 )..$(LTCOMPILE)
cd60: 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f  $(CORE_COMPILE_O cd70: 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 PTS) -c$(TOP)\s
cd80: 72 63 5c 67 6c 6f 62 61 6c 2e 63 0a 0a 68 61 73  rc\global.c..has
cd90: 68 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63  h.lo:.$(TOP)\src cda0: 5c 68 61 73 68 2e 63 20 24 28 48 44 52 29 0a 09 \hash.c$(HDR)..
cdb0: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43  $(LTCOMPILE)$(C
cdc0: 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53  ORE_COMPILE_OPTS
cdd0: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c  ) -c $(TOP)\src\ cde0: 68 61 73 68 2e 63 0a 0a 69 6e 73 65 72 74 2e 6c hash.c..insert.l cdf0: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 69 6e o:.$(TOP)\src\in
ce00: 73 65 72 74 2e 63 20 24 28 48 44 52 29 0a 09 24  sert.c $(HDR)..$
ce10: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f  (LTCOMPILE) $(CO ce20: 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 RE_COMPILE_OPTS) ce30: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 69 -c$(TOP)\src\i
ce40: 6e 73 65 72 74 2e 63 0a 0a 6c 65 67 61 63 79 2e  nsert.c..legacy.
ce50: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 6c  lo:.$(TOP)\src\l ce60: 65 67 61 63 79 2e 63 20 24 28 48 44 52 29 0a 09 egacy.c$(HDR)..
ce70: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43  $(LTCOMPILE)$(C
ce80: 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53  ORE_COMPILE_OPTS
ce90: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c  ) -c $(TOP)\src\ cea0: 6c 65 67 61 63 79 2e 63 0a 0a 6c 6f 61 64 65 78 legacy.c..loadex ceb0: 74 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 t.lo:.$(TOP)\src
cec0: 5c 6c 6f 61 64 65 78 74 2e 63 20 24 28 48 44 52  \loadext.c $(HDR ced0: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 )..$(LTCOMPILE)
cee0: 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f  $(CORE_COMPILE_O cef0: 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 PTS) -c$(TOP)\s
cf00: 72 63 5c 6c 6f 61 64 65 78 74 2e 63 0a 0a 6d 61  rc\loadext.c..ma
cf10: 69 6e 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72  in.lo:.$(TOP)\sr cf20: 63 5c 6d 61 69 6e 2e 63 20 24 28 48 44 52 29 0a c\main.c$(HDR).
cf30: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28  .$(LTCOMPILE)$(
cf40: 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54  CORE_COMPILE_OPT
cf50: 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63  S) -c $(TOP)\src cf60: 5c 6d 61 69 6e 2e 63 0a 0a 6d 61 6c 6c 6f 63 2e \main.c..malloc. cf70: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 6d lo:.$(TOP)\src\m
cf80: 61 6c 6c 6f 63 2e 63 20 24 28 48 44 52 29 0a 09  alloc.c $(HDR).. cf90: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43$(LTCOMPILE) $(C cfa0: 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 ORE_COMPILE_OPTS cfb0: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c ) -c$(TOP)\src\
cfc0: 6d 61 6c 6c 6f 63 2e 63 0a 0a 6d 65 6d 30 2e 6c  malloc.c..mem0.l
cfd0: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65  o:.$(TOP)\src\me cfe0: 6d 30 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c m0.c$(HDR)..$(L cff0: 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 TCOMPILE)$(CORE
d000: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d  _COMPILE_OPTS) -
d010: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d  c $(TOP)\src\mem d020: 30 2e 63 0a 0a 6d 65 6d 31 2e 6c 6f 3a 09 24 28 0.c..mem1.lo:.$(
d030: 54 4f 50 29 5c 73 72 63 5c 6d 65 6d 31 2e 63 20  TOP)\src\mem1.c
d040: 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  $(HDR)..$(LTCOMP
d050: 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50  ILE) $(CORE_COMP d060: 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 ILE_OPTS) -c$(T
d070: 4f 50 29 5c 73 72 63 5c 6d 65 6d 31 2e 63 0a 0a  OP)\src\mem1.c..
d080: 6d 65 6d 32 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c  mem2.lo:.$(TOP)\ d090: 73 72 63 5c 6d 65 6d 32 2e 63 20 24 28 48 44 52 src\mem2.c$(HDR
d0a0: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20  )..$(LTCOMPILE) d0b0: 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f$(CORE_COMPILE_O
d0c0: 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73  PTS) -c $(TOP)\s d0d0: 72 63 5c 6d 65 6d 32 2e 63 0a 0a 6d 65 6d 33 2e rc\mem2.c..mem3. d0e0: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 6d lo:.$(TOP)\src\m
d0f0: 65 6d 33 2e 63 20 24 28 48 44 52 29 0a 09 24 28  em3.c $(HDR)..$(
d100: 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52  LTCOMPILE) $(COR d110: 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 E_COMPILE_OPTS) d120: 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65 -c$(TOP)\src\me
d130: 6d 33 2e 63 0a 0a 6d 65 6d 35 2e 6c 6f 3a 09 24  m3.c..mem5.lo:.$d140: 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d 35 2e 63 (TOP)\src\mem5.c d150: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d$(HDR)..$(LTCOM d160: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d PILE)$(CORE_COM
d170: 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28  PILE_OPTS) -c $( d180: 54 4f 50 29 5c 73 72 63 5c 6d 65 6d 35 2e 63 0a TOP)\src\mem5.c. d190: 0a 6d 65 6d 64 62 2e 6c 6f 3a 09 24 28 54 4f 50 .memdb.lo:.$(TOP
d1a0: 29 5c 73 72 63 5c 6d 65 6d 64 62 2e 63 20 24 28  )\src\memdb.c $( d1b0: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c HDR)..$(LTCOMPIL
d1c0: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c  E) $(CORE_COMPIL d1d0: 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 E_OPTS) -c$(TOP
d1e0: 29 5c 73 72 63 5c 6d 65 6d 64 62 2e 63 0a 0a 6d  )\src\memdb.c..m
d1f0: 65 6d 6a 6f 75 72 6e 61 6c 2e 6c 6f 3a 09 24 28  emjournal.lo:.$( d200: 54 4f 50 29 5c 73 72 63 5c 6d 65 6d 6a 6f 75 72 TOP)\src\memjour d210: 6e 61 6c 2e 63 20 24 28 48 44 52 29 0a 09 24 28 nal.c$(HDR)..$( d220: 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 LTCOMPILE)$(COR
d230: 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20  E_COMPILE_OPTS)
d240: 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65  -c $(TOP)\src\me d250: 6d 6a 6f 75 72 6e 61 6c 2e 63 0a 0a 6d 75 74 65 mjournal.c..mute d260: 78 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 x.lo:.$(TOP)\src
d270: 5c 6d 75 74 65 78 2e 63 20 24 28 48 44 52 29 0a  \mutex.c $(HDR). d280: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 .$(LTCOMPILE) $( d290: 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 CORE_COMPILE_OPT d2a0: 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 S) -c$(TOP)\src
d2b0: 5c 6d 75 74 65 78 2e 63 0a 0a 6d 75 74 65 78 5f  \mutex.c..mutex_
d2c0: 6e 6f 6f 70 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c  noop.lo:.$(TOP)\ d2d0: 73 72 63 5c 6d 75 74 65 78 5f 6e 6f 6f 70 2e 63 src\mutex_noop.c d2e0: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d$(HDR)..$(LTCOM d2f0: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d PILE)$(CORE_COM
d300: 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28  PILE_OPTS) -c $( d310: 54 4f 50 29 5c 73 72 63 5c 6d 75 74 65 78 5f 6e TOP)\src\mutex_n d320: 6f 6f 70 2e 63 0a 0a 6d 75 74 65 78 5f 75 6e 69 oop.c..mutex_uni d330: 78 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 x.lo:.$(TOP)\src
d340: 5c 6d 75 74 65 78 5f 75 6e 69 78 2e 63 20 24 28  \mutex_unix.c $( d350: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c HDR)..$(LTCOMPIL
d360: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c  E) $(CORE_COMPIL d370: 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 E_OPTS) -c$(TOP
d380: 29 5c 73 72 63 5c 6d 75 74 65 78 5f 75 6e 69 78  )\src\mutex_unix
d390: 2e 63 0a 0a 6d 75 74 65 78 5f 77 33 32 2e 6c 6f  .c..mutex_w32.lo
d3a0: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 6d 75 74  :.$(TOP)\src\mut d3b0: 65 78 5f 77 33 32 2e 63 20 24 28 48 44 52 29 0a ex_w32.c$(HDR).
d3c0: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28  .$(LTCOMPILE)$(
d3d0: 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54  CORE_COMPILE_OPT
d3e0: 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63  S) -c $(TOP)\src d3f0: 5c 6d 75 74 65 78 5f 77 33 32 2e 63 0a 0a 6e 6f \mutex_w32.c..no d400: 74 69 66 79 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c tify.lo:.$(TOP)\
d410: 73 72 63 5c 6e 6f 74 69 66 79 2e 63 20 24 28 48  src\notify.c $(H d420: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 DR)..$(LTCOMPILE
d430: 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45  ) $(CORE_COMPILE d440: 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 _OPTS) -c$(TOP)
d450: 5c 73 72 63 5c 6e 6f 74 69 66 79 2e 63 0a 0a 70  \src\notify.c..p
d460: 61 67 65 72 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c  ager.lo:.$(TOP)\ d470: 73 72 63 5c 70 61 67 65 72 2e 63 20 24 28 48 44 src\pager.c$(HD
d480: 52 29 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 61  R) $(TOP)\src\pa d490: 67 65 72 2e 68 0a 09 24 28 4c 54 43 4f 4d 50 49 ger.h..$(LTCOMPI
d4a0: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49  LE) $(CORE_COMPI d4b0: 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f LE_OPTS) -c$(TO
d4c0: 50 29 5c 73 72 63 5c 70 61 67 65 72 2e 63 0a 0a  P)\src\pager.c..
d4d0: 70 63 61 63 68 65 2e 6c 6f 3a 09 24 28 54 4f 50  pcache.lo:.$(TOP d4e0: 29 5c 73 72 63 5c 70 63 61 63 68 65 2e 63 20 24 )\src\pcache.c$
d4f0: 28 48 44 52 29 20 24 28 54 4f 50 29 5c 73 72 63  (HDR) $(TOP)\src d500: 5c 70 63 61 63 68 65 2e 68 0a 09 24 28 4c 54 43 \pcache.h..$(LTC
d510: 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43  OMPILE) $(CORE_C d520: 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 OMPILE_OPTS) -c d530: 24 28 54 4f 50 29 5c 73 72 63 5c 70 63 61 63 68$(TOP)\src\pcach
d540: 65 2e 63 0a 0a 70 63 61 63 68 65 31 2e 6c 6f 3a  e.c..pcache1.lo:
d550: 09 24 28 54 4f 50 29 5c 73 72 63 5c 70 63 61 63  .$(TOP)\src\pcac d560: 68 65 31 2e 63 20 24 28 48 44 52 29 20 24 28 54 he1.c$(HDR) $(T d570: 4f 50 29 5c 73 72 63 5c 70 63 61 63 68 65 2e 68 OP)\src\pcache.h d580: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 ..$(LTCOMPILE) $d590: 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 (CORE_COMPILE_OP d5a0: 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 TS) -c$(TOP)\sr
d5b0: 63 5c 70 63 61 63 68 65 31 2e 63 0a 0a 6f 73 2e  c\pcache1.c..os.
d5c0: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 6f  lo:.$(TOP)\src\o d5d0: 73 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 s.c$(HDR)..$(LT d5e0: 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f COMPILE)$(CORE_
d5f0: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63  COMPILE_OPTS) -c
d600: 20 24 28 54 4f 50 29 5c 73 72 63 5c 6f 73 2e 63   $(TOP)\src\os.c d610: 0a 0a 6f 73 5f 75 6e 69 78 2e 6c 6f 3a 09 24 28 ..os_unix.lo:.$(
d620: 54 4f 50 29 5c 73 72 63 5c 6f 73 5f 75 6e 69 78  TOP)\src\os_unix
d630: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43  .c $(HDR)..$(LTC
d640: 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43  OMPILE) $(CORE_C d650: 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 OMPILE_OPTS) -c d660: 24 28 54 4f 50 29 5c 73 72 63 5c 6f 73 5f 75 6e$(TOP)\src\os_un
d670: 69 78 2e 63 0a 0a 6f 73 5f 77 69 6e 2e 6c 6f 3a  ix.c..os_win.lo:
d680: 09 24 28 54 4f 50 29 5c 73 72 63 5c 6f 73 5f 77  .$(TOP)\src\os_w d690: 69 6e 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c in.c$(HDR)..$(L d6a0: 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 TCOMPILE)$(CORE
d6b0: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d  _COMPILE_OPTS) -
d6c0: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 6f 73 5f  c $(TOP)\src\os_ d6d0: 77 69 6e 2e 63 0a 0a 70 72 61 67 6d 61 2e 6c 6f win.c..pragma.lo d6e0: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 70 72 61 :.$(TOP)\src\pra
d6f0: 67 6d 61 2e 63 20 24 28 48 44 52 29 0a 09 24 28  gma.c $(HDR)..$(
d700: 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52  LTCOMPILE) $(COR d710: 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 E_COMPILE_OPTS) d720: 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 72 -c$(TOP)\src\pr
d730: 61 67 6d 61 2e 63 0a 0a 70 72 65 70 61 72 65 2e  agma.c..prepare.
d740: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 70  lo:.$(TOP)\src\p d750: 72 65 70 61 72 65 2e 63 20 24 28 48 44 52 29 0a repare.c$(HDR).
d760: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28  .$(LTCOMPILE)$(
d770: 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54  CORE_COMPILE_OPT
d780: 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63  S) -c $(TOP)\src d790: 5c 70 72 65 70 61 72 65 2e 63 0a 0a 70 72 69 6e \prepare.c..prin d7a0: 74 66 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 tf.lo:.$(TOP)\sr
d7b0: 63 5c 70 72 69 6e 74 66 2e 63 20 24 28 48 44 52  c\printf.c $(HDR d7c0: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 )..$(LTCOMPILE)
d7d0: 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f  $(CORE_COMPILE_O d7e0: 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 PTS) -c$(TOP)\s
d7f0: 72 63 5c 70 72 69 6e 74 66 2e 63 0a 0a 72 61 6e  rc\printf.c..ran
d800: 64 6f 6d 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73  dom.lo:.$(TOP)\s d810: 72 63 5c 72 61 6e 64 6f 6d 2e 63 20 24 28 48 44 rc\random.c$(HD
d820: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  R)..$(LTCOMPILE) d830: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f$(CORE_COMPILE_
d840: 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c  OPTS) -c $(TOP)\ d850: 73 72 63 5c 72 61 6e 64 6f 6d 2e 63 0a 0a 72 65 src\random.c..re d860: 73 6f 6c 76 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 solve.lo:.$(TOP)
d870: 5c 73 72 63 5c 72 65 73 6f 6c 76 65 2e 63 20 24  \src\resolve.c $d880: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 (HDR)..$(LTCOMPI
d890: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49  LE) $(CORE_COMPI d8a0: 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f LE_OPTS) -c$(TO
d8b0: 50 29 5c 73 72 63 5c 72 65 73 6f 6c 76 65 2e 63  P)\src\resolve.c
d8c0: 0a 0a 72 6f 77 73 65 74 2e 6c 6f 3a 09 24 28 54  ..rowset.lo:.$(T d8d0: 4f 50 29 5c 73 72 63 5c 72 6f 77 73 65 74 2e 63 OP)\src\rowset.c d8e0: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d$(HDR)..$(LTCOM d8f0: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d PILE)$(CORE_COM
d900: 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28  PILE_OPTS) -c $( d910: 54 4f 50 29 5c 73 72 63 5c 72 6f 77 73 65 74 2e TOP)\src\rowset. d920: 63 0a 0a 73 65 6c 65 63 74 2e 6c 6f 3a 09 24 28 c..select.lo:.$(
d930: 54 4f 50 29 5c 73 72 63 5c 73 65 6c 65 63 74 2e  TOP)\src\select.
d940: 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f  c $(HDR)..$(LTCO
d950: 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f  MPILE) $(CORE_CO d960: 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 MPILE_OPTS) -c$
d970: 28 54 4f 50 29 5c 73 72 63 5c 73 65 6c 65 63 74  (TOP)\src\select
d980: 2e 63 0a 0a 73 74 61 74 75 73 2e 6c 6f 3a 09 24  .c..status.lo:.$d990: 28 54 4f 50 29 5c 73 72 63 5c 73 74 61 74 75 73 (TOP)\src\status d9a0: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 .c$(HDR)..$(LTC d9b0: 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 OMPILE)$(CORE_C
d9c0: 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20  OMPILE_OPTS) -c
d9d0: 24 28 54 4f 50 29 5c 73 72 63 5c 73 74 61 74 75  $(TOP)\src\statu d9e0: 73 2e 63 0a 0a 74 61 62 6c 65 2e 6c 6f 3a 09 24 s.c..table.lo:.$
d9f0: 28 54 4f 50 29 5c 73 72 63 5c 74 61 62 6c 65 2e  (TOP)\src\table.
da00: 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f  c $(HDR)..$(LTCO
da10: 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f  MPILE) $(CORE_CO da20: 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 MPILE_OPTS) -c$
da30: 28 54 4f 50 29 5c 73 72 63 5c 74 61 62 6c 65 2e  (TOP)\src\table.
da40: 63 0a 0a 74 68 72 65 61 64 73 2e 6c 6f 3a 09 24  c..threads.lo:.$da50: 28 54 4f 50 29 5c 73 72 63 5c 74 68 72 65 61 64 (TOP)\src\thread da60: 73 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 s.c$(HDR)..$(LT da70: 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f COMPILE)$(CORE_
da80: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63  COMPILE_OPTS) -c
da90: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 68 72 65   $(TOP)\src\thre daa0: 61 64 73 2e 63 0a 0a 74 6f 6b 65 6e 69 7a 65 2e ads.c..tokenize. dab0: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 74 lo:.$(TOP)\src\t
dac0: 6f 6b 65 6e 69 7a 65 2e 63 20 6b 65 79 77 6f 72  okenize.c keywor
dad0: 64 68 61 73 68 2e 68 20 24 28 48 44 52 29 0a 09  dhash.h $(HDR).. dae0: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43$(LTCOMPILE) $(C daf0: 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 ORE_COMPILE_OPTS db00: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c ) -c$(TOP)\src\
db10: 74 6f 6b 65 6e 69 7a 65 2e 63 0a 0a 74 72 65 65  tokenize.c..tree
db20: 76 69 65 77 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c  view.lo:.$(TOP)\ db30: 73 72 63 5c 74 72 65 65 76 69 65 77 2e 63 20 24 src\treeview.c$
db40: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  (HDR)..$(LTCOMPI db50: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 LE)$(CORE_COMPI
db60: 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f  LE_OPTS) -c $(TO db70: 50 29 5c 73 72 63 5c 74 72 65 65 76 69 65 77 2e P)\src\treeview. db80: 63 0a 0a 74 72 69 67 67 65 72 2e 6c 6f 3a 09 24 c..trigger.lo:.$
db90: 28 54 4f 50 29 5c 73 72 63 5c 74 72 69 67 67 65  (TOP)\src\trigge
dba0: 72 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54  r.c $(HDR)..$(LT
dbb0: 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f  COMPILE) $(CORE_ dbc0: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 COMPILE_OPTS) -c dbd0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 72 69 67$(TOP)\src\trig
dbe0: 67 65 72 2e 63 0a 0a 75 70 64 61 74 65 2e 6c 6f  ger.c..update.lo
dbf0: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 75 70 64  :.$(TOP)\src\upd dc00: 61 74 65 2e 63 20 24 28 48 44 52 29 0a 09 24 28 ate.c$(HDR)..$( dc10: 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 LTCOMPILE)$(COR
dc20: 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20  E_COMPILE_OPTS)
dc30: 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 75 70  -c $(TOP)\src\up dc40: 64 61 74 65 2e 63 0a 0a 75 70 73 65 72 74 2e 6c date.c..upsert.l dc50: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 75 70 o:.$(TOP)\src\up
dc60: 73 65 72 74 2e 63 20 24 28 48 44 52 29 0a 09 24  sert.c $(HDR)..$
dc70: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f  (LTCOMPILE) $(CO dc80: 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 RE_COMPILE_OPTS) dc90: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 75 -c$(TOP)\src\u
dca0: 70 73 65 72 74 2e 63 0a 0a 75 74 66 2e 6c 6f 3a  psert.c..utf.lo:
dcb0: 09 24 28 54 4f 50 29 5c 73 72 63 5c 75 74 66 2e  .$(TOP)\src\utf. dcc0: 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f c$(HDR)..$(LTCO dcd0: 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f MPILE)$(CORE_CO
dce0: 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24  MPILE_OPTS) -c $dcf0: 28 54 4f 50 29 5c 73 72 63 5c 75 74 66 2e 63 0a (TOP)\src\utf.c. dd00: 0a 75 74 69 6c 2e 6c 6f 3a 09 24 28 54 4f 50 29 .util.lo:.$(TOP)
dd10: 5c 73 72 63 5c 75 74 69 6c 2e 63 20 24 28 48 44  \src\util.c $(HD dd20: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 R)..$(LTCOMPILE)
dd30: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f   $(CORE_COMPILE_ dd40: 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c OPTS) -c$(TOP)\
dd50: 73 72 63 5c 75 74 69 6c 2e 63 0a 0a 76 61 63 75  src\util.c..vacu
dd60: 75 6d 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72  um.lo:.$(TOP)\sr dd70: 63 5c 76 61 63 75 75 6d 2e 63 20 24 28 48 44 52 c\vacuum.c$(HDR
dd80: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20  )..$(LTCOMPILE) dd90: 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f$(CORE_COMPILE_O
dda0: 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73  PTS) -c $(TOP)\s ddb0: 72 63 5c 76 61 63 75 75 6d 2e 63 0a 0a 76 64 62 rc\vacuum.c..vdb ddc0: 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 e.lo:.$(TOP)\src
ddd0: 5c 76 64 62 65 2e 63 20 24 28 48 44 52 29 0a 09  \vdbe.c $(HDR).. dde0: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43$(LTCOMPILE) $(C ddf0: 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 ORE_COMPILE_OPTS de00: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c ) -c$(TOP)\src\
de10: 76 64 62 65 2e 63 0a 0a 76 64 62 65 61 70 69 2e  vdbe.c..vdbeapi.
de20: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 76  lo:.$(TOP)\src\v de30: 64 62 65 61 70 69 2e 63 20 24 28 48 44 52 29 0a dbeapi.c$(HDR).
de40: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28  .$(LTCOMPILE)$(
de50: 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54  CORE_COMPILE_OPT
de60: 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63  S) -c $(TOP)\src de70: 5c 76 64 62 65 61 70 69 2e 63 0a 0a 76 64 62 65 \vdbeapi.c..vdbe de80: 61 75 78 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 aux.lo:.$(TOP)\s
de90: 72 63 5c 76 64 62 65 61 75 78 2e 63 20 24 28 48  rc\vdbeaux.c $(H dea0: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 DR)..$(LTCOMPILE
deb0: 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45  ) $(CORE_COMPILE dec0: 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 _OPTS) -c$(TOP)
ded0: 5c 73 72 63 5c 76 64 62 65 61 75 78 2e 63 0a 0a  \src\vdbeaux.c..
dee0: 76 64 62 65 62 6c 6f 62 2e 6c 6f 3a 09 24 28 54  vdbeblob.lo:.$(T def0: 4f 50 29 5c 73 72 63 5c 76 64 62 65 62 6c 6f 62 OP)\src\vdbeblob df00: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 .c$(HDR)..$(LTC df10: 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 OMPILE)$(CORE_C
df20: 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20  OMPILE_OPTS) -c
df30: 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 62  $(TOP)\src\vdbeb df40: 6c 6f 62 2e 63 0a 0a 76 64 62 65 6d 65 6d 2e 6c lob.c..vdbemem.l df50: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 o:.$(TOP)\src\vd
df60: 62 65 6d 65 6d 2e 63 20 24 28 48 44 52 29 0a 09  bemem.c $(HDR).. df70: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43$(LTCOMPILE) $(C df80: 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 ORE_COMPILE_OPTS df90: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c ) -c$(TOP)\src\
dfa0: 76 64 62 65 6d 65 6d 2e 63 0a 0a 76 64 62 65 73  vdbemem.c..vdbes
dfb0: 6f 72 74 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73  ort.lo:.$(TOP)\s dfc0: 72 63 5c 76 64 62 65 73 6f 72 74 2e 63 20 24 28 rc\vdbesort.c$(
dfd0: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c  HDR)..$(LTCOMPIL dfe0: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c E)$(CORE_COMPIL
dff0: 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50  E_OPTS) -c $(TOP e000: 29 5c 73 72 63 5c 76 64 62 65 73 6f 72 74 2e 63 )\src\vdbesort.c e010: 0a 0a 76 64 62 65 74 72 61 63 65 2e 6c 6f 3a 09 ..vdbetrace.lo:. e020: 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 74$(TOP)\src\vdbet
e030: 72 61 63 65 2e 63 20 24 28 48 44 52 29 0a 09 24  race.c $(HDR)..$
e040: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f  (LTCOMPILE) $(CO e050: 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 RE_COMPILE_OPTS) e060: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 -c$(TOP)\src\v
e070: 64 62 65 74 72 61 63 65 2e 63 0a 0a 76 74 61 62  dbetrace.c..vtab
e080: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c  .lo:.$(TOP)\src\ e090: 76 74 61 62 2e 63 20 24 28 48 44 52 29 0a 09 24 vtab.c$(HDR)..$e0a0: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f (LTCOMPILE)$(CO
e0b0: 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29  RE_COMPILE_OPTS)
e0c0: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 76   -c $(TOP)\src\v e0d0: 74 61 62 2e 63 0a 0a 77 61 6c 2e 6c 6f 3a 09 24 tab.c..wal.lo:.$
e0e0: 28 54 4f 50 29 5c 73 72 63 5c 77 61 6c 2e 63 20  (TOP)\src\wal.c
e0f0: 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  $(HDR)..$(LTCOMP
e100: 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50  ILE) $(CORE_COMP e110: 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 ILE_OPTS) -c$(T
e120: 4f 50 29 5c 73 72 63 5c 77 61 6c 2e 63 0a 0a 77  OP)\src\wal.c..w
e130: 61 6c 6b 65 72 2e 6c 6f 3a 09 24 28 54 4f 50 29  alker.lo:.$(TOP) e140: 5c 73 72 63 5c 77 61 6c 6b 65 72 2e 63 20 24 28 \src\walker.c$(
e150: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c  HDR)..$(LTCOMPIL e160: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c E)$(CORE_COMPIL
e170: 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50  E_OPTS) -c $(TOP e180: 29 5c 73 72 63 5c 77 61 6c 6b 65 72 2e 63 0a 0a )\src\walker.c.. e190: 77 68 65 72 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 where.lo:.$(TOP)
e1a0: 5c 73 72 63 5c 77 68 65 72 65 2e 63 20 24 28 48  \src\where.c $(H e1b0: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 DR)..$(LTCOMPILE
e1c0: 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45  ) $(CORE_COMPILE e1d0: 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 _OPTS) -c$(TOP)
e1e0: 5c 73 72 63 5c 77 68 65 72 65 2e 63 0a 0a 77 68  \src\where.c..wh
e1f0: 65 72 65 63 6f 64 65 2e 6c 6f 3a 09 24 28 54 4f  erecode.lo:.$(TO e200: 50 29 5c 73 72 63 5c 77 68 65 72 65 63 6f 64 65 P)\src\wherecode e210: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 .c$(HDR)..$(LTC e220: 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 OMPILE)$(CORE_C
e230: 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20  OMPILE_OPTS) -c
e240: 24 28 54 4f 50 29 5c 73 72 63 5c 77 68 65 72 65  $(TOP)\src\where e250: 63 6f 64 65 2e 63 0a 0a 77 68 65 72 65 65 78 70 code.c..whereexp e260: 72 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 r.lo:.$(TOP)\src
e270: 5c 77 68 65 72 65 65 78 70 72 2e 63 20 24 28 48  \whereexpr.c $(H e280: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 DR)..$(LTCOMPILE
e290: 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45  ) $(CORE_COMPILE e2a0: 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 _OPTS) -c$(TOP)
e2b0: 5c 73 72 63 5c 77 68 65 72 65 65 78 70 72 2e 63  \src\whereexpr.c
e2c0: 0a 0a 77 69 6e 64 6f 77 2e 6c 6f 3a 09 24 28 54  ..window.lo:.$(T e2d0: 4f 50 29 5c 73 72 63 5c 77 69 6e 64 6f 77 2e 63 OP)\src\window.c e2e0: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d$(HDR)..$(LTCOM e2f0: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d PILE)$(CORE_COM
e300: 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28  PILE_OPTS) -c $( e310: 54 4f 50 29 5c 73 72 63 5c 77 69 6e 64 6f 77 2e TOP)\src\window. e320: 63 0a 0a 74 63 6c 73 71 6c 69 74 65 2e 6c 6f 3a c..tclsqlite.lo: e330: 09 24 28 54 4f 50 29 5c 73 72 63 5c 74 63 6c 73 .$(TOP)\src\tcls
e340: 71 6c 69 74 65 2e 63 20 24 28 48 44 52 29 20 24  qlite.c $(HDR)$
e350: 28 53 51 4c 49 54 45 5f 54 43 4c 5f 44 45 50 29  (SQLITE_TCL_DEP)
e360: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24  ..$(LTCOMPILE)$
e370: 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 55 53 45 5f  (NO_WARN) -DUSE_
e380: 54 43 4c 5f 53 54 55 42 53 3d 31 20 2d 44 42 55  TCL_STUBS=1 -DBU
e390: 49 4c 44 5f 73 71 6c 69 74 65 20 2d 49 24 28 54  ILD_sqlite -I$(T e3a0: 43 4c 49 4e 43 44 49 52 29 20 2d 63 20 24 28 54 CLINCDIR) -c$(T
e3b0: 4f 50 29 5c 73 72 63 5c 74 63 6c 73 71 6c 69 74  OP)\src\tclsqlit
e3c0: 65 2e 63 0a 0a 74 63 6c 73 71 6c 69 74 65 2d 73  e.c..tclsqlite-s
e3d0: 68 65 6c 6c 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c  hell.lo:.$(TOP)\ e3e0: 73 72 63 5c 74 63 6c 73 71 6c 69 74 65 2e 63 20 src\tclsqlite.c e3f0: 24 28 48 44 52 29 20 24 28 53 51 4c 49 54 45 5f$(HDR) $(SQLITE_ e400: 54 43 4c 5f 44 45 50 29 0a 09 24 28 4c 54 43 4f TCL_DEP)..$(LTCO
e410: 4d 50 49 4c 45 29 20 24 28 4e 4f 5f 57 41 52 4e  MPILE) $(NO_WARN e420: 29 20 2d 44 54 43 4c 53 48 20 2d 44 42 55 49 4c ) -DTCLSH -DBUIL e430: 44 5f 73 71 6c 69 74 65 20 2d 49 24 28 54 43 4c D_sqlite -I$(TCL
e440: 49 4e 43 44 49 52 29 20 2d 63 20 24 28 54 4f 50  INCDIR) -c $(TOP e450: 29 5c 73 72 63 5c 74 63 6c 73 71 6c 69 74 65 2e )\src\tclsqlite. e460: 63 0a 0a 74 63 6c 73 71 6c 69 74 65 33 2e 65 78 c..tclsqlite3.ex e470: 65 3a 09 74 63 6c 73 71 6c 69 74 65 2d 73 68 65 e:.tclsqlite-she e480: 6c 6c 2e 6c 6f 20 24 28 53 51 4c 49 54 45 33 43 ll.lo$(SQLITE3C
e490: 29 20 24 28 53 51 4c 49 54 45 33 48 29 20 24 28  ) $(SQLITE3H)$(
e4a0: 4c 49 42 52 45 53 4f 42 4a 53 29 0a 09 24 28 4c  LIBRESOBJS)..$(L e4b0: 54 4c 49 4e 4b 29 20 24 28 53 51 4c 49 54 45 33 TLINK)$(SQLITE3
e4c0: 43 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41  C) /link $(LDFLA e4d0: 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 GS)$(LTLINKOPTS
e4e0: 29 20 24 28 54 43 4c 4c 49 42 50 41 54 48 53 29  ) $(TCLLIBPATHS) e4f0: 20 24 28 4c 54 4c 49 42 50 41 54 48 53 29 20 2f$(LTLIBPATHS) /
e500: 4f 55 54 3a 24 40 20 74 63 6c 73 71 6c 69 74 65  OUT:$@ tclsqlite e510: 2d 73 68 65 6c 6c 2e 6c 6f 20 24 28 4c 49 42 52 -shell.lo$(LIBR
e520: 45 53 4f 42 4a 53 29 20 24 28 54 43 4c 4c 49 42  ESOBJS) $(TCLLIB e530: 53 29 20 24 28 4c 54 4c 49 42 53 29 20 24 28 54 S)$(LTLIBS) $(T e540: 4c 49 42 53 29 0a 0a 23 20 52 75 6c 65 73 20 74 LIBS)..# Rules t e550: 6f 20 62 75 69 6c 64 20 6f 70 63 6f 64 65 73 2e o build opcodes. e560: 63 20 61 6e 64 20 6f 70 63 6f 64 65 73 2e 68 0a c and opcodes.h. e570: 23 0a 6f 70 63 6f 64 65 73 2e 63 3a 09 6f 70 63 #.opcodes.c:.opc e580: 6f 64 65 73 2e 68 20 24 28 54 4f 50 29 5c 74 6f odes.h$(TOP)\to
e590: 6f 6c 5c 6d 6b 6f 70 63 6f 64 65 63 2e 74 63 6c  ol\mkopcodec.tcl
e5a0: 0a 09 24 28 54 43 4c 53 48 5f 43 4d 44 29 20 24  ..$(TCLSH_CMD)$
e5b0: 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6d 6b 6f 70 63  (TOP)\tool\mkopc
e5c0: 6f 64 65 63 2e 74 63 6c 20 6f 70 63 6f 64 65 73  odec.tcl opcodes
e5d0: 2e 68 20 3e 20 6f 70 63 6f 64 65 73 2e 63 0a 0a  .h > opcodes.c..
e5e0: 6f 70 63 6f 64 65 73 2e 68 3a 09 70 61 72 73 65  opcodes.h:.parse
e5f0: 2e 68 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 64  .h $(TOP)\src\vd e600: 62 65 2e 63 20 24 28 54 4f 50 29 5c 74 6f 6f 6c be.c$(TOP)\tool
e610: 5c 6d 6b 6f 70 63 6f 64 65 68 2e 74 63 6c 0a 09  \mkopcodeh.tcl..
e620: 74 79 70 65 20 70 61 72 73 65 2e 68 20 24 28 54  type parse.h $(T e630: 4f 50 29 5c 73 72 63 5c 76 64 62 65 2e 63 20 7c OP)\src\vdbe.c | e640: 20 24 28 54 43 4c 53 48 5f 43 4d 44 29 20 24 28$(TCLSH_CMD) $( e650: 54 4f 50 29 5c 74 6f 6f 6c 5c 6d 6b 6f 70 63 6f TOP)\tool\mkopco e660: 64 65 68 2e 74 63 6c 20 3e 20 6f 70 63 6f 64 65 deh.tcl > opcode e670: 73 2e 68 0a 0a 23 20 52 75 6c 65 73 20 74 6f 20 s.h..# Rules to e680: 62 75 69 6c 64 20 70 61 72 73 65 2e 63 20 61 6e build parse.c an e690: 64 20 70 61 72 73 65 2e 68 20 2d 20 74 68 65 20 d parse.h - the e6a0: 6f 75 74 70 75 74 73 20 6f 66 20 6c 65 6d 6f 6e outputs of lemon e6b0: 2e 0a 23 0a 70 61 72 73 65 2e 68 3a 09 70 61 72 ..#.parse.h:.par e6c0: 73 65 2e 63 0a 0a 70 61 72 73 65 2e 63 3a 09 24 se.c..parse.c:.$
e6d0: 28 54 4f 50 29 5c 73 72 63 5c 70 61 72 73 65 2e  (TOP)\src\parse.
e6e0: 79 20 6c 65 6d 6f 6e 2e 65 78 65 20 24 28 54 4f  y lemon.exe $(TO e6f0: 50 29 5c 74 6f 6f 6c 5c 61 64 64 6f 70 63 6f 64 P)\tool\addopcod e700: 65 73 2e 74 63 6c 0a 09 64 65 6c 20 2f 51 20 70 es.tcl..del /Q p e710: 61 72 73 65 2e 79 20 70 61 72 73 65 2e 68 20 70 arse.y parse.h p e720: 61 72 73 65 2e 68 2e 74 65 6d 70 20 32 3e 4e 55 arse.h.temp 2>NU e730: 4c 0a 09 63 6f 70 79 20 24 28 54 4f 50 29 5c 73 L..copy$(TOP)\s
e740: 72 63 5c 70 61 72 73 65 2e 79 20 2e 0a 09 2e 5c  rc\parse.y ....\
e750: 6c 65 6d 6f 6e 2e 65 78 65 20 24 28 52 45 51 5f  lemon.exe $(REQ_ e760: 46 45 41 54 55 52 45 5f 46 4c 41 47 53 29 20 24 FEATURE_FLAGS)$
e770: 28 4f 50 54 5f 46 45 41 54 55 52 45 5f 46 4c 41  (OPT_FEATURE_FLA
e780: 47 53 29 20 24 28 45 58 54 5f 46 45 41 54 55 52  GS) $(EXT_FEATUR e790: 45 5f 46 4c 41 47 53 29 20 24 28 4f 50 54 53 29 E_FLAGS)$(OPTS)
e7a0: 20 70 61 72 73 65 2e 79 0a 09 6d 6f 76 65 20 70   parse.y..move p
e7b0: 61 72 73 65 2e 68 20 70 61 72 73 65 2e 68 2e 74  arse.h parse.h.t
e7c0: 65 6d 70 0a 09 24 28 54 43 4c 53 48 5f 43 4d 44  emp..$(TCLSH_CMD e7d0: 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 61 64 )$(TOP)\tool\ad
e7e0: 64 6f 70 63 6f 64 65 73 2e 74 63 6c 20 70 61 72  dopcodes.tcl par
e7f0: 73 65 2e 68 2e 74 65 6d 70 20 3e 20 70 61 72 73  se.h.temp > pars
e800: 65 2e 68 0a 0a 24 28 53 51 4c 49 54 45 33 48 29  e.h..$(SQLITE3H) e810: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 73 71 6c :.$(TOP)\src\sql
e820: 69 74 65 2e 68 2e 69 6e 20 24 28 54 4f 50 29 5c  ite.h.in $(TOP)\ e830: 6d 61 6e 69 66 65 73 74 20 6d 6b 73 6f 75 72 63 manifest mksourc e840: 65 69 64 2e 65 78 65 20 24 28 54 4f 50 29 5c 56 eid.exe$(TOP)\V
e850: 45 52 53 49 4f 4e 0a 09 24 28 54 43 4c 53 48 5f  ERSION..$(TCLSH_ e860: 43 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c CMD)$(TOP)\tool
e870: 5c 6d 6b 73 71 6c 69 74 65 33 68 2e 74 63 6c 20  \mksqlite3h.tcl
e880: 24 28 54 4f 50 3a 5c 3d 2f 29 20 3e 20 24 28 53  $(TOP:\=/) >$(S
e890: 51 4c 49 54 45 33 48 29 20 24 28 4d 4b 53 51 4c  QLITE3H) $(MKSQL e8a0: 49 54 45 33 48 5f 41 52 47 53 29 0a 0a 73 71 6c ITE3H_ARGS)..sql e8b0: 69 74 65 33 65 78 74 2e 68 3a 09 2e 74 61 72 67 ite3ext.h:..targ e8c0: 65 74 5f 73 6f 75 72 63 65 0a 21 49 46 20 24 28 et_source.!IF$(
e8d0: 55 53 45 5f 53 54 44 43 41 4c 4c 29 21 3d 30 20  USE_STDCALL)!=0
e8e0: 7c 7c 20 24 28 46 4f 52 5f 57 49 4e 31 30 29 21  || $(FOR_WIN10)! e8f0: 3d 30 0a 09 74 79 70 65 20 74 73 72 63 5c 73 71 =0..type tsrc\sq e900: 6c 69 74 65 33 65 78 74 2e 68 20 7c 20 24 28 54 lite3ext.h |$(T
e910: 43 4c 53 48 5f 43 4d 44 29 20 24 28 54 4f 50 29  CLSH_CMD) $(TOP) e920: 5c 74 6f 6f 6c 5c 72 65 70 6c 61 63 65 2e 74 63 \tool\replace.tc e930: 6c 20 72 65 67 73 75 62 20 22 5c 28 5c 2a 5c 29 l regsub "$$\*$$ e940: 22 20 22 28 53 51 4c 49 54 45 5f 43 41 4c 4c 42 " "(SQLITE_CALLB e950: 41 43 4b 20 2a 29 22 20 5c 0a 09 09 7c 20 24 28 ACK *)" \...|$(
e960: 54 43 4c 53 48 5f 43 4d 44 29 20 24 28 54 4f 50  TCLSH_CMD) $(TOP e970: 29 5c 74 6f 6f 6c 5c 72 65 70 6c 61 63 65 2e 74 )\tool\replace.t e980: 63 6c 20 72 65 67 73 75 62 20 22 5c 28 5c 2a 22 cl regsub "\(\*" e990: 20 22 28 53 51 4c 49 54 45 5f 41 50 49 43 41 4c "(SQLITE_APICAL e9a0: 4c 20 2a 22 20 3e 20 73 71 6c 69 74 65 33 65 78 L *" > sqlite3ex e9b0: 74 2e 68 0a 09 63 6f 70 79 20 2f 59 20 73 71 6c t.h..copy /Y sql e9c0: 69 74 65 33 65 78 74 2e 68 20 74 73 72 63 5c 73 ite3ext.h tsrc\s e9d0: 71 6c 69 74 65 33 65 78 74 2e 68 0a 21 45 4c 53 qlite3ext.h.!ELS e9e0: 45 0a 09 63 6f 70 79 20 2f 59 20 74 73 72 63 5c E..copy /Y tsrc\ e9f0: 73 71 6c 69 74 65 33 65 78 74 2e 68 20 73 71 6c sqlite3ext.h sql ea00: 69 74 65 33 65 78 74 2e 68 0a 21 45 4e 44 49 46 ite3ext.h.!ENDIF ea10: 0a 0a 6d 6b 6b 65 79 77 6f 72 64 68 61 73 68 2e ..mkkeywordhash. ea20: 65 78 65 3a 09 24 28 54 4f 50 29 5c 74 6f 6f 6c exe:.$(TOP)\tool
ea30: 5c 6d 6b 6b 65 79 77 6f 72 64 68 61 73 68 2e 63  \mkkeywordhash.c
ea40: 0a 09 24 28 42 43 43 29 20 24 28 4e 4f 5f 57 41  ..$(BCC)$(NO_WA
ea50: 52 4e 29 20 2d 46 65 24 40 20 24 28 52 45 51 5f  RN) -Fe$@$(REQ_
ea60: 46 45 41 54 55 52 45 5f 46 4c 41 47 53 29 20 24  FEATURE_FLAGS) $ea70: 28 4f 50 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 (OPT_FEATURE_FLA ea80: 47 53 29 20 24 28 45 58 54 5f 46 45 41 54 55 52 GS)$(EXT_FEATUR
ea90: 45 5f 46 4c 41 47 53 29 20 24 28 4f 50 54 53 29  E_FLAGS) $(OPTS) eaa0: 20 5c 0a 09 09 24 28 54 4f 50 29 5c 74 6f 6f 6c \...$(TOP)\tool
eab0: 5c 6d 6b 6b 65 79 77 6f 72 64 68 61 73 68 2e 63  \mkkeywordhash.c
eac0: 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 47 53   /link $(LDFLAGS ead0: 29 20 24 28 4e 4c 54 4c 49 4e 4b 4f 50 54 53 29 )$(NLTLINKOPTS)
eae0: 20 24 28 4e 4c 54 4c 49 42 50 41 54 48 53 29 0a   $(NLTLIBPATHS). eaf0: 0a 6b 65 79 77 6f 72 64 68 61 73 68 2e 68 3a 09 .keywordhash.h:. eb00: 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6d 6b 6b 65$(TOP)\tool\mkke
eb10: 79 77 6f 72 64 68 61 73 68 2e 63 20 6d 6b 6b 65  ywordhash.c mkke
eb20: 79 77 6f 72 64 68 61 73 68 2e 65 78 65 0a 09 2e  ywordhash.exe...
eb30: 5c 6d 6b 6b 65 79 77 6f 72 64 68 61 73 68 2e 65  \mkkeywordhash.e
eb40: 78 65 20 3e 20 6b 65 79 77 6f 72 64 68 61 73 68  xe > keywordhash
eb50: 2e 68 0a 0a 23 20 53 6f 75 72 63 65 20 66 69 6c  .h..# Source fil
eb60: 65 73 20 74 68 61 74 20 67 6f 20 69 6e 74 6f 20  es that go into
eb70: 6d 61 6b 69 6e 67 20 73 68 65 6c 6c 2e 63 0a 53  making shell.c.S
eb80: 48 45 4c 4c 5f 53 52 43 20 3d 20 5c 0a 09 24 28  HELL_SRC = \..$( eb90: 54 4f 50 29 5c 73 72 63 5c 73 68 65 6c 6c 2e 63 TOP)\src\shell.c eba0: 2e 69 6e 20 5c 0a 09 24 28 54 4f 50 29 5c 65 78 .in \..$(TOP)\ex
ebb0: 74 5c 6d 69 73 63 5c 61 70 70 65 6e 64 76 66 73  t\misc\appendvfs
ebc0: 2e 63 20 5c 0a 09 24 28 54 4f 50 29 5c 65 78 74  .c \..$(TOP)\ext ebd0: 5c 6d 69 73 63 5c 73 68 61 74 68 72 65 65 2e 63 \misc\shathree.c ebe0: 20 5c 0a 09 24 28 54 4f 50 29 5c 65 78 74 5c 6d \..$(TOP)\ext\m
ebf0: 69 73 63 5c 66 69 6c 65 69 6f 2e 63 20 5c 0a 09  isc\fileio.c \..
ec00: 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c  $(TOP)\ext\misc\ ec10: 63 6f 6d 70 6c 65 74 69 6f 6e 2e 63 20 5c 0a 09 completion.c \.. ec20: 24 28 54 4f 50 29 5c 65 78 74 5c 65 78 70 65 72$(TOP)\ext\exper
ec30: 74 5c 73 71 6c 69 74 65 33 65 78 70 65 72 74 2e  t\sqlite3expert.
ec40: 63 20 5c 0a 09 24 28 54 4f 50 29 5c 65 78 74 5c  c \..$(TOP)\ext\ ec50: 65 78 70 65 72 74 5c 73 71 6c 69 74 65 33 65 78 expert\sqlite3ex ec60: 70 65 72 74 2e 68 20 5c 0a 09 24 28 54 4f 50 29 pert.h \..$(TOP)
ec70: 5c 73 72 63 5c 74 65 73 74 5f 77 69 6e 64 69 72  \src\test_windir
ec80: 65 6e 74 2e 63 0a 0a 23 20 49 66 20 75 73 65 20  ent.c..# If use
ec90: 6f 66 20 7a 6c 69 62 20 69 73 20 65 6e 61 62 6c  of zlib is enabl
eca0: 65 64 2c 20 61 64 64 20 74 68 65 20 22 7a 69 70  ed, add the "zip
ecb0: 66 69 6c 65 2e 63 22 20 73 6f 75 72 63 65 20 66  file.c" source f
ecc0: 69 6c 65 2e 0a 23 0a 21 49 46 20 24 28 55 53 45  ile..#.!IF $(USE ecd0: 5f 5a 4c 49 42 29 21 3d 30 0a 53 48 45 4c 4c 5f _ZLIB)!=0.SHELL_ ece0: 53 52 43 20 3d 20 24 28 53 48 45 4c 4c 5f 53 52 SRC =$(SHELL_SR
ecf0: 43 29 20 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69  C) $(TOP)\ext\mi ed00: 73 63 5c 73 71 6c 61 72 2e 63 0a 53 48 45 4c 4c sc\sqlar.c.SHELL ed10: 5f 53 52 43 20 3d 20 24 28 53 48 45 4c 4c 5f 53 _SRC =$(SHELL_S
ed20: 52 43 29 20 24 28 54 4f 50 29 5c 65 78 74 5c 6d  RC) $(TOP)\ext\m ed30: 69 73 63 5c 7a 69 70 66 69 6c 65 2e 63 0a 21 45 isc\zipfile.c.!E ed40: 4e 44 49 46 0a 0a 73 68 65 6c 6c 2e 63 3a 09 24 NDIF..shell.c:.$
ed50: 28 53 48 45 4c 4c 5f 53 52 43 29 20 24 28 54 4f  (SHELL_SRC) $(TO ed60: 50 29 5c 74 6f 6f 6c 5c 6d 6b 73 68 65 6c 6c 63 P)\tool\mkshellc ed70: 2e 74 63 6c 0a 09 24 28 54 43 4c 53 48 5f 43 4d .tcl..$(TCLSH_CM
ed80: 44 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6d  D) $(TOP)\tool\m ed90: 6b 73 68 65 6c 6c 63 2e 74 63 6c 20 3e 20 73 68 kshellc.tcl > sh eda0: 65 6c 6c 2e 63 0a 0a 7a 6c 69 62 3a 0a 09 70 75 ell.c..zlib:..pu edb0: 73 68 64 20 24 28 5a 4c 49 42 44 49 52 29 20 26 shd$(ZLIBDIR) &
edc0: 26 20 24 28 4d 41 4b 45 29 20 2f 66 20 77 69 6e  & $(MAKE) /f win edd0: 33 32 5c 4d 61 6b 65 66 69 6c 65 2e 6d 73 63 20 32\Makefile.msc ede0: 63 6c 65 61 6e 20 24 28 5a 4c 49 42 4c 49 42 29 clean$(ZLIBLIB)
edf0: 20 26 26 20 70 6f 70 64 0a 0a 23 20 52 75 6c 65   && popd..# Rule
ee00: 73 20 74 6f 20 62 75 69 6c 64 20 74 68 65 20 65  s to build the e
ee10: 78 74 65 6e 73 69 6f 6e 20 6f 62 6a 65 63 74 73  xtension objects
ee20: 2e 0a 23 0a 69 63 75 2e 6c 6f 3a 09 24 28 54 4f  ..#.icu.lo:.$(TO ee30: 50 29 5c 65 78 74 5c 69 63 75 5c 69 63 75 2e 63 P)\ext\icu\icu.c ee40: 20 24 28 48 44 52 29 20 24 28 45 58 54 48 44 52$(HDR) $(EXTHDR ee50: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 )..$(LTCOMPILE)
ee60: 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f  $(CORE_COMPILE_O ee70: 50 54 53 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 PTS)$(NO_WARN)
ee80: 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63  -DSQLITE_CORE -c
ee90: 20 24 28 54 4f 50 29 5c 65 78 74 5c 69 63 75 5c   $(TOP)\ext\icu\ eea0: 69 63 75 2e 63 0a 0a 66 74 73 32 2e 6c 6f 3a 09 icu.c..fts2.lo:. eeb0: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c$(TOP)\ext\fts2\
eec0: 66 74 73 32 2e 63 20 24 28 48 44 52 29 20 24 28  fts2.c $(HDR)$(
eed0: 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d  EXTHDR)..$(LTCOM eee0: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d PILE)$(CORE_COM
eef0: 50 49 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f  PILE_OPTS) $(NO_ ef00: 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43 WARN) -DSQLITE_C ef10: 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 ORE -c$(TOP)\ex
ef20: 74 5c 66 74 73 32 5c 66 74 73 32 2e 63 0a 0a 66  t\fts2\fts2.c..f
ef30: 74 73 32 5f 68 61 73 68 2e 6c 6f 3a 09 24 28 54  ts2_hash.lo:.$(T ef40: 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 OP)\ext\fts2\fts ef50: 32 5f 68 61 73 68 2e 63 20 24 28 48 44 52 29 20 2_hash.c$(HDR)
ef60: 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43  $(EXTHDR)..$(LTC
ef70: 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43  OMPILE) $(CORE_C ef80: 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24 28 4e OMPILE_OPTS)$(N
ef90: 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 45  O_WARN) -DSQLITE
efa0: 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 5c  _CORE -c $(TOP)\ efb0: 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f 68 61 ext\fts2\fts2_ha efc0: 73 68 2e 63 0a 0a 66 74 73 32 5f 69 63 75 2e 6c sh.c..fts2_icu.l efd0: 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 o:.$(TOP)\ext\ft
efe0: 73 32 5c 66 74 73 32 5f 69 63 75 2e 63 20 24 28  s2\fts2_icu.c $( eff0: 48 44 52 29 20 24 28 45 58 54 48 44 52 29 0a 09 HDR)$(EXTHDR)..
f000: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43  $(LTCOMPILE)$(C
f010: 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53  ORE_COMPILE_OPTS
f020: 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53  ) $(NO_WARN) -DS f030: 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 QLITE_CORE -c$(
f040: 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 74  TOP)\ext\fts2\ft
f050: 73 32 5f 69 63 75 2e 63 0a 0a 66 74 73 32 5f 70  s2_icu.c..fts2_p
f060: 6f 72 74 65 72 2e 6c 6f 3a 09 24 28 54 4f 50 29  orter.lo:.$(TOP) f070: 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f 70 \ext\fts2\fts2_p f080: 6f 72 74 65 72 2e 63 20 24 28 48 44 52 29 20 24 orter.c$(HDR) $f090: 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f (EXTHDR)..$(LTCO
f0a0: 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f  MPILE) $(CORE_CO f0b0: 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f MPILE_OPTS)$(NO
f0c0: 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f  _WARN) -DSQLITE_
f0d0: 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65  CORE -c $(TOP)\e f0e0: 78 74 5c 66 74 73 32 5c 66 74 73 32 5f 70 6f 72 xt\fts2\fts2_por f0f0: 74 65 72 2e 63 0a 0a 66 74 73 32 5f 74 6f 6b 65 ter.c..fts2_toke f100: 6e 69 7a 65 72 2e 6c 6f 3a 09 24 28 54 4f 50 29 nizer.lo:.$(TOP)
f110: 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f 74  \ext\fts2\fts2_t
f120: 6f 6b 65 6e 69 7a 65 72 2e 63 20 24 28 48 44 52  okenizer.c $(HDR f130: 29 20 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c )$(EXTHDR)..$(L f140: 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 TCOMPILE)$(CORE
f150: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24  _COMPILE_OPTS) $f160: 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 (NO_WARN) -DSQLI f170: 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 TE_CORE -c$(TOP
f180: 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f  )\ext\fts2\fts2_
f190: 74 6f 6b 65 6e 69 7a 65 72 2e 63 0a 0a 66 74 73  tokenizer.c..fts
f1a0: 32 5f 74 6f 6b 65 6e 69 7a 65 72 31 2e 6c 6f 3a  2_tokenizer1.lo:
f1b0: 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32  .$(TOP)\ext\fts2 f1c0: 5c 66 74 73 32 5f 74 6f 6b 65 6e 69 7a 65 72 31 \fts2_tokenizer1 f1d0: 2e 63 20 24 28 48 44 52 29 20 24 28 45 58 54 48 .c$(HDR) $(EXTH f1e0: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 DR)..$(LTCOMPILE
f1f0: 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45  ) $(CORE_COMPILE f200: 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57 41 52 4e _OPTS)$(NO_WARN
f210: 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 20  ) -DSQLITE_CORE
f220: 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74  -c $(TOP)\ext\ft f230: 73 32 5c 66 74 73 32 5f 74 6f 6b 65 6e 69 7a 65 s2\fts2_tokenize f240: 72 31 2e 63 0a 0a 66 74 73 33 2e 6c 6f 3a 09 24 r1.c..fts3.lo:.$
f250: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66  (TOP)\ext\fts3\f
f260: 74 73 33 2e 63 20 24 28 48 44 52 29 20 24 28 45  ts3.c $(HDR)$(E
f270: 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  XTHDR)..$(LTCOMP f280: 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 ILE)$(CORE_COMP
f290: 49 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57  ILE_OPTS) $(NO_W f2a0: 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f ARN) -DSQLITE_CO f2b0: 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 RE -c$(TOP)\ext
f2c0: 5c 66 74 73 33 5c 66 74 73 33 2e 63 0a 0a 66 74  \fts3\fts3.c..ft
f2d0: 73 33 5f 61 75 78 2e 6c 6f 3a 09 24 28 54 4f 50  s3_aux.lo:.$(TOP f2e0: 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f )\ext\fts3\fts3_ f2f0: 61 75 78 2e 63 20 24 28 48 44 52 29 20 24 28 45 aux.c$(HDR) $(E f300: 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 XTHDR)..$(LTCOMP
f310: 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50  ILE) $(CORE_COMP f320: 49 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57 ILE_OPTS)$(NO_W
f330: 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f  ARN) -DSQLITE_CO
f340: 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74  RE -c $(TOP)\ext f350: 5c 66 74 73 33 5c 66 74 73 33 5f 61 75 78 2e 63 \fts3\fts3_aux.c f360: 0a 0a 66 74 73 33 5f 65 78 70 72 2e 6c 6f 3a 09 ..fts3_expr.lo:. f370: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c$(TOP)\ext\fts3\
f380: 66 74 73 33 5f 65 78 70 72 2e 63 20 24 28 48 44  fts3_expr.c $(HD f390: 52 29 20 24 28 45 58 54 48 44 52 29 0a 09 24 28 R)$(EXTHDR)..$( f3a0: 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 LTCOMPILE)$(COR
f3b0: 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20  E_COMPILE_OPTS)
f3c0: 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c  $(NO_WARN) -DSQL f3d0: 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f ITE_CORE -c$(TO
f3e0: 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33  P)\ext\fts3\fts3
f3f0: 5f 65 78 70 72 2e 63 0a 0a 66 74 73 33 5f 68 61  _expr.c..fts3_ha
f400: 73 68 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78  sh.lo:.$(TOP)\ex f410: 74 5c 66 74 73 33 5c 66 74 73 33 5f 68 61 73 68 t\fts3\fts3_hash f420: 2e 63 20 24 28 48 44 52 29 20 24 28 45 58 54 48 .c$(HDR) $(EXTH f430: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 DR)..$(LTCOMPILE
f440: 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45  ) $(CORE_COMPILE f450: 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57 41 52 4e _OPTS)$(NO_WARN
f460: 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 20  ) -DSQLITE_CORE
f470: 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74  -c $(TOP)\ext\ft f480: 73 33 5c 66 74 73 33 5f 68 61 73 68 2e 63 0a 0a s3\fts3_hash.c.. f490: 66 74 73 33 5f 69 63 75 2e 6c 6f 3a 09 24 28 54 fts3_icu.lo:.$(T
f4a0: 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73  OP)\ext\fts3\fts
f4b0: 33 5f 69 63 75 2e 63 20 24 28 48 44 52 29 20 24  3_icu.c $(HDR)$
f4c0: 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f  (EXTHDR)..$(LTCO f4d0: 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f MPILE)$(CORE_CO
f4e0: 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f  MPILE_OPTS) $(NO f4f0: 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f _WARN) -DSQLITE_ f500: 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 CORE -c$(TOP)\e
f510: 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 69 63 75  xt\fts3\fts3_icu
f520: 2e 63 0a 0a 66 74 73 33 5f 73 6e 69 70 70 65 74  .c..fts3_snippet
f530: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c  .lo:.$(TOP)\ext\ f540: 66 74 73 33 5c 66 74 73 33 5f 73 6e 69 70 70 65 fts3\fts3_snippe f550: 74 2e 63 20 24 28 48 44 52 29 20 24 28 45 58 54 t.c$(HDR) $(EXT f560: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c HDR)..$(LTCOMPIL
f570: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c  E) $(CORE_COMPIL f580: 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57 41 52 E_OPTS)$(NO_WAR
f590: 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45  N) -DSQLITE_CORE
f5a0: 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 66   -c $(TOP)\ext\f f5b0: 74 73 33 5c 66 74 73 33 5f 73 6e 69 70 70 65 74 ts3\fts3_snippet f5c0: 2e 63 0a 0a 66 74 73 33 5f 70 6f 72 74 65 72 2e .c..fts3_porter. f5d0: 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 lo:.$(TOP)\ext\f
f5e0: 74 73 33 5c 66 74 73 33 5f 70 6f 72 74 65 72 2e  ts3\fts3_porter.
f5f0: 63 20 24 28 48 44 52 29 20 24 28 45 58 54 48 44  c $(HDR)$(EXTHD
f600: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  R)..$(LTCOMPILE) f610: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f$(CORE_COMPILE_
f620: 4f 50 54 53 29 20 24 28 4e 4f 5f 57 41 52 4e 29  OPTS) $(NO_WARN) f630: 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d -DSQLITE_CORE - f640: 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 c$(TOP)\ext\fts
f650: 33 5c 66 74 73 33 5f 70 6f 72 74 65 72 2e 63 0a  3\fts3_porter.c.
f660: 0a 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 72 2e  .fts3_tokenizer.
f670: 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66  lo:.$(TOP)\ext\f f680: 74 73 33 5c 66 74 73 33 5f 74 6f 6b 65 6e 69 7a ts3\fts3_tokeniz f690: 65 72 2e 63 20 24 28 48 44 52 29 20 24 28 45 58 er.c$(HDR) $(EX f6a0: 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 THDR)..$(LTCOMPI
f6b0: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49  LE) $(CORE_COMPI f6c0: 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57 41 LE_OPTS)$(NO_WA
f6d0: 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52  RN) -DSQLITE_COR
f6e0: 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c  E -c $(TOP)\ext\ f6f0: 66 74 73 33 5c 66 74 73 33 5f 74 6f 6b 65 6e 69 fts3\fts3_tokeni f700: 7a 65 72 2e 63 0a 0a 66 74 73 33 5f 74 6f 6b 65 zer.c..fts3_toke f710: 6e 69 7a 65 72 31 2e 6c 6f 3a 09 24 28 54 4f 50 nizer1.lo:.$(TOP
f720: 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f  )\ext\fts3\fts3_
f730: 74 6f 6b 65 6e 69 7a 65 72 31 2e 63 20 24 28 48  tokenizer1.c $(H f740: 44 52 29 20 24 28 45 58 54 48 44 52 29 0a 09 24 DR)$(EXTHDR)..$f750: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f (LTCOMPILE)$(CO
f760: 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29  RE_COMPILE_OPTS)
f770: 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51   $(NO_WARN) -DSQ f780: 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 LITE_CORE -c$(T
f790: 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73  OP)\ext\fts3\fts
f7a0: 33 5f 74 6f 6b 65 6e 69 7a 65 72 31 2e 63 0a 0a  3_tokenizer1.c..
f7b0: 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 5f 76 74  fts3_tokenize_vt
f7c0: 61 62 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78  ab.lo:.$(TOP)\ex f7d0: 74 5c 66 74 73 33 5c 66 74 73 33 5f 74 6f 6b 65 t\fts3\fts3_toke f7e0: 6e 69 7a 65 5f 76 74 61 62 2e 63 20 24 28 48 44 nize_vtab.c$(HD
f7f0: 52 29 20 24 28 45 58 54 48 44 52 29 0a 09 24 28  R) $(EXTHDR)..$(
f800: 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52  LTCOMPILE) $(COR f810: 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 E_COMPILE_OPTS) f820: 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c$(NO_WARN) -DSQL
f830: 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f  ITE_CORE -c $(TO f840: 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 P)\ext\fts3\fts3 f850: 5f 74 6f 6b 65 6e 69 7a 65 5f 76 74 61 62 2e 63 _tokenize_vtab.c f860: 0a 0a 66 74 73 33 5f 75 6e 69 63 6f 64 65 2e 6c ..fts3_unicode.l f870: 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 o:.$(TOP)\ext\ft
f880: 73 33 5c 66 74 73 33 5f 75 6e 69 63 6f 64 65 2e  s3\fts3_unicode.
f890: 63 20 24 28 48 44 52 29 20 24 28 45 58 54 48 44  c $(HDR)$(EXTHD
f8a0: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  R)..$(LTCOMPILE) f8b0: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f$(CORE_COMPILE_
f8c0: 4f 50 54 53 29 20 24 28 4e 4f 5f 57 41 52 4e 29  OPTS) $(NO_WARN) f8d0: 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d -DSQLITE_CORE - f8e0: 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 c$(TOP)\ext\fts
f8f0: 33 5c 66 74 73 33 5f 75 6e 69 63 6f 64 65 2e 63  3\fts3_unicode.c
f900: 0a 0a 66 74 73 33 5f 75 6e 69 63 6f 64 65 32 2e  ..fts3_unicode2.
f910: 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66  lo:.$(TOP)\ext\f f920: 74 73 33 5c 66 74 73 33 5f 75 6e 69 63 6f 64 65 ts3\fts3_unicode f930: 32 2e 63 20 24 28 48 44 52 29 20 24 28 45 58 54 2.c$(HDR) $(EXT f940: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c HDR)..$(LTCOMPIL
f950: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c  E) $(CORE_COMPIL f960: 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57 41 52 E_OPTS)$(NO_WAR
f970: 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45  N) -DSQLITE_CORE
f980: 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 66   -c $(TOP)\ext\f f990: 74 73 33 5c 66 74 73 33 5f 75 6e 69 63 6f 64 65 ts3\fts3_unicode f9a0: 32 2e 63 0a 0a 66 74 73 33 5f 77 72 69 74 65 2e 2.c..fts3_write. f9b0: 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 lo:.$(TOP)\ext\f
f9c0: 74 73 33 5c 66 74 73 33 5f 77 72 69 74 65 2e 63  ts3\fts3_write.c
f9d0: 20 24 28 48 44 52 29 20 24 28 45 58 54 48 44 52   $(HDR)$(EXTHDR
f9e0: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20  )..$(LTCOMPILE) f9f0: 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f$(CORE_COMPILE_O
fa00: 50 54 53 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20  PTS) $(NO_WARN) fa10: 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63 -DSQLITE_CORE -c fa20: 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33$(TOP)\ext\fts3
fa30: 5c 66 74 73 33 5f 77 72 69 74 65 2e 63 0a 0a 6a  \fts3_write.c..j
fa40: 73 6f 6e 31 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c  son1.lo:.$(TOP)\ fa50: 65 78 74 5c 6d 69 73 63 5c 6a 73 6f 6e 31 2e 63 ext\misc\json1.c fa60: 20 24 28 48 44 52 29 20 24 28 45 58 54 48 44 52$(HDR) $(EXTHDR fa70: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 )..$(LTCOMPILE)
fa80: 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f  $(CORE_COMPILE_O fa90: 50 54 53 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 PTS)$(NO_WARN)
faa0: 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63  -DSQLITE_CORE -c
fab0: 20 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63   $(TOP)\ext\misc fac0: 5c 6a 73 6f 6e 31 2e 63 0a 0a 73 74 6d 74 2e 6c \json1.c..stmt.l fad0: 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69 o:.$(TOP)\ext\mi
fae0: 73 63 5c 73 74 6d 74 2e 63 20 24 28 48 44 52 29  sc\stmt.c $(HDR) faf0: 20 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54$(EXTHDR)..$(LT fb00: 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f COMPILE)$(CORE_
fb10: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24 28  COMPILE_OPTS) $( fb20: 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 NO_WARN) -DSQLIT fb30: 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 E_CORE -c$(TOP)
fb40: 5c 65 78 74 5c 6d 69 73 63 5c 73 74 6d 74 2e 63  \ext\misc\stmt.c
fb50: 0a 0a 72 74 72 65 65 2e 6c 6f 3a 09 24 28 54 4f  ..rtree.lo:.$(TO fb60: 50 29 5c 65 78 74 5c 72 74 72 65 65 5c 72 74 72 P)\ext\rtree\rtr fb70: 65 65 2e 63 20 24 28 48 44 52 29 20 24 28 45 58 ee.c$(HDR) $(EX fb80: 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 THDR)..$(LTCOMPI
fb90: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49  LE) $(CORE_COMPI fba0: 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57 41 LE_OPTS)$(NO_WA
fbb0: 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52  RN) -DSQLITE_COR
fbc0: 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c  E -c $(TOP)\ext\ fbd0: 72 74 72 65 65 5c 72 74 72 65 65 2e 63 0a 0a 73 rtree\rtree.c..s fbe0: 71 6c 69 74 65 33 73 65 73 73 69 6f 6e 2e 6c 6f qlite3session.lo fbf0: 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 73 65 73 :.$(TOP)\ext\ses
fc00: 73 69 6f 6e 5c 73 71 6c 69 74 65 33 73 65 73 73  sion\sqlite3sess
fc10: 69 6f 6e 2e 63 20 24 28 48 44 52 29 20 24 28 45  ion.c $(HDR)$(E
fc20: 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  XTHDR)..$(LTCOMP fc30: 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 ILE)$(CORE_COMP
fc40: 49 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57  ILE_OPTS) $(NO_W fc50: 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f ARN) -DSQLITE_CO fc60: 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 RE -c$(TOP)\ext
fc70: 5c 73 65 73 73 69 6f 6e 5c 73 71 6c 69 74 65 33  \session\sqlite3
fc80: 73 65 73 73 69 6f 6e 2e 63 0a 0a 23 20 46 54 53  session.c..# FTS
fc90: 35 20 74 68 69 6e 67 73 0a 23 0a 46 54 53 35 5f  5 things.#.FTS5_
fca0: 53 52 43 20 3d 20 5c 0a 20 20 20 24 28 54 4f 50  SRC = \.   $(TOP fcb0: 29 5c 65 78 74 5c 66 74 73 35 5c 66 74 73 35 2e )\ext\fts5\fts5. fcc0: 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65 78 h \.$(TOP)\ex
fcd0: 74 5c 66 74 73 35 5c 66 74 73 35 49 6e 74 2e 68  t\fts5\fts5Int.h
fce0: 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65 78 74   \.   $(TOP)\ext fcf0: 5c 66 74 73 35 5c 66 74 73 35 5f 61 75 78 2e 63 \fts5\fts5_aux.c fd00: 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65 78 74 \.$(TOP)\ext
fd10: 5c 66 74 73 35 5c 66 74 73 35 5f 62 75 66 66 65  \fts5\fts5_buffe
fd20: 72 2e 63 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c  r.c \.   $(TOP)\ fd30: 65 78 74 5c 66 74 73 35 5c 66 74 73 35 5f 6d 61 ext\fts5\fts5_ma fd40: 69 6e 2e 63 20 5c 0a 20 20 20 24 28 54 4f 50 29 in.c \.$(TOP)
fd50: 5c 65 78 74 5c 66 74 73 35 5c 66 74 73 35 5f 63  \ext\fts5\fts5_c
fd60: 6f 6e 66 69 67 2e 63 20 5c 0a 20 20 20 24 28 54  onfig.c \.   $(T fd70: 4f 50 29 5c 65 78 74 5c 66 74 73 35 5c 66 74 73 OP)\ext\fts5\fts fd80: 35 5f 65 78 70 72 2e 63 20 5c 0a 20 20 20 24 28 5_expr.c \.$(
fd90: 54 4f 50 29 5c 65 78 74 5c 66 74 73 35 5c 66 74  TOP)\ext\fts5\ft
fda0: 73 35 5f 68 61 73 68 2e 63 20 5c 0a 20 20 20 24  s5_hash.c \.   $fdb0: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 35 5c 66 (TOP)\ext\fts5\f fdc0: 74 73 35 5f 69 6e 64 65 78 2e 63 20 5c 0a 20 20 ts5_index.c \. fdd0: 20 66 74 73 35 70 61 72 73 65 2e 63 20 66 74 73 fts5parse.c fts fde0: 35 70 61 72 73 65 2e 68 20 5c 0a 20 20 20 24 28 5parse.h \.$(
fdf0: 54 4f 50 29 5c 65 78 74 5c 66 74 73 35 5c 66 74  TOP)\ext\fts5\ft
fe00: 73 35 5f 73 74 6f 72 61 67 65 2e 63 20 5c 0a 20  s5_storage.c \.
fe10: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73    $(TOP)\ext\fts fe20: 35 5c 66 74 73 35 5f 74 6f 6b 65 6e 69 7a 65 2e 5\fts5_tokenize. fe30: 63 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65 78 c \.$(TOP)\ex
fe40: 74 5c 66 74 73 35 5c 66 74 73 35 5f 75 6e 69 63  t\fts5\fts5_unic
fe50: 6f 64 65 32 2e 63 20 5c 0a 20 20 20 24 28 54 4f  ode2.c \.   $(TO fe60: 50 29 5c 65 78 74 5c 66 74 73 35 5c 66 74 73 35 P)\ext\fts5\fts5 fe70: 5f 76 61 72 69 6e 74 2e 63 20 5c 0a 20 20 20 24 _varint.c \.$
fe80: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 35 5c 66  (TOP)\ext\fts5\f
fe90: 74 73 35 5f 76 6f 63 61 62 2e 63 0a 0a 4c 53 4d  ts5_vocab.c..LSM
fea0: 31 5f 53 52 43 20 3d 20 5c 0a 20 20 20 24 28 54  1_SRC = \.   $(T feb0: 4f 50 29 5c 65 78 74 5c 6c 73 6d 31 5c 6c 73 6d OP)\ext\lsm1\lsm fec0: 2e 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65 .h \.$(TOP)\e
fed0: 78 74 5c 6c 73 6d 31 5c 6c 73 6d 49 6e 74 2e 68  xt\lsm1\lsmInt.h
fee0: 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65 78 74   \.   $(TOP)\ext fef0: 5c 6c 73 6d 31 5c 6c 73 6d 5f 63 6b 70 74 2e 63 \lsm1\lsm_ckpt.c ff00: 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65 78 74 \.$(TOP)\ext
ff10: 5c 6c 73 6d 31 5c 6c 73 6d 5f 66 69 6c 65 2e 63  \lsm1\lsm_file.c
ff20: 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65 78 74   \.   $(TOP)\ext ff30: 5c 6c 73 6d 31 5c 6c 73 6d 5f 6c 6f 67 2e 63 20 \lsm1\lsm_log.c ff40: 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65 78 74 5c \.$(TOP)\ext\
ff50: 6c 73 6d 31 5c 6c 73 6d 5f 6d 61 69 6e 2e 63 20  lsm1\lsm_main.c
ff60: 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65 78 74 5c  \.   $(TOP)\ext\ ff70: 6c 73 6d 31 5c 6c 73 6d 5f 6d 65 6d 2e 63 20 5c lsm1\lsm_mem.c \ ff80: 0a 20 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 6c .$(TOP)\ext\l
ff90: 73 6d 31 5c 6c 73 6d 5f 6d 75 74 65 78 2e 63 20  sm1\lsm_mutex.c
ffa0: 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65 78 74 5c  \.   $(TOP)\ext\ ffb0: 6c 73 6d 31 5c 6c 73 6d 5f 73 68 61 72 65 64 2e lsm1\lsm_shared. ffc0: 63 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65 78 c \.$(TOP)\ex
ffd0: 74 5c 6c 73 6d 31 5c 6c 73 6d 5f 73 6f 72 74 65  t\lsm1\lsm_sorte
ffe0: 64 2e 63 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c  d.c \.   $(TOP)\ fff0: 65 78 74 5c 6c 73 6d 31 5c 6c 73 6d 5f 73 74 72 ext\lsm1\lsm_str 10000 2e 63 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65 .c \.$(TOP)\e
10010 78 74 5c 6c 73 6d 31 5c 6c 73 6d 5f 74 72 65 65  xt\lsm1\lsm_tree
10020 2e 63 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65  .c \.   $(TOP)\e 10030 78 74 5c 6c 73 6d 31 5c 6c 73 6d 5f 75 6e 69 78 xt\lsm1\lsm_unix 10040 2e 63 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65 .c \.$(TOP)\e
10050 78 74 5c 6c 73 6d 31 5c 6c 73 6d 5f 76 61 72 69  xt\lsm1\lsm_vari
10060 6e 74 2e 63 20 5c 0a 20 20 20 24 28 54 4f 50 29  nt.c \.   $(TOP) 10070 5c 65 78 74 5c 6c 73 6d 31 5c 6c 73 6d 5f 76 74 \ext\lsm1\lsm_vt 10080 61 62 2e 63 20 5c 0a 20 20 20 24 28 54 4f 50 29 ab.c \.$(TOP)
10090 5c 65 78 74 5c 6c 73 6d 31 5c 6c 73 6d 5f 77 69  \ext\lsm1\lsm_wi
100a0 6e 33 32 2e 63 0a 0a 66 74 73 35 70 61 72 73 65  n32.c..fts5parse
100b0 2e 63 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66  .c:.$(TOP)\ext\f 100c0 74 73 35 5c 66 74 73 35 70 61 72 73 65 2e 79 20 ts5\fts5parse.y 100d0 6c 65 6d 6f 6e 2e 65 78 65 0a 09 63 6f 70 79 20 lemon.exe..copy 100e0 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 35 5c$(TOP)\ext\fts5\
100f0 66 74 73 35 70 61 72 73 65 2e 79 20 2e 0a 09 64  fts5parse.y ...d
10100 65 6c 20 2f 51 20 66 74 73 35 70 61 72 73 65 2e  el /Q fts5parse.
10110 68 20 32 3e 4e 55 4c 0a 09 2e 5c 6c 65 6d 6f 6e  h 2>NUL...\lemon
10120 2e 65 78 65 20 24 28 52 45 51 5f 46 45 41 54 55  .exe $(REQ_FEATU 10130 52 45 5f 46 4c 41 47 53 29 20 24 28 4f 50 54 5f RE_FLAGS)$(OPT_
10140 46 45 41 54 55 52 45 5f 46 4c 41 47 53 29 20 24  FEATURE_FLAGS) $10150 28 45 58 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 (EXT_FEATURE_FLA 10160 47 53 29 20 24 28 4f 50 54 53 29 20 66 74 73 35 GS)$(OPTS) fts5
10170 70 61 72 73 65 2e 79 0a 0a 66 74 73 35 70 61 72  parse.y..fts5par
10180 73 65 2e 68 3a 09 66 74 73 35 70 61 72 73 65 2e  se.h:.fts5parse.
10190 63 0a 0a 66 74 73 35 2e 63 3a 09 24 28 46 54 53  c..fts5.c:.$(FTS 101a0 35 5f 53 52 43 29 0a 09 24 28 54 43 4c 53 48 5f 5_SRC)..$(TCLSH_
101b0 43 4d 44 29 20 24 28 54 4f 50 29 5c 65 78 74 5c  CMD) $(TOP)\ext\ 101c0 66 74 73 35 5c 74 6f 6f 6c 5c 6d 6b 66 74 73 35 fts5\tool\mkfts5 101d0 63 2e 74 63 6c 0a 09 63 6f 70 79 20 24 28 54 4f c.tcl..copy$(TO
101e0 50 29 5c 65 78 74 5c 66 74 73 35 5c 66 74 73 35  P)\ext\fts5\fts5
101f0 2e 68 20 2e 0a 0a 6c 73 6d 31 2e 63 3a 09 24 28  .h ...lsm1.c:.$( 10200 4c 53 4d 31 5f 53 52 43 29 0a 09 24 28 54 43 4c LSM1_SRC)..$(TCL
10210 53 48 5f 43 4d 44 29 20 24 28 54 4f 50 29 5c 65  SH_CMD) $(TOP)\e 10220 78 74 5c 6c 73 6d 31 5c 74 6f 6f 6c 5c 6d 6b 6c xt\lsm1\tool\mkl 10230 73 6d 31 63 2e 74 63 6c 0a 09 63 6f 70 79 20 24 sm1c.tcl..copy$
10240 28 54 4f 50 29 5c 65 78 74 5c 6c 73 6d 31 5c 6c  (TOP)\ext\lsm1\l
10250 73 6d 2e 68 20 2e 0a 0a 66 74 73 35 2e 6c 6f 3a  sm.h ...fts5.lo:
10260 09 66 74 73 35 2e 63 20 24 28 48 44 52 29 20 24  .fts5.c $(HDR)$
10270 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f  (EXTHDR)..$(LTCO 10280 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f MPILE)$(CORE_CO
10290 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f  MPILE_OPTS) $(NO 102a0 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f _WARN) -DSQLITE_ 102b0 43 4f 52 45 20 2d 63 20 66 74 73 35 2e 63 0a 0a CORE -c fts5.c.. 102c0 66 74 73 35 5f 65 78 74 2e 6c 6f 3a 09 66 74 73 fts5_ext.lo:.fts 102d0 35 2e 63 20 24 28 48 44 52 29 20 24 28 45 58 54 5.c$(HDR) $(EXT 102e0 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c HDR)..$(LTCOMPIL
102f0 45 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 63  E) $(NO_WARN) -c 10300 20 66 74 73 35 2e 63 0a 0a 66 74 73 35 2e 64 6c fts5.c..fts5.dl 10310 6c 3a 09 66 74 73 35 5f 65 78 74 2e 6c 6f 0a 09 l:.fts5_ext.lo.. 10320 24 28 4c 44 29 20 24 28 4c 44 46 4c 41 47 53 29$(LD) $(LDFLAGS) 10330 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 24$(LTLINKOPTS) $10340 28 4c 54 4c 49 42 50 41 54 48 53 29 20 2f 44 4c (LTLIBPATHS) /DL 10350 4c 20 2f 4f 55 54 3a 24 40 20 66 74 73 35 5f 65 L /OUT:$@ fts5_e
10360 78 74 2e 6c 6f 0a 0a 73 71 6c 69 74 65 33 72 62  xt.lo..sqlite3rb
10370 75 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74  u.lo:.$(TOP)\ext 10380 5c 72 62 75 5c 73 71 6c 69 74 65 33 72 62 75 2e \rbu\sqlite3rbu. 10390 63 20 24 28 48 44 52 29 20 24 28 45 58 54 48 44 c$(HDR) $(EXTHD 103a0 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 R)..$(LTCOMPILE)
103b0 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d   -DSQLITE_CORE -
103c0 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 72 62 75  c $(TOP)\ext\rbu 103d0 5c 73 71 6c 69 74 65 33 72 62 75 2e 63 0a 0a 23 \sqlite3rbu.c..# 103e0 20 52 75 6c 65 73 20 74 6f 20 62 75 69 6c 64 20 Rules to build 103f0 74 68 65 20 27 74 65 73 74 66 69 78 74 75 72 65 the 'testfixture 10400 27 20 61 70 70 6c 69 63 61 74 69 6f 6e 2e 0a 23 ' application..# 10410 0a 23 20 49 66 20 75 73 69 6e 67 20 74 68 65 20 .# If using the 10420 61 6d 61 6c 67 61 6d 61 74 69 6f 6e 2c 20 75 73 amalgamation, us 10430 65 20 73 71 6c 69 74 65 33 2e 63 20 64 69 72 65 e sqlite3.c dire 10440 63 74 6c 79 20 74 6f 20 62 75 69 6c 64 20 74 68 ctly to build th 10450 65 20 74 65 73 74 0a 23 20 66 69 78 74 75 72 65 e test.# fixture 10460 2e 20 20 4f 74 68 65 72 77 69 73 65 20 6c 69 6e . Otherwise lin 10470 6b 20 61 67 61 69 6e 73 74 20 6c 69 62 73 71 6c k against libsql 10480 69 74 65 33 2e 6c 69 62 2e 20 20 28 54 68 69 73 ite3.lib. (This 10490 20 64 69 73 74 69 6e 63 74 69 6f 6e 20 69 73 0a distinction is. 104a0 23 20 6e 65 63 65 73 73 61 72 79 20 62 65 63 61 # necessary beca 104b0 75 73 65 20 74 68 65 20 74 65 73 74 20 66 69 78 use the test fix 104c0 74 75 72 65 20 72 65 71 75 69 72 65 73 20 6e 6f ture requires no 104d0 6e 2d 41 50 49 20 73 79 6d 62 6f 6c 73 20 77 68 n-API symbols wh 104e0 69 63 68 20 61 72 65 0a 23 20 68 69 64 64 65 6e ich are.# hidden 104f0 20 77 68 65 6e 20 74 68 65 20 6c 69 62 72 61 72 when the librar 10500 79 20 69 73 20 62 75 69 6c 74 20 76 69 61 20 74 y is built via t 10510 68 65 20 61 6d 61 6c 67 61 6d 61 74 69 6f 6e 29 he amalgamation) 10520 2e 0a 23 0a 54 45 53 54 46 49 58 54 55 52 45 5f ..#.TESTFIXTURE_ 10530 46 4c 41 47 53 20 3d 20 2d 44 54 43 4c 53 48 5f FLAGS = -DTCLSH_ 10540 49 4e 49 54 5f 50 52 4f 43 3d 73 71 6c 69 74 65 INIT_PROC=sqlite 10550 33 54 65 73 74 49 6e 69 74 20 2d 44 53 51 4c 49 3TestInit -DSQLI 10560 54 45 5f 54 45 53 54 3d 31 20 2d 44 53 51 4c 49 TE_TEST=1 -DSQLI 10570 54 45 5f 43 52 41 53 48 5f 54 45 53 54 3d 31 0a TE_CRASH_TEST=1. 10580 54 45 53 54 46 49 58 54 55 52 45 5f 46 4c 41 47 TESTFIXTURE_FLAG 10590 53 20 3d 20 24 28 54 45 53 54 46 49 58 54 55 52 S =$(TESTFIXTUR
105a0 45 5f 46 4c 41 47 53 29 20 2d 44 53 51 4c 49 54  E_FLAGS) -DSQLIT
105b0 45 5f 53 45 52 56 45 52 3d 31 20 2d 44 53 51 4c  E_SERVER=1 -DSQL
105c0 49 54 45 5f 50 52 49 56 41 54 45 3d 22 22 0a 54  ITE_PRIVATE="".T
105d0 45 53 54 46 49 58 54 55 52 45 5f 46 4c 41 47 53  ESTFIXTURE_FLAGS
105e0 20 3d 20 24 28 54 45 53 54 46 49 58 54 55 52 45   = $(TESTFIXTURE 105f0 5f 46 4c 41 47 53 29 20 2d 44 53 51 4c 49 54 45 _FLAGS) -DSQLITE 10600 5f 43 4f 52 45 20 24 28 4e 4f 5f 57 41 52 4e 29 _CORE$(NO_WARN)
10610 0a 54 45 53 54 46 49 58 54 55 52 45 5f 46 4c 41  .TESTFIXTURE_FLA
10620 47 53 20 3d 20 24 28 54 45 53 54 46 49 58 54 55  GS = $(TESTFIXTU 10630 52 45 5f 46 4c 41 47 53 29 20 2d 44 53 51 4c 49 RE_FLAGS) -DSQLI 10640 54 45 5f 53 45 52 49 45 53 5f 43 4f 4e 53 54 52 TE_SERIES_CONSTR 10650 41 49 4e 54 5f 56 45 52 49 46 59 3d 31 0a 54 45 AINT_VERIFY=1.TE 10660 53 54 46 49 58 54 55 52 45 5f 46 4c 41 47 53 20 STFIXTURE_FLAGS 10670 3d 20 24 28 54 45 53 54 46 49 58 54 55 52 45 5f =$(TESTFIXTURE_
10680 46 4c 41 47 53 29 20 2d 44 53 51 4c 49 54 45 5f  FLAGS) -DSQLITE_
10690 44 45 46 41 55 4c 54 5f 50 41 47 45 5f 53 49 5a  DEFAULT_PAGE_SIZ
106a0 45 3d 31 30 32 34 0a 54 45 53 54 46 49 58 54 55  E=1024.TESTFIXTU
106b0 52 45 5f 46 4c 41 47 53 20 3d 20 24 28 54 45 53  RE_FLAGS = $(TES 106c0 54 46 49 58 54 55 52 45 5f 46 4c 41 47 53 29 20 TFIXTURE_FLAGS) 106d0 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f -DSQLITE_ENABLE_ 106e0 53 54 4d 54 56 54 41 42 3d 31 0a 54 45 53 54 46 STMTVTAB=1.TESTF 106f0 49 58 54 55 52 45 5f 46 4c 41 47 53 20 3d 20 24 IXTURE_FLAGS =$
10700 28 54 45 53 54 46 49 58 54 55 52 45 5f 46 4c 41  (TESTFIXTURE_FLA
10710 47 53 29 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41  GS) -DSQLITE_ENA
10720 42 4c 45 5f 44 42 50 41 47 45 5f 56 54 41 42 3d  BLE_DBPAGE_VTAB=
10730 31 0a 54 45 53 54 46 49 58 54 55 52 45 5f 46 4c  1.TESTFIXTURE_FL
10740 41 47 53 20 3d 20 24 28 54 45 53 54 46 49 58 54  AGS = $(TESTFIXT 10750 55 52 45 5f 46 4c 41 47 53 29 20 2d 44 53 51 4c URE_FLAGS) -DSQL 10760 49 54 45 5f 45 4e 41 42 4c 45 5f 4a 53 4f 4e 31 ITE_ENABLE_JSON1 10770 3d 31 0a 54 45 53 54 46 49 58 54 55 52 45 5f 46 =1.TESTFIXTURE_F 10780 4c 41 47 53 20 3d 20 24 28 54 45 53 54 46 49 58 LAGS =$(TESTFIX
10790 54 55 52 45 5f 46 4c 41 47 53 29 20 2d 44 53 51  TURE_FLAGS) -DSQ
107a0 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 44 45 53 45  LITE_ENABLE_DESE
107b0 52 49 41 4c 49 5a 45 3d 31 0a 54 45 53 54 46 49  RIALIZE=1.TESTFI
107c0 58 54 55 52 45 5f 46 4c 41 47 53 20 3d 20 24 28  XTURE_FLAGS = $( 107d0 54 45 53 54 46 49 58 54 55 52 45 5f 46 4c 41 47 TESTFIXTURE_FLAG 107e0 53 29 20 24 28 54 45 53 54 5f 43 43 4f 4e 56 5f S)$(TEST_CCONV_
107f0 4f 50 54 53 29 0a 0a 54 45 53 54 46 49 58 54 55  OPTS)..TESTFIXTU
10800 52 45 5f 53 52 43 30 20 3d 20 24 28 54 45 53 54  RE_SRC0 = $(TEST 10810 45 58 54 29 20 24 28 54 45 53 54 53 52 43 32 29 EXT)$(TESTSRC2)
10820 0a 54 45 53 54 46 49 58 54 55 52 45 5f 53 52 43  .TESTFIXTURE_SRC
10830 31 20 3d 20 24 28 54 45 53 54 45 58 54 29 20 24  1 = $(TESTEXT)$
10840 28 53 51 4c 49 54 45 33 43 29 0a 21 49 46 20 24  (SQLITE3C).!IF $10850 28 55 53 45 5f 41 4d 41 4c 47 41 4d 41 54 49 4f (USE_AMALGAMATIO 10860 4e 29 3d 3d 30 0a 54 45 53 54 46 49 58 54 55 52 N)==0.TESTFIXTUR 10870 45 5f 53 52 43 20 3d 20 24 28 54 45 53 54 53 52 E_SRC =$(TESTSR
10880 43 29 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 63  C) $(TOP)\src\tc 10890 6c 73 71 6c 69 74 65 2e 63 20 24 28 54 45 53 54 lsqlite.c$(TEST
108a0 46 49 58 54 55 52 45 5f 53 52 43 30 29 0a 21 45  FIXTURE_SRC0).!E
108b0 4c 53 45 0a 54 45 53 54 46 49 58 54 55 52 45 5f  LSE.TESTFIXTURE_
108c0 53 52 43 20 3d 20 24 28 54 45 53 54 53 52 43 29  SRC = $(TESTSRC) 108d0 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 63 6c 73$(TOP)\src\tcls
108e0 71 6c 69 74 65 2e 63 20 24 28 54 45 53 54 46 49  qlite.c $(TESTFI 108f0 58 54 55 52 45 5f 53 52 43 31 29 0a 21 45 4e 44 XTURE_SRC1).!END 10900 49 46 0a 0a 21 49 46 20 24 28 55 53 45 5f 53 54 IF..!IF$(USE_ST
10910 44 43 41 4c 4c 29 21 3d 30 20 7c 7c 20 24 28 46  DCALL)!=0 || $(F 10920 4f 52 5f 57 49 4e 31 30 29 21 3d 30 0a 73 71 6c OR_WIN10)!=0.sql 10930 69 74 65 5f 74 63 6c 44 65 63 6c 73 2e 68 3a 0a ite_tclDecls.h:. 10940 09 65 63 68 6f 20 23 69 66 6e 64 65 66 20 53 51 .echo #ifndef SQ 10950 4c 49 54 45 5f 54 43 4c 41 50 49 20 3e 20 24 28 LITE_TCLAPI >$(
10960 53 51 4c 49 54 45 54 43 4c 44 45 43 4c 53 48 29  SQLITETCLDECLSH)
10970 0a 09 65 63 68 6f 20 23 20 20 64 65 66 69 6e 65  ..echo #  define
10980 20 53 51 4c 49 54 45 5f 54 43 4c 41 50 49 20 3e   SQLITE_TCLAPI >
10990 3e 20 24 28 53 51 4c 49 54 45 54 43 4c 44 45 43  > $(SQLITETCLDEC 109a0 4c 53 48 29 0a 09 65 63 68 6f 20 23 65 6e 64 69 LSH)..echo #endi 109b0 66 20 3e 3e 20 24 28 53 51 4c 49 54 45 54 43 4c f >>$(SQLITETCL
109c0 44 45 43 4c 53 48 29 0a 09 74 79 70 65 20 22 24  DECLSH)..type "$109d0 28 54 43 4c 49 4e 43 44 49 52 29 5c 74 63 6c 44 (TCLINCDIR)\tclD 109e0 65 63 6c 73 2e 68 22 20 5c 0a 09 09 7c 20 24 28 ecls.h" \...|$(
109f0 54 43 4c 53 48 5f 43 4d 44 29 20 24 28 54 4f 50  TCLSH_CMD) $(TOP 10a00 29 5c 74 6f 6f 6c 5c 72 65 70 6c 61 63 65 2e 74 )\tool\replace.t 10a10 63 6c 20 72 65 67 73 75 62 20 22 5e 28 45 58 54 cl regsub "^(EXT 10a20 45 52 4e 28 3f 3a 20 43 4f 4e 53 54 5c 64 2b 3f ERN(?: CONST\d+? 10a30 29 3f 5c 73 2b 3f 5b 5e 5c 28 5d 2a 3f 5c 73 2b )?\s+?[^\(]*?\s+ 10a40 3f 29 54 63 6c 5f 22 20 22 5c 31 20 53 51 4c 49 ?)Tcl_" "\1 SQLI 10a50 54 45 5f 54 43 4c 41 50 49 20 54 63 6c 5f 22 20 TE_TCLAPI Tcl_" 10a60 5c 0a 09 09 7c 20 24 28 54 43 4c 53 48 5f 43 4d \...|$(TCLSH_CM
10a70 44 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 72  D) $(TOP)\tool\r 10a80 65 70 6c 61 63 65 2e 74 63 6c 20 72 65 67 73 75 eplace.tcl regsu 10a90 62 20 22 5e 28 45 58 54 45 52 4e 5c 73 2b 3f 28 b "^(EXTERN\s+?( 10aa0 3f 3a 76 6f 69 64 7c 56 4f 49 44 29 5c 73 2b 3f ?:void|VOID)\s+? 10ab0 29 54 63 6c 46 72 65 65 4f 62 6a 22 20 22 5c 31 )TclFreeObj" "\1 10ac0 20 53 51 4c 49 54 45 5f 54 43 4c 41 50 49 20 54 SQLITE_TCLAPI T 10ad0 63 6c 46 72 65 65 4f 62 6a 22 20 5c 0a 09 09 7c clFreeObj" \...| 10ae0 20 24 28 54 43 4c 53 48 5f 43 4d 44 29 20 24 28$(TCLSH_CMD) $( 10af0 54 4f 50 29 5c 74 6f 6f 6c 5c 72 65 70 6c 61 63 TOP)\tool\replac 10b00 65 2e 74 63 6c 20 72 65 67 73 75 62 20 22 5c 28 e.tcl regsub "\( 10b10 5c 2a 74 63 6c 5f 22 20 22 28 53 51 4c 49 54 45 \*tcl_" "(SQLITE 10b20 5f 54 43 4c 41 50 49 20 2a 74 63 6c 5f 22 20 5c _TCLAPI *tcl_" \ 10b30 0a 09 09 7c 20 24 28 54 43 4c 53 48 5f 43 4d 44 ...|$(TCLSH_CMD
10b40 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 72 65  ) $(TOP)\tool\re 10b50 70 6c 61 63 65 2e 74 63 6c 20 72 65 67 73 75 62 place.tcl regsub 10b60 20 22 5c 28 5c 2a 74 63 6c 46 72 65 65 4f 62 6a "\(\*tclFreeObj 10b70 22 20 22 28 53 51 4c 49 54 45 5f 54 43 4c 41 50 " "(SQLITE_TCLAP 10b80 49 20 2a 74 63 6c 46 72 65 65 4f 62 6a 22 20 5c I *tclFreeObj" \ 10b90 0a 09 09 7c 20 24 28 54 43 4c 53 48 5f 43 4d 44 ...|$(TCLSH_CMD
10ba0 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 72 65  ) $(TOP)\tool\re 10bb0 70 6c 61 63 65 2e 74 63 6c 20 72 65 67 73 75 62 place.tcl regsub 10bc0 20 22 5c 28 5c 2a 22 20 22 28 53 51 4c 49 54 45 "\(\*" "(SQLITE 10bd0 5f 54 43 4c 41 50 49 20 2a 22 20 3e 3e 20 24 28 _TCLAPI *" >>$(
10be0 53 51 4c 49 54 45 54 43 4c 44 45 43 4c 53 48 29  SQLITETCLDECLSH)
10bf0 0a 0a 73 71 6c 69 74 65 5f 74 63 6c 2e 68 3a 0a  ..sqlite_tcl.h:.
10c00 09 74 79 70 65 20 22 24 28 54 43 4c 49 4e 43 44  .type "$(TCLINCD 10c10 49 52 29 5c 74 63 6c 2e 68 22 20 7c 20 24 28 54 IR)\tcl.h" |$(T
10c20 43 4c 53 48 5f 43 4d 44 29 20 24 28 54 4f 50 29  CLSH_CMD) $(TOP) 10c30 5c 74 6f 6f 6c 5c 72 65 70 6c 61 63 65 2e 74 63 \tool\replace.tc 10c40 6c 20 65 78 61 63 74 20 74 63 6c 44 65 63 6c 73 l exact tclDecls 10c50 2e 68 20 73 71 6c 69 74 65 5f 74 63 6c 44 65 63 .h sqlite_tclDec 10c60 6c 73 2e 68 20 5c 0a 09 09 7c 20 24 28 54 43 4c ls.h \...|$(TCL
10c70 53 48 5f 43 4d 44 29 20 24 28 54 4f 50 29 5c 74  SH_CMD) $(TOP)\t 10c80 6f 6f 6c 5c 72 65 70 6c 61 63 65 2e 74 63 6c 20 ool\replace.tcl 10c90 72 65 67 73 75 62 20 22 74 79 70 65 64 65 66 20 regsub "typedef 10ca0 28 2e 2a 3f 29 5c 28 54 63 6c 5f 22 20 22 74 79 (.*?)\(Tcl_" "ty 10cb0 70 65 64 65 66 20 5c 31 20 28 53 51 4c 49 54 45 pedef \1 (SQLITE 10cc0 5f 54 43 4c 41 50 49 20 54 63 6c 5f 22 20 5c 0a _TCLAPI Tcl_" \. 10cd0 09 09 7c 20 24 28 54 43 4c 53 48 5f 43 4d 44 29 ..|$(TCLSH_CMD)
10ce0 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 72 65 70   $(TOP)\tool\rep 10cf0 6c 61 63 65 2e 74 63 6c 20 65 78 61 63 74 20 22 lace.tcl exact " 10d00 76 6f 69 64 20 28 2a 66 72 65 65 50 72 6f 63 29 void (*freeProc) 10d10 22 20 22 76 6f 69 64 20 28 53 51 4c 49 54 45 5f " "void (SQLITE_ 10d20 54 43 4c 41 50 49 20 2a 66 72 65 65 50 72 6f 63 TCLAPI *freeProc 10d30 29 22 20 5c 0a 09 09 7c 20 24 28 54 43 4c 53 48 )" \...|$(TCLSH
10d40 5f 43 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f 6f  _CMD) $(TOP)\too 10d50 6c 5c 72 65 70 6c 61 63 65 2e 74 63 6c 20 65 78 l\replace.tcl ex 10d60 61 63 74 20 22 54 63 6c 5f 48 61 73 68 45 6e 74 act "Tcl_HashEnt 10d70 72 79 20 2a 28 2a 66 69 6e 64 50 72 6f 63 29 22 ry *(*findProc)" 10d80 20 22 54 63 6c 5f 48 61 73 68 45 6e 74 72 79 20 "Tcl_HashEntry 10d90 2a 28 53 51 4c 49 54 45 5f 54 43 4c 41 50 49 20 *(SQLITE_TCLAPI 10da0 2a 66 69 6e 64 50 72 6f 63 29 22 20 5c 0a 09 09 *findProc)" \... 10db0 7c 20 24 28 54 43 4c 53 48 5f 43 4d 44 29 20 24 |$(TCLSH_CMD) $10dc0 28 54 4f 50 29 5c 74 6f 6f 6c 5c 72 65 70 6c 61 (TOP)\tool\repla 10dd0 63 65 2e 74 63 6c 20 65 78 61 63 74 20 22 54 63 ce.tcl exact "Tc 10de0 6c 5f 48 61 73 68 45 6e 74 72 79 20 2a 28 2a 63 l_HashEntry *(*c 10df0 72 65 61 74 65 50 72 6f 63 29 22 20 22 54 63 6c reateProc)" "Tcl 10e00 5f 48 61 73 68 45 6e 74 72 79 20 2a 28 53 51 4c _HashEntry *(SQL 10e10 49 54 45 5f 54 43 4c 41 50 49 20 2a 63 72 65 61 ITE_TCLAPI *crea 10e20 74 65 50 72 6f 63 29 22 20 3e 3e 20 24 28 53 51 teProc)" >>$(SQ
10e30 4c 49 54 45 54 43 4c 48 29 0a 21 45 4e 44 49 46  LITETCLH).!ENDIF
10e40 0a 0a 74 65 73 74 66 69 78 74 75 72 65 2e 65 78  ..testfixture.ex
10e50 65 3a 09 24 28 54 45 53 54 46 49 58 54 55 52 45  e:.$(TESTFIXTURE 10e60 5f 53 52 43 29 20 24 28 54 45 53 54 46 49 58 54 _SRC)$(TESTFIXT
10e70 55 52 45 5f 44 45 50 29 20 24 28 53 51 4c 49 54  URE_DEP) $(SQLIT 10e80 45 33 48 29 20 24 28 4c 49 42 52 45 53 4f 42 4a E3H)$(LIBRESOBJ
10e90 53 29 20 24 28 48 44 52 29 20 24 28 53 51 4c 49  S) $(HDR)$(SQLI
10ea0 54 45 5f 54 43 4c 5f 44 45 50 29 0a 09 24 28 4c  TE_TCL_DEP)..$(L 10eb0 54 4c 49 4e 4b 29 20 2d 44 53 51 4c 49 54 45 5f TLINK) -DSQLITE_ 10ec0 4e 4f 5f 53 59 4e 43 3d 31 20 24 28 54 45 53 54 NO_SYNC=1$(TEST
10ed0 46 49 58 54 55 52 45 5f 46 4c 41 47 53 29 20 5c  FIXTURE_FLAGS) \
10ee0 0a 09 09 2d 44 42 55 49 4c 44 5f 73 71 6c 69 74  ...-DBUILD_sqlit
10ef0 65 20 2d 49 24 28 54 43 4c 49 4e 43 44 49 52 29  e -I$(TCLINCDIR) 10f00 20 5c 0a 09 09 24 28 54 45 53 54 46 49 58 54 55 \...$(TESTFIXTU
10f10 52 45 5f 53 52 43 29 20 5c 0a 09 09 2f 6c 69 6e  RE_SRC) \.../lin
10f20 6b 20 24 28 4c 44 46 4c 41 47 53 29 20 24 28 4c  k $(LDFLAGS)$(L
10f30 54 4c 49 4e 4b 4f 50 54 53 29 20 24 28 54 43 4c  TLINKOPTS) $(TCL 10f40 4c 49 42 50 41 54 48 53 29 20 24 28 4c 54 4c 49 LIBPATHS)$(LTLI
10f50 42 50 41 54 48 53 29 20 24 28 4c 49 42 52 45 53  BPATHS) $(LIBRES 10f60 4f 42 4a 53 29 20 24 28 54 43 4c 4c 49 42 53 29 OBJS)$(TCLLIBS)
10f70 20 24 28 4c 54 4c 49 42 53 29 20 24 28 54 4c 49   $(LTLIBS)$(TLI
10f80 42 53 29 0a 0a 65 78 74 65 6e 73 69 6f 6e 74 65  BS)..extensionte
10f90 73 74 3a 09 74 65 73 74 66 69 78 74 75 72 65 2e  st:.testfixture.
10fa0 65 78 65 20 74 65 73 74 6c 6f 61 64 65 78 74 2e  exe testloadext.
10fb0 64 6c 6c 0a 09 40 73 65 74 20 50 41 54 48 3d 24  dll..@set PATH=$10fc0 28 4c 49 42 54 43 4c 50 41 54 48 29 3b 24 28 50 (LIBTCLPATH);$(P
10fd0 41 54 48 29 0a 09 2e 5c 74 65 73 74 66 69 78 74  ATH)...\testfixt
10fe0 75 72 65 2e 65 78 65 20 24 28 54 4f 50 29 5c 74  ure.exe $(TOP)\t 10ff0 65 73 74 5c 6c 6f 61 64 65 78 74 2e 74 65 73 74 est\loadext.test 11000 20 24 28 54 45 53 54 4f 50 54 53 29 0a 0a 63 6f$(TESTOPTS)..co
11010 72 65 74 65 73 74 70 72 6f 67 73 3a 09 24 28 54  retestprogs:.$(T 11020 45 53 54 50 52 4f 47 53 29 0a 0a 74 65 73 74 70 ESTPROGS)..testp 11030 72 6f 67 73 3a 09 63 6f 72 65 74 65 73 74 70 72 rogs:.coretestpr 11040 6f 67 73 20 73 72 63 63 6b 31 2e 65 78 65 20 66 ogs srcck1.exe f 11050 75 7a 7a 63 68 65 63 6b 2e 65 78 65 20 73 65 73 uzzcheck.exe ses 11060 73 69 6f 6e 66 75 7a 7a 2e 65 78 65 0a 0a 66 75 sionfuzz.exe..fu 11070 6c 6c 74 65 73 74 3a 09 24 28 54 45 53 54 50 52 lltest:.$(TESTPR
11080 4f 47 53 29 20 66 75 7a 7a 74 65 73 74 0a 09 40  OGS) fuzztest..@
11090 73 65 74 20 50 41 54 48 3d 24 28 4c 49 42 54 43  set PATH=$(LIBTC 110a0 4c 50 41 54 48 29 3b 24 28 50 41 54 48 29 0a 09 LPATH);$(PATH)..
110b0 2e 5c 74 65 73 74 66 69 78 74 75 72 65 2e 65 78  .\testfixture.ex
110c0 65 20 24 28 54 4f 50 29 5c 74 65 73 74 5c 61 6c  e $(TOP)\test\al 110d0 6c 2e 74 65 73 74 20 24 28 54 45 53 54 4f 50 54 l.test$(TESTOPT
110e0 53 29 0a 0a 73 6f 61 6b 74 65 73 74 3a 09 24 28  S)..soaktest:.$( 110f0 54 45 53 54 50 52 4f 47 53 29 0a 09 40 73 65 74 TESTPROGS)..@set 11100 20 50 41 54 48 3d 24 28 4c 49 42 54 43 4c 50 41 PATH=$(LIBTCLPA
11110 54 48 29 3b 24 28 50 41 54 48 29 0a 09 2e 5c 74  TH);$(PATH)...\t 11120 65 73 74 66 69 78 74 75 72 65 2e 65 78 65 20 24 estfixture.exe$
11130 28 54 4f 50 29 5c 74 65 73 74 5c 61 6c 6c 2e 74  (TOP)\test\all.t
11140 65 73 74 20 2d 73 6f 61 6b 3d 31 20 24 28 54 45  est -soak=1 $(TE 11150 53 54 4f 50 54 53 29 0a 0a 66 75 6c 6c 74 65 73 STOPTS)..fulltes 11160 74 6f 6e 6c 79 3a 09 24 28 54 45 53 54 50 52 4f tonly:.$(TESTPRO
11170 47 53 29 20 66 75 7a 7a 74 65 73 74 0a 09 40 73  GS) fuzztest..@s
11180 65 74 20 50 41 54 48 3d 24 28 4c 49 42 54 43 4c  et PATH=$(LIBTCL 11190 50 41 54 48 29 3b 24 28 50 41 54 48 29 0a 09 2e PATH);$(PATH)...
111a0 5c 74 65 73 74 66 69 78 74 75 72 65 2e 65 78 65  \testfixture.exe
111b0 20 24 28 54 4f 50 29 5c 74 65 73 74 5c 66 75 6c   $(TOP)\test\ful 111c0 6c 2e 74 65 73 74 0a 0a 71 75 65 72 79 70 6c 61 l.test..querypla 111d0 6e 74 65 73 74 3a 09 74 65 73 74 66 69 78 74 75 ntest:.testfixtu 111e0 72 65 2e 65 78 65 20 73 68 65 6c 6c 0a 09 40 73 re.exe shell..@s 111f0 65 74 20 50 41 54 48 3d 24 28 4c 49 42 54 43 4c et PATH=$(LIBTCL
11200 50 41 54 48 29 3b 24 28 50 41 54 48 29 0a 09 2e  PATH);$(PATH)... 11210 5c 74 65 73 74 66 69 78 74 75 72 65 2e 65 78 65 \testfixture.exe 11220 20 24 28 54 4f 50 29 5c 74 65 73 74 5c 70 65 72$(TOP)\test\per
11230 6d 75 74 61 74 69 6f 6e 73 2e 74 65 73 74 20 71  mutations.test q
11240 75 65 72 79 70 6c 61 6e 6e 65 72 20 24 28 54 45  ueryplanner $(TE 11250 53 54 4f 50 54 53 29 0a 0a 66 75 7a 7a 74 65 73 STOPTS)..fuzztes 11260 74 3a 09 66 75 7a 7a 63 68 65 63 6b 2e 65 78 65 t:.fuzzcheck.exe 11270 0a 09 2e 5c 66 75 7a 7a 63 68 65 63 6b 2e 65 78 ...\fuzzcheck.ex 11280 65 20 24 28 46 55 5a 5a 44 41 54 41 29 0a 0a 66 e$(FUZZDATA)..f
11290 61 73 74 66 75 7a 7a 74 65 73 74 3a 09 66 75 7a  astfuzztest:.fuz
112a0 7a 63 68 65 63 6b 2e 65 78 65 0a 09 2e 5c 66 75  zcheck.exe...\fu
112b0 7a 7a 63 68 65 63 6b 2e 65 78 65 20 2d 2d 6c 69  zzcheck.exe --li
112c0 6d 69 74 2d 6d 65 6d 20 31 30 30 4d 20 24 28 46  mit-mem 100M $(F 112d0 55 5a 5a 44 41 54 41 29 0a 0a 23 20 4d 69 6e 69 UZZDATA)..# Mini 112e0 6d 61 6c 20 74 65 73 74 69 6e 67 20 74 68 61 74 mal testing that 112f0 20 72 75 6e 73 20 69 6e 20 6c 65 73 73 20 74 68 runs in less th 11300 61 6e 20 33 20 6d 69 6e 75 74 65 73 20 28 6f 6e an 3 minutes (on 11310 20 61 20 66 61 73 74 20 6d 61 63 68 69 6e 65 29 a fast machine) 11320 0a 23 0a 71 75 69 63 6b 74 65 73 74 3a 09 74 65 .#.quicktest:.te 11330 73 74 66 69 78 74 75 72 65 2e 65 78 65 20 73 6f stfixture.exe so 11340 75 72 63 65 74 65 73 74 0a 09 40 73 65 74 20 50 urcetest..@set P 11350 41 54 48 3d 24 28 4c 49 42 54 43 4c 50 41 54 48 ATH=$(LIBTCLPATH
11360 29 3b 24 28 50 41 54 48 29 0a 09 2e 5c 74 65 73  );$(PATH)...\tes 11370 74 66 69 78 74 75 72 65 2e 65 78 65 20 24 28 54 tfixture.exe$(T
11380 4f 50 29 5c 74 65 73 74 5c 65 78 74 72 61 71 75  OP)\test\extraqu
11390 69 63 6b 2e 74 65 73 74 20 24 28 54 45 53 54 4f  ick.test $(TESTO 113a0 50 54 53 29 0a 0a 23 20 54 68 69 73 20 69 73 20 PTS)..# This is 113b0 74 68 65 20 63 6f 6d 6d 6f 6e 20 63 61 73 65 2e the common case. 113c0 20 20 52 75 6e 20 6d 61 6e 79 20 74 65 73 74 73 Run many tests 113d0 20 74 68 61 74 20 64 6f 20 6e 6f 74 20 74 61 6b that do not tak 113e0 65 20 74 6f 6f 20 6c 6f 6e 67 2c 0a 23 20 69 6e e too long,.# in 113f0 63 6c 75 64 69 6e 67 20 66 75 7a 7a 63 68 65 63 cluding fuzzchec 11400 6b 2c 20 73 71 6c 69 74 65 33 5f 61 6e 61 6c 79 k, sqlite3_analy 11410 7a 65 72 2c 20 61 6e 64 20 73 71 6c 64 69 66 66 zer, and sqldiff 11420 20 74 65 73 74 73 2e 0a 23 0a 74 65 73 74 3a 09 tests..#.test:. 11430 24 28 54 45 53 54 50 52 4f 47 53 29 20 73 6f 75$(TESTPROGS) sou
11440 72 63 65 74 65 73 74 20 66 61 73 74 66 75 7a 7a  rcetest fastfuzz
11450 74 65 73 74 0a 09 40 73 65 74 20 50 41 54 48 3d  test..@set PATH=
11460 24 28 4c 49 42 54 43 4c 50 41 54 48 29 3b 24 28  $(LIBTCLPATH);$(
11470 50 41 54 48 29 0a 09 2e 5c 74 65 73 74 66 69 78  PATH)...\testfix
11480 74 75 72 65 2e 65 78 65 20 24 28 54 4f 50 29 5c  ture.exe $(TOP)\ 11490 74 65 73 74 5c 76 65 72 79 71 75 69 63 6b 2e 74 test\veryquick.t 114a0 65 73 74 20 24 28 54 45 53 54 4f 50 54 53 29 0a est$(TESTOPTS).
114b0 0a 73 6d 6f 6b 65 74 65 73 74 3a 09 24 28 54 45  .smoketest:.$(TE 114c0 53 54 50 52 4f 47 53 29 0a 09 40 73 65 74 20 50 STPROGS)..@set P 114d0 41 54 48 3d 24 28 4c 49 42 54 43 4c 50 41 54 48 ATH=$(LIBTCLPATH
114e0 29 3b 24 28 50 41 54 48 29 0a 09 2e 5c 74 65 73  );$(PATH)...\tes 114f0 74 66 69 78 74 75 72 65 2e 65 78 65 20 24 28 54 tfixture.exe$(T
11500 4f 50 29 5c 74 65 73 74 5c 6d 61 69 6e 2e 74 65  OP)\test\main.te
11510 73 74 20 24 28 54 45 53 54 4f 50 54 53 29 0a 0a  st $(TESTOPTS).. 11520 73 71 6c 69 74 65 33 5f 61 6e 61 6c 79 7a 65 72 sqlite3_analyzer 11530 2e 63 3a 09 24 28 53 51 4c 49 54 45 33 43 29 20 .c:.$(SQLITE3C)
11540 24 28 53 51 4c 49 54 45 33 48 29 20 24 28 54 4f  $(SQLITE3H)$(TO
11550 50 29 5c 73 72 63 5c 74 63 6c 73 71 6c 69 74 65  P)\src\tclsqlite
11560 2e 63 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73  .c $(TOP)\tool\s 11570 70 61 63 65 61 6e 61 6c 2e 74 63 6c 20 24 28 54 paceanal.tcl$(T
11580 4f 50 29 5c 74 6f 6f 6c 5c 6d 6b 63 63 6f 64 65  OP)\tool\mkccode
11590 2e 74 63 6c 20 24 28 54 4f 50 29 5c 74 6f 6f 6c  .tcl $(TOP)\tool 115a0 5c 73 71 6c 69 74 65 33 5f 61 6e 61 6c 79 7a 65 \sqlite3_analyze 115b0 72 2e 63 2e 69 6e 20 24 28 53 51 4c 49 54 45 5f r.c.in$(SQLITE_
115c0 54 43 4c 5f 44 45 50 29 0a 09 24 28 54 43 4c 53  TCL_DEP)..$(TCLS 115d0 48 5f 43 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f H_CMD)$(TOP)\to
115e0 6f 6c 5c 6d 6b 63 63 6f 64 65 2e 74 63 6c 20 24  ol\mkccode.tcl $115f0 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 71 6c 69 74 (TOP)\tool\sqlit 11600 65 33 5f 61 6e 61 6c 79 7a 65 72 2e 63 2e 69 6e e3_analyzer.c.in 11610 20 3e 20 24 40 0a 0a 73 71 6c 69 74 65 33 5f 61 >$@..sqlite3_a
11620 6e 61 6c 79 7a 65 72 2e 65 78 65 3a 09 73 71 6c  nalyzer.exe:.sql
11630 69 74 65 33 5f 61 6e 61 6c 79 7a 65 72 2e 63 20  ite3_analyzer.c
11640 24 28 4c 49 42 52 45 53 4f 42 4a 53 29 0a 09 24  $(LIBRESOBJS)..$
11650 28 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57 41  (LTLINK) $(NO_WA 11660 52 4e 29 20 2d 44 42 55 49 4c 44 5f 73 71 6c 69 RN) -DBUILD_sqli 11670 74 65 20 2d 49 24 28 54 43 4c 49 4e 43 44 49 52 te -I$(TCLINCDIR
11680 29 20 73 71 6c 69 74 65 33 5f 61 6e 61 6c 79 7a  ) sqlite3_analyz
11690 65 72 2e 63 20 5c 0a 09 09 2f 6c 69 6e 6b 20 24  er.c \.../link $116a0 28 4c 44 46 4c 41 47 53 29 20 24 28 4c 54 4c 49 (LDFLAGS)$(LTLI
116b0 4e 4b 4f 50 54 53 29 20 24 28 54 43 4c 4c 49 42  NKOPTS) $(TCLLIB 116c0 50 41 54 48 53 29 20 24 28 4c 54 4c 49 42 50 41 PATHS)$(LTLIBPA
116d0 54 48 53 29 20 24 28 4c 49 42 52 45 53 4f 42 4a  THS) $(LIBRESOBJ 116e0 53 29 20 24 28 54 43 4c 4c 49 42 53 29 20 24 28 S)$(TCLLIBS) $( 116f0 4c 54 4c 49 42 53 29 20 24 28 54 4c 49 42 53 29 LTLIBS)$(TLIBS)
11700 0a 0a 73 71 6c 74 63 6c 73 68 2e 63 3a 20 73 71  ..sqltclsh.c: sq
11710 6c 69 74 65 33 2e 63 20 24 28 54 4f 50 29 5c 73  lite3.c $(TOP)\s 11720 72 63 5c 74 63 6c 73 71 6c 69 74 65 2e 63 20 24 rc\tclsqlite.c$
11730 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 71 6c 74 63  (TOP)\tool\sqltc
11740 6c 73 68 2e 74 63 6c 20 24 28 54 4f 50 29 5c 65  lsh.tcl $(TOP)\e 11750 78 74 5c 6d 69 73 63 5c 61 70 70 65 6e 64 76 66 xt\misc\appendvf 11760 73 2e 63 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c s.c$(TOP)\tool\
11770 6d 6b 63 63 6f 64 65 2e 74 63 6c 20 24 28 54 4f  mkccode.tcl $(TO 11780 50 29 5c 74 6f 6f 6c 5c 73 71 6c 74 63 6c 73 68 P)\tool\sqltclsh 11790 2e 63 2e 69 6e 0a 09 24 28 54 43 4c 53 48 5f 43 .c.in..$(TCLSH_C
117a0 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c  MD) $(TOP)\tool\ 117b0 6d 6b 63 63 6f 64 65 2e 74 63 6c 20 24 28 54 4f mkccode.tcl$(TO
117c0 50 29 5c 74 6f 6f 6c 5c 73 71 6c 74 63 6c 73 68  P)\tool\sqltclsh
117d0 2e 63 2e 69 6e 20 3e 73 71 6c 74 63 6c 73 68 2e  .c.in >sqltclsh.
117e0 63 0a 0a 73 71 6c 74 63 6c 73 68 2e 65 78 65 3a  c..sqltclsh.exe:
117f0 20 73 71 6c 74 63 6c 73 68 2e 63 20 20 24 28 53   sqltclsh.c  $(S 11800 48 45 4c 4c 5f 43 4f 52 45 5f 44 45 50 29 20 24 HELL_CORE_DEP)$
11810 28 4c 49 42 52 45 53 4f 42 4a 53 29 0a 09 24 28  (LIBRESOBJS)..$( 11820 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57 41 52 LTLINK)$(NO_WAR
11830 4e 29 20 2d 44 42 55 49 4c 44 5f 73 71 6c 69 74  N) -DBUILD_sqlit
11840 65 20 2d 49 24 28 54 43 4c 49 4e 43 44 49 52 29  e -I$(TCLINCDIR) 11850 20 73 71 6c 74 63 6c 73 68 2e 63 20 5c 0a 09 09 sqltclsh.c \... 11860 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 47 53 29 /link$(LDFLAGS)
11870 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 24   $(LTLINKOPTS)$
11880 28 54 43 4c 4c 49 42 50 41 54 48 53 29 20 24 28  (TCLLIBPATHS) $( 11890 4c 54 4c 49 42 50 41 54 48 53 29 20 24 28 4c 49 LTLIBPATHS)$(LI
118a0 42 52 45 53 4f 42 4a 53 29 20 24 28 54 43 4c 4c  BRESOBJS) $(TCLL 118b0 49 42 53 29 20 24 28 4c 54 4c 49 42 53 29 20 24 IBS)$(LTLIBS) $118c0 28 54 4c 49 42 53 29 0a 0a 73 71 6c 69 74 65 33 (TLIBS)..sqlite3 118d0 5f 65 78 70 65 72 74 2e 65 78 65 3a 20 24 28 53 _expert.exe:$(S
118e0 51 4c 49 54 45 33 43 29 20 24 28 54 4f 50 29 5c  QLITE3C) $(TOP)\ 118f0 65 78 74 5c 65 78 70 65 72 74 5c 73 71 6c 69 74 ext\expert\sqlit 11900 65 33 65 78 70 65 72 74 2e 68 20 24 28 54 4f 50 e3expert.h$(TOP
11910 29 5c 65 78 74 5c 65 78 70 65 72 74 5c 73 71 6c  )\ext\expert\sql
11920 69 74 65 33 65 78 70 65 72 74 2e 63 20 24 28 54  ite3expert.c $(T 11930 4f 50 29 5c 65 78 74 5c 65 78 70 65 72 74 5c 65 OP)\ext\expert\e 11940 78 70 65 72 74 2e 63 0a 09 24 28 4c 54 4c 49 4e xpert.c..$(LTLIN
11950 4b 29 20 24 28 4e 4f 5f 57 41 52 4e 29 09 24 28  K) $(NO_WARN).$(
11960 54 4f 50 29 5c 65 78 74 5c 65 78 70 65 72 74 5c  TOP)\ext\expert\
11970 73 71 6c 69 74 65 33 65 78 70 65 72 74 2e 63 20  sqlite3expert.c
11980 24 28 54 4f 50 29 5c 65 78 74 5c 65 78 70 65 72  $(TOP)\ext\exper 11990 74 5c 65 78 70 65 72 74 2e 63 20 24 28 53 51 4c t\expert.c$(SQL
119a0 49 54 45 33 43 29 20 24 28 54 4c 49 42 53 29 0a  ITE3C) $(TLIBS). 119b0 0a 43 48 45 43 4b 45 52 5f 44 45 50 53 20 3d 5c .CHECKER_DEPS =\ 119c0 0a 20 20 24 28 54 4f 50 29 2f 74 6f 6f 6c 2f 6d .$(TOP)/tool/m
119d0 6b 63 63 6f 64 65 2e 74 63 6c 20 5c 0a 20 20 73  kccode.tcl \.  s
119e0 71 6c 69 74 65 33 2e 63 20 5c 0a 20 20 24 28 54  qlite3.c \.  $(T 119f0 4f 50 29 2f 73 72 63 2f 74 63 6c 73 71 6c 69 74 OP)/src/tclsqlit 11a00 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 2f 65 e.c \.$(TOP)/e
11a10 78 74 2f 72 65 70 61 69 72 2f 73 71 6c 69 74 65  xt/repair/sqlite
11a20 33 5f 63 68 65 63 6b 65 72 2e 74 63 6c 20 5c 0a  3_checker.tcl \.
11a30 20 20 24 28 54 4f 50 29 2f 65 78 74 2f 72 65 70    $(TOP)/ext/rep 11a40 61 69 72 2f 63 68 65 63 6b 69 6e 64 65 78 2e 63 air/checkindex.c 11a50 20 5c 0a 20 20 24 28 54 4f 50 29 2f 65 78 74 2f \.$(TOP)/ext/
11a60 72 65 70 61 69 72 2f 63 68 65 63 6b 66 72 65 65  repair/checkfree
11a70 6c 69 73 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50  list.c \.  $(TOP 11a80 29 2f 65 78 74 2f 6d 69 73 63 2f 62 74 72 65 65 )/ext/misc/btree 11a90 69 6e 66 6f 2e 63 20 5c 0a 20 20 24 28 54 4f 50 info.c \.$(TOP
11aa0 29 2f 65 78 74 2f 72 65 70 61 69 72 2f 73 71 6c  )/ext/repair/sql
11ab0 69 74 65 33 5f 63 68 65 63 6b 65 72 2e 63 2e 69  ite3_checker.c.i
11ac0 6e 0a 0a 73 71 6c 69 74 65 33 5f 63 68 65 63 6b  n..sqlite3_check
11ad0 65 72 2e 63 3a 09 24 28 43 48 45 43 4b 45 52 5f  er.c:.$(CHECKER_ 11ae0 44 45 50 53 29 0a 09 24 28 54 43 4c 53 48 5f 43 DEPS)..$(TCLSH_C
11af0 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c  MD) $(TOP)\tool\ 11b00 6d 6b 63 63 6f 64 65 2e 74 63 6c 20 24 28 54 4f mkccode.tcl$(TO
11b10 50 29 5c 65 78 74 5c 72 65 70 61 69 72 5c 73 71  P)\ext\repair\sq
11b20 6c 69 74 65 33 5f 63 68 65 63 6b 65 72 2e 63 2e  lite3_checker.c.
11b30 69 6e 20 3e 20 24 40 0a 0a 73 71 6c 69 74 65 33  in > $@..sqlite3 11b40 5f 63 68 65 63 6b 65 72 2e 65 78 65 3a 09 73 71 _checker.exe:.sq 11b50 6c 69 74 65 33 5f 63 68 65 63 6b 65 72 2e 63 20 lite3_checker.c 11b60 24 28 4c 49 42 52 45 53 4f 42 4a 53 29 0a 09 24$(LIBRESOBJS)..$11b70 28 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57 41 (LTLINK)$(NO_WA
11b80 52 4e 29 20 2d 44 42 55 49 4c 44 5f 73 71 6c 69  RN) -DBUILD_sqli
11b90 74 65 20 2d 49 24 28 54 43 4c 49 4e 43 44 49 52  te -I$(TCLINCDIR 11ba0 29 20 73 71 6c 69 74 65 33 5f 63 68 65 63 6b 65 ) sqlite3_checke 11bb0 72 2e 63 20 5c 0a 09 09 2f 6c 69 6e 6b 20 24 28 r.c \.../link$(
11bc0 4c 44 46 4c 41 47 53 29 20 24 28 4c 54 4c 49 4e  LDFLAGS) $(LTLIN 11bd0 4b 4f 50 54 53 29 20 24 28 54 43 4c 4c 49 42 50 KOPTS)$(TCLLIBP
11be0 41 54 48 53 29 20 24 28 4c 54 4c 49 42 50 41 54  ATHS) $(LTLIBPAT 11bf0 48 53 29 20 24 28 4c 49 42 52 45 53 4f 42 4a 53 HS)$(LIBRESOBJS
11c00 29 20 24 28 54 43 4c 4c 49 42 53 29 20 24 28 4c  ) $(TCLLIBS)$(L
11c10 54 4c 49 42 53 29 20 24 28 54 4c 49 42 53 29 0a  TLIBS) $(TLIBS). 11c20 0a 64 62 64 75 6d 70 2e 65 78 65 3a 09 24 28 54 .dbdump.exe:.$(T
11c30 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c 64 62 64  OP)\ext\misc\dbd
11c40 75 6d 70 2e 63 20 24 28 53 51 4c 49 54 45 33 43  ump.c $(SQLITE3C 11c50 29 20 24 28 53 51 4c 49 54 45 33 48 29 20 24 28 )$(SQLITE3H) $( 11c60 4c 49 42 52 45 53 4f 42 4a 53 29 0a 09 24 28 4c LIBRESOBJS)..$(L
11c70 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57 41 52 4e  TLINK) $(NO_WARN 11c80 29 20 2d 44 44 42 44 55 4d 50 5f 53 54 41 4e 44 ) -DDBDUMP_STAND 11c90 41 4c 4f 4e 45 20 24 28 54 4f 50 29 5c 65 78 74 ALONE$(TOP)\ext
11ca0 5c 6d 69 73 63 5c 64 62 64 75 6d 70 2e 63 20 24  \misc\dbdump.c $11cb0 28 53 51 4c 49 54 45 33 43 29 20 5c 0a 09 09 2f (SQLITE3C) \.../ 11cc0 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 47 53 29 20 link$(LDFLAGS)
11cd0 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 24 28  $(LTLINKOPTS)$(
11ce0 4c 54 4c 49 42 50 41 54 48 53 29 20 24 28 4c 49  LTLIBPATHS) $(LI 11cf0 42 52 45 53 4f 42 4a 53 29 20 24 28 4c 54 4c 49 BRESOBJS)$(LTLI
11d00 42 53 29 0a 0a 74 65 73 74 6c 6f 61 64 65 78 74  BS)..testloadext
11d10 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c  .lo:.$(TOP)\src\ 11d20 74 65 73 74 5f 6c 6f 61 64 65 78 74 2e 63 20 24 test_loadext.c$
11d30 28 53 51 4c 49 54 45 33 48 29 0a 09 24 28 4c 54  (SQLITE3H)..$(LT 11d40 43 4f 4d 50 49 4c 45 29 20 24 28 4e 4f 5f 57 41 COMPILE)$(NO_WA
11d50 52 4e 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72  RN) -c $(TOP)\sr 11d60 63 5c 74 65 73 74 5f 6c 6f 61 64 65 78 74 2e 63 c\test_loadext.c 11d70 0a 0a 74 65 73 74 6c 6f 61 64 65 78 74 2e 64 6c ..testloadext.dl 11d80 6c 3a 09 74 65 73 74 6c 6f 61 64 65 78 74 2e 6c l:.testloadext.l 11d90 6f 0a 09 24 28 4c 44 29 20 24 28 4c 44 46 4c 41 o..$(LD) $(LDFLA 11da0 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 GS)$(LTLINKOPTS
11db0 29 20 24 28 4c 54 4c 49 42 50 41 54 48 53 29 20  ) $(LTLIBPATHS) 11dc0 2f 44 4c 4c 20 2f 4f 55 54 3a 24 40 20 74 65 73 /DLL /OUT:$@ tes
11dd0 74 6c 6f 61 64 65 78 74 2e 6c 6f 0a 0a 64 62 74  tloadext.lo..dbt
11de0 6f 74 78 74 2e 65 78 65 3a 09 24 28 54 4f 50 29  otxt.exe:.$(TOP) 11df0 5c 74 6f 6f 6c 5c 64 62 74 6f 74 78 74 2e 63 0a \tool\dbtotxt.c. 11e00 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f .$(LTLINK) $(NO_ 11e10 57 41 52 4e 29 09 24 28 54 4f 50 29 5c 74 6f 6f WARN).$(TOP)\too
11e20 6c 5c 64 62 74 6f 74 78 74 2e 63 20 2f 6c 69 6e  l\dbtotxt.c /lin
11e30 6b 20 24 28 4c 44 46 4c 41 47 53 29 20 24 28 4c  k $(LDFLAGS)$(L
11e40 54 4c 49 4e 4b 4f 50 54 53 29 0a 0a 73 68 6f 77  TLINKOPTS)..show
11e50 64 62 2e 65 78 65 3a 09 24 28 54 4f 50 29 5c 74  db.exe:.$(TOP)\t 11e60 6f 6f 6c 5c 73 68 6f 77 64 62 2e 63 20 24 28 53 ool\showdb.c$(S
11e70 51 4c 49 54 45 33 43 29 20 24 28 53 51 4c 49 54  QLITE3C) $(SQLIT 11e80 45 33 48 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 E3H)..$(LTLINK)
11e90 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c  $(NO_WARN) -DSQL 11ea0 49 54 45 5f 54 48 52 45 41 44 53 41 46 45 3d 30 ITE_THREADSAFE=0 11eb0 20 2d 44 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 4c -DSQLITE_OMIT_L 11ec0 4f 41 44 5f 45 58 54 45 4e 53 49 4f 4e 20 5c 0a OAD_EXTENSION \. 11ed0 09 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 68 ..$(TOP)\tool\sh
11ee0 6f 77 64 62 2e 63 20 24 28 53 51 4c 49 54 45 33  owdb.c $(SQLITE3 11ef0 43 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 C) /link$(LDFLA
11f00 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53  GS) $(LTLINKOPTS 11f10 29 0a 0a 73 68 6f 77 73 74 61 74 34 2e 65 78 65 )..showstat4.exe 11f20 3a 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 68 :.$(TOP)\tool\sh
11f30 6f 77 73 74 61 74 34 2e 63 20 24 28 53 51 4c 49  owstat4.c $(SQLI 11f40 54 45 33 43 29 20 24 28 53 51 4c 49 54 45 33 48 TE3C)$(SQLITE3H
11f50 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e  )..$(LTLINK)$(N
11f60 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 45  O_WARN) -DSQLITE
11f70 5f 54 48 52 45 41 44 53 41 46 45 3d 30 20 2d 44  _THREADSAFE=0 -D
11f80 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 4c 4f 41 44  SQLITE_OMIT_LOAD
11f90 5f 45 58 54 45 4e 53 49 4f 4e 20 5c 0a 09 09 24  _EXTENSION \...$11fa0 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 68 6f 77 73 (TOP)\tool\shows 11fb0 74 61 74 34 2e 63 20 24 28 53 51 4c 49 54 45 33 tat4.c$(SQLITE3
11fc0 43 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41  C) /link $(LDFLA 11fd0 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 GS)$(LTLINKOPTS
11fe0 29 0a 0a 73 68 6f 77 6a 6f 75 72 6e 61 6c 2e 65  )..showjournal.e
11ff0 78 65 3a 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c  xe:.$(TOP)\tool\ 12000 73 68 6f 77 6a 6f 75 72 6e 61 6c 2e 63 20 24 28 showjournal.c$(
12010 53 51 4c 49 54 45 33 43 29 20 24 28 53 51 4c 49  SQLITE3C) $(SQLI 12020 54 45 33 48 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 TE3H)..$(LTLINK)
12030 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51   $(NO_WARN) -DSQ 12040 4c 49 54 45 5f 54 48 52 45 41 44 53 41 46 45 3d LITE_THREADSAFE= 12050 30 20 2d 44 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 0 -DSQLITE_OMIT_ 12060 4c 4f 41 44 5f 45 58 54 45 4e 53 49 4f 4e 20 5c LOAD_EXTENSION \ 12070 0a 09 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 ...$(TOP)\tool\s
12080 68 6f 77 6a 6f 75 72 6e 61 6c 2e 63 20 24 28 53  howjournal.c $(S 12090 51 4c 49 54 45 33 43 29 20 2f 6c 69 6e 6b 20 24 QLITE3C) /link$
120a0 28 4c 44 46 4c 41 47 53 29 20 24 28 4c 54 4c 49  (LDFLAGS) $(LTLI 120b0 4e 4b 4f 50 54 53 29 0a 0a 73 68 6f 77 77 61 6c NKOPTS)..showwal 120c0 2e 65 78 65 3a 09 24 28 54 4f 50 29 5c 74 6f 6f .exe:.$(TOP)\too
120d0 6c 5c 73 68 6f 77 77 61 6c 2e 63 20 24 28 53 51  l\showwal.c $(SQ 120e0 4c 49 54 45 33 43 29 20 24 28 53 51 4c 49 54 45 LITE3C)$(SQLITE
120f0 33 48 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24  3H)..$(LTLINK)$
12100 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49  (NO_WARN) -DSQLI
12110 54 45 5f 54 48 52 45 41 44 53 41 46 45 3d 30 20  TE_THREADSAFE=0
12120 2d 44 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 4c 4f  -DSQLITE_OMIT_LO
12130 41 44 5f 45 58 54 45 4e 53 49 4f 4e 20 5c 0a 09  AD_EXTENSION \..
12140 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 68 6f  .$(TOP)\tool\sho 12150 77 77 61 6c 2e 63 20 24 28 53 51 4c 49 54 45 33 wwal.c$(SQLITE3
12160 43 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41  C) /link $(LDFLA 12170 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 GS)$(LTLINKOPTS
12180 29 0a 0a 73 68 6f 77 73 68 6d 2e 65 78 65 3a 09  )..showshm.exe:.
12190 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 68 6f 77  $(TOP)\tool\show 121a0 73 68 6d 2e 63 0a 09 24 28 4c 54 4c 49 4e 4b 29 shm.c..$(LTLINK)
121b0 20 24 28 4e 4f 5f 57 41 52 4e 29 09 24 28 54 4f   $(NO_WARN).$(TO
121c0 50 29 5c 74 6f 6f 6c 5c 73 68 6f 77 73 68 6d 2e  P)\tool\showshm.
121d0 63 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 47  c /link $(LDFLAG 121e0 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 S)$(LTLINKOPTS)
121f0 0a 0a 69 6e 64 65 78 5f 75 73 61 67 65 2e 65 78  ..index_usage.ex
12200 65 3a 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 69  e: $(TOP)\tool\i 12210 6e 64 65 78 5f 75 73 61 67 65 2e 63 20 24 28 53 ndex_usage.c$(S
12220 51 4c 49 54 45 33 43 29 20 24 28 53 51 4c 49 54  QLITE3C) $(SQLIT 12230 45 33 48 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 E3H)..$(LTLINK)
12240 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c  $(NO_WARN) -DSQL 12250 49 54 45 5f 54 48 52 45 41 44 53 41 46 45 3d 30 ITE_THREADSAFE=0 12260 20 2d 44 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 4c -DSQLITE_OMIT_L 12270 4f 41 44 5f 45 58 54 45 4e 53 49 4f 4e 20 5c 0a OAD_EXTENSION \. 12280 09 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 69 6e ..$(TOP)\tool\in
12290 64 65 78 5f 75 73 61 67 65 2e 63 20 24 28 53 51  dex_usage.c $(SQ 122a0 4c 49 54 45 33 43 29 20 2f 6c 69 6e 6b 20 24 28 LITE3C) /link$(
122b0 4c 44 46 4c 41 47 53 29 20 24 28 4c 54 4c 49 4e  LDFLAGS) $(LTLIN 122c0 4b 4f 50 54 53 29 0a 0a 63 68 61 6e 67 65 73 65 KOPTS)..changese 122d0 74 2e 65 78 65 3a 09 24 28 54 4f 50 29 5c 65 78 t.exe:.$(TOP)\ex
122e0 74 5c 73 65 73 73 69 6f 6e 5c 63 68 61 6e 67 65  t\session\change
122f0 73 65 74 2e 63 20 24 28 53 51 4c 49 54 45 33 43  set.c $(SQLITE3C 12300 29 20 24 28 53 51 4c 49 54 45 33 48 29 0a 09 24 )$(SQLITE3H)..$12310 28 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57 41 (LTLINK)$(NO_WA
12320 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 54 48 52  RN) -DSQLITE_THR
12330 45 41 44 53 41 46 45 3d 30 20 2d 44 53 51 4c 49  EADSAFE=0 -DSQLI
12340 54 45 5f 4f 4d 49 54 5f 4c 4f 41 44 5f 45 58 54  TE_OMIT_LOAD_EXT
12350 45 4e 53 49 4f 4e 20 5c 0a 09 09 2d 44 53 51 4c  ENSION \...-DSQL
12360 49 54 45 5f 45 4e 41 42 4c 45 5f 53 45 53 53 49  ITE_ENABLE_SESSI
12370 4f 4e 3d 31 20 2d 44 53 51 4c 49 54 45 5f 45 4e  ON=1 -DSQLITE_EN
12380 41 42 4c 45 5f 50 52 45 55 50 44 41 54 45 5f 48  ABLE_PREUPDATE_H
12390 4f 4f 4b 3d 31 20 5c 0a 09 09 24 28 54 4f 50 29  OOK=1 \...$(TOP) 123a0 5c 65 78 74 5c 73 65 73 73 69 6f 6e 5c 63 68 61 \ext\session\cha 123b0 6e 67 65 73 65 74 2e 63 20 24 28 53 51 4c 49 54 ngeset.c$(SQLIT
123c0 45 33 43 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 46  E3C) /link $(LDF 123d0 4c 41 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 LAGS)$(LTLINKOP
123e0 54 53 29 0a 0a 63 68 61 6e 67 65 73 65 74 66 75  TS)..changesetfu
123f0 7a 7a 2e 65 78 65 3a 09 24 28 54 4f 50 29 5c 65  zz.exe:.$(TOP)\e 12400 78 74 5c 73 65 73 73 69 6f 6e 5c 63 68 61 6e 67 xt\session\chang 12410 65 73 65 74 66 75 7a 7a 2e 63 20 24 28 53 51 4c esetfuzz.c$(SQL
12420 49 54 45 33 43 29 20 24 28 53 51 4c 49 54 45 33  ITE3C) $(SQLITE3 12430 48 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28 H)..$(LTLINK) $( 12440 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 NO_WARN) -DSQLIT 12450 45 5f 54 48 52 45 41 44 53 41 46 45 3d 30 20 2d E_THREADSAFE=0 - 12460 44 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 4c 4f 41 DSQLITE_OMIT_LOA 12470 44 5f 45 58 54 45 4e 53 49 4f 4e 20 5c 0a 09 09 D_EXTENSION \... 12480 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f -DSQLITE_ENABLE_ 12490 53 45 53 53 49 4f 4e 3d 31 20 2d 44 53 51 4c 49 SESSION=1 -DSQLI 124a0 54 45 5f 45 4e 41 42 4c 45 5f 50 52 45 55 50 44 TE_ENABLE_PREUPD 124b0 41 54 45 5f 48 4f 4f 4b 3d 31 20 5c 0a 09 09 24 ATE_HOOK=1 \...$
124c0 28 54 4f 50 29 5c 65 78 74 5c 73 65 73 73 69 6f  (TOP)\ext\sessio
124d0 6e 5c 63 68 61 6e 67 65 73 65 74 66 75 7a 7a 2e  n\changesetfuzz.
124e0 63 20 24 28 53 51 4c 49 54 45 33 43 29 20 2f 6c  c $(SQLITE3C) /l 124f0 69 6e 6b 20 24 28 4c 44 46 4c 41 47 53 29 20 24 ink$(LDFLAGS) $12500 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 0a 0a 66 74 (LTLINKOPTS)..ft 12510 73 33 76 69 65 77 2e 65 78 65 3a 09 24 28 54 4f s3view.exe:.$(TO
12520 50 29 5c 65 78 74 5c 66 74 73 33 5c 74 6f 6f 6c  P)\ext\fts3\tool
12530 5c 66 74 73 33 76 69 65 77 2e 63 20 24 28 53 51  \fts3view.c $(SQ 12540 4c 49 54 45 33 43 29 20 24 28 53 51 4c 49 54 45 LITE3C)$(SQLITE
12550 33 48 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24  3H)..$(LTLINK)$
12560 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49  (NO_WARN) -DSQLI
12570 54 45 5f 54 48 52 45 41 44 53 41 46 45 3d 30 20  TE_THREADSAFE=0
12580 2d 44 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 4c 4f  -DSQLITE_OMIT_LO
12590 41 44 5f 45 58 54 45 4e 53 49 4f 4e 20 5c 0a 09  AD_EXTENSION \..
125a0 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33  .$(TOP)\ext\fts3 125b0 5c 74 6f 6f 6c 5c 66 74 73 33 76 69 65 77 2e 63 \tool\fts3view.c 125c0 20 24 28 53 51 4c 49 54 45 33 43 29 20 2f 6c 69$(SQLITE3C) /li
125d0 6e 6b 20 24 28 4c 44 46 4c 41 47 53 29 20 24 28  nk $(LDFLAGS)$(
125e0 4c 54 4c 49 4e 4b 4f 50 54 53 29 0a 0a 72 6f 6c  LTLINKOPTS)..rol
125f0 6c 62 61 63 6b 2d 74 65 73 74 2e 65 78 65 3a 09  lback-test.exe:.
12600 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 72 6f 6c 6c  $(TOP)\tool\roll 12610 62 61 63 6b 2d 74 65 73 74 2e 63 20 24 28 53 51 back-test.c$(SQ
12620 4c 49 54 45 33 43 29 20 24 28 53 51 4c 49 54 45  LITE3C) $(SQLITE 12630 33 48 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24 3H)..$(LTLINK) $12640 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 (NO_WARN) -DSQLI 12650 54 45 5f 54 48 52 45 41 44 53 41 46 45 3d 30 20 TE_THREADSAFE=0 12660 2d 44 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 4c 4f -DSQLITE_OMIT_LO 12670 41 44 5f 45 58 54 45 4e 53 49 4f 4e 20 5c 0a 09 AD_EXTENSION \.. 12680 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 72 6f 6c .$(TOP)\tool\rol
12690 6c 62 61 63 6b 2d 74 65 73 74 2e 63 20 24 28 53  lback-test.c $(S 126a0 51 4c 49 54 45 33 43 29 20 2f 6c 69 6e 6b 20 24 QLITE3C) /link$
126b0 28 4c 44 46 4c 41 47 53 29 20 24 28 4c 54 4c 49  (LDFLAGS) $(LTLI 126c0 4e 4b 4f 50 54 53 29 0a 0a 61 74 72 63 2e 65 78 NKOPTS)..atrc.ex 126d0 65 3a 09 24 28 54 4f 50 29 5c 74 65 73 74 5c 61 e:.$(TOP)\test\a
126e0 74 72 63 2e 63 20 24 28 53 51 4c 49 54 45 33 43  trc.c $(SQLITE3C 126f0 29 20 24 28 53 51 4c 49 54 45 33 48 29 0a 09 24 )$(SQLITE3H)..$12700 28 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57 41 (LTLINK)$(NO_WA
12710 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 54 48 52  RN) -DSQLITE_THR
12720 45 41 44 53 41 46 45 3d 30 20 2d 44 53 51 4c 49  EADSAFE=0 -DSQLI
12730 54 45 5f 4f 4d 49 54 5f 4c 4f 41 44 5f 45 58 54  TE_OMIT_LOAD_EXT
12740 45 4e 53 49 4f 4e 20 5c 0a 09 09 24 28 54 4f 50  ENSION \...$(TOP 12750 29 5c 74 65 73 74 5c 61 74 72 63 2e 63 20 24 28 )\test\atrc.c$(
12760 53 51 4c 49 54 45 33 43 29 20 2f 6c 69 6e 6b 20  SQLITE3C) /link
12770 24 28 4c 44 46 4c 41 47 53 29 20 24 28 4c 54 4c  $(LDFLAGS)$(LTL
12780 49 4e 4b 4f 50 54 53 29 0a 0a 4c 6f 67 45 73 74  INKOPTS)..LogEst
12790 2e 65 78 65 3a 09 24 28 54 4f 50 29 5c 74 6f 6f  .exe:.$(TOP)\too 127a0 6c 5c 6c 6f 67 65 73 74 2e 63 20 24 28 53 51 4c l\logest.c$(SQL
127b0 49 54 45 33 48 29 0a 09 24 28 4c 54 4c 49 4e 4b  ITE3H)..$(LTLINK 127c0 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 24 28 54 )$(NO_WARN) $(T 127d0 4f 50 29 5c 74 6f 6f 6c 5c 4c 6f 67 45 73 74 2e OP)\tool\LogEst. 127e0 63 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 47 c /link$(LDFLAG
127f0 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29  S) $(LTLINKOPTS) 12800 0a 0a 77 6f 72 64 63 6f 75 6e 74 2e 65 78 65 3a ..wordcount.exe: 12810 09 24 28 54 4f 50 29 5c 74 65 73 74 5c 77 6f 72 .$(TOP)\test\wor
12820 64 63 6f 75 6e 74 2e 63 20 24 28 53 51 4c 49 54  dcount.c $(SQLIT 12830 45 33 43 29 20 24 28 53 51 4c 49 54 45 33 48 29 E3C)$(SQLITE3H)
12840 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f  ..$(LTLINK)$(NO
12850 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f  _WARN) -DSQLITE_
12860 54 48 52 45 41 44 53 41 46 45 3d 30 20 2d 44 53  THREADSAFE=0 -DS
12870 51 4c 49 54 45 5f 4f 4d 49 54 5f 4c 4f 41 44 5f  QLITE_OMIT_LOAD_
12880 45 58 54 45 4e 53 49 4f 4e 20 5c 0a 09 09 24 28  EXTENSION \...$( 12890 54 4f 50 29 5c 74 65 73 74 5c 77 6f 72 64 63 6f TOP)\test\wordco 128a0 75 6e 74 2e 63 20 24 28 53 51 4c 49 54 45 33 43 unt.c$(SQLITE3C
128b0 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 47  ) /link $(LDFLAG 128c0 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 S)$(LTLINKOPTS)
128d0 0a 0a 73 70 65 65 64 74 65 73 74 31 2e 65 78 65  ..speedtest1.exe
128e0 3a 09 24 28 54 4f 50 29 5c 74 65 73 74 5c 73 70  :.$(TOP)\test\sp 128f0 65 65 64 74 65 73 74 31 2e 63 20 24 28 53 51 4c eedtest1.c$(SQL
12900 49 54 45 33 43 29 20 24 28 53 51 4c 49 54 45 33  ITE3C) $(SQLITE3 12910 48 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28 H)..$(LTLINK) $( 12920 4e 4f 5f 57 41 52 4e 29 20 24 28 53 54 5f 43 4f NO_WARN)$(ST_CO
12930 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 44 53 51  MPILE_OPTS) -DSQ
12940 4c 49 54 45 5f 4f 4d 49 54 5f 4c 4f 41 44 5f 45  LITE_OMIT_LOAD_E
12950 58 54 45 4e 53 49 4f 4e 20 5c 0a 09 09 24 28 54  XTENSION \...$(T 12960 4f 50 29 5c 74 65 73 74 5c 73 70 65 65 64 74 65 OP)\test\speedte 12970 73 74 31 2e 63 20 24 28 53 51 4c 49 54 45 33 43 st1.c$(SQLITE3C
12980 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 47  ) /link $(LDFLAG 12990 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 S)$(LTLINKOPTS)
129a0 0a 0a 6b 76 74 65 73 74 2e 65 78 65 3a 09 24 28  ..kvtest.exe:.$( 129b0 54 4f 50 29 5c 74 65 73 74 5c 6b 76 74 65 73 74 TOP)\test\kvtest 129c0 2e 63 20 24 28 53 51 4c 49 54 45 33 43 29 20 24 .c$(SQLITE3C) $129d0 28 53 51 4c 49 54 45 33 48 29 0a 09 24 28 4c 54 (SQLITE3H)..$(LT
129e0 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57 41 52 4e 29  LINK) $(NO_WARN) 129f0 20 24 28 4b 56 5f 43 4f 4d 50 49 4c 45 5f 4f 50$(KV_COMPILE_OP
12a00 54 53 29 20 5c 0a 09 09 24 28 54 4f 50 29 5c 74  TS) \...$(TOP)\t 12a10 65 73 74 5c 6b 76 74 65 73 74 2e 63 20 24 28 53 est\kvtest.c$(S
12a20 51 4c 49 54 45 33 43 29 20 2f 6c 69 6e 6b 20 24  QLITE3C) /link $12a30 28 4c 44 46 4c 41 47 53 29 20 24 28 4c 54 4c 49 (LDFLAGS)$(LTLI
12a40 4e 4b 4f 50 54 53 29 0a 0a 72 62 75 2e 65 78 65  NKOPTS)..rbu.exe
12a50 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 72 62 75  :.$(TOP)\ext\rbu 12a60 5c 72 62 75 2e 63 20 24 28 54 4f 50 29 5c 65 78 \rbu.c$(TOP)\ex
12a70 74 5c 72 62 75 5c 73 71 6c 69 74 65 33 72 62 75  t\rbu\sqlite3rbu
12a80 2e 63 20 24 28 53 51 4c 49 54 45 33 43 29 20 24  .c $(SQLITE3C)$
12a90 28 53 51 4c 49 54 45 33 48 29 0a 09 24 28 4c 54  (SQLITE3H)..$(LT 12aa0 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57 41 52 4e 29 LINK)$(NO_WARN)
12ab0 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45   -DSQLITE_ENABLE
12ac0 5f 52 42 55 20 5c 0a 09 09 24 28 54 4f 50 29 5c  _RBU \...$(TOP)\ 12ad0 65 78 74 5c 72 62 75 5c 72 62 75 2e 63 20 24 28 ext\rbu\rbu.c$(
12ae0 53 51 4c 49 54 45 33 43 29 20 2f 6c 69 6e 6b 20  SQLITE3C) /link
12af0 24 28 4c 44 46 4c 41 47 53 29 20 24 28 4c 54 4c  $(LDFLAGS)$(LTL
12b00 49 4e 4b 4f 50 54 53 29 0a 0a 4c 53 4d 44 49 52  INKOPTS)..LSMDIR
12b10 3d 24 28 54 4f 50 29 5c 65 78 74 5c 6c 73 6d 31  =$(TOP)\ext\lsm1 12b20 0a 21 49 4e 43 4c 55 44 45 20 24 28 4c 53 4d 44 .!INCLUDE$(LSMD
12b30 49 52 29 5c 4d 61 6b 65 66 69 6c 65 2e 6d 73 63  IR)\Makefile.msc
12b40 0a 0a 6d 6f 72 65 63 6c 65 61 6e 3a 09 63 6c 65  ..moreclean:.cle
12b50 61 6e 0a 09 64 65 6c 20 2f 51 20 24 28 53 51 4c  an..del /Q $(SQL 12b60 49 54 45 33 43 29 20 24 28 53 51 4c 49 54 45 33 ITE3C)$(SQLITE3
12b70 48 29 20 32 3e 4e 55 4c 0a 23 20 3c 3c 2f 6d 61  H) 2>NUL.# <</ma
12b80 72 6b 3e 3e 0a 0a 63 6c 65 61 6e 3a 0a 09 64 65  rk>>..clean:..de
12b90 6c 20 2f 51 20 2a 2e 65 78 70 20 2a 2e 6c 6f 20  l /Q *.exp *.lo
12ba0 2a 2e 69 6c 6b 20 2a 2e 6c 69 62 20 2a 2e 6f 62  *.ilk *.lib *.ob
12bb0 6a 20 2a 2e 6e 63 62 20 2a 2e 70 64 62 20 2a 2e  j *.ncb *.pdb *.
12bc0 73 64 66 20 2a 2e 73 75 6f 20 32 3e 4e 55 4c 0a  sdf *.suo 2>NUL.
12bd0 09 64 65 6c 20 2f 51 20 2a 2e 62 73 63 20 2a 2e  .del /Q *.bsc *.
12be0 64 65 66 20 2a 2e 63 6f 64 20 2a 2e 64 61 20 2a  def *.cod *.da *
12bf0 2e 62 62 20 2a 2e 62 62 67 20 2a 2e 76 63 20 67  .bb *.bbg *.vc g
12c00 6d 6f 6e 2e 6f 75 74 20 32 3e 4e 55 4c 0a 09 64  mon.out 2>NUL..d
12c10 65 6c 20 2f 51 20 24 28 53 51 4c 49 54 45 33 45  el /Q $(SQLITE3E 12c20 58 45 29 20 24 28 53 51 4c 49 54 45 33 44 4c 4c XE)$(SQLITE3DLL
12c30 29 20 52 65 70 6c 61 63 65 2e 65 78 65 20 32 3e  ) Replace.exe 2>
12c40 4e 55 4c 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 09  NUL.# <<mark>>..
12c50 64 65 6c 20 2f 51 20 6f 70 63 6f 64 65 73 2e 63  del /Q opcodes.c
12c60 20 6f 70 63 6f 64 65 73 2e 68 20 32 3e 4e 55 4c   opcodes.h 2>NUL
12c70 0a 09 64 65 6c 20 2f 51 20 6c 65 6d 6f 6e 2e 2a  ..del /Q lemon.*
12c80 20 6c 65 6d 70 61 72 2e 63 20 70 61 72 73 65 2e   lempar.c parse.
12c90 2a 20 32 3e 4e 55 4c 0a 09 64 65 6c 20 2f 51 20  * 2>NUL..del /Q
12ca0 6d 6b 73 6f 75 72 63 65 69 64 2e 2a 20 6d 6b 6b  mksourceid.* mkk
12cb0 65 79 77 6f 72 64 68 61 73 68 2e 2a 20 6b 65 79  eywordhash.* key
12cc0 77 6f 72 64 68 61 73 68 2e 68 20 32 3e 4e 55 4c  wordhash.h 2>NUL
12cd0 0a 09 64 65 6c 20 2f 51 20 6e 6f 74 61 73 68 61  ..del /Q notasha
12ce0 72 65 64 6c 69 62 2e 2a 20 32 3e 4e 55 4c 0a 09  redlib.* 2>NUL..
12cf0 2d 72 6d 64 69 72 20 2f 51 2f 53 20 2e 64 65 70  -rmdir /Q/S .dep
12d00 73 20 32 3e 4e 55 4c 0a 09 2d 72 6d 64 69 72 20  s 2>NUL..-rmdir
12d10 2f 51 2f 53 20 2e 6c 69 62 73 20 32 3e 4e 55 4c  /Q/S .libs 2>NUL
12d20 0a 09 2d 72 6d 64 69 72 20 2f 51 2f 53 20 74 73  ..-rmdir /Q/S ts
12d30 72 63 20 32 3e 4e 55 4c 0a 09 64 65 6c 20 2f 51  rc 2>NUL..del /Q
12d40 20 2e 74 61 72 67 65 74 5f 73 6f 75 72 63 65 20   .target_source
12d50 32 3e 4e 55 4c 0a 09 64 65 6c 20 2f 51 20 74 63  2>NUL..del /Q tc
12d60 6c 73 71 6c 69 74 65 33 2e 65 78 65 20 24 28 53  lsqlite3.exe $(S 12d70 51 4c 49 54 45 54 43 4c 48 29 20 24 28 53 51 4c QLITETCLH)$(SQL
12d80 49 54 45 54 43 4c 44 45 43 4c 53 48 29 20 32 3e  ITETCLDECLSH) 2>
12d90 4e 55 4c 0a 09 64 65 6c 20 2f 51 20 6c 73 6d 2e  NUL..del /Q lsm.
12da0 64 6c 6c 20 6c 73 6d 74 65 73 74 2e 65 78 65 20  dll lsmtest.exe
12db0 32 3e 4e 55 4c 0a 09 64 65 6c 20 2f 51 20 74 65  2>NUL..del /Q te
12dc0 73 74 6c 6f 61 64 65 78 74 2e 64 6c 6c 20 32 3e  stloadext.dll 2>
12dd0 4e 55 4c 0a 09 64 65 6c 20 2f 51 20 74 65 73 74  NUL..del /Q test
12de0 66 69 78 74 75 72 65 2e 65 78 65 20 74 65 73 74  fixture.exe test
12df0 2e 64 62 20 32 3e 4e 55 4c 0a 09 64 65 6c 20 2f  .db 2>NUL..del /
12e00 51 20 4c 6f 67 45 73 74 2e 65 78 65 20 66 74 73  Q LogEst.exe fts
12e10 33 76 69 65 77 2e 65 78 65 20 72 6f 6c 6c 62 61  3view.exe rollba
12e20 63 6b 2d 74 65 73 74 2e 65 78 65 20 73 68 6f 77  ck-test.exe show
12e30 64 62 2e 65 78 65 20 64 62 64 75 6d 70 2e 65 78  db.exe dbdump.ex
12e40 65 20 32 3e 4e 55 4c 0a 09 64 65 6c 20 2f 51 20  e 2>NUL..del /Q
12e50 63 68 61 6e 67 65 73 65 74 2e 65 78 65 20 32 3e  changeset.exe 2>
12e60 4e 55 4c 0a 09 64 65 6c 20 2f 51 20 73 68 6f 77  NUL..del /Q show
12e70 6a 6f 75 72 6e 61 6c 2e 65 78 65 20 73 68 6f 77  journal.exe show
12e80 73 74 61 74 34 2e 65 78 65 20 73 68 6f 77 77 61  stat4.exe showwa
12e90 6c 2e 65 78 65 20 73 70 65 65 64 74 65 73 74 31  l.exe speedtest1
12ea0 2e 65 78 65 20 32 3e 4e 55 4c 0a 09 64 65 6c 20  .exe 2>NUL..del
12eb0 2f 51 20 6d 70 74 65 73 74 65 72 2e 65 78 65 20  /Q mptester.exe
12ec0 77 6f 72 64 63 6f 75 6e 74 2e 65 78 65 20 72 62  wordcount.exe rb
12ed0 75 2e 65 78 65 20 73 72 63 63 6b 31 2e 65 78 65  u.exe srcck1.exe
12ee0 20 32 3e 4e 55 4c 0a 09 64 65 6c 20 2f 51 20 73   2>NUL..del /Q s
12ef0 71 6c 69 74 65 33 2e 63 20 73 71 6c 69 74 65 33  qlite3.c sqlite3
12f00 2d 2a 2e 63 20 73 71 6c 69 74 65 33 2e 68 20 32  -*.c sqlite3.h 2
12f10 3e 4e 55 4c 0a 09 64 65 6c 20 2f 51 20 73 71 6c  >NUL..del /Q sql
12f20 69 74 65 33 72 63 2e 68 20 32 3e 4e 55 4c 0a 09  ite3rc.h 2>NUL..
12f30 64 65 6c 20 2f 51 20 73 68 65 6c 6c 2e 63 20 73  del /Q shell.c s
12f40 71 6c 69 74 65 33 65 78 74 2e 68 20 73 71 6c 69  qlite3ext.h sqli
12f50 74 65 33 73 65 73 73 69 6f 6e 2e 68 20 32 3e 4e  te3session.h 2>N
12f60 55 4c 0a 09 64 65 6c 20 2f 51 20 73 71 6c 69 74  UL..del /Q sqlit
12f70 65 33 5f 61 6e 61 6c 79 7a 65 72 2e 65 78 65 20  e3_analyzer.exe
12f80 73 71 6c 69 74 65 33 5f 61 6e 61 6c 79 7a 65 72  sqlite3_analyzer
12f90 2e 63 20 32 3e 4e 55 4c 0a 09 64 65 6c 20 2f 51  .c 2>NUL..del /Q
12fa0 20 73 71 6c 69 74 65 2d 2a 2d 6f 75 74 70 75 74   sqlite-*-output
12fb0 2e 76 73 69 78 20 32 3e 4e 55 4c 0a 09 64 65 6c  .vsix 2>NUL..del
12fc0 20 2f 51 20 66 75 7a 7a 65 72 73 68 65 6c 6c 2e   /Q fuzzershell.
12fd0 65 78 65 20 66 75 7a 7a 63 68 65 63 6b 2e 65 78  exe fuzzcheck.ex
12fe0 65 20 73 71 6c 64 69 66 66 2e 65 78 65 20 64 62  e sqldiff.exe db
12ff0 68 61 73 68 2e 65 78 65 20 32 3e 4e 55 4c 0a 09  hash.exe 2>NUL..
13000 64 65 6c 20 2f 51 20 73 71 6c 74 63 6c 73 68 2e  del /Q sqltclsh.
13010 2a 20 32 3e 4e 55 4c 0a 09 64 65 6c 20 2f 51 20  * 2>NUL..del /Q
13020 64 62 66 75 7a 7a 2e 65 78 65 20 73 65 73 73 69  dbfuzz.exe sessi
13030 6f 6e 66 75 7a 7a 2e 65 78 65 20 32 3e 4e 55 4c  onfuzz.exe 2>NUL
13040 0a 09 64 65 6c 20 2f 51 20 6b 76 74 65 73 74 2e  ..del /Q kvtest.
13050 65 78 65 20 6f 73 73 73 68 65 6c 6c 2e 65 78 65  exe ossshell.exe
13060 20 73 63 72 75 62 2e 65 78 65 20 32 3e 4e 55 4c   scrub.exe 2>NUL
13070 0a 09 64 65 6c 20 2f 51 20 73 68 6f 77 73 68 6d  ..del /Q showshm
13080 2e 65 78 65 20 73 71 6c 69 74 65 33 5f 63 68 65  .exe sqlite3_che
13090 63 6b 65 72 2e 2a 20 73 71 6c 69 74 65 33 5f 65  cker.* sqlite3_e
130a0 78 70 65 72 74 2e 65 78 65 20 32 3e 4e 55 4c 0a  xpert.exe 2>NUL.
130b0 09 64 65 6c 20 2f 51 20 66 74 73 35 2e 2a 20 66  .del /Q fts5.* f
130c0 74 73 35 70 61 72 73 65 2e 2a 20 32 3e 4e 55 4c  ts5parse.* 2>NUL
130d0 0a 09 64 65 6c 20 2f 51 20 6c 73 6d 2e 68 20 6c  ..del /Q lsm.h l
130e0 73 6d 31 2e 63 20 32 3e 4e 55 4c 0a 23 20 3c 3c  sm1.c 2>NUL.# <<
130f0 2f 6d 61 72 6b 3e 3e 0a                          /mark>>.