/ Hex Artifact Content
Login

Artifact a89ea37ab5928026001569f056973b9059492fe2:


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 30  USE_FULLWARN = 0
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 75 73 65 20  is non-0 to use 
0900: 74 68 65 20 49 6e 74 65 72 6e 61 74 69 6f 6e 61  the Internationa
0910: 6c 20 43 6f 6d 70 6f 6e 65 6e 74 73 20 66 6f 72  l Components for
0920: 20 55 6e 69 63 6f 64 65 20 28 49 43 55 29 2e 0a   Unicode (ICU)..
0930: 23 0a 21 49 46 4e 44 45 46 20 55 53 45 5f 49 43  #.!IFNDEF USE_IC
0940: 55 0a 55 53 45 5f 49 43 55 20 3d 20 30 0a 21 45  U.USE_ICU = 0.!E
0950: 4e 44 49 46 0a 23 20 3c 3c 2f 6d 61 72 6b 3e 3e  NDIF.# <</mark>>
0960: 0a 0a 23 20 53 65 74 20 74 68 69 73 20 6e 6f 6e  ..# Set this non
0970: 2d 30 20 74 6f 20 64 79 6e 61 6d 69 63 61 6c 6c  -0 to dynamicall
0980: 79 20 6c 69 6e 6b 20 74 6f 20 74 68 65 20 4d 53  y link to the MS
0990: 56 43 20 72 75 6e 74 69 6d 65 20 6c 69 62 72 61  VC runtime libra
09a0: 72 79 2e 0a 23 0a 21 49 46 4e 44 45 46 20 55 53  ry..#.!IFNDEF US
09b0: 45 5f 43 52 54 5f 44 4c 4c 0a 55 53 45 5f 43 52  E_CRT_DLL.USE_CR
09c0: 54 5f 44 4c 4c 20 3d 20 30 0a 21 45 4e 44 49 46  T_DLL = 0.!ENDIF
09d0: 0a 0a 23 20 53 65 74 20 74 68 69 73 20 6e 6f 6e  ..# Set this non
09e0: 2d 30 20 74 6f 20 6c 69 6e 6b 20 74 6f 20 74 68  -0 to link to th
09f0: 65 20 52 50 43 52 54 34 20 6c 69 62 72 61 72 79  e RPCRT4 library
0a00: 2e 0a 23 0a 21 49 46 4e 44 45 46 20 55 53 45 5f  ..#.!IFNDEF USE_
0a10: 52 50 43 52 54 34 5f 4c 49 42 0a 55 53 45 5f 52  RPCRT4_LIB.USE_R
0a20: 50 43 52 54 34 5f 4c 49 42 20 3d 20 30 0a 21 45  PCRT4_LIB = 0.!E
0a30: 4e 44 49 46 0a 0a 23 20 53 65 74 20 74 68 69 73  NDIF..# Set this
0a40: 20 6e 6f 6e 2d 30 20 74 6f 20 67 65 6e 65 72 61   non-0 to genera
0a50: 74 65 20 61 73 73 65 6d 62 6c 79 20 63 6f 64 65  te assembly code
0a60: 20 6c 69 73 74 69 6e 67 73 20 66 6f 72 20 74 68   listings for th
0a70: 65 20 73 6f 75 72 63 65 20 63 6f 64 65 0a 23 20  e source code.# 
0a80: 66 69 6c 65 73 2e 0a 23 0a 21 49 46 4e 44 45 46  files..#.!IFNDEF
0a90: 20 55 53 45 5f 4c 49 53 54 49 4e 47 53 0a 55 53   USE_LISTINGS.US
0aa0: 45 5f 4c 49 53 54 49 4e 47 53 20 3d 20 30 0a 21  E_LISTINGS = 0.!
0ab0: 45 4e 44 49 46 0a 0a 23 20 53 65 74 20 74 68 69  ENDIF..# Set thi
0ac0: 73 20 6e 6f 6e 2d 30 20 74 6f 20 61 74 74 65 6d  s non-0 to attem
0ad0: 70 74 20 73 65 74 74 69 6e 67 20 74 68 65 20 6e  pt setting the n
0ae0: 61 74 69 76 65 20 63 6f 6d 70 69 6c 65 72 20 61  ative compiler a
0af0: 75 74 6f 6d 61 74 69 63 61 6c 6c 79 0a 23 20 66  utomatically.# f
0b00: 6f 72 20 63 72 6f 73 73 2d 63 6f 6d 70 69 6c 69  or cross-compili
0b10: 6e 67 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 6c  ng the command l
0b20: 69 6e 65 20 74 6f 6f 6c 73 20 6e 65 65 64 65 64  ine tools needed
0b30: 20 64 75 72 69 6e 67 20 74 68 65 20 63 6f 6d 70   during the comp
0b40: 69 6c 61 74 69 6f 6e 0a 23 20 70 72 6f 63 65 73  ilation.# proces
0b50: 73 2e 0a 23 0a 21 49 46 4e 44 45 46 20 58 43 4f  s..#.!IFNDEF XCO
0b60: 4d 50 49 4c 45 0a 58 43 4f 4d 50 49 4c 45 20 3d  MPILE.XCOMPILE =
0b70: 20 30 0a 21 45 4e 44 49 46 0a 0a 23 20 53 65 74   0.!ENDIF..# Set
0b80: 20 74 68 69 73 20 6e 6f 6e 2d 30 20 74 6f 20 75   this non-0 to u
0b90: 73 65 20 74 68 65 20 6e 61 74 69 76 65 20 6c 69  se the native li
0ba0: 62 72 61 72 69 65 73 20 70 61 74 68 73 20 66 6f  braries paths fo
0bb0: 72 20 63 72 6f 73 73 2d 63 6f 6d 70 69 6c 69 6e  r cross-compilin
0bc0: 67 0a 23 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20  g.# the command 
0bd0: 6c 69 6e 65 20 74 6f 6f 6c 73 20 6e 65 65 64 65  line tools neede
0be0: 64 20 64 75 72 69 6e 67 20 74 68 65 20 63 6f 6d  d during the com
0bf0: 70 69 6c 61 74 69 6f 6e 20 70 72 6f 63 65 73 73  pilation process
0c00: 2e 0a 23 0a 21 49 46 4e 44 45 46 20 55 53 45 5f  ..#.!IFNDEF USE_
0c10: 4e 41 54 49 56 45 5f 4c 49 42 50 41 54 48 53 0a  NATIVE_LIBPATHS.
0c20: 55 53 45 5f 4e 41 54 49 56 45 5f 4c 49 42 50 41  USE_NATIVE_LIBPA
0c30: 54 48 53 20 3d 20 30 0a 21 45 4e 44 49 46 0a 0a  THS = 0.!ENDIF..
0c40: 23 20 53 65 74 20 74 68 69 73 20 30 20 74 6f 20  # Set this 0 to 
0c50: 73 6b 69 70 20 74 68 65 20 63 6f 6d 70 69 6c 69  skip the compili
0c60: 6e 67 20 61 6e 64 20 65 6d 62 65 64 64 69 6e 67  ng and embedding
0c70: 20 6f 66 20 76 65 72 73 69 6f 6e 20 72 65 73 6f   of version reso
0c80: 75 72 63 65 73 2e 0a 23 0a 21 49 46 4e 44 45 46  urces..#.!IFNDEF
0c90: 20 55 53 45 5f 52 43 0a 55 53 45 5f 52 43 20 3d   USE_RC.USE_RC =
0ca0: 20 31 0a 21 45 4e 44 49 46 0a 0a 23 20 53 65 74   1.!ENDIF..# Set
0cb0: 20 74 68 69 73 20 6e 6f 6e 2d 30 20 74 6f 20 63   this non-0 to c
0cc0: 6f 6d 70 69 6c 65 20 62 69 6e 61 72 69 65 73 20  ompile binaries 
0cd0: 73 75 69 74 61 62 6c 65 20 66 6f 72 20 74 68 65  suitable for the
0ce0: 20 57 69 6e 52 54 20 65 6e 76 69 72 6f 6e 6d 65   WinRT environme
0cf0: 6e 74 2e 0a 23 20 54 68 69 73 20 73 65 74 74 69  nt..# This setti
0d00: 6e 67 20 64 6f 65 73 20 6e 6f 74 20 61 70 70 6c  ng does not appl
0d10: 79 20 74 6f 20 61 6e 79 20 62 69 6e 61 72 69 65  y to any binarie
0d20: 73 20 74 68 61 74 20 72 65 71 75 69 72 65 20 54  s that require T
0d30: 63 6c 20 74 6f 20 6f 70 65 72 61 74 65 0a 23 20  cl to operate.# 
0d40: 70 72 6f 70 65 72 6c 79 20 28 69 2e 65 2e 20 74  properly (i.e. t
0d50: 68 65 20 74 65 78 74 20 66 69 78 74 75 72 65 2c  he text fixture,
0d60: 20 65 74 63 29 2e 0a 23 0a 21 49 46 4e 44 45 46   etc)..#.!IFNDEF
0d70: 20 46 4f 52 5f 57 49 4e 52 54 0a 46 4f 52 5f 57   FOR_WINRT.FOR_W
0d80: 49 4e 52 54 20 3d 20 30 0a 21 45 4e 44 49 46 0a  INRT = 0.!ENDIF.
0d90: 0a 23 20 53 65 74 20 74 68 69 73 20 6e 6f 6e 2d  .# Set this non-
0da0: 30 20 74 6f 20 63 6f 6d 70 69 6c 65 20 62 69 6e  0 to compile bin
0db0: 61 72 69 65 73 20 73 75 69 74 61 62 6c 65 20 66  aries suitable f
0dc0: 6f 72 20 74 68 65 20 55 57 50 20 65 6e 76 69 72  or the UWP envir
0dd0: 6f 6e 6d 65 6e 74 2e 0a 23 20 54 68 69 73 20 73  onment..# This s
0de0: 65 74 74 69 6e 67 20 64 6f 65 73 20 6e 6f 74 20  etting does not 
0df0: 61 70 70 6c 79 20 74 6f 20 61 6e 79 20 62 69 6e  apply to any bin
0e00: 61 72 69 65 73 20 74 68 61 74 20 72 65 71 75 69  aries that requi
0e10: 72 65 20 54 63 6c 20 74 6f 20 6f 70 65 72 61 74  re Tcl to operat
0e20: 65 0a 23 20 70 72 6f 70 65 72 6c 79 20 28 69 2e  e.# properly (i.
0e30: 65 2e 20 74 68 65 20 74 65 78 74 20 66 69 78 74  e. the text fixt
0e40: 75 72 65 2c 20 65 74 63 29 2e 0a 23 0a 21 49 46  ure, etc)..#.!IF
0e50: 4e 44 45 46 20 46 4f 52 5f 55 57 50 0a 46 4f 52  NDEF FOR_UWP.FOR
0e60: 5f 55 57 50 20 3d 20 30 0a 21 45 4e 44 49 46 0a  _UWP = 0.!ENDIF.
0e70: 0a 23 20 53 65 74 20 74 68 69 73 20 6e 6f 6e 2d  .# Set this non-
0e80: 30 20 74 6f 20 63 6f 6d 70 69 6c 65 20 62 69 6e  0 to compile bin
0e90: 61 72 69 65 73 20 73 75 69 74 61 62 6c 65 20 66  aries suitable f
0ea0: 6f 72 20 74 68 65 20 57 69 6e 64 6f 77 73 20 31  or the Windows 1
0eb0: 30 20 70 6c 61 74 66 6f 72 6d 2e 0a 23 0a 21 49  0 platform..#.!I
0ec0: 46 4e 44 45 46 20 46 4f 52 5f 57 49 4e 31 30 0a  FNDEF FOR_WIN10.
0ed0: 46 4f 52 5f 57 49 4e 31 30 20 3d 20 30 0a 21 45  FOR_WIN10 = 0.!E
0ee0: 4e 44 49 46 0a 0a 23 20 3c 3c 6d 61 72 6b 3e 3e  NDIF..# <<mark>>
0ef0: 0a 23 20 53 65 74 20 74 68 69 73 20 6e 6f 6e 2d  .# Set this non-
0f00: 30 20 74 6f 20 73 6b 69 70 20 61 74 74 65 6d 70  0 to skip attemp
0f10: 74 69 6e 67 20 74 6f 20 6c 6f 6f 6b 20 66 6f 72  ting to look for
0f20: 20 61 6e 64 2f 6f 72 20 6c 69 6e 6b 20 77 69 74   and/or link wit
0f30: 68 20 74 68 65 20 54 63 6c 0a 23 20 72 75 6e 74  h the Tcl.# runt
0f40: 69 6d 65 20 6c 69 62 72 61 72 79 2e 0a 23 0a 21  ime library..#.!
0f50: 49 46 4e 44 45 46 20 4e 4f 5f 54 43 4c 0a 4e 4f  IFNDEF NO_TCL.NO
0f60: 5f 54 43 4c 20 3d 20 30 0a 21 45 4e 44 49 46 0a  _TCL = 0.!ENDIF.
0f70: 23 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a 0a 23 20 53  # <</mark>>..# S
0f80: 65 74 20 74 68 69 73 20 74 6f 20 6e 6f 6e 2d 30  et this to non-0
0f90: 20 74 6f 20 63 72 65 61 74 65 20 61 6e 64 20 75   to create and u
0fa0: 73 65 20 50 44 42 73 2e 0a 23 0a 21 49 46 4e 44  se PDBs..#.!IFND
0fb0: 45 46 20 53 59 4d 42 4f 4c 53 0a 53 59 4d 42 4f  EF SYMBOLS.SYMBO
0fc0: 4c 53 20 3d 20 31 0a 21 45 4e 44 49 46 0a 0a 23  LS = 1.!ENDIF..#
0fd0: 20 53 65 74 20 74 68 69 73 20 74 6f 20 6e 6f 6e   Set this to non
0fe0: 2d 30 20 74 6f 20 75 73 65 20 74 68 65 20 53 51  -0 to use the SQ
0ff0: 4c 69 74 65 20 64 65 62 75 67 67 69 6e 67 20 68  Lite debugging h
1000: 65 61 70 20 73 75 62 73 79 73 74 65 6d 2e 0a 23  eap subsystem..#
1010: 0a 21 49 46 4e 44 45 46 20 4d 45 4d 44 45 42 55  .!IFNDEF MEMDEBU
1020: 47 0a 4d 45 4d 44 45 42 55 47 20 3d 20 30 0a 21  G.MEMDEBUG = 0.!
1030: 45 4e 44 49 46 0a 0a 23 20 53 65 74 20 74 68 69  ENDIF..# Set thi
1040: 73 20 74 6f 20 6e 6f 6e 2d 30 20 74 6f 20 75 73  s to non-0 to us
1050: 65 20 74 68 65 20 57 69 6e 33 32 20 6e 61 74 69  e the Win32 nati
1060: 76 65 20 68 65 61 70 20 73 75 62 73 79 73 74 65  ve heap subsyste
1070: 6d 2e 0a 23 0a 21 49 46 4e 44 45 46 20 57 49 4e  m..#.!IFNDEF WIN
1080: 33 32 48 45 41 50 0a 57 49 4e 33 32 48 45 41 50  32HEAP.WIN32HEAP
1090: 20 3d 20 30 0a 21 45 4e 44 49 46 0a 0a 23 20 53   = 0.!ENDIF..# S
10a0: 65 74 20 74 68 69 73 20 74 6f 20 6e 6f 6e 2d 30  et this to non-0
10b0: 20 74 6f 20 65 6e 61 62 6c 65 20 4f 53 54 52 41   to enable OSTRA
10c0: 43 45 28 29 20 6d 61 63 72 6f 73 2c 20 77 68 69  CE() macros, whi
10d0: 63 68 20 63 61 6e 20 62 65 20 75 73 65 66 75 6c  ch can be useful
10e0: 20 77 68 65 6e 0a 23 20 64 65 62 75 67 67 69 6e   when.# debuggin
10f0: 67 2e 0a 23 0a 21 49 46 4e 44 45 46 20 4f 53 54  g..#.!IFNDEF OST
1100: 52 41 43 45 0a 4f 53 54 52 41 43 45 20 3d 20 30  RACE.OSTRACE = 0
1110: 0a 21 45 4e 44 49 46 0a 0a 23 20 53 65 74 20 74  .!ENDIF..# Set t
1120: 68 69 73 20 74 6f 20 6f 6e 65 20 6f 66 20 74 68  his to one of th
1130: 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 76 61 6c 75  e following valu
1140: 65 73 20 74 6f 20 65 6e 61 62 6c 65 20 76 61 72  es to enable var
1150: 69 6f 75 73 20 64 65 62 75 67 67 69 6e 67 0a 23  ious debugging.#
1160: 20 66 65 61 74 75 72 65 73 2e 20 20 45 61 63 68   features.  Each
1170: 20 6c 65 76 65 6c 20 69 6e 63 6c 75 64 65 73 20   level includes 
1180: 74 68 65 20 64 65 62 75 67 67 69 6e 67 20 6f 70  the debugging op
1190: 74 69 6f 6e 73 20 66 72 6f 6d 20 74 68 65 20 70  tions from the p
11a0: 72 65 76 69 6f 75 73 0a 23 20 6c 65 76 65 6c 73  revious.# levels
11b0: 2e 20 20 43 75 72 72 65 6e 74 6c 79 2c 20 74 68  .  Currently, th
11c0: 65 20 72 65 63 6f 67 6e 69 7a 65 64 20 76 61 6c  e recognized val
11d0: 75 65 73 20 66 6f 72 20 44 45 42 55 47 20 61 72  ues for DEBUG ar
11e0: 65 3a 0a 23 0a 23 20 30 20 3d 3d 20 4e 44 45 42  e:.#.# 0 == NDEB
11f0: 55 47 3a 20 44 69 73 61 62 6c 65 73 20 61 73 73  UG: Disables ass
1200: 65 72 74 28 29 20 61 6e 64 20 6f 74 68 65 72 20  ert() and other 
1210: 72 75 6e 74 69 6d 65 20 64 69 61 67 6e 6f 73 74  runtime diagnost
1220: 69 63 73 2e 0a 23 20 31 20 3d 3d 20 53 51 4c 49  ics..# 1 == SQLI
1230: 54 45 5f 45 4e 41 42 4c 45 5f 41 50 49 5f 41 52  TE_ENABLE_API_AR
1240: 4d 4f 52 3a 20 65 78 74 72 61 20 61 74 74 65 6d  MOR: extra attem
1250: 70 74 73 20 74 6f 20 64 65 74 65 63 74 20 6d 69  pts to detect mi
1260: 73 75 73 65 20 6f 66 20 74 68 65 20 41 50 49 2e  suse of the API.
1270: 0a 23 20 32 20 3d 3d 20 44 69 73 61 62 6c 65 73  .# 2 == Disables
1280: 20 4e 44 45 42 55 47 20 61 6e 64 20 61 6c 6c 20   NDEBUG and all 
1290: 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 73 20 61 6e  optimizations an
12a0: 64 20 74 68 65 6e 20 65 6e 61 62 6c 65 73 20 50  d then enables P
12b0: 44 42 73 2e 0a 23 20 33 20 3d 3d 20 53 51 4c 49  DBs..# 3 == SQLI
12c0: 54 45 5f 44 45 42 55 47 3a 20 45 6e 61 62 6c 65  TE_DEBUG: Enable
12d0: 73 20 76 61 72 69 6f 75 73 20 64 69 61 67 6e 6f  s various diagno
12e0: 73 74 69 63 73 20 6d 65 73 73 61 67 65 73 20 61  stics messages a
12f0: 6e 64 20 63 6f 64 65 2e 0a 23 20 34 20 3d 3d 20  nd code..# 4 == 
1300: 53 51 4c 49 54 45 5f 57 49 4e 33 32 5f 4d 41 4c  SQLITE_WIN32_MAL
1310: 4c 4f 43 5f 56 41 4c 49 44 41 54 45 3a 20 56 61  LOC_VALIDATE: Va
1320: 6c 69 64 61 74 65 20 74 68 65 20 57 69 6e 33 32  lidate the Win32
1330: 20 6e 61 74 69 76 65 20 68 65 61 70 20 70 65 72   native heap per
1340: 20 63 61 6c 6c 2e 0a 23 20 35 20 3d 3d 20 53 51   call..# 5 == SQ
1350: 4c 49 54 45 5f 44 45 42 55 47 5f 4f 53 5f 54 52  LITE_DEBUG_OS_TR
1360: 41 43 45 3a 20 45 6e 61 62 6c 65 73 20 6f 75 74  ACE: Enables out
1370: 70 75 74 20 66 72 6f 6d 20 74 68 65 20 4f 53 54  put from the OST
1380: 52 41 43 45 28 29 20 6d 61 63 72 6f 73 2e 0a 23  RACE() macros..#
1390: 20 36 20 3d 3d 20 53 51 4c 49 54 45 5f 45 4e 41   6 == SQLITE_ENA
13a0: 42 4c 45 5f 49 4f 54 52 41 43 45 3a 20 45 6e 61  BLE_IOTRACE: Ena
13b0: 62 6c 65 73 20 6f 75 74 70 75 74 20 66 72 6f 6d  bles output from
13c0: 20 74 68 65 20 49 4f 54 52 41 43 45 28 29 20 6d   the IOTRACE() m
13d0: 61 63 72 6f 73 2e 0a 23 0a 21 49 46 4e 44 45 46  acros..#.!IFNDEF
13e0: 20 44 45 42 55 47 0a 44 45 42 55 47 20 3d 20 30   DEBUG.DEBUG = 0
13f0: 0a 21 45 4e 44 49 46 0a 0a 23 20 45 6e 61 62 6c  .!ENDIF..# Enabl
1400: 65 20 75 73 65 20 6f 66 20 61 76 61 69 6c 61 62  e use of availab
1410: 6c 65 20 63 6f 6d 70 69 6c 65 72 20 6f 70 74 69  le compiler opti
1420: 6d 69 7a 61 74 69 6f 6e 73 3f 20 20 4e 6f 72 6d  mizations?  Norm
1430: 61 6c 6c 79 2c 20 74 68 69 73 20 73 68 6f 75 6c  ally, this shoul
1440: 64 20 62 65 0a 23 20 6e 6f 6e 2d 7a 65 72 6f 2e  d be.# non-zero.
1450: 20 20 53 65 74 74 69 6e 67 20 74 68 69 73 20 74    Setting this t
1460: 6f 20 7a 65 72 6f 2c 20 74 68 75 73 20 64 69 73  o zero, thus dis
1470: 61 62 6c 69 6e 67 20 61 6c 6c 20 63 6f 6d 70 69  abling all compi
1480: 6c 65 72 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e  ler optimization
1490: 73 2c 0a 23 20 63 61 6e 20 62 65 20 75 73 65 66  s,.# can be usef
14a0: 75 6c 20 66 6f 72 20 74 65 73 74 69 6e 67 2e 0a  ul for testing..
14b0: 23 0a 21 49 46 4e 44 45 46 20 4f 50 54 49 4d 49  #.!IFNDEF OPTIMI
14c0: 5a 41 54 49 4f 4e 53 0a 4f 50 54 49 4d 49 5a 41  ZATIONS.OPTIMIZA
14d0: 54 49 4f 4e 53 20 3d 20 32 0a 21 45 4e 44 49 46  TIONS = 2.!ENDIF
14e0: 0a 0a 23 20 53 65 74 20 74 68 69 73 20 74 6f 20  ..# Set this to 
14f0: 6e 6f 6e 2d 30 20 74 6f 20 65 6e 61 62 6c 65 20  non-0 to enable 
1500: 73 75 70 70 6f 72 74 20 66 6f 72 20 74 68 65 20  support for the 
1510: 73 65 73 73 69 6f 6e 20 65 78 74 65 6e 73 69 6f  session extensio
1520: 6e 2e 0a 23 0a 21 49 46 4e 44 45 46 20 53 45 53  n..#.!IFNDEF SES
1530: 53 49 4f 4e 0a 53 45 53 53 49 4f 4e 20 3d 20 30  SION.SESSION = 0
1540: 0a 21 45 4e 44 49 46 0a 0a 23 20 53 65 74 20 74  .!ENDIF..# Set t
1550: 68 65 20 73 6f 75 72 63 65 20 63 6f 64 65 20 66  he source code f
1560: 69 6c 65 20 74 6f 20 62 65 20 75 73 65 64 20 62  ile to be used b
1570: 79 20 65 78 65 63 75 74 61 62 6c 65 73 20 61 6e  y executables an
1580: 64 20 6c 69 62 72 61 72 69 65 73 20 77 68 65 6e  d libraries when
1590: 0a 23 20 74 68 65 79 20 6e 65 65 64 20 74 68 65  .# they need the
15a0: 20 61 6d 61 6c 67 61 6d 61 74 69 6f 6e 2e 0a 23   amalgamation..#
15b0: 0a 21 49 46 4e 44 45 46 20 53 51 4c 49 54 45 33  .!IFNDEF SQLITE3
15c0: 43 0a 21 49 46 20 24 28 53 50 4c 49 54 5f 41 4d  C.!IF $(SPLIT_AM
15d0: 41 4c 47 41 4d 41 54 49 4f 4e 29 21 3d 30 0a 53  ALGAMATION)!=0.S
15e0: 51 4c 49 54 45 33 43 20 3d 20 73 71 6c 69 74 65  QLITE3C = sqlite
15f0: 33 2d 61 6c 6c 2e 63 0a 21 45 4c 53 45 0a 53 51  3-all.c.!ELSE.SQ
1600: 4c 49 54 45 33 43 20 3d 20 73 71 6c 69 74 65 33  LITE3C = sqlite3
1610: 2e 63 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 46  .c.!ENDIF.!ENDIF
1620: 0a 0a 23 20 53 65 74 20 74 68 65 20 69 6e 63 6c  ..# Set the incl
1630: 75 64 65 20 63 6f 64 65 20 66 69 6c 65 20 74 6f  ude code file to
1640: 20 62 65 20 75 73 65 64 20 62 79 20 65 78 65 63   be used by exec
1650: 75 74 61 62 6c 65 73 20 61 6e 64 20 6c 69 62 72  utables and libr
1660: 61 72 69 65 73 20 77 68 65 6e 0a 23 20 74 68 65  aries when.# the
1670: 79 20 6e 65 65 64 20 53 51 4c 69 74 65 2e 0a 23  y need SQLite..#
1680: 0a 21 49 46 4e 44 45 46 20 53 51 4c 49 54 45 33  .!IFNDEF SQLITE3
1690: 48 0a 53 51 4c 49 54 45 33 48 20 3d 20 73 71 6c  H.SQLITE3H = sql
16a0: 69 74 65 33 2e 68 0a 21 45 4e 44 49 46 0a 0a 23  ite3.h.!ENDIF..#
16b0: 20 54 68 69 73 20 69 73 20 74 68 65 20 6e 61 6d   This is the nam
16c0: 65 20 74 6f 20 75 73 65 20 66 6f 72 20 74 68 65  e to use for the
16d0: 20 53 51 4c 69 74 65 20 64 79 6e 61 6d 69 63 20   SQLite dynamic 
16e0: 6c 69 6e 6b 20 6c 69 62 72 61 72 79 20 28 44 4c  link library (DL
16f0: 4c 29 2e 0a 23 0a 21 49 46 4e 44 45 46 20 53 51  L)..#.!IFNDEF SQ
1700: 4c 49 54 45 33 44 4c 4c 0a 21 49 46 20 24 28 46  LITE3DLL.!IF $(F
1710: 4f 52 5f 57 49 4e 31 30 29 21 3d 30 0a 53 51 4c  OR_WIN10)!=0.SQL
1720: 49 54 45 33 44 4c 4c 20 3d 20 77 69 6e 73 71 6c  ITE3DLL = winsql
1730: 69 74 65 33 2e 64 6c 6c 0a 21 45 4c 53 45 0a 53  ite3.dll.!ELSE.S
1740: 51 4c 49 54 45 33 44 4c 4c 20 3d 20 73 71 6c 69  QLITE3DLL = sqli
1750: 74 65 33 2e 64 6c 6c 0a 21 45 4e 44 49 46 0a 21  te3.dll.!ENDIF.!
1760: 45 4e 44 49 46 0a 0a 23 20 54 68 69 73 20 69 73  ENDIF..# This is
1770: 20 74 68 65 20 6e 61 6d 65 20 74 6f 20 75 73 65   the name to use
1780: 20 66 6f 72 20 74 68 65 20 53 51 4c 69 74 65 20   for the SQLite 
1790: 69 6d 70 6f 72 74 20 6c 69 62 72 61 72 79 20 28  import library (
17a0: 4c 49 42 29 2e 0a 23 0a 21 49 46 4e 44 45 46 20  LIB)..#.!IFNDEF 
17b0: 53 51 4c 49 54 45 33 4c 49 42 0a 21 49 46 20 24  SQLITE3LIB.!IF $
17c0: 28 46 4f 52 5f 57 49 4e 31 30 29 21 3d 30 0a 53  (FOR_WIN10)!=0.S
17d0: 51 4c 49 54 45 33 4c 49 42 20 3d 20 77 69 6e 73  QLITE3LIB = wins
17e0: 71 6c 69 74 65 33 2e 6c 69 62 0a 21 45 4c 53 45  qlite3.lib.!ELSE
17f0: 0a 53 51 4c 49 54 45 33 4c 49 42 20 3d 20 73 71  .SQLITE3LIB = sq
1800: 6c 69 74 65 33 2e 6c 69 62 0a 21 45 4e 44 49 46  lite3.lib.!ENDIF
1810: 0a 21 45 4e 44 49 46 0a 0a 23 20 54 68 69 73 20  .!ENDIF..# This 
1820: 69 73 20 74 68 65 20 6e 61 6d 65 20 74 6f 20 75  is the name to u
1830: 73 65 20 66 6f 72 20 74 68 65 20 53 51 4c 69 74  se for the SQLit
1840: 65 20 73 68 65 6c 6c 20 65 78 65 63 75 74 61 62  e shell executab
1850: 6c 65 20 28 45 58 45 29 2e 0a 23 0a 21 49 46 4e  le (EXE)..#.!IFN
1860: 44 45 46 20 53 51 4c 49 54 45 33 45 58 45 0a 21  DEF SQLITE3EXE.!
1870: 49 46 20 24 28 46 4f 52 5f 57 49 4e 31 30 29 21  IF $(FOR_WIN10)!
1880: 3d 30 0a 53 51 4c 49 54 45 33 45 58 45 20 3d 20  =0.SQLITE3EXE = 
1890: 77 69 6e 73 71 6c 69 74 65 33 73 68 65 6c 6c 2e  winsqlite3shell.
18a0: 65 78 65 0a 21 45 4c 53 45 0a 53 51 4c 49 54 45  exe.!ELSE.SQLITE
18b0: 33 45 58 45 20 3d 20 73 71 6c 69 74 65 33 2e 65  3EXE = sqlite3.e
18c0: 78 65 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 46  xe.!ENDIF.!ENDIF
18d0: 0a 0a 23 20 54 68 69 73 20 69 73 20 74 68 65 20  ..# This is the 
18e0: 61 72 67 75 6d 65 6e 74 20 75 73 65 64 20 74 6f  argument used to
18f0: 20 73 65 74 20 74 68 65 20 70 72 6f 67 72 61 6d   set the program
1900: 20 64 61 74 61 62 61 73 65 20 28 50 44 42 29 20   database (PDB) 
1910: 66 69 6c 65 20 66 6f 72 20 74 68 65 0a 23 20 53  file for the.# S
1920: 51 4c 69 74 65 20 73 68 65 6c 6c 20 65 78 65 63  QLite shell exec
1930: 75 74 61 62 6c 65 20 28 45 58 45 29 2e 0a 23 0a  utable (EXE)..#.
1940: 21 49 46 4e 44 45 46 20 53 51 4c 49 54 45 33 45  !IFNDEF SQLITE3E
1950: 58 45 50 44 42 0a 21 49 46 20 24 28 46 4f 52 5f  XEPDB.!IF $(FOR_
1960: 57 49 4e 31 30 29 21 3d 30 0a 53 51 4c 49 54 45  WIN10)!=0.SQLITE
1970: 33 45 58 45 50 44 42 20 3d 0a 21 45 4c 53 45 0a  3EXEPDB =.!ELSE.
1980: 53 51 4c 49 54 45 33 45 58 45 50 44 42 20 3d 20  SQLITE3EXEPDB = 
1990: 2f 70 64 62 3a 73 71 6c 69 74 65 33 73 68 2e 70  /pdb:sqlite3sh.p
19a0: 64 62 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 46  db.!ENDIF.!ENDIF
19b0: 0a 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 23 20 54  ..# <<mark>>.# T
19c0: 68 65 73 65 20 61 72 65 20 74 68 65 20 6e 61 6d  hese are the nam
19d0: 65 73 20 6f 66 20 74 68 65 20 63 75 73 74 6f 6d  es of the custom
19e0: 69 7a 65 64 20 54 63 6c 20 68 65 61 64 65 72 20  ized Tcl header 
19f0: 66 69 6c 65 73 20 75 73 65 64 20 62 79 20 76 61  files used by va
1a00: 72 69 6f 75 73 20 70 61 72 74 73 0a 23 20 6f 66  rious parts.# of
1a10: 20 74 68 69 73 20 6d 61 6b 65 66 69 6c 65 20 77   this makefile w
1a20: 68 65 6e 20 74 68 65 20 73 74 64 63 61 6c 6c 20  hen the stdcall 
1a30: 63 61 6c 6c 69 6e 67 20 63 6f 6e 76 65 6e 74 69  calling conventi
1a40: 6f 6e 20 69 73 20 69 6e 20 75 73 65 2e 20 20 49  on is in use.  I
1a50: 74 20 69 73 20 6e 6f 74 0a 23 20 75 73 65 64 20  t is not.# used 
1a60: 66 6f 72 20 61 6e 79 20 6f 74 68 65 72 20 70 75  for any other pu
1a70: 72 70 6f 73 65 2e 0a 23 0a 21 49 46 4e 44 45 46  rpose..#.!IFNDEF
1a80: 20 53 51 4c 49 54 45 54 43 4c 48 0a 53 51 4c 49   SQLITETCLH.SQLI
1a90: 54 45 54 43 4c 48 20 3d 20 73 71 6c 69 74 65 5f  TETCLH = sqlite_
1aa0: 74 63 6c 2e 68 0a 21 45 4e 44 49 46 0a 0a 21 49  tcl.h.!ENDIF..!I
1ab0: 46 4e 44 45 46 20 53 51 4c 49 54 45 54 43 4c 44  FNDEF SQLITETCLD
1ac0: 45 43 4c 53 48 0a 53 51 4c 49 54 45 54 43 4c 44  ECLSH.SQLITETCLD
1ad0: 45 43 4c 53 48 20 3d 20 73 71 6c 69 74 65 5f 74  ECLSH = sqlite_t
1ae0: 63 6c 44 65 63 6c 73 2e 68 0a 21 45 4e 44 49 46  clDecls.h.!ENDIF
1af0: 0a 0a 23 20 54 68 65 73 65 20 61 72 65 20 74 68  ..# These are th
1b00: 65 20 61 64 64 69 74 69 6f 6e 61 6c 20 74 61 72  e additional tar
1b10: 67 65 74 73 20 74 68 61 74 20 74 68 65 20 74 61  gets that the ta
1b20: 72 67 65 74 73 20 74 68 61 74 20 69 6e 74 65 67  rgets that integ
1b30: 72 61 74 65 20 77 69 74 68 20 74 68 65 0a 23 20  rate with the.# 
1b40: 54 63 6c 20 6c 69 62 72 61 72 79 20 73 68 6f 75  Tcl library shou
1b50: 6c 64 20 64 65 70 65 6e 64 20 6f 6e 20 77 68 65  ld depend on whe
1b60: 6e 20 63 6f 6d 70 69 6c 69 6e 67 2c 20 65 74 63  n compiling, etc
1b70: 2e 0a 23 0a 21 49 46 4e 44 45 46 20 53 51 4c 49  ..#.!IFNDEF SQLI
1b80: 54 45 5f 54 43 4c 5f 44 45 50 0a 21 49 46 20 24  TE_TCL_DEP.!IF $
1b90: 28 55 53 45 5f 53 54 44 43 41 4c 4c 29 21 3d 30  (USE_STDCALL)!=0
1ba0: 20 7c 7c 20 24 28 46 4f 52 5f 57 49 4e 31 30 29   || $(FOR_WIN10)
1bb0: 21 3d 30 0a 53 51 4c 49 54 45 5f 54 43 4c 5f 44  !=0.SQLITE_TCL_D
1bc0: 45 50 20 3d 20 24 28 53 51 4c 49 54 45 54 43 4c  EP = $(SQLITETCL
1bd0: 44 45 43 4c 53 48 29 20 24 28 53 51 4c 49 54 45  DECLSH) $(SQLITE
1be0: 54 43 4c 48 29 0a 21 45 4c 53 45 0a 53 51 4c 49  TCLH).!ELSE.SQLI
1bf0: 54 45 5f 54 43 4c 5f 44 45 50 20 3d 0a 21 45 4e  TE_TCL_DEP =.!EN
1c00: 44 49 46 0a 21 45 4e 44 49 46 0a 23 20 3c 3c 2f  DIF.!ENDIF.# <</
1c10: 6d 61 72 6b 3e 3e 0a 0a 23 20 54 68 65 73 65 20  mark>>..# These 
1c20: 61 72 65 20 74 68 65 20 22 73 74 61 6e 64 61 72  are the "standar
1c30: 64 22 20 53 51 4c 69 74 65 20 63 6f 6d 70 69 6c  d" SQLite compil
1c40: 61 74 69 6f 6e 20 6f 70 74 69 6f 6e 73 20 75 73  ation options us
1c50: 65 64 20 77 68 65 6e 20 63 6f 6d 70 69 6c 69 6e  ed when compilin
1c60: 67 20 66 6f 72 0a 23 20 74 68 65 20 57 69 6e 64  g for.# the Wind
1c70: 6f 77 73 20 70 6c 61 74 66 6f 72 6d 2e 0a 23 0a  ows platform..#.
1c80: 21 49 46 4e 44 45 46 20 4f 50 54 5f 46 45 41 54  !IFNDEF OPT_FEAT
1c90: 55 52 45 5f 46 4c 41 47 53 0a 21 49 46 20 24 28  URE_FLAGS.!IF $(
1ca0: 4d 49 4e 49 4d 41 4c 5f 41 4d 41 4c 47 41 4d 41  MINIMAL_AMALGAMA
1cb0: 54 49 4f 4e 29 3d 3d 30 0a 4f 50 54 5f 46 45 41  TION)==0.OPT_FEA
1cc0: 54 55 52 45 5f 46 4c 41 47 53 20 3d 20 24 28 4f  TURE_FLAGS = $(O
1cd0: 50 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53  PT_FEATURE_FLAGS
1ce0: 29 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c  ) -DSQLITE_ENABL
1cf0: 45 5f 46 54 53 33 3d 31 0a 4f 50 54 5f 46 45 41  E_FTS3=1.OPT_FEA
1d00: 54 55 52 45 5f 46 4c 41 47 53 20 3d 20 24 28 4f  TURE_FLAGS = $(O
1d10: 50 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53  PT_FEATURE_FLAGS
1d20: 29 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c  ) -DSQLITE_ENABL
1d30: 45 5f 52 54 52 45 45 3d 31 0a 21 45 4e 44 49 46  E_RTREE=1.!ENDIF
1d40: 0a 4f 50 54 5f 46 45 41 54 55 52 45 5f 46 4c 41  .OPT_FEATURE_FLA
1d50: 47 53 20 3d 20 24 28 4f 50 54 5f 46 45 41 54 55  GS = $(OPT_FEATU
1d60: 52 45 5f 46 4c 41 47 53 29 20 2d 44 53 51 4c 49  RE_FLAGS) -DSQLI
1d70: 54 45 5f 45 4e 41 42 4c 45 5f 43 4f 4c 55 4d 4e  TE_ENABLE_COLUMN
1d80: 5f 4d 45 54 41 44 41 54 41 3d 31 0a 21 45 4e 44  _METADATA=1.!END
1d90: 49 46 0a 0a 23 20 53 68 6f 75 6c 64 20 74 68 65  IF..# Should the
1da0: 20 73 65 73 73 69 6f 6e 20 65 78 74 65 6e 73 69   session extensi
1db0: 6f 6e 20 62 65 20 65 6e 61 62 6c 65 64 3f 20 20  on be enabled?  
1dc0: 49 66 20 73 6f 2c 20 61 64 64 20 63 6f 6d 70 69  If so, add compi
1dd0: 6c 61 74 69 6f 6e 20 6f 70 74 69 6f 6e 73 0a 23  lation options.#
1de0: 20 74 6f 20 65 6e 61 62 6c 65 20 69 74 2e 0a 23   to enable it..#
1df0: 0a 21 49 46 20 24 28 53 45 53 53 49 4f 4e 29 21  .!IF $(SESSION)!
1e00: 3d 30 0a 4f 50 54 5f 46 45 41 54 55 52 45 5f 46  =0.OPT_FEATURE_F
1e10: 4c 41 47 53 20 3d 20 24 28 4f 50 54 5f 46 45 41  LAGS = $(OPT_FEA
1e20: 54 55 52 45 5f 46 4c 41 47 53 29 20 2d 44 53 51  TURE_FLAGS) -DSQ
1e30: 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 53 45 53 53  LITE_ENABLE_SESS
1e40: 49 4f 4e 3d 31 0a 4f 50 54 5f 46 45 41 54 55 52  ION=1.OPT_FEATUR
1e50: 45 5f 46 4c 41 47 53 20 3d 20 24 28 4f 50 54 5f  E_FLAGS = $(OPT_
1e60: 46 45 41 54 55 52 45 5f 46 4c 41 47 53 29 20 2d  FEATURE_FLAGS) -
1e70: 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 50  DSQLITE_ENABLE_P
1e80: 52 45 55 50 44 41 54 45 5f 48 4f 4f 4b 3d 31 0a  REUPDATE_HOOK=1.
1e90: 21 45 4e 44 49 46 0a 0a 23 20 54 68 65 73 65 20  !ENDIF..# These 
1ea0: 61 72 65 20 74 68 65 20 22 65 78 74 65 6e 64 65  are the "extende
1eb0: 64 22 20 53 51 4c 69 74 65 20 63 6f 6d 70 69 6c  d" SQLite compil
1ec0: 61 74 69 6f 6e 20 6f 70 74 69 6f 6e 73 20 75 73  ation options us
1ed0: 65 64 20 77 68 65 6e 20 63 6f 6d 70 69 6c 69 6e  ed when compilin
1ee0: 67 20 66 6f 72 0a 23 20 74 68 65 20 57 69 6e 64  g for.# the Wind
1ef0: 6f 77 73 20 31 30 20 70 6c 61 74 66 6f 72 6d 2e  ows 10 platform.
1f00: 0a 23 0a 21 49 46 4e 44 45 46 20 45 58 54 5f 46  .#.!IFNDEF EXT_F
1f10: 45 41 54 55 52 45 5f 46 4c 41 47 53 0a 21 49 46  EATURE_FLAGS.!IF
1f20: 20 24 28 46 4f 52 5f 57 49 4e 31 30 29 21 3d 30   $(FOR_WIN10)!=0
1f30: 0a 45 58 54 5f 46 45 41 54 55 52 45 5f 46 4c 41  .EXT_FEATURE_FLA
1f40: 47 53 20 3d 20 24 28 45 58 54 5f 46 45 41 54 55  GS = $(EXT_FEATU
1f50: 52 45 5f 46 4c 41 47 53 29 20 2d 44 53 51 4c 49  RE_FLAGS) -DSQLI
1f60: 54 45 5f 45 4e 41 42 4c 45 5f 46 54 53 34 3d 31  TE_ENABLE_FTS4=1
1f70: 0a 45 58 54 5f 46 45 41 54 55 52 45 5f 46 4c 41  .EXT_FEATURE_FLA
1f80: 47 53 20 3d 20 24 28 45 58 54 5f 46 45 41 54 55  GS = $(EXT_FEATU
1f90: 52 45 5f 46 4c 41 47 53 29 20 2d 44 53 51 4c 49  RE_FLAGS) -DSQLI
1fa0: 54 45 5f 53 59 53 54 45 4d 5f 4d 41 4c 4c 4f 43  TE_SYSTEM_MALLOC
1fb0: 3d 31 0a 45 58 54 5f 46 45 41 54 55 52 45 5f 46  =1.EXT_FEATURE_F
1fc0: 4c 41 47 53 20 3d 20 24 28 45 58 54 5f 46 45 41  LAGS = $(EXT_FEA
1fd0: 54 55 52 45 5f 46 4c 41 47 53 29 20 2d 44 53 51  TURE_FLAGS) -DSQ
1fe0: 4c 49 54 45 5f 4f 4d 49 54 5f 4c 4f 43 41 4c 54  LITE_OMIT_LOCALT
1ff0: 49 4d 45 3d 31 0a 21 45 4c 53 45 0a 45 58 54 5f  IME=1.!ELSE.EXT_
2000: 46 45 41 54 55 52 45 5f 46 4c 41 47 53 20 3d 0a  FEATURE_FLAGS =.
2010: 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a 23  !ENDIF.!ENDIF..#
2020: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
2030: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
2040: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
2050: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
2060: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 0a 23  ##############.#
2070: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
2080: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 20 45  ############## E
2090: 4e 44 20 4f 46 20 4f 50 54 49 4f 4e 53 20 23 23  ND OF OPTIONS ##
20a0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
20b0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 0a 23  ##############.#
20c0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
20d0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
20e0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
20f0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
2100: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 0a 0a  ##############..
2110: 23 20 57 68 65 6e 20 63 6f 6d 70 69 6c 69 6e 67  # When compiling
2120: 20 66 6f 72 20 74 68 65 20 57 69 6e 64 6f 77 73   for the Windows
2130: 20 31 30 20 70 6c 61 74 66 6f 72 6d 2c 20 74 68   10 platform, th
2140: 65 20 50 4c 41 54 46 4f 52 4d 20 6d 61 63 72 6f  e PLATFORM macro
2150: 20 6d 75 73 74 20 62 65 20 73 65 74 0a 23 20 74   must be set.# t
2160: 6f 20 61 6e 20 61 70 70 72 6f 70 72 69 61 74 65  o an appropriate
2170: 20 76 61 6c 75 65 20 28 65 2e 67 2e 20 78 38 36   value (e.g. x86
2180: 2c 20 78 36 34 2c 20 61 72 6d 2c 20 61 72 6d 36  , x64, arm, arm6
2190: 34 2c 20 65 74 63 29 2e 0a 23 0a 21 49 46 20 24  4, etc)..#.!IF $
21a0: 28 46 4f 52 5f 57 49 4e 31 30 29 21 3d 30 0a 21  (FOR_WIN10)!=0.!
21b0: 49 46 4e 44 45 46 20 50 4c 41 54 46 4f 52 4d 0a  IFNDEF PLATFORM.
21c0: 21 45 52 52 4f 52 20 55 73 69 6e 67 20 74 68 65  !ERROR Using the
21d0: 20 46 4f 52 5f 57 49 4e 31 30 20 6f 70 74 69 6f   FOR_WIN10 optio
21e0: 6e 20 72 65 71 75 69 72 65 73 20 61 20 76 61 6c  n requires a val
21f0: 75 65 20 66 6f 72 20 50 4c 41 54 46 4f 52 4d 2e  ue for PLATFORM.
2200: 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a  .!ENDIF.!ENDIF..
2210: 23 20 54 68 69 73 20 61 73 73 75 6d 65 73 20 74  # This assumes t
2220: 68 61 74 20 4d 53 56 43 20 69 73 20 61 6c 77 61  hat MSVC is alwa
2230: 79 73 20 69 6e 73 74 61 6c 6c 65 64 20 69 6e 20  ys installed in 
2240: 33 32 2d 62 69 74 20 50 72 6f 67 72 61 6d 20 46  32-bit Program F
2250: 69 6c 65 73 20 64 69 72 65 63 74 6f 72 79 0a 23  iles directory.#
2260: 20 61 6e 64 20 73 65 74 73 20 74 68 65 20 76 61   and sets the va
2270: 72 69 61 62 6c 65 20 66 6f 72 20 75 73 65 20 69  riable for use i
2280: 6e 20 6c 6f 63 61 74 69 6e 67 20 6f 74 68 65 72  n locating other
2290: 20 33 32 2d 62 69 74 20 69 6e 73 74 61 6c 6c 73   32-bit installs
22a0: 20 61 63 63 6f 72 64 69 6e 67 6c 79 2e 0a 23 0a   accordingly..#.
22b0: 50 52 4f 47 52 41 4d 46 49 4c 45 53 5f 58 38 36  PROGRAMFILES_X86
22c0: 20 3d 20 24 28 56 43 49 4e 53 54 41 4c 4c 44 49   = $(VCINSTALLDI
22d0: 52 29 5c 2e 2e 5c 2e 2e 0a 50 52 4f 47 52 41 4d  R)\..\...PROGRAM
22e0: 46 49 4c 45 53 5f 58 38 36 20 3d 20 24 28 50 52  FILES_X86 = $(PR
22f0: 4f 47 52 41 4d 46 49 4c 45 53 5f 58 38 36 3a 5c  OGRAMFILES_X86:\
2300: 5c 3d 5c 29 0a 0a 23 20 43 68 65 63 6b 20 66 6f  \=\)..# Check fo
2310: 72 20 74 68 65 20 70 72 65 64 65 66 69 6e 65 64  r the predefined
2320: 20 63 6f 6d 6d 61 6e 64 20 6d 61 63 72 6f 20 43   command macro C
2330: 43 2e 20 20 54 68 69 73 20 73 68 6f 75 6c 64 20  C.  This should 
2340: 70 6f 69 6e 74 20 74 6f 20 74 68 65 20 63 6f 6d  point to the com
2350: 70 69 6c 65 72 0a 23 20 62 69 6e 61 72 79 20 66  piler.# binary f
2360: 6f 72 20 74 68 65 20 74 61 72 67 65 74 20 70 6c  or the target pl
2370: 61 74 66 6f 72 6d 2e 20 20 49 66 20 69 74 20 69  atform.  If it i
2380: 73 20 6e 6f 74 20 64 65 66 69 6e 65 64 2c 20 73  s not defined, s
2390: 69 6d 70 6c 79 20 64 65 66 69 6e 65 20 69 74 20  imply define it 
23a0: 74 6f 0a 23 20 74 68 65 20 6c 65 67 61 63 79 20  to.# the legacy 
23b0: 64 65 66 61 75 6c 74 20 76 61 6c 75 65 20 27 63  default value 'c
23c0: 6c 2e 65 78 65 27 2e 0a 23 0a 21 49 46 4e 44 45  l.exe'..#.!IFNDE
23d0: 46 20 43 43 0a 43 43 20 3d 20 63 6c 2e 65 78 65  F CC.CC = cl.exe
23e0: 0a 21 45 4e 44 49 46 0a 0a 23 20 43 68 65 63 6b  .!ENDIF..# Check
23f0: 20 66 6f 72 20 74 68 65 20 70 72 65 64 65 66 69   for the predefi
2400: 6e 65 64 20 63 6f 6d 6d 61 6e 64 20 6d 61 63 72  ned command macr
2410: 6f 20 43 53 43 2e 20 20 54 68 69 73 20 73 68 6f  o CSC.  This sho
2420: 75 6c 64 20 70 6f 69 6e 74 20 74 6f 20 61 20 77  uld point to a w
2430: 6f 72 6b 69 6e 67 0a 23 20 43 20 53 68 61 72 70  orking.# C Sharp
2440: 20 63 6f 6d 70 69 6c 65 72 20 62 69 6e 61 72 79   compiler binary
2450: 2e 20 20 49 66 20 69 74 20 69 73 20 6e 6f 74 20  .  If it is not 
2460: 64 65 66 69 6e 65 64 2c 20 73 69 6d 70 6c 79 20  defined, simply 
2470: 64 65 66 69 6e 65 20 69 74 20 74 6f 20 74 68 65  define it to the
2480: 0a 23 20 6c 65 67 61 63 79 20 64 65 66 61 75 6c  .# legacy defaul
2490: 74 20 76 61 6c 75 65 20 27 63 73 63 2e 65 78 65  t value 'csc.exe
24a0: 27 2e 0a 23 0a 21 49 46 4e 44 45 46 20 43 53 43  '..#.!IFNDEF CSC
24b0: 0a 43 53 43 20 3d 20 63 73 63 2e 65 78 65 0a 21  .CSC = csc.exe.!
24c0: 45 4e 44 49 46 0a 0a 23 20 43 68 65 63 6b 20 66  ENDIF..# Check f
24d0: 6f 72 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 6d  or the command m
24e0: 61 63 72 6f 20 4c 44 2e 20 20 54 68 69 73 20 73  acro LD.  This s
24f0: 68 6f 75 6c 64 20 70 6f 69 6e 74 20 74 6f 20 74  hould point to t
2500: 68 65 20 6c 69 6e 6b 65 72 20 62 69 6e 61 72 79  he linker binary
2510: 20 66 6f 72 0a 23 20 74 68 65 20 74 61 72 67 65   for.# the targe
2520: 74 20 70 6c 61 74 66 6f 72 6d 2e 20 20 49 66 20  t platform.  If 
2530: 69 74 20 69 73 20 6e 6f 74 20 64 65 66 69 6e 65  it is not define
2540: 64 2c 20 73 69 6d 70 6c 79 20 64 65 66 69 6e 65  d, simply define
2550: 20 69 74 20 74 6f 20 74 68 65 20 6c 65 67 61 63   it to the legac
2560: 79 0a 23 20 64 65 66 61 75 6c 74 20 76 61 6c 75  y.# default valu
2570: 65 20 27 6c 69 6e 6b 2e 65 78 65 27 2e 0a 23 0a  e 'link.exe'..#.
2580: 21 49 46 4e 44 45 46 20 4c 44 0a 4c 44 20 3d 20  !IFNDEF LD.LD = 
2590: 6c 69 6e 6b 2e 65 78 65 0a 21 45 4e 44 49 46 0a  link.exe.!ENDIF.
25a0: 0a 23 20 43 68 65 63 6b 20 66 6f 72 20 74 68 65  .# Check for the
25b0: 20 70 72 65 64 65 66 69 6e 65 64 20 63 6f 6d 6d   predefined comm
25c0: 61 6e 64 20 6d 61 63 72 6f 20 52 43 2e 20 20 54  and macro RC.  T
25d0: 68 69 73 20 73 68 6f 75 6c 64 20 70 6f 69 6e 74  his should point
25e0: 20 74 6f 20 74 68 65 20 72 65 73 6f 75 72 63 65   to the resource
25f0: 0a 23 20 63 6f 6d 70 69 6c 65 72 20 62 69 6e 61  .# compiler bina
2600: 72 79 20 66 6f 72 20 74 68 65 20 74 61 72 67 65  ry for the targe
2610: 74 20 70 6c 61 74 66 6f 72 6d 2e 20 20 49 66 20  t platform.  If 
2620: 69 74 20 69 73 20 6e 6f 74 20 64 65 66 69 6e 65  it is not define
2630: 64 2c 20 73 69 6d 70 6c 79 20 64 65 66 69 6e 65  d, simply define
2640: 0a 23 20 69 74 20 74 6f 20 74 68 65 20 6c 65 67  .# it to the leg
2650: 61 63 79 20 64 65 66 61 75 6c 74 20 76 61 6c 75  acy default valu
2660: 65 20 27 72 63 2e 65 78 65 27 2e 0a 23 0a 21 49  e 'rc.exe'..#.!I
2670: 46 4e 44 45 46 20 52 43 0a 52 43 20 3d 20 72 63  FNDEF RC.RC = rc
2680: 2e 65 78 65 0a 21 45 4e 44 49 46 0a 0a 23 20 43  .exe.!ENDIF..# C
2690: 68 65 63 6b 20 66 6f 72 20 74 68 65 20 4d 53 56  heck for the MSV
26a0: 43 20 72 75 6e 74 69 6d 65 20 6c 69 62 72 61 72  C runtime librar
26b0: 79 20 70 61 74 68 20 6d 61 63 72 6f 2e 20 20 4f  y path macro.  O
26c0: 74 68 65 72 77 69 73 65 2c 20 74 68 69 73 20 76  therwise, this v
26d0: 61 6c 75 65 20 77 69 6c 6c 0a 23 20 64 65 66 61  alue will.# defa
26e0: 75 6c 74 20 74 6f 20 74 68 65 20 27 6c 69 62 27  ult to the 'lib'
26f0: 20 64 69 72 65 63 74 6f 72 79 20 75 6e 64 65 72   directory under
2700: 6e 65 61 74 68 20 74 68 65 20 4d 53 56 43 20 69  neath the MSVC i
2710: 6e 73 74 61 6c 6c 61 74 69 6f 6e 20 64 69 72 65  nstallation dire
2720: 63 74 6f 72 79 2e 0a 23 0a 21 49 46 4e 44 45 46  ctory..#.!IFNDEF
2730: 20 43 52 54 4c 49 42 50 41 54 48 0a 43 52 54 4c   CRTLIBPATH.CRTL
2740: 49 42 50 41 54 48 20 3d 20 24 28 56 43 49 4e 53  IBPATH = $(VCINS
2750: 54 41 4c 4c 44 49 52 29 5c 6c 69 62 0a 21 45 4e  TALLDIR)\lib.!EN
2760: 44 49 46 0a 0a 43 52 54 4c 49 42 50 41 54 48 20  DIF..CRTLIBPATH 
2770: 3d 20 24 28 43 52 54 4c 49 42 50 41 54 48 3a 5c  = $(CRTLIBPATH:\
2780: 5c 3d 5c 29 0a 0a 23 20 43 68 65 63 6b 20 66 6f  \=\)..# Check fo
2790: 72 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 6d 61  r the command ma
27a0: 63 72 6f 20 4e 43 43 2e 20 20 54 68 69 73 20 73  cro NCC.  This s
27b0: 68 6f 75 6c 64 20 70 6f 69 6e 74 20 74 6f 20 74  hould point to t
27c0: 68 65 20 63 6f 6d 70 69 6c 65 72 20 62 69 6e 61  he compiler bina
27d0: 72 79 0a 23 20 66 6f 72 20 74 68 65 20 70 6c 61  ry.# for the pla
27e0: 74 66 6f 72 6d 20 74 68 65 20 63 6f 6d 70 69 6c  tform the compil
27f0: 61 74 69 6f 6e 20 70 72 6f 63 65 73 73 20 69 73  ation process is
2800: 20 74 61 6b 69 6e 67 20 70 6c 61 63 65 20 6f 6e   taking place on
2810: 2e 20 20 49 66 20 69 74 20 69 73 20 6e 6f 74 0a  .  If it is not.
2820: 23 20 64 65 66 69 6e 65 64 2c 20 73 69 6d 70 6c  # defined, simpl
2830: 79 20 64 65 66 69 6e 65 20 69 74 20 74 6f 20 68  y define it to h
2840: 61 76 65 20 74 68 65 20 73 61 6d 65 20 76 61 6c  ave the same val
2850: 75 65 20 61 73 20 74 68 65 20 43 43 20 6d 61 63  ue as the CC mac
2860: 72 6f 2e 20 20 57 68 65 6e 0a 23 20 63 72 6f 73  ro.  When.# cros
2870: 73 2d 63 6f 6d 70 69 6c 69 6e 67 2c 20 69 74 20  s-compiling, it 
2880: 69 73 20 73 75 67 67 65 73 74 65 64 20 74 68 61  is suggested tha
2890: 74 20 74 68 69 73 20 6d 61 63 72 6f 20 62 65 20  t this macro be 
28a0: 6d 6f 64 69 66 69 65 64 20 76 69 61 20 74 68 65  modified via the
28b0: 20 63 6f 6d 6d 61 6e 64 0a 23 20 6c 69 6e 65 20   command.# line 
28c0: 28 73 69 6e 63 65 20 6e 6d 61 6b 65 20 69 74 73  (since nmake its
28d0: 65 6c 66 20 64 6f 65 73 20 6e 6f 74 20 70 72 6f  elf does not pro
28e0: 76 69 64 65 20 61 20 62 75 69 6c 74 2d 69 6e 20  vide a built-in 
28f0: 6d 65 74 68 6f 64 20 74 6f 20 67 75 65 73 73 20  method to guess 
2900: 69 74 29 2e 0a 23 20 46 6f 72 20 65 78 61 6d 70  it)..# For examp
2910: 6c 65 2c 20 74 6f 20 75 73 65 20 74 68 65 20 78  le, to use the x
2920: 38 36 20 63 6f 6d 70 69 6c 65 72 20 77 68 65 6e  86 compiler when
2930: 20 63 72 6f 73 73 2d 63 6f 6d 70 69 6c 69 6e 67   cross-compiling
2940: 20 66 6f 72 20 78 36 34 2c 20 61 20 63 6f 6d 6d   for x64, a comm
2950: 61 6e 64 0a 23 20 6c 69 6e 65 20 73 69 6d 69 6c  and.# line simil
2960: 61 72 20 74 6f 20 74 68 65 20 66 6f 6c 6c 6f 77  ar to the follow
2970: 69 6e 67 20 63 6f 75 6c 64 20 62 65 20 75 73 65  ing could be use
2980: 64 20 28 61 6c 6c 20 6f 6e 20 6f 6e 65 20 6c 69  d (all on one li
2990: 6e 65 29 3a 0a 23 0a 23 20 20 20 20 20 6e 6d 61  ne):.#.#     nma
29a0: 6b 65 20 2f 66 20 4d 61 6b 65 66 69 6c 65 2e 6d  ke /f Makefile.m
29b0: 73 63 20 73 71 6c 69 74 65 33 2e 64 6c 6c 0a 23  sc sqlite3.dll.#
29c0: 20 20 20 20 20 20 20 20 20 20 20 58 43 4f 4d 50             XCOMP
29d0: 49 4c 45 3d 31 20 55 53 45 5f 4e 41 54 49 56 45  ILE=1 USE_NATIVE
29e0: 5f 4c 49 42 50 41 54 48 53 3d 31 0a 23 0a 23 20  _LIBPATHS=1.#.# 
29f0: 41 6c 74 65 72 6e 61 74 69 76 65 6c 79 2c 20 74  Alternatively, t
2a00: 68 65 20 66 75 6c 6c 20 70 61 74 68 20 61 6e 64  he full path and
2a10: 20 66 69 6c 65 20 6e 61 6d 65 20 74 6f 20 74 68   file name to th
2a20: 65 20 63 6f 6d 70 69 6c 65 72 20 62 69 6e 61 72  e compiler binar
2a30: 79 20 66 6f 72 20 74 68 65 0a 23 20 70 6c 61 74  y for the.# plat
2a40: 66 6f 72 6d 20 74 68 65 20 63 6f 6d 70 69 6c 61  form the compila
2a50: 74 69 6f 6e 20 70 72 6f 63 65 73 73 20 69 73 20  tion process is 
2a60: 74 61 6b 69 6e 67 20 70 6c 61 63 65 20 6d 61 79  taking place may
2a70: 20 62 65 20 73 70 65 63 69 66 69 65 64 20 28 61   be specified (a
2a80: 6c 6c 20 6f 6e 0a 23 20 6f 6e 65 20 6c 69 6e 65  ll on.# one line
2a90: 29 3a 0a 23 0a 23 20 20 20 20 20 6e 6d 61 6b 65  ):.#.#     nmake
2aa0: 20 2f 66 20 4d 61 6b 65 66 69 6c 65 2e 6d 73 63   /f Makefile.msc
2ab0: 20 73 71 6c 69 74 65 33 2e 64 6c 6c 0a 23 20 20   sqlite3.dll.#  
2ac0: 20 20 20 20 20 20 20 20 20 22 4e 43 43 3d 22 22           "NCC=""
2ad0: 25 56 43 49 4e 53 54 41 4c 4c 44 49 52 25 5c 62  %VCINSTALLDIR%\b
2ae0: 69 6e 5c 63 6c 2e 65 78 65 22 22 22 0a 23 20 20  in\cl.exe""".#  
2af0: 20 20 20 20 20 20 20 20 20 55 53 45 5f 4e 41 54           USE_NAT
2b00: 49 56 45 5f 4c 49 42 50 41 54 48 53 3d 31 0a 23  IVE_LIBPATHS=1.#
2b10: 0a 21 49 46 44 45 46 20 4e 43 43 0a 4e 43 43 20  .!IFDEF NCC.NCC 
2b20: 3d 20 24 28 4e 43 43 3a 5c 5c 3d 5c 29 0a 21 45  = $(NCC:\\=\).!E
2b30: 4c 53 45 49 46 20 24 28 58 43 4f 4d 50 49 4c 45  LSEIF $(XCOMPILE
2b40: 29 21 3d 30 0a 4e 43 43 20 3d 20 22 24 28 56 43  )!=0.NCC = "$(VC
2b50: 49 4e 53 54 41 4c 4c 44 49 52 29 5c 62 69 6e 5c  INSTALLDIR)\bin\
2b60: 24 28 43 43 29 22 0a 4e 43 43 20 3d 20 24 28 4e  $(CC)".NCC = $(N
2b70: 43 43 3a 5c 5c 3d 5c 29 0a 21 45 4c 53 45 0a 4e  CC:\\=\).!ELSE.N
2b80: 43 43 20 3d 20 24 28 43 43 29 0a 21 45 4e 44 49  CC = $(CC).!ENDI
2b90: 46 0a 0a 23 20 43 68 65 63 6b 20 66 6f 72 20 74  F..# Check for t
2ba0: 68 65 20 4d 53 56 43 20 6e 61 74 69 76 65 20 72  he MSVC native r
2bb0: 75 6e 74 69 6d 65 20 6c 69 62 72 61 72 79 20 70  untime library p
2bc0: 61 74 68 20 6d 61 63 72 6f 2e 20 20 4f 74 68 65  ath macro.  Othe
2bd0: 72 77 69 73 65 2c 0a 23 20 74 68 69 73 20 76 61  rwise,.# this va
2be0: 6c 75 65 20 77 69 6c 6c 20 64 65 66 61 75 6c 74  lue will default
2bf0: 20 74 6f 20 74 68 65 20 27 6c 69 62 27 20 64 69   to the 'lib' di
2c00: 72 65 63 74 6f 72 79 20 75 6e 64 65 72 6e 65 61  rectory undernea
2c10: 74 68 20 74 68 65 20 4d 53 56 43 0a 23 20 69 6e  th the MSVC.# in
2c20: 73 74 61 6c 6c 61 74 69 6f 6e 20 64 69 72 65 63  stallation direc
2c30: 74 6f 72 79 2e 0a 23 0a 21 49 46 4e 44 45 46 20  tory..#.!IFNDEF 
2c40: 4e 43 52 54 4c 49 42 50 41 54 48 0a 4e 43 52 54  NCRTLIBPATH.NCRT
2c50: 4c 49 42 50 41 54 48 20 3d 20 24 28 56 43 49 4e  LIBPATH = $(VCIN
2c60: 53 54 41 4c 4c 44 49 52 29 5c 6c 69 62 0a 21 45  STALLDIR)\lib.!E
2c70: 4e 44 49 46 0a 0a 4e 43 52 54 4c 49 42 50 41 54  NDIF..NCRTLIBPAT
2c80: 48 20 3d 20 24 28 4e 43 52 54 4c 49 42 50 41 54  H = $(NCRTLIBPAT
2c90: 48 3a 5c 5c 3d 5c 29 0a 0a 23 20 43 68 65 63 6b  H:\\=\)..# Check
2ca0: 20 66 6f 72 20 74 68 65 20 50 6c 61 74 66 6f 72   for the Platfor
2cb0: 6d 20 53 44 4b 20 6c 69 62 72 61 72 79 20 70 61  m SDK library pa
2cc0: 74 68 20 6d 61 63 72 6f 2e 20 20 4f 74 68 65 72  th macro.  Other
2cd0: 77 69 73 65 2c 20 74 68 69 73 0a 23 20 76 61 6c  wise, this.# val
2ce0: 75 65 20 77 69 6c 6c 20 64 65 66 61 75 6c 74 20  ue will default 
2cf0: 74 6f 20 74 68 65 20 27 6c 69 62 27 20 64 69 72  to the 'lib' dir
2d00: 65 63 74 6f 72 79 20 75 6e 64 65 72 6e 65 61 74  ectory underneat
2d10: 68 20 74 68 65 20 57 69 6e 64 6f 77 73 0a 23 20  h the Windows.# 
2d20: 53 44 4b 20 69 6e 73 74 61 6c 6c 61 74 69 6f 6e  SDK installation
2d30: 20 64 69 72 65 63 74 6f 72 79 20 28 74 68 65 20   directory (the 
2d40: 65 6e 76 69 72 6f 6e 6d 65 6e 74 20 76 61 72 69  environment vari
2d50: 61 62 6c 65 20 75 73 65 64 20 61 70 70 65 61 72  able used appear
2d60: 73 0a 23 20 74 6f 20 62 65 20 61 76 61 69 6c 61  s.# to be availa
2d70: 62 6c 65 20 77 68 65 6e 20 75 73 69 6e 67 20 56  ble when using V
2d80: 69 73 75 61 6c 20 43 2b 2b 20 32 30 30 38 20 6f  isual C++ 2008 o
2d90: 72 20 6c 61 74 65 72 20 76 69 61 20 74 68 65 0a  r later via the.
2da0: 23 20 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65 29 2e  # command line).
2db0: 0a 23 0a 21 49 46 4e 44 45 46 20 4e 53 44 4b 4c  .#.!IFNDEF NSDKL
2dc0: 49 42 50 41 54 48 0a 4e 53 44 4b 4c 49 42 50 41  IBPATH.NSDKLIBPA
2dd0: 54 48 20 3d 20 24 28 57 49 4e 44 4f 57 53 53 44  TH = $(WINDOWSSD
2de0: 4b 44 49 52 29 5c 6c 69 62 0a 21 45 4e 44 49 46  KDIR)\lib.!ENDIF
2df0: 0a 0a 4e 53 44 4b 4c 49 42 50 41 54 48 20 3d 20  ..NSDKLIBPATH = 
2e00: 24 28 4e 53 44 4b 4c 49 42 50 41 54 48 3a 5c 5c  $(NSDKLIBPATH:\\
2e10: 3d 5c 29 0a 0a 23 20 43 68 65 63 6b 20 66 6f 72  =\)..# Check for
2e20: 20 74 68 65 20 55 43 52 54 20 6c 69 62 72 61 72   the UCRT librar
2e30: 79 20 70 61 74 68 20 6d 61 63 72 6f 2e 20 20 4f  y path macro.  O
2e40: 74 68 65 72 77 69 73 65 2c 20 74 68 69 73 20 76  therwise, this v
2e50: 61 6c 75 65 20 77 69 6c 6c 0a 23 20 64 65 66 61  alue will.# defa
2e60: 75 6c 74 20 74 6f 20 74 68 65 20 76 65 72 73 69  ult to the versi
2e70: 6f 6e 2d 73 70 65 63 69 66 69 63 2c 20 70 6c 61  on-specific, pla
2e80: 74 66 6f 72 6d 2d 73 70 65 63 69 66 69 63 20 27  tform-specific '
2e90: 6c 69 62 27 20 64 69 72 65 63 74 6f 72 79 0a 23  lib' directory.#
2ea0: 20 75 6e 64 65 72 6e 65 61 74 68 20 74 68 65 20   underneath the 
2eb0: 57 69 6e 64 6f 77 73 20 53 44 4b 20 69 6e 73 74  Windows SDK inst
2ec0: 61 6c 6c 61 74 69 6f 6e 20 64 69 72 65 63 74 6f  allation directo
2ed0: 72 79 2e 0a 23 0a 21 49 46 4e 44 45 46 20 55 43  ry..#.!IFNDEF UC
2ee0: 52 54 4c 49 42 50 41 54 48 0a 55 43 52 54 4c 49  RTLIBPATH.UCRTLI
2ef0: 42 50 41 54 48 20 3d 20 24 28 57 49 4e 44 4f 57  BPATH = $(WINDOW
2f00: 53 53 44 4b 44 49 52 29 5c 6c 69 62 5c 24 28 57  SSDKDIR)\lib\$(W
2f10: 49 4e 44 4f 57 53 53 44 4b 4c 49 42 56 45 52 53  INDOWSSDKLIBVERS
2f20: 49 4f 4e 29 5c 75 63 72 74 5c 24 28 50 4c 41 54  ION)\ucrt\$(PLAT
2f30: 46 4f 52 4d 29 0a 21 45 4e 44 49 46 0a 0a 55 43  FORM).!ENDIF..UC
2f40: 52 54 4c 49 42 50 41 54 48 20 3d 20 24 28 55 43  RTLIBPATH = $(UC
2f50: 52 54 4c 49 42 50 41 54 48 3a 5c 5c 3d 5c 29 0a  RTLIBPATH:\\=\).
2f60: 0a 23 20 43 20 63 6f 6d 70 69 6c 65 72 20 61 6e  .# C compiler an
2f70: 64 20 6f 70 74 69 6f 6e 73 20 66 6f 72 20 75 73  d options for us
2f80: 65 20 69 6e 20 62 75 69 6c 64 69 6e 67 20 65 78  e in building ex
2f90: 65 63 75 74 61 62 6c 65 73 20 74 68 61 74 0a 23  ecutables that.#
2fa0: 20 77 69 6c 6c 20 72 75 6e 20 6f 6e 20 74 68 65   will run on the
2fb0: 20 70 6c 61 74 66 6f 72 6d 20 74 68 61 74 20 69   platform that i
2fc0: 73 20 64 6f 69 6e 67 20 74 68 65 20 62 75 69 6c  s doing the buil
2fd0: 64 2e 0a 23 0a 21 49 46 20 24 28 55 53 45 5f 46  d..#.!IF $(USE_F
2fe0: 55 4c 4c 57 41 52 4e 29 21 3d 30 0a 42 43 43 20  ULLWARN)!=0.BCC 
2ff0: 3d 20 24 28 4e 43 43 29 20 2d 6e 6f 6c 6f 67 6f  = $(NCC) -nologo
3000: 20 2d 57 34 20 24 28 43 43 4f 50 54 53 29 20 24   -W4 $(CCOPTS) $
3010: 28 42 43 43 4f 50 54 53 29 0a 21 45 4c 53 45 0a  (BCCOPTS).!ELSE.
3020: 42 43 43 20 3d 20 24 28 4e 43 43 29 20 2d 6e 6f  BCC = $(NCC) -no
3030: 6c 6f 67 6f 20 2d 57 33 20 24 28 43 43 4f 50 54  logo -W3 $(CCOPT
3040: 53 29 20 24 28 42 43 43 4f 50 54 53 29 0a 21 45  S) $(BCCOPTS).!E
3050: 4e 44 49 46 0a 0a 23 20 43 68 65 63 6b 20 69 66  NDIF..# Check if
3060: 20 61 73 73 65 6d 62 6c 79 20 63 6f 64 65 20 6c   assembly code l
3070: 69 73 74 69 6e 67 73 20 73 68 6f 75 6c 64 20 62  istings should b
3080: 65 20 67 65 6e 65 72 61 74 65 64 20 66 6f 72 20  e generated for 
3090: 74 68 65 20 73 6f 75 72 63 65 0a 23 20 63 6f 64  the source.# cod
30a0: 65 20 66 69 6c 65 73 20 74 6f 20 62 65 20 63 6f  e files to be co
30b0: 6d 70 69 6c 65 64 2e 0a 23 0a 21 49 46 20 24 28  mpiled..#.!IF $(
30c0: 55 53 45 5f 4c 49 53 54 49 4e 47 53 29 21 3d 30  USE_LISTINGS)!=0
30d0: 0a 42 43 43 20 3d 20 24 28 42 43 43 29 20 2d 46  .BCC = $(BCC) -F
30e0: 41 63 73 0a 21 45 4e 44 49 46 0a 0a 23 20 43 68  Acs.!ENDIF..# Ch
30f0: 65 63 6b 20 69 66 20 74 68 65 20 6e 61 74 69 76  eck if the nativ
3100: 65 20 6c 69 62 72 61 72 79 20 70 61 74 68 73 20  e library paths 
3110: 73 68 6f 75 6c 64 20 62 65 20 75 73 65 64 20 77  should be used w
3120: 68 65 6e 20 63 6f 6d 70 69 6c 69 6e 67 0a 23 20  hen compiling.# 
3130: 74 68 65 20 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65  the command line
3140: 20 74 6f 6f 6c 73 20 75 73 65 64 20 64 75 72 69   tools used duri
3150: 6e 67 20 74 68 65 20 63 6f 6d 70 69 6c 61 74 69  ng the compilati
3160: 6f 6e 20 70 72 6f 63 65 73 73 2e 20 20 49 66 0a  on process.  If.
3170: 23 20 73 6f 2c 20 73 65 74 20 74 68 65 20 6e 65  # so, set the ne
3180: 63 65 73 73 61 72 79 20 6d 61 63 72 6f 20 6e 6f  cessary macro no
3190: 77 2e 0a 23 0a 21 49 46 20 24 28 55 53 45 5f 4e  w..#.!IF $(USE_N
31a0: 41 54 49 56 45 5f 4c 49 42 50 41 54 48 53 29 21  ATIVE_LIBPATHS)!
31b0: 3d 30 0a 4e 4c 54 4c 49 42 50 41 54 48 53 20 3d  =0.NLTLIBPATHS =
31c0: 20 22 2f 4c 49 42 50 41 54 48 3a 24 28 4e 43 52   "/LIBPATH:$(NCR
31d0: 54 4c 49 42 50 41 54 48 29 22 20 22 2f 4c 49 42  TLIBPATH)" "/LIB
31e0: 50 41 54 48 3a 24 28 4e 53 44 4b 4c 49 42 50 41  PATH:$(NSDKLIBPA
31f0: 54 48 29 22 0a 0a 21 49 46 44 45 46 20 4e 55 43  TH)"..!IFDEF NUC
3200: 52 54 4c 49 42 50 41 54 48 0a 4e 55 43 52 54 4c  RTLIBPATH.NUCRTL
3210: 49 42 50 41 54 48 20 3d 20 24 28 4e 55 43 52 54  IBPATH = $(NUCRT
3220: 4c 49 42 50 41 54 48 3a 5c 5c 3d 5c 29 0a 4e 4c  LIBPATH:\\=\).NL
3230: 54 4c 49 42 50 41 54 48 53 20 3d 20 24 28 4e 4c  TLIBPATHS = $(NL
3240: 54 4c 49 42 50 41 54 48 53 29 20 22 2f 4c 49 42  TLIBPATHS) "/LIB
3250: 50 41 54 48 3a 24 28 4e 55 43 52 54 4c 49 42 50  PATH:$(NUCRTLIBP
3260: 41 54 48 29 22 0a 21 45 4e 44 49 46 0a 21 45 4e  ATH)".!ENDIF.!EN
3270: 44 49 46 0a 0a 23 20 43 20 63 6f 6d 70 69 6c 65  DIF..# C compile
3280: 72 20 61 6e 64 20 6f 70 74 69 6f 6e 73 20 66 6f  r and options fo
3290: 72 20 75 73 65 20 69 6e 20 62 75 69 6c 64 69 6e  r use in buildin
32a0: 67 20 65 78 65 63 75 74 61 62 6c 65 73 20 74 68  g executables th
32b0: 61 74 0a 23 20 77 69 6c 6c 20 72 75 6e 20 6f 6e  at.# will run on
32c0: 20 74 68 65 20 74 61 72 67 65 74 20 70 6c 61 74   the target plat
32d0: 66 6f 72 6d 2e 20 20 28 42 43 43 20 61 6e 64 20  form.  (BCC and 
32e0: 54 43 43 20 61 72 65 20 75 73 75 61 6c 6c 79 20  TCC are usually 
32f0: 74 68 65 0a 23 20 73 61 6d 65 20 75 6e 6c 65 73  the.# same unles
3300: 73 20 79 6f 75 72 20 61 72 65 20 63 72 6f 73 73  s your are cross
3310: 2d 63 6f 6d 70 69 6c 69 6e 67 2e 29 0a 23 0a 21  -compiling.).#.!
3320: 49 46 20 24 28 55 53 45 5f 46 55 4c 4c 57 41 52  IF $(USE_FULLWAR
3330: 4e 29 21 3d 30 0a 54 43 43 20 3d 20 24 28 43 43  N)!=0.TCC = $(CC
3340: 29 20 2d 6e 6f 6c 6f 67 6f 20 2d 57 34 20 2d 44  ) -nologo -W4 -D
3350: 49 4e 43 4c 55 44 45 5f 4d 53 56 43 5f 48 3d 31  INCLUDE_MSVC_H=1
3360: 20 24 28 43 43 4f 50 54 53 29 20 24 28 54 43 43   $(CCOPTS) $(TCC
3370: 4f 50 54 53 29 0a 21 45 4c 53 45 0a 54 43 43 20  OPTS).!ELSE.TCC 
3380: 3d 20 24 28 43 43 29 20 2d 6e 6f 6c 6f 67 6f 20  = $(CC) -nologo 
3390: 2d 57 33 20 24 28 43 43 4f 50 54 53 29 20 24 28  -W3 $(CCOPTS) $(
33a0: 54 43 43 4f 50 54 53 29 0a 21 45 4e 44 49 46 0a  TCCOPTS).!ENDIF.
33b0: 0a 23 20 43 68 65 63 6b 20 69 66 20 77 61 72 6e  .# Check if warn
33c0: 69 6e 67 73 20 73 68 6f 75 6c 64 20 62 65 20 74  ings should be t
33d0: 72 65 61 74 65 64 20 61 73 20 65 72 72 6f 72 73  reated as errors
33e0: 20 77 68 65 6e 20 63 6f 6d 70 69 6c 69 6e 67 2e   when compiling.
33f0: 0a 23 0a 21 49 46 20 24 28 55 53 45 5f 46 41 54  .#.!IF $(USE_FAT
3400: 41 4c 5f 57 41 52 4e 29 21 3d 30 0a 54 43 43 20  AL_WARN)!=0.TCC 
3410: 3d 20 24 28 54 43 43 29 20 2d 57 58 0a 21 45 4e  = $(TCC) -WX.!EN
3420: 44 49 46 0a 0a 54 43 43 20 3d 20 24 28 54 43 43  DIF..TCC = $(TCC
3430: 29 20 2d 44 53 51 4c 49 54 45 5f 4f 53 5f 57 49  ) -DSQLITE_OS_WI
3440: 4e 3d 31 20 2d 49 2e 20 2d 49 24 28 54 4f 50 29  N=1 -I. -I$(TOP)
3450: 20 2d 49 24 28 54 4f 50 29 5c 73 72 63 20 2d 66   -I$(TOP)\src -f
3460: 70 3a 70 72 65 63 69 73 65 0a 52 43 43 20 3d 20  p:precise.RCC = 
3470: 24 28 52 43 29 20 2d 44 53 51 4c 49 54 45 5f 4f  $(RC) -DSQLITE_O
3480: 53 5f 57 49 4e 3d 31 20 2d 49 2e 20 2d 49 24 28  S_WIN=1 -I. -I$(
3490: 54 4f 50 29 20 2d 49 24 28 54 4f 50 29 5c 73 72  TOP) -I$(TOP)\sr
34a0: 63 20 24 28 52 43 4f 50 54 53 29 20 24 28 52 43  c $(RCOPTS) $(RC
34b0: 43 4f 50 54 53 29 0a 0a 23 20 43 68 65 63 6b 20  COPTS)..# Check 
34c0: 69 66 20 77 65 20 77 61 6e 74 20 74 6f 20 75 73  if we want to us
34d0: 65 20 74 68 65 20 22 73 74 64 63 61 6c 6c 22 20  e the "stdcall" 
34e0: 63 61 6c 6c 69 6e 67 20 63 6f 6e 76 65 6e 74 69  calling conventi
34f0: 6f 6e 20 77 68 65 6e 20 63 6f 6d 70 69 6c 69 6e  on when compilin
3500: 67 2e 0a 23 20 54 68 69 73 20 69 73 20 6e 6f 74  g..# This is not
3510: 20 73 75 70 70 6f 72 74 65 64 20 62 79 20 74 68   supported by th
3520: 65 20 63 6f 6d 70 69 6c 65 72 73 20 66 6f 72 20  e compilers for 
3530: 6e 6f 6e 2d 78 38 36 20 70 6c 61 74 66 6f 72 6d  non-x86 platform
3540: 73 2e 20 20 49 74 20 73 68 6f 75 6c 64 0a 23 20  s.  It should.# 
3550: 61 6c 73 6f 20 62 65 20 6e 6f 74 65 64 20 68 65  also be noted he
3560: 72 65 20 74 68 61 74 20 62 75 69 6c 64 69 6e 67  re that building
3570: 20 61 6e 79 20 74 61 72 67 65 74 20 77 69 74 68   any target with
3580: 20 74 68 65 73 65 20 22 73 74 64 63 61 6c 6c 22   these "stdcall"
3590: 20 6f 70 74 69 6f 6e 73 0a 23 20 77 69 6c 6c 20   options.# will 
35a0: 6d 6f 73 74 20 6c 69 6b 65 6c 79 20 66 61 69 6c  most likely fail
35b0: 20 69 66 20 74 68 65 20 54 63 6c 20 6c 69 62 72   if the Tcl libr
35c0: 61 72 79 20 69 73 20 61 6c 73 6f 20 72 65 71 75  ary is also requ
35d0: 69 72 65 64 2e 20 20 54 68 69 73 20 69 73 20 64  ired.  This is d
35e0: 75 65 0a 23 20 74 6f 20 68 6f 77 20 74 68 65 20  ue.# to how the 
35f0: 54 63 6c 20 6c 69 62 72 61 72 79 20 66 75 6e 63  Tcl library func
3600: 74 69 6f 6e 73 20 61 72 65 20 64 65 63 6c 61 72  tions are declar
3610: 65 64 20 61 6e 64 20 65 78 70 6f 72 74 65 64 20  ed and exported 
3620: 28 69 2e 65 2e 20 77 69 74 68 6f 75 74 0a 23 20  (i.e. without.# 
3630: 61 6e 20 65 78 70 6c 69 63 69 74 20 63 61 6c 6c  an explicit call
3640: 69 6e 67 20 63 6f 6e 76 65 6e 74 69 6f 6e 2c 20  ing convention, 
3650: 77 68 69 63 68 20 72 65 73 75 6c 74 73 20 69 6e  which results in
3660: 20 22 63 64 65 63 6c 22 29 2e 0a 23 0a 21 49 46   "cdecl")..#.!IF
3670: 20 24 28 55 53 45 5f 53 54 44 43 41 4c 4c 29 21   $(USE_STDCALL)!
3680: 3d 30 20 7c 7c 20 24 28 46 4f 52 5f 57 49 4e 31  =0 || $(FOR_WIN1
3690: 30 29 21 3d 30 0a 21 49 46 20 22 24 28 50 4c 41  0)!=0.!IF "$(PLA
36a0: 54 46 4f 52 4d 29 22 3d 3d 22 78 38 36 22 0a 43  TFORM)"=="x86".C
36b0: 4f 52 45 5f 43 43 4f 4e 56 5f 4f 50 54 53 20 3d  ORE_CCONV_OPTS =
36c0: 20 2d 47 7a 20 2d 44 53 51 4c 49 54 45 5f 43 44   -Gz -DSQLITE_CD
36d0: 45 43 4c 3d 5f 5f 63 64 65 63 6c 20 2d 44 53 51  ECL=__cdecl -DSQ
36e0: 4c 49 54 45 5f 41 50 49 43 41 4c 4c 3d 5f 5f 73  LITE_APICALL=__s
36f0: 74 64 63 61 6c 6c 20 2d 44 53 51 4c 49 54 45 5f  tdcall -DSQLITE_
3700: 43 41 4c 4c 42 41 43 4b 3d 5f 5f 73 74 64 63 61  CALLBACK=__stdca
3710: 6c 6c 20 2d 44 53 51 4c 49 54 45 5f 53 59 53 41  ll -DSQLITE_SYSA
3720: 50 49 3d 5f 5f 73 74 64 63 61 6c 6c 0a 53 48 45  PI=__stdcall.SHE
3730: 4c 4c 5f 43 43 4f 4e 56 5f 4f 50 54 53 20 3d 20  LL_CCONV_OPTS = 
3740: 2d 47 7a 20 2d 44 53 51 4c 49 54 45 5f 43 44 45  -Gz -DSQLITE_CDE
3750: 43 4c 3d 5f 5f 63 64 65 63 6c 20 2d 44 53 51 4c  CL=__cdecl -DSQL
3760: 49 54 45 5f 41 50 49 43 41 4c 4c 3d 5f 5f 73 74  ITE_APICALL=__st
3770: 64 63 61 6c 6c 20 2d 44 53 51 4c 49 54 45 5f 43  dcall -DSQLITE_C
3780: 41 4c 4c 42 41 43 4b 3d 5f 5f 73 74 64 63 61 6c  ALLBACK=__stdcal
3790: 6c 20 2d 44 53 51 4c 49 54 45 5f 53 59 53 41 50  l -DSQLITE_SYSAP
37a0: 49 3d 5f 5f 73 74 64 63 61 6c 6c 0a 23 20 3c 3c  I=__stdcall.# <<
37b0: 6d 61 72 6b 3e 3e 0a 54 45 53 54 5f 43 43 4f 4e  mark>>.TEST_CCON
37c0: 56 5f 4f 50 54 53 20 3d 20 2d 47 7a 20 2d 44 53  V_OPTS = -Gz -DS
37d0: 51 4c 49 54 45 5f 43 44 45 43 4c 3d 5f 5f 63 64  QLITE_CDECL=__cd
37e0: 65 63 6c 20 2d 44 53 51 4c 49 54 45 5f 41 50 49  ecl -DSQLITE_API
37f0: 43 41 4c 4c 3d 5f 5f 73 74 64 63 61 6c 6c 20 2d  CALL=__stdcall -
3800: 44 53 51 4c 49 54 45 5f 43 41 4c 4c 42 41 43 4b  DSQLITE_CALLBACK
3810: 3d 5f 5f 73 74 64 63 61 6c 6c 20 2d 44 53 51 4c  =__stdcall -DSQL
3820: 49 54 45 5f 53 59 53 41 50 49 3d 5f 5f 73 74 64  ITE_SYSAPI=__std
3830: 63 61 6c 6c 20 2d 44 49 4e 43 4c 55 44 45 5f 53  call -DINCLUDE_S
3840: 51 4c 49 54 45 5f 54 43 4c 5f 48 3d 31 20 2d 44  QLITE_TCL_H=1 -D
3850: 53 51 4c 49 54 45 5f 54 43 4c 41 50 49 3d 5f 5f  SQLITE_TCLAPI=__
3860: 63 64 65 63 6c 0a 23 20 3c 3c 2f 6d 61 72 6b 3e  cdecl.# <</mark>
3870: 3e 0a 21 45 4c 53 45 0a 21 49 46 4e 44 45 46 20  >.!ELSE.!IFNDEF 
3880: 50 4c 41 54 46 4f 52 4d 0a 43 4f 52 45 5f 43 43  PLATFORM.CORE_CC
3890: 4f 4e 56 5f 4f 50 54 53 20 3d 20 2d 47 7a 20 2d  ONV_OPTS = -Gz -
38a0: 44 53 51 4c 49 54 45 5f 43 44 45 43 4c 3d 5f 5f  DSQLITE_CDECL=__
38b0: 63 64 65 63 6c 20 2d 44 53 51 4c 49 54 45 5f 41  cdecl -DSQLITE_A
38c0: 50 49 43 41 4c 4c 3d 5f 5f 73 74 64 63 61 6c 6c  PICALL=__stdcall
38d0: 20 2d 44 53 51 4c 49 54 45 5f 43 41 4c 4c 42 41   -DSQLITE_CALLBA
38e0: 43 4b 3d 5f 5f 73 74 64 63 61 6c 6c 20 2d 44 53  CK=__stdcall -DS
38f0: 51 4c 49 54 45 5f 53 59 53 41 50 49 3d 5f 5f 73  QLITE_SYSAPI=__s
3900: 74 64 63 61 6c 6c 0a 53 48 45 4c 4c 5f 43 43 4f  tdcall.SHELL_CCO
3910: 4e 56 5f 4f 50 54 53 20 3d 20 2d 47 7a 20 2d 44  NV_OPTS = -Gz -D
3920: 53 51 4c 49 54 45 5f 43 44 45 43 4c 3d 5f 5f 63  SQLITE_CDECL=__c
3930: 64 65 63 6c 20 2d 44 53 51 4c 49 54 45 5f 41 50  decl -DSQLITE_AP
3940: 49 43 41 4c 4c 3d 5f 5f 73 74 64 63 61 6c 6c 20  ICALL=__stdcall 
3950: 2d 44 53 51 4c 49 54 45 5f 43 41 4c 4c 42 41 43  -DSQLITE_CALLBAC
3960: 4b 3d 5f 5f 73 74 64 63 61 6c 6c 20 2d 44 53 51  K=__stdcall -DSQ
3970: 4c 49 54 45 5f 53 59 53 41 50 49 3d 5f 5f 73 74  LITE_SYSAPI=__st
3980: 64 63 61 6c 6c 0a 23 20 3c 3c 6d 61 72 6b 3e 3e  dcall.# <<mark>>
3990: 0a 54 45 53 54 5f 43 43 4f 4e 56 5f 4f 50 54 53  .TEST_CCONV_OPTS
39a0: 20 3d 20 2d 47 7a 20 2d 44 53 51 4c 49 54 45 5f   = -Gz -DSQLITE_
39b0: 43 44 45 43 4c 3d 5f 5f 63 64 65 63 6c 20 2d 44  CDECL=__cdecl -D
39c0: 53 51 4c 49 54 45 5f 41 50 49 43 41 4c 4c 3d 5f  SQLITE_APICALL=_
39d0: 5f 73 74 64 63 61 6c 6c 20 2d 44 53 51 4c 49 54  _stdcall -DSQLIT
39e0: 45 5f 43 41 4c 4c 42 41 43 4b 3d 5f 5f 73 74 64  E_CALLBACK=__std
39f0: 63 61 6c 6c 20 2d 44 53 51 4c 49 54 45 5f 53 59  call -DSQLITE_SY
3a00: 53 41 50 49 3d 5f 5f 73 74 64 63 61 6c 6c 20 2d  SAPI=__stdcall -
3a10: 44 49 4e 43 4c 55 44 45 5f 53 51 4c 49 54 45 5f  DINCLUDE_SQLITE_
3a20: 54 43 4c 5f 48 3d 31 20 2d 44 53 51 4c 49 54 45  TCL_H=1 -DSQLITE
3a30: 5f 54 43 4c 41 50 49 3d 5f 5f 63 64 65 63 6c 0a  _TCLAPI=__cdecl.
3a40: 23 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a 21 45 4c 53  # <</mark>>.!ELS
3a50: 45 0a 43 4f 52 45 5f 43 43 4f 4e 56 5f 4f 50 54  E.CORE_CCONV_OPT
3a60: 53 20 3d 0a 53 48 45 4c 4c 5f 43 43 4f 4e 56 5f  S =.SHELL_CCONV_
3a70: 4f 50 54 53 20 3d 0a 23 20 3c 3c 6d 61 72 6b 3e  OPTS =.# <<mark>
3a80: 3e 0a 54 45 53 54 5f 43 43 4f 4e 56 5f 4f 50 54  >.TEST_CCONV_OPT
3a90: 53 20 3d 0a 23 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a  S =.# <</mark>>.
3aa0: 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 21 45  !ENDIF.!ENDIF.!E
3ab0: 4c 53 45 0a 43 4f 52 45 5f 43 43 4f 4e 56 5f 4f  LSE.CORE_CCONV_O
3ac0: 50 54 53 20 3d 0a 53 48 45 4c 4c 5f 43 43 4f 4e  PTS =.SHELL_CCON
3ad0: 56 5f 4f 50 54 53 20 3d 0a 23 20 3c 3c 6d 61 72  V_OPTS =.# <<mar
3ae0: 6b 3e 3e 0a 54 45 53 54 5f 43 43 4f 4e 56 5f 4f  k>>.TEST_CCONV_O
3af0: 50 54 53 20 3d 0a 23 20 3c 3c 2f 6d 61 72 6b 3e  PTS =.# <</mark>
3b00: 3e 0a 21 45 4e 44 49 46 0a 0a 23 20 54 68 65 73  >.!ENDIF..# Thes
3b10: 65 20 61 72 65 20 61 64 64 69 74 69 6f 6e 61 6c  e are additional
3b20: 20 63 6f 6d 70 69 6c 65 72 20 6f 70 74 69 6f 6e   compiler option
3b30: 73 20 75 73 65 64 20 66 6f 72 20 74 68 65 20 63  s used for the c
3b40: 6f 72 65 20 6c 69 62 72 61 72 79 2e 0a 23 0a 21  ore library..#.!
3b50: 49 46 4e 44 45 46 20 43 4f 52 45 5f 43 4f 4d 50  IFNDEF CORE_COMP
3b60: 49 4c 45 5f 4f 50 54 53 0a 21 49 46 20 24 28 44  ILE_OPTS.!IF $(D
3b70: 59 4e 41 4d 49 43 5f 53 48 45 4c 4c 29 21 3d 30  YNAMIC_SHELL)!=0
3b80: 20 7c 7c 20 24 28 46 4f 52 5f 57 49 4e 31 30 29   || $(FOR_WIN10)
3b90: 21 3d 30 0a 43 4f 52 45 5f 43 4f 4d 50 49 4c 45  !=0.CORE_COMPILE
3ba0: 5f 4f 50 54 53 20 3d 20 24 28 43 4f 52 45 5f 43  _OPTS = $(CORE_C
3bb0: 43 4f 4e 56 5f 4f 50 54 53 29 20 2d 44 53 51 4c  CONV_OPTS) -DSQL
3bc0: 49 54 45 5f 41 50 49 3d 5f 5f 64 65 63 6c 73 70  ITE_API=__declsp
3bd0: 65 63 28 64 6c 6c 65 78 70 6f 72 74 29 0a 21 45  ec(dllexport).!E
3be0: 4c 53 45 0a 43 4f 52 45 5f 43 4f 4d 50 49 4c 45  LSE.CORE_COMPILE
3bf0: 5f 4f 50 54 53 20 3d 20 24 28 43 4f 52 45 5f 43  _OPTS = $(CORE_C
3c00: 43 4f 4e 56 5f 4f 50 54 53 29 0a 21 45 4e 44 49  CONV_OPTS).!ENDI
3c10: 46 0a 21 45 4e 44 49 46 0a 0a 23 20 54 68 65 73  F.!ENDIF..# Thes
3c20: 65 20 61 72 65 20 74 68 65 20 61 64 64 69 74 69  e are the additi
3c30: 6f 6e 61 6c 20 74 61 72 67 65 74 73 20 74 68 61  onal targets tha
3c40: 74 20 74 68 65 20 63 6f 72 65 20 6c 69 62 72 61  t the core libra
3c50: 72 79 20 73 68 6f 75 6c 64 20 64 65 70 65 6e 64  ry should depend
3c60: 20 6f 6e 0a 23 20 77 68 65 6e 20 6c 69 6e 6b 69   on.# when linki
3c70: 6e 67 2e 0a 23 0a 21 49 46 4e 44 45 46 20 43 4f  ng..#.!IFNDEF CO
3c80: 52 45 5f 4c 49 4e 4b 5f 44 45 50 0a 21 49 46 20  RE_LINK_DEP.!IF 
3c90: 24 28 44 59 4e 41 4d 49 43 5f 53 48 45 4c 4c 29  $(DYNAMIC_SHELL)
3ca0: 21 3d 30 0a 43 4f 52 45 5f 4c 49 4e 4b 5f 44 45  !=0.CORE_LINK_DE
3cb0: 50 20 3d 0a 21 45 4c 53 45 49 46 20 24 28 46 4f  P =.!ELSEIF $(FO
3cc0: 52 5f 57 49 4e 31 30 29 3d 3d 30 20 7c 7c 20 22  R_WIN10)==0 || "
3cd0: 24 28 50 4c 41 54 46 4f 52 4d 29 22 3d 3d 22 78  $(PLATFORM)"=="x
3ce0: 38 36 22 0a 43 4f 52 45 5f 4c 49 4e 4b 5f 44 45  86".CORE_LINK_DE
3cf0: 50 20 3d 20 73 71 6c 69 74 65 33 2e 64 65 66 0a  P = sqlite3.def.
3d00: 21 45 4c 53 45 0a 43 4f 52 45 5f 4c 49 4e 4b 5f  !ELSE.CORE_LINK_
3d10: 44 45 50 20 3d 0a 21 45 4e 44 49 46 0a 21 45 4e  DEP =.!ENDIF.!EN
3d20: 44 49 46 0a 0a 23 20 54 68 65 73 65 20 61 72 65  DIF..# These are
3d30: 20 61 64 64 69 74 69 6f 6e 61 6c 20 6c 69 6e 6b   additional link
3d40: 65 72 20 6f 70 74 69 6f 6e 73 20 75 73 65 64 20  er options used 
3d50: 66 6f 72 20 74 68 65 20 63 6f 72 65 20 6c 69 62  for the core lib
3d60: 72 61 72 79 2e 0a 23 0a 21 49 46 4e 44 45 46 20  rary..#.!IFNDEF 
3d70: 43 4f 52 45 5f 4c 49 4e 4b 5f 4f 50 54 53 0a 21  CORE_LINK_OPTS.!
3d80: 49 46 20 24 28 44 59 4e 41 4d 49 43 5f 53 48 45  IF $(DYNAMIC_SHE
3d90: 4c 4c 29 21 3d 30 0a 43 4f 52 45 5f 4c 49 4e 4b  LL)!=0.CORE_LINK
3da0: 5f 4f 50 54 53 20 3d 0a 21 45 4c 53 45 49 46 20  _OPTS =.!ELSEIF 
3db0: 24 28 46 4f 52 5f 57 49 4e 31 30 29 3d 3d 30 20  $(FOR_WIN10)==0 
3dc0: 7c 7c 20 22 24 28 50 4c 41 54 46 4f 52 4d 29 22  || "$(PLATFORM)"
3dd0: 3d 3d 22 78 38 36 22 0a 43 4f 52 45 5f 4c 49 4e  =="x86".CORE_LIN
3de0: 4b 5f 4f 50 54 53 20 3d 20 2f 44 45 46 3a 73 71  K_OPTS = /DEF:sq
3df0: 6c 69 74 65 33 2e 64 65 66 0a 21 45 4c 53 45 0a  lite3.def.!ELSE.
3e00: 43 4f 52 45 5f 4c 49 4e 4b 5f 4f 50 54 53 20 3d  CORE_LINK_OPTS =
3e10: 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a  .!ENDIF.!ENDIF..
3e20: 23 20 54 68 65 73 65 20 61 72 65 20 61 64 64 69  # These are addi
3e30: 74 69 6f 6e 61 6c 20 63 6f 6d 70 69 6c 65 72 20  tional compiler 
3e40: 6f 70 74 69 6f 6e 73 20 75 73 65 64 20 66 6f 72  options used for
3e50: 20 74 68 65 20 73 68 65 6c 6c 20 65 78 65 63 75   the shell execu
3e60: 74 61 62 6c 65 2e 0a 23 0a 21 49 46 4e 44 45 46  table..#.!IFNDEF
3e70: 20 53 48 45 4c 4c 5f 43 4f 4d 50 49 4c 45 5f 4f   SHELL_COMPILE_O
3e80: 50 54 53 0a 21 49 46 20 24 28 44 59 4e 41 4d 49  PTS.!IF $(DYNAMI
3e90: 43 5f 53 48 45 4c 4c 29 21 3d 30 20 7c 7c 20 24  C_SHELL)!=0 || $
3ea0: 28 46 4f 52 5f 57 49 4e 31 30 29 21 3d 30 0a 53  (FOR_WIN10)!=0.S
3eb0: 48 45 4c 4c 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54  HELL_COMPILE_OPT
3ec0: 53 20 3d 20 24 28 53 48 45 4c 4c 5f 43 43 4f 4e  S = $(SHELL_CCON
3ed0: 56 5f 4f 50 54 53 29 20 2d 44 53 51 4c 49 54 45  V_OPTS) -DSQLITE
3ee0: 5f 41 50 49 3d 5f 5f 64 65 63 6c 73 70 65 63 28  _API=__declspec(
3ef0: 64 6c 6c 69 6d 70 6f 72 74 29 0a 21 45 4c 53 45  dllimport).!ELSE
3f00: 0a 53 48 45 4c 4c 5f 43 4f 4d 50 49 4c 45 5f 4f  .SHELL_COMPILE_O
3f10: 50 54 53 20 3d 20 24 28 53 48 45 4c 4c 5f 43 43  PTS = $(SHELL_CC
3f20: 4f 4e 56 5f 4f 50 54 53 29 0a 21 45 4e 44 49 46  ONV_OPTS).!ENDIF
3f30: 0a 21 45 4e 44 49 46 0a 0a 23 20 54 68 69 73 20  .!ENDIF..# This 
3f40: 69 73 20 74 68 65 20 73 6f 75 72 63 65 20 63 6f  is the source co
3f50: 64 65 20 74 68 61 74 20 74 68 65 20 73 68 65 6c  de that the shel
3f60: 6c 20 65 78 65 63 75 74 61 62 6c 65 20 73 68 6f  l executable sho
3f70: 75 6c 64 20 62 65 20 63 6f 6d 70 69 6c 65 64 0a  uld be compiled.
3f80: 23 20 77 69 74 68 2e 0a 23 0a 21 49 46 4e 44 45  # with..#.!IFNDE
3f90: 46 20 53 48 45 4c 4c 5f 43 4f 52 45 5f 53 52 43  F SHELL_CORE_SRC
3fa0: 0a 21 49 46 20 24 28 44 59 4e 41 4d 49 43 5f 53  .!IF $(DYNAMIC_S
3fb0: 48 45 4c 4c 29 21 3d 30 20 7c 7c 20 24 28 46 4f  HELL)!=0 || $(FO
3fc0: 52 5f 57 49 4e 31 30 29 21 3d 30 0a 53 48 45 4c  R_WIN10)!=0.SHEL
3fd0: 4c 5f 43 4f 52 45 5f 53 52 43 20 3d 0a 21 45 4c  L_CORE_SRC =.!EL
3fe0: 53 45 0a 53 48 45 4c 4c 5f 43 4f 52 45 5f 53 52  SE.SHELL_CORE_SR
3ff0: 43 20 3d 20 24 28 53 51 4c 49 54 45 33 43 29 0a  C = $(SQLITE3C).
4000: 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a 23  !ENDIF.!ENDIF..#
4010: 20 54 68 69 73 20 69 73 20 74 68 65 20 63 6f 72   This is the cor
4020: 65 20 6c 69 62 72 61 72 79 20 74 68 61 74 20 74  e library that t
4030: 68 65 20 73 68 65 6c 6c 20 65 78 65 63 75 74 61  he shell executa
4040: 62 6c 65 20 73 68 6f 75 6c 64 20 64 65 70 65 6e  ble should depen
4050: 64 20 6f 6e 2e 0a 23 0a 21 49 46 4e 44 45 46 20  d on..#.!IFNDEF 
4060: 53 48 45 4c 4c 5f 43 4f 52 45 5f 44 45 50 0a 21  SHELL_CORE_DEP.!
4070: 49 46 20 24 28 44 59 4e 41 4d 49 43 5f 53 48 45  IF $(DYNAMIC_SHE
4080: 4c 4c 29 21 3d 30 20 7c 7c 20 24 28 46 4f 52 5f  LL)!=0 || $(FOR_
4090: 57 49 4e 31 30 29 21 3d 30 0a 53 48 45 4c 4c 5f  WIN10)!=0.SHELL_
40a0: 43 4f 52 45 5f 44 45 50 20 3d 20 24 28 53 51 4c  CORE_DEP = $(SQL
40b0: 49 54 45 33 44 4c 4c 29 0a 21 45 4c 53 45 0a 53  ITE3DLL).!ELSE.S
40c0: 48 45 4c 4c 5f 43 4f 52 45 5f 44 45 50 20 3d 0a  HELL_CORE_DEP =.
40d0: 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a 23  !ENDIF.!ENDIF..#
40e0: 20 54 68 69 73 20 69 73 20 74 68 65 20 63 6f 72   This is the cor
40f0: 65 20 6c 69 62 72 61 72 79 20 74 68 61 74 20 74  e library that t
4100: 68 65 20 73 68 65 6c 6c 20 65 78 65 63 75 74 61  he shell executa
4110: 62 6c 65 20 73 68 6f 75 6c 64 20 6c 69 6e 6b 20  ble should link 
4120: 77 69 74 68 2e 0a 23 0a 21 49 46 4e 44 45 46 20  with..#.!IFNDEF 
4130: 53 48 45 4c 4c 5f 43 4f 52 45 5f 4c 49 42 0a 21  SHELL_CORE_LIB.!
4140: 49 46 20 24 28 44 59 4e 41 4d 49 43 5f 53 48 45  IF $(DYNAMIC_SHE
4150: 4c 4c 29 21 3d 30 20 7c 7c 20 24 28 46 4f 52 5f  LL)!=0 || $(FOR_
4160: 57 49 4e 31 30 29 21 3d 30 0a 53 48 45 4c 4c 5f  WIN10)!=0.SHELL_
4170: 43 4f 52 45 5f 4c 49 42 20 3d 20 24 28 53 51 4c  CORE_LIB = $(SQL
4180: 49 54 45 33 4c 49 42 29 0a 21 45 4c 53 45 0a 53  ITE3LIB).!ELSE.S
4190: 48 45 4c 4c 5f 43 4f 52 45 5f 4c 49 42 20 3d 0a  HELL_CORE_LIB =.
41a0: 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a 23  !ENDIF.!ENDIF..#
41b0: 20 54 68 65 73 65 20 61 72 65 20 61 64 64 69 74   These are addit
41c0: 69 6f 6e 61 6c 20 6c 69 6e 6b 65 72 20 6f 70 74  ional linker opt
41d0: 69 6f 6e 73 20 75 73 65 64 20 66 6f 72 20 74 68  ions used for th
41e0: 65 20 73 68 65 6c 6c 20 65 78 65 63 75 74 61 62  e shell executab
41f0: 6c 65 2e 0a 23 0a 21 49 46 4e 44 45 46 20 53 48  le..#.!IFNDEF SH
4200: 45 4c 4c 5f 4c 49 4e 4b 5f 4f 50 54 53 0a 53 48  ELL_LINK_OPTS.SH
4210: 45 4c 4c 5f 4c 49 4e 4b 5f 4f 50 54 53 20 3d 20  ELL_LINK_OPTS = 
4220: 24 28 53 48 45 4c 4c 5f 43 4f 52 45 5f 4c 49 42  $(SHELL_CORE_LIB
4230: 29 0a 21 45 4e 44 49 46 0a 0a 23 20 43 68 65 63  ).!ENDIF..# Chec
4240: 6b 20 69 66 20 61 73 73 65 6d 62 6c 79 20 63 6f  k if assembly co
4250: 64 65 20 6c 69 73 74 69 6e 67 73 20 73 68 6f 75  de listings shou
4260: 6c 64 20 62 65 20 67 65 6e 65 72 61 74 65 64 20  ld be generated 
4270: 66 6f 72 20 74 68 65 20 73 6f 75 72 63 65 0a 23  for the source.#
4280: 20 63 6f 64 65 20 66 69 6c 65 73 20 74 6f 20 62   code files to b
4290: 65 20 63 6f 6d 70 69 6c 65 64 2e 0a 23 0a 21 49  e compiled..#.!I
42a0: 46 20 24 28 55 53 45 5f 4c 49 53 54 49 4e 47 53  F $(USE_LISTINGS
42b0: 29 21 3d 30 0a 54 43 43 20 3d 20 24 28 54 43 43  )!=0.TCC = $(TCC
42c0: 29 20 2d 46 41 63 73 0a 21 45 4e 44 49 46 0a 0a  ) -FAcs.!ENDIF..
42d0: 23 20 57 68 65 6e 20 63 6f 6d 70 69 6c 69 6e 67  # When compiling
42e0: 20 74 68 65 20 6c 69 62 72 61 72 79 20 66 6f 72   the library for
42f0: 20 75 73 65 20 69 6e 20 74 68 65 20 57 69 6e 52   use in the WinR
4300: 54 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 2c 0a 23  T environment,.#
4310: 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20 63   the following c
4320: 6f 6d 70 69 6c 65 2d 74 69 6d 65 20 6f 70 74 69  ompile-time opti
4330: 6f 6e 73 20 6d 75 73 74 20 62 65 20 75 73 65 64  ons must be used
4340: 20 61 73 20 77 65 6c 6c 20 74 6f 0a 23 20 64 69   as well to.# di
4350: 73 61 62 6c 65 20 75 73 65 20 6f 66 20 57 69 6e  sable use of Win
4360: 33 32 20 41 50 49 73 20 74 68 61 74 20 61 72 65  32 APIs that are
4370: 20 6e 6f 74 20 61 76 61 69 6c 61 62 6c 65 20 61   not available a
4380: 6e 64 20 74 6f 20 65 6e 61 62 6c 65 0a 23 20 75  nd to enable.# u
4390: 73 65 20 6f 66 20 57 69 6e 33 32 20 41 50 49 73  se of Win32 APIs
43a0: 20 74 68 61 74 20 61 72 65 20 73 70 65 63 69 66   that are specif
43b0: 69 63 20 74 6f 20 57 69 6e 64 6f 77 73 20 38 20  ic to Windows 8 
43c0: 61 6e 64 2f 6f 72 20 57 69 6e 52 54 2e 0a 23 0a  and/or WinRT..#.
43d0: 21 49 46 20 24 28 46 4f 52 5f 57 49 4e 52 54 29  !IF $(FOR_WINRT)
43e0: 21 3d 30 0a 54 43 43 20 3d 20 24 28 54 43 43 29  !=0.TCC = $(TCC)
43f0: 20 2d 44 53 51 4c 49 54 45 5f 4f 53 5f 57 49 4e   -DSQLITE_OS_WIN
4400: 52 54 3d 31 0a 52 43 43 20 3d 20 24 28 52 43 43  RT=1.RCC = $(RCC
4410: 29 20 2d 44 53 51 4c 49 54 45 5f 4f 53 5f 57 49  ) -DSQLITE_OS_WI
4420: 4e 52 54 3d 31 0a 54 43 43 20 3d 20 24 28 54 43  NRT=1.TCC = $(TC
4430: 43 29 20 2d 44 57 49 4e 41 50 49 5f 46 41 4d 49  C) -DWINAPI_FAMI
4440: 4c 59 3d 57 49 4e 41 50 49 5f 46 41 4d 49 4c 59  LY=WINAPI_FAMILY
4450: 5f 41 50 50 0a 52 43 43 20 3d 20 24 28 52 43 43  _APP.RCC = $(RCC
4460: 29 20 2d 44 57 49 4e 41 50 49 5f 46 41 4d 49 4c  ) -DWINAPI_FAMIL
4470: 59 3d 57 49 4e 41 50 49 5f 46 41 4d 49 4c 59 5f  Y=WINAPI_FAMILY_
4480: 41 50 50 0a 21 45 4e 44 49 46 0a 0a 23 20 43 20  APP.!ENDIF..# C 
4490: 63 6f 6d 70 69 6c 65 72 20 6f 70 74 69 6f 6e 73  compiler options
44a0: 20 66 6f 72 20 74 68 65 20 57 69 6e 64 6f 77 73   for the Windows
44b0: 20 31 30 20 70 6c 61 74 66 6f 72 6d 20 28 6e 65   10 platform (ne
44c0: 65 64 73 20 4d 53 56 43 20 32 30 31 35 29 2e 0a  eds MSVC 2015)..
44d0: 23 0a 21 49 46 20 24 28 46 4f 52 5f 57 49 4e 31  #.!IF $(FOR_WIN1
44e0: 30 29 21 3d 30 0a 54 43 43 20 3d 20 24 28 54 43  0)!=0.TCC = $(TC
44f0: 43 29 20 2f 64 32 67 75 61 72 64 34 20 2d 44 5f  C) /d2guard4 -D_
4500: 41 52 4d 5f 57 49 4e 41 50 49 5f 50 41 52 54 49  ARM_WINAPI_PARTI
4510: 54 49 4f 4e 5f 44 45 53 4b 54 4f 50 5f 53 44 4b  TION_DESKTOP_SDK
4520: 5f 41 56 41 49 4c 41 42 4c 45 0a 42 43 43 20 3d  _AVAILABLE.BCC =
4530: 20 24 28 42 43 43 29 20 2f 64 32 67 75 61 72 64   $(BCC) /d2guard
4540: 34 20 2d 44 5f 41 52 4d 5f 57 49 4e 41 50 49 5f  4 -D_ARM_WINAPI_
4550: 50 41 52 54 49 54 49 4f 4e 5f 44 45 53 4b 54 4f  PARTITION_DESKTO
4560: 50 5f 53 44 4b 5f 41 56 41 49 4c 41 42 4c 45 0a  P_SDK_AVAILABLE.
4570: 21 45 4e 44 49 46 0a 0a 23 20 41 6c 73 6f 2c 20  !ENDIF..# Also, 
4580: 77 65 20 6e 65 65 64 20 74 6f 20 64 79 6e 61 6d  we need to dynam
4590: 69 63 61 6c 6c 79 20 6c 69 6e 6b 20 74 6f 20 74  ically link to t
45a0: 68 65 20 63 6f 72 72 65 63 74 20 4d 53 56 43 20  he correct MSVC 
45b0: 72 75 6e 74 69 6d 65 0a 23 20 77 68 65 6e 20 63  runtime.# when c
45c0: 6f 6d 70 69 6c 69 6e 67 20 66 6f 72 20 57 69 6e  ompiling for Win
45d0: 52 54 20 28 65 2e 67 2e 20 64 65 62 75 67 20 6f  RT (e.g. debug o
45e0: 72 20 72 65 6c 65 61 73 65 29 20 4f 52 20 69 66  r release) OR if
45f0: 20 74 68 65 0a 23 20 55 53 45 5f 43 52 54 5f 44   the.# USE_CRT_D
4600: 4c 4c 20 6f 70 74 69 6f 6e 20 69 73 20 73 65 74  LL option is set
4610: 20 74 6f 20 66 6f 72 63 65 20 64 79 6e 61 6d 69   to force dynami
4620: 63 61 6c 6c 79 20 6c 69 6e 6b 69 6e 67 20 74 6f  cally linking to
4630: 20 74 68 65 0a 23 20 4d 53 56 43 20 72 75 6e 74   the.# MSVC runt
4640: 69 6d 65 20 6c 69 62 72 61 72 79 2e 0a 23 0a 21  ime library..#.!
4650: 49 46 20 24 28 46 4f 52 5f 57 49 4e 52 54 29 21  IF $(FOR_WINRT)!
4660: 3d 30 20 7c 7c 20 24 28 55 53 45 5f 43 52 54 5f  =0 || $(USE_CRT_
4670: 44 4c 4c 29 21 3d 30 0a 21 49 46 20 24 28 44 45  DLL)!=0.!IF $(DE
4680: 42 55 47 29 3e 31 0a 54 43 43 20 3d 20 24 28 54  BUG)>1.TCC = $(T
4690: 43 43 29 20 2d 4d 44 64 0a 42 43 43 20 3d 20 24  CC) -MDd.BCC = $
46a0: 28 42 43 43 29 20 2d 4d 44 64 0a 21 45 4c 53 45  (BCC) -MDd.!ELSE
46b0: 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 4d  .TCC = $(TCC) -M
46c0: 44 0a 42 43 43 20 3d 20 24 28 42 43 43 29 20 2d  D.BCC = $(BCC) -
46d0: 4d 44 0a 21 45 4e 44 49 46 0a 21 45 4c 53 45 0a  MD.!ENDIF.!ELSE.
46e0: 21 49 46 20 24 28 44 45 42 55 47 29 3e 31 0a 54  !IF $(DEBUG)>1.T
46f0: 43 43 20 3d 20 24 28 54 43 43 29 20 2d 4d 54 64  CC = $(TCC) -MTd
4700: 0a 42 43 43 20 3d 20 24 28 42 43 43 29 20 2d 4d  .BCC = $(BCC) -M
4710: 54 64 0a 21 45 4c 53 45 0a 54 43 43 20 3d 20 24  Td.!ELSE.TCC = $
4720: 28 54 43 43 29 20 2d 4d 54 0a 42 43 43 20 3d 20  (TCC) -MT.BCC = 
4730: 24 28 42 43 43 29 20 2d 4d 54 0a 21 45 4e 44 49  $(BCC) -MT.!ENDI
4740: 46 0a 21 45 4e 44 49 46 0a 0a 23 20 3c 3c 6d 61  F.!ENDIF..# <<ma
4750: 72 6b 3e 3e 0a 23 20 54 68 65 20 6d 6b 73 71 6c  rk>>.# The mksql
4760: 69 74 65 33 63 2e 74 63 6c 20 61 6e 64 20 6d 6b  ite3c.tcl and mk
4770: 73 71 6c 69 74 65 33 68 2e 74 63 6c 20 73 63 72  sqlite3h.tcl scr
4780: 69 70 74 73 20 77 69 6c 6c 20 70 75 6c 6c 20 69  ipts will pull i
4790: 6e 0a 23 20 61 6e 79 20 65 78 74 65 6e 73 69 6f  n.# any extensio
47a0: 6e 20 68 65 61 64 65 72 20 66 69 6c 65 73 20 62  n header files b
47b0: 79 20 64 65 66 61 75 6c 74 2e 20 20 46 6f 72 20  y default.  For 
47c0: 6e 6f 6e 2d 61 6d 61 6c 67 61 6d 61 74 69 6f 6e  non-amalgamation
47d0: 0a 23 20 62 75 69 6c 64 73 2c 20 77 65 20 6e 65  .# builds, we ne
47e0: 65 64 20 74 6f 20 6d 61 6b 65 20 73 75 72 65 20  ed to make sure 
47f0: 74 68 65 20 63 6f 6d 70 69 6c 65 72 20 63 61 6e  the compiler can
4800: 20 66 69 6e 64 20 74 68 65 73 65 2e 0a 23 0a 21   find these..#.!
4810: 49 46 20 24 28 55 53 45 5f 41 4d 41 4c 47 41 4d  IF $(USE_AMALGAM
4820: 41 54 49 4f 4e 29 3d 3d 30 0a 54 43 43 20 3d 20  ATION)==0.TCC = 
4830: 24 28 54 43 43 29 20 2d 49 24 28 54 4f 50 29 5c  $(TCC) -I$(TOP)\
4840: 65 78 74 5c 66 74 73 33 0a 52 43 43 20 3d 20 24  ext\fts3.RCC = $
4850: 28 52 43 43 29 20 2d 49 24 28 54 4f 50 29 5c 65  (RCC) -I$(TOP)\e
4860: 78 74 5c 66 74 73 33 0a 54 43 43 20 3d 20 24 28  xt\fts3.TCC = $(
4870: 54 43 43 29 20 2d 49 24 28 54 4f 50 29 5c 65 78  TCC) -I$(TOP)\ex
4880: 74 5c 72 74 72 65 65 0a 52 43 43 20 3d 20 24 28  t\rtree.RCC = $(
4890: 52 43 43 29 20 2d 49 24 28 54 4f 50 29 5c 65 78  RCC) -I$(TOP)\ex
48a0: 74 5c 72 74 72 65 65 0a 54 43 43 20 3d 20 24 28  t\rtree.TCC = $(
48b0: 54 43 43 29 20 2d 49 24 28 54 4f 50 29 5c 65 78  TCC) -I$(TOP)\ex
48c0: 74 5c 73 65 73 73 69 6f 6e 0a 52 43 43 20 3d 20  t\session.RCC = 
48d0: 24 28 52 43 43 29 20 2d 49 24 28 54 4f 50 29 5c  $(RCC) -I$(TOP)\
48e0: 65 78 74 5c 73 65 73 73 69 6f 6e 0a 21 45 4e 44  ext\session.!END
48f0: 49 46 0a 0a 23 20 54 68 65 20 6d 6b 73 71 6c 69  IF..# The mksqli
4900: 74 65 33 63 2e 74 63 6c 20 73 63 72 69 70 74 20  te3c.tcl script 
4910: 61 63 63 65 70 74 73 20 73 6f 6d 65 20 6f 70 74  accepts some opt
4920: 69 6f 6e 73 20 6f 6e 20 74 68 65 20 63 6f 6d 6d  ions on the comm
4930: 61 6e 64 0a 23 20 6c 69 6e 65 2e 20 20 57 68 65  and.# line.  Whe
4940: 6e 20 63 6f 6d 70 69 6c 69 6e 67 20 77 69 74 68  n compiling with
4950: 20 64 65 62 75 67 67 69 6e 67 20 65 6e 61 62 6c   debugging enabl
4960: 65 64 2c 20 73 6f 6d 65 20 6f 66 20 74 68 65 73  ed, some of thes
4970: 65 0a 23 20 6f 70 74 69 6f 6e 73 20 61 72 65 20  e.# options are 
4980: 6e 65 63 65 73 73 61 72 79 20 69 6e 20 6f 72 64  necessary in ord
4990: 65 72 20 74 6f 20 61 6c 6c 6f 77 20 64 65 62 75  er to allow debu
49a0: 67 67 69 6e 67 20 73 79 6d 62 6f 6c 73 20 74 6f  gging symbols to
49b0: 0a 23 20 77 6f 72 6b 20 63 6f 72 72 65 63 74 6c  .# work correctl
49c0: 79 20 77 69 74 68 20 56 69 73 75 61 6c 20 53 74  y with Visual St
49d0: 75 64 69 6f 20 77 68 65 6e 20 75 73 69 6e 67 20  udio when using 
49e0: 74 68 65 20 61 6d 61 6c 67 61 6d 61 74 69 6f 6e  the amalgamation
49f0: 2e 0a 23 0a 21 49 46 4e 44 45 46 20 4d 4b 53 51  ..#.!IFNDEF MKSQ
4a00: 4c 49 54 45 33 43 5f 54 4f 4f 4c 0a 21 49 46 20  LITE3C_TOOL.!IF 
4a10: 24 28 4d 49 4e 49 4d 41 4c 5f 41 4d 41 4c 47 41  $(MINIMAL_AMALGA
4a20: 4d 41 54 49 4f 4e 29 21 3d 30 0a 4d 4b 53 51 4c  MATION)!=0.MKSQL
4a30: 49 54 45 33 43 5f 54 4f 4f 4c 20 3d 20 24 28 54  ITE3C_TOOL = $(T
4a40: 4f 50 29 5c 74 6f 6f 6c 5c 6d 6b 73 71 6c 69 74  OP)\tool\mksqlit
4a50: 65 33 63 2d 6e 6f 65 78 74 2e 74 63 6c 0a 21 45  e3c-noext.tcl.!E
4a60: 4c 53 45 0a 4d 4b 53 51 4c 49 54 45 33 43 5f 54  LSE.MKSQLITE3C_T
4a70: 4f 4f 4c 20 3d 20 24 28 54 4f 50 29 5c 74 6f 6f  OOL = $(TOP)\too
4a80: 6c 5c 6d 6b 73 71 6c 69 74 65 33 63 2e 74 63 6c  l\mksqlite3c.tcl
4a90: 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a  .!ENDIF.!ENDIF..
4aa0: 21 49 46 4e 44 45 46 20 4d 4b 53 51 4c 49 54 45  !IFNDEF MKSQLITE
4ab0: 33 43 5f 41 52 47 53 0a 21 49 46 20 24 28 44 45  3C_ARGS.!IF $(DE
4ac0: 42 55 47 29 3e 31 0a 4d 4b 53 51 4c 49 54 45 33  BUG)>1.MKSQLITE3
4ad0: 43 5f 41 52 47 53 20 3d 20 2d 2d 6c 69 6e 65 6d  C_ARGS = --linem
4ae0: 61 63 72 6f 73 0a 21 45 4c 53 45 0a 4d 4b 53 51  acros.!ELSE.MKSQ
4af0: 4c 49 54 45 33 43 5f 41 52 47 53 20 3d 0a 21 45  LITE3C_ARGS =.!E
4b00: 4e 44 49 46 0a 21 49 46 20 24 28 55 53 45 5f 53  NDIF.!IF $(USE_S
4b10: 54 44 43 41 4c 4c 29 21 3d 30 20 7c 7c 20 24 28  TDCALL)!=0 || $(
4b20: 46 4f 52 5f 57 49 4e 31 30 29 21 3d 30 0a 4d 4b  FOR_WIN10)!=0.MK
4b30: 53 51 4c 49 54 45 33 43 5f 41 52 47 53 20 3d 20  SQLITE3C_ARGS = 
4b40: 24 28 4d 4b 53 51 4c 49 54 45 33 43 5f 41 52 47  $(MKSQLITE3C_ARG
4b50: 53 29 20 2d 2d 75 73 65 61 70 69 63 61 6c 6c 0a  S) --useapicall.
4b60: 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a 23  !ENDIF.!ENDIF..#
4b70: 20 54 68 65 20 6d 6b 73 71 6c 69 74 65 33 68 2e   The mksqlite3h.
4b80: 74 63 6c 20 73 63 72 69 70 74 20 61 63 63 65 70  tcl script accep
4b90: 74 73 20 73 6f 6d 65 20 6f 70 74 69 6f 6e 73 20  ts some options 
4ba0: 6f 6e 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 6c  on the command l
4bb0: 69 6e 65 2e 0a 23 20 57 68 65 6e 20 63 6f 6d 70  ine..# When comp
4bc0: 69 6c 69 6e 67 20 77 69 74 68 20 73 74 64 63 61  iling with stdca
4bd0: 6c 6c 20 73 75 70 70 6f 72 74 2c 20 73 6f 6d 65  ll support, some
4be0: 20 6f 66 20 74 68 65 73 65 20 6f 70 74 69 6f 6e   of these option
4bf0: 73 20 61 72 65 0a 23 20 6e 65 63 65 73 73 61 72  s are.# necessar
4c00: 79 2e 0a 23 0a 21 49 46 4e 44 45 46 20 4d 4b 53  y..#.!IFNDEF MKS
4c10: 51 4c 49 54 45 33 48 5f 41 52 47 53 0a 21 49 46  QLITE3H_ARGS.!IF
4c20: 20 24 28 55 53 45 5f 53 54 44 43 41 4c 4c 29 21   $(USE_STDCALL)!
4c30: 3d 30 20 7c 7c 20 24 28 46 4f 52 5f 57 49 4e 31  =0 || $(FOR_WIN1
4c40: 30 29 21 3d 30 0a 4d 4b 53 51 4c 49 54 45 33 48  0)!=0.MKSQLITE3H
4c50: 5f 41 52 47 53 20 3d 20 2d 2d 75 73 65 61 70 69  _ARGS = --useapi
4c60: 63 61 6c 6c 0a 21 45 4c 53 45 0a 4d 4b 53 51 4c  call.!ELSE.MKSQL
4c70: 49 54 45 33 48 5f 41 52 47 53 20 3d 0a 21 45 4e  ITE3H_ARGS =.!EN
4c80: 44 49 46 0a 21 45 4e 44 49 46 0a 23 20 3c 3c 2f  DIF.!ENDIF.# <</
4c90: 6d 61 72 6b 3e 3e 0a 0a 23 20 44 65 66 69 6e 65  mark>>..# Define
4ca0: 20 2d 44 4e 44 45 42 55 47 20 74 6f 20 63 6f 6d   -DNDEBUG to com
4cb0: 70 69 6c 65 20 77 69 74 68 6f 75 74 20 64 65 62  pile without deb
4cc0: 75 67 67 69 6e 67 20 28 69 2e 65 2e 2c 20 66 6f  ugging (i.e., fo
4cd0: 72 20 70 72 6f 64 75 63 74 69 6f 6e 20 75 73 61  r production usa
4ce0: 67 65 29 0a 23 20 4f 6d 69 74 74 69 6e 67 20 74  ge).# Omitting t
4cf0: 68 65 20 64 65 66 69 6e 65 20 77 69 6c 6c 20 63  he define will c
4d00: 61 75 73 65 20 65 78 74 72 61 20 64 65 62 75 67  ause extra debug
4d10: 67 69 6e 67 20 63 6f 64 65 20 74 6f 20 62 65 20  ging code to be 
4d20: 69 6e 73 65 72 74 65 64 20 61 6e 64 0a 23 20 69  inserted and.# i
4d30: 6e 63 6c 75 64 65 73 20 65 78 74 72 61 20 63 6f  ncludes extra co
4d40: 6d 6d 65 6e 74 73 20 77 68 65 6e 20 22 45 58 50  mments when "EXP
4d50: 4c 41 49 4e 20 73 74 6d 74 22 20 69 73 20 75 73  LAIN stmt" is us
4d60: 65 64 2e 0a 23 0a 21 49 46 20 24 28 44 45 42 55  ed..#.!IF $(DEBU
4d70: 47 29 3d 3d 30 0a 54 43 43 20 3d 20 24 28 54 43  G)==0.TCC = $(TC
4d80: 43 29 20 2d 44 4e 44 45 42 55 47 0a 42 43 43 20  C) -DNDEBUG.BCC 
4d90: 3d 20 24 28 42 43 43 29 20 2d 44 4e 44 45 42 55  = $(BCC) -DNDEBU
4da0: 47 0a 52 43 43 20 3d 20 24 28 52 43 43 29 20 2d  G.RCC = $(RCC) -
4db0: 44 4e 44 45 42 55 47 0a 21 45 4e 44 49 46 0a 0a  DNDEBUG.!ENDIF..
4dc0: 21 49 46 20 24 28 44 45 42 55 47 29 3e 30 20 7c  !IF $(DEBUG)>0 |
4dd0: 7c 20 24 28 41 50 49 5f 41 52 4d 4f 52 29 21 3d  | $(API_ARMOR)!=
4de0: 30 20 7c 7c 20 24 28 46 4f 52 5f 57 49 4e 31 30  0 || $(FOR_WIN10
4df0: 29 21 3d 30 0a 54 43 43 20 3d 20 24 28 54 43 43  )!=0.TCC = $(TCC
4e00: 29 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c  ) -DSQLITE_ENABL
4e10: 45 5f 41 50 49 5f 41 52 4d 4f 52 3d 31 0a 52 43  E_API_ARMOR=1.RC
4e20: 43 20 3d 20 24 28 52 43 43 29 20 2d 44 53 51 4c  C = $(RCC) -DSQL
4e30: 49 54 45 5f 45 4e 41 42 4c 45 5f 41 50 49 5f 41  ITE_ENABLE_API_A
4e40: 52 4d 4f 52 3d 31 0a 21 45 4e 44 49 46 0a 0a 21  RMOR=1.!ENDIF..!
4e50: 49 46 20 24 28 44 45 42 55 47 29 3e 32 0a 54 43  IF $(DEBUG)>2.TC
4e60: 43 20 3d 20 24 28 54 43 43 29 20 2d 44 53 51 4c  C = $(TCC) -DSQL
4e70: 49 54 45 5f 44 45 42 55 47 3d 31 0a 54 43 43 20  ITE_DEBUG=1.TCC 
4e80: 3d 20 24 28 54 43 43 29 20 2d 44 53 51 4c 49 54  = $(TCC) -DSQLIT
4e90: 45 5f 45 4e 41 42 4c 45 5f 57 48 45 52 45 54 52  E_ENABLE_WHERETR
4ea0: 41 43 45 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41  ACE -DSQLITE_ENA
4eb0: 42 4c 45 5f 53 45 4c 45 43 54 54 52 41 43 45 0a  BLE_SELECTTRACE.
4ec0: 52 43 43 20 3d 20 24 28 52 43 43 29 20 2d 44 53  RCC = $(RCC) -DS
4ed0: 51 4c 49 54 45 5f 44 45 42 55 47 3d 31 0a 21 45  QLITE_DEBUG=1.!E
4ee0: 4e 44 49 46 0a 0a 21 49 46 20 24 28 44 45 42 55  NDIF..!IF $(DEBU
4ef0: 47 29 3e 34 20 7c 7c 20 24 28 4f 53 54 52 41 43  G)>4 || $(OSTRAC
4f00: 45 29 21 3d 30 0a 54 43 43 20 3d 20 24 28 54 43  E)!=0.TCC = $(TC
4f10: 43 29 20 2d 44 53 51 4c 49 54 45 5f 46 4f 52 43  C) -DSQLITE_FORC
4f20: 45 5f 4f 53 5f 54 52 41 43 45 3d 31 20 2d 44 53  E_OS_TRACE=1 -DS
4f30: 51 4c 49 54 45 5f 44 45 42 55 47 5f 4f 53 5f 54  QLITE_DEBUG_OS_T
4f40: 52 41 43 45 3d 31 0a 52 43 43 20 3d 20 24 28 52  RACE=1.RCC = $(R
4f50: 43 43 29 20 2d 44 53 51 4c 49 54 45 5f 46 4f 52  CC) -DSQLITE_FOR
4f60: 43 45 5f 4f 53 5f 54 52 41 43 45 3d 31 20 2d 44  CE_OS_TRACE=1 -D
4f70: 53 51 4c 49 54 45 5f 44 45 42 55 47 5f 4f 53 5f  SQLITE_DEBUG_OS_
4f80: 54 52 41 43 45 3d 31 0a 21 45 4e 44 49 46 0a 0a  TRACE=1.!ENDIF..
4f90: 21 49 46 20 24 28 44 45 42 55 47 29 3e 35 0a 54  !IF $(DEBUG)>5.T
4fa0: 43 43 20 3d 20 24 28 54 43 43 29 20 2d 44 53 51  CC = $(TCC) -DSQ
4fb0: 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 49 4f 54 52  LITE_ENABLE_IOTR
4fc0: 41 43 45 3d 31 0a 52 43 43 20 3d 20 24 28 52 43  ACE=1.RCC = $(RC
4fd0: 43 29 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42  C) -DSQLITE_ENAB
4fe0: 4c 45 5f 49 4f 54 52 41 43 45 3d 31 0a 21 45 4e  LE_IOTRACE=1.!EN
4ff0: 44 49 46 0a 0a 23 20 50 72 65 76 65 6e 74 20 77  DIF..# Prevent w
5000: 61 72 6e 69 6e 67 73 20 61 62 6f 75 74 20 22 69  arnings about "i
5010: 6e 73 65 63 75 72 65 22 20 4d 53 56 43 20 72 75  nsecure" MSVC ru
5020: 6e 74 69 6d 65 20 6c 69 62 72 61 72 79 20 66 75  ntime library fu
5030: 6e 63 74 69 6f 6e 73 0a 23 20 62 65 69 6e 67 20  nctions.# being 
5040: 75 73 65 64 2e 0a 23 0a 54 43 43 20 3d 20 24 28  used..#.TCC = $(
5050: 54 43 43 29 20 2d 44 5f 43 52 54 5f 53 45 43 55  TCC) -D_CRT_SECU
5060: 52 45 5f 4e 4f 5f 44 45 50 52 45 43 41 54 45 20  RE_NO_DEPRECATE 
5070: 2d 44 5f 43 52 54 5f 53 45 43 55 52 45 5f 4e 4f  -D_CRT_SECURE_NO
5080: 5f 57 41 52 4e 49 4e 47 53 0a 42 43 43 20 3d 20  _WARNINGS.BCC = 
5090: 24 28 42 43 43 29 20 2d 44 5f 43 52 54 5f 53 45  $(BCC) -D_CRT_SE
50a0: 43 55 52 45 5f 4e 4f 5f 44 45 50 52 45 43 41 54  CURE_NO_DEPRECAT
50b0: 45 20 2d 44 5f 43 52 54 5f 53 45 43 55 52 45 5f  E -D_CRT_SECURE_
50c0: 4e 4f 5f 57 41 52 4e 49 4e 47 53 0a 52 43 43 20  NO_WARNINGS.RCC 
50d0: 3d 20 24 28 52 43 43 29 20 2d 44 5f 43 52 54 5f  = $(RCC) -D_CRT_
50e0: 53 45 43 55 52 45 5f 4e 4f 5f 44 45 50 52 45 43  SECURE_NO_DEPREC
50f0: 41 54 45 20 2d 44 5f 43 52 54 5f 53 45 43 55 52  ATE -D_CRT_SECUR
5100: 45 5f 4e 4f 5f 57 41 52 4e 49 4e 47 53 0a 0a 23  E_NO_WARNINGS..#
5110: 20 50 72 65 76 65 6e 74 20 77 61 72 6e 69 6e 67   Prevent warning
5120: 73 20 61 62 6f 75 74 20 22 64 65 70 72 65 63 61  s about "depreca
5130: 74 65 64 22 20 50 4f 53 49 58 20 66 75 6e 63 74  ted" POSIX funct
5140: 69 6f 6e 73 20 62 65 69 6e 67 20 75 73 65 64 2e  ions being used.
5150: 0a 23 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20  .#.TCC = $(TCC) 
5160: 2d 44 5f 43 52 54 5f 4e 4f 4e 53 54 44 43 5f 4e  -D_CRT_NONSTDC_N
5170: 4f 5f 44 45 50 52 45 43 41 54 45 20 2d 44 5f 43  O_DEPRECATE -D_C
5180: 52 54 5f 4e 4f 4e 53 54 44 43 5f 4e 4f 5f 57 41  RT_NONSTDC_NO_WA
5190: 52 4e 49 4e 47 53 0a 42 43 43 20 3d 20 24 28 42  RNINGS.BCC = $(B
51a0: 43 43 29 20 2d 44 5f 43 52 54 5f 4e 4f 4e 53 54  CC) -D_CRT_NONST
51b0: 44 43 5f 4e 4f 5f 44 45 50 52 45 43 41 54 45 20  DC_NO_DEPRECATE 
51c0: 2d 44 5f 43 52 54 5f 4e 4f 4e 53 54 44 43 5f 4e  -D_CRT_NONSTDC_N
51d0: 4f 5f 57 41 52 4e 49 4e 47 53 0a 52 43 43 20 3d  O_WARNINGS.RCC =
51e0: 20 24 28 52 43 43 29 20 2d 44 5f 43 52 54 5f 4e   $(RCC) -D_CRT_N
51f0: 4f 4e 53 54 44 43 5f 4e 4f 5f 44 45 50 52 45 43  ONSTDC_NO_DEPREC
5200: 41 54 45 20 2d 44 5f 43 52 54 5f 4e 4f 4e 53 54  ATE -D_CRT_NONST
5210: 44 43 5f 4e 4f 5f 57 41 52 4e 49 4e 47 53 0a 0a  DC_NO_WARNINGS..
5220: 23 20 55 73 65 20 74 68 65 20 53 51 4c 69 74 65  # Use the SQLite
5230: 20 64 65 62 75 67 67 69 6e 67 20 68 65 61 70 20   debugging heap 
5240: 73 75 62 73 79 73 74 65 6d 3f 0a 23 0a 21 49 46  subsystem?.#.!IF
5250: 20 24 28 4d 45 4d 44 45 42 55 47 29 21 3d 30 0a   $(MEMDEBUG)!=0.
5260: 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 44 53  TCC = $(TCC) -DS
5270: 51 4c 49 54 45 5f 4d 45 4d 44 45 42 55 47 3d 31  QLITE_MEMDEBUG=1
5280: 0a 52 43 43 20 3d 20 24 28 52 43 43 29 20 2d 44  .RCC = $(RCC) -D
5290: 53 51 4c 49 54 45 5f 4d 45 4d 44 45 42 55 47 3d  SQLITE_MEMDEBUG=
52a0: 31 0a 0a 23 20 55 73 65 20 6e 61 74 69 76 65 20  1..# Use native 
52b0: 57 69 6e 33 32 20 68 65 61 70 20 73 75 62 73 79  Win32 heap subsy
52c0: 73 74 65 6d 20 69 6e 73 74 65 61 64 20 6f 66 20  stem instead of 
52d0: 6d 61 6c 6c 6f 63 2f 66 72 65 65 3f 0a 23 0a 21  malloc/free?.#.!
52e0: 45 4c 53 45 49 46 20 24 28 57 49 4e 33 32 48 45  ELSEIF $(WIN32HE
52f0: 41 50 29 21 3d 30 0a 54 43 43 20 3d 20 24 28 54  AP)!=0.TCC = $(T
5300: 43 43 29 20 2d 44 53 51 4c 49 54 45 5f 57 49 4e  CC) -DSQLITE_WIN
5310: 33 32 5f 4d 41 4c 4c 4f 43 3d 31 0a 52 43 43 20  32_MALLOC=1.RCC 
5320: 3d 20 24 28 52 43 43 29 20 2d 44 53 51 4c 49 54  = $(RCC) -DSQLIT
5330: 45 5f 57 49 4e 33 32 5f 4d 41 4c 4c 4f 43 3d 31  E_WIN32_MALLOC=1
5340: 0a 0a 23 20 56 61 6c 69 64 61 74 65 20 74 68 65  ..# Validate the
5350: 20 68 65 61 70 20 6f 6e 20 65 76 65 72 79 20 63   heap on every c
5360: 61 6c 6c 20 69 6e 74 6f 20 74 68 65 20 6e 61 74  all into the nat
5370: 69 76 65 20 57 69 6e 33 32 20 68 65 61 70 20 73  ive Win32 heap s
5380: 75 62 73 79 73 74 65 6d 3f 0a 23 0a 21 49 46 20  ubsystem?.#.!IF 
5390: 24 28 44 45 42 55 47 29 3e 33 0a 54 43 43 20 3d  $(DEBUG)>3.TCC =
53a0: 20 24 28 54 43 43 29 20 2d 44 53 51 4c 49 54 45   $(TCC) -DSQLITE
53b0: 5f 57 49 4e 33 32 5f 4d 41 4c 4c 4f 43 5f 56 41  _WIN32_MALLOC_VA
53c0: 4c 49 44 41 54 45 3d 31 0a 52 43 43 20 3d 20 24  LIDATE=1.RCC = $
53d0: 28 52 43 43 29 20 2d 44 53 51 4c 49 54 45 5f 57  (RCC) -DSQLITE_W
53e0: 49 4e 33 32 5f 4d 41 4c 4c 4f 43 5f 56 41 4c 49  IN32_MALLOC_VALI
53f0: 44 41 54 45 3d 31 0a 21 45 4e 44 49 46 0a 21 45  DATE=1.!ENDIF.!E
5400: 4e 44 49 46 0a 0a 23 20 3c 3c 6d 61 72 6b 3e 3e  NDIF..# <<mark>>
5410: 0a 23 20 54 68 65 20 6c 6f 63 61 74 69 6f 6e 73  .# The locations
5420: 20 6f 66 20 74 68 65 20 54 63 6c 20 68 65 61 64   of the Tcl head
5430: 65 72 20 61 6e 64 20 6c 69 62 72 61 72 79 20 66  er and library f
5440: 69 6c 65 73 2e 20 20 41 6c 73 6f 2c 20 74 68 65  iles.  Also, the
5450: 20 6c 69 62 72 61 72 79 20 74 68 61 74 0a 23 20   library that.# 
5460: 6e 6f 6e 2d 73 74 75 62 73 20 65 6e 61 62 6c 65  non-stubs enable
5470: 64 20 70 72 6f 67 72 61 6d 73 20 75 73 69 6e 67  d programs using
5480: 20 54 63 6c 20 6d 75 73 74 20 6c 69 6e 6b 20 61   Tcl must link a
5490: 67 61 69 6e 73 74 2e 20 20 54 68 65 73 65 20 76  gainst.  These v
54a0: 61 72 69 61 62 6c 65 73 0a 23 20 28 54 43 4c 49  ariables.# (TCLI
54b0: 4e 43 44 49 52 2c 20 54 43 4c 4c 49 42 44 49 52  NCDIR, TCLLIBDIR
54c0: 2c 20 61 6e 64 20 4c 49 42 54 43 4c 29 20 6d 61  , and LIBTCL) ma
54d0: 79 20 62 65 20 6f 76 65 72 72 69 64 64 65 6e 20  y be overridden 
54e0: 76 69 61 20 74 68 65 20 65 6e 76 69 72 6f 6e 6d  via the environm
54f0: 65 6e 74 0a 23 20 70 72 69 6f 72 20 74 6f 20 72  ent.# prior to r
5500: 75 6e 6e 69 6e 67 20 6e 6d 61 6b 65 20 69 6e 20  unning nmake in 
5510: 6f 72 64 65 72 20 74 6f 20 6d 61 74 63 68 20 74  order to match t
5520: 68 65 20 61 63 74 75 61 6c 20 69 6e 73 74 61 6c  he actual instal
5530: 6c 65 64 20 6c 6f 63 61 74 69 6f 6e 20 61 6e 64  led location and
5540: 0a 23 20 76 65 72 73 69 6f 6e 20 6f 6e 20 74 68  .# version on th
5550: 69 73 20 6d 61 63 68 69 6e 65 2e 0a 23 0a 21 49  is machine..#.!I
5560: 46 4e 44 45 46 20 54 43 4c 49 4e 43 44 49 52 0a  FNDEF TCLINCDIR.
5570: 54 43 4c 49 4e 43 44 49 52 20 3d 20 63 3a 5c 74  TCLINCDIR = c:\t
5580: 63 6c 5c 69 6e 63 6c 75 64 65 0a 21 45 4e 44 49  cl\include.!ENDI
5590: 46 0a 0a 21 49 46 4e 44 45 46 20 54 43 4c 4c 49  F..!IFNDEF TCLLI
55a0: 42 44 49 52 0a 54 43 4c 4c 49 42 44 49 52 20 3d  BDIR.TCLLIBDIR =
55b0: 20 63 3a 5c 74 63 6c 5c 6c 69 62 0a 21 45 4e 44   c:\tcl\lib.!END
55c0: 49 46 0a 0a 21 49 46 4e 44 45 46 20 4c 49 42 54  IF..!IFNDEF LIBT
55d0: 43 4c 0a 4c 49 42 54 43 4c 20 3d 20 74 63 6c 38  CL.LIBTCL = tcl8
55e0: 36 2e 6c 69 62 0a 21 45 4e 44 49 46 0a 0a 21 49  6.lib.!ENDIF..!I
55f0: 46 4e 44 45 46 20 4c 49 42 54 43 4c 53 54 55 42  FNDEF LIBTCLSTUB
5600: 0a 4c 49 42 54 43 4c 53 54 55 42 20 3d 20 74 63  .LIBTCLSTUB = tc
5610: 6c 73 74 75 62 38 36 2e 6c 69 62 0a 21 45 4e 44  lstub86.lib.!END
5620: 49 46 0a 0a 21 49 46 4e 44 45 46 20 4c 49 42 54  IF..!IFNDEF LIBT
5630: 43 4c 50 41 54 48 0a 4c 49 42 54 43 4c 50 41 54  CLPATH.LIBTCLPAT
5640: 48 20 3d 20 63 3a 5c 74 63 6c 5c 62 69 6e 0a 21  H = c:\tcl\bin.!
5650: 45 4e 44 49 46 0a 0a 23 20 54 68 65 20 6c 6f 63  ENDIF..# The loc
5660: 61 74 69 6f 6e 73 20 6f 66 20 74 68 65 20 49 43  ations of the IC
5670: 55 20 68 65 61 64 65 72 20 61 6e 64 20 6c 69 62  U header and lib
5680: 72 61 72 79 20 66 69 6c 65 73 2e 20 20 54 68 65  rary files.  The
5690: 73 65 20 76 61 72 69 61 62 6c 65 73 0a 23 20 28  se variables.# (
56a0: 49 43 55 49 4e 43 44 49 52 2c 20 49 43 55 4c 49  ICUINCDIR, ICULI
56b0: 42 44 49 52 2c 20 61 6e 64 20 4c 49 42 49 43 55  BDIR, and LIBICU
56c0: 29 20 6d 61 79 20 62 65 20 6f 76 65 72 72 69 64  ) may be overrid
56d0: 64 65 6e 20 76 69 61 20 74 68 65 20 65 6e 76 69  den via the envi
56e0: 72 6f 6e 6d 65 6e 74 0a 23 20 70 72 69 6f 72 20  ronment.# prior 
56f0: 74 6f 20 72 75 6e 6e 69 6e 67 20 6e 6d 61 6b 65  to running nmake
5700: 20 69 6e 20 6f 72 64 65 72 20 74 6f 20 6d 61 74   in order to mat
5710: 63 68 20 74 68 65 20 61 63 74 75 61 6c 20 69 6e  ch the actual in
5720: 73 74 61 6c 6c 65 64 20 6c 6f 63 61 74 69 6f 6e  stalled location
5730: 20 6f 6e 0a 23 20 74 68 69 73 20 6d 61 63 68 69   on.# this machi
5740: 6e 65 2e 0a 23 0a 21 49 46 4e 44 45 46 20 49 43  ne..#.!IFNDEF IC
5750: 55 49 4e 43 44 49 52 0a 49 43 55 49 4e 43 44 49  UINCDIR.ICUINCDI
5760: 52 20 3d 20 63 3a 5c 69 63 75 5c 69 6e 63 6c 75  R = c:\icu\inclu
5770: 64 65 0a 21 45 4e 44 49 46 0a 0a 21 49 46 4e 44  de.!ENDIF..!IFND
5780: 45 46 20 49 43 55 4c 49 42 44 49 52 0a 49 43 55  EF ICULIBDIR.ICU
5790: 4c 49 42 44 49 52 20 3d 20 63 3a 5c 69 63 75 5c  LIBDIR = c:\icu\
57a0: 6c 69 62 0a 21 45 4e 44 49 46 0a 0a 21 49 46 4e  lib.!ENDIF..!IFN
57b0: 44 45 46 20 4c 49 42 49 43 55 0a 4c 49 42 49 43  DEF LIBICU.LIBIC
57c0: 55 20 3d 20 69 63 75 75 63 2e 6c 69 62 20 69 63  U = icuuc.lib ic
57d0: 75 69 6e 2e 6c 69 62 0a 21 45 4e 44 49 46 0a 0a  uin.lib.!ENDIF..
57e0: 23 20 54 68 69 73 20 69 73 20 74 68 65 20 63 6f  # This is the co
57f0: 6d 6d 61 6e 64 20 74 6f 20 75 73 65 20 66 6f 72  mmand to use for
5800: 20 74 63 6c 73 68 20 2d 20 6e 6f 72 6d 61 6c 6c   tclsh - normall
5810: 79 20 6a 75 73 74 20 22 74 63 6c 73 68 22 2c 20  y just "tclsh", 
5820: 62 75 74 20 77 65 20 6d 61 79 0a 23 20 6b 6e 6f  but we may.# kno
5830: 77 20 74 68 65 20 73 70 65 63 69 66 69 63 20 76  w the specific v
5840: 65 72 73 69 6f 6e 20 77 65 20 77 61 6e 74 20 74  ersion we want t
5850: 6f 20 75 73 65 2e 20 20 54 68 69 73 20 76 61 72  o use.  This var
5860: 69 61 62 6c 65 20 28 54 43 4c 53 48 5f 43 4d 44  iable (TCLSH_CMD
5870: 29 20 6d 61 79 20 62 65 0a 23 20 6f 76 65 72 72  ) may be.# overr
5880: 69 64 64 65 6e 20 76 69 61 20 74 68 65 20 65 6e  idden via the en
5890: 76 69 72 6f 6e 6d 65 6e 74 20 70 72 69 6f 72 20  vironment prior 
58a0: 74 6f 20 72 75 6e 6e 69 6e 67 20 6e 6d 61 6b 65  to running nmake
58b0: 20 69 6e 20 6f 72 64 65 72 20 74 6f 20 73 65 6c   in order to sel
58c0: 65 63 74 20 61 0a 23 20 73 70 65 63 69 66 69 63  ect a.# specific
58d0: 20 54 63 6c 20 73 68 65 6c 6c 20 74 6f 20 75 73   Tcl shell to us
58e0: 65 2e 0a 23 0a 21 49 46 4e 44 45 46 20 54 43 4c  e..#.!IFNDEF TCL
58f0: 53 48 5f 43 4d 44 0a 54 43 4c 53 48 5f 43 4d 44  SH_CMD.TCLSH_CMD
5900: 20 3d 20 74 63 6c 73 68 0a 21 45 4e 44 49 46 0a   = tclsh.!ENDIF.
5910: 23 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a 0a 23 20 43  # <</mark>>..# C
5920: 6f 6d 70 69 6c 65 72 20 6f 70 74 69 6f 6e 73 20  ompiler options 
5930: 6e 65 65 64 65 64 20 66 6f 72 20 70 72 6f 67 72  needed for progr
5940: 61 6d 73 20 74 68 61 74 20 75 73 65 20 74 68 65  ams that use the
5950: 20 72 65 61 64 6c 69 6e 65 28 29 20 6c 69 62 72   readline() libr
5960: 61 72 79 2e 0a 23 0a 21 49 46 4e 44 45 46 20 52  ary..#.!IFNDEF R
5970: 45 41 44 4c 49 4e 45 5f 46 4c 41 47 53 0a 52 45  EADLINE_FLAGS.RE
5980: 41 44 4c 49 4e 45 5f 46 4c 41 47 53 20 3d 20 2d  ADLINE_FLAGS = -
5990: 44 48 41 56 45 5f 52 45 41 44 4c 49 4e 45 3d 30  DHAVE_READLINE=0
59a0: 0a 21 45 4e 44 49 46 0a 0a 23 20 54 68 65 20 6c  .!ENDIF..# The l
59b0: 69 62 72 61 72 79 20 74 68 61 74 20 70 72 6f 67  ibrary that prog
59c0: 72 61 6d 73 20 75 73 69 6e 67 20 72 65 61 64 6c  rams using readl
59d0: 69 6e 65 28 29 20 6d 75 73 74 20 6c 69 6e 6b 20  ine() must link 
59e0: 61 67 61 69 6e 73 74 2e 0a 23 0a 21 49 46 4e 44  against..#.!IFND
59f0: 45 46 20 4c 49 42 52 45 41 44 4c 49 4e 45 0a 4c  EF LIBREADLINE.L
5a00: 49 42 52 45 41 44 4c 49 4e 45 20 3d 0a 21 45 4e  IBREADLINE =.!EN
5a10: 44 49 46 0a 0a 23 20 53 68 6f 75 6c 64 20 74 68  DIF..# Should th
5a20: 65 20 64 61 74 61 62 61 73 65 20 65 6e 67 69 6e  e database engin
5a30: 65 20 62 65 20 63 6f 6d 70 69 6c 65 64 20 74 68  e be compiled th
5a40: 72 65 61 64 73 61 66 65 0a 23 0a 54 43 43 20 3d  readsafe.#.TCC =
5a50: 20 24 28 54 43 43 29 20 2d 44 53 51 4c 49 54 45   $(TCC) -DSQLITE
5a60: 5f 54 48 52 45 41 44 53 41 46 45 3d 31 0a 52 43  _THREADSAFE=1.RC
5a70: 43 20 3d 20 24 28 52 43 43 29 20 2d 44 53 51 4c  C = $(RCC) -DSQL
5a80: 49 54 45 5f 54 48 52 45 41 44 53 41 46 45 3d 31  ITE_THREADSAFE=1
5a90: 0a 0a 23 20 44 6f 20 74 68 72 65 61 64 73 20 6f  ..# Do threads o
5aa0: 76 65 72 72 69 64 65 20 65 61 63 68 20 6f 74 68  verride each oth
5ab0: 65 72 73 20 6c 6f 63 6b 73 20 62 79 20 64 65 66  ers locks by def
5ac0: 61 75 6c 74 20 28 31 29 2c 20 6f 72 20 64 6f 20  ault (1), or do 
5ad0: 77 65 20 74 65 73 74 20 28 2d 31 29 0a 23 0a 54  we test (-1).#.T
5ae0: 43 43 20 3d 20 24 28 54 43 43 29 20 2d 44 53 51  CC = $(TCC) -DSQ
5af0: 4c 49 54 45 5f 54 48 52 45 41 44 5f 4f 56 45 52  LITE_THREAD_OVER
5b00: 52 49 44 45 5f 4c 4f 43 4b 3d 2d 31 0a 52 43 43  RIDE_LOCK=-1.RCC
5b10: 20 3d 20 24 28 52 43 43 29 20 2d 44 53 51 4c 49   = $(RCC) -DSQLI
5b20: 54 45 5f 54 48 52 45 41 44 5f 4f 56 45 52 52 49  TE_THREAD_OVERRI
5b30: 44 45 5f 4c 4f 43 4b 3d 2d 31 0a 0a 23 20 41 6e  DE_LOCK=-1..# An
5b40: 79 20 74 61 72 67 65 74 20 6c 69 62 72 61 72 69  y target librari
5b50: 65 73 20 77 68 69 63 68 20 6c 69 62 73 71 6c 69  es which libsqli
5b60: 74 65 20 6d 75 73 74 20 62 65 20 6c 69 6e 6b 65  te must be linke
5b70: 64 20 61 67 61 69 6e 73 74 0a 23 0a 21 49 46 4e  d against.#.!IFN
5b80: 44 45 46 20 54 4c 49 42 53 0a 54 4c 49 42 53 20  DEF TLIBS.TLIBS 
5b90: 3d 0a 21 45 4e 44 49 46 0a 0a 23 20 46 6c 61 67  =.!ENDIF..# Flag
5ba0: 73 20 63 6f 6e 74 72 6f 6c 6c 69 6e 67 20 75 73  s controlling us
5bb0: 65 20 6f 66 20 74 68 65 20 69 6e 20 6d 65 6d 6f  e of the in memo
5bc0: 72 79 20 62 74 72 65 65 20 69 6d 70 6c 65 6d 65  ry btree impleme
5bd0: 6e 74 61 74 69 6f 6e 0a 23 0a 23 20 53 51 4c 49  ntation.#.# SQLI
5be0: 54 45 5f 54 45 4d 50 5f 53 54 4f 52 45 20 69 73  TE_TEMP_STORE is
5bf0: 20 30 20 74 6f 20 66 6f 72 63 65 20 74 65 6d 70   0 to force temp
5c00: 6f 72 61 72 79 20 74 61 62 6c 65 73 20 74 6f 20  orary tables to 
5c10: 62 65 20 69 6e 20 61 20 66 69 6c 65 2c 20 31 20  be in a file, 1 
5c20: 74 6f 0a 23 20 64 65 66 61 75 6c 74 20 74 6f 20  to.# default to 
5c30: 66 69 6c 65 2c 20 32 20 74 6f 20 64 65 66 61 75  file, 2 to defau
5c40: 6c 74 20 74 6f 20 6d 65 6d 6f 72 79 2c 20 61 6e  lt to memory, an
5c50: 64 20 33 20 74 6f 20 66 6f 72 63 65 20 74 65 6d  d 3 to force tem
5c60: 70 6f 72 61 72 79 0a 23 20 74 61 62 6c 65 73 20  porary.# tables 
5c70: 74 6f 20 61 6c 77 61 79 73 20 62 65 20 69 6e 20  to always be in 
5c80: 6d 65 6d 6f 72 79 2e 0a 23 0a 54 43 43 20 3d 20  memory..#.TCC = 
5c90: 24 28 54 43 43 29 20 2d 44 53 51 4c 49 54 45 5f  $(TCC) -DSQLITE_
5ca0: 54 45 4d 50 5f 53 54 4f 52 45 3d 31 0a 52 43 43  TEMP_STORE=1.RCC
5cb0: 20 3d 20 24 28 52 43 43 29 20 2d 44 53 51 4c 49   = $(RCC) -DSQLI
5cc0: 54 45 5f 54 45 4d 50 5f 53 54 4f 52 45 3d 31 0a  TE_TEMP_STORE=1.
5cd0: 0a 23 20 45 6e 61 62 6c 65 2f 64 69 73 61 62 6c  .# Enable/disabl
5ce0: 65 20 6c 6f 61 64 61 62 6c 65 20 65 78 74 65 6e  e loadable exten
5cf0: 73 69 6f 6e 73 2c 20 61 6e 64 20 6f 74 68 65 72  sions, and other
5d00: 20 6f 70 74 69 6f 6e 61 6c 20 66 65 61 74 75 72   optional featur
5d10: 65 73 0a 23 20 62 61 73 65 64 20 6f 6e 20 63 6f  es.# based on co
5d20: 6e 66 69 67 75 72 61 74 69 6f 6e 2e 20 28 2d 44  nfiguration. (-D
5d30: 53 51 4c 49 54 45 5f 4f 4d 49 54 2a 2c 20 2d 44  SQLITE_OMIT*, -D
5d40: 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 2a 29 2e  SQLITE_ENABLE*).
5d50: 0a 23 20 54 68 65 20 73 61 6d 65 20 73 65 74 20  .# The same set 
5d60: 6f 66 20 4f 4d 49 54 20 61 6e 64 20 45 4e 41 42  of OMIT and ENAB
5d70: 4c 45 20 66 6c 61 67 73 20 73 68 6f 75 6c 64 20  LE flags should 
5d80: 62 65 20 70 61 73 73 65 64 20 74 6f 20 74 68 65  be passed to the
5d90: 0a 23 20 4c 45 4d 4f 4e 20 70 61 72 73 65 72 20  .# LEMON parser 
5da0: 67 65 6e 65 72 61 74 6f 72 20 61 6e 64 20 74 68  generator and th
5db0: 65 20 6d 6b 6b 65 79 77 6f 72 64 68 61 73 68 20  e mkkeywordhash 
5dc0: 74 6f 6f 6c 20 61 73 20 77 65 6c 6c 2e 0a 0a 23  tool as well...#
5dd0: 20 54 68 65 73 65 20 61 72 65 20 74 68 65 20 72   These are the r
5de0: 65 71 75 69 72 65 64 20 53 51 4c 69 74 65 20 63  equired SQLite c
5df0: 6f 6d 70 69 6c 61 74 69 6f 6e 20 6f 70 74 69 6f  ompilation optio
5e00: 6e 73 20 75 73 65 64 20 77 68 65 6e 20 63 6f 6d  ns used when com
5e10: 70 69 6c 69 6e 67 20 66 6f 72 0a 23 20 74 68 65  piling for.# the
5e20: 20 57 69 6e 64 6f 77 73 20 70 6c 61 74 66 6f 72   Windows platfor
5e30: 6d 2e 0a 23 0a 52 45 51 5f 46 45 41 54 55 52 45  m..#.REQ_FEATURE
5e40: 5f 46 4c 41 47 53 20 3d 20 24 28 52 45 51 5f 46  _FLAGS = $(REQ_F
5e50: 45 41 54 55 52 45 5f 46 4c 41 47 53 29 20 2d 44  EATURE_FLAGS) -D
5e60: 53 51 4c 49 54 45 5f 4d 41 58 5f 54 52 49 47 47  SQLITE_MAX_TRIGG
5e70: 45 52 5f 44 45 50 54 48 3d 31 30 30 0a 0a 23 20  ER_DEPTH=100..# 
5e80: 49 66 20 77 65 20 61 72 65 20 6c 69 6e 6b 69 6e  If we are linkin
5e90: 67 20 74 6f 20 74 68 65 20 52 50 43 52 54 34 20  g to the RPCRT4 
5ea0: 6c 69 62 72 61 72 79 2c 20 65 6e 61 62 6c 65 20  library, enable 
5eb0: 66 65 61 74 75 72 65 73 20 74 68 61 74 20 6e 65  features that ne
5ec0: 65 64 20 69 74 2e 0a 23 0a 21 49 46 20 24 28 55  ed it..#.!IF $(U
5ed0: 53 45 5f 52 50 43 52 54 34 5f 4c 49 42 29 21 3d  SE_RPCRT4_LIB)!=
5ee0: 30 0a 52 45 51 5f 46 45 41 54 55 52 45 5f 46 4c  0.REQ_FEATURE_FL
5ef0: 41 47 53 20 3d 20 24 28 52 45 51 5f 46 45 41 54  AGS = $(REQ_FEAT
5f00: 55 52 45 5f 46 4c 41 47 53 29 20 2d 44 53 51 4c  URE_FLAGS) -DSQL
5f10: 49 54 45 5f 57 49 4e 33 32 5f 55 53 45 5f 55 55  ITE_WIN32_USE_UU
5f20: 49 44 3d 31 0a 21 45 4e 44 49 46 0a 0a 23 20 41  ID=1.!ENDIF..# A
5f30: 64 64 20 74 68 65 20 72 65 71 75 69 72 65 64 20  dd the required 
5f40: 61 6e 64 20 6f 70 74 69 6f 6e 61 6c 20 53 51 4c  and optional SQL
5f50: 69 74 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20  ite compilation 
5f60: 6f 70 74 69 6f 6e 73 20 69 6e 74 6f 20 74 68 65  options into the
5f70: 20 63 6f 6d 6d 61 6e 64 0a 23 20 6c 69 6e 65 73   command.# lines
5f80: 20 75 73 65 64 20 74 6f 20 69 6e 76 6f 6b 65 20   used to invoke 
5f90: 74 68 65 20 4d 53 56 43 20 63 6f 64 65 20 61 6e  the MSVC code an
5fa0: 64 20 72 65 73 6f 75 72 63 65 20 63 6f 6d 70 69  d resource compi
5fb0: 6c 65 72 73 2e 0a 23 0a 54 43 43 20 3d 20 24 28  lers..#.TCC = $(
5fc0: 54 43 43 29 20 24 28 52 45 51 5f 46 45 41 54 55  TCC) $(REQ_FEATU
5fd0: 52 45 5f 46 4c 41 47 53 29 20 24 28 4f 50 54 5f  RE_FLAGS) $(OPT_
5fe0: 46 45 41 54 55 52 45 5f 46 4c 41 47 53 29 20 24  FEATURE_FLAGS) $
5ff0: 28 45 58 54 5f 46 45 41 54 55 52 45 5f 46 4c 41  (EXT_FEATURE_FLA
6000: 47 53 29 0a 52 43 43 20 3d 20 24 28 52 43 43 29  GS).RCC = $(RCC)
6010: 20 24 28 52 45 51 5f 46 45 41 54 55 52 45 5f 46   $(REQ_FEATURE_F
6020: 4c 41 47 53 29 20 24 28 4f 50 54 5f 46 45 41 54  LAGS) $(OPT_FEAT
6030: 55 52 45 5f 46 4c 41 47 53 29 20 24 28 45 58 54  URE_FLAGS) $(EXT
6040: 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 29 0a  _FEATURE_FLAGS).
6050: 0a 23 20 41 64 64 20 69 6e 20 61 6e 79 20 6f 70  .# Add in any op
6060: 74 69 6f 6e 61 6c 20 70 61 72 61 6d 65 74 65 72  tional parameter
6070: 73 20 73 70 65 63 69 66 69 65 64 20 6f 6e 20 74  s specified on t
6080: 68 65 20 63 6f 6d 6d 61 6e 65 20 6c 69 6e 65 2c  he commane line,
6090: 20 65 2e 67 2e 0a 23 20 6e 6d 61 6b 65 20 2f 66   e.g..# nmake /f
60a0: 20 4d 61 6b 65 66 69 6c 65 2e 6d 73 63 20 61 6c   Makefile.msc al
60b0: 6c 20 22 4f 50 54 53 3d 2d 44 53 51 4c 49 54 45  l "OPTS=-DSQLITE
60c0: 5f 45 4e 41 42 4c 45 5f 46 4f 4f 3d 31 20 2d 44  _ENABLE_FOO=1 -D
60d0: 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 46 4f 4f 3d  SQLITE_OMIT_FOO=
60e0: 31 22 0a 23 0a 54 43 43 20 3d 20 24 28 54 43 43  1".#.TCC = $(TCC
60f0: 29 20 24 28 4f 50 54 53 29 0a 52 43 43 20 3d 20  ) $(OPTS).RCC = 
6100: 24 28 52 43 43 29 20 24 28 4f 50 54 53 29 0a 0a  $(RCC) $(OPTS)..
6110: 23 20 49 66 20 63 6f 6d 70 69 6c 69 6e 67 20 66  # If compiling f
6120: 6f 72 20 64 65 62 75 67 67 69 6e 67 2c 20 61 64  or debugging, ad
6130: 64 20 73 6f 6d 65 20 64 65 66 69 6e 65 73 2e 0a  d some defines..
6140: 23 0a 21 49 46 20 24 28 44 45 42 55 47 29 3e 31  #.!IF $(DEBUG)>1
6150: 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 44  .TCC = $(TCC) -D
6160: 5f 44 45 42 55 47 0a 42 43 43 20 3d 20 24 28 42  _DEBUG.BCC = $(B
6170: 43 43 29 20 2d 44 5f 44 45 42 55 47 0a 52 43 43  CC) -D_DEBUG.RCC
6180: 20 3d 20 24 28 52 43 43 29 20 2d 44 5f 44 45 42   = $(RCC) -D_DEB
6190: 55 47 0a 21 45 4e 44 49 46 0a 0a 23 20 49 66 20  UG.!ENDIF..# If 
61a0: 6f 70 74 69 6d 69 7a 61 74 69 6f 6e 73 20 61 72  optimizations ar
61b0: 65 20 65 6e 61 62 6c 65 64 20 6f 72 20 64 69 73  e enabled or dis
61c0: 61 62 6c 65 64 20 28 65 69 74 68 65 72 20 69 6d  abled (either im
61d0: 70 6c 69 63 69 74 6c 79 20 6f 72 0a 23 20 65 78  plicitly or.# ex
61e0: 70 6c 69 63 69 74 6c 79 29 2c 20 61 64 64 20 74  plicitly), add t
61f0: 68 65 20 6e 65 63 65 73 73 61 72 79 20 66 6c 61  he necessary fla
6200: 67 73 2e 0a 23 0a 21 49 46 20 24 28 44 45 42 55  gs..#.!IF $(DEBU
6210: 47 29 3e 31 20 7c 7c 20 24 28 4f 50 54 49 4d 49  G)>1 || $(OPTIMI
6220: 5a 41 54 49 4f 4e 53 29 3d 3d 30 0a 54 43 43 20  ZATIONS)==0.TCC 
6230: 3d 20 24 28 54 43 43 29 20 2d 4f 64 0a 42 43 43  = $(TCC) -Od.BCC
6240: 20 3d 20 24 28 42 43 43 29 20 2d 4f 64 0a 21 49   = $(BCC) -Od.!I
6250: 46 20 24 28 55 53 45 5f 52 55 4e 54 49 4d 45 5f  F $(USE_RUNTIME_
6260: 43 48 45 43 4b 53 29 21 3d 30 0a 54 43 43 20 3d  CHECKS)!=0.TCC =
6270: 20 24 28 54 43 43 29 20 2d 52 54 43 31 0a 42 43   $(TCC) -RTC1.BC
6280: 43 20 3d 20 24 28 42 43 43 29 20 2d 52 54 43 31  C = $(BCC) -RTC1
6290: 0a 21 45 4e 44 49 46 0a 21 45 4c 53 45 49 46 20  .!ENDIF.!ELSEIF 
62a0: 24 28 4f 50 54 49 4d 49 5a 41 54 49 4f 4e 53 29  $(OPTIMIZATIONS)
62b0: 3e 3d 33 0a 54 43 43 20 3d 20 24 28 54 43 43 29  >=3.TCC = $(TCC)
62c0: 20 2d 4f 78 0a 42 43 43 20 3d 20 24 28 42 43 43   -Ox.BCC = $(BCC
62d0: 29 20 2d 4f 78 0a 21 45 4c 53 45 49 46 20 24 28  ) -Ox.!ELSEIF $(
62e0: 4f 50 54 49 4d 49 5a 41 54 49 4f 4e 53 29 3d 3d  OPTIMIZATIONS)==
62f0: 32 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d  2.TCC = $(TCC) -
6300: 4f 32 0a 42 43 43 20 3d 20 24 28 42 43 43 29 20  O2.BCC = $(BCC) 
6310: 2d 4f 32 0a 21 45 4c 53 45 49 46 20 24 28 4f 50  -O2.!ELSEIF $(OP
6320: 54 49 4d 49 5a 41 54 49 4f 4e 53 29 3d 3d 31 0a  TIMIZATIONS)==1.
6330: 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 4f 31  TCC = $(TCC) -O1
6340: 0a 42 43 43 20 3d 20 24 28 42 43 43 29 20 2d 4f  .BCC = $(BCC) -O
6350: 31 0a 21 45 4e 44 49 46 0a 0a 23 20 49 66 20 73  1.!ENDIF..# If s
6360: 79 6d 62 6f 6c 73 20 61 72 65 20 65 6e 61 62 6c  ymbols are enabl
6370: 65 64 20 28 6f 72 20 63 6f 6d 70 69 6c 69 6e 67  ed (or compiling
6380: 20 66 6f 72 20 64 65 62 75 67 67 69 6e 67 29 2c   for debugging),
6390: 20 65 6e 61 62 6c 65 20 50 44 42 73 2e 0a 23 0a   enable PDBs..#.
63a0: 21 49 46 20 24 28 44 45 42 55 47 29 3e 31 20 7c  !IF $(DEBUG)>1 |
63b0: 7c 20 24 28 53 59 4d 42 4f 4c 53 29 21 3d 30 0a  | $(SYMBOLS)!=0.
63c0: 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 5a 69  TCC = $(TCC) -Zi
63d0: 0a 42 43 43 20 3d 20 24 28 42 43 43 29 20 2d 5a  .BCC = $(BCC) -Z
63e0: 69 0a 21 45 4e 44 49 46 0a 0a 23 20 3c 3c 6d 61  i.!ENDIF..# <<ma
63f0: 72 6b 3e 3e 0a 23 20 49 66 20 49 43 55 20 73 75  rk>>.# If ICU su
6400: 70 70 6f 72 74 20 69 73 20 65 6e 61 62 6c 65 64  pport is enabled
6410: 2c 20 61 64 64 20 74 68 65 20 63 6f 6d 70 69 6c  , add the compil
6420: 65 72 20 6f 70 74 69 6f 6e 73 20 66 6f 72 20 69  er options for i
6430: 74 2e 0a 23 0a 21 49 46 20 24 28 55 53 45 5f 49  t..#.!IF $(USE_I
6440: 43 55 29 21 3d 30 0a 54 43 43 20 3d 20 24 28 54  CU)!=0.TCC = $(T
6450: 43 43 29 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41  CC) -DSQLITE_ENA
6460: 42 4c 45 5f 49 43 55 3d 31 0a 52 43 43 20 3d 20  BLE_ICU=1.RCC = 
6470: 24 28 52 43 43 29 20 2d 44 53 51 4c 49 54 45 5f  $(RCC) -DSQLITE_
6480: 45 4e 41 42 4c 45 5f 49 43 55 3d 31 0a 54 43 43  ENABLE_ICU=1.TCC
6490: 20 3d 20 24 28 54 43 43 29 20 2d 49 24 28 54 4f   = $(TCC) -I$(TO
64a0: 50 29 5c 65 78 74 5c 69 63 75 0a 52 43 43 20 3d  P)\ext\icu.RCC =
64b0: 20 24 28 52 43 43 29 20 2d 49 24 28 54 4f 50 29   $(RCC) -I$(TOP)
64c0: 5c 65 78 74 5c 69 63 75 0a 54 43 43 20 3d 20 24  \ext\icu.TCC = $
64d0: 28 54 43 43 29 20 2d 49 24 28 49 43 55 49 4e 43  (TCC) -I$(ICUINC
64e0: 44 49 52 29 0a 52 43 43 20 3d 20 24 28 52 43 43  DIR).RCC = $(RCC
64f0: 29 20 2d 49 24 28 49 43 55 49 4e 43 44 49 52 29  ) -I$(ICUINCDIR)
6500: 0a 21 45 4e 44 49 46 0a 23 20 3c 3c 2f 6d 61 72  .!ENDIF.# <</mar
6510: 6b 3e 3e 0a 0a 23 20 43 6f 6d 6d 61 6e 64 20 6c  k>>..# Command l
6520: 69 6e 65 20 70 72 65 66 69 78 65 73 20 66 6f 72  ine prefixes for
6530: 20 63 6f 6d 70 69 6c 69 6e 67 20 63 6f 64 65 2c   compiling code,
6540: 20 63 6f 6d 70 69 6c 69 6e 67 20 72 65 73 6f 75   compiling resou
6550: 72 63 65 73 2c 0a 23 20 6c 69 6e 6b 69 6e 67 2c  rces,.# linking,
6560: 20 65 74 63 2e 0a 23 0a 4c 54 43 4f 4d 50 49 4c   etc..#.LTCOMPIL
6570: 45 20 3d 20 24 28 54 43 43 29 20 2d 46 6f 24 40  E = $(TCC) -Fo$@
6580: 0a 4c 54 52 43 4f 4d 50 49 4c 45 20 3d 20 24 28  .LTRCOMPILE = $(
6590: 52 43 43 29 20 2d 72 0a 4c 54 4c 49 42 20 3d 20  RCC) -r.LTLIB = 
65a0: 6c 69 62 2e 65 78 65 0a 4c 54 4c 49 4e 4b 20 3d  lib.exe.LTLINK =
65b0: 20 24 28 54 43 43 29 20 2d 46 65 24 40 0a 0a 23   $(TCC) -Fe$@..#
65c0: 20 49 66 20 72 65 71 75 65 73 74 65 64 2c 20 6c   If requested, l
65d0: 69 6e 6b 20 74 6f 20 74 68 65 20 52 50 43 52 54  ink to the RPCRT
65e0: 34 20 6c 69 62 72 61 72 79 2e 0a 23 0a 21 49 46  4 library..#.!IF
65f0: 20 24 28 55 53 45 5f 52 50 43 52 54 34 5f 4c 49   $(USE_RPCRT4_LI
6600: 42 29 21 3d 30 0a 4c 54 4c 49 4e 4b 20 3d 20 24  B)!=0.LTLINK = $
6610: 28 4c 54 4c 49 4e 4b 29 20 72 70 63 72 74 34 2e  (LTLINK) rpcrt4.
6620: 6c 69 62 0a 21 45 4e 44 49 46 0a 0a 23 20 49 66  lib.!ENDIF..# If
6630: 20 61 20 70 6c 61 74 66 6f 72 6d 20 77 61 73 20   a platform was 
6640: 73 65 74 2c 20 66 6f 72 63 65 20 74 68 65 20 6c  set, force the l
6650: 69 6e 6b 65 72 20 74 6f 20 74 61 72 67 65 74 20  inker to target 
6660: 74 68 61 74 2e 0a 23 20 4e 6f 74 65 20 74 68 61  that..# Note tha
6670: 74 20 74 68 65 20 76 63 76 61 72 73 2a 2e 62 61  t the vcvars*.ba
6680: 74 20 66 61 6d 69 6c 79 20 6f 66 20 62 61 74 63  t family of batc
6690: 68 20 66 69 6c 65 73 20 74 79 70 69 63 61 6c 6c  h files typicall
66a0: 79 0a 23 20 73 65 74 20 74 68 69 73 20 66 6f 72  y.# set this for
66b0: 20 79 6f 75 2e 20 20 4f 74 68 65 72 77 69 73 65   you.  Otherwise
66c0: 2c 20 74 68 65 20 6c 69 6e 6b 65 72 20 77 69 6c  , the linker wil
66d0: 6c 20 61 74 74 65 6d 70 74 0a 23 20 74 6f 20 64  l attempt.# to d
66e0: 65 64 75 63 65 20 74 68 65 20 62 69 6e 61 72 79  educe the binary
66f0: 20 74 79 70 65 20 62 61 73 65 64 20 6f 6e 20 74   type based on t
6700: 68 65 20 6f 62 6a 65 63 74 20 66 69 6c 65 73 2e  he object files.
6710: 0a 21 49 46 44 45 46 20 50 4c 41 54 46 4f 52 4d  .!IFDEF PLATFORM
6720: 0a 4c 54 4c 49 4e 4b 4f 50 54 53 20 3d 20 2f 4e  .LTLINKOPTS = /N
6730: 4f 4c 4f 47 4f 20 2f 4d 41 43 48 49 4e 45 3a 24  OLOGO /MACHINE:$
6740: 28 50 4c 41 54 46 4f 52 4d 29 0a 4c 54 4c 49 42  (PLATFORM).LTLIB
6750: 4f 50 54 53 20 3d 20 2f 4e 4f 4c 4f 47 4f 20 2f  OPTS = /NOLOGO /
6760: 4d 41 43 48 49 4e 45 3a 24 28 50 4c 41 54 46 4f  MACHINE:$(PLATFO
6770: 52 4d 29 0a 21 45 4c 53 45 0a 4c 54 4c 49 4e 4b  RM).!ELSE.LTLINK
6780: 4f 50 54 53 20 3d 20 2f 4e 4f 4c 4f 47 4f 0a 4c  OPTS = /NOLOGO.L
6790: 54 4c 49 42 4f 50 54 53 20 3d 20 2f 4e 4f 4c 4f  TLIBOPTS = /NOLO
67a0: 47 4f 0a 21 45 4e 44 49 46 0a 0a 23 20 57 68 65  GO.!ENDIF..# Whe
67b0: 6e 20 63 6f 6d 70 69 6c 69 6e 67 20 66 6f 72 20  n compiling for 
67c0: 75 73 65 20 69 6e 20 74 68 65 20 57 69 6e 52 54  use in the WinRT
67d0: 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 2c 20 74 68   environment, th
67e0: 65 20 66 6f 6c 6c 6f 77 69 6e 67 0a 23 20 6c 69  e following.# li
67f0: 6e 6b 65 72 20 6f 70 74 69 6f 6e 20 6d 75 73 74  nker option must
6800: 20 62 65 20 75 73 65 64 20 74 6f 20 6d 61 72 6b   be used to mark
6810: 20 74 68 65 20 65 78 65 63 75 74 61 62 6c 65 20   the executable 
6820: 61 73 20 72 75 6e 6e 61 62 6c 65 0a 23 20 6f 6e  as runnable.# on
6830: 6c 79 20 69 6e 20 74 68 65 20 63 6f 6e 74 65 78  ly in the contex
6840: 74 20 6f 66 20 61 6e 20 61 70 70 6c 69 63 61 74  t of an applicat
6850: 69 6f 6e 20 63 6f 6e 74 61 69 6e 65 72 2e 0a 23  ion container..#
6860: 0a 21 49 46 20 24 28 46 4f 52 5f 57 49 4e 52 54  .!IF $(FOR_WINRT
6870: 29 21 3d 30 0a 4c 54 4c 49 4e 4b 4f 50 54 53 20  )!=0.LTLINKOPTS 
6880: 3d 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20  = $(LTLINKOPTS) 
6890: 2f 41 50 50 43 4f 4e 54 41 49 4e 45 52 0a 21 49  /APPCONTAINER.!I
68a0: 46 20 22 24 28 56 49 53 55 41 4c 53 54 55 44 49  F "$(VISUALSTUDI
68b0: 4f 56 45 52 53 49 4f 4e 29 22 3d 3d 22 31 32 2e  OVERSION)"=="12.
68c0: 30 22 20 7c 7c 20 22 24 28 56 49 53 55 41 4c 53  0" || "$(VISUALS
68d0: 54 55 44 49 4f 56 45 52 53 49 4f 4e 29 22 3d 3d  TUDIOVERSION)"==
68e0: 22 31 34 2e 30 22 0a 21 49 46 4e 44 45 46 20 53  "14.0".!IFNDEF S
68f0: 54 4f 52 45 4c 49 42 50 41 54 48 0a 21 49 46 20  TORELIBPATH.!IF 
6900: 22 24 28 50 4c 41 54 46 4f 52 4d 29 22 3d 3d 22  "$(PLATFORM)"=="
6910: 78 38 36 22 0a 53 54 4f 52 45 4c 49 42 50 41 54  x86".STORELIBPAT
6920: 48 20 3d 20 24 28 43 52 54 4c 49 42 50 41 54 48  H = $(CRTLIBPATH
6930: 29 5c 73 74 6f 72 65 0a 21 45 4c 53 45 49 46 20  )\store.!ELSEIF 
6940: 22 24 28 50 4c 41 54 46 4f 52 4d 29 22 3d 3d 22  "$(PLATFORM)"=="
6950: 78 36 34 22 0a 53 54 4f 52 45 4c 49 42 50 41 54  x64".STORELIBPAT
6960: 48 20 3d 20 24 28 43 52 54 4c 49 42 50 41 54 48  H = $(CRTLIBPATH
6970: 29 5c 73 74 6f 72 65 5c 61 6d 64 36 34 0a 21 45  )\store\amd64.!E
6980: 4c 53 45 49 46 20 22 24 28 50 4c 41 54 46 4f 52  LSEIF "$(PLATFOR
6990: 4d 29 22 3d 3d 22 41 52 4d 22 0a 53 54 4f 52 45  M)"=="ARM".STORE
69a0: 4c 49 42 50 41 54 48 20 3d 20 24 28 43 52 54 4c  LIBPATH = $(CRTL
69b0: 49 42 50 41 54 48 29 5c 73 74 6f 72 65 5c 61 72  IBPATH)\store\ar
69c0: 6d 0a 21 45 4c 53 45 0a 53 54 4f 52 45 4c 49 42  m.!ELSE.STORELIB
69d0: 50 41 54 48 20 3d 20 24 28 43 52 54 4c 49 42 50  PATH = $(CRTLIBP
69e0: 41 54 48 29 5c 73 74 6f 72 65 0a 21 45 4e 44 49  ATH)\store.!ENDI
69f0: 46 0a 21 45 4e 44 49 46 0a 53 54 4f 52 45 4c 49  F.!ENDIF.STORELI
6a00: 42 50 41 54 48 20 3d 20 24 28 53 54 4f 52 45 4c  BPATH = $(STOREL
6a10: 49 42 50 41 54 48 3a 5c 5c 3d 5c 29 0a 4c 54 4c  IBPATH:\\=\).LTL
6a20: 49 4e 4b 4f 50 54 53 20 3d 20 24 28 4c 54 4c 49  INKOPTS = $(LTLI
6a30: 4e 4b 4f 50 54 53 29 20 22 2f 4c 49 42 50 41 54  NKOPTS) "/LIBPAT
6a40: 48 3a 24 28 53 54 4f 52 45 4c 49 42 50 41 54 48  H:$(STORELIBPATH
6a50: 29 22 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 46  )".!ENDIF.!ENDIF
6a60: 0a 0a 23 20 57 68 65 6e 20 63 6f 6d 70 69 6c 69  ..# When compili
6a70: 6e 67 20 66 6f 72 20 57 69 6e 64 6f 77 73 20 50  ng for Windows P
6a80: 68 6f 6e 65 20 38 2e 31 2c 20 61 6e 20 65 78 74  hone 8.1, an ext
6a90: 72 61 20 6c 69 62 72 61 72 79 20 70 61 74 68 20  ra library path 
6aa0: 69 73 0a 23 20 72 65 71 75 69 72 65 64 2e 0a 23  is.# required..#
6ab0: 0a 21 49 46 20 24 28 55 53 45 5f 57 50 38 31 5f  .!IF $(USE_WP81_
6ac0: 4f 50 54 53 29 21 3d 30 0a 21 49 46 4e 44 45 46  OPTS)!=0.!IFNDEF
6ad0: 20 57 50 38 31 4c 49 42 50 41 54 48 0a 21 49 46   WP81LIBPATH.!IF
6ae0: 20 22 24 28 50 4c 41 54 46 4f 52 4d 29 22 3d 3d   "$(PLATFORM)"==
6af0: 22 78 38 36 22 0a 57 50 38 31 4c 49 42 50 41 54  "x86".WP81LIBPAT
6b00: 48 20 3d 20 24 28 50 52 4f 47 52 41 4d 46 49 4c  H = $(PROGRAMFIL
6b10: 45 53 5f 58 38 36 29 5c 57 69 6e 64 6f 77 73 20  ES_X86)\Windows 
6b20: 50 68 6f 6e 65 20 4b 69 74 73 5c 38 2e 31 5c 6c  Phone Kits\8.1\l
6b30: 69 62 5c 78 38 36 0a 21 45 4c 53 45 49 46 20 22  ib\x86.!ELSEIF "
6b40: 24 28 50 4c 41 54 46 4f 52 4d 29 22 3d 3d 22 41  $(PLATFORM)"=="A
6b50: 52 4d 22 0a 57 50 38 31 4c 49 42 50 41 54 48 20  RM".WP81LIBPATH 
6b60: 3d 20 24 28 50 52 4f 47 52 41 4d 46 49 4c 45 53  = $(PROGRAMFILES
6b70: 5f 58 38 36 29 5c 57 69 6e 64 6f 77 73 20 50 68  _X86)\Windows Ph
6b80: 6f 6e 65 20 4b 69 74 73 5c 38 2e 31 5c 6c 69 62  one Kits\8.1\lib
6b90: 5c 41 52 4d 0a 21 45 4c 53 45 0a 57 50 38 31 4c  \ARM.!ELSE.WP81L
6ba0: 49 42 50 41 54 48 20 3d 20 24 28 50 52 4f 47 52  IBPATH = $(PROGR
6bb0: 41 4d 46 49 4c 45 53 5f 58 38 36 29 5c 57 69 6e  AMFILES_X86)\Win
6bc0: 64 6f 77 73 20 50 68 6f 6e 65 20 4b 69 74 73 5c  dows Phone Kits\
6bd0: 38 2e 31 5c 6c 69 62 5c 78 38 36 0a 21 45 4e 44  8.1\lib\x86.!END
6be0: 49 46 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 46  IF.!ENDIF.!ENDIF
6bf0: 0a 0a 23 20 57 68 65 6e 20 63 6f 6d 70 69 6c 69  ..# When compili
6c00: 6e 67 20 66 6f 72 20 57 69 6e 64 6f 77 73 20 50  ng for Windows P
6c10: 68 6f 6e 65 20 38 2e 31 2c 20 73 6f 6d 65 20 65  hone 8.1, some e
6c20: 78 74 72 61 20 6c 69 6e 6b 65 72 20 6f 70 74 69  xtra linker opti
6c30: 6f 6e 73 0a 23 20 61 72 65 20 61 6c 73 6f 20 72  ons.# are also r
6c40: 65 71 75 69 72 65 64 2e 0a 23 0a 21 49 46 20 24  equired..#.!IF $
6c50: 28 55 53 45 5f 57 50 38 31 5f 4f 50 54 53 29 21  (USE_WP81_OPTS)!
6c60: 3d 30 0a 21 49 46 44 45 46 20 57 50 38 31 4c 49  =0.!IFDEF WP81LI
6c70: 42 50 41 54 48 0a 4c 54 4c 49 4e 4b 4f 50 54 53  BPATH.LTLINKOPTS
6c80: 20 3d 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29   = $(LTLINKOPTS)
6c90: 20 22 2f 4c 49 42 50 41 54 48 3a 24 28 57 50 38   "/LIBPATH:$(WP8
6ca0: 31 4c 49 42 50 41 54 48 29 22 0a 21 45 4e 44 49  1LIBPATH)".!ENDI
6cb0: 46 0a 4c 54 4c 49 4e 4b 4f 50 54 53 20 3d 20 24  F.LTLINKOPTS = $
6cc0: 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 2f 44 59  (LTLINKOPTS) /DY
6cd0: 4e 41 4d 49 43 42 41 53 45 0a 4c 54 4c 49 4e 4b  NAMICBASE.LTLINK
6ce0: 4f 50 54 53 20 3d 20 24 28 4c 54 4c 49 4e 4b 4f  OPTS = $(LTLINKO
6cf0: 50 54 53 29 20 57 69 6e 64 6f 77 73 50 68 6f 6e  PTS) WindowsPhon
6d00: 65 43 6f 72 65 2e 6c 69 62 20 52 75 6e 74 69 6d  eCore.lib Runtim
6d10: 65 4f 62 6a 65 63 74 2e 6c 69 62 20 50 68 6f 6e  eObject.lib Phon
6d20: 65 41 70 70 4d 6f 64 65 6c 48 6f 73 74 2e 6c 69  eAppModelHost.li
6d30: 62 0a 4c 54 4c 49 4e 4b 4f 50 54 53 20 3d 20 24  b.LTLINKOPTS = $
6d40: 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 2f 4e 4f  (LTLINKOPTS) /NO
6d50: 44 45 46 41 55 4c 54 4c 49 42 3a 6b 65 72 6e 65  DEFAULTLIB:kerne
6d60: 6c 33 32 2e 6c 69 62 20 2f 4e 4f 44 45 46 41 55  l32.lib /NODEFAU
6d70: 4c 54 4c 49 42 3a 6f 6c 65 33 32 2e 6c 69 62 0a  LTLIB:ole32.lib.
6d80: 21 45 4e 44 49 46 0a 0a 23 20 57 68 65 6e 20 63  !ENDIF..# When c
6d90: 6f 6d 70 69 6c 69 6e 67 20 66 6f 72 20 55 57 50  ompiling for UWP
6da0: 20 6f 72 20 74 68 65 20 57 69 6e 64 6f 77 73 20   or the Windows 
6db0: 31 30 20 70 6c 61 74 66 6f 72 6d 2c 20 73 6f 6d  10 platform, som
6dc0: 65 20 65 78 74 72 61 20 6c 69 6e 6b 65 72 0a 23  e extra linker.#
6dd0: 20 6f 70 74 69 6f 6e 73 20 61 72 65 20 61 6c 73   options are als
6de0: 6f 20 72 65 71 75 69 72 65 64 2e 0a 23 0a 21 49  o required..#.!I
6df0: 46 20 24 28 46 4f 52 5f 55 57 50 29 21 3d 30 20  F $(FOR_UWP)!=0 
6e00: 7c 7c 20 24 28 46 4f 52 5f 57 49 4e 31 30 29 21  || $(FOR_WIN10)!
6e10: 3d 30 0a 4c 54 4c 49 4e 4b 4f 50 54 53 20 3d 20  =0.LTLINKOPTS = 
6e20: 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 2f 44  $(LTLINKOPTS) /D
6e30: 59 4e 41 4d 49 43 42 41 53 45 20 2f 4e 4f 44 45  YNAMICBASE /NODE
6e40: 46 41 55 4c 54 4c 49 42 3a 6b 65 72 6e 65 6c 33  FAULTLIB:kernel3
6e50: 32 2e 6c 69 62 0a 4c 54 4c 49 4e 4b 4f 50 54 53  2.lib.LTLINKOPTS
6e60: 20 3d 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29   = $(LTLINKOPTS)
6e70: 20 6d 69 6e 63 6f 72 65 2e 6c 69 62 0a 21 49 46   mincore.lib.!IF
6e80: 44 45 46 20 50 53 44 4b 4c 49 42 50 41 54 48 0a  DEF PSDKLIBPATH.
6e90: 4c 54 4c 49 4e 4b 4f 50 54 53 20 3d 20 24 28 4c  LTLINKOPTS = $(L
6ea0: 54 4c 49 4e 4b 4f 50 54 53 29 20 22 2f 4c 49 42  TLINKOPTS) "/LIB
6eb0: 50 41 54 48 3a 24 28 50 53 44 4b 4c 49 42 50 41  PATH:$(PSDKLIBPA
6ec0: 54 48 29 22 0a 21 45 4e 44 49 46 0a 21 45 4e 44  TH)".!ENDIF.!END
6ed0: 49 46 0a 0a 21 49 46 20 24 28 46 4f 52 5f 57 49  IF..!IF $(FOR_WI
6ee0: 4e 31 30 29 21 3d 30 0a 4c 54 4c 49 4e 4b 4f 50  N10)!=0.LTLINKOP
6ef0: 54 53 20 3d 20 24 28 4c 54 4c 49 4e 4b 4f 50 54  TS = $(LTLINKOPT
6f00: 53 29 20 2f 67 75 61 72 64 3a 63 66 20 22 2f 4c  S) /guard:cf "/L
6f10: 49 42 50 41 54 48 3a 24 28 55 43 52 54 4c 49 42  IBPATH:$(UCRTLIB
6f20: 50 41 54 48 29 22 0a 21 49 46 20 24 28 44 45 42  PATH)".!IF $(DEB
6f30: 55 47 29 3e 31 0a 4c 54 4c 49 4e 4b 4f 50 54 53  UG)>1.LTLINKOPTS
6f40: 20 3d 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29   = $(LTLINKOPTS)
6f50: 20 2f 4e 4f 44 45 46 41 55 4c 54 4c 49 42 3a 6c   /NODEFAULTLIB:l
6f60: 69 62 75 63 72 74 64 2e 6c 69 62 20 2f 44 45 46  ibucrtd.lib /DEF
6f70: 41 55 4c 54 4c 49 42 3a 75 63 72 74 64 2e 6c 69  AULTLIB:ucrtd.li
6f80: 62 0a 21 45 4c 53 45 0a 4c 54 4c 49 4e 4b 4f 50  b.!ELSE.LTLINKOP
6f90: 54 53 20 3d 20 24 28 4c 54 4c 49 4e 4b 4f 50 54  TS = $(LTLINKOPT
6fa0: 53 29 20 2f 4e 4f 44 45 46 41 55 4c 54 4c 49 42  S) /NODEFAULTLIB
6fb0: 3a 6c 69 62 75 63 72 74 2e 6c 69 62 20 2f 44 45  :libucrt.lib /DE
6fc0: 46 41 55 4c 54 4c 49 42 3a 75 63 72 74 2e 6c 69  FAULTLIB:ucrt.li
6fd0: 62 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a  b.!ENDIF.!ENDIF.
6fe0: 0a 23 20 49 66 20 65 69 74 68 65 72 20 64 65 62  .# If either deb
6ff0: 75 67 67 69 6e 67 20 6f 72 20 73 79 6d 62 6f 6c  ugging or symbol
7000: 73 20 61 72 65 20 65 6e 61 62 6c 65 64 2c 20 65  s are enabled, e
7010: 6e 61 62 6c 65 20 50 44 42 73 2e 0a 23 0a 21 49  nable PDBs..#.!I
7020: 46 20 24 28 44 45 42 55 47 29 3e 31 20 7c 7c 20  F $(DEBUG)>1 || 
7030: 24 28 53 59 4d 42 4f 4c 53 29 21 3d 30 0a 4c 44  $(SYMBOLS)!=0.LD
7040: 46 4c 41 47 53 20 3d 20 2f 44 45 42 55 47 20 24  FLAGS = /DEBUG $
7050: 28 4c 44 4f 50 54 53 29 0a 21 45 4c 53 45 0a 4c  (LDOPTS).!ELSE.L
7060: 44 46 4c 41 47 53 20 3d 20 24 28 4c 44 4f 50 54  DFLAGS = $(LDOPT
7070: 53 29 0a 21 45 4e 44 49 46 0a 0a 23 20 3c 3c 6d  S).!ENDIF..# <<m
7080: 61 72 6b 3e 3e 0a 23 20 53 74 61 72 74 20 77 69  ark>>.# Start wi
7090: 74 68 20 74 68 65 20 54 63 6c 20 72 65 6c 61 74  th the Tcl relat
70a0: 65 64 20 6c 69 6e 6b 65 72 20 6f 70 74 69 6f 6e  ed linker option
70b0: 73 2e 0a 23 0a 21 49 46 20 24 28 4e 4f 5f 54 43  s..#.!IF $(NO_TC
70c0: 4c 29 3d 3d 30 0a 4c 54 4c 49 42 50 41 54 48 53  L)==0.LTLIBPATHS
70d0: 20 3d 20 2f 4c 49 42 50 41 54 48 3a 24 28 54 43   = /LIBPATH:$(TC
70e0: 4c 4c 49 42 44 49 52 29 0a 4c 54 4c 49 42 53 20  LLIBDIR).LTLIBS 
70f0: 3d 20 24 28 4c 49 42 54 43 4c 29 0a 21 45 4e 44  = $(LIBTCL).!END
7100: 49 46 0a 0a 23 20 49 66 20 49 43 55 20 73 75 70  IF..# If ICU sup
7110: 70 6f 72 74 20 69 73 20 65 6e 61 62 6c 65 64 2c  port is enabled,
7120: 20 61 64 64 20 74 68 65 20 6c 69 6e 6b 65 72 20   add the linker 
7130: 6f 70 74 69 6f 6e 73 20 66 6f 72 20 69 74 2e 0a  options for it..
7140: 23 0a 21 49 46 20 24 28 55 53 45 5f 49 43 55 29  #.!IF $(USE_ICU)
7150: 21 3d 30 0a 4c 54 4c 49 42 50 41 54 48 53 20 3d  !=0.LTLIBPATHS =
7160: 20 24 28 4c 54 4c 49 42 50 41 54 48 53 29 20 2f   $(LTLIBPATHS) /
7170: 4c 49 42 50 41 54 48 3a 24 28 49 43 55 4c 49 42  LIBPATH:$(ICULIB
7180: 44 49 52 29 0a 4c 54 4c 49 42 53 20 3d 20 24 28  DIR).LTLIBS = $(
7190: 4c 54 4c 49 42 53 29 20 24 28 4c 49 42 49 43 55  LTLIBS) $(LIBICU
71a0: 29 0a 21 45 4e 44 49 46 0a 23 20 3c 3c 2f 6d 61  ).!ENDIF.# <</ma
71b0: 72 6b 3e 3e 0a 0a 23 20 59 6f 75 20 73 68 6f 75  rk>>..# You shou
71c0: 6c 64 20 6e 6f 74 20 68 61 76 65 20 74 6f 20 63  ld not have to c
71d0: 68 61 6e 67 65 20 61 6e 79 74 68 69 6e 67 20 62  hange anything b
71e0: 65 6c 6f 77 20 74 68 69 73 20 6c 69 6e 65 0a 23  elow this line.#
71f0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
7200: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
7210: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
7220: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23  ################
7230: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 0a 0a  ##############..
7240: 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 23 20 4f 62 6a  # <<mark>>.# Obj
7250: 65 63 74 20 66 69 6c 65 73 20 66 6f 72 20 74 68  ect files for th
7260: 65 20 53 51 4c 69 74 65 20 6c 69 62 72 61 72 79  e SQLite library
7270: 20 28 6e 6f 6e 2d 61 6d 61 6c 67 61 6d 61 74 69   (non-amalgamati
7280: 6f 6e 29 2e 0a 23 0a 4c 49 42 4f 42 4a 53 30 20  on)..#.LIBOBJS0 
7290: 3d 20 76 64 62 65 2e 6c 6f 20 70 61 72 73 65 2e  = vdbe.lo parse.
72a0: 6c 6f 20 61 6c 74 65 72 2e 6c 6f 20 61 6e 61 6c  lo alter.lo anal
72b0: 79 7a 65 2e 6c 6f 20 61 74 74 61 63 68 2e 6c 6f  yze.lo attach.lo
72c0: 20 61 75 74 68 2e 6c 6f 20 5c 0a 20 20 20 20 20   auth.lo \.     
72d0: 20 20 20 20 62 61 63 6b 75 70 2e 6c 6f 20 62 69      backup.lo bi
72e0: 74 76 65 63 2e 6c 6f 20 62 74 6d 75 74 65 78 2e  tvec.lo btmutex.
72f0: 6c 6f 20 62 74 72 65 65 2e 6c 6f 20 62 75 69 6c  lo btree.lo buil
7300: 64 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 20  d.lo \.         
7310: 63 61 6c 6c 62 61 63 6b 2e 6c 6f 20 63 6f 6d 70  callback.lo comp
7320: 6c 65 74 65 2e 6c 6f 20 63 74 69 6d 65 2e 6c 6f  lete.lo ctime.lo
7330: 20 64 61 74 65 2e 6c 6f 20 64 62 73 74 61 74 2e   date.lo dbstat.
7340: 6c 6f 20 64 65 6c 65 74 65 2e 6c 6f 20 5c 0a 20  lo delete.lo \. 
7350: 20 20 20 20 20 20 20 20 65 78 70 72 2e 6c 6f 20          expr.lo 
7360: 66 61 75 6c 74 2e 6c 6f 20 66 6b 65 79 2e 6c 6f  fault.lo fkey.lo
7370: 20 5c 0a 20 20 20 20 20 20 20 20 20 66 74 73 33   \.         fts3
7380: 2e 6c 6f 20 66 74 73 33 5f 61 75 78 2e 6c 6f 20  .lo fts3_aux.lo 
7390: 66 74 73 33 5f 65 78 70 72 2e 6c 6f 20 66 74 73  fts3_expr.lo fts
73a0: 33 5f 68 61 73 68 2e 6c 6f 20 66 74 73 33 5f 69  3_hash.lo fts3_i
73b0: 63 75 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20  cu.lo \.        
73c0: 20 66 74 73 33 5f 70 6f 72 74 65 72 2e 6c 6f 20   fts3_porter.lo 
73d0: 66 74 73 33 5f 73 6e 69 70 70 65 74 2e 6c 6f 20  fts3_snippet.lo 
73e0: 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 72 2e 6c  fts3_tokenizer.l
73f0: 6f 20 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 72  o fts3_tokenizer
7400: 31 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 20  1.lo \.         
7410: 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 5f 76 74  fts3_tokenize_vt
7420: 61 62 2e 6c 6f 20 66 74 73 33 5f 75 6e 69 63 6f  ab.lo fts3_unico
7430: 64 65 2e 6c 6f 20 66 74 73 33 5f 75 6e 69 63 6f  de.lo fts3_unico
7440: 64 65 32 2e 6c 6f 20 66 74 73 33 5f 77 72 69 74  de2.lo fts3_writ
7450: 65 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 20  e.lo \.         
7460: 66 74 73 35 2e 6c 6f 20 5c 0a 20 20 20 20 20 20  fts5.lo \.      
7470: 20 20 20 66 75 6e 63 2e 6c 6f 20 67 6c 6f 62 61     func.lo globa
7480: 6c 2e 6c 6f 20 68 61 73 68 2e 6c 6f 20 5c 0a 20  l.lo hash.lo \. 
7490: 20 20 20 20 20 20 20 20 69 63 75 2e 6c 6f 20 69          icu.lo i
74a0: 6e 73 65 72 74 2e 6c 6f 20 6c 65 67 61 63 79 2e  nsert.lo legacy.
74b0: 6c 6f 20 6c 6f 61 64 65 78 74 2e 6c 6f 20 5c 0a  lo loadext.lo \.
74c0: 20 20 20 20 20 20 20 20 20 6d 61 69 6e 2e 6c 6f           main.lo
74d0: 20 6d 61 6c 6c 6f 63 2e 6c 6f 20 6d 65 6d 30 2e   malloc.lo mem0.
74e0: 6c 6f 20 6d 65 6d 31 2e 6c 6f 20 6d 65 6d 32 2e  lo mem1.lo mem2.
74f0: 6c 6f 20 6d 65 6d 33 2e 6c 6f 20 6d 65 6d 35 2e  lo mem3.lo mem5.
7500: 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 20 6d 65  lo \.         me
7510: 6d 6a 6f 75 72 6e 61 6c 2e 6c 6f 20 5c 0a 20 20  mjournal.lo \.  
7520: 20 20 20 20 20 20 20 6d 75 74 65 78 2e 6c 6f 20         mutex.lo 
7530: 6d 75 74 65 78 5f 6e 6f 6f 70 2e 6c 6f 20 6d 75  mutex_noop.lo mu
7540: 74 65 78 5f 75 6e 69 78 2e 6c 6f 20 6d 75 74 65  tex_unix.lo mute
7550: 78 5f 77 33 32 2e 6c 6f 20 5c 0a 20 20 20 20 20  x_w32.lo \.     
7560: 20 20 20 20 6e 6f 74 69 66 79 2e 6c 6f 20 6f 70      notify.lo op
7570: 63 6f 64 65 73 2e 6c 6f 20 6f 73 2e 6c 6f 20 6f  codes.lo os.lo o
7580: 73 5f 75 6e 69 78 2e 6c 6f 20 6f 73 5f 77 69 6e  s_unix.lo os_win
7590: 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 20 70  .lo \.         p
75a0: 61 67 65 72 2e 6c 6f 20 70 63 61 63 68 65 2e 6c  ager.lo pcache.l
75b0: 6f 20 70 63 61 63 68 65 31 2e 6c 6f 20 70 72 61  o pcache1.lo pra
75c0: 67 6d 61 2e 6c 6f 20 70 72 65 70 61 72 65 2e 6c  gma.lo prepare.l
75d0: 6f 20 70 72 69 6e 74 66 2e 6c 6f 20 5c 0a 20 20  o printf.lo \.  
75e0: 20 20 20 20 20 20 20 72 61 6e 64 6f 6d 2e 6c 6f         random.lo
75f0: 20 72 65 73 6f 6c 76 65 2e 6c 6f 20 72 6f 77 73   resolve.lo rows
7600: 65 74 2e 6c 6f 20 72 74 72 65 65 2e 6c 6f 20 5c  et.lo rtree.lo \
7610: 0a 20 20 20 20 20 20 20 20 20 73 71 6c 69 74 65  .         sqlite
7620: 33 73 65 73 73 69 6f 6e 2e 6c 6f 20 73 65 6c 65  3session.lo sele
7630: 63 74 2e 6c 6f 20 73 71 6c 69 74 65 33 72 62 75  ct.lo sqlite3rbu
7640: 2e 6c 6f 20 73 74 61 74 75 73 2e 6c 6f 20 5c 0a  .lo status.lo \.
7650: 20 20 20 20 20 20 20 20 20 74 61 62 6c 65 2e 6c           table.l
7660: 6f 20 74 68 72 65 61 64 73 2e 6c 6f 20 74 6f 6b  o threads.lo tok
7670: 65 6e 69 7a 65 2e 6c 6f 20 74 72 65 65 76 69 65  enize.lo treevie
7680: 77 2e 6c 6f 20 74 72 69 67 67 65 72 2e 6c 6f 20  w.lo trigger.lo 
7690: 5c 0a 20 20 20 20 20 20 20 20 20 75 70 64 61 74  \.         updat
76a0: 65 2e 6c 6f 20 75 74 69 6c 2e 6c 6f 20 76 61 63  e.lo util.lo vac
76b0: 75 75 6d 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20  uum.lo \.       
76c0: 20 20 76 64 62 65 61 70 69 2e 6c 6f 20 76 64 62    vdbeapi.lo vdb
76d0: 65 61 75 78 2e 6c 6f 20 76 64 62 65 62 6c 6f 62  eaux.lo vdbeblob
76e0: 2e 6c 6f 20 76 64 62 65 6d 65 6d 2e 6c 6f 20 76  .lo vdbemem.lo v
76f0: 64 62 65 73 6f 72 74 2e 6c 6f 20 5c 0a 20 20 20  dbesort.lo \.   
7700: 20 20 20 20 20 20 76 64 62 65 74 72 61 63 65 2e        vdbetrace.
7710: 6c 6f 20 77 61 6c 2e 6c 6f 20 77 61 6c 6b 65 72  lo wal.lo walker
7720: 2e 6c 6f 20 77 68 65 72 65 2e 6c 6f 20 77 68 65  .lo where.lo whe
7730: 72 65 63 6f 64 65 2e 6c 6f 20 77 68 65 72 65 65  recode.lo wheree
7740: 78 70 72 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20  xpr.lo \.       
7750: 20 20 75 74 66 2e 6c 6f 20 76 74 61 62 2e 6c 6f    utf.lo vtab.lo
7760: 0a 23 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a 0a 23 20  .# <</mark>>..# 
7770: 4f 62 6a 65 63 74 20 66 69 6c 65 73 20 66 6f 72  Object files for
7780: 20 74 68 65 20 61 6d 61 6c 67 61 6d 61 74 69 6f   the amalgamatio
7790: 6e 2e 0a 23 0a 4c 49 42 4f 42 4a 53 31 20 3d 20  n..#.LIBOBJS1 = 
77a0: 73 71 6c 69 74 65 33 2e 6c 6f 0a 0a 23 20 44 65  sqlite3.lo..# De
77b0: 74 65 72 6d 69 6e 65 20 74 68 65 20 72 65 61 6c  termine the real
77c0: 20 76 61 6c 75 65 20 6f 66 20 4c 49 42 4f 42 4a   value of LIBOBJ
77d0: 20 62 61 73 65 64 20 6f 6e 20 74 68 65 20 27 63   based on the 'c
77e0: 6f 6e 66 69 67 75 72 65 27 20 73 63 72 69 70 74  onfigure' script
77f0: 0a 23 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 21 49  .#.# <<mark>>.!I
7800: 46 20 24 28 55 53 45 5f 41 4d 41 4c 47 41 4d 41  F $(USE_AMALGAMA
7810: 54 49 4f 4e 29 3d 3d 30 0a 4c 49 42 4f 42 4a 20  TION)==0.LIBOBJ 
7820: 3d 20 24 28 4c 49 42 4f 42 4a 53 30 29 0a 21 45  = $(LIBOBJS0).!E
7830: 4c 53 45 0a 23 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a  LSE.# <</mark>>.
7840: 4c 49 42 4f 42 4a 20 3d 20 24 28 4c 49 42 4f 42  LIBOBJ = $(LIBOB
7850: 4a 53 31 29 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a  JS1).# <<mark>>.
7860: 21 45 4e 44 49 46 0a 23 20 3c 3c 2f 6d 61 72 6b  !ENDIF.# <</mark
7870: 3e 3e 0a 0a 23 20 44 65 74 65 72 6d 69 6e 65 20  >>..# Determine 
7880: 69 66 20 65 6d 62 65 64 64 65 64 20 72 65 73 6f  if embedded reso
7890: 75 72 63 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e  urce compilation
78a0: 20 61 6e 64 20 75 73 61 67 65 20 61 72 65 20 65   and usage are e
78b0: 6e 61 62 6c 65 64 2e 0a 23 0a 21 49 46 20 24 28  nabled..#.!IF $(
78c0: 55 53 45 5f 52 43 29 21 3d 30 0a 4c 49 42 52 45  USE_RC)!=0.LIBRE
78d0: 53 4f 42 4a 53 20 3d 20 73 71 6c 69 74 65 33 72  SOBJS = sqlite3r
78e0: 65 73 2e 6c 6f 0a 21 45 4c 53 45 0a 4c 49 42 52  es.lo.!ELSE.LIBR
78f0: 45 53 4f 42 4a 53 20 3d 0a 21 45 4e 44 49 46 0a  ESOBJS =.!ENDIF.
7900: 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 23 20 43 6f  .# <<mark>>.# Co
7910: 72 65 20 73 6f 75 72 63 65 20 63 6f 64 65 20 66  re source code f
7920: 69 6c 65 73 2c 20 70 61 72 74 20 31 2e 0a 23 0a  iles, part 1..#.
7930: 53 52 43 30 30 20 3d 20 5c 0a 20 20 24 28 54 4f  SRC00 = \.  $(TO
7940: 50 29 5c 73 72 63 5c 61 6c 74 65 72 2e 63 20 5c  P)\src\alter.c \
7950: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 61 6e  .  $(TOP)\src\an
7960: 61 6c 79 7a 65 2e 63 20 5c 0a 20 20 24 28 54 4f  alyze.c \.  $(TO
7970: 50 29 5c 73 72 63 5c 61 74 74 61 63 68 2e 63 20  P)\src\attach.c 
7980: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 61  \.  $(TOP)\src\a
7990: 75 74 68 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  uth.c \.  $(TOP)
79a0: 5c 73 72 63 5c 62 61 63 6b 75 70 2e 63 20 5c 0a  \src\backup.c \.
79b0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 62 69 74    $(TOP)\src\bit
79c0: 76 65 63 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  vec.c \.  $(TOP)
79d0: 5c 73 72 63 5c 62 74 6d 75 74 65 78 2e 63 20 5c  \src\btmutex.c \
79e0: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 62 74  .  $(TOP)\src\bt
79f0: 72 65 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  ree.c \.  $(TOP)
7a00: 5c 73 72 63 5c 62 75 69 6c 64 2e 63 20 5c 0a 20  \src\build.c \. 
7a10: 20 24 28 54 4f 50 29 5c 73 72 63 5c 63 61 6c 6c   $(TOP)\src\call
7a20: 62 61 63 6b 2e 63 20 5c 0a 20 20 24 28 54 4f 50  back.c \.  $(TOP
7a30: 29 5c 73 72 63 5c 63 6f 6d 70 6c 65 74 65 2e 63  )\src\complete.c
7a40: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\
7a50: 63 74 69 6d 65 2e 63 20 5c 0a 20 20 24 28 54 4f  ctime.c \.  $(TO
7a60: 50 29 5c 73 72 63 5c 64 61 74 65 2e 63 20 5c 0a  P)\src\date.c \.
7a70: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 64 62 73    $(TOP)\src\dbs
7a80: 74 61 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  tat.c \.  $(TOP)
7a90: 5c 73 72 63 5c 64 65 6c 65 74 65 2e 63 20 5c 0a  \src\delete.c \.
7aa0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 65 78 70    $(TOP)\src\exp
7ab0: 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  r.c \.  $(TOP)\s
7ac0: 72 63 5c 66 61 75 6c 74 2e 63 20 5c 0a 20 20 24  rc\fault.c \.  $
7ad0: 28 54 4f 50 29 5c 73 72 63 5c 66 6b 65 79 2e 63  (TOP)\src\fkey.c
7ae0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\
7af0: 66 75 6e 63 2e 63 20 5c 0a 20 20 24 28 54 4f 50  func.c \.  $(TOP
7b00: 29 5c 73 72 63 5c 67 6c 6f 62 61 6c 2e 63 20 5c  )\src\global.c \
7b10: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 68 61  .  $(TOP)\src\ha
7b20: 73 68 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  sh.c \.  $(TOP)\
7b30: 73 72 63 5c 69 6e 73 65 72 74 2e 63 20 5c 0a 20  src\insert.c \. 
7b40: 20 24 28 54 4f 50 29 5c 73 72 63 5c 6c 65 67 61   $(TOP)\src\lega
7b50: 63 79 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  cy.c \.  $(TOP)\
7b60: 73 72 63 5c 6c 6f 61 64 65 78 74 2e 63 20 5c 0a  src\loadext.c \.
7b70: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 61 69    $(TOP)\src\mai
7b80: 6e 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  n.c \.  $(TOP)\s
7b90: 72 63 5c 6d 61 6c 6c 6f 63 2e 63 20 5c 0a 20 20  rc\malloc.c \.  
7ba0: 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d 30 2e  $(TOP)\src\mem0.
7bb0: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src
7bc0: 5c 6d 65 6d 31 2e 63 20 5c 0a 20 20 24 28 54 4f  \mem1.c \.  $(TO
7bd0: 50 29 5c 73 72 63 5c 6d 65 6d 32 2e 63 20 5c 0a  P)\src\mem2.c \.
7be0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d    $(TOP)\src\mem
7bf0: 33 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  3.c \.  $(TOP)\s
7c00: 72 63 5c 6d 65 6d 35 2e 63 20 5c 0a 20 20 24 28  rc\mem5.c \.  $(
7c10: 54 4f 50 29 5c 73 72 63 5c 6d 65 6d 6a 6f 75 72  TOP)\src\memjour
7c20: 6e 61 6c 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  nal.c \.  $(TOP)
7c30: 5c 73 72 63 5c 6d 75 74 65 78 2e 63 20 5c 0a 20  \src\mutex.c \. 
7c40: 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 75 74 65   $(TOP)\src\mute
7c50: 78 5f 6e 6f 6f 70 2e 63 20 5c 0a 20 20 24 28 54  x_noop.c \.  $(T
7c60: 4f 50 29 5c 73 72 63 5c 6d 75 74 65 78 5f 75 6e  OP)\src\mutex_un
7c70: 69 78 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  ix.c \.  $(TOP)\
7c80: 73 72 63 5c 6d 75 74 65 78 5f 77 33 32 2e 63 20  src\mutex_w32.c 
7c90: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6e  \.  $(TOP)\src\n
7ca0: 6f 74 69 66 79 2e 63 20 5c 0a 20 20 24 28 54 4f  otify.c \.  $(TO
7cb0: 50 29 5c 73 72 63 5c 6f 73 2e 63 20 5c 0a 20 20  P)\src\os.c \.  
7cc0: 24 28 54 4f 50 29 5c 73 72 63 5c 6f 73 5f 75 6e  $(TOP)\src\os_un
7cd0: 69 78 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  ix.c \.  $(TOP)\
7ce0: 73 72 63 5c 6f 73 5f 77 69 6e 2e 63 0a 0a 23 20  src\os_win.c..# 
7cf0: 43 6f 72 65 20 73 6f 75 72 63 65 20 63 6f 64 65  Core source code
7d00: 20 66 69 6c 65 73 2c 20 70 61 72 74 20 32 2e 0a   files, part 2..
7d10: 23 0a 53 52 43 30 31 20 3d 20 5c 0a 20 20 24 28  #.SRC01 = \.  $(
7d20: 54 4f 50 29 5c 73 72 63 5c 70 61 67 65 72 2e 63  TOP)\src\pager.c
7d30: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\
7d40: 70 63 61 63 68 65 2e 63 20 5c 0a 20 20 24 28 54  pcache.c \.  $(T
7d50: 4f 50 29 5c 73 72 63 5c 70 63 61 63 68 65 31 2e  OP)\src\pcache1.
7d60: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src
7d70: 5c 70 72 61 67 6d 61 2e 63 20 5c 0a 20 20 24 28  \pragma.c \.  $(
7d80: 54 4f 50 29 5c 73 72 63 5c 70 72 65 70 61 72 65  TOP)\src\prepare
7d90: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr
7da0: 63 5c 70 72 69 6e 74 66 2e 63 20 5c 0a 20 20 24  c\printf.c \.  $
7db0: 28 54 4f 50 29 5c 73 72 63 5c 72 61 6e 64 6f 6d  (TOP)\src\random
7dc0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr
7dd0: 63 5c 72 65 73 6f 6c 76 65 2e 63 20 5c 0a 20 20  c\resolve.c \.  
7de0: 24 28 54 4f 50 29 5c 73 72 63 5c 72 6f 77 73 65  $(TOP)\src\rowse
7df0: 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  t.c \.  $(TOP)\s
7e00: 72 63 5c 73 65 6c 65 63 74 2e 63 20 5c 0a 20 20  rc\select.c \.  
7e10: 24 28 54 4f 50 29 5c 73 72 63 5c 73 74 61 74 75  $(TOP)\src\statu
7e20: 73 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  s.c \.  $(TOP)\s
7e30: 72 63 5c 74 61 62 6c 65 2e 63 20 5c 0a 20 20 24  rc\table.c \.  $
7e40: 28 54 4f 50 29 5c 73 72 63 5c 74 68 72 65 61 64  (TOP)\src\thread
7e50: 73 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  s.c \.  $(TOP)\s
7e60: 72 63 5c 74 63 6c 73 71 6c 69 74 65 2e 63 20 5c  rc\tclsqlite.c \
7e70: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 6f  .  $(TOP)\src\to
7e80: 6b 65 6e 69 7a 65 2e 63 20 5c 0a 20 20 24 28 54  kenize.c \.  $(T
7e90: 4f 50 29 5c 73 72 63 5c 74 72 65 65 76 69 65 77  OP)\src\treeview
7ea0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr
7eb0: 63 5c 74 72 69 67 67 65 72 2e 63 20 5c 0a 20 20  c\trigger.c \.  
7ec0: 24 28 54 4f 50 29 5c 73 72 63 5c 75 74 66 2e 63  $(TOP)\src\utf.c
7ed0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\
7ee0: 75 70 64 61 74 65 2e 63 20 5c 0a 20 20 24 28 54  update.c \.  $(T
7ef0: 4f 50 29 5c 73 72 63 5c 75 74 69 6c 2e 63 20 5c  OP)\src\util.c \
7f00: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 61  .  $(TOP)\src\va
7f10: 63 75 75 6d 2e 63 20 5c 0a 20 20 24 28 54 4f 50  cuum.c \.  $(TOP
7f20: 29 5c 73 72 63 5c 76 64 62 65 2e 63 20 5c 0a 20  )\src\vdbe.c \. 
7f30: 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65   $(TOP)\src\vdbe
7f40: 61 70 69 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  api.c \.  $(TOP)
7f50: 5c 73 72 63 5c 76 64 62 65 61 75 78 2e 63 20 5c  \src\vdbeaux.c \
7f60: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 64  .  $(TOP)\src\vd
7f70: 62 65 62 6c 6f 62 2e 63 20 5c 0a 20 20 24 28 54  beblob.c \.  $(T
7f80: 4f 50 29 5c 73 72 63 5c 76 64 62 65 6d 65 6d 2e  OP)\src\vdbemem.
7f90: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src
7fa0: 5c 76 64 62 65 73 6f 72 74 2e 63 20 5c 0a 20 20  \vdbesort.c \.  
7fb0: 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 74  $(TOP)\src\vdbet
7fc0: 72 61 63 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50  race.c \.  $(TOP
7fd0: 29 5c 73 72 63 5c 76 74 61 62 2e 63 20 5c 0a 20  )\src\vtab.c \. 
7fe0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 77 61 6c 2e   $(TOP)\src\wal.
7ff0: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src
8000: 5c 77 61 6c 6b 65 72 2e 63 20 5c 0a 20 20 24 28  \walker.c \.  $(
8010: 54 4f 50 29 5c 73 72 63 5c 77 68 65 72 65 2e 63  TOP)\src\where.c
8020: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\
8030: 77 68 65 72 65 63 6f 64 65 2e 63 20 5c 0a 20 20  wherecode.c \.  
8040: 24 28 54 4f 50 29 5c 73 72 63 5c 77 68 65 72 65  $(TOP)\src\where
8050: 65 78 70 72 2e 63 0a 0a 23 20 53 68 65 6c 6c 20  expr.c..# Shell 
8060: 73 6f 75 72 63 65 20 63 6f 64 65 20 66 69 6c 65  source code file
8070: 73 2e 0a 23 0a 53 52 43 30 32 20 3d 20 5c 0a 20  s..#.SRC02 = \. 
8080: 20 24 28 54 4f 50 29 5c 73 72 63 5c 73 68 65 6c   $(TOP)\src\shel
8090: 6c 2e 63 0a 0a 23 20 43 6f 72 65 20 6d 69 73 63  l.c..# Core misc
80a0: 65 6c 6c 61 6e 65 6f 75 73 20 66 69 6c 65 73 2e  ellaneous files.
80b0: 0a 23 0a 53 52 43 30 33 20 3d 20 5c 0a 20 20 24  .#.SRC03 = \.  $
80c0: 28 54 4f 50 29 5c 73 72 63 5c 70 61 72 73 65 2e  (TOP)\src\parse.
80d0: 79 0a 0a 23 20 43 6f 72 65 20 68 65 61 64 65 72  y..# Core header
80e0: 20 66 69 6c 65 73 2c 20 70 61 72 74 20 31 2e 0a   files, part 1..
80f0: 23 0a 53 52 43 30 34 20 3d 20 5c 0a 20 20 24 28  #.SRC04 = \.  $(
8100: 54 4f 50 29 5c 73 72 63 5c 62 74 72 65 65 2e 68  TOP)\src\btree.h
8110: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\
8120: 62 74 72 65 65 49 6e 74 2e 68 20 5c 0a 20 20 24  btreeInt.h \.  $
8130: 28 54 4f 50 29 5c 73 72 63 5c 68 61 73 68 2e 68  (TOP)\src\hash.h
8140: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\
8150: 68 77 74 69 6d 65 2e 68 20 5c 0a 20 20 24 28 54  hwtime.h \.  $(T
8160: 4f 50 29 5c 73 72 63 5c 6d 73 76 63 2e 68 20 5c  OP)\src\msvc.h \
8170: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 75  .  $(TOP)\src\mu
8180: 74 65 78 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29  tex.h \.  $(TOP)
8190: 5c 73 72 63 5c 6f 73 2e 68 20 5c 0a 20 20 24 28  \src\os.h \.  $(
81a0: 54 4f 50 29 5c 73 72 63 5c 6f 73 5f 63 6f 6d 6d  TOP)\src\os_comm
81b0: 6f 6e 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c  on.h \.  $(TOP)\
81c0: 73 72 63 5c 6f 73 5f 73 65 74 75 70 2e 68 20 5c  src\os_setup.h \
81d0: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6f 73  .  $(TOP)\src\os
81e0: 5f 77 69 6e 2e 68 0a 0a 23 20 43 6f 72 65 20 68  _win.h..# Core h
81f0: 65 61 64 65 72 20 66 69 6c 65 73 2c 20 70 61 72  eader files, par
8200: 74 20 32 2e 0a 23 0a 53 52 43 30 35 20 3d 20 5c  t 2..#.SRC05 = \
8210: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 61  .  $(TOP)\src\pa
8220: 67 65 72 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29  ger.h \.  $(TOP)
8230: 5c 73 72 63 5c 70 63 61 63 68 65 2e 68 20 5c 0a  \src\pcache.h \.
8240: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 72 61    $(TOP)\src\pra
8250: 67 6d 61 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29  gma.h \.  $(TOP)
8260: 5c 73 72 63 5c 73 71 6c 69 74 65 2e 68 2e 69 6e  \src\sqlite.h.in
8270: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\
8280: 73 71 6c 69 74 65 33 65 78 74 2e 68 20 5c 0a 20  sqlite3ext.h \. 
8290: 20 24 28 54 4f 50 29 5c 73 72 63 5c 73 71 6c 69   $(TOP)\src\sqli
82a0: 74 65 49 6e 74 2e 68 20 5c 0a 20 20 24 28 54 4f  teInt.h \.  $(TO
82b0: 50 29 5c 73 72 63 5c 73 71 6c 69 74 65 4c 69 6d  P)\src\sqliteLim
82c0: 69 74 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c  it.h \.  $(TOP)\
82d0: 73 72 63 5c 76 64 62 65 2e 68 20 5c 0a 20 20 24  src\vdbe.h \.  $
82e0: 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 49 6e  (TOP)\src\vdbeIn
82f0: 74 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  t.h \.  $(TOP)\s
8300: 72 63 5c 76 78 77 6f 72 6b 73 2e 68 20 5c 0a 20  rc\vxworks.h \. 
8310: 20 24 28 54 4f 50 29 5c 73 72 63 5c 77 61 6c 2e   $(TOP)\src\wal.
8320: 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  h \.  $(TOP)\src
8330: 5c 77 68 65 72 65 49 6e 74 2e 68 0a 0a 23 20 45  \whereInt.h..# E
8340: 78 74 65 6e 73 69 6f 6e 20 73 6f 75 72 63 65 20  xtension source 
8350: 63 6f 64 65 20 66 69 6c 65 73 2c 20 70 61 72 74  code files, part
8360: 20 31 2e 0a 23 0a 53 52 43 30 36 20 3d 20 5c 0a   1..#.SRC06 = \.
8370: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73    $(TOP)\ext\fts
8380: 31 5c 66 74 73 31 2e 63 20 5c 0a 20 20 24 28 54  1\fts1.c \.  $(T
8390: 4f 50 29 5c 65 78 74 5c 66 74 73 31 5c 66 74 73  OP)\ext\fts1\fts
83a0: 31 5f 68 61 73 68 2e 63 20 5c 0a 20 20 24 28 54  1_hash.c \.  $(T
83b0: 4f 50 29 5c 65 78 74 5c 66 74 73 31 5c 66 74 73  OP)\ext\fts1\fts
83c0: 31 5f 70 6f 72 74 65 72 2e 63 20 5c 0a 20 20 24  1_porter.c \.  $
83d0: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 31 5c 66  (TOP)\ext\fts1\f
83e0: 74 73 31 5f 74 6f 6b 65 6e 69 7a 65 72 31 2e 63  ts1_tokenizer1.c
83f0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c   \.  $(TOP)\ext\
8400: 66 74 73 32 5c 66 74 73 32 2e 63 20 5c 0a 20 20  fts2\fts2.c \.  
8410: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c  $(TOP)\ext\fts2\
8420: 66 74 73 32 5f 68 61 73 68 2e 63 20 5c 0a 20 20  fts2_hash.c \.  
8430: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c  $(TOP)\ext\fts2\
8440: 66 74 73 32 5f 69 63 75 2e 63 20 5c 0a 20 20 24  fts2_icu.c \.  $
8450: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66  (TOP)\ext\fts2\f
8460: 74 73 32 5f 70 6f 72 74 65 72 2e 63 20 5c 0a 20  ts2_porter.c \. 
8470: 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32   $(TOP)\ext\fts2
8480: 5c 66 74 73 32 5f 74 6f 6b 65 6e 69 7a 65 72 2e  \fts2_tokenizer.
8490: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74  c \.  $(TOP)\ext
84a0: 5c 66 74 73 32 5c 66 74 73 32 5f 74 6f 6b 65 6e  \fts2\fts2_token
84b0: 69 7a 65 72 31 2e 63 0a 0a 23 20 45 78 74 65 6e  izer1.c..# Exten
84c0: 73 69 6f 6e 20 73 6f 75 72 63 65 20 63 6f 64 65  sion source code
84d0: 20 66 69 6c 65 73 2c 20 70 61 72 74 20 32 2e 0a   files, part 2..
84e0: 23 0a 53 52 43 30 37 20 3d 20 5c 0a 20 20 24 28  #.SRC07 = \.  $(
84f0: 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74  TOP)\ext\fts3\ft
8500: 73 33 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  s3.c \.  $(TOP)\
8510: 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 61 75  ext\fts3\fts3_au
8520: 78 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65  x.c \.  $(TOP)\e
8530: 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 65 78 70  xt\fts3\fts3_exp
8540: 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65  r.c \.  $(TOP)\e
8550: 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 68 61 73  xt\fts3\fts3_has
8560: 68 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65  h.c \.  $(TOP)\e
8570: 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 69 63 75  xt\fts3\fts3_icu
8580: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78  .c \.  $(TOP)\ex
8590: 74 5c 66 74 73 33 5c 66 74 73 33 5f 70 6f 72 74  t\fts3\fts3_port
85a0: 65 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  er.c \.  $(TOP)\
85b0: 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 73 6e  ext\fts3\fts3_sn
85c0: 69 70 70 65 74 2e 63 20 5c 0a 20 20 24 28 54 4f  ippet.c \.  $(TO
85d0: 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33  P)\ext\fts3\fts3
85e0: 5f 74 6f 6b 65 6e 69 7a 65 72 2e 63 20 5c 0a 20  _tokenizer.c \. 
85f0: 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33   $(TOP)\ext\fts3
8600: 5c 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 72 31  \fts3_tokenizer1
8610: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78  .c \.  $(TOP)\ex
8620: 74 5c 66 74 73 33 5c 66 74 73 33 5f 74 6f 6b 65  t\fts3\fts3_toke
8630: 6e 69 7a 65 5f 76 74 61 62 2e 63 20 5c 0a 20 20  nize_vtab.c \.  
8640: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c  $(TOP)\ext\fts3\
8650: 66 74 73 33 5f 75 6e 69 63 6f 64 65 2e 63 20 5c  fts3_unicode.c \
8660: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74  .  $(TOP)\ext\ft
8670: 73 33 5c 66 74 73 33 5f 75 6e 69 63 6f 64 65 32  s3\fts3_unicode2
8680: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78  .c \.  $(TOP)\ex
8690: 74 5c 66 74 73 33 5c 66 74 73 33 5f 77 72 69 74  t\fts3\fts3_writ
86a0: 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65  e.c \.  $(TOP)\e
86b0: 78 74 5c 69 63 75 5c 69 63 75 2e 63 20 5c 0a 20  xt\icu\icu.c \. 
86c0: 20 24 28 54 4f 50 29 5c 65 78 74 5c 72 74 72 65   $(TOP)\ext\rtre
86d0: 65 5c 72 74 72 65 65 2e 63 20 5c 0a 20 20 24 28  e\rtree.c \.  $(
86e0: 54 4f 50 29 5c 65 78 74 5c 73 65 73 73 69 6f 6e  TOP)\ext\session
86f0: 5c 73 71 6c 69 74 65 33 73 65 73 73 69 6f 6e 2e  \sqlite3session.
8700: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74  c \.  $(TOP)\ext
8710: 5c 72 62 75 5c 73 71 6c 69 74 65 33 72 62 75 2e  \rbu\sqlite3rbu.
8720: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74  c \.  $(TOP)\ext
8730: 5c 6d 69 73 63 5c 6a 73 6f 6e 31 2e 63 0a 0a 23  \misc\json1.c..#
8740: 20 45 78 74 65 6e 73 69 6f 6e 20 68 65 61 64 65   Extension heade
8750: 72 20 66 69 6c 65 73 2c 20 70 61 72 74 20 31 2e  r files, part 1.
8760: 0a 23 0a 53 52 43 30 38 20 3d 20 5c 0a 20 20 24  .#.SRC08 = \.  $
8770: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 31 5c 66  (TOP)\ext\fts1\f
8780: 74 73 31 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29  ts1.h \.  $(TOP)
8790: 5c 65 78 74 5c 66 74 73 31 5c 66 74 73 31 5f 68  \ext\fts1\fts1_h
87a0: 61 73 68 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29  ash.h \.  $(TOP)
87b0: 5c 65 78 74 5c 66 74 73 31 5c 66 74 73 31 5f 74  \ext\fts1\fts1_t
87c0: 6f 6b 65 6e 69 7a 65 72 2e 68 20 5c 0a 20 20 24  okenizer.h \.  $
87d0: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66  (TOP)\ext\fts2\f
87e0: 74 73 32 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29  ts2.h \.  $(TOP)
87f0: 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f 68  \ext\fts2\fts2_h
8800: 61 73 68 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29  ash.h \.  $(TOP)
8810: 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f 74  \ext\fts2\fts2_t
8820: 6f 6b 65 6e 69 7a 65 72 2e 68 0a 0a 23 20 45 78  okenizer.h..# Ex
8830: 74 65 6e 73 69 6f 6e 20 68 65 61 64 65 72 20 66  tension header f
8840: 69 6c 65 73 2c 20 70 61 72 74 20 32 2e 0a 23 0a  iles, part 2..#.
8850: 53 52 43 30 39 20 3d 20 5c 0a 20 20 24 28 54 4f  SRC09 = \.  $(TO
8860: 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33  P)\ext\fts3\fts3
8870: 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78  .h \.  $(TOP)\ex
8880: 74 5c 66 74 73 33 5c 66 74 73 33 49 6e 74 2e 68  t\fts3\fts3Int.h
8890: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c   \.  $(TOP)\ext\
88a0: 66 74 73 33 5c 66 74 73 33 5f 68 61 73 68 2e 68  fts3\fts3_hash.h
88b0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c   \.  $(TOP)\ext\
88c0: 66 74 73 33 5c 66 74 73 33 5f 74 6f 6b 65 6e 69  fts3\fts3_tokeni
88d0: 7a 65 72 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29  zer.h \.  $(TOP)
88e0: 5c 65 78 74 5c 69 63 75 5c 73 71 6c 69 74 65 69  \ext\icu\sqlitei
88f0: 63 75 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c  cu.h \.  $(TOP)\
8900: 65 78 74 5c 72 74 72 65 65 5c 72 74 72 65 65 2e  ext\rtree\rtree.
8910: 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74  h \.  $(TOP)\ext
8920: 5c 72 62 75 5c 73 71 6c 69 74 65 33 72 62 75 2e  \rbu\sqlite3rbu.
8930: 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74  h \.  $(TOP)\ext
8940: 5c 73 65 73 73 69 6f 6e 5c 73 71 6c 69 74 65 33  \session\sqlite3
8950: 73 65 73 73 69 6f 6e 2e 68 0a 0a 23 20 47 65 6e  session.h..# Gen
8960: 65 72 61 74 65 64 20 73 6f 75 72 63 65 20 63 6f  erated source co
8970: 64 65 20 66 69 6c 65 73 0a 23 0a 53 52 43 31 30  de files.#.SRC10
8980: 20 3d 20 5c 0a 20 20 6f 70 63 6f 64 65 73 2e 63   = \.  opcodes.c
8990: 20 5c 0a 20 20 70 61 72 73 65 2e 63 0a 0a 23 20   \.  parse.c..# 
89a0: 47 65 6e 65 72 61 74 65 64 20 68 65 61 64 65 72  Generated header
89b0: 20 66 69 6c 65 73 0a 23 0a 53 52 43 31 31 20 3d   files.#.SRC11 =
89c0: 20 5c 0a 20 20 6b 65 79 77 6f 72 64 68 61 73 68   \.  keywordhash
89d0: 2e 68 20 5c 0a 20 20 6f 70 63 6f 64 65 73 2e 68  .h \.  opcodes.h
89e0: 20 5c 0a 20 20 70 61 72 73 65 2e 68 20 5c 0a 20   \.  parse.h \. 
89f0: 20 24 28 53 51 4c 49 54 45 33 48 29 0a 0a 23 20   $(SQLITE3H)..# 
8a00: 47 65 6e 65 72 61 74 65 64 20 54 63 6c 20 68 65  Generated Tcl he
8a10: 61 64 65 72 20 66 69 6c 65 73 0a 23 0a 21 49 46  ader files.#.!IF
8a20: 20 24 28 55 53 45 5f 53 54 44 43 41 4c 4c 29 21   $(USE_STDCALL)!
8a30: 3d 30 20 7c 7c 20 24 28 46 4f 52 5f 57 49 4e 31  =0 || $(FOR_WIN1
8a40: 30 29 21 3d 30 0a 53 52 43 31 32 20 3d 20 5c 0a  0)!=0.SRC12 = \.
8a50: 20 20 24 28 53 51 4c 49 54 45 54 43 4c 48 29 20    $(SQLITETCLH) 
8a60: 5c 0a 20 20 24 28 53 51 4c 49 54 45 54 43 4c 44  \.  $(SQLITETCLD
8a70: 45 43 4c 53 48 29 0a 21 45 4c 53 45 0a 53 52 43  ECLSH).!ELSE.SRC
8a80: 31 32 20 3d 0a 21 45 4e 44 49 46 0a 0a 23 20 41  12 =.!ENDIF..# A
8a90: 6c 6c 20 73 6f 75 72 63 65 20 63 6f 64 65 20 66  ll source code f
8aa0: 69 6c 65 73 2e 0a 23 0a 53 52 43 20 3d 20 24 28  iles..#.SRC = $(
8ab0: 53 52 43 30 30 29 20 24 28 53 52 43 30 31 29 20  SRC00) $(SRC01) 
8ac0: 24 28 53 52 43 30 32 29 20 24 28 53 52 43 30 33  $(SRC02) $(SRC03
8ad0: 29 20 24 28 53 52 43 30 34 29 20 24 28 53 52 43  ) $(SRC04) $(SRC
8ae0: 30 35 29 20 24 28 53 52 43 30 36 29 20 24 28 53  05) $(SRC06) $(S
8af0: 52 43 30 37 29 20 24 28 53 52 43 30 38 29 20 24  RC07) $(SRC08) $
8b00: 28 53 52 43 30 39 29 20 24 28 53 52 43 31 30 29  (SRC09) $(SRC10)
8b10: 20 24 28 53 52 43 31 31 29 0a 0a 23 20 53 6f 75   $(SRC11)..# Sou
8b20: 72 63 65 20 63 6f 64 65 20 74 6f 20 74 68 65 20  rce code to the 
8b30: 74 65 73 74 20 66 69 6c 65 73 2e 0a 23 0a 54 45  test files..#.TE
8b40: 53 54 53 52 43 20 3d 20 5c 0a 20 20 24 28 54 4f  STSRC = \.  $(TO
8b50: 50 29 5c 73 72 63 5c 74 65 73 74 31 2e 63 20 5c  P)\src\test1.c \
8b60: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65  .  $(TOP)\src\te
8b70: 73 74 32 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  st2.c \.  $(TOP)
8b80: 5c 73 72 63 5c 74 65 73 74 33 2e 63 20 5c 0a 20  \src\test3.c \. 
8b90: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74   $(TOP)\src\test
8ba0: 34 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  4.c \.  $(TOP)\s
8bb0: 72 63 5c 74 65 73 74 35 2e 63 20 5c 0a 20 20 24  rc\test5.c \.  $
8bc0: 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 36 2e  (TOP)\src\test6.
8bd0: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src
8be0: 5c 74 65 73 74 37 2e 63 20 5c 0a 20 20 24 28 54  \test7.c \.  $(T
8bf0: 4f 50 29 5c 73 72 63 5c 74 65 73 74 38 2e 63 20  OP)\src\test8.c 
8c00: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74  \.  $(TOP)\src\t
8c10: 65 73 74 39 2e 63 20 5c 0a 20 20 24 28 54 4f 50  est9.c \.  $(TOP
8c20: 29 5c 73 72 63 5c 74 65 73 74 5f 61 75 74 6f 65  )\src\test_autoe
8c30: 78 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  xt.c \.  $(TOP)\
8c40: 73 72 63 5c 74 65 73 74 5f 61 73 79 6e 63 2e 63  src\test_async.c
8c50: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\
8c60: 74 65 73 74 5f 62 61 63 6b 75 70 2e 63 20 5c 0a  test_backup.c \.
8c70: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73    $(TOP)\src\tes
8c80: 74 5f 62 65 73 74 69 6e 64 65 78 2e 63 20 5c 0a  t_bestindex.c \.
8c90: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73    $(TOP)\src\tes
8ca0: 74 5f 62 6c 6f 62 2e 63 20 5c 0a 20 20 24 28 54  t_blob.c \.  $(T
8cb0: 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 62 74 72  OP)\src\test_btr
8cc0: 65 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  ee.c \.  $(TOP)\
8cd0: 73 72 63 5c 74 65 73 74 5f 63 6f 6e 66 69 67 2e  src\test_config.
8ce0: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src
8cf0: 5c 74 65 73 74 5f 64 65 6c 65 74 65 2e 63 20 5c  \test_delete.c \
8d00: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65  .  $(TOP)\src\te
8d10: 73 74 5f 64 65 6d 6f 76 66 73 2e 63 20 5c 0a 20  st_demovfs.c \. 
8d20: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74   $(TOP)\src\test
8d30: 5f 64 65 76 73 79 6d 2e 63 20 5c 0a 20 20 24 28  _devsym.c \.  $(
8d40: 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 66 73  TOP)\src\test_fs
8d50: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr
8d60: 63 5c 74 65 73 74 5f 66 75 6e 63 2e 63 20 5c 0a  c\test_func.c \.
8d70: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73    $(TOP)\src\tes
8d80: 74 5f 68 65 78 69 6f 2e 63 20 5c 0a 20 20 24 28  t_hexio.c \.  $(
8d90: 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 69 6e  TOP)\src\test_in
8da0: 69 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  it.c \.  $(TOP)\
8db0: 73 72 63 5c 74 65 73 74 5f 69 6e 74 61 72 72 61  src\test_intarra
8dc0: 79 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  y.c \.  $(TOP)\s
8dd0: 72 63 5c 74 65 73 74 5f 6a 6f 75 72 6e 61 6c 2e  rc\test_journal.
8de0: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src
8df0: 5c 74 65 73 74 5f 6d 61 6c 6c 6f 63 2e 63 20 5c  \test_malloc.c \
8e00: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65  .  $(TOP)\src\te
8e10: 73 74 5f 6d 75 6c 74 69 70 6c 65 78 2e 63 20 5c  st_multiplex.c \
8e20: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65  .  $(TOP)\src\te
8e30: 73 74 5f 6d 75 74 65 78 2e 63 20 5c 0a 20 20 24  st_mutex.c \.  $
8e40: 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 6f  (TOP)\src\test_o
8e50: 6e 65 66 69 6c 65 2e 63 20 5c 0a 20 20 24 28 54  nefile.c \.  $(T
8e60: 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 6f 73 69  OP)\src\test_osi
8e70: 6e 73 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  nst.c \.  $(TOP)
8e80: 5c 73 72 63 5c 74 65 73 74 5f 70 63 61 63 68 65  \src\test_pcache
8e90: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr
8ea0: 63 5c 74 65 73 74 5f 71 75 6f 74 61 2e 63 20 5c  c\test_quota.c \
8eb0: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65  .  $(TOP)\src\te
8ec0: 73 74 5f 72 74 72 65 65 2e 63 20 5c 0a 20 20 24  st_rtree.c \.  $
8ed0: 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 73  (TOP)\src\test_s
8ee0: 63 68 65 6d 61 2e 63 20 5c 0a 20 20 24 28 54 4f  chema.c \.  $(TO
8ef0: 50 29 5c 73 72 63 5c 74 65 73 74 5f 73 65 72 76  P)\src\test_serv
8f00: 65 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  er.c \.  $(TOP)\
8f10: 73 72 63 5c 74 65 73 74 5f 73 75 70 65 72 6c 6f  src\test_superlo
8f20: 63 6b 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  ck.c \.  $(TOP)\
8f30: 73 72 63 5c 74 65 73 74 5f 73 79 73 63 61 6c 6c  src\test_syscall
8f40: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr
8f50: 63 5c 74 65 73 74 5f 74 63 6c 76 61 72 2e 63 20  c\test_tclvar.c 
8f60: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74  \.  $(TOP)\src\t
8f70: 65 73 74 5f 74 68 72 65 61 64 2e 63 20 5c 0a 20  est_thread.c \. 
8f80: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74   $(TOP)\src\test
8f90: 5f 76 66 73 2e 63 20 5c 0a 20 20 24 28 54 4f 50  _vfs.c \.  $(TOP
8fa0: 29 5c 73 72 63 5c 74 65 73 74 5f 77 69 6e 64 69  )\src\test_windi
8fb0: 72 65 6e 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50  rent.c \.  $(TOP
8fc0: 29 5c 73 72 63 5c 74 65 73 74 5f 77 73 64 2e 63  )\src\test_wsd.c
8fd0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c   \.  $(TOP)\ext\
8fe0: 66 74 73 33 5c 66 74 73 33 5f 74 65 72 6d 2e 63  fts3\fts3_term.c
8ff0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c   \.  $(TOP)\ext\
9000: 66 74 73 33 5c 66 74 73 33 5f 74 65 73 74 2e 63  fts3\fts3_test.c
9010: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c   \.  $(TOP)\ext\
9020: 72 62 75 5c 74 65 73 74 5f 72 62 75 2e 63 20 5c  rbu\test_rbu.c \
9030: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 73 65  .  $(TOP)\ext\se
9040: 73 73 69 6f 6e 5c 74 65 73 74 5f 73 65 73 73 69  ssion\test_sessi
9050: 6f 6e 2e 63 0a 0a 23 20 53 74 61 74 69 63 61 6c  on.c..# Statical
9060: 6c 79 20 6c 69 6e 6b 65 64 20 65 78 74 65 6e 73  ly linked extens
9070: 69 6f 6e 73 2e 0a 23 0a 54 45 53 54 45 58 54 20  ions..#.TESTEXT 
9080: 3d 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74  = \.  $(TOP)\ext
9090: 5c 6d 69 73 63 5c 61 6d 61 74 63 68 2e 63 20 5c  \misc\amatch.c \
90a0: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69  .  $(TOP)\ext\mi
90b0: 73 63 5c 63 61 72 72 61 79 2e 63 20 5c 0a 20 20  sc\carray.c \.  
90c0: 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c  $(TOP)\ext\misc\
90d0: 63 6c 6f 73 75 72 65 2e 63 20 5c 0a 20 20 24 28  closure.c \.  $(
90e0: 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c 63 73  TOP)\ext\misc\cs
90f0: 76 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65  v.c \.  $(TOP)\e
9100: 78 74 5c 6d 69 73 63 5c 65 76 61 6c 2e 63 20 5c  xt\misc\eval.c \
9110: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69  .  $(TOP)\ext\mi
9120: 73 63 5c 66 69 6c 65 69 6f 2e 63 20 5c 0a 20 20  sc\fileio.c \.  
9130: 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c  $(TOP)\ext\misc\
9140: 66 75 7a 7a 65 72 2e 63 20 5c 0a 20 20 24 28 54  fuzzer.c \.  $(T
9150: 4f 50 29 5c 65 78 74 5c 66 74 73 35 5c 66 74 73  OP)\ext\fts5\fts
9160: 35 5f 74 63 6c 2e 63 20 5c 0a 20 20 24 28 54 4f  5_tcl.c \.  $(TO
9170: 50 29 5c 65 78 74 5c 66 74 73 35 5c 66 74 73 35  P)\ext\fts5\fts5
9180: 5f 74 65 73 74 5f 6d 69 2e 63 20 5c 0a 20 20 24  _test_mi.c \.  $
9190: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 35 5c 66  (TOP)\ext\fts5\f
91a0: 74 73 35 5f 74 65 73 74 5f 74 6f 6b 2e 63 20 5c  ts5_test_tok.c \
91b0: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69  .  $(TOP)\ext\mi
91c0: 73 63 5c 69 65 65 65 37 35 34 2e 63 20 5c 0a 20  sc\ieee754.c \. 
91d0: 20 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63   $(TOP)\ext\misc
91e0: 5c 6e 65 78 74 63 68 61 72 2e 63 20 5c 0a 20 20  \nextchar.c \.  
91f0: 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c  $(TOP)\ext\misc\
9200: 70 65 72 63 65 6e 74 69 6c 65 2e 63 20 5c 0a 20  percentile.c \. 
9210: 20 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63   $(TOP)\ext\misc
9220: 5c 72 65 67 65 78 70 2e 63 20 5c 0a 20 20 24 28  \regexp.c \.  $(
9230: 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c 72 65  TOP)\ext\misc\re
9240: 6d 65 6d 62 65 72 2e 63 20 5c 0a 20 20 24 28 54  member.c \.  $(T
9250: 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c 73 65 72  OP)\ext\misc\ser
9260: 69 65 73 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  ies.c \.  $(TOP)
9270: 5c 65 78 74 5c 6d 69 73 63 5c 73 70 65 6c 6c 66  \ext\misc\spellf
9280: 69 78 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  ix.c \.  $(TOP)\
9290: 65 78 74 5c 6d 69 73 63 5c 74 6f 74 79 70 65 2e  ext\misc\totype.
92a0: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74  c \.  $(TOP)\ext
92b0: 5c 6d 69 73 63 5c 77 68 6f 6c 65 6e 75 6d 62 65  \misc\wholenumbe
92c0: 72 2e 63 0a 0a 23 20 53 6f 75 72 63 65 20 63 6f  r.c..# Source co
92d0: 64 65 20 74 6f 20 74 68 65 20 6c 69 62 72 61 72  de to the librar
92e0: 79 20 66 69 6c 65 73 20 6e 65 65 64 65 64 20 62  y files needed b
92f0: 79 20 74 68 65 20 74 65 73 74 20 66 69 78 74 75  y the test fixtu
9300: 72 65 0a 23 20 28 6e 6f 6e 2d 61 6d 61 6c 67 61  re.# (non-amalga
9310: 6d 61 74 69 6f 6e 29 0a 23 0a 54 45 53 54 53 52  mation).#.TESTSR
9320: 43 32 20 3d 20 5c 0a 20 20 24 28 53 52 43 30 30  C2 = \.  $(SRC00
9330: 29 20 5c 0a 20 20 24 28 53 52 43 30 31 29 20 5c  ) \.  $(SRC01) \
9340: 0a 20 20 24 28 53 52 43 30 36 29 20 5c 0a 20 20  .  $(SRC06) \.  
9350: 24 28 53 52 43 30 37 29 20 5c 0a 20 20 24 28 53  $(SRC07) \.  $(S
9360: 52 43 31 30 29 20 5c 0a 20 20 24 28 54 4f 50 29  RC10) \.  $(TOP)
9370: 5c 65 78 74 5c 61 73 79 6e 63 5c 73 71 6c 69 74  \ext\async\sqlit
9380: 65 33 61 73 79 6e 63 2e 63 0a 0a 23 20 48 65 61  e3async.c..# Hea
9390: 64 65 72 20 66 69 6c 65 73 20 75 73 65 64 20 62  der files used b
93a0: 79 20 61 6c 6c 20 6c 69 62 72 61 72 79 20 73 6f  y all library so
93b0: 75 72 63 65 20 66 69 6c 65 73 2e 0a 23 0a 48 44  urce files..#.HD
93c0: 52 20 3d 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c  R = \.   $(TOP)\
93d0: 73 72 63 5c 62 74 72 65 65 2e 68 20 5c 0a 20 20  src\btree.h \.  
93e0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 62 74 72 65   $(TOP)\src\btre
93f0: 65 49 6e 74 2e 68 20 5c 0a 20 20 20 24 28 54 4f  eInt.h \.   $(TO
9400: 50 29 5c 73 72 63 5c 68 61 73 68 2e 68 20 5c 0a  P)\src\hash.h \.
9410: 20 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 68 77     $(TOP)\src\hw
9420: 74 69 6d 65 2e 68 20 5c 0a 20 20 20 6b 65 79 77  time.h \.   keyw
9430: 6f 72 64 68 61 73 68 2e 68 20 5c 0a 20 20 20 24  ordhash.h \.   $
9440: 28 54 4f 50 29 5c 73 72 63 5c 6d 73 76 63 2e 68  (TOP)\src\msvc.h
9450: 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73 72 63   \.   $(TOP)\src
9460: 5c 6d 75 74 65 78 2e 68 20 5c 0a 20 20 20 6f 70  \mutex.h \.   op
9470: 63 6f 64 65 73 2e 68 20 5c 0a 20 20 20 24 28 54  codes.h \.   $(T
9480: 4f 50 29 5c 73 72 63 5c 6f 73 2e 68 20 5c 0a 20  OP)\src\os.h \. 
9490: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6f 73 5f    $(TOP)\src\os_
94a0: 63 6f 6d 6d 6f 6e 2e 68 20 5c 0a 20 20 20 24 28  common.h \.   $(
94b0: 54 4f 50 29 5c 73 72 63 5c 6f 73 5f 73 65 74 75  TOP)\src\os_setu
94c0: 70 2e 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c  p.h \.   $(TOP)\
94d0: 73 72 63 5c 6f 73 5f 77 69 6e 2e 68 20 5c 0a 20  src\os_win.h \. 
94e0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 61 67    $(TOP)\src\pag
94f0: 65 72 2e 68 20 5c 0a 20 20 20 24 28 54 4f 50 29  er.h \.   $(TOP)
9500: 5c 73 72 63 5c 70 63 61 63 68 65 2e 68 20 5c 0a  \src\pcache.h \.
9510: 20 20 20 70 61 72 73 65 2e 68 20 5c 0a 20 20 20     parse.h \.   
9520: 24 28 54 4f 50 29 5c 73 72 63 5c 70 72 61 67 6d  $(TOP)\src\pragm
9530: 61 2e 68 20 5c 0a 20 20 20 24 28 53 51 4c 49 54  a.h \.   $(SQLIT
9540: 45 33 48 29 20 5c 0a 20 20 20 73 71 6c 69 74 65  E3H) \.   sqlite
9550: 33 65 78 74 2e 68 20 5c 0a 20 20 20 24 28 54 4f  3ext.h \.   $(TO
9560: 50 29 5c 73 72 63 5c 73 71 6c 69 74 65 49 6e 74  P)\src\sqliteInt
9570: 2e 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73  .h \.   $(TOP)\s
9580: 72 63 5c 73 71 6c 69 74 65 4c 69 6d 69 74 2e 68  rc\sqliteLimit.h
9590: 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73 72 63   \.   $(TOP)\src
95a0: 5c 76 64 62 65 2e 68 20 5c 0a 20 20 20 24 28 54  \vdbe.h \.   $(T
95b0: 4f 50 29 5c 73 72 63 5c 76 64 62 65 49 6e 74 2e  OP)\src\vdbeInt.
95c0: 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73 72  h \.   $(TOP)\sr
95d0: 63 5c 76 78 77 6f 72 6b 73 2e 68 20 5c 0a 20 20  c\vxworks.h \.  
95e0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 77 68 65 72   $(TOP)\src\wher
95f0: 65 49 6e 74 2e 68 0a 0a 23 20 48 65 61 64 65 72  eInt.h..# Header
9600: 20 66 69 6c 65 73 20 75 73 65 64 20 62 79 20 65   files used by e
9610: 78 74 65 6e 73 69 6f 6e 73 0a 23 0a 45 58 54 48  xtensions.#.EXTH
9620: 44 52 20 3d 20 24 28 45 58 54 48 44 52 29 20 5c  DR = $(EXTHDR) \
9630: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74  .  $(TOP)\ext\ft
9640: 73 31 5c 66 74 73 31 2e 68 20 5c 0a 20 20 24 28  s1\fts1.h \.  $(
9650: 54 4f 50 29 5c 65 78 74 5c 66 74 73 31 5c 66 74  TOP)\ext\fts1\ft
9660: 73 31 5f 68 61 73 68 2e 68 20 5c 0a 20 20 24 28  s1_hash.h \.  $(
9670: 54 4f 50 29 5c 65 78 74 5c 66 74 73 31 5c 66 74  TOP)\ext\fts1\ft
9680: 73 31 5f 74 6f 6b 65 6e 69 7a 65 72 2e 68 0a 45  s1_tokenizer.h.E
9690: 58 54 48 44 52 20 3d 20 24 28 45 58 54 48 44 52  XTHDR = $(EXTHDR
96a0: 29 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74  ) \.  $(TOP)\ext
96b0: 5c 66 74 73 32 5c 66 74 73 32 2e 68 20 5c 0a 20  \fts2\fts2.h \. 
96c0: 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32   $(TOP)\ext\fts2
96d0: 5c 66 74 73 32 5f 68 61 73 68 2e 68 20 5c 0a 20  \fts2_hash.h \. 
96e0: 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32   $(TOP)\ext\fts2
96f0: 5c 66 74 73 32 5f 74 6f 6b 65 6e 69 7a 65 72 2e  \fts2_tokenizer.
9700: 68 0a 45 58 54 48 44 52 20 3d 20 24 28 45 58 54  h.EXTHDR = $(EXT
9710: 48 44 52 29 20 5c 0a 20 20 24 28 54 4f 50 29 5c  HDR) \.  $(TOP)\
9720: 65 78 74 5c 66 74 73 33 5c 66 74 73 33 2e 68 20  ext\fts3\fts3.h 
9730: 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66  \.  $(TOP)\ext\f
9740: 74 73 33 5c 66 74 73 33 49 6e 74 2e 68 20 5c 0a  ts3\fts3Int.h \.
9750: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73    $(TOP)\ext\fts
9760: 33 5c 66 74 73 33 5f 68 61 73 68 2e 68 20 5c 0a  3\fts3_hash.h \.
9770: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73    $(TOP)\ext\fts
9780: 33 5c 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 72  3\fts3_tokenizer
9790: 2e 68 0a 45 58 54 48 44 52 20 3d 20 24 28 45 58  .h.EXTHDR = $(EX
97a0: 54 48 44 52 29 20 5c 0a 20 20 24 28 54 4f 50 29  THDR) \.  $(TOP)
97b0: 5c 65 78 74 5c 72 74 72 65 65 5c 72 74 72 65 65  \ext\rtree\rtree
97c0: 2e 68 0a 45 58 54 48 44 52 20 3d 20 24 28 45 58  .h.EXTHDR = $(EX
97d0: 54 48 44 52 29 20 5c 0a 20 20 24 28 54 4f 50 29  THDR) \.  $(TOP)
97e0: 5c 65 78 74 5c 69 63 75 5c 73 71 6c 69 74 65 69  \ext\icu\sqlitei
97f0: 63 75 2e 68 0a 45 58 54 48 44 52 20 3d 20 24 28  cu.h.EXTHDR = $(
9800: 45 58 54 48 44 52 29 20 5c 0a 20 20 24 28 54 4f  EXTHDR) \.  $(TO
9810: 50 29 5c 65 78 74 5c 72 74 72 65 65 5c 73 71 6c  P)\ext\rtree\sql
9820: 69 74 65 33 72 74 72 65 65 2e 68 0a 45 58 54 48  ite3rtree.h.EXTH
9830: 44 52 20 3d 20 24 28 45 58 54 48 44 52 29 20 5c  DR = $(EXTHDR) \
9840: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 73 65  .  $(TOP)\ext\se
9850: 73 73 69 6f 6e 5c 73 71 6c 69 74 65 33 73 65 73  ssion\sqlite3ses
9860: 73 69 6f 6e 2e 68 0a 0a 23 20 65 78 65 63 75 74  sion.h..# execut
9870: 61 62 6c 65 73 20 6e 65 65 64 65 64 20 66 6f 72  ables needed for
9880: 20 74 65 73 74 69 6e 67 0a 23 0a 54 45 53 54 50   testing.#.TESTP
9890: 52 4f 47 53 20 3d 20 5c 0a 20 20 74 65 73 74 66  ROGS = \.  testf
98a0: 69 78 74 75 72 65 2e 65 78 65 20 5c 0a 20 20 24  ixture.exe \.  $
98b0: 28 53 51 4c 49 54 45 33 45 58 45 29 20 5c 0a 20  (SQLITE3EXE) \. 
98c0: 20 73 71 6c 69 74 65 33 5f 61 6e 61 6c 79 7a 65   sqlite3_analyze
98d0: 72 2e 65 78 65 20 5c 0a 20 20 73 71 6c 64 69 66  r.exe \.  sqldif
98e0: 66 2e 65 78 65 20 5c 0a 20 20 64 62 68 61 73 68  f.exe \.  dbhash
98f0: 2e 65 78 65 0a 0a 23 20 44 61 74 61 62 61 73 65  .exe..# Database
9900: 73 20 63 6f 6e 74 61 69 6e 69 6e 67 20 66 75 7a  s containing fuz
9910: 7a 65 72 20 74 65 73 74 20 63 61 73 65 73 0a 23  zer test cases.#
9920: 0a 46 55 5a 5a 44 41 54 41 20 3d 20 5c 0a 20 20  .FUZZDATA = \.  
9930: 24 28 54 4f 50 29 5c 74 65 73 74 5c 66 75 7a 7a  $(TOP)\test\fuzz
9940: 64 61 74 61 31 2e 64 62 20 5c 0a 20 20 24 28 54  data1.db \.  $(T
9950: 4f 50 29 5c 74 65 73 74 5c 66 75 7a 7a 64 61 74  OP)\test\fuzzdat
9960: 61 32 2e 64 62 20 5c 0a 20 20 24 28 54 4f 50 29  a2.db \.  $(TOP)
9970: 5c 74 65 73 74 5c 66 75 7a 7a 64 61 74 61 33 2e  \test\fuzzdata3.
9980: 64 62 20 5c 0a 20 20 24 28 54 4f 50 29 5c 74 65  db \.  $(TOP)\te
9990: 73 74 5c 66 75 7a 7a 64 61 74 61 34 2e 64 62 20  st\fuzzdata4.db 
99a0: 5c 0a 20 20 24 28 54 4f 50 29 5c 74 65 73 74 5c  \.  $(TOP)\test\
99b0: 66 75 7a 7a 64 61 74 61 35 2e 64 62 0a 23 20 3c  fuzzdata5.db.# <
99c0: 3c 2f 6d 61 72 6b 3e 3e 0a 0a 23 20 41 64 64 69  </mark>>..# Addi
99d0: 74 69 6f 6e 61 6c 20 63 6f 6d 70 69 6c 65 72 20  tional compiler 
99e0: 6f 70 74 69 6f 6e 73 20 66 6f 72 20 74 68 65 20  options for the 
99f0: 73 68 65 6c 6c 2e 20 20 54 68 65 73 65 20 61 72  shell.  These ar
9a00: 65 20 6f 6e 6c 79 20 65 66 66 65 63 74 69 76 65  e only effective
9a10: 0a 23 20 77 68 65 6e 20 74 68 65 20 73 68 65 6c  .# when the shel
9a20: 6c 20 69 73 20 6e 6f 74 20 62 65 69 6e 67 20 64  l is not being d
9a30: 79 6e 61 6d 69 63 61 6c 6c 79 20 6c 69 6e 6b 65  ynamically linke
9a40: 64 2e 0a 23 0a 21 49 46 20 24 28 44 59 4e 41 4d  d..#.!IF $(DYNAM
9a50: 49 43 5f 53 48 45 4c 4c 29 3d 3d 30 20 26 26 20  IC_SHELL)==0 && 
9a60: 24 28 46 4f 52 5f 57 49 4e 31 30 29 3d 3d 30 0a  $(FOR_WIN10)==0.
9a70: 53 48 45 4c 4c 5f 43 4f 4d 50 49 4c 45 5f 4f 50  SHELL_COMPILE_OP
9a80: 54 53 20 3d 20 24 28 53 48 45 4c 4c 5f 43 4f 4d  TS = $(SHELL_COM
9a90: 50 49 4c 45 5f 4f 50 54 53 29 20 2d 44 53 51 4c  PILE_OPTS) -DSQL
9aa0: 49 54 45 5f 53 48 45 4c 4c 5f 4a 53 4f 4e 31 20  ITE_SHELL_JSON1 
9ab0: 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f  -DSQLITE_ENABLE_
9ac0: 46 54 53 34 20 2d 44 53 51 4c 49 54 45 5f 45 4e  FTS4 -DSQLITE_EN
9ad0: 41 42 4c 45 5f 45 58 50 4c 41 49 4e 5f 43 4f 4d  ABLE_EXPLAIN_COM
9ae0: 4d 45 4e 54 53 0a 21 45 4e 44 49 46 0a 0a 23 20  MENTS.!ENDIF..# 
9af0: 3c 3c 6d 61 72 6b 3e 3e 0a 23 20 45 78 74 72 61  <<mark>>.# Extra
9b00: 20 63 6f 6d 70 69 6c 65 72 20 6f 70 74 69 6f 6e   compiler option
9b10: 73 20 66 6f 72 20 76 61 72 69 6f 75 73 20 74 65  s for various te
9b20: 73 74 20 74 6f 6f 6c 73 2e 0a 23 0a 4d 50 54 45  st tools..#.MPTE
9b30: 53 54 45 52 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54  STER_COMPILE_OPT
9b40: 53 20 3d 20 2d 44 53 51 4c 49 54 45 5f 53 48 45  S = -DSQLITE_SHE
9b50: 4c 4c 5f 4a 53 4f 4e 31 20 2d 44 53 51 4c 49 54  LL_JSON1 -DSQLIT
9b60: 45 5f 45 4e 41 42 4c 45 5f 46 54 53 35 0a 46 55  E_ENABLE_FTS5.FU
9b70: 5a 5a 45 52 53 48 45 4c 4c 5f 43 4f 4d 50 49 4c  ZZERSHELL_COMPIL
9b80: 45 5f 4f 50 54 53 20 3d 20 2d 44 53 51 4c 49 54  E_OPTS = -DSQLIT
9b90: 45 5f 45 4e 41 42 4c 45 5f 4a 53 4f 4e 31 0a 46  E_ENABLE_JSON1.F
9ba0: 55 5a 5a 43 48 45 43 4b 5f 43 4f 4d 50 49 4c 45  UZZCHECK_COMPILE
9bb0: 5f 4f 50 54 53 20 3d 20 2d 44 53 51 4c 49 54 45  _OPTS = -DSQLITE
9bc0: 5f 45 4e 41 42 4c 45 5f 4a 53 4f 4e 31 20 2d 44  _ENABLE_JSON1 -D
9bd0: 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 4d 45  SQLITE_ENABLE_ME
9be0: 4d 53 59 53 35 20 2d 44 53 51 4c 49 54 45 5f 4f  MSYS5 -DSQLITE_O
9bf0: 53 53 5f 46 55 5a 5a 0a 46 55 5a 5a 43 48 45 43  SS_FUZZ.FUZZCHEC
9c00: 4b 5f 53 52 43 20 3d 20 24 28 54 4f 50 29 5c 74  K_SRC = $(TOP)\t
9c10: 65 73 74 5c 66 75 7a 7a 63 68 65 63 6b 2e 63 20  est\fuzzcheck.c 
9c20: 24 28 54 4f 50 29 5c 74 65 73 74 5c 6f 73 73 66  $(TOP)\test\ossf
9c30: 75 7a 7a 2e 63 0a 4f 53 53 53 48 45 4c 4c 5f 53  uzz.c.OSSSHELL_S
9c40: 52 43 20 3d 20 24 28 54 4f 50 29 5c 74 65 73 74  RC = $(TOP)\test
9c50: 5c 6f 73 73 73 68 65 6c 6c 2e 63 20 24 28 54 4f  \ossshell.c $(TO
9c60: 50 29 5c 74 65 73 74 5c 6f 73 73 66 75 7a 7a 2e  P)\test\ossfuzz.
9c70: 63 0a 44 42 46 55 5a 5a 5f 43 4f 4d 50 49 4c 45  c.DBFUZZ_COMPILE
9c80: 5f 4f 50 54 53 20 3d 20 2d 44 53 51 4c 49 54 45  _OPTS = -DSQLITE
9c90: 5f 54 48 52 45 41 44 53 41 46 45 3d 30 20 2d 44  _THREADSAFE=0 -D
9ca0: 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 4c 4f 41 44  SQLITE_OMIT_LOAD
9cb0: 5f 45 58 54 45 4e 53 49 4f 4e 0a 4b 56 5f 43 4f  _EXTENSION.KV_CO
9cc0: 4d 50 49 4c 45 5f 4f 50 54 53 20 3d 20 2d 44 53  MPILE_OPTS = -DS
9cd0: 51 4c 49 54 45 5f 54 48 52 45 41 44 53 41 46 45  QLITE_THREADSAFE
9ce0: 3d 30 20 2d 44 53 51 4c 49 54 45 5f 44 49 52 45  =0 -DSQLITE_DIRE
9cf0: 43 54 5f 4f 56 45 52 46 4c 4f 57 5f 52 45 41 44  CT_OVERFLOW_READ
9d00: 0a 44 42 53 45 4c 46 54 45 53 54 5f 43 4f 4d 50  .DBSELFTEST_COMP
9d10: 49 4c 45 5f 4f 50 54 53 20 3d 20 2d 44 53 51 4c  ILE_OPTS = -DSQL
9d20: 49 54 45 5f 54 48 52 45 41 44 53 41 46 45 3d 30  ITE_THREADSAFE=0
9d30: 20 2d 44 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 4c   -DSQLITE_OMIT_L
9d40: 4f 41 44 5f 45 58 54 45 4e 53 49 4f 4e 20 2d 44  OAD_EXTENSION -D
9d50: 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 52 54  SQLITE_ENABLE_RT
9d60: 52 45 45 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41  REE -DSQLITE_ENA
9d70: 42 4c 45 5f 46 54 53 34 20 2d 44 53 51 4c 49 54  BLE_FTS4 -DSQLIT
9d80: 45 5f 45 4e 41 42 4c 45 5f 46 54 53 35 0a 53 54  E_ENABLE_FTS5.ST
9d90: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 20 3d 20  _COMPILE_OPTS = 
9da0: 2d 44 53 51 4c 49 54 45 5f 54 48 52 45 41 44 53  -DSQLITE_THREADS
9db0: 41 46 45 3d 30 0a 0a 23 20 53 74 61 6e 64 61 72  AFE=0..# Standar
9dc0: 64 20 6f 70 74 69 6f 6e 73 20 74 6f 20 74 65 73  d options to tes
9dd0: 74 66 69 78 74 75 72 65 2e 0a 23 0a 54 45 53 54  tfixture..#.TEST
9de0: 4f 50 54 53 20 3d 20 2d 2d 76 65 72 62 6f 73 65  OPTS = --verbose
9df0: 3d 66 69 6c 65 20 2d 2d 6f 75 74 70 75 74 3d 74  =file --output=t
9e00: 65 73 74 2d 6f 75 74 2e 74 78 74 0a 0a 23 20 45  est-out.txt..# E
9e10: 78 74 72 61 20 74 61 72 67 65 74 73 20 66 6f 72  xtra targets for
9e20: 20 74 68 65 20 22 61 6c 6c 22 20 74 61 72 67 65   the "all" targe
9e30: 74 20 74 68 61 74 20 72 65 71 75 69 72 65 20 54  t that require T
9e40: 63 6c 2e 0a 23 0a 21 49 46 20 24 28 4e 4f 5f 54  cl..#.!IF $(NO_T
9e50: 43 4c 29 3d 3d 30 0a 41 4c 4c 5f 54 43 4c 5f 54  CL)==0.ALL_TCL_T
9e60: 41 52 47 45 54 53 20 3d 20 6c 69 62 74 63 6c 73  ARGETS = libtcls
9e70: 71 6c 69 74 65 33 2e 6c 69 62 0a 21 45 4c 53 45  qlite3.lib.!ELSE
9e80: 0a 41 4c 4c 5f 54 43 4c 5f 54 41 52 47 45 54 53  .ALL_TCL_TARGETS
9e90: 20 3d 0a 21 45 4e 44 49 46 0a 23 20 3c 3c 2f 6d   =.!ENDIF.# <</m
9ea0: 61 72 6b 3e 3e 0a 0a 23 20 54 68 69 73 20 69 73  ark>>..# This is
9eb0: 20 74 68 65 20 64 65 66 61 75 6c 74 20 4d 61 6b   the default Mak
9ec0: 65 66 69 6c 65 20 74 61 72 67 65 74 2e 20 20 54  efile target.  T
9ed0: 68 65 20 6f 62 6a 65 63 74 73 20 6c 69 73 74 65  he objects liste
9ee0: 64 20 68 65 72 65 0a 23 20 61 72 65 20 77 68 61  d here.# are wha
9ef0: 74 20 67 65 74 20 62 75 69 6c 64 20 77 68 65 6e  t get build when
9f00: 20 79 6f 75 20 74 79 70 65 20 6a 75 73 74 20 22   you type just "
9f10: 6d 61 6b 65 22 20 77 69 74 68 20 6e 6f 20 61 72  make" with no ar
9f20: 67 75 6d 65 6e 74 73 2e 0a 23 0a 61 6c 6c 3a 09  guments..#.all:.
9f30: 64 6c 6c 20 6c 69 62 73 71 6c 69 74 65 33 2e 6c  dll libsqlite3.l
9f40: 69 62 20 73 68 65 6c 6c 20 24 28 41 4c 4c 5f 54  ib shell $(ALL_T
9f50: 43 4c 5f 54 41 52 47 45 54 53 29 0a 0a 23 20 44  CL_TARGETS)..# D
9f60: 79 6e 61 6d 69 63 20 6c 69 6e 6b 20 6c 69 62 72  ynamic link libr
9f70: 61 72 79 20 73 65 63 74 69 6f 6e 2e 0a 23 0a 64  ary section..#.d
9f80: 6c 6c 3a 09 24 28 53 51 4c 49 54 45 33 44 4c 4c  ll:.$(SQLITE3DLL
9f90: 29 0a 0a 23 20 53 68 65 6c 6c 20 65 78 65 63 75  )..# Shell execu
9fa0: 74 61 62 6c 65 2e 0a 23 0a 73 68 65 6c 6c 3a 09  table..#.shell:.
9fb0: 24 28 53 51 4c 49 54 45 33 45 58 45 29 0a 0a 23  $(SQLITE3EXE)..#
9fc0: 20 3c 3c 6d 61 72 6b 3e 3e 0a 6c 69 62 73 71 6c   <<mark>>.libsql
9fd0: 69 74 65 33 2e 6c 69 62 3a 09 24 28 4c 49 42 4f  ite3.lib:.$(LIBO
9fe0: 42 4a 29 0a 09 24 28 4c 54 4c 49 42 29 20 24 28  BJ)..$(LTLIB) $(
9ff0: 4c 54 4c 49 42 4f 50 54 53 29 20 2f 4f 55 54 3a  LTLIBOPTS) /OUT:
a000: 24 40 20 24 28 4c 49 42 4f 42 4a 29 20 24 28 54  $@ $(LIBOBJ) $(T
a010: 4c 49 42 53 29 0a 0a 6c 69 62 74 63 6c 73 71 6c  LIBS)..libtclsql
a020: 69 74 65 33 2e 6c 69 62 3a 09 74 63 6c 73 71 6c  ite3.lib:.tclsql
a030: 69 74 65 2e 6c 6f 20 6c 69 62 73 71 6c 69 74 65  ite.lo libsqlite
a040: 33 2e 6c 69 62 0a 09 24 28 4c 54 4c 49 42 29 20  3.lib..$(LTLIB) 
a050: 24 28 4c 54 4c 49 42 4f 50 54 53 29 20 24 28 4c  $(LTLIBOPTS) $(L
a060: 54 4c 49 42 50 41 54 48 53 29 20 2f 4f 55 54 3a  TLIBPATHS) /OUT:
a070: 24 40 20 74 63 6c 73 71 6c 69 74 65 2e 6c 6f 20  $@ tclsqlite.lo 
a080: 6c 69 62 73 71 6c 69 74 65 33 2e 6c 69 62 20 24  libsqlite3.lib $
a090: 28 4c 49 42 54 43 4c 53 54 55 42 29 20 24 28 54  (LIBTCLSTUB) $(T
a0a0: 4c 49 42 53 29 0a 23 20 3c 3c 2f 6d 61 72 6b 3e  LIBS).# <</mark>
a0b0: 3e 0a 0a 24 28 53 51 4c 49 54 45 33 44 4c 4c 29  >..$(SQLITE3DLL)
a0c0: 3a 09 24 28 4c 49 42 4f 42 4a 29 20 24 28 4c 49  :.$(LIBOBJ) $(LI
a0d0: 42 52 45 53 4f 42 4a 53 29 20 24 28 43 4f 52 45  BRESOBJS) $(CORE
a0e0: 5f 4c 49 4e 4b 5f 44 45 50 29 0a 09 24 28 4c 44  _LINK_DEP)..$(LD
a0f0: 29 20 24 28 4c 44 46 4c 41 47 53 29 20 24 28 4c  ) $(LDFLAGS) $(L
a100: 54 4c 49 4e 4b 4f 50 54 53 29 20 24 28 4c 54 4c  TLINKOPTS) $(LTL
a110: 49 42 50 41 54 48 53 29 20 2f 44 4c 4c 20 24 28  IBPATHS) /DLL $(
a120: 43 4f 52 45 5f 4c 49 4e 4b 5f 4f 50 54 53 29 20  CORE_LINK_OPTS) 
a130: 2f 4f 55 54 3a 24 40 20 24 28 4c 49 42 4f 42 4a  /OUT:$@ $(LIBOBJ
a140: 29 20 24 28 4c 49 42 52 45 53 4f 42 4a 53 29 20  ) $(LIBRESOBJS) 
a150: 24 28 4c 54 4c 49 42 53 29 20 24 28 54 4c 49 42  $(LTLIBS) $(TLIB
a160: 53 29 0a 0a 23 20 3c 3c 62 6c 6f 63 6b 32 3e 3e  S)..# <<block2>>
a170: 0a 73 71 6c 69 74 65 33 2e 64 65 66 3a 09 6c 69  .sqlite3.def:.li
a180: 62 73 71 6c 69 74 65 33 2e 6c 69 62 0a 09 65 63  bsqlite3.lib..ec
a190: 68 6f 20 45 58 50 4f 52 54 53 20 3e 20 73 71 6c  ho EXPORTS > sql
a1a0: 69 74 65 33 2e 64 65 66 0a 09 64 75 6d 70 62 69  ite3.def..dumpbi
a1b0: 6e 20 2f 61 6c 6c 20 6c 69 62 73 71 6c 69 74 65  n /all libsqlite
a1c0: 33 2e 6c 69 62 20 5c 0a 09 09 7c 20 24 28 54 43  3.lib \...| $(TC
a1d0: 4c 53 48 5f 43 4d 44 29 20 24 28 54 4f 50 29 5c  LSH_CMD) $(TOP)\
a1e0: 74 6f 6f 6c 5c 72 65 70 6c 61 63 65 2e 74 63 6c  tool\replace.tcl
a1f0: 20 69 6e 63 6c 75 64 65 20 22 5e 5c 73 2b 31 20   include "^\s+1 
a200: 5f 3f 28 73 71 6c 69 74 65 33 28 3f 3a 73 65 73  _?(sqlite3(?:ses
a210: 73 69 6f 6e 7c 63 68 61 6e 67 65 73 65 74 29 3f  sion|changeset)?
a220: 5f 5b 5e 40 5d 2a 29 28 3f 3a 40 5c 64 2b 29 3f  _[^@]*)(?:@\d+)?
a230: 24 24 22 20 5c 31 20 5c 0a 09 09 7c 20 73 6f 72  $$" \1 \...| sor
a240: 74 20 3e 3e 20 73 71 6c 69 74 65 33 2e 64 65 66  t >> sqlite3.def
a250: 0a 23 20 3c 3c 2f 62 6c 6f 63 6b 32 3e 3e 0a 0a  .# <</block2>>..
a260: 24 28 53 51 4c 49 54 45 33 45 58 45 29 3a 09 24  $(SQLITE3EXE):.$
a270: 28 54 4f 50 29 5c 73 72 63 5c 73 68 65 6c 6c 2e  (TOP)\src\shell.
a280: 63 20 24 28 53 48 45 4c 4c 5f 43 4f 52 45 5f 44  c $(SHELL_CORE_D
a290: 45 50 29 20 24 28 4c 49 42 52 45 53 4f 42 4a 53  EP) $(LIBRESOBJS
a2a0: 29 20 24 28 53 48 45 4c 4c 5f 43 4f 52 45 5f 53  ) $(SHELL_CORE_S
a2b0: 52 43 29 20 24 28 53 51 4c 49 54 45 33 48 29 0a  RC) $(SQLITE3H).
a2c0: 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28 53 48 45  .$(LTLINK) $(SHE
a2d0: 4c 4c 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29  LL_COMPILE_OPTS)
a2e0: 20 24 28 52 45 41 44 4c 49 4e 45 5f 46 4c 41 47   $(READLINE_FLAG
a2f0: 53 29 20 24 28 54 4f 50 29 5c 73 72 63 5c 73 68  S) $(TOP)\src\sh
a300: 65 6c 6c 2e 63 20 24 28 53 48 45 4c 4c 5f 43 4f  ell.c $(SHELL_CO
a310: 52 45 5f 53 52 43 29 20 5c 0a 09 09 2f 6c 69 6e  RE_SRC) \.../lin
a320: 6b 20 24 28 53 51 4c 49 54 45 33 45 58 45 50 44  k $(SQLITE3EXEPD
a330: 42 29 20 24 28 4c 44 46 4c 41 47 53 29 20 24 28  B) $(LDFLAGS) $(
a340: 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 24 28 53 48  LTLINKOPTS) $(SH
a350: 45 4c 4c 5f 4c 49 4e 4b 5f 4f 50 54 53 29 20 24  ELL_LINK_OPTS) $
a360: 28 4c 54 4c 49 42 50 41 54 48 53 29 20 24 28 4c  (LTLIBPATHS) $(L
a370: 49 42 52 45 53 4f 42 4a 53 29 20 24 28 4c 49 42  IBRESOBJS) $(LIB
a380: 52 45 41 44 4c 49 4e 45 29 20 24 28 4c 54 4c 49  READLINE) $(LTLI
a390: 42 53 29 20 24 28 54 4c 49 42 53 29 0a 0a 23 20  BS) $(TLIBS)..# 
a3a0: 3c 3c 6d 61 72 6b 3e 3e 0a 73 71 6c 64 69 66 66  <<mark>>.sqldiff
a3b0: 2e 65 78 65 3a 09 24 28 54 4f 50 29 5c 74 6f 6f  .exe:.$(TOP)\too
a3c0: 6c 5c 73 71 6c 64 69 66 66 2e 63 20 24 28 53 51  l\sqldiff.c $(SQ
a3d0: 4c 49 54 45 33 43 29 20 24 28 53 51 4c 49 54 45  LITE3C) $(SQLITE
a3e0: 33 48 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24  3H)..$(LTLINK) $
a3f0: 28 4e 4f 5f 57 41 52 4e 29 20 24 28 54 4f 50 29  (NO_WARN) $(TOP)
a400: 5c 74 6f 6f 6c 5c 73 71 6c 64 69 66 66 2e 63 20  \tool\sqldiff.c 
a410: 24 28 53 51 4c 49 54 45 33 43 29 20 2f 6c 69 6e  $(SQLITE3C) /lin
a420: 6b 20 24 28 4c 44 46 4c 41 47 53 29 20 24 28 4c  k $(LDFLAGS) $(L
a430: 54 4c 49 4e 4b 4f 50 54 53 29 0a 0a 64 62 68 61  TLINKOPTS)..dbha
a440: 73 68 2e 65 78 65 3a 09 24 28 54 4f 50 29 5c 74  sh.exe:.$(TOP)\t
a450: 6f 6f 6c 5c 64 62 68 61 73 68 2e 63 20 24 28 53  ool\dbhash.c $(S
a460: 51 4c 49 54 45 33 43 29 20 24 28 53 51 4c 49 54  QLITE3C) $(SQLIT
a470: 45 33 48 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20  E3H)..$(LTLINK) 
a480: 24 28 4e 4f 5f 57 41 52 4e 29 20 24 28 54 4f 50  $(NO_WARN) $(TOP
a490: 29 5c 74 6f 6f 6c 5c 64 62 68 61 73 68 2e 63 20  )\tool\dbhash.c 
a4a0: 24 28 53 51 4c 49 54 45 33 43 29 20 2f 6c 69 6e  $(SQLITE3C) /lin
a4b0: 6b 20 24 28 4c 44 46 4c 41 47 53 29 20 24 28 4c  k $(LDFLAGS) $(L
a4c0: 54 4c 49 4e 4b 4f 50 54 53 29 0a 0a 73 63 72 75  TLINKOPTS)..scru
a4d0: 62 2e 65 78 65 3a 09 24 28 54 4f 50 29 5c 65 78  b.exe:.$(TOP)\ex
a4e0: 74 5c 6d 69 73 63 5c 73 63 72 75 62 2e 63 20 24  t\misc\scrub.c $
a4f0: 28 53 51 4c 49 54 45 33 43 29 20 24 28 53 51 4c  (SQLITE3C) $(SQL
a500: 49 54 45 33 48 29 0a 09 24 28 4c 54 4c 49 4e 4b  ITE3H)..$(LTLINK
a510: 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 24 28 54  ) $(NO_WARN) $(T
a520: 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c 73 63 72  OP)\ext\misc\scr
a530: 75 62 2e 63 20 24 28 53 51 4c 49 54 45 33 43 29  ub.c $(SQLITE3C)
a540: 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 47 53   /link $(LDFLAGS
a550: 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 0a  ) $(LTLINKOPTS).
a560: 0a 73 72 63 63 6b 31 2e 65 78 65 3a 09 24 28 54  .srcck1.exe:.$(T
a570: 4f 50 29 5c 74 6f 6f 6c 5c 73 72 63 63 6b 31 2e  OP)\tool\srcck1.
a580: 63 0a 09 24 28 42 43 43 29 20 24 28 4e 4f 5f 57  c..$(BCC) $(NO_W
a590: 41 52 4e 29 20 2d 46 65 24 40 20 24 28 54 4f 50  ARN) -Fe$@ $(TOP
a5a0: 29 5c 74 6f 6f 6c 5c 73 72 63 63 6b 31 2e 63 0a  )\tool\srcck1.c.
a5b0: 0a 73 6f 75 72 63 65 74 65 73 74 3a 09 73 72 63  .sourcetest:.src
a5c0: 63 6b 31 2e 65 78 65 20 73 71 6c 69 74 65 33 2e  ck1.exe sqlite3.
a5d0: 63 0a 09 73 72 63 63 6b 31 2e 65 78 65 20 73 71  c..srcck1.exe sq
a5e0: 6c 69 74 65 33 2e 63 0a 0a 66 75 7a 7a 65 72 73  lite3.c..fuzzers
a5f0: 68 65 6c 6c 2e 65 78 65 3a 09 24 28 54 4f 50 29  hell.exe:.$(TOP)
a600: 5c 74 6f 6f 6c 5c 66 75 7a 7a 65 72 73 68 65 6c  \tool\fuzzershel
a610: 6c 2e 63 20 24 28 53 51 4c 49 54 45 33 43 29 20  l.c $(SQLITE3C) 
a620: 24 28 53 51 4c 49 54 45 33 48 29 0a 09 24 28 4c  $(SQLITE3H)..$(L
a630: 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57 41 52 4e  TLINK) $(NO_WARN
a640: 29 20 24 28 46 55 5a 5a 45 52 53 48 45 4c 4c 5f  ) $(FUZZERSHELL_
a650: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24 28  COMPILE_OPTS) $(
a660: 54 4f 50 29 5c 74 6f 6f 6c 5c 66 75 7a 7a 65 72  TOP)\tool\fuzzer
a670: 73 68 65 6c 6c 2e 63 20 24 28 53 51 4c 49 54 45  shell.c $(SQLITE
a680: 33 43 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c  3C) /link $(LDFL
a690: 41 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54  AGS) $(LTLINKOPT
a6a0: 53 29 0a 0a 64 62 66 75 7a 7a 2e 65 78 65 3a 09  S)..dbfuzz.exe:.
a6b0: 24 28 54 4f 50 29 5c 74 65 73 74 5c 64 62 66 75  $(TOP)\test\dbfu
a6c0: 7a 7a 2e 63 20 24 28 53 51 4c 49 54 45 33 43 29  zz.c $(SQLITE3C)
a6d0: 20 24 28 53 51 4c 49 54 45 33 48 29 0a 09 24 28   $(SQLITE3H)..$(
a6e0: 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57 41 52  LTLINK) $(NO_WAR
a6f0: 4e 29 20 24 28 44 42 46 55 5a 5a 5f 43 4f 4d 50  N) $(DBFUZZ_COMP
a700: 49 4c 45 5f 4f 50 54 53 29 20 24 28 54 4f 50 29  ILE_OPTS) $(TOP)
a710: 5c 74 65 73 74 5c 64 62 66 75 7a 7a 2e 63 20 24  \test\dbfuzz.c $
a720: 28 53 51 4c 49 54 45 33 43 29 20 2f 6c 69 6e 6b  (SQLITE3C) /link
a730: 20 24 28 4c 44 46 4c 41 47 53 29 20 24 28 4c 54   $(LDFLAGS) $(LT
a740: 4c 49 4e 4b 4f 50 54 53 29 0a 0a 66 75 7a 7a 63  LINKOPTS)..fuzzc
a750: 68 65 63 6b 2e 65 78 65 3a 09 24 28 46 55 5a 5a  heck.exe:.$(FUZZ
a760: 43 48 45 43 4b 5f 53 52 43 29 20 24 28 53 51 4c  CHECK_SRC) $(SQL
a770: 49 54 45 33 43 29 20 24 28 53 51 4c 49 54 45 33  ITE3C) $(SQLITE3
a780: 48 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28  H)..$(LTLINK) $(
a790: 4e 4f 5f 57 41 52 4e 29 20 24 28 46 55 5a 5a 43  NO_WARN) $(FUZZC
a7a0: 48 45 43 4b 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54  HECK_COMPILE_OPT
a7b0: 53 29 20 24 28 46 55 5a 5a 43 48 45 43 4b 5f 53  S) $(FUZZCHECK_S
a7c0: 52 43 29 20 24 28 53 51 4c 49 54 45 33 43 29 20  RC) $(SQLITE3C) 
a7d0: 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 47 53 29  /link $(LDFLAGS)
a7e0: 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 0a 0a   $(LTLINKOPTS)..
a7f0: 6f 73 73 73 68 65 6c 6c 2e 65 78 65 3a 09 24 28  ossshell.exe:.$(
a800: 4f 53 53 53 48 45 4c 4c 5f 53 52 43 29 20 24 28  OSSSHELL_SRC) $(
a810: 53 51 4c 49 54 45 33 43 29 20 24 28 53 51 4c 49  SQLITE3C) $(SQLI
a820: 54 45 33 48 29 0a 09 24 28 4c 54 4c 49 4e 4b 29  TE3H)..$(LTLINK)
a830: 20 24 28 4e 4f 5f 57 41 52 4e 29 20 24 28 46 55   $(NO_WARN) $(FU
a840: 5a 5a 43 48 45 43 4b 5f 43 4f 4d 50 49 4c 45 5f  ZZCHECK_COMPILE_
a850: 4f 50 54 53 29 20 24 28 4f 53 53 53 48 45 4c 4c  OPTS) $(OSSSHELL
a860: 5f 53 52 43 29 20 24 28 53 51 4c 49 54 45 33 43  _SRC) $(SQLITE3C
a870: 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 47  ) /link $(LDFLAG
a880: 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29  S) $(LTLINKOPTS)
a890: 0a 0a 6d 70 74 65 73 74 65 72 2e 65 78 65 3a 09  ..mptester.exe:.
a8a0: 24 28 54 4f 50 29 5c 6d 70 74 65 73 74 5c 6d 70  $(TOP)\mptest\mp
a8b0: 74 65 73 74 2e 63 20 24 28 53 51 4c 49 54 45 33  test.c $(SQLITE3
a8c0: 43 29 20 24 28 53 51 4c 49 54 45 33 48 29 0a 09  C) $(SQLITE3H)..
a8d0: 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57  $(LTLINK) $(NO_W
a8e0: 41 52 4e 29 20 24 28 4d 50 54 45 53 54 45 52 5f  ARN) $(MPTESTER_
a8f0: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24 28  COMPILE_OPTS) $(
a900: 54 4f 50 29 5c 6d 70 74 65 73 74 5c 6d 70 74 65  TOP)\mptest\mpte
a910: 73 74 2e 63 20 24 28 53 51 4c 49 54 45 33 43 29  st.c $(SQLITE3C)
a920: 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 47 53   /link $(LDFLAGS
a930: 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 0a  ) $(LTLINKOPTS).
a940: 0a 4d 50 54 45 53 54 31 20 3d 20 6d 70 74 65 73  .MPTEST1 = mptes
a950: 74 65 72 20 6d 70 74 65 73 74 2e 64 62 20 24 28  ter mptest.db $(
a960: 54 4f 50 29 5c 6d 70 74 65 73 74 5c 63 72 61 73  TOP)\mptest\cras
a970: 68 30 31 2e 74 65 73 74 20 2d 2d 72 65 70 65 61  h01.test --repea
a980: 74 20 32 30 0a 4d 50 54 45 53 54 32 20 3d 20 6d  t 20.MPTEST2 = m
a990: 70 74 65 73 74 65 72 20 6d 70 74 65 73 74 2e 64  ptester mptest.d
a9a0: 62 20 24 28 54 4f 50 29 5c 6d 70 74 65 73 74 5c  b $(TOP)\mptest\
a9b0: 6d 75 6c 74 69 77 72 69 74 65 30 31 2e 74 65 73  multiwrite01.tes
a9c0: 74 20 2d 2d 72 65 70 65 61 74 20 32 30 0a 0a 6d  t --repeat 20..m
a9d0: 70 74 65 73 74 3a 09 6d 70 74 65 73 74 65 72 2e  ptest:.mptester.
a9e0: 65 78 65 0a 09 64 65 6c 20 2f 51 20 6d 70 74 65  exe..del /Q mpte
a9f0: 73 74 2e 64 62 20 32 3e 4e 55 4c 0a 09 24 28 4d  st.db 2>NUL..$(M
aa00: 50 54 45 53 54 31 29 20 2d 2d 6a 6f 75 72 6e 61  PTEST1) --journa
aa10: 6c 6d 6f 64 65 20 44 45 4c 45 54 45 0a 09 24 28  lmode DELETE..$(
aa20: 4d 50 54 45 53 54 32 29 20 2d 2d 6a 6f 75 72 6e  MPTEST2) --journ
aa30: 61 6c 6d 6f 64 65 20 57 41 4c 0a 09 24 28 4d 50  almode WAL..$(MP
aa40: 54 45 53 54 31 29 20 2d 2d 6a 6f 75 72 6e 61 6c  TEST1) --journal
aa50: 6d 6f 64 65 20 57 41 4c 0a 09 24 28 4d 50 54 45  mode WAL..$(MPTE
aa60: 53 54 32 29 20 2d 2d 6a 6f 75 72 6e 61 6c 6d 6f  ST2) --journalmo
aa70: 64 65 20 50 45 52 53 49 53 54 0a 09 24 28 4d 50  de PERSIST..$(MP
aa80: 54 45 53 54 31 29 20 2d 2d 6a 6f 75 72 6e 61 6c  TEST1) --journal
aa90: 6d 6f 64 65 20 50 45 52 53 49 53 54 0a 09 24 28  mode PERSIST..$(
aaa0: 4d 50 54 45 53 54 32 29 20 2d 2d 6a 6f 75 72 6e  MPTEST2) --journ
aab0: 61 6c 6d 6f 64 65 20 54 52 55 4e 43 41 54 45 0a  almode TRUNCATE.
aac0: 09 24 28 4d 50 54 45 53 54 31 29 20 2d 2d 6a 6f  .$(MPTEST1) --jo
aad0: 75 72 6e 61 6c 6d 6f 64 65 20 54 52 55 4e 43 41  urnalmode TRUNCA
aae0: 54 45 0a 09 24 28 4d 50 54 45 53 54 32 29 20 2d  TE..$(MPTEST2) -
aaf0: 2d 6a 6f 75 72 6e 61 6c 6d 6f 64 65 20 44 45 4c  -journalmode DEL
ab00: 45 54 45 0a 0a 23 20 54 68 69 73 20 74 61 72 67  ETE..# This targ
ab10: 65 74 20 63 72 65 61 74 65 73 20 61 20 64 69 72  et creates a dir
ab20: 65 63 74 6f 72 79 20 6e 61 6d 65 64 20 22 74 73  ectory named "ts
ab30: 72 63 22 20 61 6e 64 20 66 69 6c 6c 73 20 69 74  rc" and fills it
ab40: 20 77 69 74 68 0a 23 20 63 6f 70 69 65 73 20 6f   with.# copies o
ab50: 66 20 61 6c 6c 20 6f 66 20 74 68 65 20 43 20 73  f all of the C s
ab60: 6f 75 72 63 65 20 63 6f 64 65 20 61 6e 64 20 68  ource code and h
ab70: 65 61 64 65 72 20 66 69 6c 65 73 20 6e 65 65 64  eader files need
ab80: 65 64 20 74 6f 0a 23 20 62 75 69 6c 64 20 6f 6e  ed to.# build on
ab90: 20 74 68 65 20 74 61 72 67 65 74 20 73 79 73 74   the target syst
aba0: 65 6d 2e 20 20 53 6f 6d 65 20 6f 66 20 74 68 65  em.  Some of the
abb0: 20 43 20 73 6f 75 72 63 65 20 63 6f 64 65 20 61   C source code a
abc0: 6e 64 20 68 65 61 64 65 72 0a 23 20 66 69 6c 65  nd header.# file
abd0: 73 20 61 72 65 20 61 75 74 6f 6d 61 74 69 63 61  s are automatica
abe0: 6c 6c 79 20 67 65 6e 65 72 61 74 65 64 2e 20 20  lly generated.  
abf0: 54 68 69 73 20 74 61 72 67 65 74 20 74 61 6b 65  This target take
ac00: 73 20 63 61 72 65 20 6f 66 0a 23 20 61 6c 6c 20  s care of.# all 
ac10: 74 68 61 74 20 61 75 74 6f 6d 61 74 69 63 20 67  that automatic g
ac20: 65 6e 65 72 61 74 69 6f 6e 2e 0a 23 0a 2e 74 61  eneration..#..ta
ac30: 72 67 65 74 5f 73 6f 75 72 63 65 3a 09 24 28 53  rget_source:.$(S
ac40: 52 43 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c  RC) $(TOP)\tool\
ac50: 76 64 62 65 2d 63 6f 6d 70 72 65 73 73 2e 74 63  vdbe-compress.tc
ac60: 6c 20 66 74 73 35 2e 63 20 24 28 53 51 4c 49 54  l fts5.c $(SQLIT
ac70: 45 5f 54 43 4c 5f 44 45 50 29 0a 09 2d 72 6d 64  E_TCL_DEP)..-rmd
ac80: 69 72 20 2f 51 2f 53 20 74 73 72 63 20 32 3e 4e  ir /Q/S tsrc 2>N
ac90: 55 4c 0a 09 2d 6d 6b 64 69 72 20 74 73 72 63 0a  UL..-mkdir tsrc.
aca0: 09 66 6f 72 20 25 69 20 69 6e 20 28 24 28 53 52  .for %i in ($(SR
acb0: 43 30 30 29 29 20 64 6f 20 63 6f 70 79 20 2f 59  C00)) do copy /Y
acc0: 20 25 69 20 74 73 72 63 0a 09 66 6f 72 20 25 69   %i tsrc..for %i
acd0: 20 69 6e 20 28 24 28 53 52 43 30 31 29 29 20 64   in ($(SRC01)) d
ace0: 6f 20 63 6f 70 79 20 2f 59 20 25 69 20 74 73 72  o copy /Y %i tsr
acf0: 63 0a 09 66 6f 72 20 25 69 20 69 6e 20 28 24 28  c..for %i in ($(
ad00: 53 52 43 30 32 29 29 20 64 6f 20 63 6f 70 79 20  SRC02)) do copy 
ad10: 2f 59 20 25 69 20 74 73 72 63 0a 09 66 6f 72 20  /Y %i tsrc..for 
ad20: 25 69 20 69 6e 20 28 24 28 53 52 43 30 33 29 29  %i in ($(SRC03))
ad30: 20 64 6f 20 63 6f 70 79 20 2f 59 20 25 69 20 74   do copy /Y %i t
ad40: 73 72 63 0a 09 66 6f 72 20 25 69 20 69 6e 20 28  src..for %i in (
ad50: 24 28 53 52 43 30 34 29 29 20 64 6f 20 63 6f 70  $(SRC04)) do cop
ad60: 79 20 2f 59 20 25 69 20 74 73 72 63 0a 09 66 6f  y /Y %i tsrc..fo
ad70: 72 20 25 69 20 69 6e 20 28 24 28 53 52 43 30 35  r %i in ($(SRC05
ad80: 29 29 20 64 6f 20 63 6f 70 79 20 2f 59 20 25 69  )) do copy /Y %i
ad90: 20 74 73 72 63 0a 09 66 6f 72 20 25 69 20 69 6e   tsrc..for %i in
ada0: 20 28 24 28 53 52 43 30 36 29 29 20 64 6f 20 63   ($(SRC06)) do c
adb0: 6f 70 79 20 2f 59 20 25 69 20 74 73 72 63 0a 09  opy /Y %i tsrc..
adc0: 66 6f 72 20 25 69 20 69 6e 20 28 24 28 53 52 43  for %i in ($(SRC
add0: 30 37 29 29 20 64 6f 20 63 6f 70 79 20 2f 59 20  07)) do copy /Y 
ade0: 25 69 20 74 73 72 63 0a 09 66 6f 72 20 25 69 20  %i tsrc..for %i 
adf0: 69 6e 20 28 24 28 53 52 43 30 38 29 29 20 64 6f  in ($(SRC08)) do
ae00: 20 63 6f 70 79 20 2f 59 20 25 69 20 74 73 72 63   copy /Y %i tsrc
ae10: 0a 09 66 6f 72 20 25 69 20 69 6e 20 28 24 28 53  ..for %i in ($(S
ae20: 52 43 30 39 29 29 20 64 6f 20 63 6f 70 79 20 2f  RC09)) do copy /
ae30: 59 20 25 69 20 74 73 72 63 0a 09 66 6f 72 20 25  Y %i tsrc..for %
ae40: 69 20 69 6e 20 28 24 28 53 52 43 31 30 29 29 20  i in ($(SRC10)) 
ae50: 64 6f 20 63 6f 70 79 20 2f 59 20 25 69 20 74 73  do copy /Y %i ts
ae60: 72 63 0a 09 66 6f 72 20 25 69 20 69 6e 20 28 24  rc..for %i in ($
ae70: 28 53 52 43 31 31 29 29 20 64 6f 20 63 6f 70 79  (SRC11)) do copy
ae80: 20 2f 59 20 25 69 20 74 73 72 63 0a 09 66 6f 72   /Y %i tsrc..for
ae90: 20 25 69 20 69 6e 20 28 24 28 53 52 43 31 32 29   %i in ($(SRC12)
aea0: 29 20 64 6f 20 63 6f 70 79 20 2f 59 20 25 69 20  ) do copy /Y %i 
aeb0: 74 73 72 63 0a 09 63 6f 70 79 20 2f 59 20 66 74  tsrc..copy /Y ft
aec0: 73 35 2e 63 20 74 73 72 63 0a 09 63 6f 70 79 20  s5.c tsrc..copy 
aed0: 2f 59 20 66 74 73 35 2e 68 20 74 73 72 63 0a 09  /Y fts5.h tsrc..
aee0: 64 65 6c 20 2f 51 20 74 73 72 63 5c 73 71 6c 69  del /Q tsrc\sqli
aef0: 74 65 2e 68 2e 69 6e 20 74 73 72 63 5c 70 61 72  te.h.in tsrc\par
af00: 73 65 2e 79 20 32 3e 4e 55 4c 0a 09 24 28 54 43  se.y 2>NUL..$(TC
af10: 4c 53 48 5f 43 4d 44 29 20 24 28 54 4f 50 29 5c  LSH_CMD) $(TOP)\
af20: 74 6f 6f 6c 5c 76 64 62 65 2d 63 6f 6d 70 72 65  tool\vdbe-compre
af30: 73 73 2e 74 63 6c 20 24 28 4f 50 54 53 29 20 3c  ss.tcl $(OPTS) <
af40: 20 74 73 72 63 5c 76 64 62 65 2e 63 20 3e 20 76   tsrc\vdbe.c > v
af50: 64 62 65 2e 6e 65 77 0a 09 6d 6f 76 65 20 76 64  dbe.new..move vd
af60: 62 65 2e 6e 65 77 20 74 73 72 63 5c 76 64 62 65  be.new tsrc\vdbe
af70: 2e 63 0a 09 65 63 68 6f 20 3e 20 2e 74 61 72 67  .c..echo > .targ
af80: 65 74 5f 73 6f 75 72 63 65 0a 0a 73 71 6c 69 74  et_source..sqlit
af90: 65 33 2e 63 3a 09 2e 74 61 72 67 65 74 5f 73 6f  e3.c:..target_so
afa0: 75 72 63 65 20 73 71 6c 69 74 65 33 65 78 74 2e  urce sqlite3ext.
afb0: 68 20 24 28 4d 4b 53 51 4c 49 54 45 33 43 5f 54  h $(MKSQLITE3C_T
afc0: 4f 4f 4c 29 0a 09 24 28 54 43 4c 53 48 5f 43 4d  OOL)..$(TCLSH_CM
afd0: 44 29 20 24 28 4d 4b 53 51 4c 49 54 45 33 43 5f  D) $(MKSQLITE3C_
afe0: 54 4f 4f 4c 29 20 24 28 4d 4b 53 51 4c 49 54 45  TOOL) $(MKSQLITE
aff0: 33 43 5f 41 52 47 53 29 0a 09 63 6f 70 79 20 74  3C_ARGS)..copy t
b000: 73 72 63 5c 73 68 65 6c 6c 2e 63 20 2e 0a 09 63  src\shell.c ...c
b010: 6f 70 79 20 24 28 54 4f 50 29 5c 65 78 74 5c 73  opy $(TOP)\ext\s
b020: 65 73 73 69 6f 6e 5c 73 71 6c 69 74 65 33 73 65  ession\sqlite3se
b030: 73 73 69 6f 6e 2e 68 20 2e 0a 0a 73 71 6c 69 74  ssion.h ...sqlit
b040: 65 33 2d 61 6c 6c 2e 63 3a 09 73 71 6c 69 74 65  e3-all.c:.sqlite
b050: 33 2e 63 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c  3.c $(TOP)\tool\
b060: 73 70 6c 69 74 2d 73 71 6c 69 74 65 33 63 2e 74  split-sqlite3c.t
b070: 63 6c 0a 09 24 28 54 43 4c 53 48 5f 43 4d 44 29  cl..$(TCLSH_CMD)
b080: 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 70 6c   $(TOP)\tool\spl
b090: 69 74 2d 73 71 6c 69 74 65 33 63 2e 74 63 6c 0a  it-sqlite3c.tcl.
b0a0: 23 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a 0a 23 20 52  # <</mark>>..# R
b0b0: 75 6c 65 20 74 6f 20 62 75 69 6c 64 20 74 68 65  ule to build the
b0c0: 20 61 6d 61 6c 67 61 6d 61 74 69 6f 6e 0a 23 0a   amalgamation.#.
b0d0: 73 71 6c 69 74 65 33 2e 6c 6f 3a 09 24 28 53 51  sqlite3.lo:.$(SQ
b0e0: 4c 49 54 45 33 43 29 0a 09 24 28 4c 54 43 4f 4d  LITE3C)..$(LTCOM
b0f0: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d  PILE) $(CORE_COM
b100: 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28  PILE_OPTS) -c $(
b110: 53 51 4c 49 54 45 33 43 29 0a 0a 23 20 3c 3c 6d  SQLITE3C)..# <<m
b120: 61 72 6b 3e 3e 0a 23 20 52 75 6c 65 73 20 74 6f  ark>>.# Rules to
b130: 20 62 75 69 6c 64 20 74 68 65 20 4c 45 4d 4f 4e   build the LEMON
b140: 20 63 6f 6d 70 69 6c 65 72 20 67 65 6e 65 72 61   compiler genera
b150: 74 6f 72 0a 23 0a 6c 65 6d 70 61 72 2e 63 3a 09  tor.#.lempar.c:.
b160: 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6c 65 6d 70  $(TOP)\tool\lemp
b170: 61 72 2e 63 0a 09 63 6f 70 79 20 24 28 54 4f 50  ar.c..copy $(TOP
b180: 29 5c 74 6f 6f 6c 5c 6c 65 6d 70 61 72 2e 63 20  )\tool\lempar.c 
b190: 2e 0a 0a 6c 65 6d 6f 6e 2e 65 78 65 3a 09 24 28  ...lemon.exe:.$(
b1a0: 54 4f 50 29 5c 74 6f 6f 6c 5c 6c 65 6d 6f 6e 2e  TOP)\tool\lemon.
b1b0: 63 20 6c 65 6d 70 61 72 2e 63 0a 09 24 28 42 43  c lempar.c..$(BC
b1c0: 43 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44  C) $(NO_WARN) -D
b1d0: 61 63 63 65 73 73 3d 5f 61 63 63 65 73 73 20 5c  access=_access \
b1e0: 0a 09 09 2d 46 65 24 40 20 24 28 54 4f 50 29 5c  ...-Fe$@ $(TOP)\
b1f0: 74 6f 6f 6c 5c 6c 65 6d 6f 6e 2e 63 20 2f 6c 69  tool\lemon.c /li
b200: 6e 6b 20 24 28 4c 44 46 4c 41 47 53 29 20 24 28  nk $(LDFLAGS) $(
b210: 4e 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 24 28 4e  NLTLINKOPTS) $(N
b220: 4c 54 4c 49 42 50 41 54 48 53 29 0a 0a 23 20 52  LTLIBPATHS)..# R
b230: 75 6c 65 73 20 74 6f 20 62 75 69 6c 64 20 69 6e  ules to build in
b240: 64 69 76 69 64 75 61 6c 20 2a 2e 6c 6f 20 66 69  dividual *.lo fi
b250: 6c 65 73 20 66 72 6f 6d 20 67 65 6e 65 72 61 74  les from generat
b260: 65 64 20 2a 2e 63 20 66 69 6c 65 73 2e 20 54 68  ed *.c files. Th
b270: 69 73 0a 23 20 61 70 70 6c 69 65 73 20 74 6f 3a  is.# applies to:
b280: 0a 23 0a 23 20 20 20 20 20 70 61 72 73 65 2e 6c  .#.#     parse.l
b290: 6f 0a 23 20 20 20 20 20 6f 70 63 6f 64 65 73 2e  o.#     opcodes.
b2a0: 6c 6f 0a 23 0a 70 61 72 73 65 2e 6c 6f 3a 09 70  lo.#.parse.lo:.p
b2b0: 61 72 73 65 2e 63 20 24 28 48 44 52 29 0a 09 24  arse.c $(HDR)..$
b2c0: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f  (LTCOMPILE) $(CO
b2d0: 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29  RE_COMPILE_OPTS)
b2e0: 20 2d 63 20 70 61 72 73 65 2e 63 0a 0a 6f 70 63   -c parse.c..opc
b2f0: 6f 64 65 73 2e 6c 6f 3a 09 6f 70 63 6f 64 65 73  odes.lo:.opcodes
b300: 2e 63 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  .c..$(LTCOMPILE)
b310: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f   $(CORE_COMPILE_
b320: 4f 50 54 53 29 20 2d 63 20 6f 70 63 6f 64 65 73  OPTS) -c opcodes
b330: 2e 63 0a 23 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a 0a  .c.# <</mark>>..
b340: 23 20 52 75 6c 65 20 74 6f 20 62 75 69 6c 64 20  # Rule to build 
b350: 74 68 65 20 57 69 6e 33 32 20 72 65 73 6f 75 72  the Win32 resour
b360: 63 65 73 20 6f 62 6a 65 63 74 20 66 69 6c 65 2e  ces object file.
b370: 0a 23 0a 21 49 46 20 24 28 55 53 45 5f 52 43 29  .#.!IF $(USE_RC)
b380: 21 3d 30 0a 23 20 3c 3c 62 6c 6f 63 6b 31 3e 3e  !=0.# <<block1>>
b390: 0a 24 28 4c 49 42 52 45 53 4f 42 4a 53 29 3a 09  .$(LIBRESOBJS):.
b3a0: 24 28 54 4f 50 29 5c 73 72 63 5c 73 71 6c 69 74  $(TOP)\src\sqlit
b3b0: 65 33 2e 72 63 20 24 28 53 51 4c 49 54 45 33 48  e3.rc $(SQLITE3H
b3c0: 29 0a 09 65 63 68 6f 20 23 69 66 6e 64 65 66 20  )..echo #ifndef 
b3d0: 53 51 4c 49 54 45 5f 52 45 53 4f 55 52 43 45 5f  SQLITE_RESOURCE_
b3e0: 56 45 52 53 49 4f 4e 20 3e 20 73 71 6c 69 74 65  VERSION > sqlite
b3f0: 33 72 63 2e 68 0a 09 66 6f 72 20 2f 46 20 25 25  3rc.h..for /F %%
b400: 56 20 69 6e 20 28 27 74 79 70 65 20 22 24 28 54  V in ('type "$(T
b410: 4f 50 29 5c 56 45 52 53 49 4f 4e 22 27 29 20 64  OP)\VERSION"') d
b420: 6f 20 28 20 5c 0a 09 09 65 63 68 6f 20 23 64 65  o ( \...echo #de
b430: 66 69 6e 65 20 53 51 4c 49 54 45 5f 52 45 53 4f  fine SQLITE_RESO
b440: 55 52 43 45 5f 56 45 52 53 49 4f 4e 20 25 25 56  URCE_VERSION %%V
b450: 20 5c 0a 09 09 09 7c 20 24 28 54 43 4c 53 48 5f   \....| $(TCLSH_
b460: 43 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c  CMD) $(TOP)\tool
b470: 5c 72 65 70 6c 61 63 65 2e 74 63 6c 20 65 78 61  \replace.tcl exa
b480: 63 74 20 2e 20 5e 2c 20 3e 3e 20 73 71 6c 69 74  ct . ^, >> sqlit
b490: 65 33 72 63 2e 68 20 5c 0a 09 29 0a 09 65 63 68  e3rc.h \..)..ech
b4a0: 6f 20 23 65 6e 64 69 66 20 3e 3e 20 73 71 6c 69  o #endif >> sqli
b4b0: 74 65 33 72 63 2e 68 0a 09 24 28 4c 54 52 43 4f  te3rc.h..$(LTRCO
b4c0: 4d 50 49 4c 45 29 20 2d 66 6f 20 24 28 4c 49 42  MPILE) -fo $(LIB
b4d0: 52 45 53 4f 42 4a 53 29 20 24 28 54 4f 50 29 5c  RESOBJS) $(TOP)\
b4e0: 73 72 63 5c 73 71 6c 69 74 65 33 2e 72 63 0a 23  src\sqlite3.rc.#
b4f0: 20 3c 3c 2f 62 6c 6f 63 6b 31 3e 3e 0a 21 45 4e   <</block1>>.!EN
b500: 44 49 46 0a 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a  DIF..# <<mark>>.
b510: 23 20 52 75 6c 65 73 20 74 6f 20 62 75 69 6c 64  # Rules to build
b520: 20 69 6e 64 69 76 69 64 75 61 6c 20 2a 2e 6c 6f   individual *.lo
b530: 20 66 69 6c 65 73 20 66 72 6f 6d 20 66 69 6c 65   files from file
b540: 73 20 69 6e 20 74 68 65 20 73 72 63 20 64 69 72  s in the src dir
b550: 65 63 74 6f 72 79 2e 0a 23 0a 61 6c 74 65 72 2e  ectory..#.alter.
b560: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 61  lo:.$(TOP)\src\a
b570: 6c 74 65 72 2e 63 20 24 28 48 44 52 29 0a 09 24  lter.c $(HDR)..$
b580: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f  (LTCOMPILE) $(CO
b590: 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29  RE_COMPILE_OPTS)
b5a0: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 61   -c $(TOP)\src\a
b5b0: 6c 74 65 72 2e 63 0a 0a 61 6e 61 6c 79 7a 65 2e  lter.c..analyze.
b5c0: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 61  lo:.$(TOP)\src\a
b5d0: 6e 61 6c 79 7a 65 2e 63 20 24 28 48 44 52 29 0a  nalyze.c $(HDR).
b5e0: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28  .$(LTCOMPILE) $(
b5f0: 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54  CORE_COMPILE_OPT
b600: 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63  S) -c $(TOP)\src
b610: 5c 61 6e 61 6c 79 7a 65 2e 63 0a 0a 61 74 74 61  \analyze.c..atta
b620: 63 68 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72  ch.lo:.$(TOP)\sr
b630: 63 5c 61 74 74 61 63 68 2e 63 20 24 28 48 44 52  c\attach.c $(HDR
b640: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20  )..$(LTCOMPILE) 
b650: 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f  $(CORE_COMPILE_O
b660: 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73  PTS) -c $(TOP)\s
b670: 72 63 5c 61 74 74 61 63 68 2e 63 0a 0a 61 75 74  rc\attach.c..aut
b680: 68 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63  h.lo:.$(TOP)\src
b690: 5c 61 75 74 68 2e 63 20 24 28 48 44 52 29 0a 09  \auth.c $(HDR)..
b6a0: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43  $(LTCOMPILE) $(C
b6b0: 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53  ORE_COMPILE_OPTS
b6c0: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c  ) -c $(TOP)\src\
b6d0: 61 75 74 68 2e 63 0a 0a 62 61 63 6b 75 70 2e 6c  auth.c..backup.l
b6e0: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 62 61  o:.$(TOP)\src\ba
b6f0: 63 6b 75 70 2e 63 20 24 28 48 44 52 29 0a 09 24  ckup.c $(HDR)..$
b700: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f  (LTCOMPILE) $(CO
b710: 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29  RE_COMPILE_OPTS)
b720: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 62   -c $(TOP)\src\b
b730: 61 63 6b 75 70 2e 63 0a 0a 62 69 74 76 65 63 2e  ackup.c..bitvec.
b740: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 62  lo:.$(TOP)\src\b
b750: 69 74 76 65 63 2e 63 20 24 28 48 44 52 29 0a 09  itvec.c $(HDR)..
b760: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43  $(LTCOMPILE) $(C
b770: 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53  ORE_COMPILE_OPTS
b780: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c  ) -c $(TOP)\src\
b790: 62 69 74 76 65 63 2e 63 0a 0a 62 74 6d 75 74 65  bitvec.c..btmute
b7a0: 78 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63  x.lo:.$(TOP)\src
b7b0: 5c 62 74 6d 75 74 65 78 2e 63 20 24 28 48 44 52  \btmutex.c $(HDR
b7c0: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20  )..$(LTCOMPILE) 
b7d0: 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f  $(CORE_COMPILE_O
b7e0: 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73  PTS) -c $(TOP)\s
b7f0: 72 63 5c 62 74 6d 75 74 65 78 2e 63 0a 0a 62 74  rc\btmutex.c..bt
b800: 72 65 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73  ree.lo:.$(TOP)\s
b810: 72 63 5c 62 74 72 65 65 2e 63 20 24 28 48 44 52  rc\btree.c $(HDR
b820: 29 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 61 67  ) $(TOP)\src\pag
b830: 65 72 2e 68 0a 09 24 28 4c 54 43 4f 4d 50 49 4c  er.h..$(LTCOMPIL
b840: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c  E) $(CORE_COMPIL
b850: 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50  E_OPTS) -c $(TOP
b860: 29 5c 73 72 63 5c 62 74 72 65 65 2e 63 0a 0a 62  )\src\btree.c..b
b870: 75 69 6c 64 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c  uild.lo:.$(TOP)\
b880: 73 72 63 5c 62 75 69 6c 64 2e 63 20 24 28 48 44  src\build.c $(HD
b890: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  R)..$(LTCOMPILE)
b8a0: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f   $(CORE_COMPILE_
b8b0: 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c  OPTS) -c $(TOP)\
b8c0: 73 72 63 5c 62 75 69 6c 64 2e 63 0a 0a 63 61 6c  src\build.c..cal
b8d0: 6c 62 61 63 6b 2e 6c 6f 3a 09 24 28 54 4f 50 29  lback.lo:.$(TOP)
b8e0: 5c 73 72 63 5c 63 61 6c 6c 62 61 63 6b 2e 63 20  \src\callback.c 
b8f0: 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  $(HDR)..$(LTCOMP
b900: 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50  ILE) $(CORE_COMP
b910: 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54  ILE_OPTS) -c $(T
b920: 4f 50 29 5c 73 72 63 5c 63 61 6c 6c 62 61 63 6b  OP)\src\callback
b930: 2e 63 0a 0a 63 6f 6d 70 6c 65 74 65 2e 6c 6f 3a  .c..complete.lo:
b940: 09 24 28 54 4f 50 29 5c 73 72 63 5c 63 6f 6d 70  .$(TOP)\src\comp
b950: 6c 65 74 65 2e 63 20 24 28 48 44 52 29 0a 09 24  lete.c $(HDR)..$
b960: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f  (LTCOMPILE) $(CO
b970: 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29  RE_COMPILE_OPTS)
b980: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 63   -c $(TOP)\src\c
b990: 6f 6d 70 6c 65 74 65 2e 63 0a 0a 63 74 69 6d 65  omplete.c..ctime
b9a0: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c  .lo:.$(TOP)\src\
b9b0: 63 74 69 6d 65 2e 63 20 24 28 48 44 52 29 0a 09  ctime.c $(HDR)..
b9c0: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43  $(LTCOMPILE) $(C
b9d0: 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53  ORE_COMPILE_OPTS
b9e0: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c  ) -c $(TOP)\src\
b9f0: 63 74 69 6d 65 2e 63 0a 0a 64 61 74 65 2e 6c 6f  ctime.c..date.lo
ba00: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 64 61 74  :.$(TOP)\src\dat
ba10: 65 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54  e.c $(HDR)..$(LT
ba20: 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f  COMPILE) $(CORE_
ba30: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63  COMPILE_OPTS) -c
ba40: 20 24 28 54 4f 50 29 5c 73 72 63 5c 64 61 74 65   $(TOP)\src\date
ba50: 2e 63 0a 0a 64 62 73 74 61 74 2e 6c 6f 3a 09 24  .c..dbstat.lo:.$
ba60: 28 54 4f 50 29 5c 73 72 63 5c 64 61 74 65 2e 63  (TOP)\src\date.c
ba70: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d   $(HDR)..$(LTCOM
ba80: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d  PILE) $(CORE_COM
ba90: 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28  PILE_OPTS) -c $(
baa0: 54 4f 50 29 5c 73 72 63 5c 64 62 73 74 61 74 2e  TOP)\src\dbstat.
bab0: 63 0a 0a 64 65 6c 65 74 65 2e 6c 6f 3a 09 24 28  c..delete.lo:.$(
bac0: 54 4f 50 29 5c 73 72 63 5c 64 65 6c 65 74 65 2e  TOP)\src\delete.
bad0: 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f  c $(HDR)..$(LTCO
bae0: 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f  MPILE) $(CORE_CO
baf0: 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24  MPILE_OPTS) -c $
bb00: 28 54 4f 50 29 5c 73 72 63 5c 64 65 6c 65 74 65  (TOP)\src\delete
bb10: 2e 63 0a 0a 65 78 70 72 2e 6c 6f 3a 09 24 28 54  .c..expr.lo:.$(T
bb20: 4f 50 29 5c 73 72 63 5c 65 78 70 72 2e 63 20 24  OP)\src\expr.c $
bb30: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  (HDR)..$(LTCOMPI
bb40: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49  LE) $(CORE_COMPI
bb50: 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f  LE_OPTS) -c $(TO
bb60: 50 29 5c 73 72 63 5c 65 78 70 72 2e 63 0a 0a 66  P)\src\expr.c..f
bb70: 61 75 6c 74 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c  ault.lo:.$(TOP)\
bb80: 73 72 63 5c 66 61 75 6c 74 2e 63 20 24 28 48 44  src\fault.c $(HD
bb90: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  R)..$(LTCOMPILE)
bba0: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f   $(CORE_COMPILE_
bbb0: 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c  OPTS) -c $(TOP)\
bbc0: 73 72 63 5c 66 61 75 6c 74 2e 63 0a 0a 66 6b 65  src\fault.c..fke
bbd0: 79 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63  y.lo:.$(TOP)\src
bbe0: 5c 66 6b 65 79 2e 63 20 24 28 48 44 52 29 0a 09  \fkey.c $(HDR)..
bbf0: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43  $(LTCOMPILE) $(C
bc00: 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53  ORE_COMPILE_OPTS
bc10: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c  ) -c $(TOP)\src\
bc20: 66 6b 65 79 2e 63 0a 0a 66 75 6e 63 2e 6c 6f 3a  fkey.c..func.lo:
bc30: 09 24 28 54 4f 50 29 5c 73 72 63 5c 66 75 6e 63  .$(TOP)\src\func
bc40: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43  .c $(HDR)..$(LTC
bc50: 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43  OMPILE) $(CORE_C
bc60: 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20  OMPILE_OPTS) -c 
bc70: 24 28 54 4f 50 29 5c 73 72 63 5c 66 75 6e 63 2e  $(TOP)\src\func.
bc80: 63 0a 0a 67 6c 6f 62 61 6c 2e 6c 6f 3a 09 24 28  c..global.lo:.$(
bc90: 54 4f 50 29 5c 73 72 63 5c 67 6c 6f 62 61 6c 2e  TOP)\src\global.
bca0: 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f  c $(HDR)..$(LTCO
bcb0: 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f  MPILE) $(CORE_CO
bcc0: 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24  MPILE_OPTS) -c $
bcd0: 28 54 4f 50 29 5c 73 72 63 5c 67 6c 6f 62 61 6c  (TOP)\src\global
bce0: 2e 63 0a 0a 68 61 73 68 2e 6c 6f 3a 09 24 28 54  .c..hash.lo:.$(T
bcf0: 4f 50 29 5c 73 72 63 5c 68 61 73 68 2e 63 20 24  OP)\src\hash.c $
bd00: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  (HDR)..$(LTCOMPI
bd10: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49  LE) $(CORE_COMPI
bd20: 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f  LE_OPTS) -c $(TO
bd30: 50 29 5c 73 72 63 5c 68 61 73 68 2e 63 0a 0a 69  P)\src\hash.c..i
bd40: 6e 73 65 72 74 2e 6c 6f 3a 09 24 28 54 4f 50 29  nsert.lo:.$(TOP)
bd50: 5c 73 72 63 5c 69 6e 73 65 72 74 2e 63 20 24 28  \src\insert.c $(
bd60: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c  HDR)..$(LTCOMPIL
bd70: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c  E) $(CORE_COMPIL
bd80: 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50  E_OPTS) -c $(TOP
bd90: 29 5c 73 72 63 5c 69 6e 73 65 72 74 2e 63 0a 0a  )\src\insert.c..
bda0: 6c 65 67 61 63 79 2e 6c 6f 3a 09 24 28 54 4f 50  legacy.lo:.$(TOP
bdb0: 29 5c 73 72 63 5c 6c 65 67 61 63 79 2e 63 20 24  )\src\legacy.c $
bdc0: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  (HDR)..$(LTCOMPI
bdd0: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49  LE) $(CORE_COMPI
bde0: 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f  LE_OPTS) -c $(TO
bdf0: 50 29 5c 73 72 63 5c 6c 65 67 61 63 79 2e 63 0a  P)\src\legacy.c.
be00: 0a 6c 6f 61 64 65 78 74 2e 6c 6f 3a 09 24 28 54  .loadext.lo:.$(T
be10: 4f 50 29 5c 73 72 63 5c 6c 6f 61 64 65 78 74 2e  OP)\src\loadext.
be20: 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f  c $(HDR)..$(LTCO
be30: 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f  MPILE) $(CORE_CO
be40: 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24  MPILE_OPTS) -c $
be50: 28 54 4f 50 29 5c 73 72 63 5c 6c 6f 61 64 65 78  (TOP)\src\loadex
be60: 74 2e 63 0a 0a 6d 61 69 6e 2e 6c 6f 3a 09 24 28  t.c..main.lo:.$(
be70: 54 4f 50 29 5c 73 72 63 5c 6d 61 69 6e 2e 63 20  TOP)\src\main.c 
be80: 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  $(HDR)..$(LTCOMP
be90: 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50  ILE) $(CORE_COMP
bea0: 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54  ILE_OPTS) -c $(T
beb0: 4f 50 29 5c 73 72 63 5c 6d 61 69 6e 2e 63 0a 0a  OP)\src\main.c..
bec0: 6d 61 6c 6c 6f 63 2e 6c 6f 3a 09 24 28 54 4f 50  malloc.lo:.$(TOP
bed0: 29 5c 73 72 63 5c 6d 61 6c 6c 6f 63 2e 63 20 24  )\src\malloc.c $
bee0: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  (HDR)..$(LTCOMPI
bef0: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49  LE) $(CORE_COMPI
bf00: 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f  LE_OPTS) -c $(TO
bf10: 50 29 5c 73 72 63 5c 6d 61 6c 6c 6f 63 2e 63 0a  P)\src\malloc.c.
bf20: 0a 6d 65 6d 30 2e 6c 6f 3a 09 24 28 54 4f 50 29  .mem0.lo:.$(TOP)
bf30: 5c 73 72 63 5c 6d 65 6d 30 2e 63 20 24 28 48 44  \src\mem0.c $(HD
bf40: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  R)..$(LTCOMPILE)
bf50: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f   $(CORE_COMPILE_
bf60: 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c  OPTS) -c $(TOP)\
bf70: 73 72 63 5c 6d 65 6d 30 2e 63 0a 0a 6d 65 6d 31  src\mem0.c..mem1
bf80: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c  .lo:.$(TOP)\src\
bf90: 6d 65 6d 31 2e 63 20 24 28 48 44 52 29 0a 09 24  mem1.c $(HDR)..$
bfa0: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f  (LTCOMPILE) $(CO
bfb0: 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29  RE_COMPILE_OPTS)
bfc0: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d   -c $(TOP)\src\m
bfd0: 65 6d 31 2e 63 0a 0a 6d 65 6d 32 2e 6c 6f 3a 09  em1.c..mem2.lo:.
bfe0: 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d 32 2e  $(TOP)\src\mem2.
bff0: 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f  c $(HDR)..$(LTCO
c000: 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f  MPILE) $(CORE_CO
c010: 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24  MPILE_OPTS) -c $
c020: 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d 32 2e 63  (TOP)\src\mem2.c
c030: 0a 0a 6d 65 6d 33 2e 6c 6f 3a 09 24 28 54 4f 50  ..mem3.lo:.$(TOP
c040: 29 5c 73 72 63 5c 6d 65 6d 33 2e 63 20 24 28 48  )\src\mem3.c $(H
c050: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  DR)..$(LTCOMPILE
c060: 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45  ) $(CORE_COMPILE
c070: 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29  _OPTS) -c $(TOP)
c080: 5c 73 72 63 5c 6d 65 6d 33 2e 63 0a 0a 6d 65 6d  \src\mem3.c..mem
c090: 35 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63  5.lo:.$(TOP)\src
c0a0: 5c 6d 65 6d 35 2e 63 20 24 28 48 44 52 29 0a 09  \mem5.c $(HDR)..
c0b0: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43  $(LTCOMPILE) $(C
c0c0: 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53  ORE_COMPILE_OPTS
c0d0: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c  ) -c $(TOP)\src\
c0e0: 6d 65 6d 35 2e 63 0a 0a 6d 65 6d 6a 6f 75 72 6e  mem5.c..memjourn
c0f0: 61 6c 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72  al.lo:.$(TOP)\sr
c100: 63 5c 6d 65 6d 6a 6f 75 72 6e 61 6c 2e 63 20 24  c\memjournal.c $
c110: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  (HDR)..$(LTCOMPI
c120: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49  LE) $(CORE_COMPI
c130: 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f  LE_OPTS) -c $(TO
c140: 50 29 5c 73 72 63 5c 6d 65 6d 6a 6f 75 72 6e 61  P)\src\memjourna
c150: 6c 2e 63 0a 0a 6d 75 74 65 78 2e 6c 6f 3a 09 24  l.c..mutex.lo:.$
c160: 28 54 4f 50 29 5c 73 72 63 5c 6d 75 74 65 78 2e  (TOP)\src\mutex.
c170: 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f  c $(HDR)..$(LTCO
c180: 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f  MPILE) $(CORE_CO
c190: 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24  MPILE_OPTS) -c $
c1a0: 28 54 4f 50 29 5c 73 72 63 5c 6d 75 74 65 78 2e  (TOP)\src\mutex.
c1b0: 63 0a 0a 6d 75 74 65 78 5f 6e 6f 6f 70 2e 6c 6f  c..mutex_noop.lo
c1c0: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 6d 75 74  :.$(TOP)\src\mut
c1d0: 65 78 5f 6e 6f 6f 70 2e 63 20 24 28 48 44 52 29  ex_noop.c $(HDR)
c1e0: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24  ..$(LTCOMPILE) $
c1f0: 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50  (CORE_COMPILE_OP
c200: 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72  TS) -c $(TOP)\sr
c210: 63 5c 6d 75 74 65 78 5f 6e 6f 6f 70 2e 63 0a 0a  c\mutex_noop.c..
c220: 6d 75 74 65 78 5f 75 6e 69 78 2e 6c 6f 3a 09 24  mutex_unix.lo:.$
c230: 28 54 4f 50 29 5c 73 72 63 5c 6d 75 74 65 78 5f  (TOP)\src\mutex_
c240: 75 6e 69 78 2e 63 20 24 28 48 44 52 29 0a 09 24  unix.c $(HDR)..$
c250: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f  (LTCOMPILE) $(CO
c260: 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29  RE_COMPILE_OPTS)
c270: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d   -c $(TOP)\src\m
c280: 75 74 65 78 5f 75 6e 69 78 2e 63 0a 0a 6d 75 74  utex_unix.c..mut
c290: 65 78 5f 77 33 32 2e 6c 6f 3a 09 24 28 54 4f 50  ex_w32.lo:.$(TOP
c2a0: 29 5c 73 72 63 5c 6d 75 74 65 78 5f 77 33 32 2e  )\src\mutex_w32.
c2b0: 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f  c $(HDR)..$(LTCO
c2c0: 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f  MPILE) $(CORE_CO
c2d0: 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24  MPILE_OPTS) -c $
c2e0: 28 54 4f 50 29 5c 73 72 63 5c 6d 75 74 65 78 5f  (TOP)\src\mutex_
c2f0: 77 33 32 2e 63 0a 0a 6e 6f 74 69 66 79 2e 6c 6f  w32.c..notify.lo
c300: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 6e 6f 74  :.$(TOP)\src\not
c310: 69 66 79 2e 63 20 24 28 48 44 52 29 0a 09 24 28  ify.c $(HDR)..$(
c320: 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52  LTCOMPILE) $(COR
c330: 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20  E_COMPILE_OPTS) 
c340: 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 6e 6f  -c $(TOP)\src\no
c350: 74 69 66 79 2e 63 0a 0a 70 61 67 65 72 2e 6c 6f  tify.c..pager.lo
c360: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 70 61 67  :.$(TOP)\src\pag
c370: 65 72 2e 63 20 24 28 48 44 52 29 20 24 28 54 4f  er.c $(HDR) $(TO
c380: 50 29 5c 73 72 63 5c 70 61 67 65 72 2e 68 0a 09  P)\src\pager.h..
c390: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43  $(LTCOMPILE) $(C
c3a0: 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53  ORE_COMPILE_OPTS
c3b0: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c  ) -c $(TOP)\src\
c3c0: 70 61 67 65 72 2e 63 0a 0a 70 63 61 63 68 65 2e  pager.c..pcache.
c3d0: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 70  lo:.$(TOP)\src\p
c3e0: 63 61 63 68 65 2e 63 20 24 28 48 44 52 29 20 24  cache.c $(HDR) $
c3f0: 28 54 4f 50 29 5c 73 72 63 5c 70 63 61 63 68 65  (TOP)\src\pcache
c400: 2e 68 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  .h..$(LTCOMPILE)
c410: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f   $(CORE_COMPILE_
c420: 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c  OPTS) -c $(TOP)\
c430: 73 72 63 5c 70 63 61 63 68 65 2e 63 0a 0a 70 63  src\pcache.c..pc
c440: 61 63 68 65 31 2e 6c 6f 3a 09 24 28 54 4f 50 29  ache1.lo:.$(TOP)
c450: 5c 73 72 63 5c 70 63 61 63 68 65 31 2e 63 20 24  \src\pcache1.c $
c460: 28 48 44 52 29 20 24 28 54 4f 50 29 5c 73 72 63  (HDR) $(TOP)\src
c470: 5c 70 63 61 63 68 65 2e 68 0a 09 24 28 4c 54 43  \pcache.h..$(LTC
c480: 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43  OMPILE) $(CORE_C
c490: 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20  OMPILE_OPTS) -c 
c4a0: 24 28 54 4f 50 29 5c 73 72 63 5c 70 63 61 63 68  $(TOP)\src\pcach
c4b0: 65 31 2e 63 0a 0a 6f 73 2e 6c 6f 3a 09 24 28 54  e1.c..os.lo:.$(T
c4c0: 4f 50 29 5c 73 72 63 5c 6f 73 2e 63 20 24 28 48  OP)\src\os.c $(H
c4d0: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  DR)..$(LTCOMPILE
c4e0: 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45  ) $(CORE_COMPILE
c4f0: 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29  _OPTS) -c $(TOP)
c500: 5c 73 72 63 5c 6f 73 2e 63 0a 0a 6f 73 5f 75 6e  \src\os.c..os_un
c510: 69 78 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72  ix.lo:.$(TOP)\sr
c520: 63 5c 6f 73 5f 75 6e 69 78 2e 63 20 24 28 48 44  c\os_unix.c $(HD
c530: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  R)..$(LTCOMPILE)
c540: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f   $(CORE_COMPILE_
c550: 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c  OPTS) -c $(TOP)\
c560: 73 72 63 5c 6f 73 5f 75 6e 69 78 2e 63 0a 0a 6f  src\os_unix.c..o
c570: 73 5f 77 69 6e 2e 6c 6f 3a 09 24 28 54 4f 50 29  s_win.lo:.$(TOP)
c580: 5c 73 72 63 5c 6f 73 5f 77 69 6e 2e 63 20 24 28  \src\os_win.c $(
c590: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c  HDR)..$(LTCOMPIL
c5a0: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c  E) $(CORE_COMPIL
c5b0: 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50  E_OPTS) -c $(TOP
c5c0: 29 5c 73 72 63 5c 6f 73 5f 77 69 6e 2e 63 0a 0a  )\src\os_win.c..
c5d0: 70 72 61 67 6d 61 2e 6c 6f 3a 09 24 28 54 4f 50  pragma.lo:.$(TOP
c5e0: 29 5c 73 72 63 5c 70 72 61 67 6d 61 2e 63 20 24  )\src\pragma.c $
c5f0: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  (HDR)..$(LTCOMPI
c600: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49  LE) $(CORE_COMPI
c610: 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f  LE_OPTS) -c $(TO
c620: 50 29 5c 73 72 63 5c 70 72 61 67 6d 61 2e 63 0a  P)\src\pragma.c.
c630: 0a 70 72 65 70 61 72 65 2e 6c 6f 3a 09 24 28 54  .prepare.lo:.$(T
c640: 4f 50 29 5c 73 72 63 5c 70 72 65 70 61 72 65 2e  OP)\src\prepare.
c650: 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f  c $(HDR)..$(LTCO
c660: 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f  MPILE) $(CORE_CO
c670: 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24  MPILE_OPTS) -c $
c680: 28 54 4f 50 29 5c 73 72 63 5c 70 72 65 70 61 72  (TOP)\src\prepar
c690: 65 2e 63 0a 0a 70 72 69 6e 74 66 2e 6c 6f 3a 09  e.c..printf.lo:.
c6a0: 24 28 54 4f 50 29 5c 73 72 63 5c 70 72 69 6e 74  $(TOP)\src\print
c6b0: 66 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54  f.c $(HDR)..$(LT
c6c0: 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f  COMPILE) $(CORE_
c6d0: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63  COMPILE_OPTS) -c
c6e0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 72 69 6e   $(TOP)\src\prin
c6f0: 74 66 2e 63 0a 0a 72 61 6e 64 6f 6d 2e 6c 6f 3a  tf.c..random.lo:
c700: 09 24 28 54 4f 50 29 5c 73 72 63 5c 72 61 6e 64  .$(TOP)\src\rand
c710: 6f 6d 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c  om.c $(HDR)..$(L
c720: 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45  TCOMPILE) $(CORE
c730: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d  _COMPILE_OPTS) -
c740: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 72 61 6e  c $(TOP)\src\ran
c750: 64 6f 6d 2e 63 0a 0a 72 65 73 6f 6c 76 65 2e 6c  dom.c..resolve.l
c760: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 72 65  o:.$(TOP)\src\re
c770: 73 6f 6c 76 65 2e 63 20 24 28 48 44 52 29 0a 09  solve.c $(HDR)..
c780: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43  $(LTCOMPILE) $(C
c790: 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53  ORE_COMPILE_OPTS
c7a0: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c  ) -c $(TOP)\src\
c7b0: 72 65 73 6f 6c 76 65 2e 63 0a 0a 72 6f 77 73 65  resolve.c..rowse
c7c0: 74 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63  t.lo:.$(TOP)\src
c7d0: 5c 72 6f 77 73 65 74 2e 63 20 24 28 48 44 52 29  \rowset.c $(HDR)
c7e0: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24  ..$(LTCOMPILE) $
c7f0: 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50  (CORE_COMPILE_OP
c800: 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72  TS) -c $(TOP)\sr
c810: 63 5c 72 6f 77 73 65 74 2e 63 0a 0a 73 65 6c 65  c\rowset.c..sele
c820: 63 74 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72  ct.lo:.$(TOP)\sr
c830: 63 5c 73 65 6c 65 63 74 2e 63 20 24 28 48 44 52  c\select.c $(HDR
c840: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20  )..$(LTCOMPILE) 
c850: 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f  $(CORE_COMPILE_O
c860: 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73  PTS) -c $(TOP)\s
c870: 72 63 5c 73 65 6c 65 63 74 2e 63 0a 0a 73 74 61  rc\select.c..sta
c880: 74 75 73 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73  tus.lo:.$(TOP)\s
c890: 72 63 5c 73 74 61 74 75 73 2e 63 20 24 28 48 44  rc\status.c $(HD
c8a0: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  R)..$(LTCOMPILE)
c8b0: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f   $(CORE_COMPILE_
c8c0: 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c  OPTS) -c $(TOP)\
c8d0: 73 72 63 5c 73 74 61 74 75 73 2e 63 0a 0a 74 61  src\status.c..ta
c8e0: 62 6c 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73  ble.lo:.$(TOP)\s
c8f0: 72 63 5c 74 61 62 6c 65 2e 63 20 24 28 48 44 52  rc\table.c $(HDR
c900: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20  )..$(LTCOMPILE) 
c910: 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f  $(CORE_COMPILE_O
c920: 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73  PTS) -c $(TOP)\s
c930: 72 63 5c 74 61 62 6c 65 2e 63 0a 0a 74 68 72 65  rc\table.c..thre
c940: 61 64 73 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73  ads.lo:.$(TOP)\s
c950: 72 63 5c 74 68 72 65 61 64 73 2e 63 20 24 28 48  rc\threads.c $(H
c960: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  DR)..$(LTCOMPILE
c970: 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45  ) $(CORE_COMPILE
c980: 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29  _OPTS) -c $(TOP)
c990: 5c 73 72 63 5c 74 68 72 65 61 64 73 2e 63 0a 0a  \src\threads.c..
c9a0: 74 6f 6b 65 6e 69 7a 65 2e 6c 6f 3a 09 24 28 54  tokenize.lo:.$(T
c9b0: 4f 50 29 5c 73 72 63 5c 74 6f 6b 65 6e 69 7a 65  OP)\src\tokenize
c9c0: 2e 63 20 6b 65 79 77 6f 72 64 68 61 73 68 2e 68  .c keywordhash.h
c9d0: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d   $(HDR)..$(LTCOM
c9e0: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d  PILE) $(CORE_COM
c9f0: 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28  PILE_OPTS) -c $(
ca00: 54 4f 50 29 5c 73 72 63 5c 74 6f 6b 65 6e 69 7a  TOP)\src\tokeniz
ca10: 65 2e 63 0a 0a 74 72 65 65 76 69 65 77 2e 6c 6f  e.c..treeview.lo
ca20: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 74 72 65  :.$(TOP)\src\tre
ca30: 65 76 69 65 77 2e 63 20 24 28 48 44 52 29 0a 09  eview.c $(HDR)..
ca40: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43  $(LTCOMPILE) $(C
ca50: 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53  ORE_COMPILE_OPTS
ca60: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c  ) -c $(TOP)\src\
ca70: 74 72 65 65 76 69 65 77 2e 63 0a 0a 74 72 69 67  treeview.c..trig
ca80: 67 65 72 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73  ger.lo:.$(TOP)\s
ca90: 72 63 5c 74 72 69 67 67 65 72 2e 63 20 24 28 48  rc\trigger.c $(H
caa0: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  DR)..$(LTCOMPILE
cab0: 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45  ) $(CORE_COMPILE
cac0: 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29  _OPTS) -c $(TOP)
cad0: 5c 73 72 63 5c 74 72 69 67 67 65 72 2e 63 0a 0a  \src\trigger.c..
cae0: 75 70 64 61 74 65 2e 6c 6f 3a 09 24 28 54 4f 50  update.lo:.$(TOP
caf0: 29 5c 73 72 63 5c 75 70 64 61 74 65 2e 63 20 24  )\src\update.c $
cb00: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  (HDR)..$(LTCOMPI
cb10: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49  LE) $(CORE_COMPI
cb20: 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f  LE_OPTS) -c $(TO
cb30: 50 29 5c 73 72 63 5c 75 70 64 61 74 65 2e 63 0a  P)\src\update.c.
cb40: 0a 75 74 66 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c  .utf.lo:.$(TOP)\
cb50: 73 72 63 5c 75 74 66 2e 63 20 24 28 48 44 52 29  src\utf.c $(HDR)
cb60: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24  ..$(LTCOMPILE) $
cb70: 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50  (CORE_COMPILE_OP
cb80: 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72  TS) -c $(TOP)\sr
cb90: 63 5c 75 74 66 2e 63 0a 0a 75 74 69 6c 2e 6c 6f  c\utf.c..util.lo
cba0: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 75 74 69  :.$(TOP)\src\uti
cbb0: 6c 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54  l.c $(HDR)..$(LT
cbc0: 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f  COMPILE) $(CORE_
cbd0: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63  COMPILE_OPTS) -c
cbe0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 75 74 69 6c   $(TOP)\src\util
cbf0: 2e 63 0a 0a 76 61 63 75 75 6d 2e 6c 6f 3a 09 24  .c..vacuum.lo:.$
cc00: 28 54 4f 50 29 5c 73 72 63 5c 76 61 63 75 75 6d  (TOP)\src\vacuum
cc10: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43  .c $(HDR)..$(LTC
cc20: 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43  OMPILE) $(CORE_C
cc30: 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20  OMPILE_OPTS) -c 
cc40: 24 28 54 4f 50 29 5c 73 72 63 5c 76 61 63 75 75  $(TOP)\src\vacuu
cc50: 6d 2e 63 0a 0a 76 64 62 65 2e 6c 6f 3a 09 24 28  m.c..vdbe.lo:.$(
cc60: 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 2e 63 20  TOP)\src\vdbe.c 
cc70: 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  $(HDR)..$(LTCOMP
cc80: 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50  ILE) $(CORE_COMP
cc90: 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54  ILE_OPTS) -c $(T
cca0: 4f 50 29 5c 73 72 63 5c 76 64 62 65 2e 63 0a 0a  OP)\src\vdbe.c..
ccb0: 76 64 62 65 61 70 69 2e 6c 6f 3a 09 24 28 54 4f  vdbeapi.lo:.$(TO
ccc0: 50 29 5c 73 72 63 5c 76 64 62 65 61 70 69 2e 63  P)\src\vdbeapi.c
ccd0: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d   $(HDR)..$(LTCOM
cce0: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d  PILE) $(CORE_COM
ccf0: 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28  PILE_OPTS) -c $(
cd00: 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 61 70 69  TOP)\src\vdbeapi
cd10: 2e 63 0a 0a 76 64 62 65 61 75 78 2e 6c 6f 3a 09  .c..vdbeaux.lo:.
cd20: 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 61  $(TOP)\src\vdbea
cd30: 75 78 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c  ux.c $(HDR)..$(L
cd40: 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45  TCOMPILE) $(CORE
cd50: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d  _COMPILE_OPTS) -
cd60: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62  c $(TOP)\src\vdb
cd70: 65 61 75 78 2e 63 0a 0a 76 64 62 65 62 6c 6f 62  eaux.c..vdbeblob
cd80: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c  .lo:.$(TOP)\src\
cd90: 76 64 62 65 62 6c 6f 62 2e 63 20 24 28 48 44 52  vdbeblob.c $(HDR
cda0: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20  )..$(LTCOMPILE) 
cdb0: 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f  $(CORE_COMPILE_O
cdc0: 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73  PTS) -c $(TOP)\s
cdd0: 72 63 5c 76 64 62 65 62 6c 6f 62 2e 63 0a 0a 76  rc\vdbeblob.c..v
cde0: 64 62 65 6d 65 6d 2e 6c 6f 3a 09 24 28 54 4f 50  dbemem.lo:.$(TOP
cdf0: 29 5c 73 72 63 5c 76 64 62 65 6d 65 6d 2e 63 20  )\src\vdbemem.c 
ce00: 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  $(HDR)..$(LTCOMP
ce10: 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50  ILE) $(CORE_COMP
ce20: 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54  ILE_OPTS) -c $(T
ce30: 4f 50 29 5c 73 72 63 5c 76 64 62 65 6d 65 6d 2e  OP)\src\vdbemem.
ce40: 63 0a 0a 76 64 62 65 73 6f 72 74 2e 6c 6f 3a 09  c..vdbesort.lo:.
ce50: 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 73  $(TOP)\src\vdbes
ce60: 6f 72 74 2e 63 20 24 28 48 44 52 29 0a 09 24 28  ort.c $(HDR)..$(
ce70: 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52  LTCOMPILE) $(COR
ce80: 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20  E_COMPILE_OPTS) 
ce90: 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 64  -c $(TOP)\src\vd
cea0: 62 65 73 6f 72 74 2e 63 0a 0a 76 64 62 65 74 72  besort.c..vdbetr
ceb0: 61 63 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73  ace.lo:.$(TOP)\s
cec0: 72 63 5c 76 64 62 65 74 72 61 63 65 2e 63 20 24  rc\vdbetrace.c $
ced0: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  (HDR)..$(LTCOMPI
cee0: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49  LE) $(CORE_COMPI
cef0: 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f  LE_OPTS) -c $(TO
cf00: 50 29 5c 73 72 63 5c 76 64 62 65 74 72 61 63 65  P)\src\vdbetrace
cf10: 2e 63 0a 0a 76 74 61 62 2e 6c 6f 3a 09 24 28 54  .c..vtab.lo:.$(T
cf20: 4f 50 29 5c 73 72 63 5c 76 74 61 62 2e 63 20 24  OP)\src\vtab.c $
cf30: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  (HDR)..$(LTCOMPI
cf40: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49  LE) $(CORE_COMPI
cf50: 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f  LE_OPTS) -c $(TO
cf60: 50 29 5c 73 72 63 5c 76 74 61 62 2e 63 0a 0a 77  P)\src\vtab.c..w
cf70: 61 6c 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72  al.lo:.$(TOP)\sr
cf80: 63 5c 77 61 6c 2e 63 20 24 28 48 44 52 29 0a 09  c\wal.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: 77 61 6c 2e 63 0a 0a 77 61 6c 6b 65 72 2e 6c 6f  wal.c..walker.lo
cfd0: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 77 61 6c  :.$(TOP)\src\wal
cfe0: 6b 65 72 2e 63 20 24 28 48 44 52 29 0a 09 24 28  ker.c $(HDR)..$(
cff0: 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52  LTCOMPILE) $(COR
d000: 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20  E_COMPILE_OPTS) 
d010: 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 77 61  -c $(TOP)\src\wa
d020: 6c 6b 65 72 2e 63 0a 0a 77 68 65 72 65 2e 6c 6f  lker.c..where.lo
d030: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 77 68 65  :.$(TOP)\src\whe
d040: 72 65 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c  re.c $(HDR)..$(L
d050: 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45  TCOMPILE) $(CORE
d060: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d  _COMPILE_OPTS) -
d070: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 77 68 65  c $(TOP)\src\whe
d080: 72 65 2e 63 0a 0a 77 68 65 72 65 63 6f 64 65 2e  re.c..wherecode.
d090: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 77  lo:.$(TOP)\src\w
d0a0: 68 65 72 65 63 6f 64 65 2e 63 20 24 28 48 44 52  herecode.c $(HDR
d0b0: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20  )..$(LTCOMPILE) 
d0c0: 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f  $(CORE_COMPILE_O
d0d0: 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73  PTS) -c $(TOP)\s
d0e0: 72 63 5c 77 68 65 72 65 63 6f 64 65 2e 63 0a 0a  rc\wherecode.c..
d0f0: 77 68 65 72 65 65 78 70 72 2e 6c 6f 3a 09 24 28  whereexpr.lo:.$(
d100: 54 4f 50 29 5c 73 72 63 5c 77 68 65 72 65 65 78  TOP)\src\whereex
d110: 70 72 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c  pr.c $(HDR)..$(L
d120: 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45  TCOMPILE) $(CORE
d130: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d  _COMPILE_OPTS) -
d140: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 77 68 65  c $(TOP)\src\whe
d150: 72 65 65 78 70 72 2e 63 0a 0a 74 63 6c 73 71 6c  reexpr.c..tclsql
d160: 69 74 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73  ite.lo:.$(TOP)\s
d170: 72 63 5c 74 63 6c 73 71 6c 69 74 65 2e 63 20 24  rc\tclsqlite.c $
d180: 28 48 44 52 29 20 24 28 53 51 4c 49 54 45 5f 54  (HDR) $(SQLITE_T
d190: 43 4c 5f 44 45 50 29 0a 09 24 28 4c 54 43 4f 4d  CL_DEP)..$(LTCOM
d1a0: 50 49 4c 45 29 20 24 28 4e 4f 5f 57 41 52 4e 29  PILE) $(NO_WARN)
d1b0: 20 2d 44 55 53 45 5f 54 43 4c 5f 53 54 55 42 53   -DUSE_TCL_STUBS
d1c0: 3d 31 20 2d 44 42 55 49 4c 44 5f 73 71 6c 69 74  =1 -DBUILD_sqlit
d1d0: 65 20 2d 49 24 28 54 43 4c 49 4e 43 44 49 52 29  e -I$(TCLINCDIR)
d1e0: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 74   -c $(TOP)\src\t
d1f0: 63 6c 73 71 6c 69 74 65 2e 63 0a 0a 74 63 6c 73  clsqlite.c..tcls
d200: 71 6c 69 74 65 2d 73 68 65 6c 6c 2e 6c 6f 3a 09  qlite-shell.lo:.
d210: 24 28 54 4f 50 29 5c 73 72 63 5c 74 63 6c 73 71  $(TOP)\src\tclsq
d220: 6c 69 74 65 2e 63 20 24 28 48 44 52 29 20 24 28  lite.c $(HDR) $(
d230: 53 51 4c 49 54 45 5f 54 43 4c 5f 44 45 50 29 0a  SQLITE_TCL_DEP).
d240: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28  .$(LTCOMPILE) $(
d250: 4e 4f 5f 57 41 52 4e 29 20 2d 44 54 43 4c 53 48  NO_WARN) -DTCLSH
d260: 3d 31 20 2d 44 42 55 49 4c 44 5f 73 71 6c 69 74  =1 -DBUILD_sqlit
d270: 65 20 2d 49 24 28 54 43 4c 49 4e 43 44 49 52 29  e -I$(TCLINCDIR)
d280: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 74   -c $(TOP)\src\t
d290: 63 6c 73 71 6c 69 74 65 2e 63 0a 0a 74 63 6c 73  clsqlite.c..tcls
d2a0: 71 6c 69 74 65 33 2e 65 78 65 3a 09 74 63 6c 73  qlite3.exe:.tcls
d2b0: 71 6c 69 74 65 2d 73 68 65 6c 6c 2e 6c 6f 20 24  qlite-shell.lo $
d2c0: 28 53 51 4c 49 54 45 33 43 29 20 24 28 53 51 4c  (SQLITE3C) $(SQL
d2d0: 49 54 45 33 48 29 20 24 28 4c 49 42 52 45 53 4f  ITE3H) $(LIBRESO
d2e0: 42 4a 53 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20  BJS)..$(LTLINK) 
d2f0: 24 28 53 51 4c 49 54 45 33 43 29 20 2f 6c 69 6e  $(SQLITE3C) /lin
d300: 6b 20 24 28 4c 44 46 4c 41 47 53 29 20 24 28 4c  k $(LDFLAGS) $(L
d310: 54 4c 49 4e 4b 4f 50 54 53 29 20 24 28 4c 54 4c  TLINKOPTS) $(LTL
d320: 49 42 50 41 54 48 53 29 20 2f 4f 55 54 3a 24 40  IBPATHS) /OUT:$@
d330: 20 74 63 6c 73 71 6c 69 74 65 2d 73 68 65 6c 6c   tclsqlite-shell
d340: 2e 6c 6f 20 24 28 4c 49 42 52 45 53 4f 42 4a 53  .lo $(LIBRESOBJS
d350: 29 20 24 28 4c 54 4c 49 42 53 29 20 24 28 54 4c  ) $(LTLIBS) $(TL
d360: 49 42 53 29 0a 0a 23 20 52 75 6c 65 73 20 74 6f  IBS)..# Rules to
d370: 20 62 75 69 6c 64 20 6f 70 63 6f 64 65 73 2e 63   build opcodes.c
d380: 20 61 6e 64 20 6f 70 63 6f 64 65 73 2e 68 0a 23   and opcodes.h.#
d390: 0a 6f 70 63 6f 64 65 73 2e 63 3a 09 6f 70 63 6f  .opcodes.c:.opco
d3a0: 64 65 73 2e 68 20 24 28 54 4f 50 29 5c 74 6f 6f  des.h $(TOP)\too
d3b0: 6c 5c 6d 6b 6f 70 63 6f 64 65 63 2e 74 63 6c 0a  l\mkopcodec.tcl.
d3c0: 09 24 28 54 43 4c 53 48 5f 43 4d 44 29 20 24 28  .$(TCLSH_CMD) $(
d3d0: 54 4f 50 29 5c 74 6f 6f 6c 5c 6d 6b 6f 70 63 6f  TOP)\tool\mkopco
d3e0: 64 65 63 2e 74 63 6c 20 6f 70 63 6f 64 65 73 2e  dec.tcl opcodes.
d3f0: 68 20 3e 20 6f 70 63 6f 64 65 73 2e 63 0a 0a 6f  h > opcodes.c..o
d400: 70 63 6f 64 65 73 2e 68 3a 09 70 61 72 73 65 2e  pcodes.h:.parse.
d410: 68 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62  h $(TOP)\src\vdb
d420: 65 2e 63 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c  e.c $(TOP)\tool\
d430: 6d 6b 6f 70 63 6f 64 65 68 2e 74 63 6c 0a 09 74  mkopcodeh.tcl..t
d440: 79 70 65 20 70 61 72 73 65 2e 68 20 24 28 54 4f  ype parse.h $(TO
d450: 50 29 5c 73 72 63 5c 76 64 62 65 2e 63 20 7c 20  P)\src\vdbe.c | 
d460: 24 28 54 43 4c 53 48 5f 43 4d 44 29 20 24 28 54  $(TCLSH_CMD) $(T
d470: 4f 50 29 5c 74 6f 6f 6c 5c 6d 6b 6f 70 63 6f 64  OP)\tool\mkopcod
d480: 65 68 2e 74 63 6c 20 3e 20 6f 70 63 6f 64 65 73  eh.tcl > opcodes
d490: 2e 68 0a 0a 23 20 52 75 6c 65 73 20 74 6f 20 62  .h..# Rules to b
d4a0: 75 69 6c 64 20 70 61 72 73 65 2e 63 20 61 6e 64  uild parse.c and
d4b0: 20 70 61 72 73 65 2e 68 20 2d 20 74 68 65 20 6f   parse.h - the o
d4c0: 75 74 70 75 74 73 20 6f 66 20 6c 65 6d 6f 6e 2e  utputs of lemon.
d4d0: 0a 23 0a 70 61 72 73 65 2e 68 3a 09 70 61 72 73  .#.parse.h:.pars
d4e0: 65 2e 63 0a 0a 70 61 72 73 65 2e 63 3a 09 24 28  e.c..parse.c:.$(
d4f0: 54 4f 50 29 5c 73 72 63 5c 70 61 72 73 65 2e 79  TOP)\src\parse.y
d500: 20 6c 65 6d 6f 6e 2e 65 78 65 20 24 28 54 4f 50   lemon.exe $(TOP
d510: 29 5c 74 6f 6f 6c 5c 61 64 64 6f 70 63 6f 64 65  )\tool\addopcode
d520: 73 2e 74 63 6c 0a 09 64 65 6c 20 2f 51 20 70 61  s.tcl..del /Q pa
d530: 72 73 65 2e 79 20 70 61 72 73 65 2e 68 20 70 61  rse.y parse.h pa
d540: 72 73 65 2e 68 2e 74 65 6d 70 20 32 3e 4e 55 4c  rse.h.temp 2>NUL
d550: 0a 09 63 6f 70 79 20 24 28 54 4f 50 29 5c 73 72  ..copy $(TOP)\sr
d560: 63 5c 70 61 72 73 65 2e 79 20 2e 0a 09 2e 5c 6c  c\parse.y ....\l
d570: 65 6d 6f 6e 2e 65 78 65 20 24 28 52 45 51 5f 46  emon.exe $(REQ_F
d580: 45 41 54 55 52 45 5f 46 4c 41 47 53 29 20 24 28  EATURE_FLAGS) $(
d590: 4f 50 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 47  OPT_FEATURE_FLAG
d5a0: 53 29 20 24 28 45 58 54 5f 46 45 41 54 55 52 45  S) $(EXT_FEATURE
d5b0: 5f 46 4c 41 47 53 29 20 24 28 4f 50 54 53 29 20  _FLAGS) $(OPTS) 
d5c0: 70 61 72 73 65 2e 79 0a 09 6d 6f 76 65 20 70 61  parse.y..move pa
d5d0: 72 73 65 2e 68 20 70 61 72 73 65 2e 68 2e 74 65  rse.h parse.h.te
d5e0: 6d 70 0a 09 24 28 54 43 4c 53 48 5f 43 4d 44 29  mp..$(TCLSH_CMD)
d5f0: 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 61 64 64   $(TOP)\tool\add
d600: 6f 70 63 6f 64 65 73 2e 74 63 6c 20 70 61 72 73  opcodes.tcl pars
d610: 65 2e 68 2e 74 65 6d 70 20 3e 20 70 61 72 73 65  e.h.temp > parse
d620: 2e 68 0a 0a 24 28 53 51 4c 49 54 45 33 48 29 3a  .h..$(SQLITE3H):
d630: 09 24 28 54 4f 50 29 5c 73 72 63 5c 73 71 6c 69  .$(TOP)\src\sqli
d640: 74 65 2e 68 2e 69 6e 20 24 28 54 4f 50 29 5c 6d  te.h.in $(TOP)\m
d650: 61 6e 69 66 65 73 74 2e 75 75 69 64 20 24 28 54  anifest.uuid $(T
d660: 4f 50 29 5c 56 45 52 53 49 4f 4e 0a 09 24 28 54  OP)\VERSION..$(T
d670: 43 4c 53 48 5f 43 4d 44 29 20 24 28 54 4f 50 29  CLSH_CMD) $(TOP)
d680: 5c 74 6f 6f 6c 5c 6d 6b 73 71 6c 69 74 65 33 68  \tool\mksqlite3h
d690: 2e 74 63 6c 20 24 28 54 4f 50 3a 5c 3d 2f 29 20  .tcl $(TOP:\=/) 
d6a0: 3e 20 24 28 53 51 4c 49 54 45 33 48 29 20 24 28  > $(SQLITE3H) $(
d6b0: 4d 4b 53 51 4c 49 54 45 33 48 5f 41 52 47 53 29  MKSQLITE3H_ARGS)
d6c0: 0a 0a 73 71 6c 69 74 65 33 65 78 74 2e 68 3a 09  ..sqlite3ext.h:.
d6d0: 2e 74 61 72 67 65 74 5f 73 6f 75 72 63 65 0a 21  .target_source.!
d6e0: 49 46 20 24 28 55 53 45 5f 53 54 44 43 41 4c 4c  IF $(USE_STDCALL
d6f0: 29 21 3d 30 20 7c 7c 20 24 28 46 4f 52 5f 57 49  )!=0 || $(FOR_WI
d700: 4e 31 30 29 21 3d 30 0a 09 74 79 70 65 20 74 73  N10)!=0..type ts
d710: 72 63 5c 73 71 6c 69 74 65 33 65 78 74 2e 68 20  rc\sqlite3ext.h 
d720: 7c 20 24 28 54 43 4c 53 48 5f 43 4d 44 29 20 24  | $(TCLSH_CMD) $
d730: 28 54 4f 50 29 5c 74 6f 6f 6c 5c 72 65 70 6c 61  (TOP)\tool\repla
d740: 63 65 2e 74 63 6c 20 72 65 67 73 75 62 20 22 5c  ce.tcl regsub "\
d750: 28 5c 2a 5c 29 22 20 22 28 53 51 4c 49 54 45 5f  (\*\)" "(SQLITE_
d760: 43 41 4c 4c 42 41 43 4b 20 2a 29 22 20 5c 0a 09  CALLBACK *)" \..
d770: 09 7c 20 24 28 54 43 4c 53 48 5f 43 4d 44 29 20  .| $(TCLSH_CMD) 
d780: 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 72 65 70 6c  $(TOP)\tool\repl
d790: 61 63 65 2e 74 63 6c 20 72 65 67 73 75 62 20 22  ace.tcl regsub "
d7a0: 5c 28 5c 2a 22 20 22 28 53 51 4c 49 54 45 5f 41  \(\*" "(SQLITE_A
d7b0: 50 49 43 41 4c 4c 20 2a 22 20 3e 20 73 71 6c 69  PICALL *" > sqli
d7c0: 74 65 33 65 78 74 2e 68 0a 09 63 6f 70 79 20 2f  te3ext.h..copy /
d7d0: 59 20 73 71 6c 69 74 65 33 65 78 74 2e 68 20 74  Y sqlite3ext.h t
d7e0: 73 72 63 5c 73 71 6c 69 74 65 33 65 78 74 2e 68  src\sqlite3ext.h
d7f0: 0a 21 45 4c 53 45 0a 09 63 6f 70 79 20 2f 59 20  .!ELSE..copy /Y 
d800: 74 73 72 63 5c 73 71 6c 69 74 65 33 65 78 74 2e  tsrc\sqlite3ext.
d810: 68 20 73 71 6c 69 74 65 33 65 78 74 2e 68 0a 21  h sqlite3ext.h.!
d820: 45 4e 44 49 46 0a 0a 6d 6b 6b 65 79 77 6f 72 64  ENDIF..mkkeyword
d830: 68 61 73 68 2e 65 78 65 3a 09 24 28 54 4f 50 29  hash.exe:.$(TOP)
d840: 5c 74 6f 6f 6c 5c 6d 6b 6b 65 79 77 6f 72 64 68  \tool\mkkeywordh
d850: 61 73 68 2e 63 0a 09 24 28 42 43 43 29 20 24 28  ash.c..$(BCC) $(
d860: 4e 4f 5f 57 41 52 4e 29 20 2d 46 65 24 40 20 24  NO_WARN) -Fe$@ $
d870: 28 52 45 51 5f 46 45 41 54 55 52 45 5f 46 4c 41  (REQ_FEATURE_FLA
d880: 47 53 29 20 24 28 4f 50 54 5f 46 45 41 54 55 52  GS) $(OPT_FEATUR
d890: 45 5f 46 4c 41 47 53 29 20 24 28 45 58 54 5f 46  E_FLAGS) $(EXT_F
d8a0: 45 41 54 55 52 45 5f 46 4c 41 47 53 29 20 24 28  EATURE_FLAGS) $(
d8b0: 4f 50 54 53 29 20 5c 0a 09 09 24 28 54 4f 50 29  OPTS) \...$(TOP)
d8c0: 5c 74 6f 6f 6c 5c 6d 6b 6b 65 79 77 6f 72 64 68  \tool\mkkeywordh
d8d0: 61 73 68 2e 63 20 2f 6c 69 6e 6b 20 24 28 4c 44  ash.c /link $(LD
d8e0: 46 4c 41 47 53 29 20 24 28 4e 4c 54 4c 49 4e 4b  FLAGS) $(NLTLINK
d8f0: 4f 50 54 53 29 20 24 28 4e 4c 54 4c 49 42 50 41  OPTS) $(NLTLIBPA
d900: 54 48 53 29 0a 0a 6b 65 79 77 6f 72 64 68 61 73  THS)..keywordhas
d910: 68 2e 68 3a 09 24 28 54 4f 50 29 5c 74 6f 6f 6c  h.h:.$(TOP)\tool
d920: 5c 6d 6b 6b 65 79 77 6f 72 64 68 61 73 68 2e 63  \mkkeywordhash.c
d930: 20 6d 6b 6b 65 79 77 6f 72 64 68 61 73 68 2e 65   mkkeywordhash.e
d940: 78 65 0a 09 2e 5c 6d 6b 6b 65 79 77 6f 72 64 68  xe...\mkkeywordh
d950: 61 73 68 2e 65 78 65 20 3e 20 6b 65 79 77 6f 72  ash.exe > keywor
d960: 64 68 61 73 68 2e 68 0a 0a 0a 0a 23 20 52 75 6c  dhash.h....# Rul
d970: 65 73 20 74 6f 20 62 75 69 6c 64 20 74 68 65 20  es to build the 
d980: 65 78 74 65 6e 73 69 6f 6e 20 6f 62 6a 65 63 74  extension object
d990: 73 2e 0a 23 0a 69 63 75 2e 6c 6f 3a 09 24 28 54  s..#.icu.lo:.$(T
d9a0: 4f 50 29 5c 65 78 74 5c 69 63 75 5c 69 63 75 2e  OP)\ext\icu\icu.
d9b0: 63 20 24 28 48 44 52 29 20 24 28 45 58 54 48 44  c $(HDR) $(EXTHD
d9c0: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  R)..$(LTCOMPILE)
d9d0: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f   $(CORE_COMPILE_
d9e0: 4f 50 54 53 29 20 24 28 4e 4f 5f 57 41 52 4e 29  OPTS) $(NO_WARN)
d9f0: 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d   -DSQLITE_CORE -
da00: 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 69 63 75  c $(TOP)\ext\icu
da10: 5c 69 63 75 2e 63 0a 0a 66 74 73 32 2e 6c 6f 3a  \icu.c..fts2.lo:
da20: 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32  .$(TOP)\ext\fts2
da30: 5c 66 74 73 32 2e 63 20 24 28 48 44 52 29 20 24  \fts2.c $(HDR) $
da40: 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f  (EXTHDR)..$(LTCO
da50: 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f  MPILE) $(CORE_CO
da60: 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f  MPILE_OPTS) $(NO
da70: 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f  _WARN) -DSQLITE_
da80: 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65  CORE -c $(TOP)\e
da90: 78 74 5c 66 74 73 32 5c 66 74 73 32 2e 63 0a 0a  xt\fts2\fts2.c..
daa0: 66 74 73 32 5f 68 61 73 68 2e 6c 6f 3a 09 24 28  fts2_hash.lo:.$(
dab0: 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 74  TOP)\ext\fts2\ft
dac0: 73 32 5f 68 61 73 68 2e 63 20 24 28 48 44 52 29  s2_hash.c $(HDR)
dad0: 20 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54   $(EXTHDR)..$(LT
dae0: 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f  COMPILE) $(CORE_
daf0: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24 28  COMPILE_OPTS) $(
db00: 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 54  NO_WARN) -DSQLIT
db10: 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 29  E_CORE -c $(TOP)
db20: 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f 68  \ext\fts2\fts2_h
db30: 61 73 68 2e 63 0a 0a 66 74 73 32 5f 69 63 75 2e  ash.c..fts2_icu.
db40: 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66  lo:.$(TOP)\ext\f
db50: 74 73 32 5c 66 74 73 32 5f 69 63 75 2e 63 20 24  ts2\fts2_icu.c $
db60: 28 48 44 52 29 20 24 28 45 58 54 48 44 52 29 0a  (HDR) $(EXTHDR).
db70: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28  .$(LTCOMPILE) $(
db80: 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54  CORE_COMPILE_OPT
db90: 53 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44  S) $(NO_WARN) -D
dba0: 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20 24  SQLITE_CORE -c $
dbb0: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66  (TOP)\ext\fts2\f
dbc0: 74 73 32 5f 69 63 75 2e 63 0a 0a 66 74 73 32 5f  ts2_icu.c..fts2_
dbd0: 70 6f 72 74 65 72 2e 6c 6f 3a 09 24 28 54 4f 50  porter.lo:.$(TOP
dbe0: 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f  )\ext\fts2\fts2_
dbf0: 70 6f 72 74 65 72 2e 63 20 24 28 48 44 52 29 20  porter.c $(HDR) 
dc00: 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43  $(EXTHDR)..$(LTC
dc10: 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43  OMPILE) $(CORE_C
dc20: 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24 28 4e  OMPILE_OPTS) $(N
dc30: 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 45  O_WARN) -DSQLITE
dc40: 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 5c  _CORE -c $(TOP)\
dc50: 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f 70 6f  ext\fts2\fts2_po
dc60: 72 74 65 72 2e 63 0a 0a 66 74 73 32 5f 74 6f 6b  rter.c..fts2_tok
dc70: 65 6e 69 7a 65 72 2e 6c 6f 3a 09 24 28 54 4f 50  enizer.lo:.$(TOP
dc80: 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f  )\ext\fts2\fts2_
dc90: 74 6f 6b 65 6e 69 7a 65 72 2e 63 20 24 28 48 44  tokenizer.c $(HD
dca0: 52 29 20 24 28 45 58 54 48 44 52 29 0a 09 24 28  R) $(EXTHDR)..$(
dcb0: 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52  LTCOMPILE) $(COR
dcc0: 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20  E_COMPILE_OPTS) 
dcd0: 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c  $(NO_WARN) -DSQL
dce0: 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f  ITE_CORE -c $(TO
dcf0: 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32  P)\ext\fts2\fts2
dd00: 5f 74 6f 6b 65 6e 69 7a 65 72 2e 63 0a 0a 66 74  _tokenizer.c..ft
dd10: 73 32 5f 74 6f 6b 65 6e 69 7a 65 72 31 2e 6c 6f  s2_tokenizer1.lo
dd20: 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73  :.$(TOP)\ext\fts
dd30: 32 5c 66 74 73 32 5f 74 6f 6b 65 6e 69 7a 65 72  2\fts2_tokenizer
dd40: 31 2e 63 20 24 28 48 44 52 29 20 24 28 45 58 54  1.c $(HDR) $(EXT
dd50: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c  HDR)..$(LTCOMPIL
dd60: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c  E) $(CORE_COMPIL
dd70: 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57 41 52  E_OPTS) $(NO_WAR
dd80: 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45  N) -DSQLITE_CORE
dd90: 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 66   -c $(TOP)\ext\f
dda0: 74 73 32 5c 66 74 73 32 5f 74 6f 6b 65 6e 69 7a  ts2\fts2_tokeniz
ddb0: 65 72 31 2e 63 0a 0a 66 74 73 33 2e 6c 6f 3a 09  er1.c..fts3.lo:.
ddc0: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c  $(TOP)\ext\fts3\
ddd0: 66 74 73 33 2e 63 20 24 28 48 44 52 29 20 24 28  fts3.c $(HDR) $(
dde0: 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d  EXTHDR)..$(LTCOM
ddf0: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d  PILE) $(CORE_COM
de00: 50 49 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f  PILE_OPTS) $(NO_
de10: 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43  WARN) -DSQLITE_C
de20: 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78  ORE -c $(TOP)\ex
de30: 74 5c 66 74 73 33 5c 66 74 73 33 2e 63 0a 0a 66  t\fts3\fts3.c..f
de40: 74 73 33 5f 61 75 78 2e 6c 6f 3a 09 24 28 54 4f  ts3_aux.lo:.$(TO
de50: 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33  P)\ext\fts3\fts3
de60: 5f 61 75 78 2e 63 20 24 28 48 44 52 29 20 24 28  _aux.c $(HDR) $(
de70: 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d  EXTHDR)..$(LTCOM
de80: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d  PILE) $(CORE_COM
de90: 50 49 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f  PILE_OPTS) $(NO_
dea0: 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43  WARN) -DSQLITE_C
deb0: 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78  ORE -c $(TOP)\ex
dec0: 74 5c 66 74 73 33 5c 66 74 73 33 5f 61 75 78 2e  t\fts3\fts3_aux.
ded0: 63 0a 0a 66 74 73 33 5f 65 78 70 72 2e 6c 6f 3a  c..fts3_expr.lo:
dee0: 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33  .$(TOP)\ext\fts3
def0: 5c 66 74 73 33 5f 65 78 70 72 2e 63 20 24 28 48  \fts3_expr.c $(H
df00: 44 52 29 20 24 28 45 58 54 48 44 52 29 0a 09 24  DR) $(EXTHDR)..$
df10: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f  (LTCOMPILE) $(CO
df20: 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29  RE_COMPILE_OPTS)
df30: 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51   $(NO_WARN) -DSQ
df40: 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54  LITE_CORE -c $(T
df50: 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73  OP)\ext\fts3\fts
df60: 33 5f 65 78 70 72 2e 63 0a 0a 66 74 73 33 5f 68  3_expr.c..fts3_h
df70: 61 73 68 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65  ash.lo:.$(TOP)\e
df80: 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 68 61 73  xt\fts3\fts3_has
df90: 68 2e 63 20 24 28 48 44 52 29 20 24 28 45 58 54  h.c $(HDR) $(EXT
dfa0: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c  HDR)..$(LTCOMPIL
dfb0: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c  E) $(CORE_COMPIL
dfc0: 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57 41 52  E_OPTS) $(NO_WAR
dfd0: 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45  N) -DSQLITE_CORE
dfe0: 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 66   -c $(TOP)\ext\f
dff0: 74 73 33 5c 66 74 73 33 5f 68 61 73 68 2e 63 0a  ts3\fts3_hash.c.
e000: 0a 66 74 73 33 5f 69 63 75 2e 6c 6f 3a 09 24 28  .fts3_icu.lo:.$(
e010: 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74  TOP)\ext\fts3\ft
e020: 73 33 5f 69 63 75 2e 63 20 24 28 48 44 52 29 20  s3_icu.c $(HDR) 
e030: 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43  $(EXTHDR)..$(LTC
e040: 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43  OMPILE) $(CORE_C
e050: 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24 28 4e  OMPILE_OPTS) $(N
e060: 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 45  O_WARN) -DSQLITE
e070: 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 5c  _CORE -c $(TOP)\
e080: 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 69 63  ext\fts3\fts3_ic
e090: 75 2e 63 0a 0a 66 74 73 33 5f 73 6e 69 70 70 65  u.c..fts3_snippe
e0a0: 74 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74  t.lo:.$(TOP)\ext
e0b0: 5c 66 74 73 33 5c 66 74 73 33 5f 73 6e 69 70 70  \fts3\fts3_snipp
e0c0: 65 74 2e 63 20 24 28 48 44 52 29 20 24 28 45 58  et.c $(HDR) $(EX
e0d0: 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  THDR)..$(LTCOMPI
e0e0: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49  LE) $(CORE_COMPI
e0f0: 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57 41  LE_OPTS) $(NO_WA
e100: 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52  RN) -DSQLITE_COR
e110: 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c  E -c $(TOP)\ext\
e120: 66 74 73 33 5c 66 74 73 33 5f 73 6e 69 70 70 65  fts3\fts3_snippe
e130: 74 2e 63 0a 0a 66 74 73 33 5f 70 6f 72 74 65 72  t.c..fts3_porter
e140: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c  .lo:.$(TOP)\ext\
e150: 66 74 73 33 5c 66 74 73 33 5f 70 6f 72 74 65 72  fts3\fts3_porter
e160: 2e 63 20 24 28 48 44 52 29 20 24 28 45 58 54 48  .c $(HDR) $(EXTH
e170: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  DR)..$(LTCOMPILE
e180: 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45  ) $(CORE_COMPILE
e190: 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57 41 52 4e  _OPTS) $(NO_WARN
e1a0: 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 20  ) -DSQLITE_CORE 
e1b0: 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74  -c $(TOP)\ext\ft
e1c0: 73 33 5c 66 74 73 33 5f 70 6f 72 74 65 72 2e 63  s3\fts3_porter.c
e1d0: 0a 0a 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 72  ..fts3_tokenizer
e1e0: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c  .lo:.$(TOP)\ext\
e1f0: 66 74 73 33 5c 66 74 73 33 5f 74 6f 6b 65 6e 69  fts3\fts3_tokeni
e200: 7a 65 72 2e 63 20 24 28 48 44 52 29 20 24 28 45  zer.c $(HDR) $(E
e210: 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  XTHDR)..$(LTCOMP
e220: 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50  ILE) $(CORE_COMP
e230: 49 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57  ILE_OPTS) $(NO_W
e240: 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f  ARN) -DSQLITE_CO
e250: 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74  RE -c $(TOP)\ext
e260: 5c 66 74 73 33 5c 66 74 73 33 5f 74 6f 6b 65 6e  \fts3\fts3_token
e270: 69 7a 65 72 2e 63 0a 0a 66 74 73 33 5f 74 6f 6b  izer.c..fts3_tok
e280: 65 6e 69 7a 65 72 31 2e 6c 6f 3a 09 24 28 54 4f  enizer1.lo:.$(TO
e290: 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33  P)\ext\fts3\fts3
e2a0: 5f 74 6f 6b 65 6e 69 7a 65 72 31 2e 63 20 24 28  _tokenizer1.c $(
e2b0: 48 44 52 29 20 24 28 45 58 54 48 44 52 29 0a 09  HDR) $(EXTHDR)..
e2c0: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43  $(LTCOMPILE) $(C
e2d0: 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53  ORE_COMPILE_OPTS
e2e0: 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53  ) $(NO_WARN) -DS
e2f0: 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 28  QLITE_CORE -c $(
e300: 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74  TOP)\ext\fts3\ft
e310: 73 33 5f 74 6f 6b 65 6e 69 7a 65 72 31 2e 63 0a  s3_tokenizer1.c.
e320: 0a 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 5f 76  .fts3_tokenize_v
e330: 74 61 62 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65  tab.lo:.$(TOP)\e
e340: 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 74 6f 6b  xt\fts3\fts3_tok
e350: 65 6e 69 7a 65 5f 76 74 61 62 2e 63 20 24 28 48  enize_vtab.c $(H
e360: 44 52 29 20 24 28 45 58 54 48 44 52 29 0a 09 24  DR) $(EXTHDR)..$
e370: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f  (LTCOMPILE) $(CO
e380: 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29  RE_COMPILE_OPTS)
e390: 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51   $(NO_WARN) -DSQ
e3a0: 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54  LITE_CORE -c $(T
e3b0: 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73  OP)\ext\fts3\fts
e3c0: 33 5f 74 6f 6b 65 6e 69 7a 65 5f 76 74 61 62 2e  3_tokenize_vtab.
e3d0: 63 0a 0a 66 74 73 33 5f 75 6e 69 63 6f 64 65 2e  c..fts3_unicode.
e3e0: 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66  lo:.$(TOP)\ext\f
e3f0: 74 73 33 5c 66 74 73 33 5f 75 6e 69 63 6f 64 65  ts3\fts3_unicode
e400: 2e 63 20 24 28 48 44 52 29 20 24 28 45 58 54 48  .c $(HDR) $(EXTH
e410: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  DR)..$(LTCOMPILE
e420: 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45  ) $(CORE_COMPILE
e430: 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57 41 52 4e  _OPTS) $(NO_WARN
e440: 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 20  ) -DSQLITE_CORE 
e450: 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74  -c $(TOP)\ext\ft
e460: 73 33 5c 66 74 73 33 5f 75 6e 69 63 6f 64 65 2e  s3\fts3_unicode.
e470: 63 0a 0a 66 74 73 33 5f 75 6e 69 63 6f 64 65 32  c..fts3_unicode2
e480: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c  .lo:.$(TOP)\ext\
e490: 66 74 73 33 5c 66 74 73 33 5f 75 6e 69 63 6f 64  fts3\fts3_unicod
e4a0: 65 32 2e 63 20 24 28 48 44 52 29 20 24 28 45 58  e2.c $(HDR) $(EX
e4b0: 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  THDR)..$(LTCOMPI
e4c0: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49  LE) $(CORE_COMPI
e4d0: 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57 41  LE_OPTS) $(NO_WA
e4e0: 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52  RN) -DSQLITE_COR
e4f0: 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c  E -c $(TOP)\ext\
e500: 66 74 73 33 5c 66 74 73 33 5f 75 6e 69 63 6f 64  fts3\fts3_unicod
e510: 65 32 2e 63 0a 0a 66 74 73 33 5f 77 72 69 74 65  e2.c..fts3_write
e520: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c  .lo:.$(TOP)\ext\
e530: 66 74 73 33 5c 66 74 73 33 5f 77 72 69 74 65 2e  fts3\fts3_write.
e540: 63 20 24 28 48 44 52 29 20 24 28 45 58 54 48 44  c $(HDR) $(EXTHD
e550: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  R)..$(LTCOMPILE)
e560: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f   $(CORE_COMPILE_
e570: 4f 50 54 53 29 20 24 28 4e 4f 5f 57 41 52 4e 29  OPTS) $(NO_WARN)
e580: 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d   -DSQLITE_CORE -
e590: 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73  c $(TOP)\ext\fts
e5a0: 33 5c 66 74 73 33 5f 77 72 69 74 65 2e 63 0a 0a  3\fts3_write.c..
e5b0: 72 74 72 65 65 2e 6c 6f 3a 09 24 28 54 4f 50 29  rtree.lo:.$(TOP)
e5c0: 5c 65 78 74 5c 72 74 72 65 65 5c 72 74 72 65 65  \ext\rtree\rtree
e5d0: 2e 63 20 24 28 48 44 52 29 20 24 28 45 58 54 48  .c $(HDR) $(EXTH
e5e0: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  DR)..$(LTCOMPILE
e5f0: 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45  ) $(CORE_COMPILE
e600: 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57 41 52 4e  _OPTS) $(NO_WARN
e610: 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 20  ) -DSQLITE_CORE 
e620: 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 72 74  -c $(TOP)\ext\rt
e630: 72 65 65 5c 72 74 72 65 65 2e 63 0a 0a 73 71 6c  ree\rtree.c..sql
e640: 69 74 65 33 73 65 73 73 69 6f 6e 2e 6c 6f 3a 09  ite3session.lo:.
e650: 24 28 54 4f 50 29 5c 65 78 74 5c 73 65 73 73 69  $(TOP)\ext\sessi
e660: 6f 6e 5c 73 71 6c 69 74 65 33 73 65 73 73 69 6f  on\sqlite3sessio
e670: 6e 2e 63 20 24 28 48 44 52 29 20 24 28 45 58 54  n.c $(HDR) $(EXT
e680: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c  HDR)..$(LTCOMPIL
e690: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c  E) $(CORE_COMPIL
e6a0: 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57 41 52  E_OPTS) $(NO_WAR
e6b0: 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45  N) -DSQLITE_CORE
e6c0: 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 73   -c $(TOP)\ext\s
e6d0: 65 73 73 69 6f 6e 5c 73 71 6c 69 74 65 33 73 65  ession\sqlite3se
e6e0: 73 73 69 6f 6e 2e 63 0a 0a 23 20 46 54 53 35 20  ssion.c..# FTS5 
e6f0: 74 68 69 6e 67 73 0a 23 0a 46 54 53 35 5f 53 52  things.#.FTS5_SR
e700: 43 20 3d 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c  C = \.   $(TOP)\
e710: 65 78 74 5c 66 74 73 35 5c 66 74 73 35 2e 68 20  ext\fts5\fts5.h 
e720: 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65 78 74 5c  \.   $(TOP)\ext\
e730: 66 74 73 35 5c 66 74 73 35 49 6e 74 2e 68 20 5c  fts5\fts5Int.h \
e740: 0a 20 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66  .   $(TOP)\ext\f
e750: 74 73 35 5c 66 74 73 35 5f 61 75 78 2e 63 20 5c  ts5\fts5_aux.c \
e760: 0a 20 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66  .   $(TOP)\ext\f
e770: 74 73 35 5c 66 74 73 35 5f 62 75 66 66 65 72 2e  ts5\fts5_buffer.
e780: 63 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65 78  c \.   $(TOP)\ex
e790: 74 5c 66 74 73 35 5c 66 74 73 35 5f 6d 61 69 6e  t\fts5\fts5_main
e7a0: 2e 63 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65  .c \.   $(TOP)\e
e7b0: 78 74 5c 66 74 73 35 5c 66 74 73 35 5f 63 6f 6e  xt\fts5\fts5_con
e7c0: 66 69 67 2e 63 20 5c 0a 20 20 20 24 28 54 4f 50  fig.c \.   $(TOP
e7d0: 29 5c 65 78 74 5c 66 74 73 35 5c 66 74 73 35 5f  )\ext\fts5\fts5_
e7e0: 65 78 70 72 2e 63 20 5c 0a 20 20 20 24 28 54 4f  expr.c \.   $(TO
e7f0: 50 29 5c 65 78 74 5c 66 74 73 35 5c 66 74 73 35  P)\ext\fts5\fts5
e800: 5f 68 61 73 68 2e 63 20 5c 0a 20 20 20 24 28 54  _hash.c \.   $(T
e810: 4f 50 29 5c 65 78 74 5c 66 74 73 35 5c 66 74 73  OP)\ext\fts5\fts
e820: 35 5f 69 6e 64 65 78 2e 63 20 5c 0a 20 20 20 66  5_index.c \.   f
e830: 74 73 35 70 61 72 73 65 2e 63 20 66 74 73 35 70  ts5parse.c fts5p
e840: 61 72 73 65 2e 68 20 5c 0a 20 20 20 24 28 54 4f  arse.h \.   $(TO
e850: 50 29 5c 65 78 74 5c 66 74 73 35 5c 66 74 73 35  P)\ext\fts5\fts5
e860: 5f 73 74 6f 72 61 67 65 2e 63 20 5c 0a 20 20 20  _storage.c \.   
e870: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 35 5c  $(TOP)\ext\fts5\
e880: 66 74 73 35 5f 74 6f 6b 65 6e 69 7a 65 2e 63 20  fts5_tokenize.c 
e890: 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65 78 74 5c  \.   $(TOP)\ext\
e8a0: 66 74 73 35 5c 66 74 73 35 5f 75 6e 69 63 6f 64  fts5\fts5_unicod
e8b0: 65 32 2e 63 20 5c 0a 20 20 20 24 28 54 4f 50 29  e2.c \.   $(TOP)
e8c0: 5c 65 78 74 5c 66 74 73 35 5c 66 74 73 35 5f 76  \ext\fts5\fts5_v
e8d0: 61 72 69 6e 74 2e 63 20 5c 0a 20 20 20 24 28 54  arint.c \.   $(T
e8e0: 4f 50 29 5c 65 78 74 5c 66 74 73 35 5c 66 74 73  OP)\ext\fts5\fts
e8f0: 35 5f 76 6f 63 61 62 2e 63 0a 0a 66 74 73 35 70  5_vocab.c..fts5p
e900: 61 72 73 65 2e 63 3a 09 24 28 54 4f 50 29 5c 65  arse.c:.$(TOP)\e
e910: 78 74 5c 66 74 73 35 5c 66 74 73 35 70 61 72 73  xt\fts5\fts5pars
e920: 65 2e 79 20 6c 65 6d 6f 6e 2e 65 78 65 0a 09 63  e.y lemon.exe..c
e930: 6f 70 79 20 24 28 54 4f 50 29 5c 65 78 74 5c 66  opy $(TOP)\ext\f
e940: 74 73 35 5c 66 74 73 35 70 61 72 73 65 2e 79 20  ts5\fts5parse.y 
e950: 2e 0a 09 64 65 6c 20 2f 51 20 66 74 73 35 70 61  ...del /Q fts5pa
e960: 72 73 65 2e 68 20 32 3e 4e 55 4c 0a 09 2e 5c 6c  rse.h 2>NUL...\l
e970: 65 6d 6f 6e 2e 65 78 65 20 24 28 52 45 51 5f 46  emon.exe $(REQ_F
e980: 45 41 54 55 52 45 5f 46 4c 41 47 53 29 20 24 28  EATURE_FLAGS) $(
e990: 4f 50 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 47  OPT_FEATURE_FLAG
e9a0: 53 29 20 24 28 45 58 54 5f 46 45 41 54 55 52 45  S) $(EXT_FEATURE
e9b0: 5f 46 4c 41 47 53 29 20 24 28 4f 50 54 53 29 20  _FLAGS) $(OPTS) 
e9c0: 66 74 73 35 70 61 72 73 65 2e 79 0a 0a 66 74 73  fts5parse.y..fts
e9d0: 35 70 61 72 73 65 2e 68 3a 09 66 74 73 35 70 61  5parse.h:.fts5pa
e9e0: 72 73 65 2e 63 0a 0a 66 74 73 35 2e 63 3a 09 24  rse.c..fts5.c:.$
e9f0: 28 46 54 53 35 5f 53 52 43 29 0a 09 24 28 54 43  (FTS5_SRC)..$(TC
ea00: 4c 53 48 5f 43 4d 44 29 20 24 28 54 4f 50 29 5c  LSH_CMD) $(TOP)\
ea10: 65 78 74 5c 66 74 73 35 5c 74 6f 6f 6c 5c 6d 6b  ext\fts5\tool\mk
ea20: 66 74 73 35 63 2e 74 63 6c 0a 09 63 6f 70 79 20  fts5c.tcl..copy 
ea30: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 35 5c  $(TOP)\ext\fts5\
ea40: 66 74 73 35 2e 68 20 2e 0a 0a 66 74 73 35 2e 6c  fts5.h ...fts5.l
ea50: 6f 3a 09 66 74 73 35 2e 63 20 24 28 48 44 52 29  o:.fts5.c $(HDR)
ea60: 20 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54   $(EXTHDR)..$(LT
ea70: 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f  COMPILE) $(CORE_
ea80: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24 28  COMPILE_OPTS) $(
ea90: 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 54  NO_WARN) -DSQLIT
eaa0: 45 5f 43 4f 52 45 20 2d 63 20 66 74 73 35 2e 63  E_CORE -c fts5.c
eab0: 0a 0a 66 74 73 35 5f 65 78 74 2e 6c 6f 3a 09 66  ..fts5_ext.lo:.f
eac0: 74 73 35 2e 63 20 24 28 48 44 52 29 20 24 28 45  ts5.c $(HDR) $(E
ead0: 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  XTHDR)..$(LTCOMP
eae0: 49 4c 45 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20  ILE) $(NO_WARN) 
eaf0: 2d 63 20 66 74 73 35 2e 63 0a 0a 66 74 73 35 2e  -c fts5.c..fts5.
eb00: 64 6c 6c 3a 09 66 74 73 35 5f 65 78 74 2e 6c 6f  dll:.fts5_ext.lo
eb10: 0a 09 24 28 4c 44 29 20 24 28 4c 44 46 4c 41 47  ..$(LD) $(LDFLAG
eb20: 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29  S) $(LTLINKOPTS)
eb30: 20 24 28 4c 54 4c 49 42 50 41 54 48 53 29 20 2f   $(LTLIBPATHS) /
eb40: 44 4c 4c 20 2f 4f 55 54 3a 24 40 20 66 74 73 35  DLL /OUT:$@ fts5
eb50: 5f 65 78 74 2e 6c 6f 0a 0a 73 71 6c 69 74 65 33  _ext.lo..sqlite3
eb60: 72 62 75 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65  rbu.lo:.$(TOP)\e
eb70: 78 74 5c 72 62 75 5c 73 71 6c 69 74 65 33 72 62  xt\rbu\sqlite3rb
eb80: 75 2e 63 20 24 28 48 44 52 29 20 24 28 45 58 54  u.c $(HDR) $(EXT
eb90: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c  HDR)..$(LTCOMPIL
eba0: 45 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45  E) -DSQLITE_CORE
ebb0: 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 72   -c $(TOP)\ext\r
ebc0: 62 75 5c 73 71 6c 69 74 65 33 72 62 75 2e 63 0a  bu\sqlite3rbu.c.
ebd0: 0a 23 20 52 75 6c 65 73 20 74 6f 20 62 75 69 6c  .# Rules to buil
ebe0: 64 20 74 68 65 20 27 74 65 73 74 66 69 78 74 75  d the 'testfixtu
ebf0: 72 65 27 20 61 70 70 6c 69 63 61 74 69 6f 6e 2e  re' application.
ec00: 0a 23 0a 23 20 49 66 20 75 73 69 6e 67 20 74 68  .#.# If using th
ec10: 65 20 61 6d 61 6c 67 61 6d 61 74 69 6f 6e 2c 20  e amalgamation, 
ec20: 75 73 65 20 73 71 6c 69 74 65 33 2e 63 20 64 69  use sqlite3.c di
ec30: 72 65 63 74 6c 79 20 74 6f 20 62 75 69 6c 64 20  rectly to build 
ec40: 74 68 65 20 74 65 73 74 0a 23 20 66 69 78 74 75  the test.# fixtu
ec50: 72 65 2e 20 20 4f 74 68 65 72 77 69 73 65 20 6c  re.  Otherwise l
ec60: 69 6e 6b 20 61 67 61 69 6e 73 74 20 6c 69 62 73  ink against libs
ec70: 71 6c 69 74 65 33 2e 6c 69 62 2e 20 20 28 54 68  qlite3.lib.  (Th
ec80: 69 73 20 64 69 73 74 69 6e 63 74 69 6f 6e 20 69  is distinction i
ec90: 73 0a 23 20 6e 65 63 65 73 73 61 72 79 20 62 65  s.# necessary be
eca0: 63 61 75 73 65 20 74 68 65 20 74 65 73 74 20 66  cause the test f
ecb0: 69 78 74 75 72 65 20 72 65 71 75 69 72 65 73 20  ixture requires 
ecc0: 6e 6f 6e 2d 41 50 49 20 73 79 6d 62 6f 6c 73 20  non-API symbols 
ecd0: 77 68 69 63 68 20 61 72 65 0a 23 20 68 69 64 64  which are.# hidd
ece0: 65 6e 20 77 68 65 6e 20 74 68 65 20 6c 69 62 72  en when the libr
ecf0: 61 72 79 20 69 73 20 62 75 69 6c 74 20 76 69 61  ary is built via
ed00: 20 74 68 65 20 61 6d 61 6c 67 61 6d 61 74 69 6f   the amalgamatio
ed10: 6e 29 2e 0a 23 0a 54 45 53 54 46 49 58 54 55 52  n)..#.TESTFIXTUR
ed20: 45 5f 46 4c 41 47 53 20 3d 20 2d 44 54 43 4c 53  E_FLAGS = -DTCLS
ed30: 48 3d 31 20 2d 44 53 51 4c 49 54 45 5f 54 45 53  H=1 -DSQLITE_TES
ed40: 54 3d 31 20 2d 44 53 51 4c 49 54 45 5f 43 52 41  T=1 -DSQLITE_CRA
ed50: 53 48 5f 54 45 53 54 3d 31 0a 54 45 53 54 46 49  SH_TEST=1.TESTFI
ed60: 58 54 55 52 45 5f 46 4c 41 47 53 20 3d 20 24 28  XTURE_FLAGS = $(
ed70: 54 45 53 54 46 49 58 54 55 52 45 5f 46 4c 41 47  TESTFIXTURE_FLAG
ed80: 53 29 20 2d 44 53 51 4c 49 54 45 5f 53 45 52 56  S) -DSQLITE_SERV
ed90: 45 52 3d 31 20 2d 44 53 51 4c 49 54 45 5f 50 52  ER=1 -DSQLITE_PR
eda0: 49 56 41 54 45 3d 22 22 0a 54 45 53 54 46 49 58  IVATE="".TESTFIX
edb0: 54 55 52 45 5f 46 4c 41 47 53 20 3d 20 24 28 54  TURE_FLAGS = $(T
edc0: 45 53 54 46 49 58 54 55 52 45 5f 46 4c 41 47 53  ESTFIXTURE_FLAGS
edd0: 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 20  ) -DSQLITE_CORE 
ede0: 24 28 4e 4f 5f 57 41 52 4e 29 0a 54 45 53 54 46  $(NO_WARN).TESTF
edf0: 49 58 54 55 52 45 5f 46 4c 41 47 53 20 3d 20 24  IXTURE_FLAGS = $
ee00: 28 54 45 53 54 46 49 58 54 55 52 45 5f 46 4c 41  (TESTFIXTURE_FLA
ee10: 47 53 29 20 2d 44 53 51 4c 49 54 45 5f 53 45 52  GS) -DSQLITE_SER
ee20: 49 45 53 5f 43 4f 4e 53 54 52 41 49 4e 54 5f 56  IES_CONSTRAINT_V
ee30: 45 52 49 46 59 3d 31 0a 54 45 53 54 46 49 58 54  ERIFY=1.TESTFIXT
ee40: 55 52 45 5f 46 4c 41 47 53 20 3d 20 24 28 54 45  URE_FLAGS = $(TE
ee50: 53 54 46 49 58 54 55 52 45 5f 46 4c 41 47 53 29  STFIXTURE_FLAGS)
ee60: 20 2d 44 53 51 4c 49 54 45 5f 44 45 46 41 55 4c   -DSQLITE_DEFAUL
ee70: 54 5f 50 41 47 45 5f 53 49 5a 45 3d 31 30 32 34  T_PAGE_SIZE=1024
ee80: 0a 54 45 53 54 46 49 58 54 55 52 45 5f 46 4c 41  .TESTFIXTURE_FLA
ee90: 47 53 20 3d 20 24 28 54 45 53 54 46 49 58 54 55  GS = $(TESTFIXTU
eea0: 52 45 5f 46 4c 41 47 53 29 20 24 28 54 45 53 54  RE_FLAGS) $(TEST
eeb0: 5f 43 43 4f 4e 56 5f 4f 50 54 53 29 0a 0a 54 45  _CCONV_OPTS)..TE
eec0: 53 54 46 49 58 54 55 52 45 5f 53 52 43 30 20 3d  STFIXTURE_SRC0 =
eed0: 20 24 28 54 45 53 54 45 58 54 29 20 24 28 54 45   $(TESTEXT) $(TE
eee0: 53 54 53 52 43 32 29 0a 54 45 53 54 46 49 58 54  STSRC2).TESTFIXT
eef0: 55 52 45 5f 53 52 43 31 20 3d 20 24 28 54 45 53  URE_SRC1 = $(TES
ef00: 54 45 58 54 29 20 24 28 53 51 4c 49 54 45 33 43  TEXT) $(SQLITE3C
ef10: 29 0a 21 49 46 20 24 28 55 53 45 5f 41 4d 41 4c  ).!IF $(USE_AMAL
ef20: 47 41 4d 41 54 49 4f 4e 29 3d 3d 30 0a 54 45 53  GAMATION)==0.TES
ef30: 54 46 49 58 54 55 52 45 5f 53 52 43 20 3d 20 24  TFIXTURE_SRC = $
ef40: 28 54 45 53 54 53 52 43 29 20 24 28 54 4f 50 29  (TESTSRC) $(TOP)
ef50: 5c 73 72 63 5c 74 63 6c 73 71 6c 69 74 65 2e 63  \src\tclsqlite.c
ef60: 20 24 28 54 45 53 54 46 49 58 54 55 52 45 5f 53   $(TESTFIXTURE_S
ef70: 52 43 30 29 0a 21 45 4c 53 45 0a 54 45 53 54 46  RC0).!ELSE.TESTF
ef80: 49 58 54 55 52 45 5f 53 52 43 20 3d 20 24 28 54  IXTURE_SRC = $(T
ef90: 45 53 54 53 52 43 29 20 24 28 54 4f 50 29 5c 73  ESTSRC) $(TOP)\s
efa0: 72 63 5c 74 63 6c 73 71 6c 69 74 65 2e 63 20 24  rc\tclsqlite.c $
efb0: 28 54 45 53 54 46 49 58 54 55 52 45 5f 53 52 43  (TESTFIXTURE_SRC
efc0: 31 29 0a 21 45 4e 44 49 46 0a 0a 21 49 46 20 24  1).!ENDIF..!IF $
efd0: 28 55 53 45 5f 53 54 44 43 41 4c 4c 29 21 3d 30  (USE_STDCALL)!=0
efe0: 20 7c 7c 20 24 28 46 4f 52 5f 57 49 4e 31 30 29   || $(FOR_WIN10)
eff0: 21 3d 30 0a 73 71 6c 69 74 65 5f 74 63 6c 44 65  !=0.sqlite_tclDe
f000: 63 6c 73 2e 68 3a 0a 09 65 63 68 6f 20 23 69 66  cls.h:..echo #if
f010: 6e 64 65 66 20 53 51 4c 49 54 45 5f 54 43 4c 41  ndef SQLITE_TCLA
f020: 50 49 20 3e 20 24 28 53 51 4c 49 54 45 54 43 4c  PI > $(SQLITETCL
f030: 44 45 43 4c 53 48 29 0a 09 65 63 68 6f 20 23 20  DECLSH)..echo # 
f040: 20 64 65 66 69 6e 65 20 53 51 4c 49 54 45 5f 54   define SQLITE_T
f050: 43 4c 41 50 49 20 3e 3e 20 24 28 53 51 4c 49 54  CLAPI >> $(SQLIT
f060: 45 54 43 4c 44 45 43 4c 53 48 29 0a 09 65 63 68  ETCLDECLSH)..ech
f070: 6f 20 23 65 6e 64 69 66 20 3e 3e 20 24 28 53 51  o #endif >> $(SQ
f080: 4c 49 54 45 54 43 4c 44 45 43 4c 53 48 29 0a 09  LITETCLDECLSH)..
f090: 74 79 70 65 20 22 24 28 54 43 4c 49 4e 43 44 49  type "$(TCLINCDI
f0a0: 52 29 5c 74 63 6c 44 65 63 6c 73 2e 68 22 20 5c  R)\tclDecls.h" \
f0b0: 0a 09 09 7c 20 24 28 54 43 4c 53 48 5f 43 4d 44  ...| $(TCLSH_CMD
f0c0: 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 72 65  ) $(TOP)\tool\re
f0d0: 70 6c 61 63 65 2e 74 63 6c 20 72 65 67 73 75 62  place.tcl regsub
f0e0: 20 22 5e 28 45 58 54 45 52 4e 28 3f 3a 20 43 4f   "^(EXTERN(?: CO
f0f0: 4e 53 54 5c 64 2b 3f 29 3f 5c 73 2b 3f 5b 5e 5c  NST\d+?)?\s+?[^\
f100: 28 5d 2a 3f 5c 73 2b 3f 29 54 63 6c 5f 22 20 22  (]*?\s+?)Tcl_" "
f110: 5c 31 20 53 51 4c 49 54 45 5f 54 43 4c 41 50 49  \1 SQLITE_TCLAPI
f120: 20 54 63 6c 5f 22 20 5c 0a 09 09 7c 20 24 28 54   Tcl_" \...| $(T
f130: 43 4c 53 48 5f 43 4d 44 29 20 24 28 54 4f 50 29  CLSH_CMD) $(TOP)
f140: 5c 74 6f 6f 6c 5c 72 65 70 6c 61 63 65 2e 74 63  \tool\replace.tc
f150: 6c 20 72 65 67 73 75 62 20 22 5e 28 45 58 54 45  l regsub "^(EXTE
f160: 52 4e 5c 73 2b 3f 28 3f 3a 76 6f 69 64 7c 56 4f  RN\s+?(?:void|VO
f170: 49 44 29 5c 73 2b 3f 29 54 63 6c 46 72 65 65 4f  ID)\s+?)TclFreeO
f180: 62 6a 22 20 22 5c 31 20 53 51 4c 49 54 45 5f 54  bj" "\1 SQLITE_T
f190: 43 4c 41 50 49 20 54 63 6c 46 72 65 65 4f 62 6a  CLAPI TclFreeObj
f1a0: 22 20 5c 0a 09 09 7c 20 24 28 54 43 4c 53 48 5f  " \...| $(TCLSH_
f1b0: 43 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c  CMD) $(TOP)\tool
f1c0: 5c 72 65 70 6c 61 63 65 2e 74 63 6c 20 72 65 67  \replace.tcl reg
f1d0: 73 75 62 20 22 5c 28 5c 2a 74 63 6c 5f 22 20 22  sub "\(\*tcl_" "
f1e0: 28 53 51 4c 49 54 45 5f 54 43 4c 41 50 49 20 2a  (SQLITE_TCLAPI *
f1f0: 74 63 6c 5f 22 20 5c 0a 09 09 7c 20 24 28 54 43  tcl_" \...| $(TC
f200: 4c 53 48 5f 43 4d 44 29 20 24 28 54 4f 50 29 5c  LSH_CMD) $(TOP)\
f210: 74 6f 6f 6c 5c 72 65 70 6c 61 63 65 2e 74 63 6c  tool\replace.tcl
f220: 20 72 65 67 73 75 62 20 22 5c 28 5c 2a 74 63 6c   regsub "\(\*tcl
f230: 46 72 65 65 4f 62 6a 22 20 22 28 53 51 4c 49 54  FreeObj" "(SQLIT
f240: 45 5f 54 43 4c 41 50 49 20 2a 74 63 6c 46 72 65  E_TCLAPI *tclFre
f250: 65 4f 62 6a 22 20 5c 0a 09 09 7c 20 24 28 54 43  eObj" \...| $(TC
f260: 4c 53 48 5f 43 4d 44 29 20 24 28 54 4f 50 29 5c  LSH_CMD) $(TOP)\
f270: 74 6f 6f 6c 5c 72 65 70 6c 61 63 65 2e 74 63 6c  tool\replace.tcl
f280: 20 72 65 67 73 75 62 20 22 5c 28 5c 2a 22 20 22   regsub "\(\*" "
f290: 28 53 51 4c 49 54 45 5f 54 43 4c 41 50 49 20 2a  (SQLITE_TCLAPI *
f2a0: 22 20 3e 3e 20 24 28 53 51 4c 49 54 45 54 43 4c  " >> $(SQLITETCL
f2b0: 44 45 43 4c 53 48 29 0a 0a 73 71 6c 69 74 65 5f  DECLSH)..sqlite_
f2c0: 74 63 6c 2e 68 3a 0a 09 74 79 70 65 20 22 24 28  tcl.h:..type "$(
f2d0: 54 43 4c 49 4e 43 44 49 52 29 5c 74 63 6c 2e 68  TCLINCDIR)\tcl.h
f2e0: 22 20 7c 20 24 28 54 43 4c 53 48 5f 43 4d 44 29  " | $(TCLSH_CMD)
f2f0: 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 72 65 70   $(TOP)\tool\rep
f300: 6c 61 63 65 2e 74 63 6c 20 65 78 61 63 74 20 74  lace.tcl exact t
f310: 63 6c 44 65 63 6c 73 2e 68 20 73 71 6c 69 74 65  clDecls.h sqlite
f320: 5f 74 63 6c 44 65 63 6c 73 2e 68 20 5c 0a 09 09  _tclDecls.h \...
f330: 7c 20 24 28 54 43 4c 53 48 5f 43 4d 44 29 20 24  | $(TCLSH_CMD) $
f340: 28 54 4f 50 29 5c 74 6f 6f 6c 5c 72 65 70 6c 61  (TOP)\tool\repla
f350: 63 65 2e 74 63 6c 20 72 65 67 73 75 62 20 22 74  ce.tcl regsub "t
f360: 79 70 65 64 65 66 20 28 2e 2a 3f 29 5c 28 54 63  ypedef (.*?)\(Tc
f370: 6c 5f 22 20 22 74 79 70 65 64 65 66 20 5c 31 20  l_" "typedef \1 
f380: 28 53 51 4c 49 54 45 5f 54 43 4c 41 50 49 20 54  (SQLITE_TCLAPI T
f390: 63 6c 5f 22 20 5c 0a 09 09 7c 20 24 28 54 43 4c  cl_" \...| $(TCL
f3a0: 53 48 5f 43 4d 44 29 20 24 28 54 4f 50 29 5c 74  SH_CMD) $(TOP)\t
f3b0: 6f 6f 6c 5c 72 65 70 6c 61 63 65 2e 74 63 6c 20  ool\replace.tcl 
f3c0: 65 78 61 63 74 20 22 76 6f 69 64 20 28 2a 66 72  exact "void (*fr
f3d0: 65 65 50 72 6f 63 29 22 20 22 76 6f 69 64 20 28  eeProc)" "void (
f3e0: 53 51 4c 49 54 45 5f 54 43 4c 41 50 49 20 2a 66  SQLITE_TCLAPI *f
f3f0: 72 65 65 50 72 6f 63 29 22 20 5c 0a 09 09 7c 20  reeProc)" \...| 
f400: 24 28 54 43 4c 53 48 5f 43 4d 44 29 20 24 28 54  $(TCLSH_CMD) $(T
f410: 4f 50 29 5c 74 6f 6f 6c 5c 72 65 70 6c 61 63 65  OP)\tool\replace
f420: 2e 74 63 6c 20 65 78 61 63 74 20 22 54 63 6c 5f  .tcl exact "Tcl_
f430: 48 61 73 68 45 6e 74 72 79 20 2a 28 2a 66 69 6e  HashEntry *(*fin
f440: 64 50 72 6f 63 29 22 20 22 54 63 6c 5f 48 61 73  dProc)" "Tcl_Has
f450: 68 45 6e 74 72 79 20 2a 28 53 51 4c 49 54 45 5f  hEntry *(SQLITE_
f460: 54 43 4c 41 50 49 20 2a 66 69 6e 64 50 72 6f 63  TCLAPI *findProc
f470: 29 22 20 5c 0a 09 09 7c 20 24 28 54 43 4c 53 48  )" \...| $(TCLSH
f480: 5f 43 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f 6f  _CMD) $(TOP)\too
f490: 6c 5c 72 65 70 6c 61 63 65 2e 74 63 6c 20 65 78  l\replace.tcl ex
f4a0: 61 63 74 20 22 54 63 6c 5f 48 61 73 68 45 6e 74  act "Tcl_HashEnt
f4b0: 72 79 20 2a 28 2a 63 72 65 61 74 65 50 72 6f 63  ry *(*createProc
f4c0: 29 22 20 22 54 63 6c 5f 48 61 73 68 45 6e 74 72  )" "Tcl_HashEntr
f4d0: 79 20 2a 28 53 51 4c 49 54 45 5f 54 43 4c 41 50  y *(SQLITE_TCLAP
f4e0: 49 20 2a 63 72 65 61 74 65 50 72 6f 63 29 22 20  I *createProc)" 
f4f0: 3e 3e 20 24 28 53 51 4c 49 54 45 54 43 4c 48 29  >> $(SQLITETCLH)
f500: 0a 21 45 4e 44 49 46 0a 0a 74 65 73 74 66 69 78  .!ENDIF..testfix
f510: 74 75 72 65 2e 65 78 65 3a 09 24 28 54 45 53 54  ture.exe:.$(TEST
f520: 46 49 58 54 55 52 45 5f 53 52 43 29 20 24 28 53  FIXTURE_SRC) $(S
f530: 51 4c 49 54 45 33 48 29 20 24 28 4c 49 42 52 45  QLITE3H) $(LIBRE
f540: 53 4f 42 4a 53 29 20 24 28 48 44 52 29 20 24 28  SOBJS) $(HDR) $(
f550: 53 51 4c 49 54 45 5f 54 43 4c 5f 44 45 50 29 0a  SQLITE_TCL_DEP).
f560: 09 24 28 4c 54 4c 49 4e 4b 29 20 2d 44 53 51 4c  .$(LTLINK) -DSQL
f570: 49 54 45 5f 4e 4f 5f 53 59 4e 43 3d 31 20 24 28  ITE_NO_SYNC=1 $(
f580: 54 45 53 54 46 49 58 54 55 52 45 5f 46 4c 41 47  TESTFIXTURE_FLAG
f590: 53 29 20 5c 0a 09 09 2d 44 42 55 49 4c 44 5f 73  S) \...-DBUILD_s
f5a0: 71 6c 69 74 65 20 2d 49 24 28 54 43 4c 49 4e 43  qlite -I$(TCLINC
f5b0: 44 49 52 29 20 5c 0a 09 09 24 28 54 45 53 54 46  DIR) \...$(TESTF
f5c0: 49 58 54 55 52 45 5f 53 52 43 29 20 5c 0a 09 09  IXTURE_SRC) \...
f5d0: 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 47 53 29  /link $(LDFLAGS)
f5e0: 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 24   $(LTLINKOPTS) $
f5f0: 28 4c 54 4c 49 42 50 41 54 48 53 29 20 24 28 4c  (LTLIBPATHS) $(L
f600: 49 42 52 45 53 4f 42 4a 53 29 20 24 28 4c 54 4c  IBRESOBJS) $(LTL
f610: 49 42 53 29 20 24 28 54 4c 49 42 53 29 0a 0a 65  IBS) $(TLIBS)..e
f620: 78 74 65 6e 73 69 6f 6e 74 65 73 74 3a 09 74 65  xtensiontest:.te
f630: 73 74 66 69 78 74 75 72 65 2e 65 78 65 20 74 65  stfixture.exe te
f640: 73 74 6c 6f 61 64 65 78 74 2e 64 6c 6c 0a 09 40  stloadext.dll..@
f650: 73 65 74 20 50 41 54 48 3d 24 28 4c 49 42 54 43  set PATH=$(LIBTC
f660: 4c 50 41 54 48 29 3b 24 28 50 41 54 48 29 0a 09  LPATH);$(PATH)..
f670: 2e 5c 74 65 73 74 66 69 78 74 75 72 65 2e 65 78  .\testfixture.ex
f680: 65 20 24 28 54 4f 50 29 5c 74 65 73 74 5c 6c 6f  e $(TOP)\test\lo
f690: 61 64 65 78 74 2e 74 65 73 74 20 24 28 54 45 53  adext.test $(TES
f6a0: 54 4f 50 54 53 29 0a 0a 66 75 6c 6c 74 65 73 74  TOPTS)..fulltest
f6b0: 3a 09 24 28 54 45 53 54 50 52 4f 47 53 29 20 66  :.$(TESTPROGS) f
f6c0: 75 7a 7a 74 65 73 74 0a 09 40 73 65 74 20 50 41  uzztest..@set PA
f6d0: 54 48 3d 24 28 4c 49 42 54 43 4c 50 41 54 48 29  TH=$(LIBTCLPATH)
f6e0: 3b 24 28 50 41 54 48 29 0a 09 2e 5c 74 65 73 74  ;$(PATH)...\test
f6f0: 66 69 78 74 75 72 65 2e 65 78 65 20 24 28 54 4f  fixture.exe $(TO
f700: 50 29 5c 74 65 73 74 5c 61 6c 6c 2e 74 65 73 74  P)\test\all.test
f710: 20 24 28 54 45 53 54 4f 50 54 53 29 0a 0a 73 6f   $(TESTOPTS)..so
f720: 61 6b 74 65 73 74 3a 09 24 28 54 45 53 54 50 52  aktest:.$(TESTPR
f730: 4f 47 53 29 0a 09 40 73 65 74 20 50 41 54 48 3d  OGS)..@set PATH=
f740: 24 28 4c 49 42 54 43 4c 50 41 54 48 29 3b 24 28  $(LIBTCLPATH);$(
f750: 50 41 54 48 29 0a 09 2e 5c 74 65 73 74 66 69 78  PATH)...\testfix
f760: 74 75 72 65 2e 65 78 65 20 24 28 54 4f 50 29 5c  ture.exe $(TOP)\
f770: 74 65 73 74 5c 61 6c 6c 2e 74 65 73 74 20 2d 73  test\all.test -s
f780: 6f 61 6b 3d 31 20 24 28 54 45 53 54 4f 50 54 53  oak=1 $(TESTOPTS
f790: 29 0a 0a 66 75 6c 6c 74 65 73 74 6f 6e 6c 79 3a  )..fulltestonly:
f7a0: 09 24 28 54 45 53 54 50 52 4f 47 53 29 20 66 75  .$(TESTPROGS) fu
f7b0: 7a 7a 74 65 73 74 0a 09 40 73 65 74 20 50 41 54  zztest..@set PAT
f7c0: 48 3d 24 28 4c 49 42 54 43 4c 50 41 54 48 29 3b  H=$(LIBTCLPATH);
f7d0: 24 28 50 41 54 48 29 0a 09 2e 5c 74 65 73 74 66  $(PATH)...\testf
f7e0: 69 78 74 75 72 65 2e 65 78 65 20 24 28 54 4f 50  ixture.exe $(TOP
f7f0: 29 5c 74 65 73 74 5c 66 75 6c 6c 2e 74 65 73 74  )\test\full.test
f800: 0a 0a 71 75 65 72 79 70 6c 61 6e 74 65 73 74 3a  ..queryplantest:
f810: 09 74 65 73 74 66 69 78 74 75 72 65 2e 65 78 65  .testfixture.exe
f820: 20 73 68 65 6c 6c 0a 09 40 73 65 74 20 50 41 54   shell..@set PAT
f830: 48 3d 24 28 4c 49 42 54 43 4c 50 41 54 48 29 3b  H=$(LIBTCLPATH);
f840: 24 28 50 41 54 48 29 0a 09 2e 5c 74 65 73 74 66  $(PATH)...\testf
f850: 69 78 74 75 72 65 2e 65 78 65 20 24 28 54 4f 50  ixture.exe $(TOP
f860: 29 5c 74 65 73 74 5c 70 65 72 6d 75 74 61 74 69  )\test\permutati
f870: 6f 6e 73 2e 74 65 73 74 20 71 75 65 72 79 70 6c  ons.test querypl
f880: 61 6e 6e 65 72 20 24 28 54 45 53 54 4f 50 54 53  anner $(TESTOPTS
f890: 29 0a 0a 66 75 7a 7a 74 65 73 74 3a 09 66 75 7a  )..fuzztest:.fuz
f8a0: 7a 63 68 65 63 6b 2e 65 78 65 0a 09 2e 5c 66 75  zcheck.exe...\fu
f8b0: 7a 7a 63 68 65 63 6b 2e 65 78 65 20 24 28 46 55  zzcheck.exe $(FU
f8c0: 5a 5a 44 41 54 41 29 0a 0a 66 61 73 74 66 75 7a  ZZDATA)..fastfuz
f8d0: 7a 74 65 73 74 3a 09 66 75 7a 7a 63 68 65 63 6b  ztest:.fuzzcheck
f8e0: 2e 65 78 65 0a 09 2e 5c 66 75 7a 7a 63 68 65 63  .exe...\fuzzchec
f8f0: 6b 2e 65 78 65 20 2d 2d 6c 69 6d 69 74 2d 6d 65  k.exe --limit-me
f900: 6d 20 31 30 30 4d 20 24 28 46 55 5a 5a 44 41 54  m 100M $(FUZZDAT
f910: 41 29 0a 0a 23 20 4d 69 6e 69 6d 61 6c 20 74 65  A)..# Minimal te
f920: 73 74 69 6e 67 20 74 68 61 74 20 72 75 6e 73 20  sting that runs 
f930: 69 6e 20 6c 65 73 73 20 74 68 61 6e 20 33 20 6d  in less than 3 m
f940: 69 6e 75 74 65 73 20 28 6f 6e 20 61 20 66 61 73  inutes (on a fas
f950: 74 20 6d 61 63 68 69 6e 65 29 0a 23 0a 71 75 69  t machine).#.qui
f960: 63 6b 74 65 73 74 3a 09 74 65 73 74 66 69 78 74  cktest:.testfixt
f970: 75 72 65 2e 65 78 65 20 73 6f 75 72 63 65 74 65  ure.exe sourcete
f980: 73 74 0a 09 40 73 65 74 20 50 41 54 48 3d 24 28  st..@set PATH=$(
f990: 4c 49 42 54 43 4c 50 41 54 48 29 3b 24 28 50 41  LIBTCLPATH);$(PA
f9a0: 54 48 29 0a 09 2e 5c 74 65 73 74 66 69 78 74 75  TH)...\testfixtu
f9b0: 72 65 2e 65 78 65 20 24 28 54 4f 50 29 5c 74 65  re.exe $(TOP)\te
f9c0: 73 74 5c 65 78 74 72 61 71 75 69 63 6b 2e 74 65  st\extraquick.te
f9d0: 73 74 20 24 28 54 45 53 54 4f 50 54 53 29 0a 0a  st $(TESTOPTS)..
f9e0: 23 20 54 68 69 73 20 69 73 20 74 68 65 20 63 6f  # This is the co
f9f0: 6d 6d 6f 6e 20 63 61 73 65 2e 20 20 52 75 6e 20  mmon case.  Run 
fa00: 6d 61 6e 79 20 74 65 73 74 73 20 74 68 61 74 20  many tests that 
fa10: 64 6f 20 6e 6f 74 20 74 61 6b 65 20 74 6f 6f 20  do not take too 
fa20: 6c 6f 6e 67 2c 0a 23 20 69 6e 63 6c 75 64 69 6e  long,.# includin
fa30: 67 20 66 75 7a 7a 63 68 65 63 6b 2c 20 73 71 6c  g fuzzcheck, sql
fa40: 69 74 65 33 5f 61 6e 61 6c 79 7a 65 72 2c 20 61  ite3_analyzer, a
fa50: 6e 64 20 73 71 6c 64 69 66 66 20 74 65 73 74 73  nd sqldiff tests
fa60: 2e 0a 23 0a 74 65 73 74 3a 09 24 28 54 45 53 54  ..#.test:.$(TEST
fa70: 50 52 4f 47 53 29 20 73 6f 75 72 63 65 74 65 73  PROGS) sourcetes
fa80: 74 20 66 61 73 74 66 75 7a 7a 74 65 73 74 0a 09  t fastfuzztest..
fa90: 40 73 65 74 20 50 41 54 48 3d 24 28 4c 49 42 54  @set PATH=$(LIBT
faa0: 43 4c 50 41 54 48 29 3b 24 28 50 41 54 48 29 0a  CLPATH);$(PATH).
fab0: 09 2e 5c 74 65 73 74 66 69 78 74 75 72 65 2e 65  ..\testfixture.e
fac0: 78 65 20 24 28 54 4f 50 29 5c 74 65 73 74 5c 76  xe $(TOP)\test\v
fad0: 65 72 79 71 75 69 63 6b 2e 74 65 73 74 20 24 28  eryquick.test $(
fae0: 54 45 53 54 4f 50 54 53 29 0a 0a 73 6d 6f 6b 65  TESTOPTS)..smoke
faf0: 74 65 73 74 3a 09 24 28 54 45 53 54 50 52 4f 47  test:.$(TESTPROG
fb00: 53 29 0a 09 40 73 65 74 20 50 41 54 48 3d 24 28  S)..@set PATH=$(
fb10: 4c 49 42 54 43 4c 50 41 54 48 29 3b 24 28 50 41  LIBTCLPATH);$(PA
fb20: 54 48 29 0a 09 2e 5c 74 65 73 74 66 69 78 74 75  TH)...\testfixtu
fb30: 72 65 2e 65 78 65 20 24 28 54 4f 50 29 5c 74 65  re.exe $(TOP)\te
fb40: 73 74 5c 6d 61 69 6e 2e 74 65 73 74 20 24 28 54  st\main.test $(T
fb50: 45 53 54 4f 50 54 53 29 0a 0a 73 71 6c 69 74 65  ESTOPTS)..sqlite
fb60: 33 5f 61 6e 61 6c 79 7a 65 72 2e 63 3a 09 24 28  3_analyzer.c:.$(
fb70: 53 51 4c 49 54 45 33 43 29 20 24 28 53 51 4c 49  SQLITE3C) $(SQLI
fb80: 54 45 33 48 29 20 24 28 54 4f 50 29 5c 73 72 63  TE3H) $(TOP)\src
fb90: 5c 74 63 6c 73 71 6c 69 74 65 2e 63 20 24 28 54  \tclsqlite.c $(T
fba0: 4f 50 29 5c 74 6f 6f 6c 5c 73 70 61 63 65 61 6e  OP)\tool\spacean
fbb0: 61 6c 2e 74 63 6c 20 24 28 53 51 4c 49 54 45 5f  al.tcl $(SQLITE_
fbc0: 54 43 4c 5f 44 45 50 29 0a 09 65 63 68 6f 20 23  TCL_DEP)..echo #
fbd0: 64 65 66 69 6e 65 20 54 43 4c 53 48 20 32 20 3e  define TCLSH 2 >
fbe0: 20 24 40 0a 09 65 63 68 6f 20 23 64 65 66 69 6e   $@..echo #defin
fbf0: 65 20 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f  e SQLITE_ENABLE_
fc00: 44 42 53 54 41 54 5f 56 54 41 42 20 31 20 3e 3e  DBSTAT_VTAB 1 >>
fc10: 20 24 40 0a 09 63 6f 70 79 20 24 40 20 2b 20 24   $@..copy $@ + $
fc20: 28 53 51 4c 49 54 45 33 43 29 20 2b 20 24 28 54  (SQLITE3C) + $(T
fc30: 4f 50 29 5c 73 72 63 5c 74 63 6c 73 71 6c 69 74  OP)\src\tclsqlit
fc40: 65 2e 63 20 24 40 0a 09 65 63 68 6f 20 73 74 61  e.c $@..echo sta
fc50: 74 69 63 20 63 6f 6e 73 74 20 63 68 61 72 20 2a  tic const char *
fc60: 74 63 6c 73 68 5f 6d 61 69 6e 5f 6c 6f 6f 70 28  tclsh_main_loop(
fc70: 76 6f 69 64 29 7b 20 3e 3e 20 24 40 0a 09 65 63  void){ >> $@..ec
fc80: 68 6f 20 73 74 61 74 69 63 20 63 6f 6e 73 74 20  ho static const 
fc90: 63 68 61 72 20 2a 7a 4d 61 69 6e 6c 6f 6f 70 20  char *zMainloop 
fca0: 3d 20 3e 3e 20 24 40 0a 09 24 28 54 43 4c 53 48  = >> $@..$(TCLSH
fcb0: 5f 43 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f 6f  _CMD) $(TOP)\too
fcc0: 6c 5c 74 6f 73 74 72 2e 74 63 6c 20 24 28 54 4f  l\tostr.tcl $(TO
fcd0: 50 29 5c 74 6f 6f 6c 5c 73 70 61 63 65 61 6e 61  P)\tool\spaceana
fce0: 6c 2e 74 63 6c 20 3e 3e 20 24 40 0a 09 65 63 68  l.tcl >> $@..ech
fcf0: 6f 20 3b 20 72 65 74 75 72 6e 20 7a 4d 61 69 6e  o ; return zMain
fd00: 6c 6f 6f 70 3b 20 7d 20 3e 3e 20 24 40 0a 0a 73  loop; } >> $@..s
fd10: 71 6c 69 74 65 33 5f 61 6e 61 6c 79 7a 65 72 2e  qlite3_analyzer.
fd20: 65 78 65 3a 09 73 71 6c 69 74 65 33 5f 61 6e 61  exe:.sqlite3_ana
fd30: 6c 79 7a 65 72 2e 63 20 24 28 4c 49 42 52 45 53  lyzer.c $(LIBRES
fd40: 4f 42 4a 53 29 0a 09 24 28 4c 54 4c 49 4e 4b 29  OBJS)..$(LTLINK)
fd50: 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 42 55   $(NO_WARN) -DBU
fd60: 49 4c 44 5f 73 71 6c 69 74 65 20 2d 49 24 28 54  ILD_sqlite -I$(T
fd70: 43 4c 49 4e 43 44 49 52 29 20 73 71 6c 69 74 65  CLINCDIR) sqlite
fd80: 33 5f 61 6e 61 6c 79 7a 65 72 2e 63 20 5c 0a 09  3_analyzer.c \..
fd90: 09 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 47 53  ./link $(LDFLAGS
fda0: 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20  ) $(LTLINKOPTS) 
fdb0: 24 28 4c 54 4c 49 42 50 41 54 48 53 29 20 24 28  $(LTLIBPATHS) $(
fdc0: 4c 49 42 52 45 53 4f 42 4a 53 29 20 24 28 4c 54  LIBRESOBJS) $(LT
fdd0: 4c 49 42 53 29 20 24 28 54 4c 49 42 53 29 0a 0a  LIBS) $(TLIBS)..
fde0: 74 65 73 74 6c 6f 61 64 65 78 74 2e 6c 6f 3a 09  testloadext.lo:.
fdf0: 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f  $(TOP)\src\test_
fe00: 6c 6f 61 64 65 78 74 2e 63 0a 09 24 28 4c 54 43  loadext.c..$(LTC
fe10: 4f 4d 50 49 4c 45 29 20 24 28 4e 4f 5f 57 41 52  OMPILE) $(NO_WAR
fe20: 4e 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63  N) -c $(TOP)\src
fe30: 5c 74 65 73 74 5f 6c 6f 61 64 65 78 74 2e 63 0a  \test_loadext.c.
fe40: 0a 74 65 73 74 6c 6f 61 64 65 78 74 2e 64 6c 6c  .testloadext.dll
fe50: 3a 09 74 65 73 74 6c 6f 61 64 65 78 74 2e 6c 6f  :.testloadext.lo
fe60: 0a 09 24 28 4c 44 29 20 24 28 4c 44 46 4c 41 47  ..$(LD) $(LDFLAG
fe70: 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29  S) $(LTLINKOPTS)
fe80: 20 24 28 4c 54 4c 49 42 50 41 54 48 53 29 20 2f   $(LTLIBPATHS) /
fe90: 44 4c 4c 20 2f 4f 55 54 3a 24 40 20 74 65 73 74  DLL /OUT:$@ test
fea0: 6c 6f 61 64 65 78 74 2e 6c 6f 0a 0a 73 68 6f 77  loadext.lo..show
feb0: 64 62 2e 65 78 65 3a 09 24 28 54 4f 50 29 5c 74  db.exe:.$(TOP)\t
fec0: 6f 6f 6c 5c 73 68 6f 77 64 62 2e 63 20 24 28 53  ool\showdb.c $(S
fed0: 51 4c 49 54 45 33 43 29 20 24 28 53 51 4c 49 54  QLITE3C) $(SQLIT
fee0: 45 33 48 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20  E3H)..$(LTLINK) 
fef0: 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c  $(NO_WARN) -DSQL
ff00: 49 54 45 5f 54 48 52 45 41 44 53 41 46 45 3d 30  ITE_THREADSAFE=0
ff10: 20 2d 44 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 4c   -DSQLITE_OMIT_L
ff20: 4f 41 44 5f 45 58 54 45 4e 53 49 4f 4e 20 5c 0a  OAD_EXTENSION \.
ff30: 09 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 68  ..$(TOP)\tool\sh
ff40: 6f 77 64 62 2e 63 20 24 28 53 51 4c 49 54 45 33  owdb.c $(SQLITE3
ff50: 43 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41  C) /link $(LDFLA
ff60: 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53  GS) $(LTLINKOPTS
ff70: 29 0a 0a 73 68 6f 77 73 74 61 74 34 2e 65 78 65  )..showstat4.exe
ff80: 3a 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 68  :.$(TOP)\tool\sh
ff90: 6f 77 73 74 61 74 34 2e 63 20 24 28 53 51 4c 49  owstat4.c $(SQLI
ffa0: 54 45 33 43 29 20 24 28 53 51 4c 49 54 45 33 48  TE3C) $(SQLITE3H
ffb0: 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e  )..$(LTLINK) $(N
ffc0: 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 45  O_WARN) -DSQLITE
ffd0: 5f 54 48 52 45 41 44 53 41 46 45 3d 30 20 2d 44  _THREADSAFE=0 -D
ffe0: 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 4c 4f 41 44  SQLITE_OMIT_LOAD
fff0: 5f 45 58 54 45 4e 53 49 4f 4e 20 5c 0a 09 09 24  _EXTENSION \...$
10000 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 68 6f 77 73  (TOP)\tool\shows
10010 74 61 74 34 2e 63 20 24 28 53 51 4c 49 54 45 33  tat4.c $(SQLITE3
10020 43 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41  C) /link $(LDFLA
10030 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53  GS) $(LTLINKOPTS
10040 29 0a 0a 73 68 6f 77 6a 6f 75 72 6e 61 6c 2e 65  )..showjournal.e
10050 78 65 3a 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c  xe:.$(TOP)\tool\
10060 73 68 6f 77 6a 6f 75 72 6e 61 6c 2e 63 20 24 28  showjournal.c $(
10070 53 51 4c 49 54 45 33 43 29 20 24 28 53 51 4c 49  SQLITE3C) $(SQLI
10080 54 45 33 48 29 0a 09 24 28 4c 54 4c 49 4e 4b 29  TE3H)..$(LTLINK)
10090 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51   $(NO_WARN) -DSQ
100a0 4c 49 54 45 5f 54 48 52 45 41 44 53 41 46 45 3d  LITE_THREADSAFE=
100b0 30 20 2d 44 53 51 4c 49 54 45 5f 4f 4d 49 54 5f  0 -DSQLITE_OMIT_
100c0 4c 4f 41 44 5f 45 58 54 45 4e 53 49 4f 4e 20 5c  LOAD_EXTENSION \
100d0 0a 09 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73  ...$(TOP)\tool\s
100e0 68 6f 77 6a 6f 75 72 6e 61 6c 2e 63 20 24 28 53  howjournal.c $(S
100f0 51 4c 49 54 45 33 43 29 20 2f 6c 69 6e 6b 20 24  QLITE3C) /link $
10100 28 4c 44 46 4c 41 47 53 29 20 24 28 4c 54 4c 49  (LDFLAGS) $(LTLI
10110 4e 4b 4f 50 54 53 29 0a 0a 73 68 6f 77 77 61 6c  NKOPTS)..showwal
10120 2e 65 78 65 3a 09 24 28 54 4f 50 29 5c 74 6f 6f  .exe:.$(TOP)\too
10130 6c 5c 73 68 6f 77 77 61 6c 2e 63 20 24 28 53 51  l\showwal.c $(SQ
10140 4c 49 54 45 33 43 29 20 24 28 53 51 4c 49 54 45  LITE3C) $(SQLITE
10150 33 48 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24  3H)..$(LTLINK) $
10160 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49  (NO_WARN) -DSQLI
10170 54 45 5f 54 48 52 45 41 44 53 41 46 45 3d 30 20  TE_THREADSAFE=0 
10180 2d 44 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 4c 4f  -DSQLITE_OMIT_LO
10190 41 44 5f 45 58 54 45 4e 53 49 4f 4e 20 5c 0a 09  AD_EXTENSION \..
101a0 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 68 6f  .$(TOP)\tool\sho
101b0 77 77 61 6c 2e 63 20 24 28 53 51 4c 49 54 45 33  wwal.c $(SQLITE3
101c0 43 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41  C) /link $(LDFLA
101d0 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53  GS) $(LTLINKOPTS
101e0 29 0a 0a 63 68 61 6e 67 65 73 65 74 2e 65 78 65  )..changeset.exe
101f0 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 73 65 73  :.$(TOP)\ext\ses
10200 73 69 6f 6e 5c 63 68 61 6e 67 65 73 65 74 2e 63  sion\changeset.c
10210 20 24 28 53 51 4c 49 54 45 33 43 29 20 24 28 53   $(SQLITE3C) $(S
10220 51 4c 49 54 45 33 48 29 0a 09 24 28 4c 54 4c 49  QLITE3H)..$(LTLI
10230 4e 4b 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d  NK) $(NO_WARN) -
10240 44 53 51 4c 49 54 45 5f 54 48 52 45 41 44 53 41  DSQLITE_THREADSA
10250 46 45 3d 30 20 2d 44 53 51 4c 49 54 45 5f 4f 4d  FE=0 -DSQLITE_OM
10260 49 54 5f 4c 4f 41 44 5f 45 58 54 45 4e 53 49 4f  IT_LOAD_EXTENSIO
10270 4e 20 5c 0a 09 09 2d 44 53 51 4c 49 54 45 5f 45  N \...-DSQLITE_E
10280 4e 41 42 4c 45 5f 53 45 53 53 49 4f 4e 3d 31 20  NABLE_SESSION=1 
10290 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f  -DSQLITE_ENABLE_
102a0 50 52 45 55 50 44 41 54 45 5f 48 4f 4f 4b 3d 31  PREUPDATE_HOOK=1
102b0 20 5c 0a 09 09 24 28 54 4f 50 29 5c 65 78 74 5c   \...$(TOP)\ext\
102c0 73 65 73 73 69 6f 6e 5c 63 68 61 6e 67 65 73 65  session\changese
102d0 74 2e 63 20 24 28 53 51 4c 49 54 45 33 43 29 20  t.c $(SQLITE3C) 
102e0 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 47 53 29  /link $(LDFLAGS)
102f0 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 0a 0a   $(LTLINKOPTS)..
10300 66 74 73 33 76 69 65 77 2e 65 78 65 3a 09 24 28  fts3view.exe:.$(
10310 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 74 6f  TOP)\ext\fts3\to
10320 6f 6c 5c 66 74 73 33 76 69 65 77 2e 63 20 24 28  ol\fts3view.c $(
10330 53 51 4c 49 54 45 33 43 29 20 24 28 53 51 4c 49  SQLITE3C) $(SQLI
10340 54 45 33 48 29 0a 09 24 28 4c 54 4c 49 4e 4b 29  TE3H)..$(LTLINK)
10350 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51   $(NO_WARN) -DSQ
10360 4c 49 54 45 5f 54 48 52 45 41 44 53 41 46 45 3d  LITE_THREADSAFE=
10370 30 20 2d 44 53 51 4c 49 54 45 5f 4f 4d 49 54 5f  0 -DSQLITE_OMIT_
10380 4c 4f 41 44 5f 45 58 54 45 4e 53 49 4f 4e 20 5c  LOAD_EXTENSION \
10390 0a 09 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 74  ...$(TOP)\ext\ft
103a0 73 33 5c 74 6f 6f 6c 5c 66 74 73 33 76 69 65 77  s3\tool\fts3view
103b0 2e 63 20 24 28 53 51 4c 49 54 45 33 43 29 20 2f  .c $(SQLITE3C) /
103c0 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 47 53 29 20  link $(LDFLAGS) 
103d0 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 0a 0a 72  $(LTLINKOPTS)..r
103e0 6f 6c 6c 62 61 63 6b 2d 74 65 73 74 2e 65 78 65  ollback-test.exe
103f0 3a 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 72 6f  :.$(TOP)\tool\ro
10400 6c 6c 62 61 63 6b 2d 74 65 73 74 2e 63 20 24 28  llback-test.c $(
10410 53 51 4c 49 54 45 33 43 29 20 24 28 53 51 4c 49  SQLITE3C) $(SQLI
10420 54 45 33 48 29 0a 09 24 28 4c 54 4c 49 4e 4b 29  TE3H)..$(LTLINK)
10430 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51   $(NO_WARN) -DSQ
10440 4c 49 54 45 5f 54 48 52 45 41 44 53 41 46 45 3d  LITE_THREADSAFE=
10450 30 20 2d 44 53 51 4c 49 54 45 5f 4f 4d 49 54 5f  0 -DSQLITE_OMIT_
10460 4c 4f 41 44 5f 45 58 54 45 4e 53 49 4f 4e 20 5c  LOAD_EXTENSION \
10470 0a 09 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 72  ...$(TOP)\tool\r
10480 6f 6c 6c 62 61 63 6b 2d 74 65 73 74 2e 63 20 24  ollback-test.c $
10490 28 53 51 4c 49 54 45 33 43 29 20 2f 6c 69 6e 6b  (SQLITE3C) /link
104a0 20 24 28 4c 44 46 4c 41 47 53 29 20 24 28 4c 54   $(LDFLAGS) $(LT
104b0 4c 49 4e 4b 4f 50 54 53 29 0a 0a 4c 6f 67 45 73  LINKOPTS)..LogEs
104c0 74 2e 65 78 65 3a 09 24 28 54 4f 50 29 5c 74 6f  t.exe:.$(TOP)\to
104d0 6f 6c 5c 6c 6f 67 65 73 74 2e 63 20 24 28 53 51  ol\logest.c $(SQ
104e0 4c 49 54 45 33 48 29 0a 09 24 28 4c 54 4c 49 4e  LITE3H)..$(LTLIN
104f0 4b 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 24 28  K) $(NO_WARN) $(
10500 54 4f 50 29 5c 74 6f 6f 6c 5c 4c 6f 67 45 73 74  TOP)\tool\LogEst
10510 2e 63 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41  .c /link $(LDFLA
10520 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53  GS) $(LTLINKOPTS
10530 29 0a 0a 77 6f 72 64 63 6f 75 6e 74 2e 65 78 65  )..wordcount.exe
10540 3a 09 24 28 54 4f 50 29 5c 74 65 73 74 5c 77 6f  :.$(TOP)\test\wo
10550 72 64 63 6f 75 6e 74 2e 63 20 24 28 53 51 4c 49  rdcount.c $(SQLI
10560 54 45 33 43 29 20 24 28 53 51 4c 49 54 45 33 48  TE3C) $(SQLITE3H
10570 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e  )..$(LTLINK) $(N
10580 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 45  O_WARN) -DSQLITE
10590 5f 54 48 52 45 41 44 53 41 46 45 3d 30 20 2d 44  _THREADSAFE=0 -D
105a0 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 4c 4f 41 44  SQLITE_OMIT_LOAD
105b0 5f 45 58 54 45 4e 53 49 4f 4e 20 5c 0a 09 09 24  _EXTENSION \...$
105c0 28 54 4f 50 29 5c 74 65 73 74 5c 77 6f 72 64 63  (TOP)\test\wordc
105d0 6f 75 6e 74 2e 63 20 24 28 53 51 4c 49 54 45 33  ount.c $(SQLITE3
105e0 43 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41  C) /link $(LDFLA
105f0 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53  GS) $(LTLINKOPTS
10600 29 0a 0a 73 70 65 65 64 74 65 73 74 31 2e 65 78  )..speedtest1.ex
10610 65 3a 09 24 28 54 4f 50 29 5c 74 65 73 74 5c 73  e:.$(TOP)\test\s
10620 70 65 65 64 74 65 73 74 31 2e 63 20 24 28 53 51  peedtest1.c $(SQ
10630 4c 49 54 45 33 43 29 20 24 28 53 51 4c 49 54 45  LITE3C) $(SQLITE
10640 33 48 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24  3H)..$(LTLINK) $
10650 28 4e 4f 5f 57 41 52 4e 29 20 24 28 53 54 5f 43  (NO_WARN) $(ST_C
10660 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 44 53  OMPILE_OPTS) -DS
10670 51 4c 49 54 45 5f 4f 4d 49 54 5f 4c 4f 41 44 5f  QLITE_OMIT_LOAD_
10680 45 58 54 45 4e 53 49 4f 4e 20 5c 0a 09 09 24 28  EXTENSION \...$(
10690 54 4f 50 29 5c 74 65 73 74 5c 73 70 65 65 64 74  TOP)\test\speedt
106a0 65 73 74 31 2e 63 20 24 28 53 51 4c 49 54 45 33  est1.c $(SQLITE3
106b0 43 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41  C) /link $(LDFLA
106c0 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53  GS) $(LTLINKOPTS
106d0 29 0a 0a 6b 76 74 65 73 74 2e 65 78 65 3a 09 24  )..kvtest.exe:.$
106e0 28 54 4f 50 29 5c 74 65 73 74 5c 6b 76 74 65 73  (TOP)\test\kvtes
106f0 74 2e 63 20 24 28 53 51 4c 49 54 45 33 43 29 20  t.c $(SQLITE3C) 
10700 24 28 53 51 4c 49 54 45 33 48 29 0a 09 24 28 4c  $(SQLITE3H)..$(L
10710 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57 41 52 4e  TLINK) $(NO_WARN
10720 29 20 24 28 4b 56 5f 43 4f 4d 50 49 4c 45 5f 4f  ) $(KV_COMPILE_O
10730 50 54 53 29 20 5c 0a 09 09 24 28 54 4f 50 29 5c  PTS) \...$(TOP)\
10740 74 65 73 74 5c 6b 76 74 65 73 74 2e 63 20 24 28  test\kvtest.c $(
10750 53 51 4c 49 54 45 33 43 29 20 2f 6c 69 6e 6b 20  SQLITE3C) /link 
10760 24 28 4c 44 46 4c 41 47 53 29 20 24 28 4c 54 4c  $(LDFLAGS) $(LTL
10770 49 4e 4b 4f 50 54 53 29 0a 0a 64 62 73 65 6c 66  INKOPTS)..dbself
10780 74 65 73 74 2e 65 78 65 3a 09 24 28 54 4f 50 29  test.exe:.$(TOP)
10790 5c 74 65 73 74 5c 64 62 73 65 6c 66 74 65 73 74  \test\dbselftest
107a0 2e 63 20 24 28 53 51 4c 49 54 45 33 43 29 20 24  .c $(SQLITE3C) $
107b0 28 53 51 4c 49 54 45 33 48 29 0a 09 24 28 4c 54  (SQLITE3H)..$(LT
107c0 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57 41 52 4e 29  LINK) $(NO_WARN)
107d0 20 24 28 44 42 53 45 4c 46 54 45 53 54 5f 43 4f   $(DBSELFTEST_CO
107e0 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24 28 54 4f  MPILE_OPTS) $(TO
107f0 50 29 5c 74 65 73 74 5c 64 62 73 65 6c 66 74 65  P)\test\dbselfte
10800 73 74 2e 63 20 24 28 53 51 4c 49 54 45 33 43 29  st.c $(SQLITE3C)
10810 0a 0a 72 62 75 2e 65 78 65 3a 09 24 28 54 4f 50  ..rbu.exe:.$(TOP
10820 29 5c 65 78 74 5c 72 62 75 5c 72 62 75 2e 63 20  )\ext\rbu\rbu.c 
10830 24 28 54 4f 50 29 5c 65 78 74 5c 72 62 75 5c 73  $(TOP)\ext\rbu\s
10840 71 6c 69 74 65 33 72 62 75 2e 63 20 24 28 53 51  qlite3rbu.c $(SQ
10850 4c 49 54 45 33 43 29 20 24 28 53 51 4c 49 54 45  LITE3C) $(SQLITE
10860 33 48 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24  3H)..$(LTLINK) $
10870 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49  (NO_WARN) -DSQLI
10880 54 45 5f 45 4e 41 42 4c 45 5f 52 42 55 20 5c 0a  TE_ENABLE_RBU \.
10890 09 09 24 28 54 4f 50 29 5c 65 78 74 5c 72 62 75  ..$(TOP)\ext\rbu
108a0 5c 72 62 75 2e 63 20 24 28 53 51 4c 49 54 45 33  \rbu.c $(SQLITE3
108b0 43 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41  C) /link $(LDFLA
108c0 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53  GS) $(LTLINKOPTS
108d0 29 0a 0a 6d 6f 72 65 63 6c 65 61 6e 3a 09 63 6c  )..moreclean:.cl
108e0 65 61 6e 0a 09 64 65 6c 20 2f 51 20 24 28 53 51  ean..del /Q $(SQ
108f0 4c 49 54 45 33 43 29 20 24 28 53 51 4c 49 54 45  LITE3C) $(SQLITE
10900 33 48 29 20 32 3e 4e 55 4c 0a 23 20 3c 3c 2f 6d  3H) 2>NUL.# <</m
10910 61 72 6b 3e 3e 0a 0a 63 6c 65 61 6e 3a 0a 09 64  ark>>..clean:..d
10920 65 6c 20 2f 51 20 2a 2e 65 78 70 20 2a 2e 6c 6f  el /Q *.exp *.lo
10930 20 2a 2e 69 6c 6b 20 2a 2e 6c 69 62 20 2a 2e 6f   *.ilk *.lib *.o
10940 62 6a 20 2a 2e 6e 63 62 20 2a 2e 70 64 62 20 2a  bj *.ncb *.pdb *
10950 2e 73 64 66 20 2a 2e 73 75 6f 20 32 3e 4e 55 4c  .sdf *.suo 2>NUL
10960 0a 09 64 65 6c 20 2f 51 20 2a 2e 62 73 63 20 2a  ..del /Q *.bsc *
10970 2e 64 65 66 20 2a 2e 63 6f 64 20 2a 2e 64 61 20  .def *.cod *.da 
10980 2a 2e 62 62 20 2a 2e 62 62 67 20 2a 2e 76 63 20  *.bb *.bbg *.vc 
10990 67 6d 6f 6e 2e 6f 75 74 20 32 3e 4e 55 4c 0a 09  gmon.out 2>NUL..
109a0 64 65 6c 20 2f 51 20 24 28 53 51 4c 49 54 45 33  del /Q $(SQLITE3
109b0 45 58 45 29 20 24 28 53 51 4c 49 54 45 33 44 4c  EXE) $(SQLITE3DL
109c0 4c 29 20 52 65 70 6c 61 63 65 2e 65 78 65 20 32  L) Replace.exe 2
109d0 3e 4e 55 4c 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a  >NUL.# <<mark>>.
109e0 09 64 65 6c 20 2f 51 20 73 71 6c 69 74 65 33 2e  .del /Q sqlite3.
109f0 63 20 73 71 6c 69 74 65 33 2e 68 20 32 3e 4e 55  c sqlite3.h 2>NU
10a00 4c 0a 09 64 65 6c 20 2f 51 20 6f 70 63 6f 64 65  L..del /Q opcode
10a10 73 2e 63 20 6f 70 63 6f 64 65 73 2e 68 20 32 3e  s.c opcodes.h 2>
10a20 4e 55 4c 0a 09 64 65 6c 20 2f 51 20 6c 65 6d 6f  NUL..del /Q lemo
10a30 6e 2e 2a 20 6c 65 6d 70 61 72 2e 63 20 70 61 72  n.* lempar.c par
10a40 73 65 2e 2a 20 32 3e 4e 55 4c 0a 09 64 65 6c 20  se.* 2>NUL..del 
10a50 2f 51 20 6d 6b 6b 65 79 77 6f 72 64 68 61 73 68  /Q mkkeywordhash
10a60 2e 2a 20 6b 65 79 77 6f 72 64 68 61 73 68 2e 68  .* keywordhash.h
10a70 20 32 3e 4e 55 4c 0a 09 64 65 6c 20 2f 51 20 6e   2>NUL..del /Q n
10a80 6f 74 61 73 68 61 72 65 64 6c 69 62 2e 2a 20 32  otasharedlib.* 2
10a90 3e 4e 55 4c 0a 09 2d 72 6d 64 69 72 20 2f 51 2f  >NUL..-rmdir /Q/
10aa0 53 20 2e 64 65 70 73 20 32 3e 4e 55 4c 0a 09 2d  S .deps 2>NUL..-
10ab0 72 6d 64 69 72 20 2f 51 2f 53 20 2e 6c 69 62 73  rmdir /Q/S .libs
10ac0 20 32 3e 4e 55 4c 0a 09 2d 72 6d 64 69 72 20 2f   2>NUL..-rmdir /
10ad0 51 2f 53 20 74 73 72 63 20 32 3e 4e 55 4c 0a 09  Q/S tsrc 2>NUL..
10ae0 64 65 6c 20 2f 51 20 2e 74 61 72 67 65 74 5f 73  del /Q .target_s
10af0 6f 75 72 63 65 20 32 3e 4e 55 4c 0a 09 64 65 6c  ource 2>NUL..del
10b00 20 2f 51 20 74 63 6c 73 71 6c 69 74 65 33 2e 65   /Q tclsqlite3.e
10b10 78 65 20 24 28 53 51 4c 49 54 45 54 43 4c 48 29  xe $(SQLITETCLH)
10b20 20 24 28 53 51 4c 49 54 45 54 43 4c 44 45 43 4c   $(SQLITETCLDECL
10b30 53 48 29 20 32 3e 4e 55 4c 0a 09 64 65 6c 20 2f  SH) 2>NUL..del /
10b40 51 20 74 65 73 74 6c 6f 61 64 65 78 74 2e 64 6c  Q testloadext.dl
10b50 6c 20 32 3e 4e 55 4c 0a 09 64 65 6c 20 2f 51 20  l 2>NUL..del /Q 
10b60 74 65 73 74 66 69 78 74 75 72 65 2e 65 78 65 20  testfixture.exe 
10b70 74 65 73 74 2e 64 62 20 32 3e 4e 55 4c 0a 09 64  test.db 2>NUL..d
10b80 65 6c 20 2f 51 20 4c 6f 67 45 73 74 2e 65 78 65  el /Q LogEst.exe
10b90 20 66 74 73 33 76 69 65 77 2e 65 78 65 20 72 6f   fts3view.exe ro
10ba0 6c 6c 62 61 63 6b 2d 74 65 73 74 2e 65 78 65 20  llback-test.exe 
10bb0 73 68 6f 77 64 62 2e 65 78 65 20 32 3e 4e 55 4c  showdb.exe 2>NUL
10bc0 0a 09 64 65 6c 20 2f 51 20 63 68 61 6e 67 65 73  ..del /Q changes
10bd0 65 74 2e 65 78 65 20 32 3e 4e 55 4c 0a 09 64 65  et.exe 2>NUL..de
10be0 6c 20 2f 51 20 73 68 6f 77 6a 6f 75 72 6e 61 6c  l /Q showjournal
10bf0 2e 65 78 65 20 73 68 6f 77 73 74 61 74 34 2e 65  .exe showstat4.e
10c00 78 65 20 73 68 6f 77 77 61 6c 2e 65 78 65 20 73  xe showwal.exe s
10c10 70 65 65 64 74 65 73 74 31 2e 65 78 65 20 32 3e  peedtest1.exe 2>
10c20 4e 55 4c 0a 09 64 65 6c 20 2f 51 20 6d 70 74 65  NUL..del /Q mpte
10c30 73 74 65 72 2e 65 78 65 20 77 6f 72 64 63 6f 75  ster.exe wordcou
10c40 6e 74 2e 65 78 65 20 72 62 75 2e 65 78 65 20 73  nt.exe rbu.exe s
10c50 72 63 63 6b 31 2e 65 78 65 20 32 3e 4e 55 4c 0a  rcck1.exe 2>NUL.
10c60 09 64 65 6c 20 2f 51 20 73 71 6c 69 74 65 33 2e  .del /Q sqlite3.
10c70 63 20 73 71 6c 69 74 65 33 2d 2a 2e 63 20 32 3e  c sqlite3-*.c 2>
10c80 4e 55 4c 0a 09 64 65 6c 20 2f 51 20 73 71 6c 69  NUL..del /Q sqli
10c90 74 65 33 72 63 2e 68 20 32 3e 4e 55 4c 0a 09 64  te3rc.h 2>NUL..d
10ca0 65 6c 20 2f 51 20 73 68 65 6c 6c 2e 63 20 73 71  el /Q shell.c sq
10cb0 6c 69 74 65 33 65 78 74 2e 68 20 73 71 6c 69 74  lite3ext.h sqlit
10cc0 65 33 73 65 73 73 69 6f 6e 2e 68 20 32 3e 4e 55  e3session.h 2>NU
10cd0 4c 0a 09 64 65 6c 20 2f 51 20 73 71 6c 69 74 65  L..del /Q sqlite
10ce0 33 5f 61 6e 61 6c 79 7a 65 72 2e 65 78 65 20 73  3_analyzer.exe s
10cf0 71 6c 69 74 65 33 5f 61 6e 61 6c 79 7a 65 72 2e  qlite3_analyzer.
10d00 63 20 32 3e 4e 55 4c 0a 09 64 65 6c 20 2f 51 20  c 2>NUL..del /Q 
10d10 73 71 6c 69 74 65 2d 2a 2d 6f 75 74 70 75 74 2e  sqlite-*-output.
10d20 76 73 69 78 20 32 3e 4e 55 4c 0a 09 64 65 6c 20  vsix 2>NUL..del 
10d30 2f 51 20 66 75 7a 7a 65 72 73 68 65 6c 6c 2e 65  /Q fuzzershell.e
10d40 78 65 20 66 75 7a 7a 63 68 65 63 6b 2e 65 78 65  xe fuzzcheck.exe
10d50 20 73 71 6c 64 69 66 66 2e 65 78 65 20 64 62 68   sqldiff.exe dbh
10d60 61 73 68 2e 65 78 65 20 32 3e 4e 55 4c 0a 09 64  ash.exe 2>NUL..d
10d70 65 6c 20 2f 51 20 66 74 73 35 2e 2a 20 66 74 73  el /Q fts5.* fts
10d80 35 70 61 72 73 65 2e 2a 20 32 3e 4e 55 4c 0a 23  5parse.* 2>NUL.#
10d90 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a                  <</mark>>.