/ Hex Artifact Content

• File Makefile.msc — part of check-in [90e89ec9] at 2016-07-28 18:06:52 on branch callbackConv — Adjustments to get 'testfixture.exe' compiling with Tcl 8.6 when __stdcall is enabled. (user: mistachkin size: 65336)

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 75 73 65  his non-0 to use
02a0: 20 22 73 74 64 63 61 6c 6c 22 20 63 61 6c 6c 69   "stdcall" calli
02b0: 6e 67 20 63 6f 6e 76 65 6e 74 69 6f 6e 20 66 6f  ng convention fo
02c0: 72 20 74 68 65 20 63 6f 72 65 20 6c 69 62 72 61  r the core libra
02d0: 72 79 0a 23 20 61 6e 64 20 73 68 65 6c 6c 20 65  ry.# and shell e
02e0: 78 65 63 75 74 61 62 6c 65 2e 0a 23 0a 21 49 46  xecutable..#.!IF
02f0: 4e 44 45 46 20 55 53 45 5f 53 54 44 43 41 4c 4c  NDEF USE_STDCALL
0300: 0a 55 53 45 5f 53 54 44 43 41 4c 4c 20 3d 20 30  .USE_STDCALL = 0
0310: 0a 21 45 4e 44 49 46 0a 0a 23 20 53 65 74 20 74  .!ENDIF..# Set t
0320: 68 69 73 20 6e 6f 6e 2d 30 20 74 6f 20 68 61 76  his non-0 to hav
0330: 65 20 74 68 65 20 73 68 65 6c 6c 20 65 78 65 63  e the shell exec
0340: 75 74 61 62 6c 65 20 6c 69 6e 6b 20 61 67 61 69  utable link agai
0350: 6e 73 74 20 74 68 65 20 63 6f 72 65 20 64 79 6e  nst the core dyn
0360: 61 6d 69 63 0a 23 20 6c 69 6e 6b 20 6c 69 62 72  amic.# link libr
0370: 61 72 79 2e 0a 23 0a 21 49 46 4e 44 45 46 20 44  ary..#.!IFNDEF D
0380: 59 4e 41 4d 49 43 5f 53 48 45 4c 4c 0a 44 59 4e  YNAMIC_SHELL.DYN
0390: 41 4d 49 43 5f 53 48 45 4c 4c 20 3d 20 30 0a 21  AMIC_SHELL = 0.!
03a0: 45 4e 44 49 46 0a 0a 23 20 53 65 74 20 74 68 69  ENDIF..# Set thi
03b0: 73 20 6e 6f 6e 2d 30 20 74 6f 20 65 6e 61 62 6c  s non-0 to enabl
03c0: 65 20 65 78 74 72 61 20 63 6f 64 65 20 74 68 61  e extra code tha
03d0: 74 20 61 74 74 65 6d 70 74 73 20 74 6f 20 64 65  t attempts to de
03e0: 74 65 63 74 20 6d 69 73 75 73 65 20 6f 66 20 74  tect misuse of t
03f0: 68 65 0a 23 20 53 51 4c 69 74 65 20 41 50 49 2e  he.# SQLite API.
0400: 0a 23 0a 21 49 46 4e 44 45 46 20 41 50 49 5f 41  .#.!IFNDEF API_A
0410: 52 4d 4f 52 0a 41 50 49 5f 41 52 4d 4f 52 20 3d  RMOR.API_ARMOR =
0420: 20 30 0a 21 45 4e 44 49 46 0a 0a 23 20 49 66 20   0.!ENDIF..# If
0430: 6e 65 63 65 73 73 61 72 79 2c 20 63 72 65 61 74  necessary, creat
0440: 65 20 61 20 6c 69 73 74 20 6f 66 20 68 61 72 6d  e a list of harm
0450: 6c 65 73 73 20 63 6f 6d 70 69 6c 65 72 20 77 61  less compiler wa
0460: 72 6e 69 6e 67 73 20 74 6f 20 64 69 73 61 62 6c  rnings to disabl
0470: 65 20 77 68 65 6e 0a 23 20 63 6f 6d 70 69 6c 69  e when.# compili
0480: 6e 67 20 74 68 65 20 76 61 72 69 6f 75 73 20 74  ng the various t
0490: 6f 6f 6c 73 2e 20 20 46 6f 72 20 74 68 65 20 53  ools.  For the S
04a0: 51 4c 69 74 65 20 73 6f 75 72 63 65 20 63 6f 64  QLite source cod
04b0: 65 20 69 74 73 65 6c 66 2c 20 77 61 72 6e 69 6e  e itself, warnin
04c0: 67 73 2c 0a 23 20 69 66 20 61 6e 79 2c 20 77 69  gs,.# if any, wi
04d0: 6c 6c 20 62 65 20 64 69 73 61 62 6c 65 64 20 66  ll be disabled f
04e0: 72 6f 6d 20 77 69 74 68 69 6e 20 69 74 2e 0a 23  rom within it..#
04f0: 0a 21 49 46 4e 44 45 46 20 4e 4f 5f 57 41 52 4e  .!IFNDEF NO_WARN
0500: 0a 21 49 46 20 24 28 55 53 45 5f 46 55 4c 4c 57  .!IF $(USE_FULLW 0510: 41 52 4e 29 21 3d 30 0a 4e 4f 5f 57 41 52 4e 20 ARN)!=0.NO_WARN 0520: 3d 20 2d 77 64 34 30 35 34 20 2d 77 64 34 30 35 = -wd4054 -wd405 0530: 35 20 2d 77 64 34 31 30 30 20 2d 77 64 34 31 32 5 -wd4100 -wd412 0540: 37 20 2d 77 64 34 31 33 30 20 2d 77 64 34 31 35 7 -wd4130 -wd415 0550: 32 20 2d 77 64 34 31 38 39 20 2d 77 64 34 32 30 2 -wd4189 -wd420 0560: 36 0a 4e 4f 5f 57 41 52 4e 20 3d 20 24 28 4e 4f 6.NO_WARN =$(NO
0570: 5f 57 41 52 4e 29 20 2d 77 64 34 32 31 30 20 2d  _WARN) -wd4210 -
0580: 77 64 34 32 33 32 20 2d 77 64 34 33 30 35 20 2d  wd4232 -wd4305 -
0590: 77 64 34 33 30 36 20 2d 77 64 34 37 30 32 20 2d  wd4306 -wd4702 -
05a0: 77 64 34 37 30 36 0a 21 45 4e 44 49 46 0a 21 45  wd4706.!ENDIF.!E
05b0: 4e 44 49 46 0a 0a 23 20 53 65 74 20 74 68 69 73  NDIF..# Set this
05c0: 20 6e 6f 6e 2d 30 20 74 6f 20 75 73 65 20 74 68   non-0 to use th
05d0: 65 20 6c 69 62 72 61 72 79 20 70 61 74 68 73 20  e library paths
05e0: 61 6e 64 20 6f 74 68 65 72 20 6f 70 74 69 6f 6e  and other option
05f0: 73 20 6e 65 63 65 73 73 61 72 79 20 66 6f 72 0a  s necessary for.
0600: 23 20 57 69 6e 64 6f 77 73 20 50 68 6f 6e 65 20  # Windows Phone
0610: 38 2e 31 2e 0a 23 0a 21 49 46 4e 44 45 46 20 55  8.1..#.!IFNDEF U
0620: 53 45 5f 57 50 38 31 5f 4f 50 54 53 0a 55 53 45  SE_WP81_OPTS.USE
0630: 5f 57 50 38 31 5f 4f 50 54 53 20 3d 20 30 0a 21  _WP81_OPTS = 0.!
0640: 45 4e 44 49 46 0a 0a 23 20 53 65 74 20 74 68 69  ENDIF..# Set thi
0650: 73 20 6e 6f 6e 2d 30 20 74 6f 20 73 70 6c 69 74  s non-0 to split
0660: 20 74 68 65 20 53 51 4c 69 74 65 20 61 6d 61 6c   the SQLite amal
0670: 67 61 6d 61 74 69 6f 6e 20 66 69 6c 65 20 69 6e  gamation file in
0680: 74 6f 20 63 68 75 6e 6b 73 20 74 6f 0a 23 20 62  to chunks to.# b
0690: 65 20 75 73 65 64 20 66 6f 72 20 64 65 62 75 67  e used for debug
06a0: 67 69 6e 67 20 77 69 74 68 20 56 69 73 75 61 6c  ging with Visual
06b0: 20 53 74 75 64 69 6f 2e 0a 23 0a 21 49 46 4e 44   Studio..#.!IFND
06c0: 45 46 20 53 50 4c 49 54 5f 41 4d 41 4c 47 41 4d  EF SPLIT_AMALGAM
06d0: 41 54 49 4f 4e 0a 53 50 4c 49 54 5f 41 4d 41 4c  ATION.SPLIT_AMAL
06e0: 47 41 4d 41 54 49 4f 4e 20 3d 20 30 0a 21 45 4e  GAMATION = 0.!EN
06f0: 44 49 46 0a 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a  DIF..# <<mark>>.
0700: 23 20 53 65 74 20 74 68 69 73 20 6e 6f 6e 2d 30  # Set this non-0
0710: 20 74 6f 20 75 73 65 20 74 68 65 20 49 6e 74 65   to use the Inte
0720: 72 6e 61 74 69 6f 6e 61 6c 20 43 6f 6d 70 6f 6e  rnational Compon
0730: 65 6e 74 73 20 66 6f 72 20 55 6e 69 63 6f 64 65  ents for Unicode
0740: 20 28 49 43 55 29 2e 0a 23 0a 21 49 46 4e 44 45   (ICU)..#.!IFNDE
0750: 46 20 55 53 45 5f 49 43 55 0a 55 53 45 5f 49 43  F USE_ICU.USE_IC
0760: 55 20 3d 20 30 0a 21 45 4e 44 49 46 0a 23 20 3c  U = 0.!ENDIF.# <
0770: 3c 2f 6d 61 72 6b 3e 3e 0a 0a 23 20 53 65 74 20  </mark>>..# Set
0780: 74 68 69 73 20 6e 6f 6e 2d 30 20 74 6f 20 64 79  this non-0 to dy
0790: 6e 61 6d 69 63 61 6c 6c 79 20 6c 69 6e 6b 20 74  namically link t
07a0: 6f 20 74 68 65 20 4d 53 56 43 20 72 75 6e 74 69  o the MSVC runti
07b0: 6d 65 20 6c 69 62 72 61 72 79 2e 0a 23 0a 21 49  me library..#.!I
07c0: 46 4e 44 45 46 20 55 53 45 5f 43 52 54 5f 44 4c  FNDEF USE_CRT_DL
07d0: 4c 0a 55 53 45 5f 43 52 54 5f 44 4c 4c 20 3d 20  L.USE_CRT_DLL =
07e0: 30 0a 21 45 4e 44 49 46 0a 0a 23 20 53 65 74 20  0.!ENDIF..# Set
07f0: 74 68 69 73 20 6e 6f 6e 2d 30 20 74 6f 20 6c 69  this non-0 to li
0800: 6e 6b 20 74 6f 20 74 68 65 20 52 50 43 52 54 34  nk to the RPCRT4
0810: 20 6c 69 62 72 61 72 79 2e 0a 23 0a 21 49 46 4e   library..#.!IFN
0820: 44 45 46 20 55 53 45 5f 52 50 43 52 54 34 5f 4c  DEF USE_RPCRT4_L
0830: 49 42 0a 55 53 45 5f 52 50 43 52 54 34 5f 4c 49  IB.USE_RPCRT4_LI
0840: 42 20 3d 20 30 0a 21 45 4e 44 49 46 0a 0a 23 20  B = 0.!ENDIF..#
0850: 53 65 74 20 74 68 69 73 20 6e 6f 6e 2d 30 20 74  Set this non-0 t
0860: 6f 20 67 65 6e 65 72 61 74 65 20 61 73 73 65 6d  o generate assem
0870: 62 6c 79 20 63 6f 64 65 20 6c 69 73 74 69 6e 67  bly code listing
0880: 73 20 66 6f 72 20 74 68 65 20 73 6f 75 72 63 65  s for the source
0890: 20 63 6f 64 65 0a 23 20 66 69 6c 65 73 2e 0a 23   code.# files..#
08a0: 0a 21 49 46 4e 44 45 46 20 55 53 45 5f 4c 49 53  .!IFNDEF USE_LIS
08b0: 54 49 4e 47 53 0a 55 53 45 5f 4c 49 53 54 49 4e  TINGS.USE_LISTIN
08c0: 47 53 20 3d 20 30 0a 21 45 4e 44 49 46 0a 0a 23  GS = 0.!ENDIF..#
08d0: 20 53 65 74 20 74 68 69 73 20 6e 6f 6e 2d 30 20   Set this non-0
08e0: 74 6f 20 61 74 74 65 6d 70 74 20 73 65 74 74 69  to attempt setti
08f0: 6e 67 20 74 68 65 20 6e 61 74 69 76 65 20 63 6f  ng the native co
0900: 6d 70 69 6c 65 72 20 61 75 74 6f 6d 61 74 69 63  mpiler automatic
0910: 61 6c 6c 79 0a 23 20 66 6f 72 20 63 72 6f 73 73  ally.# for cross
0920: 2d 63 6f 6d 70 69 6c 69 6e 67 20 74 68 65 20 63  -compiling the c
0930: 6f 6d 6d 61 6e 64 20 6c 69 6e 65 20 74 6f 6f 6c  ommand line tool
0940: 73 20 6e 65 65 64 65 64 20 64 75 72 69 6e 67 20  s needed during
0950: 74 68 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 0a  the compilation.
0960: 23 20 70 72 6f 63 65 73 73 2e 0a 23 0a 21 49 46  # process..#.!IF
0970: 4e 44 45 46 20 58 43 4f 4d 50 49 4c 45 0a 58 43  NDEF XCOMPILE.XC
0980: 4f 4d 50 49 4c 45 20 3d 20 30 0a 21 45 4e 44 49  OMPILE = 0.!ENDI
0990: 46 0a 0a 23 20 53 65 74 20 74 68 69 73 20 6e 6f  F..# Set this no
09a0: 6e 2d 30 20 74 6f 20 75 73 65 20 74 68 65 20 6e  n-0 to use the n
09b0: 61 74 69 76 65 20 6c 69 62 72 61 72 69 65 73 20  ative libraries
09c0: 70 61 74 68 73 20 66 6f 72 20 63 72 6f 73 73 2d  paths for cross-
09d0: 63 6f 6d 70 69 6c 69 6e 67 0a 23 20 74 68 65 20  compiling.# the
09e0: 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65 20 74 6f 6f  command line too
09f0: 6c 73 20 6e 65 65 64 65 64 20 64 75 72 69 6e 67  ls needed during
0a00: 20 74 68 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e   the compilation
0a10: 20 70 72 6f 63 65 73 73 2e 0a 23 0a 21 49 46 4e   process..#.!IFN
0a20: 44 45 46 20 55 53 45 5f 4e 41 54 49 56 45 5f 4c  DEF USE_NATIVE_L
0a30: 49 42 50 41 54 48 53 0a 55 53 45 5f 4e 41 54 49  IBPATHS.USE_NATI
0a40: 56 45 5f 4c 49 42 50 41 54 48 53 20 3d 20 30 0a  VE_LIBPATHS = 0.
0a50: 21 45 4e 44 49 46 0a 0a 23 20 53 65 74 20 74 68  !ENDIF..# Set th
0a60: 69 73 20 30 20 74 6f 20 73 6b 69 70 20 74 68 65  is 0 to skip the
0a70: 20 63 6f 6d 70 69 6c 69 6e 67 20 61 6e 64 20 65   compiling and e
0a80: 6d 62 65 64 64 69 6e 67 20 6f 66 20 76 65 72 73  mbedding of vers
0a90: 69 6f 6e 20 72 65 73 6f 75 72 63 65 73 2e 0a 23  ion resources..#
0aa0: 0a 21 49 46 4e 44 45 46 20 55 53 45 5f 52 43 0a  .!IFNDEF USE_RC.
0ab0: 55 53 45 5f 52 43 20 3d 20 31 0a 21 45 4e 44 49  USE_RC = 1.!ENDI
0ac0: 46 0a 0a 23 20 53 65 74 20 74 68 69 73 20 6e 6f  F..# Set this no
0ad0: 6e 2d 30 20 74 6f 20 63 6f 6d 70 69 6c 65 20 62  n-0 to compile b
0ae0: 69 6e 61 72 69 65 73 20 73 75 69 74 61 62 6c 65  inaries suitable
0af0: 20 66 6f 72 20 74 68 65 20 57 69 6e 52 54 20 65   for the WinRT e
0b00: 6e 76 69 72 6f 6e 6d 65 6e 74 2e 0a 23 20 54 68  nvironment..# Th
0b10: 69 73 20 73 65 74 74 69 6e 67 20 64 6f 65 73 20  is setting does
0b20: 6e 6f 74 20 61 70 70 6c 79 20 74 6f 20 61 6e 79  not apply to any
0b30: 20 62 69 6e 61 72 69 65 73 20 74 68 61 74 20 72   binaries that r
0b40: 65 71 75 69 72 65 20 54 63 6c 20 74 6f 20 6f 70  equire Tcl to op
0b50: 65 72 61 74 65 0a 23 20 70 72 6f 70 65 72 6c 79  erate.# properly
0b60: 20 28 69 2e 65 2e 20 74 68 65 20 74 65 78 74 20   (i.e. the text
0b70: 66 69 78 74 75 72 65 2c 20 65 74 63 29 2e 0a 23  fixture, etc)..#
0b80: 0a 21 49 46 4e 44 45 46 20 46 4f 52 5f 57 49 4e  .!IFNDEF FOR_WIN
0b90: 52 54 0a 46 4f 52 5f 57 49 4e 52 54 20 3d 20 30  RT.FOR_WINRT = 0
0ba0: 0a 21 45 4e 44 49 46 0a 0a 23 20 53 65 74 20 74  .!ENDIF..# Set t
0bb0: 68 69 73 20 6e 6f 6e 2d 30 20 74 6f 20 63 6f 6d  his non-0 to com
0bc0: 70 69 6c 65 20 62 69 6e 61 72 69 65 73 20 73 75  pile binaries su
0bd0: 69 74 61 62 6c 65 20 66 6f 72 20 74 68 65 20 55  itable for the U
0be0: 57 50 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 2e 0a  WP environment..
0bf0: 23 20 54 68 69 73 20 73 65 74 74 69 6e 67 20 64  # This setting d
0c00: 6f 65 73 20 6e 6f 74 20 61 70 70 6c 79 20 74 6f  oes not apply to
0c10: 20 61 6e 79 20 62 69 6e 61 72 69 65 73 20 74 68   any binaries th
0c20: 61 74 20 72 65 71 75 69 72 65 20 54 63 6c 20 74  at require Tcl t
0c30: 6f 20 6f 70 65 72 61 74 65 0a 23 20 70 72 6f 70  o operate.# prop
0c40: 65 72 6c 79 20 28 69 2e 65 2e 20 74 68 65 20 74  erly (i.e. the t
0c50: 65 78 74 20 66 69 78 74 75 72 65 2c 20 65 74 63  ext fixture, etc
0c60: 29 2e 0a 23 0a 21 49 46 4e 44 45 46 20 46 4f 52  )..#.!IFNDEF FOR
0c70: 5f 55 57 50 0a 46 4f 52 5f 55 57 50 20 3d 20 30  _UWP.FOR_UWP = 0
0c80: 0a 21 45 4e 44 49 46 0a 0a 23 20 53 65 74 20 74  .!ENDIF..# Set t
0c90: 68 69 73 20 6e 6f 6e 2d 30 20 74 6f 20 63 6f 6d  his non-0 to com
0ca0: 70 69 6c 65 20 62 69 6e 61 72 69 65 73 20 73 75  pile binaries su
0cb0: 69 74 61 62 6c 65 20 66 6f 72 20 74 68 65 20 57  itable for the W
0cc0: 69 6e 64 6f 77 73 20 31 30 20 70 6c 61 74 66 6f  indows 10 platfo
0cd0: 72 6d 2e 0a 23 0a 21 49 46 4e 44 45 46 20 46 4f  rm..#.!IFNDEF FO
0ce0: 52 5f 57 49 4e 31 30 0a 46 4f 52 5f 57 49 4e 31  R_WIN10.FOR_WIN1
0cf0: 30 20 3d 20 30 0a 21 45 4e 44 49 46 0a 0a 23 20  0 = 0.!ENDIF..#
0d00: 3c 3c 6d 61 72 6b 3e 3e 0a 23 20 53 65 74 20 74  <<mark>>.# Set t
0d10: 68 69 73 20 6e 6f 6e 2d 30 20 74 6f 20 73 6b 69  his non-0 to ski
0d20: 70 20 61 74 74 65 6d 70 74 69 6e 67 20 74 6f 20  p attempting to
0d30: 6c 6f 6f 6b 20 66 6f 72 20 61 6e 64 2f 6f 72 20  look for and/or
0d40: 6c 69 6e 6b 20 77 69 74 68 20 74 68 65 20 54 63  link with the Tc
0d50: 6c 0a 23 20 72 75 6e 74 69 6d 65 20 6c 69 62 72  l.# runtime libr
0d60: 61 72 79 2e 0a 23 0a 21 49 46 4e 44 45 46 20 4e  ary..#.!IFNDEF N
0d70: 4f 5f 54 43 4c 0a 4e 4f 5f 54 43 4c 20 3d 20 30  O_TCL.NO_TCL = 0
0d80: 0a 21 45 4e 44 49 46 0a 23 20 3c 3c 2f 6d 61 72  .!ENDIF.# <</mar
0d90: 6b 3e 3e 0a 0a 23 20 53 65 74 20 74 68 69 73 20  k>>..# Set this
0da0: 74 6f 20 6e 6f 6e 2d 30 20 74 6f 20 63 72 65 61  to non-0 to crea
0db0: 74 65 20 61 6e 64 20 75 73 65 20 50 44 42 73 2e  te and use PDBs.
0dc0: 0a 23 0a 21 49 46 4e 44 45 46 20 53 59 4d 42 4f  .#.!IFNDEF SYMBO
0dd0: 4c 53 0a 53 59 4d 42 4f 4c 53 20 3d 20 31 0a 21  LS.SYMBOLS = 1.!
0de0: 45 4e 44 49 46 0a 0a 23 20 53 65 74 20 74 68 69  ENDIF..# Set thi
0df0: 73 20 74 6f 20 6e 6f 6e 2d 30 20 74 6f 20 75 73  s to non-0 to us
0e00: 65 20 74 68 65 20 53 51 4c 69 74 65 20 64 65 62  e the SQLite deb
0e10: 75 67 67 69 6e 67 20 68 65 61 70 20 73 75 62 73  ugging heap subs
0e20: 79 73 74 65 6d 2e 0a 23 0a 21 49 46 4e 44 45 46  ystem..#.!IFNDEF
0e30: 20 4d 45 4d 44 45 42 55 47 0a 4d 45 4d 44 45 42   MEMDEBUG.MEMDEB
0e40: 55 47 20 3d 20 30 0a 21 45 4e 44 49 46 0a 0a 23  UG = 0.!ENDIF..#
0e50: 20 53 65 74 20 74 68 69 73 20 74 6f 20 6e 6f 6e   Set this to non
0e60: 2d 30 20 74 6f 20 75 73 65 20 74 68 65 20 57 69  -0 to use the Wi
0e70: 6e 33 32 20 6e 61 74 69 76 65 20 68 65 61 70 20  n32 native heap
0e80: 73 75 62 73 79 73 74 65 6d 2e 0a 23 0a 21 49 46  subsystem..#.!IF
0e90: 4e 44 45 46 20 57 49 4e 33 32 48 45 41 50 0a 57  NDEF WIN32HEAP.W
0ea0: 49 4e 33 32 48 45 41 50 20 3d 20 30 0a 21 45 4e  IN32HEAP = 0.!EN
0eb0: 44 49 46 0a 0a 23 20 53 65 74 20 74 68 69 73 20  DIF..# Set this
0ec0: 74 6f 20 6e 6f 6e 2d 30 20 74 6f 20 65 6e 61 62  to non-0 to enab
0ed0: 6c 65 20 4f 53 54 52 41 43 45 28 29 20 6d 61 63  le OSTRACE() mac
0ee0: 72 6f 73 2c 20 77 68 69 63 68 20 63 61 6e 20 62  ros, which can b
0ef0: 65 20 75 73 65 66 75 6c 20 77 68 65 6e 0a 23 20  e useful when.#
0f00: 64 65 62 75 67 67 69 6e 67 2e 0a 23 0a 21 49 46  debugging..#.!IF
0f10: 4e 44 45 46 20 4f 53 54 52 41 43 45 0a 4f 53 54  NDEF OSTRACE.OST
0f20: 52 41 43 45 20 3d 20 30 0a 21 45 4e 44 49 46 0a  RACE = 0.!ENDIF.
0f30: 0a 23 20 53 65 74 20 74 68 69 73 20 74 6f 20 6f  .# Set this to o
0f40: 6e 65 20 6f 66 20 74 68 65 20 66 6f 6c 6c 6f 77  ne of the follow
0f50: 69 6e 67 20 76 61 6c 75 65 73 20 74 6f 20 65 6e  ing values to en
0f60: 61 62 6c 65 20 76 61 72 69 6f 75 73 20 64 65 62  able various deb
0f70: 75 67 67 69 6e 67 0a 23 20 66 65 61 74 75 72 65  ugging.# feature
0f80: 73 2e 20 20 45 61 63 68 20 6c 65 76 65 6c 20 69  s.  Each level i
0f90: 6e 63 6c 75 64 65 73 20 74 68 65 20 64 65 62 75  ncludes the debu
0fa0: 67 67 69 6e 67 20 6f 70 74 69 6f 6e 73 20 66 72  gging options fr
0fb0: 6f 6d 20 74 68 65 20 70 72 65 76 69 6f 75 73 0a  om the previous.
0fc0: 23 20 6c 65 76 65 6c 73 2e 20 20 43 75 72 72 65  # levels.  Curre
0fd0: 6e 74 6c 79 2c 20 74 68 65 20 72 65 63 6f 67 6e  ntly, the recogn
0fe0: 69 7a 65 64 20 76 61 6c 75 65 73 20 66 6f 72 20  ized values for
0ff0: 44 45 42 55 47 20 61 72 65 3a 0a 23 0a 23 20 30  DEBUG are:.#.# 0
1000: 20 3d 3d 20 4e 44 45 42 55 47 3a 20 44 69 73 61   == NDEBUG: Disa
1010: 62 6c 65 73 20 61 73 73 65 72 74 28 29 20 61 6e  bles assert() an
1020: 64 20 6f 74 68 65 72 20 72 75 6e 74 69 6d 65 20  d other runtime
1030: 64 69 61 67 6e 6f 73 74 69 63 73 2e 0a 23 20 31  diagnostics..# 1
1040: 20 3d 3d 20 53 51 4c 49 54 45 5f 45 4e 41 42 4c   == SQLITE_ENABL
1050: 45 5f 41 50 49 5f 41 52 4d 4f 52 3a 20 65 78 74  E_API_ARMOR: ext
1060: 72 61 20 61 74 74 65 6d 70 74 73 20 74 6f 20 64  ra attempts to d
1070: 65 74 65 63 74 20 6d 69 73 75 73 65 20 6f 66 20  etect misuse of
1080: 74 68 65 20 41 50 49 2e 0a 23 20 32 20 3d 3d 20  the API..# 2 ==
1090: 44 69 73 61 62 6c 65 73 20 4e 44 45 42 55 47 20  Disables NDEBUG
10a0: 61 6e 64 20 61 6c 6c 20 6f 70 74 69 6d 69 7a 61  and all optimiza
10b0: 74 69 6f 6e 73 20 61 6e 64 20 74 68 65 6e 20 65  tions and then e
10c0: 6e 61 62 6c 65 73 20 50 44 42 73 2e 0a 23 20 33  nables PDBs..# 3
10d0: 20 3d 3d 20 53 51 4c 49 54 45 5f 44 45 42 55 47   == SQLITE_DEBUG
10e0: 3a 20 45 6e 61 62 6c 65 73 20 76 61 72 69 6f 75  : Enables variou
10f0: 73 20 64 69 61 67 6e 6f 73 74 69 63 73 20 6d 65  s diagnostics me
1100: 73 73 61 67 65 73 20 61 6e 64 20 63 6f 64 65 2e  ssages and code.
1110: 0a 23 20 34 20 3d 3d 20 53 51 4c 49 54 45 5f 57  .# 4 == SQLITE_W
1120: 49 4e 33 32 5f 4d 41 4c 4c 4f 43 5f 56 41 4c 49  IN32_MALLOC_VALI
1130: 44 41 54 45 3a 20 56 61 6c 69 64 61 74 65 20 74  DATE: Validate t
1140: 68 65 20 57 69 6e 33 32 20 6e 61 74 69 76 65 20  he Win32 native
1150: 68 65 61 70 20 70 65 72 20 63 61 6c 6c 2e 0a 23  heap per call..#
1160: 20 35 20 3d 3d 20 53 51 4c 49 54 45 5f 44 45 42   5 == SQLITE_DEB
1170: 55 47 5f 4f 53 5f 54 52 41 43 45 3a 20 45 6e 61  UG_OS_TRACE: Ena
1180: 62 6c 65 73 20 6f 75 74 70 75 74 20 66 72 6f 6d  bles output from
1190: 20 74 68 65 20 4f 53 54 52 41 43 45 28 29 20 6d   the OSTRACE() m
11a0: 61 63 72 6f 73 2e 0a 23 20 36 20 3d 3d 20 53 51  acros..# 6 == SQ
11b0: 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 49 4f 54 52  LITE_ENABLE_IOTR
11c0: 41 43 45 3a 20 45 6e 61 62 6c 65 73 20 6f 75 74  ACE: Enables out
11d0: 70 75 74 20 66 72 6f 6d 20 74 68 65 20 49 4f 54  put from the IOT
11e0: 52 41 43 45 28 29 20 6d 61 63 72 6f 73 2e 0a 23  RACE() macros..#
11f0: 0a 21 49 46 4e 44 45 46 20 44 45 42 55 47 0a 44  .!IFNDEF DEBUG.D
1200: 45 42 55 47 20 3d 20 30 0a 21 45 4e 44 49 46 0a  EBUG = 0.!ENDIF.
1210: 0a 23 20 45 6e 61 62 6c 65 20 75 73 65 20 6f 66  .# Enable use of
1220: 20 61 76 61 69 6c 61 62 6c 65 20 63 6f 6d 70 69   available compi
1230: 6c 65 72 20 6f 70 74 69 6d 69 7a 61 74 69 6f 6e  ler optimization
1240: 73 3f 20 20 4e 6f 72 6d 61 6c 6c 79 2c 20 74 68  s?  Normally, th
1250: 69 73 20 73 68 6f 75 6c 64 20 62 65 0a 23 20 6e  is should be.# n
1260: 6f 6e 2d 7a 65 72 6f 2e 20 20 53 65 74 74 69 6e  on-zero.  Settin
1270: 67 20 74 68 69 73 20 74 6f 20 7a 65 72 6f 2c 20  g this to zero,
1280: 74 68 75 73 20 64 69 73 61 62 6c 69 6e 67 20 61  thus disabling a
1290: 6c 6c 20 63 6f 6d 70 69 6c 65 72 20 6f 70 74 69  ll compiler opti
12a0: 6d 69 7a 61 74 69 6f 6e 73 2c 0a 23 20 63 61 6e  mizations,.# can
12b0: 20 62 65 20 75 73 65 66 75 6c 20 66 6f 72 20 74   be useful for t
12c0: 65 73 74 69 6e 67 2e 0a 23 0a 21 49 46 4e 44 45  esting..#.!IFNDE
12d0: 46 20 4f 50 54 49 4d 49 5a 41 54 49 4f 4e 53 0a  F OPTIMIZATIONS.
12e0: 4f 50 54 49 4d 49 5a 41 54 49 4f 4e 53 20 3d 20  OPTIMIZATIONS =
12f0: 32 0a 21 45 4e 44 49 46 0a 0a 23 20 53 65 74 20  2.!ENDIF..# Set
1300: 74 68 69 73 20 74 6f 20 6e 6f 6e 2d 30 20 74 6f  this to non-0 to
1310: 20 65 6e 61 62 6c 65 20 73 75 70 70 6f 72 74 20   enable support
1320: 66 6f 72 20 74 68 65 20 73 65 73 73 69 6f 6e 20  for the session
1330: 65 78 74 65 6e 73 69 6f 6e 2e 0a 23 0a 21 49 46  extension..#.!IF
1340: 4e 44 45 46 20 53 45 53 53 49 4f 4e 0a 53 45 53  NDEF SESSION.SES
1350: 53 49 4f 4e 20 3d 20 30 0a 21 45 4e 44 49 46 0a  SION = 0.!ENDIF.
1360: 0a 23 20 53 65 74 20 74 68 65 20 73 6f 75 72 63  .# Set the sourc
1370: 65 20 63 6f 64 65 20 66 69 6c 65 20 74 6f 20 62  e code file to b
1380: 65 20 75 73 65 64 20 62 79 20 65 78 65 63 75 74  e used by execut
1390: 61 62 6c 65 73 20 61 6e 64 20 6c 69 62 72 61 72  ables and librar
13a0: 69 65 73 20 77 68 65 6e 0a 23 20 74 68 65 79 20  ies when.# they
13b0: 6e 65 65 64 20 74 68 65 20 61 6d 61 6c 67 61 6d  need the amalgam
13c0: 61 74 69 6f 6e 2e 0a 23 0a 21 49 46 4e 44 45 46  ation..#.!IFNDEF
13d0: 20 53 51 4c 49 54 45 33 43 0a 21 49 46 20 24 28   SQLITE3C.!IF $( 13e0: 53 50 4c 49 54 5f 41 4d 41 4c 47 41 4d 41 54 49 SPLIT_AMALGAMATI 13f0: 4f 4e 29 21 3d 30 0a 53 51 4c 49 54 45 33 43 20 ON)!=0.SQLITE3C 1400: 3d 20 73 71 6c 69 74 65 33 2d 61 6c 6c 2e 63 0a = sqlite3-all.c. 1410: 21 45 4c 53 45 0a 53 51 4c 49 54 45 33 43 20 3d !ELSE.SQLITE3C = 1420: 20 73 71 6c 69 74 65 33 2e 63 0a 21 45 4e 44 49 sqlite3.c.!ENDI 1430: 46 0a 21 45 4e 44 49 46 0a 0a 23 20 53 65 74 20 F.!ENDIF..# Set 1440: 74 68 65 20 69 6e 63 6c 75 64 65 20 63 6f 64 65 the include code 1450: 20 66 69 6c 65 20 74 6f 20 62 65 20 75 73 65 64 file to be used 1460: 20 62 79 20 65 78 65 63 75 74 61 62 6c 65 73 20 by executables 1470: 61 6e 64 20 6c 69 62 72 61 72 69 65 73 20 77 68 and libraries wh 1480: 65 6e 0a 23 20 74 68 65 79 20 6e 65 65 64 20 53 en.# they need S 1490: 51 4c 69 74 65 2e 0a 23 0a 21 49 46 4e 44 45 46 QLite..#.!IFNDEF 14a0: 20 53 51 4c 49 54 45 33 48 0a 53 51 4c 49 54 45 SQLITE3H.SQLITE 14b0: 33 48 20 3d 20 73 71 6c 69 74 65 33 2e 68 0a 21 3H = sqlite3.h.! 14c0: 45 4e 44 49 46 0a 0a 23 20 54 68 69 73 20 69 73 ENDIF..# This is 14d0: 20 74 68 65 20 6e 61 6d 65 20 74 6f 20 75 73 65 the name to use 14e0: 20 66 6f 72 20 74 68 65 20 53 51 4c 69 74 65 20 for the SQLite 14f0: 64 79 6e 61 6d 69 63 20 6c 69 6e 6b 20 6c 69 62 dynamic link lib 1500: 72 61 72 79 20 28 44 4c 4c 29 2e 0a 23 0a 21 49 rary (DLL)..#.!I 1510: 46 4e 44 45 46 20 53 51 4c 49 54 45 33 44 4c 4c FNDEF SQLITE3DLL 1520: 0a 21 49 46 20 24 28 46 4f 52 5f 57 49 4e 31 30 .!IF$(FOR_WIN10
1530: 29 21 3d 30 0a 53 51 4c 49 54 45 33 44 4c 4c 20  )!=0.SQLITE3DLL
1540: 3d 20 77 69 6e 73 71 6c 69 74 65 33 2e 64 6c 6c  = winsqlite3.dll
1550: 0a 21 45 4c 53 45 0a 53 51 4c 49 54 45 33 44 4c  .!ELSE.SQLITE3DL
1560: 4c 20 3d 20 73 71 6c 69 74 65 33 2e 64 6c 6c 0a  L = sqlite3.dll.
1570: 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a 23  !ENDIF.!ENDIF..#
1580: 20 54 68 69 73 20 69 73 20 74 68 65 20 6e 61 6d   This is the nam
1590: 65 20 74 6f 20 75 73 65 20 66 6f 72 20 74 68 65  e to use for the
15a0: 20 53 51 4c 69 74 65 20 69 6d 70 6f 72 74 20 6c   SQLite import l
15b0: 69 62 72 61 72 79 20 28 4c 49 42 29 2e 0a 23 0a  ibrary (LIB)..#.
15c0: 21 49 46 4e 44 45 46 20 53 51 4c 49 54 45 33 4c  !IFNDEF SQLITE3L
15d0: 49 42 0a 21 49 46 20 24 28 46 4f 52 5f 57 49 4e  IB.!IF $(FOR_WIN 15e0: 31 30 29 21 3d 30 0a 53 51 4c 49 54 45 33 4c 49 10)!=0.SQLITE3LI 15f0: 42 20 3d 20 77 69 6e 73 71 6c 69 74 65 33 2e 6c B = winsqlite3.l 1600: 69 62 0a 21 45 4c 53 45 0a 53 51 4c 49 54 45 33 ib.!ELSE.SQLITE3 1610: 4c 49 42 20 3d 20 73 71 6c 69 74 65 33 2e 6c 69 LIB = sqlite3.li 1620: 62 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a b.!ENDIF.!ENDIF. 1630: 0a 23 20 54 68 69 73 20 69 73 20 74 68 65 20 6e .# This is the n 1640: 61 6d 65 20 74 6f 20 75 73 65 20 66 6f 72 20 74 ame to use for t 1650: 68 65 20 53 51 4c 69 74 65 20 73 68 65 6c 6c 20 he SQLite shell 1660: 65 78 65 63 75 74 61 62 6c 65 20 28 45 58 45 29 executable (EXE) 1670: 2e 0a 23 0a 21 49 46 4e 44 45 46 20 53 51 4c 49 ..#.!IFNDEF SQLI 1680: 54 45 33 45 58 45 0a 21 49 46 20 24 28 46 4f 52 TE3EXE.!IF$(FOR
1690: 5f 57 49 4e 31 30 29 21 3d 30 0a 53 51 4c 49 54  _WIN10)!=0.SQLIT
16a0: 45 33 45 58 45 20 3d 20 77 69 6e 73 71 6c 69 74  E3EXE = winsqlit
16b0: 65 33 73 68 65 6c 6c 2e 65 78 65 0a 21 45 4c 53  e3shell.exe.!ELS
16c0: 45 0a 53 51 4c 49 54 45 33 45 58 45 20 3d 20 73  E.SQLITE3EXE = s
16d0: 71 6c 69 74 65 33 2e 65 78 65 0a 21 45 4e 44 49  qlite3.exe.!ENDI
16e0: 46 0a 21 45 4e 44 49 46 0a 0a 23 20 54 68 69 73  F.!ENDIF..# This
16f0: 20 69 73 20 74 68 65 20 61 72 67 75 6d 65 6e 74   is the argument
1700: 20 75 73 65 64 20 74 6f 20 73 65 74 20 74 68 65   used to set the
1710: 20 70 72 6f 67 72 61 6d 20 64 61 74 61 62 61 73   program databas
1720: 65 20 28 50 44 42 29 20 66 69 6c 65 20 66 6f 72  e (PDB) file for
1730: 20 74 68 65 0a 23 20 53 51 4c 69 74 65 20 73 68   the.# SQLite sh
1740: 65 6c 6c 20 65 78 65 63 75 74 61 62 6c 65 20 28  ell executable (
1750: 45 58 45 29 2e 0a 23 0a 21 49 46 4e 44 45 46 20  EXE)..#.!IFNDEF
1760: 53 51 4c 49 54 45 33 45 58 45 50 44 42 0a 21 49  SQLITE3EXEPDB.!I
1770: 46 20 24 28 46 4f 52 5f 57 49 4e 31 30 29 21 3d  F $(FOR_WIN10)!= 1780: 30 0a 53 51 4c 49 54 45 33 45 58 45 50 44 42 20 0.SQLITE3EXEPDB 1790: 3d 0a 21 45 4c 53 45 0a 53 51 4c 49 54 45 33 45 =.!ELSE.SQLITE3E 17a0: 58 45 50 44 42 20 3d 20 2f 70 64 62 3a 73 71 6c XEPDB = /pdb:sql 17b0: 69 74 65 33 73 68 2e 70 64 62 0a 21 45 4e 44 49 ite3sh.pdb.!ENDI 17c0: 46 0a 21 45 4e 44 49 46 0a 0a 23 20 54 68 65 73 F.!ENDIF..# Thes 17d0: 65 20 61 72 65 20 74 68 65 20 22 73 74 61 6e 64 e are the "stand 17e0: 61 72 64 22 20 53 51 4c 69 74 65 20 63 6f 6d 70 ard" SQLite comp 17f0: 69 6c 61 74 69 6f 6e 20 6f 70 74 69 6f 6e 73 20 ilation options 1800: 75 73 65 64 20 77 68 65 6e 20 63 6f 6d 70 69 6c used when compil 1810: 69 6e 67 20 66 6f 72 0a 23 20 74 68 65 20 57 69 ing for.# the Wi 1820: 6e 64 6f 77 73 20 70 6c 61 74 66 6f 72 6d 2e 0a ndows platform.. 1830: 23 0a 21 49 46 4e 44 45 46 20 4f 50 54 5f 46 45 #.!IFNDEF OPT_FE 1840: 41 54 55 52 45 5f 46 4c 41 47 53 0a 4f 50 54 5f ATURE_FLAGS.OPT_ 1850: 46 45 41 54 55 52 45 5f 46 4c 41 47 53 20 3d 20 FEATURE_FLAGS = 1860: 24 28 4f 50 54 5f 46 45 41 54 55 52 45 5f 46 4c$(OPT_FEATURE_FL
1870: 41 47 53 29 20 2d 44 53 51 4c 49 54 45 5f 45 4e  AGS) -DSQLITE_EN
1880: 41 42 4c 45 5f 46 54 53 33 3d 31 0a 4f 50 54 5f  ABLE_FTS3=1.OPT_
1890: 46 45 41 54 55 52 45 5f 46 4c 41 47 53 20 3d 20  FEATURE_FLAGS =
18a0: 24 28 4f 50 54 5f 46 45 41 54 55 52 45 5f 46 4c  $(OPT_FEATURE_FL 18b0: 41 47 53 29 20 2d 44 53 51 4c 49 54 45 5f 45 4e AGS) -DSQLITE_EN 18c0: 41 42 4c 45 5f 52 54 52 45 45 3d 31 0a 4f 50 54 ABLE_RTREE=1.OPT 18d0: 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 20 3d _FEATURE_FLAGS = 18e0: 20 24 28 4f 50 54 5f 46 45 41 54 55 52 45 5f 46$(OPT_FEATURE_F
18f0: 4c 41 47 53 29 20 2d 44 53 51 4c 49 54 45 5f 45  LAGS) -DSQLITE_E
1900: 4e 41 42 4c 45 5f 43 4f 4c 55 4d 4e 5f 4d 45 54  NABLE_COLUMN_MET
1910: 41 44 41 54 41 3d 31 0a 21 45 4e 44 49 46 0a 0a  ADATA=1.!ENDIF..
1920: 23 20 53 68 6f 75 6c 64 20 74 68 65 20 73 65 73  # Should the ses
1930: 73 69 6f 6e 20 65 78 74 65 6e 73 69 6f 6e 20 62  sion extension b
1940: 65 20 65 6e 61 62 6c 65 64 3f 20 20 49 66 20 73  e enabled?  If s
1950: 6f 2c 20 61 64 64 20 63 6f 6d 70 69 6c 61 74 69  o, add compilati
1960: 6f 6e 20 6f 70 74 69 6f 6e 73 0a 23 20 74 6f 20  on options.# to
1970: 65 6e 61 62 6c 65 20 69 74 2e 0a 23 0a 21 49 46  enable it..#.!IF
1980: 20 24 28 53 45 53 53 49 4f 4e 29 21 3d 30 0a 4f   $(SESSION)!=0.O 1990: 50 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 PT_FEATURE_FLAGS 19a0: 20 3d 20 24 28 4f 50 54 5f 46 45 41 54 55 52 45 =$(OPT_FEATURE
19b0: 5f 46 4c 41 47 53 29 20 2d 44 53 51 4c 49 54 45  _FLAGS) -DSQLITE
19c0: 5f 45 4e 41 42 4c 45 5f 53 45 53 53 49 4f 4e 3d  _ENABLE_SESSION=
19d0: 31 0a 4f 50 54 5f 46 45 41 54 55 52 45 5f 46 4c  1.OPT_FEATURE_FL
19e0: 41 47 53 20 3d 20 24 28 4f 50 54 5f 46 45 41 54  AGS = $(OPT_FEAT 19f0: 55 52 45 5f 46 4c 41 47 53 29 20 2d 44 53 51 4c URE_FLAGS) -DSQL 1a00: 49 54 45 5f 45 4e 41 42 4c 45 5f 50 52 45 55 50 ITE_ENABLE_PREUP 1a10: 44 41 54 45 5f 48 4f 4f 4b 3d 31 0a 21 45 4e 44 DATE_HOOK=1.!END 1a20: 49 46 0a 0a 23 20 54 68 65 73 65 20 61 72 65 20 IF..# These are 1a30: 74 68 65 20 22 65 78 74 65 6e 64 65 64 22 20 53 the "extended" S 1a40: 51 4c 69 74 65 20 63 6f 6d 70 69 6c 61 74 69 6f QLite compilatio 1a50: 6e 20 6f 70 74 69 6f 6e 73 20 75 73 65 64 20 77 n options used w 1a60: 68 65 6e 20 63 6f 6d 70 69 6c 69 6e 67 20 66 6f hen compiling fo 1a70: 72 0a 23 20 74 68 65 20 57 69 6e 64 6f 77 73 20 r.# the Windows 1a80: 31 30 20 70 6c 61 74 66 6f 72 6d 2e 0a 23 0a 21 10 platform..#.! 1a90: 49 46 4e 44 45 46 20 45 58 54 5f 46 45 41 54 55 IFNDEF EXT_FEATU 1aa0: 52 45 5f 46 4c 41 47 53 0a 21 49 46 20 24 28 46 RE_FLAGS.!IF$(F
1ab0: 4f 52 5f 57 49 4e 31 30 29 21 3d 30 0a 45 58 54  OR_WIN10)!=0.EXT
1ac0: 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 20 3d  _FEATURE_FLAGS =
1ad0: 20 24 28 45 58 54 5f 46 45 41 54 55 52 45 5f 46   $(EXT_FEATURE_F 1ae0: 4c 41 47 53 29 20 2d 44 53 51 4c 49 54 45 5f 45 LAGS) -DSQLITE_E 1af0: 4e 41 42 4c 45 5f 46 54 53 34 3d 31 0a 45 58 54 NABLE_FTS4=1.EXT 1b00: 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 20 3d _FEATURE_FLAGS = 1b10: 20 24 28 45 58 54 5f 46 45 41 54 55 52 45 5f 46$(EXT_FEATURE_F
1b20: 4c 41 47 53 29 20 2d 44 53 51 4c 49 54 45 5f 53  LAGS) -DSQLITE_S
1b30: 59 53 54 45 4d 5f 4d 41 4c 4c 4f 43 3d 31 0a 45  YSTEM_MALLOC=1.E
1b40: 58 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53  XT_FEATURE_FLAGS
1b50: 20 3d 20 24 28 45 58 54 5f 46 45 41 54 55 52 45   = $(EXT_FEATURE 1b60: 5f 46 4c 41 47 53 29 20 2d 44 53 51 4c 49 54 45 _FLAGS) -DSQLITE 1b70: 5f 4f 4d 49 54 5f 4c 4f 43 41 4c 54 49 4d 45 3d _OMIT_LOCALTIME= 1b80: 31 0a 21 45 4c 53 45 0a 45 58 54 5f 46 45 41 54 1.!ELSE.EXT_FEAT 1b90: 55 52 45 5f 46 4c 41 47 53 20 3d 0a 21 45 4e 44 URE_FLAGS =.!END 1ba0: 49 46 0a 21 45 4e 44 49 46 0a 0a 23 23 23 23 23 IF.!ENDIF..##### 1bb0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 1bc0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 1bd0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 1be0: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 1bf0: 23 23 23 23 23 23 23 23 23 23 0a 23 23 23 23 23 ##########.##### 1c00: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 1c10: 23 23 23 23 23 23 23 23 23 23 20 45 4e 44 20 4f ########## END O 1c20: 46 20 4f 50 54 49 4f 4e 53 20 23 23 23 23 23 23 F OPTIONS ###### 1c30: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 1c40: 23 23 23 23 23 23 23 23 23 23 0a 23 23 23 23 23 ##########.##### 1c50: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 1c60: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 1c70: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 1c80: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 1c90: 23 23 23 23 23 23 23 23 23 23 0a 0a 23 20 57 68 ##########..# Wh 1ca0: 65 6e 20 63 6f 6d 70 69 6c 69 6e 67 20 66 6f 72 en compiling for 1cb0: 20 74 68 65 20 57 69 6e 64 6f 77 73 20 31 30 20 the Windows 10 1cc0: 70 6c 61 74 66 6f 72 6d 2c 20 74 68 65 20 50 4c platform, the PL 1cd0: 41 54 46 4f 52 4d 20 6d 61 63 72 6f 20 6d 75 73 ATFORM macro mus 1ce0: 74 20 62 65 20 73 65 74 0a 23 20 74 6f 20 61 6e t be set.# to an 1cf0: 20 61 70 70 72 6f 70 72 69 61 74 65 20 76 61 6c appropriate val 1d00: 75 65 20 28 65 2e 67 2e 20 78 38 36 2c 20 78 36 ue (e.g. x86, x6 1d10: 34 2c 20 61 72 6d 2c 20 61 72 6d 36 34 2c 20 65 4, arm, arm64, e 1d20: 74 63 29 2e 0a 23 0a 21 49 46 20 24 28 46 4f 52 tc)..#.!IF$(FOR
1d30: 5f 57 49 4e 31 30 29 21 3d 30 0a 21 49 46 4e 44  _WIN10)!=0.!IFND
1d40: 45 46 20 50 4c 41 54 46 4f 52 4d 0a 21 45 52 52  EF PLATFORM.!ERR
1d50: 4f 52 20 55 73 69 6e 67 20 74 68 65 20 46 4f 52  OR Using the FOR
1d60: 5f 57 49 4e 31 30 20 6f 70 74 69 6f 6e 20 72 65  _WIN10 option re
1d70: 71 75 69 72 65 73 20 61 20 76 61 6c 75 65 20 66  quires a value f
1d80: 6f 72 20 50 4c 41 54 46 4f 52 4d 2e 0a 21 45 4e  or PLATFORM..!EN
1d90: 44 49 46 0a 21 45 4e 44 49 46 0a 0a 23 20 54 68  DIF.!ENDIF..# Th
1da0: 69 73 20 61 73 73 75 6d 65 73 20 74 68 61 74 20  is assumes that
1db0: 4d 53 56 43 20 69 73 20 61 6c 77 61 79 73 20 69  MSVC is always i
1dc0: 6e 73 74 61 6c 6c 65 64 20 69 6e 20 33 32 2d 62  nstalled in 32-b
1dd0: 69 74 20 50 72 6f 67 72 61 6d 20 46 69 6c 65 73  it Program Files
1de0: 20 64 69 72 65 63 74 6f 72 79 0a 23 20 61 6e 64   directory.# and
1df0: 20 73 65 74 73 20 74 68 65 20 76 61 72 69 61 62   sets the variab
1e00: 6c 65 20 66 6f 72 20 75 73 65 20 69 6e 20 6c 6f  le for use in lo
1e10: 63 61 74 69 6e 67 20 6f 74 68 65 72 20 33 32 2d  cating other 32-
1e20: 62 69 74 20 69 6e 73 74 61 6c 6c 73 20 61 63 63  bit installs acc
1e30: 6f 72 64 69 6e 67 6c 79 2e 0a 23 0a 50 52 4f 47  ordingly..#.PROG
1e40: 52 41 4d 46 49 4c 45 53 5f 58 38 36 20 3d 20 24  RAMFILES_X86 = $1e50: 28 56 43 49 4e 53 54 41 4c 4c 44 49 52 29 5c 2e (VCINSTALLDIR)\. 1e60: 2e 5c 2e 2e 0a 50 52 4f 47 52 41 4d 46 49 4c 45 .\...PROGRAMFILE 1e70: 53 5f 58 38 36 20 3d 20 24 28 50 52 4f 47 52 41 S_X86 =$(PROGRA
1e80: 4d 46 49 4c 45 53 5f 58 38 36 3a 5c 5c 3d 5c 29  MFILES_X86:\\=\)
1e90: 0a 0a 23 20 43 68 65 63 6b 20 66 6f 72 20 74 68  ..# Check for th
1ea0: 65 20 70 72 65 64 65 66 69 6e 65 64 20 63 6f 6d  e predefined com
1eb0: 6d 61 6e 64 20 6d 61 63 72 6f 20 43 43 2e 20 20  mand macro CC.
1ec0: 54 68 69 73 20 73 68 6f 75 6c 64 20 70 6f 69 6e  This should poin
1ed0: 74 20 74 6f 20 74 68 65 20 63 6f 6d 70 69 6c 65  t to the compile
1ee0: 72 0a 23 20 62 69 6e 61 72 79 20 66 6f 72 20 74  r.# binary for t
1ef0: 68 65 20 74 61 72 67 65 74 20 70 6c 61 74 66 6f  he target platfo
1f00: 72 6d 2e 20 20 49 66 20 69 74 20 69 73 20 6e 6f  rm.  If it is no
1f10: 74 20 64 65 66 69 6e 65 64 2c 20 73 69 6d 70 6c  t defined, simpl
1f20: 79 20 64 65 66 69 6e 65 20 69 74 20 74 6f 0a 23  y define it to.#
1f30: 20 74 68 65 20 6c 65 67 61 63 79 20 64 65 66 61   the legacy defa
1f40: 75 6c 74 20 76 61 6c 75 65 20 27 63 6c 2e 65 78  ult value 'cl.ex
1f50: 65 27 2e 0a 23 0a 21 49 46 4e 44 45 46 20 43 43  e'..#.!IFNDEF CC
1f60: 0a 43 43 20 3d 20 63 6c 2e 65 78 65 0a 21 45 4e  .CC = cl.exe.!EN
1f70: 44 49 46 0a 0a 23 20 43 68 65 63 6b 20 66 6f 72  DIF..# Check for
1f80: 20 74 68 65 20 70 72 65 64 65 66 69 6e 65 64 20   the predefined
1f90: 63 6f 6d 6d 61 6e 64 20 6d 61 63 72 6f 20 43 53  command macro CS
1fa0: 43 2e 20 20 54 68 69 73 20 73 68 6f 75 6c 64 20  C.  This should
1fb0: 70 6f 69 6e 74 20 74 6f 20 61 20 77 6f 72 6b 69  point to a worki
1fc0: 6e 67 0a 23 20 43 20 53 68 61 72 70 20 63 6f 6d  ng.# C Sharp com
1fd0: 70 69 6c 65 72 20 62 69 6e 61 72 79 2e 20 20 49  piler binary.  I
1fe0: 66 20 69 74 20 69 73 20 6e 6f 74 20 64 65 66 69  f it is not defi
1ff0: 6e 65 64 2c 20 73 69 6d 70 6c 79 20 64 65 66 69  ned, simply defi
2000: 6e 65 20 69 74 20 74 6f 20 74 68 65 0a 23 20 6c  ne it to the.# l
2010: 65 67 61 63 79 20 64 65 66 61 75 6c 74 20 76 61  egacy default va
2020: 6c 75 65 20 27 63 73 63 2e 65 78 65 27 2e 0a 23  lue 'csc.exe'..#
2030: 0a 21 49 46 4e 44 45 46 20 43 53 43 0a 43 53 43  .!IFNDEF CSC.CSC
2040: 20 3d 20 63 73 63 2e 65 78 65 0a 21 45 4e 44 49   = csc.exe.!ENDI
2050: 46 0a 0a 23 20 43 68 65 63 6b 20 66 6f 72 20 74  F..# Check for t
2060: 68 65 20 63 6f 6d 6d 61 6e 64 20 6d 61 63 72 6f  he command macro
2070: 20 4c 44 2e 20 20 54 68 69 73 20 73 68 6f 75 6c   LD.  This shoul
2080: 64 20 70 6f 69 6e 74 20 74 6f 20 74 68 65 20 6c  d point to the l
2090: 69 6e 6b 65 72 20 62 69 6e 61 72 79 20 66 6f 72  inker binary for
20a0: 0a 23 20 74 68 65 20 74 61 72 67 65 74 20 70 6c  .# the target pl
20b0: 61 74 66 6f 72 6d 2e 20 20 49 66 20 69 74 20 69  atform.  If it i
20c0: 73 20 6e 6f 74 20 64 65 66 69 6e 65 64 2c 20 73  s not defined, s
20d0: 69 6d 70 6c 79 20 64 65 66 69 6e 65 20 69 74 20  imply define it
20e0: 74 6f 20 74 68 65 20 6c 65 67 61 63 79 0a 23 20  to the legacy.#
20f0: 64 65 66 61 75 6c 74 20 76 61 6c 75 65 20 27 6c  default value 'l
2100: 69 6e 6b 2e 65 78 65 27 2e 0a 23 0a 21 49 46 4e  ink.exe'..#.!IFN
2110: 44 45 46 20 4c 44 0a 4c 44 20 3d 20 6c 69 6e 6b  DEF LD.LD = link
2120: 2e 65 78 65 0a 21 45 4e 44 49 46 0a 0a 23 20 43  .exe.!ENDIF..# C
2130: 68 65 63 6b 20 66 6f 72 20 74 68 65 20 70 72 65  heck for the pre
2140: 64 65 66 69 6e 65 64 20 63 6f 6d 6d 61 6e 64 20  defined command
2150: 6d 61 63 72 6f 20 52 43 2e 20 20 54 68 69 73 20  macro RC.  This
2160: 73 68 6f 75 6c 64 20 70 6f 69 6e 74 20 74 6f 20  should point to
2170: 74 68 65 20 72 65 73 6f 75 72 63 65 0a 23 20 63  the resource.# c
2180: 6f 6d 70 69 6c 65 72 20 62 69 6e 61 72 79 20 66  ompiler binary f
2190: 6f 72 20 74 68 65 20 74 61 72 67 65 74 20 70 6c  or the target pl
21a0: 61 74 66 6f 72 6d 2e 20 20 49 66 20 69 74 20 69  atform.  If it i
21b0: 73 20 6e 6f 74 20 64 65 66 69 6e 65 64 2c 20 73  s not defined, s
21c0: 69 6d 70 6c 79 20 64 65 66 69 6e 65 0a 23 20 69  imply define.# i
21d0: 74 20 74 6f 20 74 68 65 20 6c 65 67 61 63 79 20  t to the legacy
21e0: 64 65 66 61 75 6c 74 20 76 61 6c 75 65 20 27 72  default value 'r
21f0: 63 2e 65 78 65 27 2e 0a 23 0a 21 49 46 4e 44 45  c.exe'..#.!IFNDE
2200: 46 20 52 43 0a 52 43 20 3d 20 72 63 2e 65 78 65  F RC.RC = rc.exe
2210: 0a 21 45 4e 44 49 46 0a 0a 23 20 43 68 65 63 6b  .!ENDIF..# Check
2220: 20 66 6f 72 20 74 68 65 20 4d 53 56 43 20 72 75   for the MSVC ru
2230: 6e 74 69 6d 65 20 6c 69 62 72 61 72 79 20 70 61  ntime library pa
2240: 74 68 20 6d 61 63 72 6f 2e 20 20 4f 74 68 65 72  th macro.  Other
2250: 77 69 73 65 2c 20 74 68 69 73 20 76 61 6c 75 65  wise, this value
2260: 20 77 69 6c 6c 0a 23 20 64 65 66 61 75 6c 74 20   will.# default
2270: 74 6f 20 74 68 65 20 27 6c 69 62 27 20 64 69 72  to the 'lib' dir
2280: 65 63 74 6f 72 79 20 75 6e 64 65 72 6e 65 61 74  ectory underneat
2290: 68 20 74 68 65 20 4d 53 56 43 20 69 6e 73 74 61  h the MSVC insta
22a0: 6c 6c 61 74 69 6f 6e 20 64 69 72 65 63 74 6f 72  llation director
22b0: 79 2e 0a 23 0a 21 49 46 4e 44 45 46 20 43 52 54  y..#.!IFNDEF CRT
22c0: 4c 49 42 50 41 54 48 0a 43 52 54 4c 49 42 50 41  LIBPATH.CRTLIBPA
22d0: 54 48 20 3d 20 24 28 56 43 49 4e 53 54 41 4c 4c  TH = $(VCINSTALL 22e0: 44 49 52 29 5c 6c 69 62 0a 21 45 4e 44 49 46 0a DIR)\lib.!ENDIF. 22f0: 0a 43 52 54 4c 49 42 50 41 54 48 20 3d 20 24 28 .CRTLIBPATH =$(
2300: 43 52 54 4c 49 42 50 41 54 48 3a 5c 5c 3d 5c 29  CRTLIBPATH:\\=\)
2310: 0a 0a 23 20 43 68 65 63 6b 20 66 6f 72 20 74 68  ..# Check for th
2320: 65 20 63 6f 6d 6d 61 6e 64 20 6d 61 63 72 6f 20  e command macro
2330: 4e 43 43 2e 20 20 54 68 69 73 20 73 68 6f 75 6c  NCC.  This shoul
2340: 64 20 70 6f 69 6e 74 20 74 6f 20 74 68 65 20 63  d point to the c
2350: 6f 6d 70 69 6c 65 72 20 62 69 6e 61 72 79 0a 23  ompiler binary.#
2360: 20 66 6f 72 20 74 68 65 20 70 6c 61 74 66 6f 72   for the platfor
2370: 6d 20 74 68 65 20 63 6f 6d 70 69 6c 61 74 69 6f  m the compilatio
2380: 6e 20 70 72 6f 63 65 73 73 20 69 73 20 74 61 6b  n process is tak
2390: 69 6e 67 20 70 6c 61 63 65 20 6f 6e 2e 20 20 49  ing place on.  I
23a0: 66 20 69 74 20 69 73 20 6e 6f 74 0a 23 20 64 65  f it is not.# de
23b0: 66 69 6e 65 64 2c 20 73 69 6d 70 6c 79 20 64 65  fined, simply de
23c0: 66 69 6e 65 20 69 74 20 74 6f 20 68 61 76 65 20  fine it to have
23d0: 74 68 65 20 73 61 6d 65 20 76 61 6c 75 65 20 61  the same value a
23e0: 73 20 74 68 65 20 43 43 20 6d 61 63 72 6f 2e 20  s the CC macro.
23f0: 20 57 68 65 6e 0a 23 20 63 72 6f 73 73 2d 63 6f   When.# cross-co
2400: 6d 70 69 6c 69 6e 67 2c 20 69 74 20 69 73 20 73  mpiling, it is s
2410: 75 67 67 65 73 74 65 64 20 74 68 61 74 20 74 68  uggested that th
2420: 69 73 20 6d 61 63 72 6f 20 62 65 20 6d 6f 64 69  is macro be modi
2430: 66 69 65 64 20 76 69 61 20 74 68 65 20 63 6f 6d  fied via the com
2440: 6d 61 6e 64 0a 23 20 6c 69 6e 65 20 28 73 69 6e  mand.# line (sin
2450: 63 65 20 6e 6d 61 6b 65 20 69 74 73 65 6c 66 20  ce nmake itself
2460: 64 6f 65 73 20 6e 6f 74 20 70 72 6f 76 69 64 65  does not provide
2470: 20 61 20 62 75 69 6c 74 2d 69 6e 20 6d 65 74 68   a built-in meth
2480: 6f 64 20 74 6f 20 67 75 65 73 73 20 69 74 29 2e  od to guess it).
2490: 0a 23 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20  .# For example,
24a0: 74 6f 20 75 73 65 20 74 68 65 20 78 38 36 20 63  to use the x86 c
24b0: 6f 6d 70 69 6c 65 72 20 77 68 65 6e 20 63 72 6f  ompiler when cro
24c0: 73 73 2d 63 6f 6d 70 69 6c 69 6e 67 20 66 6f 72  ss-compiling for
24d0: 20 78 36 34 2c 20 61 20 63 6f 6d 6d 61 6e 64 0a   x64, a command.
24e0: 23 20 6c 69 6e 65 20 73 69 6d 69 6c 61 72 20 74  # line similar t
24f0: 6f 20 74 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 20  o the following
2500: 63 6f 75 6c 64 20 62 65 20 75 73 65 64 20 28 61  could be used (a
2510: 6c 6c 20 6f 6e 20 6f 6e 65 20 6c 69 6e 65 29 3a  ll on one line):
2520: 0a 23 0a 23 20 20 20 20 20 6e 6d 61 6b 65 20 2f  .#.#     nmake /
2530: 66 20 4d 61 6b 65 66 69 6c 65 2e 6d 73 63 20 73  f Makefile.msc s
2540: 71 6c 69 74 65 33 2e 64 6c 6c 0a 23 20 20 20 20  qlite3.dll.#
2550: 20 20 20 20 20 20 20 58 43 4f 4d 50 49 4c 45 3d         XCOMPILE=
2560: 31 20 55 53 45 5f 4e 41 54 49 56 45 5f 4c 49 42  1 USE_NATIVE_LIB
2570: 50 41 54 48 53 3d 31 0a 23 0a 23 20 41 6c 74 65  PATHS=1.#.# Alte
2580: 72 6e 61 74 69 76 65 6c 79 2c 20 74 68 65 20 66  rnatively, the f
2590: 75 6c 6c 20 70 61 74 68 20 61 6e 64 20 66 69 6c  ull path and fil
25a0: 65 20 6e 61 6d 65 20 74 6f 20 74 68 65 20 63 6f  e name to the co
25b0: 6d 70 69 6c 65 72 20 62 69 6e 61 72 79 20 66 6f  mpiler binary fo
25c0: 72 20 74 68 65 0a 23 20 70 6c 61 74 66 6f 72 6d  r the.# platform
25d0: 20 74 68 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e   the compilation
25e0: 20 70 72 6f 63 65 73 73 20 69 73 20 74 61 6b 69   process is taki
25f0: 6e 67 20 70 6c 61 63 65 20 6d 61 79 20 62 65 20  ng place may be
2600: 73 70 65 63 69 66 69 65 64 20 28 61 6c 6c 20 6f  specified (all o
2610: 6e 0a 23 20 6f 6e 65 20 6c 69 6e 65 29 3a 0a 23  n.# one line):.#
2620: 0a 23 20 20 20 20 20 6e 6d 61 6b 65 20 2f 66 20  .#     nmake /f
2630: 4d 61 6b 65 66 69 6c 65 2e 6d 73 63 20 73 71 6c  Makefile.msc sql
2640: 69 74 65 33 2e 64 6c 6c 0a 23 20 20 20 20 20 20  ite3.dll.#
2650: 20 20 20 20 20 22 4e 43 43 3d 22 22 25 56 43 49       "NCC=""%VCI
2660: 4e 53 54 41 4c 4c 44 49 52 25 5c 62 69 6e 5c 63  NSTALLDIR%\bin\c
2670: 6c 2e 65 78 65 22 22 22 0a 23 20 20 20 20 20 20  l.exe""".#
2680: 20 20 20 20 20 55 53 45 5f 4e 41 54 49 56 45 5f       USE_NATIVE_
2690: 4c 49 42 50 41 54 48 53 3d 31 0a 23 0a 21 49 46  LIBPATHS=1.#.!IF
26a0: 44 45 46 20 4e 43 43 0a 4e 43 43 20 3d 20 24 28  DEF NCC.NCC = $( 26b0: 4e 43 43 3a 5c 5c 3d 5c 29 0a 21 45 4c 53 45 49 NCC:\\=\).!ELSEI 26c0: 46 20 24 28 58 43 4f 4d 50 49 4c 45 29 21 3d 30 F$(XCOMPILE)!=0
26d0: 0a 4e 43 43 20 3d 20 22 24 28 56 43 49 4e 53 54  .NCC = "$(VCINST 26e0: 41 4c 4c 44 49 52 29 5c 62 69 6e 5c 24 28 43 43 ALLDIR)\bin\$(CC
26f0: 29 22 0a 4e 43 43 20 3d 20 24 28 4e 43 43 3a 5c  )".NCC = $(NCC:\ 2700: 5c 3d 5c 29 0a 21 45 4c 53 45 0a 4e 43 43 20 3d \=\).!ELSE.NCC = 2710: 20 24 28 43 43 29 0a 21 45 4e 44 49 46 0a 0a 23$(CC).!ENDIF..#
2720: 20 43 68 65 63 6b 20 66 6f 72 20 74 68 65 20 4d   Check for the M
2730: 53 56 43 20 6e 61 74 69 76 65 20 72 75 6e 74 69  SVC native runti
2740: 6d 65 20 6c 69 62 72 61 72 79 20 70 61 74 68 20  me library path
2750: 6d 61 63 72 6f 2e 20 20 4f 74 68 65 72 77 69 73  macro.  Otherwis
2760: 65 2c 0a 23 20 74 68 69 73 20 76 61 6c 75 65 20  e,.# this value
2770: 77 69 6c 6c 20 64 65 66 61 75 6c 74 20 74 6f 20  will default to
2780: 74 68 65 20 27 6c 69 62 27 20 64 69 72 65 63 74  the 'lib' direct
2790: 6f 72 79 20 75 6e 64 65 72 6e 65 61 74 68 20 74  ory underneath t
27a0: 68 65 20 4d 53 56 43 0a 23 20 69 6e 73 74 61 6c  he MSVC.# instal
27b0: 6c 61 74 69 6f 6e 20 64 69 72 65 63 74 6f 72 79  lation directory
27c0: 2e 0a 23 0a 21 49 46 4e 44 45 46 20 4e 43 52 54  ..#.!IFNDEF NCRT
27d0: 4c 49 42 50 41 54 48 0a 4e 43 52 54 4c 49 42 50  LIBPATH.NCRTLIBP
27e0: 41 54 48 20 3d 20 24 28 56 43 49 4e 53 54 41 4c  ATH = $(VCINSTAL 27f0: 4c 44 49 52 29 5c 6c 69 62 0a 21 45 4e 44 49 46 LDIR)\lib.!ENDIF 2800: 0a 0a 4e 43 52 54 4c 49 42 50 41 54 48 20 3d 20 ..NCRTLIBPATH = 2810: 24 28 4e 43 52 54 4c 49 42 50 41 54 48 3a 5c 5c$(NCRTLIBPATH:\\
2820: 3d 5c 29 0a 0a 23 20 43 68 65 63 6b 20 66 6f 72  =\)..# Check for
2830: 20 74 68 65 20 50 6c 61 74 66 6f 72 6d 20 53 44   the Platform SD
2840: 4b 20 6c 69 62 72 61 72 79 20 70 61 74 68 20 6d  K library path m
2850: 61 63 72 6f 2e 20 20 4f 74 68 65 72 77 69 73 65  acro.  Otherwise
2860: 2c 20 74 68 69 73 0a 23 20 76 61 6c 75 65 20 77  , this.# value w
2870: 69 6c 6c 20 64 65 66 61 75 6c 74 20 74 6f 20 74  ill default to t
2880: 68 65 20 27 6c 69 62 27 20 64 69 72 65 63 74 6f  he 'lib' directo
2890: 72 79 20 75 6e 64 65 72 6e 65 61 74 68 20 74 68  ry underneath th
28a0: 65 20 57 69 6e 64 6f 77 73 0a 23 20 53 44 4b 20  e Windows.# SDK
28b0: 69 6e 73 74 61 6c 6c 61 74 69 6f 6e 20 64 69 72  installation dir
28c0: 65 63 74 6f 72 79 20 28 74 68 65 20 65 6e 76 69  ectory (the envi
28d0: 72 6f 6e 6d 65 6e 74 20 76 61 72 69 61 62 6c 65  ronment variable
28e0: 20 75 73 65 64 20 61 70 70 65 61 72 73 0a 23 20   used appears.#
28f0: 74 6f 20 62 65 20 61 76 61 69 6c 61 62 6c 65 20  to be available
2900: 77 68 65 6e 20 75 73 69 6e 67 20 56 69 73 75 61  when using Visua
2910: 6c 20 43 2b 2b 20 32 30 30 38 20 6f 72 20 6c 61  l C++ 2008 or la
2920: 74 65 72 20 76 69 61 20 74 68 65 0a 23 20 63 6f  ter via the.# co
2930: 6d 6d 61 6e 64 20 6c 69 6e 65 29 2e 0a 23 0a 21  mmand line)..#.!
2940: 49 46 4e 44 45 46 20 4e 53 44 4b 4c 49 42 50 41  IFNDEF NSDKLIBPA
2950: 54 48 0a 4e 53 44 4b 4c 49 42 50 41 54 48 20 3d  TH.NSDKLIBPATH =
2960: 20 24 28 57 49 4e 44 4f 57 53 53 44 4b 44 49 52   $(WINDOWSSDKDIR 2970: 29 5c 6c 69 62 0a 21 45 4e 44 49 46 0a 0a 4e 53 )\lib.!ENDIF..NS 2980: 44 4b 4c 49 42 50 41 54 48 20 3d 20 24 28 4e 53 DKLIBPATH =$(NS
2990: 44 4b 4c 49 42 50 41 54 48 3a 5c 5c 3d 5c 29 0a  DKLIBPATH:\\=\).
29a0: 0a 23 20 43 68 65 63 6b 20 66 6f 72 20 74 68 65  .# Check for the
29b0: 20 55 43 52 54 20 6c 69 62 72 61 72 79 20 70 61   UCRT library pa
29c0: 74 68 20 6d 61 63 72 6f 2e 20 20 4f 74 68 65 72  th macro.  Other
29d0: 77 69 73 65 2c 20 74 68 69 73 20 76 61 6c 75 65  wise, this value
29e0: 20 77 69 6c 6c 0a 23 20 64 65 66 61 75 6c 74 20   will.# default
29f0: 74 6f 20 74 68 65 20 76 65 72 73 69 6f 6e 2d 73  to the version-s
2a00: 70 65 63 69 66 69 63 2c 20 70 6c 61 74 66 6f 72  pecific, platfor
2a10: 6d 2d 73 70 65 63 69 66 69 63 20 27 6c 69 62 27  m-specific 'lib'
2a20: 20 64 69 72 65 63 74 6f 72 79 0a 23 20 75 6e 64   directory.# und
2a30: 65 72 6e 65 61 74 68 20 74 68 65 20 57 69 6e 64  erneath the Wind
2a40: 6f 77 73 20 53 44 4b 20 69 6e 73 74 61 6c 6c 61  ows SDK installa
2a50: 74 69 6f 6e 20 64 69 72 65 63 74 6f 72 79 2e 0a  tion directory..
2a60: 23 0a 21 49 46 4e 44 45 46 20 55 43 52 54 4c 49  #.!IFNDEF UCRTLI
2a70: 42 50 41 54 48 0a 55 43 52 54 4c 49 42 50 41 54  BPATH.UCRTLIBPAT
2a80: 48 20 3d 20 24 28 57 49 4e 44 4f 57 53 53 44 4b  H = $(WINDOWSSDK 2a90: 44 49 52 29 5c 6c 69 62 5c 24 28 57 49 4e 44 4f DIR)\lib\$(WINDO
2aa0: 57 53 53 44 4b 4c 49 42 56 45 52 53 49 4f 4e 29  WSSDKLIBVERSION)
2ab0: 5c 75 63 72 74 5c 24 28 50 4c 41 54 46 4f 52 4d  \ucrt\$(PLATFORM 2ac0: 29 0a 21 45 4e 44 49 46 0a 0a 55 43 52 54 4c 49 ).!ENDIF..UCRTLI 2ad0: 42 50 41 54 48 20 3d 20 24 28 55 43 52 54 4c 49 BPATH =$(UCRTLI
2ae0: 42 50 41 54 48 3a 5c 5c 3d 5c 29 0a 0a 23 20 43  BPATH:\\=\)..# C
2af0: 20 63 6f 6d 70 69 6c 65 72 20 61 6e 64 20 6f 70   compiler and op
2b00: 74 69 6f 6e 73 20 66 6f 72 20 75 73 65 20 69 6e  tions for use in
2b10: 20 62 75 69 6c 64 69 6e 67 20 65 78 65 63 75 74   building execut
2b20: 61 62 6c 65 73 20 74 68 61 74 0a 23 20 77 69 6c  ables that.# wil
2b30: 6c 20 72 75 6e 20 6f 6e 20 74 68 65 20 70 6c 61  l run on the pla
2b40: 74 66 6f 72 6d 20 74 68 61 74 20 69 73 20 64 6f  tform that is do
2b50: 69 6e 67 20 74 68 65 20 62 75 69 6c 64 2e 0a 23  ing the build..#
2b60: 0a 21 49 46 20 24 28 55 53 45 5f 46 55 4c 4c 57  .!IF $(USE_FULLW 2b70: 41 52 4e 29 21 3d 30 0a 42 43 43 20 3d 20 24 28 ARN)!=0.BCC =$(
2b80: 4e 43 43 29 20 2d 6e 6f 6c 6f 67 6f 20 2d 57 34  NCC) -nologo -W4
2b90: 20 24 28 43 43 4f 50 54 53 29 20 24 28 42 43 43   $(CCOPTS)$(BCC
2ba0: 4f 50 54 53 29 0a 21 45 4c 53 45 0a 42 43 43 20  OPTS).!ELSE.BCC
2bb0: 3d 20 24 28 4e 43 43 29 20 2d 6e 6f 6c 6f 67 6f  = $(NCC) -nologo 2bc0: 20 2d 57 33 20 24 28 43 43 4f 50 54 53 29 20 24 -W3$(CCOPTS) $2bd0: 28 42 43 43 4f 50 54 53 29 0a 21 45 4e 44 49 46 (BCCOPTS).!ENDIF 2be0: 0a 0a 23 20 43 68 65 63 6b 20 69 66 20 61 73 73 ..# Check if ass 2bf0: 65 6d 62 6c 79 20 63 6f 64 65 20 6c 69 73 74 69 embly code listi 2c00: 6e 67 73 20 73 68 6f 75 6c 64 20 62 65 20 67 65 ngs should be ge 2c10: 6e 65 72 61 74 65 64 20 66 6f 72 20 74 68 65 20 nerated for the 2c20: 73 6f 75 72 63 65 0a 23 20 63 6f 64 65 20 66 69 source.# code fi 2c30: 6c 65 73 20 74 6f 20 62 65 20 63 6f 6d 70 69 6c les to be compil 2c40: 65 64 2e 0a 23 0a 21 49 46 20 24 28 55 53 45 5f ed..#.!IF$(USE_
2c50: 4c 49 53 54 49 4e 47 53 29 21 3d 30 0a 42 43 43  LISTINGS)!=0.BCC
2c60: 20 3d 20 24 28 42 43 43 29 20 2d 46 41 63 73 0a   = $(BCC) -FAcs. 2c70: 21 45 4e 44 49 46 0a 0a 23 20 43 68 65 63 6b 20 !ENDIF..# Check 2c80: 69 66 20 74 68 65 20 6e 61 74 69 76 65 20 6c 69 if the native li 2c90: 62 72 61 72 79 20 70 61 74 68 73 20 73 68 6f 75 brary paths shou 2ca0: 6c 64 20 62 65 20 75 73 65 64 20 77 68 65 6e 20 ld be used when 2cb0: 63 6f 6d 70 69 6c 69 6e 67 0a 23 20 74 68 65 20 compiling.# the 2cc0: 63 6f 6d 6d 61 6e 64 20 6c 69 6e 65 20 74 6f 6f command line too 2cd0: 6c 73 20 75 73 65 64 20 64 75 72 69 6e 67 20 74 ls used during t 2ce0: 68 65 20 63 6f 6d 70 69 6c 61 74 69 6f 6e 20 70 he compilation p 2cf0: 72 6f 63 65 73 73 2e 20 20 49 66 0a 23 20 73 6f rocess. If.# so 2d00: 2c 20 73 65 74 20 74 68 65 20 6e 65 63 65 73 73 , set the necess 2d10: 61 72 79 20 6d 61 63 72 6f 20 6e 6f 77 2e 0a 23 ary macro now..# 2d20: 0a 21 49 46 20 24 28 55 53 45 5f 4e 41 54 49 56 .!IF$(USE_NATIV
2d30: 45 5f 4c 49 42 50 41 54 48 53 29 21 3d 30 0a 4e  E_LIBPATHS)!=0.N
2d40: 4c 54 4c 49 42 50 41 54 48 53 20 3d 20 22 2f 4c  LTLIBPATHS = "/L
2d50: 49 42 50 41 54 48 3a 24 28 4e 43 52 54 4c 49 42  IBPATH:$(NCRTLIB 2d60: 50 41 54 48 29 22 20 22 2f 4c 49 42 50 41 54 48 PATH)" "/LIBPATH 2d70: 3a 24 28 4e 53 44 4b 4c 49 42 50 41 54 48 29 22 :$(NSDKLIBPATH)"
2d80: 0a 0a 21 49 46 44 45 46 20 4e 55 43 52 54 4c 49  ..!IFDEF NUCRTLI
2d90: 42 50 41 54 48 0a 4e 55 43 52 54 4c 49 42 50 41  BPATH.NUCRTLIBPA
2da0: 54 48 20 3d 20 24 28 4e 55 43 52 54 4c 49 42 50  TH = $(NUCRTLIBP 2db0: 41 54 48 3a 5c 5c 3d 5c 29 0a 4e 4c 54 4c 49 42 ATH:\\=\).NLTLIB 2dc0: 50 41 54 48 53 20 3d 20 24 28 4e 4c 54 4c 49 42 PATHS =$(NLTLIB
2dd0: 50 41 54 48 53 29 20 22 2f 4c 49 42 50 41 54 48  PATHS) "/LIBPATH
2de0: 3a 24 28 4e 55 43 52 54 4c 49 42 50 41 54 48 29  :$(NUCRTLIBPATH) 2df0: 22 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a ".!ENDIF.!ENDIF. 2e00: 0a 23 20 43 20 63 6f 6d 70 69 6c 65 72 20 61 6e .# C compiler an 2e10: 64 20 6f 70 74 69 6f 6e 73 20 66 6f 72 20 75 73 d options for us 2e20: 65 20 69 6e 20 62 75 69 6c 64 69 6e 67 20 65 78 e in building ex 2e30: 65 63 75 74 61 62 6c 65 73 20 74 68 61 74 0a 23 ecutables that.# 2e40: 20 77 69 6c 6c 20 72 75 6e 20 6f 6e 20 74 68 65 will run on the 2e50: 20 74 61 72 67 65 74 20 70 6c 61 74 66 6f 72 6d target platform 2e60: 2e 20 20 28 42 43 43 20 61 6e 64 20 54 43 43 20 . (BCC and TCC 2e70: 61 72 65 20 75 73 75 61 6c 6c 79 20 74 68 65 0a are usually the. 2e80: 23 20 73 61 6d 65 20 75 6e 6c 65 73 73 20 79 6f # same unless yo 2e90: 75 72 20 61 72 65 20 63 72 6f 73 73 2d 63 6f 6d ur are cross-com 2ea0: 70 69 6c 69 6e 67 2e 29 0a 23 0a 21 49 46 20 24 piling.).#.!IF$
2eb0: 28 55 53 45 5f 46 55 4c 4c 57 41 52 4e 29 21 3d  (USE_FULLWARN)!=
2ec0: 30 0a 54 43 43 20 3d 20 24 28 43 43 29 20 2d 6e  0.TCC = $(CC) -n 2ed0: 6f 6c 6f 67 6f 20 2d 57 34 20 2d 44 49 4e 43 4c ologo -W4 -DINCL 2ee0: 55 44 45 5f 4d 53 56 43 5f 48 3d 31 20 24 28 43 UDE_MSVC_H=1$(C
2ef0: 43 4f 50 54 53 29 20 24 28 54 43 43 4f 50 54 53  COPTS) $(TCCOPTS 2f00: 29 0a 21 45 4c 53 45 0a 54 43 43 20 3d 20 24 28 ).!ELSE.TCC =$(
2f10: 43 43 29 20 2d 6e 6f 6c 6f 67 6f 20 2d 57 33 20  CC) -nologo -W3
2f20: 24 28 43 43 4f 50 54 53 29 20 24 28 54 43 43 4f  $(CCOPTS)$(TCCO
2f30: 50 54 53 29 0a 21 45 4e 44 49 46 0a 0a 54 43 43  PTS).!ENDIF..TCC
2f40: 20 3d 20 24 28 54 43 43 29 20 2d 44 53 51 4c 49   = $(TCC) -DSQLI 2f50: 54 45 5f 4f 53 5f 57 49 4e 3d 31 20 2d 49 2e 20 TE_OS_WIN=1 -I. 2f60: 2d 49 24 28 54 4f 50 29 20 2d 49 24 28 54 4f 50 -I$(TOP) -I$(TOP 2f70: 29 5c 73 72 63 20 2d 66 70 3a 70 72 65 63 69 73 )\src -fp:precis 2f80: 65 0a 52 43 43 20 3d 20 24 28 52 43 29 20 2d 44 e.RCC =$(RC) -D
2f90: 53 51 4c 49 54 45 5f 4f 53 5f 57 49 4e 3d 31 20  SQLITE_OS_WIN=1
2fa0: 2d 49 2e 20 2d 49 24 28 54 4f 50 29 20 2d 49 24  -I. -I$(TOP) -I$
2fb0: 28 54 4f 50 29 5c 73 72 63 20 24 28 52 43 4f 50  (TOP)\src $(RCOP 2fc0: 54 53 29 20 24 28 52 43 43 4f 50 54 53 29 0a 0a TS)$(RCCOPTS)..
2fd0: 23 20 43 68 65 63 6b 20 69 66 20 77 65 20 77 61  # Check if we wa
2fe0: 6e 74 20 74 6f 20 75 73 65 20 74 68 65 20 22 73  nt to use the "s
2ff0: 74 64 63 61 6c 6c 22 20 63 61 6c 6c 69 6e 67 20  tdcall" calling
3000: 63 6f 6e 76 65 6e 74 69 6f 6e 20 77 68 65 6e 20  convention when
3010: 63 6f 6d 70 69 6c 69 6e 67 2e 0a 23 20 54 68 69  compiling..# Thi
3020: 73 20 69 73 20 6e 6f 74 20 73 75 70 70 6f 72 74  s is not support
3030: 65 64 20 62 79 20 74 68 65 20 63 6f 6d 70 69 6c  ed by the compil
3040: 65 72 73 20 66 6f 72 20 6e 6f 6e 2d 78 38 36 20  ers for non-x86
3050: 70 6c 61 74 66 6f 72 6d 73 2e 20 20 49 74 20 73  platforms.  It s
3060: 68 6f 75 6c 64 0a 23 20 61 6c 73 6f 20 62 65 20  hould.# also be
3070: 6e 6f 74 65 64 20 68 65 72 65 20 74 68 61 74 20  noted here that
3080: 62 75 69 6c 64 69 6e 67 20 61 6e 79 20 74 61 72  building any tar
3090: 67 65 74 20 77 69 74 68 20 74 68 65 73 65 20 22  get with these "
30a0: 73 74 64 63 61 6c 6c 22 20 6f 70 74 69 6f 6e 73  stdcall" options
30b0: 0a 23 20 77 69 6c 6c 20 6d 6f 73 74 20 6c 69 6b  .# will most lik
30c0: 65 6c 79 20 66 61 69 6c 20 69 66 20 74 68 65 20  ely fail if the
30d0: 54 63 6c 20 6c 69 62 72 61 72 79 20 69 73 20 61  Tcl library is a
30e0: 6c 73 6f 20 72 65 71 75 69 72 65 64 2e 20 20 54  lso required.  T
30f0: 68 69 73 20 69 73 20 64 75 65 0a 23 20 74 6f 20  his is due.# to
3100: 68 6f 77 20 74 68 65 20 54 63 6c 20 6c 69 62 72  how the Tcl libr
3110: 61 72 79 20 66 75 6e 63 74 69 6f 6e 73 20 61 72  ary functions ar
3120: 65 20 64 65 63 6c 61 72 65 64 20 61 6e 64 20 65  e declared and e
3130: 78 70 6f 72 74 65 64 20 28 69 2e 65 2e 20 77 69  xported (i.e. wi
3140: 74 68 6f 75 74 0a 23 20 61 6e 20 65 78 70 6c 69  thout.# an expli
3150: 63 69 74 20 63 61 6c 6c 69 6e 67 20 63 6f 6e 76  cit calling conv
3160: 65 6e 74 69 6f 6e 2c 20 77 68 69 63 68 20 72 65  ention, which re
3170: 73 75 6c 74 73 20 69 6e 20 22 63 64 65 63 6c 22  sults in "cdecl"
3180: 29 2e 0a 23 0a 21 49 46 20 24 28 55 53 45 5f 53  )..#.!IF $(USE_S 3190: 54 44 43 41 4c 4c 29 21 3d 30 20 7c 7c 20 24 28 TDCALL)!=0 ||$(
31a0: 46 4f 52 5f 57 49 4e 31 30 29 21 3d 30 0a 21 49  FOR_WIN10)!=0.!I
31b0: 46 20 22 24 28 50 4c 41 54 46 4f 52 4d 29 22 3d  F "$(PLATFORM)"= 31c0: 3d 22 78 38 36 22 0a 43 4f 52 45 5f 43 43 4f 4e ="x86".CORE_CCON 31d0: 56 5f 4f 50 54 53 20 3d 20 2d 47 7a 20 2d 44 53 V_OPTS = -Gz -DS 31e0: 51 4c 49 54 45 5f 43 44 45 43 4c 3d 5f 5f 63 64 QLITE_CDECL=__cd 31f0: 65 63 6c 20 2d 44 53 51 4c 49 54 45 5f 41 50 49 ecl -DSQLITE_API 3200: 43 41 4c 4c 3d 5f 5f 73 74 64 63 61 6c 6c 20 2d CALL=__stdcall - 3210: 44 53 51 4c 49 54 45 5f 43 41 4c 4c 42 41 43 4b DSQLITE_CALLBACK 3220: 3d 5f 5f 73 74 64 63 61 6c 6c 20 2d 44 53 51 4c =__stdcall -DSQL 3230: 49 54 45 5f 53 59 53 41 50 49 3d 5f 5f 73 74 64 ITE_SYSAPI=__std 3240: 63 61 6c 6c 0a 53 48 45 4c 4c 5f 43 43 4f 4e 56 call.SHELL_CCONV 3250: 5f 4f 50 54 53 20 3d 20 2d 47 7a 20 2d 44 53 51 _OPTS = -Gz -DSQ 3260: 4c 49 54 45 5f 43 44 45 43 4c 3d 5f 5f 63 64 65 LITE_CDECL=__cde 3270: 63 6c 20 2d 44 53 51 4c 49 54 45 5f 41 50 49 43 cl -DSQLITE_APIC 3280: 41 4c 4c 3d 5f 5f 73 74 64 63 61 6c 6c 20 2d 44 ALL=__stdcall -D 3290: 53 51 4c 49 54 45 5f 43 41 4c 4c 42 41 43 4b 3d SQLITE_CALLBACK= 32a0: 5f 5f 73 74 64 63 61 6c 6c 20 2d 44 53 51 4c 49 __stdcall -DSQLI 32b0: 54 45 5f 53 59 53 41 50 49 3d 5f 5f 73 74 64 63 TE_SYSAPI=__stdc 32c0: 61 6c 6c 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 54 all.# <<mark>>.T 32d0: 45 53 54 5f 43 43 4f 4e 56 5f 4f 50 54 53 20 3d EST_CCONV_OPTS = 32e0: 20 2d 47 7a 20 2d 44 53 51 4c 49 54 45 5f 43 44 -Gz -DSQLITE_CD 32f0: 45 43 4c 3d 5f 5f 63 64 65 63 6c 20 2d 44 53 51 ECL=__cdecl -DSQ 3300: 4c 49 54 45 5f 41 50 49 43 41 4c 4c 3d 5f 5f 73 LITE_APICALL=__s 3310: 74 64 63 61 6c 6c 20 2d 44 53 51 4c 49 54 45 5f tdcall -DSQLITE_ 3320: 43 41 4c 4c 42 41 43 4b 3d 5f 5f 73 74 64 63 61 CALLBACK=__stdca 3330: 6c 6c 20 2d 44 53 51 4c 49 54 45 5f 53 59 53 41 ll -DSQLITE_SYSA 3340: 50 49 3d 5f 5f 73 74 64 63 61 6c 6c 20 2d 44 49 PI=__stdcall -DI 3350: 4e 43 4c 55 44 45 5f 53 51 4c 49 54 45 5f 54 43 NCLUDE_SQLITE_TC 3360: 4c 5f 48 3d 31 20 2d 44 53 51 4c 49 54 45 5f 54 L_H=1 -DSQLITE_T 3370: 43 4c 41 50 49 3d 5f 5f 63 64 65 63 6c 0a 23 20 CLAPI=__cdecl.# 3380: 3c 3c 2f 6d 61 72 6b 3e 3e 0a 21 45 4c 53 45 0a <</mark>>.!ELSE. 3390: 21 49 46 4e 44 45 46 20 50 4c 41 54 46 4f 52 4d !IFNDEF PLATFORM 33a0: 0a 43 4f 52 45 5f 43 43 4f 4e 56 5f 4f 50 54 53 .CORE_CCONV_OPTS 33b0: 20 3d 20 2d 47 7a 20 2d 44 53 51 4c 49 54 45 5f = -Gz -DSQLITE_ 33c0: 43 44 45 43 4c 3d 5f 5f 63 64 65 63 6c 20 2d 44 CDECL=__cdecl -D 33d0: 53 51 4c 49 54 45 5f 41 50 49 43 41 4c 4c 3d 5f SQLITE_APICALL=_ 33e0: 5f 73 74 64 63 61 6c 6c 20 2d 44 53 51 4c 49 54 _stdcall -DSQLIT 33f0: 45 5f 43 41 4c 4c 42 41 43 4b 3d 5f 5f 73 74 64 E_CALLBACK=__std 3400: 63 61 6c 6c 20 2d 44 53 51 4c 49 54 45 5f 53 59 call -DSQLITE_SY 3410: 53 41 50 49 3d 5f 5f 73 74 64 63 61 6c 6c 0a 53 SAPI=__stdcall.S 3420: 48 45 4c 4c 5f 43 43 4f 4e 56 5f 4f 50 54 53 20 HELL_CCONV_OPTS 3430: 3d 20 2d 47 7a 20 2d 44 53 51 4c 49 54 45 5f 43 = -Gz -DSQLITE_C 3440: 44 45 43 4c 3d 5f 5f 63 64 65 63 6c 20 2d 44 53 DECL=__cdecl -DS 3450: 51 4c 49 54 45 5f 41 50 49 43 41 4c 4c 3d 5f 5f QLITE_APICALL=__ 3460: 73 74 64 63 61 6c 6c 20 2d 44 53 51 4c 49 54 45 stdcall -DSQLITE 3470: 5f 43 41 4c 4c 42 41 43 4b 3d 5f 5f 73 74 64 63 _CALLBACK=__stdc 3480: 61 6c 6c 20 2d 44 53 51 4c 49 54 45 5f 53 59 53 all -DSQLITE_SYS 3490: 41 50 49 3d 5f 5f 73 74 64 63 61 6c 6c 0a 23 20 API=__stdcall.# 34a0: 3c 3c 6d 61 72 6b 3e 3e 0a 54 45 53 54 5f 43 43 <<mark>>.TEST_CC 34b0: 4f 4e 56 5f 4f 50 54 53 20 3d 20 2d 47 7a 20 2d ONV_OPTS = -Gz - 34c0: 44 53 51 4c 49 54 45 5f 43 44 45 43 4c 3d 5f 5f DSQLITE_CDECL=__ 34d0: 63 64 65 63 6c 20 2d 44 53 51 4c 49 54 45 5f 41 cdecl -DSQLITE_A 34e0: 50 49 43 41 4c 4c 3d 5f 5f 73 74 64 63 61 6c 6c PICALL=__stdcall 34f0: 20 2d 44 53 51 4c 49 54 45 5f 43 41 4c 4c 42 41 -DSQLITE_CALLBA 3500: 43 4b 3d 5f 5f 73 74 64 63 61 6c 6c 20 2d 44 53 CK=__stdcall -DS 3510: 51 4c 49 54 45 5f 53 59 53 41 50 49 3d 5f 5f 73 QLITE_SYSAPI=__s 3520: 74 64 63 61 6c 6c 20 2d 44 49 4e 43 4c 55 44 45 tdcall -DINCLUDE 3530: 5f 53 51 4c 49 54 45 5f 54 43 4c 5f 48 3d 31 20 _SQLITE_TCL_H=1 3540: 2d 44 53 51 4c 49 54 45 5f 54 43 4c 41 50 49 3d -DSQLITE_TCLAPI= 3550: 5f 5f 63 64 65 63 6c 0a 23 20 3c 3c 2f 6d 61 72 __cdecl.# <</mar 3560: 6b 3e 3e 0a 21 45 4c 53 45 0a 43 4f 52 45 5f 43 k>>.!ELSE.CORE_C 3570: 43 4f 4e 56 5f 4f 50 54 53 20 3d 0a 53 48 45 4c CONV_OPTS =.SHEL 3580: 4c 5f 43 43 4f 4e 56 5f 4f 50 54 53 20 3d 0a 23 L_CCONV_OPTS =.# 3590: 20 3c 3c 6d 61 72 6b 3e 3e 0a 54 45 53 54 5f 43 <<mark>>.TEST_C 35a0: 43 4f 4e 56 5f 4f 50 54 53 20 3d 0a 23 20 3c 3c CONV_OPTS =.# << 35b0: 2f 6d 61 72 6b 3e 3e 0a 21 45 4e 44 49 46 0a 21 /mark>>.!ENDIF.! 35c0: 45 4e 44 49 46 0a 21 45 4c 53 45 0a 43 4f 52 45 ENDIF.!ELSE.CORE 35d0: 5f 43 43 4f 4e 56 5f 4f 50 54 53 20 3d 0a 53 48 _CCONV_OPTS =.SH 35e0: 45 4c 4c 5f 43 43 4f 4e 56 5f 4f 50 54 53 20 3d ELL_CCONV_OPTS = 35f0: 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 54 45 53 54 .# <<mark>>.TEST 3600: 5f 43 43 4f 4e 56 5f 4f 50 54 53 20 3d 0a 23 20 _CCONV_OPTS =.# 3610: 3c 3c 2f 6d 61 72 6b 3e 3e 0a 21 45 4e 44 49 46 <</mark>>.!ENDIF 3620: 0a 0a 23 20 54 68 65 73 65 20 61 72 65 20 61 64 ..# These are ad 3630: 64 69 74 69 6f 6e 61 6c 20 63 6f 6d 70 69 6c 65 ditional compile 3640: 72 20 6f 70 74 69 6f 6e 73 20 75 73 65 64 20 66 r options used f 3650: 6f 72 20 74 68 65 20 63 6f 72 65 20 6c 69 62 72 or the core libr 3660: 61 72 79 2e 0a 23 0a 21 49 46 4e 44 45 46 20 43 ary..#.!IFNDEF C 3670: 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 ORE_COMPILE_OPTS 3680: 0a 21 49 46 20 24 28 44 59 4e 41 4d 49 43 5f 53 .!IF$(DYNAMIC_S
3690: 48 45 4c 4c 29 21 3d 30 20 7c 7c 20 24 28 46 4f  HELL)!=0 || $(FO 36a0: 52 5f 57 49 4e 31 30 29 21 3d 30 0a 43 4f 52 45 R_WIN10)!=0.CORE 36b0: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 20 3d 20 _COMPILE_OPTS = 36c0: 24 28 43 4f 52 45 5f 43 43 4f 4e 56 5f 4f 50 54$(CORE_CCONV_OPT
36d0: 53 29 20 2d 44 53 51 4c 49 54 45 5f 41 50 49 3d  S) -DSQLITE_API=
36e0: 5f 5f 64 65 63 6c 73 70 65 63 28 64 6c 6c 65 78  __declspec(dllex
36f0: 70 6f 72 74 29 0a 21 45 4c 53 45 0a 43 4f 52 45  port).!ELSE.CORE
3700: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 20 3d 20  _COMPILE_OPTS =
3710: 24 28 43 4f 52 45 5f 43 43 4f 4e 56 5f 4f 50 54  $(CORE_CCONV_OPT 3720: 53 29 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 S).!ENDIF.!ENDIF 3730: 0a 0a 23 20 54 68 65 73 65 20 61 72 65 20 74 68 ..# These are th 3740: 65 20 61 64 64 69 74 69 6f 6e 61 6c 20 74 61 72 e additional tar 3750: 67 65 74 73 20 74 68 61 74 20 74 68 65 20 63 6f gets that the co 3760: 72 65 20 6c 69 62 72 61 72 79 20 73 68 6f 75 6c re library shoul 3770: 64 20 64 65 70 65 6e 64 20 6f 6e 0a 23 20 77 68 d depend on.# wh 3780: 65 6e 20 6c 69 6e 6b 69 6e 67 2e 0a 23 0a 21 49 en linking..#.!I 3790: 46 4e 44 45 46 20 43 4f 52 45 5f 4c 49 4e 4b 5f FNDEF CORE_LINK_ 37a0: 44 45 50 0a 21 49 46 20 24 28 44 59 4e 41 4d 49 DEP.!IF$(DYNAMI
37b0: 43 5f 53 48 45 4c 4c 29 21 3d 30 0a 43 4f 52 45  C_SHELL)!=0.CORE
37c0: 5f 4c 49 4e 4b 5f 44 45 50 20 3d 0a 21 45 4c 53  _LINK_DEP =.!ELS
37d0: 45 49 46 20 24 28 46 4f 52 5f 57 49 4e 31 30 29  EIF $(FOR_WIN10) 37e0: 3d 3d 30 20 7c 7c 20 22 24 28 50 4c 41 54 46 4f ==0 || "$(PLATFO
37f0: 52 4d 29 22 3d 3d 22 78 38 36 22 0a 43 4f 52 45  RM)"=="x86".CORE
3800: 5f 4c 49 4e 4b 5f 44 45 50 20 3d 20 73 71 6c 69  _LINK_DEP = sqli
3810: 74 65 33 2e 64 65 66 0a 21 45 4c 53 45 0a 43 4f  te3.def.!ELSE.CO
3820: 52 45 5f 4c 49 4e 4b 5f 44 45 50 20 3d 0a 21 45  RE_LINK_DEP =.!E
3830: 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a 23 20 54  NDIF.!ENDIF..# T
3840: 68 65 73 65 20 61 72 65 20 61 64 64 69 74 69 6f  hese are additio
3850: 6e 61 6c 20 6c 69 6e 6b 65 72 20 6f 70 74 69 6f  nal linker optio
3860: 6e 73 20 75 73 65 64 20 66 6f 72 20 74 68 65 20  ns used for the
3870: 63 6f 72 65 20 6c 69 62 72 61 72 79 2e 0a 23 0a  core library..#.
3880: 21 49 46 4e 44 45 46 20 43 4f 52 45 5f 4c 49 4e  !IFNDEF CORE_LIN
3890: 4b 5f 4f 50 54 53 0a 21 49 46 20 24 28 44 59 4e  K_OPTS.!IF $(DYN 38a0: 41 4d 49 43 5f 53 48 45 4c 4c 29 21 3d 30 0a 43 AMIC_SHELL)!=0.C 38b0: 4f 52 45 5f 4c 49 4e 4b 5f 4f 50 54 53 20 3d 0a ORE_LINK_OPTS =. 38c0: 21 45 4c 53 45 49 46 20 24 28 46 4f 52 5f 57 49 !ELSEIF$(FOR_WI
38d0: 4e 31 30 29 3d 3d 30 20 7c 7c 20 22 24 28 50 4c  N10)==0 || "$(PL 38e0: 41 54 46 4f 52 4d 29 22 3d 3d 22 78 38 36 22 0a ATFORM)"=="x86". 38f0: 43 4f 52 45 5f 4c 49 4e 4b 5f 4f 50 54 53 20 3d CORE_LINK_OPTS = 3900: 20 2f 44 45 46 3a 73 71 6c 69 74 65 33 2e 64 65 /DEF:sqlite3.de 3910: 66 0a 21 45 4c 53 45 0a 43 4f 52 45 5f 4c 49 4e f.!ELSE.CORE_LIN 3920: 4b 5f 4f 50 54 53 20 3d 0a 21 45 4e 44 49 46 0a K_OPTS =.!ENDIF. 3930: 21 45 4e 44 49 46 0a 0a 23 20 54 68 65 73 65 20 !ENDIF..# These 3940: 61 72 65 20 61 64 64 69 74 69 6f 6e 61 6c 20 63 are additional c 3950: 6f 6d 70 69 6c 65 72 20 6f 70 74 69 6f 6e 73 20 ompiler options 3960: 75 73 65 64 20 66 6f 72 20 74 68 65 20 73 68 65 used for the she 3970: 6c 6c 20 65 78 65 63 75 74 61 62 6c 65 2e 0a 23 ll executable..# 3980: 0a 21 49 46 4e 44 45 46 20 53 48 45 4c 4c 5f 43 .!IFNDEF SHELL_C 3990: 4f 4d 50 49 4c 45 5f 4f 50 54 53 0a 21 49 46 20 OMPILE_OPTS.!IF 39a0: 24 28 44 59 4e 41 4d 49 43 5f 53 48 45 4c 4c 29$(DYNAMIC_SHELL)
39b0: 21 3d 30 20 7c 7c 20 24 28 46 4f 52 5f 57 49 4e  !=0 || $(FOR_WIN 39c0: 31 30 29 21 3d 30 0a 53 48 45 4c 4c 5f 43 4f 4d 10)!=0.SHELL_COM 39d0: 50 49 4c 45 5f 4f 50 54 53 20 3d 20 24 28 53 48 PILE_OPTS =$(SH
39e0: 45 4c 4c 5f 43 43 4f 4e 56 5f 4f 50 54 53 29 20  ELL_CCONV_OPTS)
39f0: 2d 44 53 51 4c 49 54 45 5f 41 50 49 3d 5f 5f 64  -DSQLITE_API=__d
3a00: 65 63 6c 73 70 65 63 28 64 6c 6c 69 6d 70 6f 72  eclspec(dllimpor
3a10: 74 29 0a 21 45 4c 53 45 0a 53 48 45 4c 4c 5f 43  t).!ELSE.SHELL_C
3a20: 4f 4d 50 49 4c 45 5f 4f 50 54 53 20 3d 20 24 28  OMPILE_OPTS = $( 3a30: 53 48 45 4c 4c 5f 43 43 4f 4e 56 5f 4f 50 54 53 SHELL_CCONV_OPTS 3a40: 29 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a ).!ENDIF.!ENDIF. 3a50: 0a 23 20 54 68 69 73 20 69 73 20 74 68 65 20 73 .# This is the s 3a60: 6f 75 72 63 65 20 63 6f 64 65 20 74 68 61 74 20 ource code that 3a70: 74 68 65 20 73 68 65 6c 6c 20 65 78 65 63 75 74 the shell execut 3a80: 61 62 6c 65 20 73 68 6f 75 6c 64 20 62 65 20 63 able should be c 3a90: 6f 6d 70 69 6c 65 64 0a 23 20 77 69 74 68 2e 0a ompiled.# with.. 3aa0: 23 0a 21 49 46 4e 44 45 46 20 53 48 45 4c 4c 5f #.!IFNDEF SHELL_ 3ab0: 43 4f 52 45 5f 53 52 43 0a 21 49 46 20 24 28 44 CORE_SRC.!IF$(D
3ac0: 59 4e 41 4d 49 43 5f 53 48 45 4c 4c 29 21 3d 30  YNAMIC_SHELL)!=0
3ad0: 20 7c 7c 20 24 28 46 4f 52 5f 57 49 4e 31 30 29   || $(FOR_WIN10) 3ae0: 21 3d 30 0a 53 48 45 4c 4c 5f 43 4f 52 45 5f 53 !=0.SHELL_CORE_S 3af0: 52 43 20 3d 0a 21 45 4c 53 45 0a 53 48 45 4c 4c RC =.!ELSE.SHELL 3b00: 5f 43 4f 52 45 5f 53 52 43 20 3d 20 24 28 53 51 _CORE_SRC =$(SQ
3b10: 4c 49 54 45 33 43 29 0a 21 45 4e 44 49 46 0a 21  LITE3C).!ENDIF.!
3b20: 45 4e 44 49 46 0a 0a 23 20 54 68 69 73 20 69 73  ENDIF..# This is
3b30: 20 74 68 65 20 63 6f 72 65 20 6c 69 62 72 61 72   the core librar
3b40: 79 20 74 68 61 74 20 74 68 65 20 73 68 65 6c 6c  y that the shell
3b50: 20 65 78 65 63 75 74 61 62 6c 65 20 73 68 6f 75   executable shou
3b60: 6c 64 20 64 65 70 65 6e 64 20 6f 6e 2e 0a 23 0a  ld depend on..#.
3b70: 21 49 46 4e 44 45 46 20 53 48 45 4c 4c 5f 43 4f  !IFNDEF SHELL_CO
3b80: 52 45 5f 44 45 50 0a 21 49 46 20 24 28 44 59 4e  RE_DEP.!IF $(DYN 3b90: 41 4d 49 43 5f 53 48 45 4c 4c 29 21 3d 30 20 7c AMIC_SHELL)!=0 | 3ba0: 7c 20 24 28 46 4f 52 5f 57 49 4e 31 30 29 21 3d |$(FOR_WIN10)!=
3bb0: 30 0a 53 48 45 4c 4c 5f 43 4f 52 45 5f 44 45 50  0.SHELL_CORE_DEP
3bc0: 20 3d 20 24 28 53 51 4c 49 54 45 33 44 4c 4c 29   = $(SQLITE3DLL) 3bd0: 0a 21 45 4c 53 45 0a 53 48 45 4c 4c 5f 43 4f 52 .!ELSE.SHELL_COR 3be0: 45 5f 44 45 50 20 3d 0a 21 45 4e 44 49 46 0a 21 E_DEP =.!ENDIF.! 3bf0: 45 4e 44 49 46 0a 0a 23 20 54 68 69 73 20 69 73 ENDIF..# This is 3c00: 20 74 68 65 20 63 6f 72 65 20 6c 69 62 72 61 72 the core librar 3c10: 79 20 74 68 61 74 20 74 68 65 20 73 68 65 6c 6c y that the shell 3c20: 20 65 78 65 63 75 74 61 62 6c 65 20 73 68 6f 75 executable shou 3c30: 6c 64 20 6c 69 6e 6b 20 77 69 74 68 2e 0a 23 0a ld link with..#. 3c40: 21 49 46 4e 44 45 46 20 53 48 45 4c 4c 5f 43 4f !IFNDEF SHELL_CO 3c50: 52 45 5f 4c 49 42 0a 21 49 46 20 24 28 44 59 4e RE_LIB.!IF$(DYN
3c60: 41 4d 49 43 5f 53 48 45 4c 4c 29 21 3d 30 20 7c  AMIC_SHELL)!=0 |
3c70: 7c 20 24 28 46 4f 52 5f 57 49 4e 31 30 29 21 3d  | $(FOR_WIN10)!= 3c80: 30 0a 53 48 45 4c 4c 5f 43 4f 52 45 5f 4c 49 42 0.SHELL_CORE_LIB 3c90: 20 3d 20 24 28 53 51 4c 49 54 45 33 4c 49 42 29 =$(SQLITE3LIB)
3ca0: 0a 21 45 4c 53 45 0a 53 48 45 4c 4c 5f 43 4f 52  .!ELSE.SHELL_COR
3cb0: 45 5f 4c 49 42 20 3d 0a 21 45 4e 44 49 46 0a 21  E_LIB =.!ENDIF.!
3cc0: 45 4e 44 49 46 0a 0a 23 20 54 68 65 73 65 20 61  ENDIF..# These a
3cd0: 72 65 20 61 64 64 69 74 69 6f 6e 61 6c 20 6c 69  re additional li
3ce0: 6e 6b 65 72 20 6f 70 74 69 6f 6e 73 20 75 73 65  nker options use
3cf0: 64 20 66 6f 72 20 74 68 65 20 73 68 65 6c 6c 20  d for the shell
3d00: 65 78 65 63 75 74 61 62 6c 65 2e 0a 23 0a 21 49  executable..#.!I
3d10: 46 4e 44 45 46 20 53 48 45 4c 4c 5f 4c 49 4e 4b  FNDEF SHELL_LINK
3d20: 5f 4f 50 54 53 0a 53 48 45 4c 4c 5f 4c 49 4e 4b  _OPTS.SHELL_LINK
3d30: 5f 4f 50 54 53 20 3d 20 24 28 53 48 45 4c 4c 5f  _OPTS = $(SHELL_ 3d40: 43 4f 52 45 5f 4c 49 42 29 0a 21 45 4e 44 49 46 CORE_LIB).!ENDIF 3d50: 0a 0a 23 20 43 68 65 63 6b 20 69 66 20 61 73 73 ..# Check if ass 3d60: 65 6d 62 6c 79 20 63 6f 64 65 20 6c 69 73 74 69 embly code listi 3d70: 6e 67 73 20 73 68 6f 75 6c 64 20 62 65 20 67 65 ngs should be ge 3d80: 6e 65 72 61 74 65 64 20 66 6f 72 20 74 68 65 20 nerated for the 3d90: 73 6f 75 72 63 65 0a 23 20 63 6f 64 65 20 66 69 source.# code fi 3da0: 6c 65 73 20 74 6f 20 62 65 20 63 6f 6d 70 69 6c les to be compil 3db0: 65 64 2e 0a 23 0a 21 49 46 20 24 28 55 53 45 5f ed..#.!IF$(USE_
3dc0: 4c 49 53 54 49 4e 47 53 29 21 3d 30 0a 54 43 43  LISTINGS)!=0.TCC
3dd0: 20 3d 20 24 28 54 43 43 29 20 2d 46 41 63 73 0a   = $(TCC) -FAcs. 3de0: 21 45 4e 44 49 46 0a 0a 23 20 57 68 65 6e 20 63 !ENDIF..# When c 3df0: 6f 6d 70 69 6c 69 6e 67 20 74 68 65 20 6c 69 62 ompiling the lib 3e00: 72 61 72 79 20 66 6f 72 20 75 73 65 20 69 6e 20 rary for use in 3e10: 74 68 65 20 57 69 6e 52 54 20 65 6e 76 69 72 6f the WinRT enviro 3e20: 6e 6d 65 6e 74 2c 0a 23 20 74 68 65 20 66 6f 6c nment,.# the fol 3e30: 6c 6f 77 69 6e 67 20 63 6f 6d 70 69 6c 65 2d 74 lowing compile-t 3e40: 69 6d 65 20 6f 70 74 69 6f 6e 73 20 6d 75 73 74 ime options must 3e50: 20 62 65 20 75 73 65 64 20 61 73 20 77 65 6c 6c be used as well 3e60: 20 74 6f 0a 23 20 64 69 73 61 62 6c 65 20 75 73 to.# disable us 3e70: 65 20 6f 66 20 57 69 6e 33 32 20 41 50 49 73 20 e of Win32 APIs 3e80: 74 68 61 74 20 61 72 65 20 6e 6f 74 20 61 76 61 that are not ava 3e90: 69 6c 61 62 6c 65 20 61 6e 64 20 74 6f 20 65 6e ilable and to en 3ea0: 61 62 6c 65 0a 23 20 75 73 65 20 6f 66 20 57 69 able.# use of Wi 3eb0: 6e 33 32 20 41 50 49 73 20 74 68 61 74 20 61 72 n32 APIs that ar 3ec0: 65 20 73 70 65 63 69 66 69 63 20 74 6f 20 57 69 e specific to Wi 3ed0: 6e 64 6f 77 73 20 38 20 61 6e 64 2f 6f 72 20 57 ndows 8 and/or W 3ee0: 69 6e 52 54 2e 0a 23 0a 21 49 46 20 24 28 46 4f inRT..#.!IF$(FO
3ef0: 52 5f 57 49 4e 52 54 29 21 3d 30 0a 54 43 43 20  R_WINRT)!=0.TCC
3f00: 3d 20 24 28 54 43 43 29 20 2d 44 53 51 4c 49 54  = $(TCC) -DSQLIT 3f10: 45 5f 4f 53 5f 57 49 4e 52 54 3d 31 0a 52 43 43 E_OS_WINRT=1.RCC 3f20: 20 3d 20 24 28 52 43 43 29 20 2d 44 53 51 4c 49 =$(RCC) -DSQLI
3f30: 54 45 5f 4f 53 5f 57 49 4e 52 54 3d 31 0a 54 43  TE_OS_WINRT=1.TC
3f40: 43 20 3d 20 24 28 54 43 43 29 20 2d 44 57 49 4e  C = $(TCC) -DWIN 3f50: 41 50 49 5f 46 41 4d 49 4c 59 3d 57 49 4e 41 50 API_FAMILY=WINAP 3f60: 49 5f 46 41 4d 49 4c 59 5f 41 50 50 0a 52 43 43 I_FAMILY_APP.RCC 3f70: 20 3d 20 24 28 52 43 43 29 20 2d 44 57 49 4e 41 =$(RCC) -DWINA
3f80: 50 49 5f 46 41 4d 49 4c 59 3d 57 49 4e 41 50 49  PI_FAMILY=WINAPI
3f90: 5f 46 41 4d 49 4c 59 5f 41 50 50 0a 21 45 4e 44  _FAMILY_APP.!END
3fa0: 49 46 0a 0a 23 20 43 20 63 6f 6d 70 69 6c 65 72  IF..# C compiler
3fb0: 20 6f 70 74 69 6f 6e 73 20 66 6f 72 20 74 68 65   options for the
3fc0: 20 57 69 6e 64 6f 77 73 20 31 30 20 70 6c 61 74   Windows 10 plat
3fd0: 66 6f 72 6d 20 28 6e 65 65 64 73 20 4d 53 56 43  form (needs MSVC
3fe0: 20 32 30 31 35 29 2e 0a 23 0a 21 49 46 20 24 28   2015)..#.!IF $( 3ff0: 46 4f 52 5f 57 49 4e 31 30 29 21 3d 30 0a 54 43 FOR_WIN10)!=0.TC 4000: 43 20 3d 20 24 28 54 43 43 29 20 2f 64 32 67 75 C =$(TCC) /d2gu
4010: 61 72 64 34 20 2d 44 5f 41 52 4d 5f 57 49 4e 41  ard4 -D_ARM_WINA
4020: 50 49 5f 50 41 52 54 49 54 49 4f 4e 5f 44 45 53  PI_PARTITION_DES
4030: 4b 54 4f 50 5f 53 44 4b 5f 41 56 41 49 4c 41 42  KTOP_SDK_AVAILAB
4040: 4c 45 0a 42 43 43 20 3d 20 24 28 42 43 43 29 20  LE.BCC = $(BCC) 4050: 2f 64 32 67 75 61 72 64 34 20 2d 44 5f 41 52 4d /d2guard4 -D_ARM 4060: 5f 57 49 4e 41 50 49 5f 50 41 52 54 49 54 49 4f _WINAPI_PARTITIO 4070: 4e 5f 44 45 53 4b 54 4f 50 5f 53 44 4b 5f 41 56 N_DESKTOP_SDK_AV 4080: 41 49 4c 41 42 4c 45 0a 21 45 4e 44 49 46 0a 0a AILABLE.!ENDIF.. 4090: 23 20 41 6c 73 6f 2c 20 77 65 20 6e 65 65 64 20 # Also, we need 40a0: 74 6f 20 64 79 6e 61 6d 69 63 61 6c 6c 79 20 6c to dynamically l 40b0: 69 6e 6b 20 74 6f 20 74 68 65 20 63 6f 72 72 65 ink to the corre 40c0: 63 74 20 4d 53 56 43 20 72 75 6e 74 69 6d 65 0a ct MSVC runtime. 40d0: 23 20 77 68 65 6e 20 63 6f 6d 70 69 6c 69 6e 67 # when compiling 40e0: 20 66 6f 72 20 57 69 6e 52 54 20 28 65 2e 67 2e for WinRT (e.g. 40f0: 20 64 65 62 75 67 20 6f 72 20 72 65 6c 65 61 73 debug or releas 4100: 65 29 20 4f 52 20 69 66 20 74 68 65 0a 23 20 55 e) OR if the.# U 4110: 53 45 5f 43 52 54 5f 44 4c 4c 20 6f 70 74 69 6f SE_CRT_DLL optio 4120: 6e 20 69 73 20 73 65 74 20 74 6f 20 66 6f 72 63 n is set to forc 4130: 65 20 64 79 6e 61 6d 69 63 61 6c 6c 79 20 6c 69 e dynamically li 4140: 6e 6b 69 6e 67 20 74 6f 20 74 68 65 0a 23 20 4d nking to the.# M 4150: 53 56 43 20 72 75 6e 74 69 6d 65 20 6c 69 62 72 SVC runtime libr 4160: 61 72 79 2e 0a 23 0a 21 49 46 20 24 28 46 4f 52 ary..#.!IF$(FOR
4170: 5f 57 49 4e 52 54 29 21 3d 30 20 7c 7c 20 24 28  _WINRT)!=0 || $( 4180: 55 53 45 5f 43 52 54 5f 44 4c 4c 29 21 3d 30 0a USE_CRT_DLL)!=0. 4190: 21 49 46 20 24 28 44 45 42 55 47 29 3e 31 0a 54 !IF$(DEBUG)>1.T
41a0: 43 43 20 3d 20 24 28 54 43 43 29 20 2d 4d 44 64  CC = $(TCC) -MDd 41b0: 0a 42 43 43 20 3d 20 24 28 42 43 43 29 20 2d 4d .BCC =$(BCC) -M
41c0: 44 64 0a 21 45 4c 53 45 0a 54 43 43 20 3d 20 24  Dd.!ELSE.TCC = $41d0: 28 54 43 43 29 20 2d 4d 44 0a 42 43 43 20 3d 20 (TCC) -MD.BCC = 41e0: 24 28 42 43 43 29 20 2d 4d 44 0a 21 45 4e 44 49$(BCC) -MD.!ENDI
41f0: 46 0a 21 45 4c 53 45 0a 21 49 46 20 24 28 44 45  F.!ELSE.!IF $(DE 4200: 42 55 47 29 3e 31 0a 54 43 43 20 3d 20 24 28 54 BUG)>1.TCC =$(T
4210: 43 43 29 20 2d 4d 54 64 0a 42 43 43 20 3d 20 24  CC) -MTd.BCC = $4220: 28 42 43 43 29 20 2d 4d 54 64 0a 21 45 4c 53 45 (BCC) -MTd.!ELSE 4230: 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 4d .TCC =$(TCC) -M
4240: 54 0a 42 43 43 20 3d 20 24 28 42 43 43 29 20 2d  T.BCC = $(BCC) - 4250: 4d 54 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 MT.!ENDIF.!ENDIF 4260: 0a 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 23 20 54 ..# <<mark>>.# T 4270: 68 65 20 6d 6b 73 71 6c 69 74 65 33 63 2e 74 63 he mksqlite3c.tc 4280: 6c 20 61 6e 64 20 6d 6b 73 71 6c 69 74 65 33 68 l and mksqlite3h 4290: 2e 74 63 6c 20 73 63 72 69 70 74 73 20 77 69 6c .tcl scripts wil 42a0: 6c 20 70 75 6c 6c 20 69 6e 0a 23 20 61 6e 79 20 l pull in.# any 42b0: 65 78 74 65 6e 73 69 6f 6e 20 68 65 61 64 65 72 extension header 42c0: 20 66 69 6c 65 73 20 62 79 20 64 65 66 61 75 6c files by defaul 42d0: 74 2e 20 20 46 6f 72 20 6e 6f 6e 2d 61 6d 61 6c t. For non-amal 42e0: 67 61 6d 61 74 69 6f 6e 0a 23 20 62 75 69 6c 64 gamation.# build 42f0: 73 2c 20 77 65 20 6e 65 65 64 20 74 6f 20 6d 61 s, we need to ma 4300: 6b 65 20 73 75 72 65 20 74 68 65 20 63 6f 6d 70 ke sure the comp 4310: 69 6c 65 72 20 63 61 6e 20 66 69 6e 64 20 74 68 iler can find th 4320: 65 73 65 2e 0a 23 0a 21 49 46 20 24 28 55 53 45 ese..#.!IF$(USE
4330: 5f 41 4d 41 4c 47 41 4d 41 54 49 4f 4e 29 3d 3d  _AMALGAMATION)==
4340: 30 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d  0.TCC = $(TCC) - 4350: 49 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 I$(TOP)\ext\fts3
4360: 0a 52 43 43 20 3d 20 24 28 52 43 43 29 20 2d 49  .RCC = $(RCC) -I 4370: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 0a$(TOP)\ext\fts3.
4380: 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 49 24  TCC = $(TCC) -I$
4390: 28 54 4f 50 29 5c 65 78 74 5c 72 74 72 65 65 0a  (TOP)\ext\rtree.
43a0: 52 43 43 20 3d 20 24 28 52 43 43 29 20 2d 49 24  RCC = $(RCC) -I$
43b0: 28 54 4f 50 29 5c 65 78 74 5c 72 74 72 65 65 0a  (TOP)\ext\rtree.
43c0: 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 49 24  TCC = $(TCC) -I$
43d0: 28 54 4f 50 29 5c 65 78 74 5c 73 65 73 73 69 6f  (TOP)\ext\sessio
43e0: 6e 0a 52 43 43 20 3d 20 24 28 52 43 43 29 20 2d  n.RCC = $(RCC) - 43f0: 49 24 28 54 4f 50 29 5c 65 78 74 5c 73 65 73 73 I$(TOP)\ext\sess
4400: 69 6f 6e 0a 21 45 4e 44 49 46 0a 0a 23 20 54 68  ion.!ENDIF..# Th
4410: 65 20 6d 6b 73 71 6c 69 74 65 33 63 2e 74 63 6c  e mksqlite3c.tcl
4420: 20 73 63 72 69 70 74 20 61 63 63 65 70 74 73 20   script accepts
4430: 73 6f 6d 65 20 6f 70 74 69 6f 6e 73 20 6f 6e 20  some options on
4440: 74 68 65 20 63 6f 6d 6d 61 6e 64 0a 23 20 6c 69  the command.# li
4450: 6e 65 2e 20 20 57 68 65 6e 20 63 6f 6d 70 69 6c  ne.  When compil
4460: 69 6e 67 20 77 69 74 68 20 64 65 62 75 67 67 69  ing with debuggi
4470: 6e 67 20 65 6e 61 62 6c 65 64 2c 20 73 6f 6d 65  ng enabled, some
4480: 20 6f 66 20 74 68 65 73 65 0a 23 20 6f 70 74 69   of these.# opti
4490: 6f 6e 73 20 61 72 65 20 6e 65 63 65 73 73 61 72  ons are necessar
44a0: 79 20 69 6e 20 6f 72 64 65 72 20 74 6f 20 61 6c  y in order to al
44b0: 6c 6f 77 20 64 65 62 75 67 67 69 6e 67 20 73 79  low debugging sy
44c0: 6d 62 6f 6c 73 20 74 6f 0a 23 20 77 6f 72 6b 20  mbols to.# work
44d0: 63 6f 72 72 65 63 74 6c 79 20 77 69 74 68 20 56  correctly with V
44e0: 69 73 75 61 6c 20 53 74 75 64 69 6f 20 77 68 65  isual Studio whe
44f0: 6e 20 75 73 69 6e 67 20 74 68 65 20 61 6d 61 6c  n using the amal
4500: 67 61 6d 61 74 69 6f 6e 2e 0a 23 0a 21 49 46 4e  gamation..#.!IFN
4510: 44 45 46 20 4d 4b 53 51 4c 49 54 45 33 43 5f 41  DEF MKSQLITE3C_A
4520: 52 47 53 0a 21 49 46 20 24 28 44 45 42 55 47 29  RGS.!IF $(DEBUG) 4530: 3e 31 0a 4d 4b 53 51 4c 49 54 45 33 43 5f 41 52 >1.MKSQLITE3C_AR 4540: 47 53 20 3d 20 2d 2d 6c 69 6e 65 6d 61 63 72 6f GS = --linemacro 4550: 73 0a 21 45 4c 53 45 0a 4d 4b 53 51 4c 49 54 45 s.!ELSE.MKSQLITE 4560: 33 43 5f 41 52 47 53 20 3d 0a 21 45 4e 44 49 46 3C_ARGS =.!ENDIF 4570: 0a 21 45 4e 44 49 46 0a 23 20 3c 3c 2f 6d 61 72 .!ENDIF.# <</mar 4580: 6b 3e 3e 0a 0a 23 20 44 65 66 69 6e 65 20 2d 44 k>>..# Define -D 4590: 4e 44 45 42 55 47 20 74 6f 20 63 6f 6d 70 69 6c NDEBUG to compil 45a0: 65 20 77 69 74 68 6f 75 74 20 64 65 62 75 67 67 e without debugg 45b0: 69 6e 67 20 28 69 2e 65 2e 2c 20 66 6f 72 20 70 ing (i.e., for p 45c0: 72 6f 64 75 63 74 69 6f 6e 20 75 73 61 67 65 29 roduction usage) 45d0: 0a 23 20 4f 6d 69 74 74 69 6e 67 20 74 68 65 20 .# Omitting the 45e0: 64 65 66 69 6e 65 20 77 69 6c 6c 20 63 61 75 73 define will caus 45f0: 65 20 65 78 74 72 61 20 64 65 62 75 67 67 69 6e e extra debuggin 4600: 67 20 63 6f 64 65 20 74 6f 20 62 65 20 69 6e 73 g code to be ins 4610: 65 72 74 65 64 20 61 6e 64 0a 23 20 69 6e 63 6c erted and.# incl 4620: 75 64 65 73 20 65 78 74 72 61 20 63 6f 6d 6d 65 udes extra comme 4630: 6e 74 73 20 77 68 65 6e 20 22 45 58 50 4c 41 49 nts when "EXPLAI 4640: 4e 20 73 74 6d 74 22 20 69 73 20 75 73 65 64 2e N stmt" is used. 4650: 0a 23 0a 21 49 46 20 24 28 44 45 42 55 47 29 3d .#.!IF$(DEBUG)=
4660: 3d 30 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20  =0.TCC = $(TCC) 4670: 2d 44 4e 44 45 42 55 47 0a 42 43 43 20 3d 20 24 -DNDEBUG.BCC =$
4680: 28 42 43 43 29 20 2d 44 4e 44 45 42 55 47 0a 52  (BCC) -DNDEBUG.R
4690: 43 43 20 3d 20 24 28 52 43 43 29 20 2d 44 4e 44  CC = $(RCC) -DND 46a0: 45 42 55 47 0a 21 45 4e 44 49 46 0a 0a 21 49 46 EBUG.!ENDIF..!IF 46b0: 20 24 28 44 45 42 55 47 29 3e 30 20 7c 7c 20 24$(DEBUG)>0 || $46c0: 28 41 50 49 5f 41 52 4d 4f 52 29 21 3d 30 20 7c (API_ARMOR)!=0 | 46d0: 7c 20 24 28 46 4f 52 5f 57 49 4e 31 30 29 21 3d |$(FOR_WIN10)!=
46e0: 30 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d  0.TCC = $(TCC) - 46f0: 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 41 DSQLITE_ENABLE_A 4700: 50 49 5f 41 52 4d 4f 52 3d 31 0a 52 43 43 20 3d PI_ARMOR=1.RCC = 4710: 20 24 28 52 43 43 29 20 2d 44 53 51 4c 49 54 45$(RCC) -DSQLITE
4720: 5f 45 4e 41 42 4c 45 5f 41 50 49 5f 41 52 4d 4f  _ENABLE_API_ARMO
4730: 52 3d 31 0a 21 45 4e 44 49 46 0a 0a 21 49 46 20  R=1.!ENDIF..!IF
4740: 24 28 44 45 42 55 47 29 3e 32 0a 54 43 43 20 3d  $(DEBUG)>2.TCC = 4750: 20 24 28 54 43 43 29 20 2d 44 53 51 4c 49 54 45$(TCC) -DSQLITE
4760: 5f 44 45 42 55 47 3d 31 0a 52 43 43 20 3d 20 24  _DEBUG=1.RCC = $4770: 28 52 43 43 29 20 2d 44 53 51 4c 49 54 45 5f 44 (RCC) -DSQLITE_D 4780: 45 42 55 47 3d 31 0a 21 45 4e 44 49 46 0a 0a 21 EBUG=1.!ENDIF..! 4790: 49 46 20 24 28 44 45 42 55 47 29 3e 34 20 7c 7c IF$(DEBUG)>4 ||
47a0: 20 24 28 4f 53 54 52 41 43 45 29 21 3d 30 0a 54   $(OSTRACE)!=0.T 47b0: 43 43 20 3d 20 24 28 54 43 43 29 20 2d 44 53 51 CC =$(TCC) -DSQ
47c0: 4c 49 54 45 5f 46 4f 52 43 45 5f 4f 53 5f 54 52  LITE_FORCE_OS_TR
47d0: 41 43 45 3d 31 20 2d 44 53 51 4c 49 54 45 5f 44  ACE=1 -DSQLITE_D
47e0: 45 42 55 47 5f 4f 53 5f 54 52 41 43 45 3d 31 0a  EBUG_OS_TRACE=1.
47f0: 52 43 43 20 3d 20 24 28 52 43 43 29 20 2d 44 53  RCC = $(RCC) -DS 4800: 51 4c 49 54 45 5f 46 4f 52 43 45 5f 4f 53 5f 54 QLITE_FORCE_OS_T 4810: 52 41 43 45 3d 31 20 2d 44 53 51 4c 49 54 45 5f RACE=1 -DSQLITE_ 4820: 44 45 42 55 47 5f 4f 53 5f 54 52 41 43 45 3d 31 DEBUG_OS_TRACE=1 4830: 0a 21 45 4e 44 49 46 0a 0a 21 49 46 20 24 28 44 .!ENDIF..!IF$(D
4840: 45 42 55 47 29 3e 35 0a 54 43 43 20 3d 20 24 28  EBUG)>5.TCC = $( 4850: 54 43 43 29 20 2d 44 53 51 4c 49 54 45 5f 45 4e TCC) -DSQLITE_EN 4860: 41 42 4c 45 5f 49 4f 54 52 41 43 45 3d 31 0a 52 ABLE_IOTRACE=1.R 4870: 43 43 20 3d 20 24 28 52 43 43 29 20 2d 44 53 51 CC =$(RCC) -DSQ
4880: 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 49 4f 54 52  LITE_ENABLE_IOTR
4890: 41 43 45 3d 31 0a 21 45 4e 44 49 46 0a 0a 23 20  ACE=1.!ENDIF..#
48a0: 50 72 65 76 65 6e 74 20 77 61 72 6e 69 6e 67 73  Prevent warnings
48b0: 20 61 62 6f 75 74 20 22 69 6e 73 65 63 75 72 65   about "insecure
48c0: 22 20 4d 53 56 43 20 72 75 6e 74 69 6d 65 20 6c  " MSVC runtime l
48d0: 69 62 72 61 72 79 20 66 75 6e 63 74 69 6f 6e 73  ibrary functions
48e0: 0a 23 20 62 65 69 6e 67 20 75 73 65 64 2e 0a 23  .# being used..#
48f0: 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 44  .TCC = $(TCC) -D 4900: 5f 43 52 54 5f 53 45 43 55 52 45 5f 4e 4f 5f 44 _CRT_SECURE_NO_D 4910: 45 50 52 45 43 41 54 45 20 2d 44 5f 43 52 54 5f EPRECATE -D_CRT_ 4920: 53 45 43 55 52 45 5f 4e 4f 5f 57 41 52 4e 49 4e SECURE_NO_WARNIN 4930: 47 53 0a 42 43 43 20 3d 20 24 28 42 43 43 29 20 GS.BCC =$(BCC)
4940: 2d 44 5f 43 52 54 5f 53 45 43 55 52 45 5f 4e 4f  -D_CRT_SECURE_NO
4950: 5f 44 45 50 52 45 43 41 54 45 20 2d 44 5f 43 52  _DEPRECATE -D_CR
4960: 54 5f 53 45 43 55 52 45 5f 4e 4f 5f 57 41 52 4e  T_SECURE_NO_WARN
4970: 49 4e 47 53 0a 52 43 43 20 3d 20 24 28 52 43 43  INGS.RCC = $(RCC 4980: 29 20 2d 44 5f 43 52 54 5f 53 45 43 55 52 45 5f ) -D_CRT_SECURE_ 4990: 4e 4f 5f 44 45 50 52 45 43 41 54 45 20 2d 44 5f NO_DEPRECATE -D_ 49a0: 43 52 54 5f 53 45 43 55 52 45 5f 4e 4f 5f 57 41 CRT_SECURE_NO_WA 49b0: 52 4e 49 4e 47 53 0a 0a 23 20 50 72 65 76 65 6e RNINGS..# Preven 49c0: 74 20 77 61 72 6e 69 6e 67 73 20 61 62 6f 75 74 t warnings about 49d0: 20 22 64 65 70 72 65 63 61 74 65 64 22 20 50 4f "deprecated" PO 49e0: 53 49 58 20 66 75 6e 63 74 69 6f 6e 73 20 62 65 SIX functions be 49f0: 69 6e 67 20 75 73 65 64 2e 0a 23 0a 54 43 43 20 ing used..#.TCC 4a00: 3d 20 24 28 54 43 43 29 20 2d 44 5f 43 52 54 5f =$(TCC) -D_CRT_
4a10: 4e 4f 4e 53 54 44 43 5f 4e 4f 5f 44 45 50 52 45  NONSTDC_NO_DEPRE
4a20: 43 41 54 45 20 2d 44 5f 43 52 54 5f 4e 4f 4e 53  CATE -D_CRT_NONS
4a30: 54 44 43 5f 4e 4f 5f 57 41 52 4e 49 4e 47 53 0a  TDC_NO_WARNINGS.
4a40: 42 43 43 20 3d 20 24 28 42 43 43 29 20 2d 44 5f  BCC = $(BCC) -D_ 4a50: 43 52 54 5f 4e 4f 4e 53 54 44 43 5f 4e 4f 5f 44 CRT_NONSTDC_NO_D 4a60: 45 50 52 45 43 41 54 45 20 2d 44 5f 43 52 54 5f EPRECATE -D_CRT_ 4a70: 4e 4f 4e 53 54 44 43 5f 4e 4f 5f 57 41 52 4e 49 NONSTDC_NO_WARNI 4a80: 4e 47 53 0a 52 43 43 20 3d 20 24 28 52 43 43 29 NGS.RCC =$(RCC)
4a90: 20 2d 44 5f 43 52 54 5f 4e 4f 4e 53 54 44 43 5f   -D_CRT_NONSTDC_
4aa0: 4e 4f 5f 44 45 50 52 45 43 41 54 45 20 2d 44 5f  NO_DEPRECATE -D_
4ab0: 43 52 54 5f 4e 4f 4e 53 54 44 43 5f 4e 4f 5f 57  CRT_NONSTDC_NO_W
4ac0: 41 52 4e 49 4e 47 53 0a 0a 23 20 55 73 65 20 74  ARNINGS..# Use t
4ad0: 68 65 20 53 51 4c 69 74 65 20 64 65 62 75 67 67  he SQLite debugg
4ae0: 69 6e 67 20 68 65 61 70 20 73 75 62 73 79 73 74  ing heap subsyst
4af0: 65 6d 3f 0a 23 0a 21 49 46 20 24 28 4d 45 4d 44  em?.#.!IF $(MEMD 4b00: 45 42 55 47 29 21 3d 30 0a 54 43 43 20 3d 20 24 EBUG)!=0.TCC =$
4b10: 28 54 43 43 29 20 2d 44 53 51 4c 49 54 45 5f 4d  (TCC) -DSQLITE_M
4b20: 45 4d 44 45 42 55 47 3d 31 0a 52 43 43 20 3d 20  EMDEBUG=1.RCC =
4b30: 24 28 52 43 43 29 20 2d 44 53 51 4c 49 54 45 5f  $(RCC) -DSQLITE_ 4b40: 4d 45 4d 44 45 42 55 47 3d 31 0a 0a 23 20 55 73 MEMDEBUG=1..# Us 4b50: 65 20 6e 61 74 69 76 65 20 57 69 6e 33 32 20 68 e native Win32 h 4b60: 65 61 70 20 73 75 62 73 79 73 74 65 6d 20 69 6e eap subsystem in 4b70: 73 74 65 61 64 20 6f 66 20 6d 61 6c 6c 6f 63 2f stead of malloc/ 4b80: 66 72 65 65 3f 0a 23 0a 21 45 4c 53 45 49 46 20 free?.#.!ELSEIF 4b90: 24 28 57 49 4e 33 32 48 45 41 50 29 21 3d 30 0a$(WIN32HEAP)!=0.
4ba0: 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 44 53  TCC = $(TCC) -DS 4bb0: 51 4c 49 54 45 5f 57 49 4e 33 32 5f 4d 41 4c 4c QLITE_WIN32_MALL 4bc0: 4f 43 3d 31 0a 52 43 43 20 3d 20 24 28 52 43 43 OC=1.RCC =$(RCC
4bd0: 29 20 2d 44 53 51 4c 49 54 45 5f 57 49 4e 33 32  ) -DSQLITE_WIN32
4be0: 5f 4d 41 4c 4c 4f 43 3d 31 0a 0a 23 20 56 61 6c  _MALLOC=1..# Val
4bf0: 69 64 61 74 65 20 74 68 65 20 68 65 61 70 20 6f  idate the heap o
4c00: 6e 20 65 76 65 72 79 20 63 61 6c 6c 20 69 6e 74  n every call int
4c10: 6f 20 74 68 65 20 6e 61 74 69 76 65 20 57 69 6e  o the native Win
4c20: 33 32 20 68 65 61 70 20 73 75 62 73 79 73 74 65  32 heap subsyste
4c30: 6d 3f 0a 23 0a 21 49 46 20 24 28 44 45 42 55 47  m?.#.!IF $(DEBUG 4c40: 29 3e 33 0a 54 43 43 20 3d 20 24 28 54 43 43 29 )>3.TCC =$(TCC)
4c50: 20 2d 44 53 51 4c 49 54 45 5f 57 49 4e 33 32 5f   -DSQLITE_WIN32_
4c60: 4d 41 4c 4c 4f 43 5f 56 41 4c 49 44 41 54 45 3d  MALLOC_VALIDATE=
4c70: 31 0a 52 43 43 20 3d 20 24 28 52 43 43 29 20 2d  1.RCC = $(RCC) - 4c80: 44 53 51 4c 49 54 45 5f 57 49 4e 33 32 5f 4d 41 DSQLITE_WIN32_MA 4c90: 4c 4c 4f 43 5f 56 41 4c 49 44 41 54 45 3d 31 0a LLOC_VALIDATE=1. 4ca0: 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 0a 0a 23 !ENDIF.!ENDIF..# 4cb0: 20 3c 3c 6d 61 72 6b 3e 3e 0a 23 20 54 68 65 20 <<mark>>.# The 4cc0: 6c 6f 63 61 74 69 6f 6e 73 20 6f 66 20 74 68 65 locations of the 4cd0: 20 54 63 6c 20 68 65 61 64 65 72 20 61 6e 64 20 Tcl header and 4ce0: 6c 69 62 72 61 72 79 20 66 69 6c 65 73 2e 20 20 library files. 4cf0: 41 6c 73 6f 2c 20 74 68 65 20 6c 69 62 72 61 72 Also, the librar 4d00: 79 20 74 68 61 74 0a 23 20 6e 6f 6e 2d 73 74 75 y that.# non-stu 4d10: 62 73 20 65 6e 61 62 6c 65 64 20 70 72 6f 67 72 bs enabled progr 4d20: 61 6d 73 20 75 73 69 6e 67 20 54 63 6c 20 6d 75 ams using Tcl mu 4d30: 73 74 20 6c 69 6e 6b 20 61 67 61 69 6e 73 74 2e st link against. 4d40: 20 20 54 68 65 73 65 20 76 61 72 69 61 62 6c 65 These variable 4d50: 73 0a 23 20 28 54 43 4c 49 4e 43 44 49 52 2c 20 s.# (TCLINCDIR, 4d60: 54 43 4c 4c 49 42 44 49 52 2c 20 61 6e 64 20 4c TCLLIBDIR, and L 4d70: 49 42 54 43 4c 29 20 6d 61 79 20 62 65 20 6f 76 IBTCL) may be ov 4d80: 65 72 72 69 64 64 65 6e 20 76 69 61 20 74 68 65 erridden via the 4d90: 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 0a 23 20 70 environment.# p 4da0: 72 69 6f 72 20 74 6f 20 72 75 6e 6e 69 6e 67 20 rior to running 4db0: 6e 6d 61 6b 65 20 69 6e 20 6f 72 64 65 72 20 74 nmake in order t 4dc0: 6f 20 6d 61 74 63 68 20 74 68 65 20 61 63 74 75 o match the actu 4dd0: 61 6c 20 69 6e 73 74 61 6c 6c 65 64 20 6c 6f 63 al installed loc 4de0: 61 74 69 6f 6e 20 61 6e 64 0a 23 20 76 65 72 73 ation and.# vers 4df0: 69 6f 6e 20 6f 6e 20 74 68 69 73 20 6d 61 63 68 ion on this mach 4e00: 69 6e 65 2e 0a 23 0a 21 49 46 4e 44 45 46 20 54 ine..#.!IFNDEF T 4e10: 43 4c 49 4e 43 44 49 52 0a 54 43 4c 49 4e 43 44 CLINCDIR.TCLINCD 4e20: 49 52 20 3d 20 63 3a 5c 74 63 6c 5c 69 6e 63 6c IR = c:\tcl\incl 4e30: 75 64 65 0a 21 45 4e 44 49 46 0a 0a 21 49 46 4e ude.!ENDIF..!IFN 4e40: 44 45 46 20 54 43 4c 4c 49 42 44 49 52 0a 54 43 DEF TCLLIBDIR.TC 4e50: 4c 4c 49 42 44 49 52 20 3d 20 63 3a 5c 74 63 6c LLIBDIR = c:\tcl 4e60: 5c 6c 69 62 0a 21 45 4e 44 49 46 0a 0a 21 49 46 \lib.!ENDIF..!IF 4e70: 4e 44 45 46 20 4c 49 42 54 43 4c 0a 4c 49 42 54 NDEF LIBTCL.LIBT 4e80: 43 4c 20 3d 20 74 63 6c 38 35 2e 6c 69 62 0a 21 CL = tcl85.lib.! 4e90: 45 4e 44 49 46 0a 0a 21 49 46 4e 44 45 46 20 4c ENDIF..!IFNDEF L 4ea0: 49 42 54 43 4c 53 54 55 42 0a 4c 49 42 54 43 4c IBTCLSTUB.LIBTCL 4eb0: 53 54 55 42 20 3d 20 74 63 6c 73 74 75 62 38 35 STUB = tclstub85 4ec0: 2e 6c 69 62 0a 21 45 4e 44 49 46 0a 0a 21 49 46 .lib.!ENDIF..!IF 4ed0: 4e 44 45 46 20 4c 49 42 54 43 4c 50 41 54 48 0a NDEF LIBTCLPATH. 4ee0: 4c 49 42 54 43 4c 50 41 54 48 20 3d 20 63 3a 5c LIBTCLPATH = c:\ 4ef0: 74 63 6c 5c 62 69 6e 0a 21 45 4e 44 49 46 0a 0a tcl\bin.!ENDIF.. 4f00: 23 20 54 68 65 20 6c 6f 63 61 74 69 6f 6e 73 20 # The locations 4f10: 6f 66 20 74 68 65 20 49 43 55 20 68 65 61 64 65 of the ICU heade 4f20: 72 20 61 6e 64 20 6c 69 62 72 61 72 79 20 66 69 r and library fi 4f30: 6c 65 73 2e 20 20 54 68 65 73 65 20 76 61 72 69 les. These vari 4f40: 61 62 6c 65 73 0a 23 20 28 49 43 55 49 4e 43 44 ables.# (ICUINCD 4f50: 49 52 2c 20 49 43 55 4c 49 42 44 49 52 2c 20 61 IR, ICULIBDIR, a 4f60: 6e 64 20 4c 49 42 49 43 55 29 20 6d 61 79 20 62 nd LIBICU) may b 4f70: 65 20 6f 76 65 72 72 69 64 64 65 6e 20 76 69 61 e overridden via 4f80: 20 74 68 65 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 the environment 4f90: 0a 23 20 70 72 69 6f 72 20 74 6f 20 72 75 6e 6e .# prior to runn 4fa0: 69 6e 67 20 6e 6d 61 6b 65 20 69 6e 20 6f 72 64 ing nmake in ord 4fb0: 65 72 20 74 6f 20 6d 61 74 63 68 20 74 68 65 20 er to match the 4fc0: 61 63 74 75 61 6c 20 69 6e 73 74 61 6c 6c 65 64 actual installed 4fd0: 20 6c 6f 63 61 74 69 6f 6e 20 6f 6e 0a 23 20 74 location on.# t 4fe0: 68 69 73 20 6d 61 63 68 69 6e 65 2e 0a 23 0a 21 his machine..#.! 4ff0: 49 46 4e 44 45 46 20 49 43 55 49 4e 43 44 49 52 IFNDEF ICUINCDIR 5000: 0a 49 43 55 49 4e 43 44 49 52 20 3d 20 63 3a 5c .ICUINCDIR = c:\ 5010: 69 63 75 5c 69 6e 63 6c 75 64 65 0a 21 45 4e 44 icu\include.!END 5020: 49 46 0a 0a 21 49 46 4e 44 45 46 20 49 43 55 4c IF..!IFNDEF ICUL 5030: 49 42 44 49 52 0a 49 43 55 4c 49 42 44 49 52 20 IBDIR.ICULIBDIR 5040: 3d 20 63 3a 5c 69 63 75 5c 6c 69 62 0a 21 45 4e = c:\icu\lib.!EN 5050: 44 49 46 0a 0a 21 49 46 4e 44 45 46 20 4c 49 42 DIF..!IFNDEF LIB 5060: 49 43 55 0a 4c 49 42 49 43 55 20 3d 20 69 63 75 ICU.LIBICU = icu 5070: 75 63 2e 6c 69 62 20 69 63 75 69 6e 2e 6c 69 62 uc.lib icuin.lib 5080: 0a 21 45 4e 44 49 46 0a 0a 23 20 54 68 69 73 20 .!ENDIF..# This 5090: 69 73 20 74 68 65 20 63 6f 6d 6d 61 6e 64 20 74 is the command t 50a0: 6f 20 75 73 65 20 66 6f 72 20 74 63 6c 73 68 20 o use for tclsh 50b0: 2d 20 6e 6f 72 6d 61 6c 6c 79 20 6a 75 73 74 20 - normally just 50c0: 22 74 63 6c 73 68 22 2c 20 62 75 74 20 77 65 20 "tclsh", but we 50d0: 6d 61 79 0a 23 20 6b 6e 6f 77 20 74 68 65 20 73 may.# know the s 50e0: 70 65 63 69 66 69 63 20 76 65 72 73 69 6f 6e 20 pecific version 50f0: 77 65 20 77 61 6e 74 20 74 6f 20 75 73 65 2e 20 we want to use. 5100: 20 54 68 69 73 20 76 61 72 69 61 62 6c 65 20 28 This variable ( 5110: 54 43 4c 53 48 5f 43 4d 44 29 20 6d 61 79 20 62 TCLSH_CMD) may b 5120: 65 0a 23 20 6f 76 65 72 72 69 64 64 65 6e 20 76 e.# overridden v 5130: 69 61 20 74 68 65 20 65 6e 76 69 72 6f 6e 6d 65 ia the environme 5140: 6e 74 20 70 72 69 6f 72 20 74 6f 20 72 75 6e 6e nt prior to runn 5150: 69 6e 67 20 6e 6d 61 6b 65 20 69 6e 20 6f 72 64 ing nmake in ord 5160: 65 72 20 74 6f 20 73 65 6c 65 63 74 20 61 0a 23 er to select a.# 5170: 20 73 70 65 63 69 66 69 63 20 54 63 6c 20 73 68 specific Tcl sh 5180: 65 6c 6c 20 74 6f 20 75 73 65 2e 0a 23 0a 21 49 ell to use..#.!I 5190: 46 4e 44 45 46 20 54 43 4c 53 48 5f 43 4d 44 0a FNDEF TCLSH_CMD. 51a0: 54 43 4c 53 48 5f 43 4d 44 20 3d 20 74 63 6c 73 TCLSH_CMD = tcls 51b0: 68 38 35 0a 21 45 4e 44 49 46 0a 23 20 3c 3c 2f h85.!ENDIF.# <</ 51c0: 6d 61 72 6b 3e 3e 0a 0a 23 20 43 6f 6d 70 69 6c mark>>..# Compil 51d0: 65 72 20 6f 70 74 69 6f 6e 73 20 6e 65 65 64 65 er options neede 51e0: 64 20 66 6f 72 20 70 72 6f 67 72 61 6d 73 20 74 d for programs t 51f0: 68 61 74 20 75 73 65 20 74 68 65 20 72 65 61 64 hat use the read 5200: 6c 69 6e 65 28 29 20 6c 69 62 72 61 72 79 2e 0a line() library.. 5210: 23 0a 21 49 46 4e 44 45 46 20 52 45 41 44 4c 49 #.!IFNDEF READLI 5220: 4e 45 5f 46 4c 41 47 53 0a 52 45 41 44 4c 49 4e NE_FLAGS.READLIN 5230: 45 5f 46 4c 41 47 53 20 3d 20 2d 44 48 41 56 45 E_FLAGS = -DHAVE 5240: 5f 52 45 41 44 4c 49 4e 45 3d 30 0a 21 45 4e 44 _READLINE=0.!END 5250: 49 46 0a 0a 23 20 54 68 65 20 6c 69 62 72 61 72 IF..# The librar 5260: 79 20 74 68 61 74 20 70 72 6f 67 72 61 6d 73 20 y that programs 5270: 75 73 69 6e 67 20 72 65 61 64 6c 69 6e 65 28 29 using readline() 5280: 20 6d 75 73 74 20 6c 69 6e 6b 20 61 67 61 69 6e must link again 5290: 73 74 2e 0a 23 0a 21 49 46 4e 44 45 46 20 4c 49 st..#.!IFNDEF LI 52a0: 42 52 45 41 44 4c 49 4e 45 0a 4c 49 42 52 45 41 BREADLINE.LIBREA 52b0: 44 4c 49 4e 45 20 3d 0a 21 45 4e 44 49 46 0a 0a DLINE =.!ENDIF.. 52c0: 23 20 53 68 6f 75 6c 64 20 74 68 65 20 64 61 74 # Should the dat 52d0: 61 62 61 73 65 20 65 6e 67 69 6e 65 20 62 65 20 abase engine be 52e0: 63 6f 6d 70 69 6c 65 64 20 74 68 72 65 61 64 73 compiled threads 52f0: 61 66 65 0a 23 0a 54 43 43 20 3d 20 24 28 54 43 afe.#.TCC =$(TC
5300: 43 29 20 2d 44 53 51 4c 49 54 45 5f 54 48 52 45  C) -DSQLITE_THRE
5310: 41 44 53 41 46 45 3d 31 0a 52 43 43 20 3d 20 24  ADSAFE=1.RCC = $5320: 28 52 43 43 29 20 2d 44 53 51 4c 49 54 45 5f 54 (RCC) -DSQLITE_T 5330: 48 52 45 41 44 53 41 46 45 3d 31 0a 0a 23 20 44 HREADSAFE=1..# D 5340: 6f 20 74 68 72 65 61 64 73 20 6f 76 65 72 72 69 o threads overri 5350: 64 65 20 65 61 63 68 20 6f 74 68 65 72 73 20 6c de each others l 5360: 6f 63 6b 73 20 62 79 20 64 65 66 61 75 6c 74 20 ocks by default 5370: 28 31 29 2c 20 6f 72 20 64 6f 20 77 65 20 74 65 (1), or do we te 5380: 73 74 20 28 2d 31 29 0a 23 0a 54 43 43 20 3d 20 st (-1).#.TCC = 5390: 24 28 54 43 43 29 20 2d 44 53 51 4c 49 54 45 5f$(TCC) -DSQLITE_
53a0: 54 48 52 45 41 44 5f 4f 56 45 52 52 49 44 45 5f  THREAD_OVERRIDE_
53b0: 4c 4f 43 4b 3d 2d 31 0a 52 43 43 20 3d 20 24 28  LOCK=-1.RCC = $( 53c0: 52 43 43 29 20 2d 44 53 51 4c 49 54 45 5f 54 48 RCC) -DSQLITE_TH 53d0: 52 45 41 44 5f 4f 56 45 52 52 49 44 45 5f 4c 4f READ_OVERRIDE_LO 53e0: 43 4b 3d 2d 31 0a 0a 23 20 41 6e 79 20 74 61 72 CK=-1..# Any tar 53f0: 67 65 74 20 6c 69 62 72 61 72 69 65 73 20 77 68 get libraries wh 5400: 69 63 68 20 6c 69 62 73 71 6c 69 74 65 20 6d 75 ich libsqlite mu 5410: 73 74 20 62 65 20 6c 69 6e 6b 65 64 20 61 67 61 st be linked aga 5420: 69 6e 73 74 0a 23 0a 21 49 46 4e 44 45 46 20 54 inst.#.!IFNDEF T 5430: 4c 49 42 53 0a 54 4c 49 42 53 20 3d 0a 21 45 4e LIBS.TLIBS =.!EN 5440: 44 49 46 0a 0a 23 20 46 6c 61 67 73 20 63 6f 6e DIF..# Flags con 5450: 74 72 6f 6c 6c 69 6e 67 20 75 73 65 20 6f 66 20 trolling use of 5460: 74 68 65 20 69 6e 20 6d 65 6d 6f 72 79 20 62 74 the in memory bt 5470: 72 65 65 20 69 6d 70 6c 65 6d 65 6e 74 61 74 69 ree implementati 5480: 6f 6e 0a 23 0a 23 20 53 51 4c 49 54 45 5f 54 45 on.#.# SQLITE_TE 5490: 4d 50 5f 53 54 4f 52 45 20 69 73 20 30 20 74 6f MP_STORE is 0 to 54a0: 20 66 6f 72 63 65 20 74 65 6d 70 6f 72 61 72 79 force temporary 54b0: 20 74 61 62 6c 65 73 20 74 6f 20 62 65 20 69 6e tables to be in 54c0: 20 61 20 66 69 6c 65 2c 20 31 20 74 6f 0a 23 20 a file, 1 to.# 54d0: 64 65 66 61 75 6c 74 20 74 6f 20 66 69 6c 65 2c default to file, 54e0: 20 32 20 74 6f 20 64 65 66 61 75 6c 74 20 74 6f 2 to default to 54f0: 20 6d 65 6d 6f 72 79 2c 20 61 6e 64 20 33 20 74 memory, and 3 t 5500: 6f 20 66 6f 72 63 65 20 74 65 6d 70 6f 72 61 72 o force temporar 5510: 79 0a 23 20 74 61 62 6c 65 73 20 74 6f 20 61 6c y.# tables to al 5520: 77 61 79 73 20 62 65 20 69 6e 20 6d 65 6d 6f 72 ways be in memor 5530: 79 2e 0a 23 0a 54 43 43 20 3d 20 24 28 54 43 43 y..#.TCC =$(TCC
5540: 29 20 2d 44 53 51 4c 49 54 45 5f 54 45 4d 50 5f  ) -DSQLITE_TEMP_
5550: 53 54 4f 52 45 3d 31 0a 52 43 43 20 3d 20 24 28  STORE=1.RCC = $( 5560: 52 43 43 29 20 2d 44 53 51 4c 49 54 45 5f 54 45 RCC) -DSQLITE_TE 5570: 4d 50 5f 53 54 4f 52 45 3d 31 0a 0a 23 20 45 6e MP_STORE=1..# En 5580: 61 62 6c 65 2f 64 69 73 61 62 6c 65 20 6c 6f 61 able/disable loa 5590: 64 61 62 6c 65 20 65 78 74 65 6e 73 69 6f 6e 73 dable extensions 55a0: 2c 20 61 6e 64 20 6f 74 68 65 72 20 6f 70 74 69 , and other opti 55b0: 6f 6e 61 6c 20 66 65 61 74 75 72 65 73 0a 23 20 onal features.# 55c0: 62 61 73 65 64 20 6f 6e 20 63 6f 6e 66 69 67 75 based on configu 55d0: 72 61 74 69 6f 6e 2e 20 28 2d 44 53 51 4c 49 54 ration. (-DSQLIT 55e0: 45 5f 4f 4d 49 54 2a 2c 20 2d 44 53 51 4c 49 54 E_OMIT*, -DSQLIT 55f0: 45 5f 45 4e 41 42 4c 45 2a 29 2e 0a 23 20 54 68 E_ENABLE*)..# Th 5600: 65 20 73 61 6d 65 20 73 65 74 20 6f 66 20 4f 4d e same set of OM 5610: 49 54 20 61 6e 64 20 45 4e 41 42 4c 45 20 66 6c IT and ENABLE fl 5620: 61 67 73 20 73 68 6f 75 6c 64 20 62 65 20 70 61 ags should be pa 5630: 73 73 65 64 20 74 6f 20 74 68 65 0a 23 20 4c 45 ssed to the.# LE 5640: 4d 4f 4e 20 70 61 72 73 65 72 20 67 65 6e 65 72 MON parser gener 5650: 61 74 6f 72 20 61 6e 64 20 74 68 65 20 6d 6b 6b ator and the mkk 5660: 65 79 77 6f 72 64 68 61 73 68 20 74 6f 6f 6c 20 eywordhash tool 5670: 61 73 20 77 65 6c 6c 2e 0a 0a 23 20 54 68 65 73 as well...# Thes 5680: 65 20 61 72 65 20 74 68 65 20 72 65 71 75 69 72 e are the requir 5690: 65 64 20 53 51 4c 69 74 65 20 63 6f 6d 70 69 6c ed SQLite compil 56a0: 61 74 69 6f 6e 20 6f 70 74 69 6f 6e 73 20 75 73 ation options us 56b0: 65 64 20 77 68 65 6e 20 63 6f 6d 70 69 6c 69 6e ed when compilin 56c0: 67 20 66 6f 72 0a 23 20 74 68 65 20 57 69 6e 64 g for.# the Wind 56d0: 6f 77 73 20 70 6c 61 74 66 6f 72 6d 2e 0a 23 0a ows platform..#. 56e0: 52 45 51 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 REQ_FEATURE_FLAG 56f0: 53 20 3d 20 24 28 52 45 51 5f 46 45 41 54 55 52 S =$(REQ_FEATUR
5700: 45 5f 46 4c 41 47 53 29 20 2d 44 53 51 4c 49 54  E_FLAGS) -DSQLIT
5710: 45 5f 4d 41 58 5f 54 52 49 47 47 45 52 5f 44 45  E_MAX_TRIGGER_DE
5720: 50 54 48 3d 31 30 30 0a 0a 23 20 49 66 20 77 65  PTH=100..# If we
5730: 20 61 72 65 20 6c 69 6e 6b 69 6e 67 20 74 6f 20   are linking to
5740: 74 68 65 20 52 50 43 52 54 34 20 6c 69 62 72 61  the RPCRT4 libra
5750: 72 79 2c 20 65 6e 61 62 6c 65 20 66 65 61 74 75  ry, enable featu
5760: 72 65 73 20 74 68 61 74 20 6e 65 65 64 20 69 74  res that need it
5770: 2e 0a 23 0a 21 49 46 20 24 28 55 53 45 5f 52 50  ..#.!IF $(USE_RP 5780: 43 52 54 34 5f 4c 49 42 29 21 3d 30 0a 52 45 51 CRT4_LIB)!=0.REQ 5790: 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 20 3d _FEATURE_FLAGS = 57a0: 20 24 28 52 45 51 5f 46 45 41 54 55 52 45 5f 46$(REQ_FEATURE_F
57b0: 4c 41 47 53 29 20 2d 44 53 51 4c 49 54 45 5f 57  LAGS) -DSQLITE_W
57c0: 49 4e 33 32 5f 55 53 45 5f 55 55 49 44 3d 31 0a  IN32_USE_UUID=1.
57d0: 21 45 4e 44 49 46 0a 0a 23 20 41 64 64 20 74 68  !ENDIF..# Add th
57e0: 65 20 72 65 71 75 69 72 65 64 20 61 6e 64 20 6f  e required and o
57f0: 70 74 69 6f 6e 61 6c 20 53 51 4c 69 74 65 20 63  ptional SQLite c
5800: 6f 6d 70 69 6c 61 74 69 6f 6e 20 6f 70 74 69 6f  ompilation optio
5810: 6e 73 20 69 6e 74 6f 20 74 68 65 20 63 6f 6d 6d  ns into the comm
5820: 61 6e 64 0a 23 20 6c 69 6e 65 73 20 75 73 65 64  and.# lines used
5830: 20 74 6f 20 69 6e 76 6f 6b 65 20 74 68 65 20 4d   to invoke the M
5840: 53 56 43 20 63 6f 64 65 20 61 6e 64 20 72 65 73  SVC code and res
5850: 6f 75 72 63 65 20 63 6f 6d 70 69 6c 65 72 73 2e  ource compilers.
5860: 0a 23 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20  .#.TCC = $(TCC) 5870: 24 28 52 45 51 5f 46 45 41 54 55 52 45 5f 46 4c$(REQ_FEATURE_FL
5880: 41 47 53 29 20 24 28 4f 50 54 5f 46 45 41 54 55  AGS) $(OPT_FEATU 5890: 52 45 5f 46 4c 41 47 53 29 20 24 28 45 58 54 5f RE_FLAGS)$(EXT_
58a0: 46 45 41 54 55 52 45 5f 46 4c 41 47 53 29 0a 52  FEATURE_FLAGS).R
58b0: 43 43 20 3d 20 24 28 52 43 43 29 20 24 28 52 45  CC = $(RCC)$(RE
58c0: 51 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 29  Q_FEATURE_FLAGS)
58d0: 20 24 28 4f 50 54 5f 46 45 41 54 55 52 45 5f 46   $(OPT_FEATURE_F 58e0: 4c 41 47 53 29 20 24 28 45 58 54 5f 46 45 41 54 LAGS)$(EXT_FEAT
58f0: 55 52 45 5f 46 4c 41 47 53 29 0a 0a 23 20 41 64  URE_FLAGS)..# Ad
5900: 64 20 69 6e 20 61 6e 79 20 6f 70 74 69 6f 6e 61  d in any optiona
5910: 6c 20 70 61 72 61 6d 65 74 65 72 73 20 73 70 65  l parameters spe
5920: 63 69 66 69 65 64 20 6f 6e 20 74 68 65 20 63 6f  cified on the co
5930: 6d 6d 61 6e 65 20 6c 69 6e 65 2c 20 65 2e 67 2e  mmane line, e.g.
5940: 0a 23 20 6e 6d 61 6b 65 20 2f 66 20 4d 61 6b 65  .# nmake /f Make
5950: 66 69 6c 65 2e 6d 73 63 20 61 6c 6c 20 22 4f 50  file.msc all "OP
5960: 54 53 3d 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42  TS=-DSQLITE_ENAB
5970: 4c 45 5f 46 4f 4f 3d 31 20 2d 44 53 51 4c 49 54  LE_FOO=1 -DSQLIT
5980: 45 5f 4f 4d 49 54 5f 46 4f 4f 3d 31 22 0a 23 0a  E_OMIT_FOO=1".#.
5990: 54 43 43 20 3d 20 24 28 54 43 43 29 20 24 28 4f  TCC = $(TCC)$(O
59a0: 50 54 53 29 0a 52 43 43 20 3d 20 24 28 52 43 43  PTS).RCC = $(RCC 59b0: 29 20 24 28 4f 50 54 53 29 0a 0a 23 20 49 66 20 )$(OPTS)..# If
59c0: 63 6f 6d 70 69 6c 69 6e 67 20 66 6f 72 20 64 65  compiling for de
59d0: 62 75 67 67 69 6e 67 2c 20 61 64 64 20 73 6f 6d  bugging, add som
59e0: 65 20 64 65 66 69 6e 65 73 2e 0a 23 0a 21 49 46  e defines..#.!IF
59f0: 20 24 28 44 45 42 55 47 29 3e 31 0a 54 43 43 20   $(DEBUG)>1.TCC 5a00: 3d 20 24 28 54 43 43 29 20 2d 44 5f 44 45 42 55 =$(TCC) -D_DEBU
5a10: 47 0a 42 43 43 20 3d 20 24 28 42 43 43 29 20 2d  G.BCC = $(BCC) - 5a20: 44 5f 44 45 42 55 47 0a 52 43 43 20 3d 20 24 28 D_DEBUG.RCC =$(
5a30: 52 43 43 29 20 2d 44 5f 44 45 42 55 47 0a 21 45  RCC) -D_DEBUG.!E
5a40: 4e 44 49 46 0a 0a 23 20 49 66 20 6f 70 74 69 6d  NDIF..# If optim
5a50: 69 7a 61 74 69 6f 6e 73 20 61 72 65 20 65 6e 61  izations are ena
5a60: 62 6c 65 64 20 6f 72 20 64 69 73 61 62 6c 65 64  bled or disabled
5a70: 20 28 65 69 74 68 65 72 20 69 6d 70 6c 69 63 69   (either implici
5a80: 74 6c 79 20 6f 72 0a 23 20 65 78 70 6c 69 63 69  tly or.# explici
5a90: 74 6c 79 29 2c 20 61 64 64 20 74 68 65 20 6e 65  tly), add the ne
5aa0: 63 65 73 73 61 72 79 20 66 6c 61 67 73 2e 0a 23  cessary flags..#
5ab0: 0a 21 49 46 20 24 28 44 45 42 55 47 29 3e 31 20  .!IF $(DEBUG)>1 5ac0: 7c 7c 20 24 28 4f 50 54 49 4d 49 5a 41 54 49 4f ||$(OPTIMIZATIO
5ad0: 4e 53 29 3d 3d 30 0a 54 43 43 20 3d 20 24 28 54  NS)==0.TCC = $(T 5ae0: 43 43 29 20 2d 4f 64 0a 42 43 43 20 3d 20 24 28 CC) -Od.BCC =$(
5af0: 42 43 43 29 20 2d 4f 64 0a 21 45 4c 53 45 49 46  BCC) -Od.!ELSEIF
5b00: 20 24 28 4f 50 54 49 4d 49 5a 41 54 49 4f 4e 53   $(OPTIMIZATIONS 5b10: 29 3e 3d 33 0a 54 43 43 20 3d 20 24 28 54 43 43 )>=3.TCC =$(TCC
5b20: 29 20 2d 4f 78 0a 42 43 43 20 3d 20 24 28 42 43  ) -Ox.BCC = $(BC 5b30: 43 29 20 2d 4f 78 0a 21 45 4c 53 45 49 46 20 24 C) -Ox.!ELSEIF$
5b40: 28 4f 50 54 49 4d 49 5a 41 54 49 4f 4e 53 29 3d  (OPTIMIZATIONS)=
5b50: 3d 32 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20  =2.TCC = $(TCC) 5b60: 2d 4f 32 0a 42 43 43 20 3d 20 24 28 42 43 43 29 -O2.BCC =$(BCC)
5b70: 20 2d 4f 32 0a 21 45 4c 53 45 49 46 20 24 28 4f   -O2.!ELSEIF $(O 5b80: 50 54 49 4d 49 5a 41 54 49 4f 4e 53 29 3d 3d 31 PTIMIZATIONS)==1 5b90: 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 4f .TCC =$(TCC) -O
5ba0: 31 0a 42 43 43 20 3d 20 24 28 42 43 43 29 20 2d  1.BCC = $(BCC) - 5bb0: 4f 31 0a 21 45 4e 44 49 46 0a 0a 23 20 49 66 20 O1.!ENDIF..# If 5bc0: 73 79 6d 62 6f 6c 73 20 61 72 65 20 65 6e 61 62 symbols are enab 5bd0: 6c 65 64 20 28 6f 72 20 63 6f 6d 70 69 6c 69 6e led (or compilin 5be0: 67 20 66 6f 72 20 64 65 62 75 67 67 69 6e 67 29 g for debugging) 5bf0: 2c 20 65 6e 61 62 6c 65 20 50 44 42 73 2e 0a 23 , enable PDBs..# 5c00: 0a 21 49 46 20 24 28 44 45 42 55 47 29 3e 31 20 .!IF$(DEBUG)>1
5c10: 7c 7c 20 24 28 53 59 4d 42 4f 4c 53 29 21 3d 30  || $(SYMBOLS)!=0 5c20: 0a 54 43 43 20 3d 20 24 28 54 43 43 29 20 2d 5a .TCC =$(TCC) -Z
5c30: 69 0a 42 43 43 20 3d 20 24 28 42 43 43 29 20 2d  i.BCC = $(BCC) - 5c40: 5a 69 0a 21 45 4e 44 49 46 0a 0a 23 20 3c 3c 6d Zi.!ENDIF..# <<m 5c50: 61 72 6b 3e 3e 0a 23 20 49 66 20 49 43 55 20 73 ark>>.# If ICU s 5c60: 75 70 70 6f 72 74 20 69 73 20 65 6e 61 62 6c 65 upport is enable 5c70: 64 2c 20 61 64 64 20 74 68 65 20 63 6f 6d 70 69 d, add the compi 5c80: 6c 65 72 20 6f 70 74 69 6f 6e 73 20 66 6f 72 20 ler options for 5c90: 69 74 2e 0a 23 0a 21 49 46 20 24 28 55 53 45 5f it..#.!IF$(USE_
5ca0: 49 43 55 29 21 3d 30 0a 54 43 43 20 3d 20 24 28  ICU)!=0.TCC = $( 5cb0: 54 43 43 29 20 2d 44 53 51 4c 49 54 45 5f 45 4e TCC) -DSQLITE_EN 5cc0: 41 42 4c 45 5f 49 43 55 3d 31 0a 52 43 43 20 3d ABLE_ICU=1.RCC = 5cd0: 20 24 28 52 43 43 29 20 2d 44 53 51 4c 49 54 45$(RCC) -DSQLITE
5ce0: 5f 45 4e 41 42 4c 45 5f 49 43 55 3d 31 0a 54 43  _ENABLE_ICU=1.TC
5cf0: 43 20 3d 20 24 28 54 43 43 29 20 2d 49 24 28 54  C = $(TCC) -I$(T
5d00: 4f 50 29 5c 65 78 74 5c 69 63 75 0a 52 43 43 20  OP)\ext\icu.RCC
5d10: 3d 20 24 28 52 43 43 29 20 2d 49 24 28 54 4f 50  = $(RCC) -I$(TOP
5d20: 29 5c 65 78 74 5c 69 63 75 0a 54 43 43 20 3d 20  )\ext\icu.TCC =
5d30: 24 28 54 43 43 29 20 2d 49 24 28 49 43 55 49 4e  $(TCC) -I$(ICUIN
5d40: 43 44 49 52 29 0a 52 43 43 20 3d 20 24 28 52 43  CDIR).RCC = $(RC 5d50: 43 29 20 2d 49 24 28 49 43 55 49 4e 43 44 49 52 C) -I$(ICUINCDIR
5d60: 29 0a 21 45 4e 44 49 46 0a 23 20 3c 3c 2f 6d 61  ).!ENDIF.# <</ma
5d70: 72 6b 3e 3e 0a 0a 23 20 43 6f 6d 6d 61 6e 64 20  rk>>..# Command
5d80: 6c 69 6e 65 20 70 72 65 66 69 78 65 73 20 66 6f  line prefixes fo
5d90: 72 20 63 6f 6d 70 69 6c 69 6e 67 20 63 6f 64 65  r compiling code
5da0: 2c 20 63 6f 6d 70 69 6c 69 6e 67 20 72 65 73 6f  , compiling reso
5db0: 75 72 63 65 73 2c 0a 23 20 6c 69 6e 6b 69 6e 67  urces,.# linking
5dc0: 2c 20 65 74 63 2e 0a 23 0a 4c 54 43 4f 4d 50 49  , etc..#.LTCOMPI
5dd0: 4c 45 20 3d 20 24 28 54 43 43 29 20 2d 46 6f 24  LE = $(TCC) -Fo$
5de0: 40 0a 4c 54 52 43 4f 4d 50 49 4c 45 20 3d 20 24  @.LTRCOMPILE = $5df0: 28 52 43 43 29 20 2d 72 0a 4c 54 4c 49 42 20 3d (RCC) -r.LTLIB = 5e00: 20 6c 69 62 2e 65 78 65 0a 4c 54 4c 49 4e 4b 20 lib.exe.LTLINK 5e10: 3d 20 24 28 54 43 43 29 20 2d 46 65 24 40 0a 0a =$(TCC) -Fe$@.. 5e20: 23 20 49 66 20 72 65 71 75 65 73 74 65 64 2c 20 # If requested, 5e30: 6c 69 6e 6b 20 74 6f 20 74 68 65 20 52 50 43 52 link to the RPCR 5e40: 54 34 20 6c 69 62 72 61 72 79 2e 0a 23 0a 21 49 T4 library..#.!I 5e50: 46 20 24 28 55 53 45 5f 52 50 43 52 54 34 5f 4c F$(USE_RPCRT4_L
5e60: 49 42 29 21 3d 30 0a 4c 54 4c 49 4e 4b 20 3d 20  IB)!=0.LTLINK =
5e70: 24 28 4c 54 4c 49 4e 4b 29 20 72 70 63 72 74 34  $(LTLINK) rpcrt4 5e80: 2e 6c 69 62 0a 21 45 4e 44 49 46 0a 0a 23 20 49 .lib.!ENDIF..# I 5e90: 66 20 61 20 70 6c 61 74 66 6f 72 6d 20 77 61 73 f a platform was 5ea0: 20 73 65 74 2c 20 66 6f 72 63 65 20 74 68 65 20 set, force the 5eb0: 6c 69 6e 6b 65 72 20 74 6f 20 74 61 72 67 65 74 linker to target 5ec0: 20 74 68 61 74 2e 0a 23 20 4e 6f 74 65 20 74 68 that..# Note th 5ed0: 61 74 20 74 68 65 20 76 63 76 61 72 73 2a 2e 62 at the vcvars*.b 5ee0: 61 74 20 66 61 6d 69 6c 79 20 6f 66 20 62 61 74 at family of bat 5ef0: 63 68 20 66 69 6c 65 73 20 74 79 70 69 63 61 6c ch files typical 5f00: 6c 79 0a 23 20 73 65 74 20 74 68 69 73 20 66 6f ly.# set this fo 5f10: 72 20 79 6f 75 2e 20 20 4f 74 68 65 72 77 69 73 r you. Otherwis 5f20: 65 2c 20 74 68 65 20 6c 69 6e 6b 65 72 20 77 69 e, the linker wi 5f30: 6c 6c 20 61 74 74 65 6d 70 74 0a 23 20 74 6f 20 ll attempt.# to 5f40: 64 65 64 75 63 65 20 74 68 65 20 62 69 6e 61 72 deduce the binar 5f50: 79 20 74 79 70 65 20 62 61 73 65 64 20 6f 6e 20 y type based on 5f60: 74 68 65 20 6f 62 6a 65 63 74 20 66 69 6c 65 73 the object files 5f70: 2e 0a 21 49 46 44 45 46 20 50 4c 41 54 46 4f 52 ..!IFDEF PLATFOR 5f80: 4d 0a 4c 54 4c 49 4e 4b 4f 50 54 53 20 3d 20 2f M.LTLINKOPTS = / 5f90: 4e 4f 4c 4f 47 4f 20 2f 4d 41 43 48 49 4e 45 3a NOLOGO /MACHINE: 5fa0: 24 28 50 4c 41 54 46 4f 52 4d 29 0a 4c 54 4c 49$(PLATFORM).LTLI
5fb0: 42 4f 50 54 53 20 3d 20 2f 4e 4f 4c 4f 47 4f 20  BOPTS = /NOLOGO
5fc0: 2f 4d 41 43 48 49 4e 45 3a 24 28 50 4c 41 54 46  /MACHINE:$(PLATF 5fd0: 4f 52 4d 29 0a 21 45 4c 53 45 0a 4c 54 4c 49 4e ORM).!ELSE.LTLIN 5fe0: 4b 4f 50 54 53 20 3d 20 2f 4e 4f 4c 4f 47 4f 0a KOPTS = /NOLOGO. 5ff0: 4c 54 4c 49 42 4f 50 54 53 20 3d 20 2f 4e 4f 4c LTLIBOPTS = /NOL 6000: 4f 47 4f 0a 21 45 4e 44 49 46 0a 0a 23 20 57 68 OGO.!ENDIF..# Wh 6010: 65 6e 20 63 6f 6d 70 69 6c 69 6e 67 20 66 6f 72 en compiling for 6020: 20 75 73 65 20 69 6e 20 74 68 65 20 57 69 6e 52 use in the WinR 6030: 54 20 65 6e 76 69 72 6f 6e 6d 65 6e 74 2c 20 74 T environment, t 6040: 68 65 20 66 6f 6c 6c 6f 77 69 6e 67 0a 23 20 6c he following.# l 6050: 69 6e 6b 65 72 20 6f 70 74 69 6f 6e 20 6d 75 73 inker option mus 6060: 74 20 62 65 20 75 73 65 64 20 74 6f 20 6d 61 72 t be used to mar 6070: 6b 20 74 68 65 20 65 78 65 63 75 74 61 62 6c 65 k the executable 6080: 20 61 73 20 72 75 6e 6e 61 62 6c 65 0a 23 20 6f as runnable.# o 6090: 6e 6c 79 20 69 6e 20 74 68 65 20 63 6f 6e 74 65 nly in the conte 60a0: 78 74 20 6f 66 20 61 6e 20 61 70 70 6c 69 63 61 xt of an applica 60b0: 74 69 6f 6e 20 63 6f 6e 74 61 69 6e 65 72 2e 0a tion container.. 60c0: 23 0a 21 49 46 20 24 28 46 4f 52 5f 57 49 4e 52 #.!IF$(FOR_WINR
60d0: 54 29 21 3d 30 0a 4c 54 4c 49 4e 4b 4f 50 54 53  T)!=0.LTLINKOPTS
60e0: 20 3d 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29   = $(LTLINKOPTS) 60f0: 20 2f 41 50 50 43 4f 4e 54 41 49 4e 45 52 0a 21 /APPCONTAINER.! 6100: 49 46 20 22 24 28 56 49 53 55 41 4c 53 54 55 44 IF "$(VISUALSTUD
6110: 49 4f 56 45 52 53 49 4f 4e 29 22 3d 3d 22 31 32  IOVERSION)"=="12
6120: 2e 30 22 20 7c 7c 20 22 24 28 56 49 53 55 41 4c  .0" || "$(VISUAL 6130: 53 54 55 44 49 4f 56 45 52 53 49 4f 4e 29 22 3d STUDIOVERSION)"= 6140: 3d 22 31 34 2e 30 22 0a 21 49 46 4e 44 45 46 20 ="14.0".!IFNDEF 6150: 53 54 4f 52 45 4c 49 42 50 41 54 48 0a 21 49 46 STORELIBPATH.!IF 6160: 20 22 24 28 50 4c 41 54 46 4f 52 4d 29 22 3d 3d "$(PLATFORM)"==
6170: 22 78 38 36 22 0a 53 54 4f 52 45 4c 49 42 50 41  "x86".STORELIBPA
6180: 54 48 20 3d 20 24 28 43 52 54 4c 49 42 50 41 54  TH = $(CRTLIBPAT 6190: 48 29 5c 73 74 6f 72 65 0a 21 45 4c 53 45 49 46 H)\store.!ELSEIF 61a0: 20 22 24 28 50 4c 41 54 46 4f 52 4d 29 22 3d 3d "$(PLATFORM)"==
61b0: 22 78 36 34 22 0a 53 54 4f 52 45 4c 49 42 50 41  "x64".STORELIBPA
61c0: 54 48 20 3d 20 24 28 43 52 54 4c 49 42 50 41 54  TH = $(CRTLIBPAT 61d0: 48 29 5c 73 74 6f 72 65 5c 61 6d 64 36 34 0a 21 H)\store\amd64.! 61e0: 45 4c 53 45 49 46 20 22 24 28 50 4c 41 54 46 4f ELSEIF "$(PLATFO
61f0: 52 4d 29 22 3d 3d 22 41 52 4d 22 0a 53 54 4f 52  RM)"=="ARM".STOR
6200: 45 4c 49 42 50 41 54 48 20 3d 20 24 28 43 52 54  ELIBPATH = $(CRT 6210: 4c 49 42 50 41 54 48 29 5c 73 74 6f 72 65 5c 61 LIBPATH)\store\a 6220: 72 6d 0a 21 45 4c 53 45 0a 53 54 4f 52 45 4c 49 rm.!ELSE.STORELI 6230: 42 50 41 54 48 20 3d 20 24 28 43 52 54 4c 49 42 BPATH =$(CRTLIB
6240: 50 41 54 48 29 5c 73 74 6f 72 65 0a 21 45 4e 44  PATH)\store.!END
6250: 49 46 0a 21 45 4e 44 49 46 0a 53 54 4f 52 45 4c  IF.!ENDIF.STOREL
6260: 49 42 50 41 54 48 20 3d 20 24 28 53 54 4f 52 45  IBPATH = $(STORE 6270: 4c 49 42 50 41 54 48 3a 5c 5c 3d 5c 29 0a 4c 54 LIBPATH:\\=\).LT 6280: 4c 49 4e 4b 4f 50 54 53 20 3d 20 24 28 4c 54 4c LINKOPTS =$(LTL
6290: 49 4e 4b 4f 50 54 53 29 20 22 2f 4c 49 42 50 41  INKOPTS) "/LIBPA
62a0: 54 48 3a 24 28 53 54 4f 52 45 4c 49 42 50 41 54  TH:$(STORELIBPAT 62b0: 48 29 22 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 H)".!ENDIF.!ENDI 62c0: 46 0a 0a 23 20 57 68 65 6e 20 63 6f 6d 70 69 6c F..# When compil 62d0: 69 6e 67 20 66 6f 72 20 57 69 6e 64 6f 77 73 20 ing for Windows 62e0: 50 68 6f 6e 65 20 38 2e 31 2c 20 61 6e 20 65 78 Phone 8.1, an ex 62f0: 74 72 61 20 6c 69 62 72 61 72 79 20 70 61 74 68 tra library path 6300: 20 69 73 0a 23 20 72 65 71 75 69 72 65 64 2e 0a is.# required.. 6310: 23 0a 21 49 46 20 24 28 55 53 45 5f 57 50 38 31 #.!IF$(USE_WP81
6320: 5f 4f 50 54 53 29 21 3d 30 0a 21 49 46 4e 44 45  _OPTS)!=0.!IFNDE
6330: 46 20 57 50 38 31 4c 49 42 50 41 54 48 0a 21 49  F WP81LIBPATH.!I
6340: 46 20 22 24 28 50 4c 41 54 46 4f 52 4d 29 22 3d  F "$(PLATFORM)"= 6350: 3d 22 78 38 36 22 0a 57 50 38 31 4c 49 42 50 41 ="x86".WP81LIBPA 6360: 54 48 20 3d 20 24 28 50 52 4f 47 52 41 4d 46 49 TH =$(PROGRAMFI
6370: 4c 45 53 5f 58 38 36 29 5c 57 69 6e 64 6f 77 73  LES_X86)\Windows
6380: 20 50 68 6f 6e 65 20 4b 69 74 73 5c 38 2e 31 5c   Phone Kits\8.1\
6390: 6c 69 62 5c 78 38 36 0a 21 45 4c 53 45 49 46 20  lib\x86.!ELSEIF
63a0: 22 24 28 50 4c 41 54 46 4f 52 4d 29 22 3d 3d 22  "$(PLATFORM)"==" 63b0: 41 52 4d 22 0a 57 50 38 31 4c 49 42 50 41 54 48 ARM".WP81LIBPATH 63c0: 20 3d 20 24 28 50 52 4f 47 52 41 4d 46 49 4c 45 =$(PROGRAMFILE
63d0: 53 5f 58 38 36 29 5c 57 69 6e 64 6f 77 73 20 50  S_X86)\Windows P
63e0: 68 6f 6e 65 20 4b 69 74 73 5c 38 2e 31 5c 6c 69  hone Kits\8.1\li
63f0: 62 5c 41 52 4d 0a 21 45 4c 53 45 0a 57 50 38 31  b\ARM.!ELSE.WP81
6400: 4c 49 42 50 41 54 48 20 3d 20 24 28 50 52 4f 47  LIBPATH = $(PROG 6410: 52 41 4d 46 49 4c 45 53 5f 58 38 36 29 5c 57 69 RAMFILES_X86)\Wi 6420: 6e 64 6f 77 73 20 50 68 6f 6e 65 20 4b 69 74 73 ndows Phone Kits 6430: 5c 38 2e 31 5c 6c 69 62 5c 78 38 36 0a 21 45 4e \8.1\lib\x86.!EN 6440: 44 49 46 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 DIF.!ENDIF.!ENDI 6450: 46 0a 0a 23 20 57 68 65 6e 20 63 6f 6d 70 69 6c F..# When compil 6460: 69 6e 67 20 66 6f 72 20 57 69 6e 64 6f 77 73 20 ing for Windows 6470: 50 68 6f 6e 65 20 38 2e 31 2c 20 73 6f 6d 65 20 Phone 8.1, some 6480: 65 78 74 72 61 20 6c 69 6e 6b 65 72 20 6f 70 74 extra linker opt 6490: 69 6f 6e 73 0a 23 20 61 72 65 20 61 6c 73 6f 20 ions.# are also 64a0: 72 65 71 75 69 72 65 64 2e 0a 23 0a 21 49 46 20 required..#.!IF 64b0: 24 28 55 53 45 5f 57 50 38 31 5f 4f 50 54 53 29$(USE_WP81_OPTS)
64c0: 21 3d 30 0a 21 49 46 44 45 46 20 57 50 38 31 4c  !=0.!IFDEF WP81L
64d0: 49 42 50 41 54 48 0a 4c 54 4c 49 4e 4b 4f 50 54  IBPATH.LTLINKOPT
64e0: 53 20 3d 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53  S = $(LTLINKOPTS 64f0: 29 20 22 2f 4c 49 42 50 41 54 48 3a 24 28 57 50 ) "/LIBPATH:$(WP
6500: 38 31 4c 49 42 50 41 54 48 29 22 0a 21 45 4e 44  81LIBPATH)".!END
6510: 49 46 0a 4c 54 4c 49 4e 4b 4f 50 54 53 20 3d 20  IF.LTLINKOPTS =
6520: 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 2f 44  $(LTLINKOPTS) /D 6530: 59 4e 41 4d 49 43 42 41 53 45 0a 4c 54 4c 49 4e YNAMICBASE.LTLIN 6540: 4b 4f 50 54 53 20 3d 20 24 28 4c 54 4c 49 4e 4b KOPTS =$(LTLINK
6550: 4f 50 54 53 29 20 57 69 6e 64 6f 77 73 50 68 6f  OPTS) WindowsPho
6560: 6e 65 43 6f 72 65 2e 6c 69 62 20 52 75 6e 74 69  neCore.lib Runti
6570: 6d 65 4f 62 6a 65 63 74 2e 6c 69 62 20 50 68 6f  meObject.lib Pho
6580: 6e 65 41 70 70 4d 6f 64 65 6c 48 6f 73 74 2e 6c  neAppModelHost.l
6590: 69 62 0a 4c 54 4c 49 4e 4b 4f 50 54 53 20 3d 20  ib.LTLINKOPTS =
65a0: 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 2f 4e  $(LTLINKOPTS) /N 65b0: 4f 44 45 46 41 55 4c 54 4c 49 42 3a 6b 65 72 6e ODEFAULTLIB:kern 65c0: 65 6c 33 32 2e 6c 69 62 20 2f 4e 4f 44 45 46 41 el32.lib /NODEFA 65d0: 55 4c 54 4c 49 42 3a 6f 6c 65 33 32 2e 6c 69 62 ULTLIB:ole32.lib 65e0: 0a 21 45 4e 44 49 46 0a 0a 23 20 57 68 65 6e 20 .!ENDIF..# When 65f0: 63 6f 6d 70 69 6c 69 6e 67 20 66 6f 72 20 55 57 compiling for UW 6600: 50 20 6f 72 20 74 68 65 20 57 69 6e 64 6f 77 73 P or the Windows 6610: 20 31 30 20 70 6c 61 74 66 6f 72 6d 2c 20 73 6f 10 platform, so 6620: 6d 65 20 65 78 74 72 61 20 6c 69 6e 6b 65 72 0a me extra linker. 6630: 23 20 6f 70 74 69 6f 6e 73 20 61 72 65 20 61 6c # options are al 6640: 73 6f 20 72 65 71 75 69 72 65 64 2e 0a 23 0a 21 so required..#.! 6650: 49 46 20 24 28 46 4f 52 5f 55 57 50 29 21 3d 30 IF$(FOR_UWP)!=0
6660: 20 7c 7c 20 24 28 46 4f 52 5f 57 49 4e 31 30 29   || $(FOR_WIN10) 6670: 21 3d 30 0a 4c 54 4c 49 4e 4b 4f 50 54 53 20 3d !=0.LTLINKOPTS = 6680: 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 2f$(LTLINKOPTS) /
6690: 44 59 4e 41 4d 49 43 42 41 53 45 20 2f 4e 4f 44  DYNAMICBASE /NOD
66a0: 45 46 41 55 4c 54 4c 49 42 3a 6b 65 72 6e 65 6c  EFAULTLIB:kernel
66b0: 33 32 2e 6c 69 62 0a 4c 54 4c 49 4e 4b 4f 50 54  32.lib.LTLINKOPT
66c0: 53 20 3d 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53  S = $(LTLINKOPTS 66d0: 29 20 6d 69 6e 63 6f 72 65 2e 6c 69 62 0a 21 49 ) mincore.lib.!I 66e0: 46 44 45 46 20 50 53 44 4b 4c 49 42 50 41 54 48 FDEF PSDKLIBPATH 66f0: 0a 4c 54 4c 49 4e 4b 4f 50 54 53 20 3d 20 24 28 .LTLINKOPTS =$(
6700: 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 22 2f 4c 49  LTLINKOPTS) "/LI
6710: 42 50 41 54 48 3a 24 28 50 53 44 4b 4c 49 42 50  BPATH:$(PSDKLIBP 6720: 41 54 48 29 22 0a 21 45 4e 44 49 46 0a 21 45 4e ATH)".!ENDIF.!EN 6730: 44 49 46 0a 0a 21 49 46 20 24 28 46 4f 52 5f 57 DIF..!IF$(FOR_W
6740: 49 4e 31 30 29 21 3d 30 0a 4c 54 4c 49 4e 4b 4f  IN10)!=0.LTLINKO
6750: 50 54 53 20 3d 20 24 28 4c 54 4c 49 4e 4b 4f 50  PTS = $(LTLINKOP 6760: 54 53 29 20 2f 67 75 61 72 64 3a 63 66 20 22 2f TS) /guard:cf "/ 6770: 4c 49 42 50 41 54 48 3a 24 28 55 43 52 54 4c 49 LIBPATH:$(UCRTLI
6780: 42 50 41 54 48 29 22 0a 21 49 46 20 24 28 44 45  BPATH)".!IF $(DE 6790: 42 55 47 29 3e 31 0a 4c 54 4c 49 4e 4b 4f 50 54 BUG)>1.LTLINKOPT 67a0: 53 20 3d 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 S =$(LTLINKOPTS
67b0: 29 20 2f 4e 4f 44 45 46 41 55 4c 54 4c 49 42 3a  ) /NODEFAULTLIB:
67c0: 6c 69 62 75 63 72 74 64 2e 6c 69 62 20 2f 44 45  libucrtd.lib /DE
67d0: 46 41 55 4c 54 4c 49 42 3a 75 63 72 74 64 2e 6c  FAULTLIB:ucrtd.l
67e0: 69 62 0a 21 45 4c 53 45 0a 4c 54 4c 49 4e 4b 4f  ib.!ELSE.LTLINKO
67f0: 50 54 53 20 3d 20 24 28 4c 54 4c 49 4e 4b 4f 50  PTS = $(LTLINKOP 6800: 54 53 29 20 2f 4e 4f 44 45 46 41 55 4c 54 4c 49 TS) /NODEFAULTLI 6810: 42 3a 6c 69 62 75 63 72 74 2e 6c 69 62 20 2f 44 B:libucrt.lib /D 6820: 45 46 41 55 4c 54 4c 49 42 3a 75 63 72 74 2e 6c EFAULTLIB:ucrt.l 6830: 69 62 0a 21 45 4e 44 49 46 0a 21 45 4e 44 49 46 ib.!ENDIF.!ENDIF 6840: 0a 0a 23 20 49 66 20 65 69 74 68 65 72 20 64 65 ..# If either de 6850: 62 75 67 67 69 6e 67 20 6f 72 20 73 79 6d 62 6f bugging or symbo 6860: 6c 73 20 61 72 65 20 65 6e 61 62 6c 65 64 2c 20 ls are enabled, 6870: 65 6e 61 62 6c 65 20 50 44 42 73 2e 0a 23 0a 21 enable PDBs..#.! 6880: 49 46 20 24 28 44 45 42 55 47 29 3e 31 20 7c 7c IF$(DEBUG)>1 ||
6890: 20 24 28 53 59 4d 42 4f 4c 53 29 21 3d 30 0a 4c   $(SYMBOLS)!=0.L 68a0: 44 46 4c 41 47 53 20 3d 20 2f 44 45 42 55 47 20 DFLAGS = /DEBUG 68b0: 24 28 4c 44 4f 50 54 53 29 0a 21 45 4c 53 45 0a$(LDOPTS).!ELSE.
68c0: 4c 44 46 4c 41 47 53 20 3d 20 24 28 4c 44 4f 50  LDFLAGS = $(LDOP 68d0: 54 53 29 0a 21 45 4e 44 49 46 0a 0a 23 20 3c 3c TS).!ENDIF..# << 68e0: 6d 61 72 6b 3e 3e 0a 23 20 53 74 61 72 74 20 77 mark>>.# Start w 68f0: 69 74 68 20 74 68 65 20 54 63 6c 20 72 65 6c 61 ith the Tcl rela 6900: 74 65 64 20 6c 69 6e 6b 65 72 20 6f 70 74 69 6f ted linker optio 6910: 6e 73 2e 0a 23 0a 21 49 46 20 24 28 4e 4f 5f 54 ns..#.!IF$(NO_T
6920: 43 4c 29 3d 3d 30 0a 4c 54 4c 49 42 50 41 54 48  CL)==0.LTLIBPATH
6930: 53 20 3d 20 2f 4c 49 42 50 41 54 48 3a 24 28 54  S = /LIBPATH:$(T 6940: 43 4c 4c 49 42 44 49 52 29 0a 4c 54 4c 49 42 53 CLLIBDIR).LTLIBS 6950: 20 3d 20 24 28 4c 49 42 54 43 4c 29 0a 21 45 4e =$(LIBTCL).!EN
6960: 44 49 46 0a 0a 23 20 49 66 20 49 43 55 20 73 75  DIF..# If ICU su
6970: 70 70 6f 72 74 20 69 73 20 65 6e 61 62 6c 65 64  pport is enabled
6980: 2c 20 61 64 64 20 74 68 65 20 6c 69 6e 6b 65 72  , add the linker
6990: 20 6f 70 74 69 6f 6e 73 20 66 6f 72 20 69 74 2e   options for it.
69a0: 0a 23 0a 21 49 46 20 24 28 55 53 45 5f 49 43 55  .#.!IF $(USE_ICU 69b0: 29 21 3d 30 0a 4c 54 4c 49 42 50 41 54 48 53 20 )!=0.LTLIBPATHS 69c0: 3d 20 24 28 4c 54 4c 49 42 50 41 54 48 53 29 20 =$(LTLIBPATHS)
69d0: 2f 4c 49 42 50 41 54 48 3a 24 28 49 43 55 4c 49  /LIBPATH:$(ICULI 69e0: 42 44 49 52 29 0a 4c 54 4c 49 42 53 20 3d 20 24 BDIR).LTLIBS =$
69f0: 28 4c 54 4c 49 42 53 29 20 24 28 4c 49 42 49 43  (LTLIBS) $(LIBIC 6a00: 55 29 0a 21 45 4e 44 49 46 0a 23 20 3c 3c 2f 6d U).!ENDIF.# <</m 6a10: 61 72 6b 3e 3e 0a 0a 23 20 59 6f 75 20 73 68 6f ark>>..# You sho 6a20: 75 6c 64 20 6e 6f 74 20 68 61 76 65 20 74 6f 20 uld not have to 6a30: 63 68 61 6e 67 65 20 61 6e 79 74 68 69 6e 67 20 change anything 6a40: 62 65 6c 6f 77 20 74 68 69 73 20 6c 69 6e 65 0a below this line. 6a50: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 6a60: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 6a70: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 6a80: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 ################ 6a90: 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 0a ###############. 6aa0: 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 23 20 4f 62 .# <<mark>>.# Ob 6ab0: 6a 65 63 74 20 66 69 6c 65 73 20 66 6f 72 20 74 ject files for t 6ac0: 68 65 20 53 51 4c 69 74 65 20 6c 69 62 72 61 72 he SQLite librar 6ad0: 79 20 28 6e 6f 6e 2d 61 6d 61 6c 67 61 6d 61 74 y (non-amalgamat 6ae0: 69 6f 6e 29 2e 0a 23 0a 4c 49 42 4f 42 4a 53 30 ion)..#.LIBOBJS0 6af0: 20 3d 20 76 64 62 65 2e 6c 6f 20 70 61 72 73 65 = vdbe.lo parse 6b00: 2e 6c 6f 20 61 6c 74 65 72 2e 6c 6f 20 61 6e 61 .lo alter.lo ana 6b10: 6c 79 7a 65 2e 6c 6f 20 61 74 74 61 63 68 2e 6c lyze.lo attach.l 6b20: 6f 20 61 75 74 68 2e 6c 6f 20 5c 0a 20 20 20 20 o auth.lo \. 6b30: 20 20 20 20 20 62 61 63 6b 75 70 2e 6c 6f 20 62 backup.lo b 6b40: 69 74 76 65 63 2e 6c 6f 20 62 74 6d 75 74 65 78 itvec.lo btmutex 6b50: 2e 6c 6f 20 62 74 72 65 65 2e 6c 6f 20 62 75 69 .lo btree.lo bui 6b60: 6c 64 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 ld.lo \. 6b70: 20 63 61 6c 6c 62 61 63 6b 2e 6c 6f 20 63 6f 6d callback.lo com 6b80: 70 6c 65 74 65 2e 6c 6f 20 63 74 69 6d 65 2e 6c plete.lo ctime.l 6b90: 6f 20 64 61 74 65 2e 6c 6f 20 64 62 73 74 61 74 o date.lo dbstat 6ba0: 2e 6c 6f 20 64 65 6c 65 74 65 2e 6c 6f 20 5c 0a .lo delete.lo \. 6bb0: 20 20 20 20 20 20 20 20 20 65 78 70 72 2e 6c 6f expr.lo 6bc0: 20 66 61 75 6c 74 2e 6c 6f 20 66 6b 65 79 2e 6c fault.lo fkey.l 6bd0: 6f 20 5c 0a 20 20 20 20 20 20 20 20 20 66 74 73 o \. fts 6be0: 33 2e 6c 6f 20 66 74 73 33 5f 61 75 78 2e 6c 6f 3.lo fts3_aux.lo 6bf0: 20 66 74 73 33 5f 65 78 70 72 2e 6c 6f 20 66 74 fts3_expr.lo ft 6c00: 73 33 5f 68 61 73 68 2e 6c 6f 20 66 74 73 33 5f s3_hash.lo fts3_ 6c10: 69 63 75 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 icu.lo \. 6c20: 20 20 66 74 73 33 5f 70 6f 72 74 65 72 2e 6c 6f fts3_porter.lo 6c30: 20 66 74 73 33 5f 73 6e 69 70 70 65 74 2e 6c 6f fts3_snippet.lo 6c40: 20 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 72 2e fts3_tokenizer. 6c50: 6c 6f 20 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 lo fts3_tokenize 6c60: 72 31 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 r1.lo \. 6c70: 20 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 5f 76 fts3_tokenize_v 6c80: 74 61 62 2e 6c 6f 20 66 74 73 33 5f 75 6e 69 63 tab.lo fts3_unic 6c90: 6f 64 65 2e 6c 6f 20 66 74 73 33 5f 75 6e 69 63 ode.lo fts3_unic 6ca0: 6f 64 65 32 2e 6c 6f 20 66 74 73 33 5f 77 72 69 ode2.lo fts3_wri 6cb0: 74 65 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 te.lo \. 6cc0: 20 66 74 73 35 2e 6c 6f 20 5c 0a 20 20 20 20 20 fts5.lo \. 6cd0: 20 20 20 20 66 75 6e 63 2e 6c 6f 20 67 6c 6f 62 func.lo glob 6ce0: 61 6c 2e 6c 6f 20 68 61 73 68 2e 6c 6f 20 5c 0a al.lo hash.lo \. 6cf0: 20 20 20 20 20 20 20 20 20 69 63 75 2e 6c 6f 20 icu.lo 6d00: 69 6e 73 65 72 74 2e 6c 6f 20 6c 65 67 61 63 79 insert.lo legacy 6d10: 2e 6c 6f 20 6c 6f 61 64 65 78 74 2e 6c 6f 20 5c .lo loadext.lo \ 6d20: 0a 20 20 20 20 20 20 20 20 20 6d 61 69 6e 2e 6c . main.l 6d30: 6f 20 6d 61 6c 6c 6f 63 2e 6c 6f 20 6d 65 6d 30 o malloc.lo mem0 6d40: 2e 6c 6f 20 6d 65 6d 31 2e 6c 6f 20 6d 65 6d 32 .lo mem1.lo mem2 6d50: 2e 6c 6f 20 6d 65 6d 33 2e 6c 6f 20 6d 65 6d 35 .lo mem3.lo mem5 6d60: 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 20 6d .lo \. m 6d70: 65 6d 6a 6f 75 72 6e 61 6c 2e 6c 6f 20 5c 0a 20 emjournal.lo \. 6d80: 20 20 20 20 20 20 20 20 6d 75 74 65 78 2e 6c 6f mutex.lo 6d90: 20 6d 75 74 65 78 5f 6e 6f 6f 70 2e 6c 6f 20 6d mutex_noop.lo m 6da0: 75 74 65 78 5f 75 6e 69 78 2e 6c 6f 20 6d 75 74 utex_unix.lo mut 6db0: 65 78 5f 77 33 32 2e 6c 6f 20 5c 0a 20 20 20 20 ex_w32.lo \. 6dc0: 20 20 20 20 20 6e 6f 74 69 66 79 2e 6c 6f 20 6f notify.lo o 6dd0: 70 63 6f 64 65 73 2e 6c 6f 20 6f 73 2e 6c 6f 20 pcodes.lo os.lo 6de0: 6f 73 5f 75 6e 69 78 2e 6c 6f 20 6f 73 5f 77 69 os_unix.lo os_wi 6df0: 6e 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 20 20 20 n.lo \. 6e00: 70 61 67 65 72 2e 6c 6f 20 70 63 61 63 68 65 2e pager.lo pcache. 6e10: 6c 6f 20 70 63 61 63 68 65 31 2e 6c 6f 20 70 72 lo pcache1.lo pr 6e20: 61 67 6d 61 2e 6c 6f 20 70 72 65 70 61 72 65 2e agma.lo prepare. 6e30: 6c 6f 20 70 72 69 6e 74 66 2e 6c 6f 20 5c 0a 20 lo printf.lo \. 6e40: 20 20 20 20 20 20 20 20 72 61 6e 64 6f 6d 2e 6c random.l 6e50: 6f 20 72 65 73 6f 6c 76 65 2e 6c 6f 20 72 6f 77 o resolve.lo row 6e60: 73 65 74 2e 6c 6f 20 72 74 72 65 65 2e 6c 6f 20 set.lo rtree.lo 6e70: 5c 0a 20 20 20 20 20 20 20 20 20 73 71 6c 69 74 \. sqlit 6e80: 65 33 73 65 73 73 69 6f 6e 2e 6c 6f 20 73 65 6c e3session.lo sel 6e90: 65 63 74 2e 6c 6f 20 73 71 6c 69 74 65 33 72 62 ect.lo sqlite3rb 6ea0: 75 2e 6c 6f 20 73 74 61 74 75 73 2e 6c 6f 20 5c u.lo status.lo \ 6eb0: 0a 20 20 20 20 20 20 20 20 20 74 61 62 6c 65 2e . table. 6ec0: 6c 6f 20 74 68 72 65 61 64 73 2e 6c 6f 20 74 6f lo threads.lo to 6ed0: 6b 65 6e 69 7a 65 2e 6c 6f 20 74 72 65 65 76 69 kenize.lo treevi 6ee0: 65 77 2e 6c 6f 20 74 72 69 67 67 65 72 2e 6c 6f ew.lo trigger.lo 6ef0: 20 5c 0a 20 20 20 20 20 20 20 20 20 75 70 64 61 \. upda 6f00: 74 65 2e 6c 6f 20 75 74 69 6c 2e 6c 6f 20 76 61 te.lo util.lo va 6f10: 63 75 75 6d 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 cuum.lo \. 6f20: 20 20 20 76 64 62 65 61 70 69 2e 6c 6f 20 76 64 vdbeapi.lo vd 6f30: 62 65 61 75 78 2e 6c 6f 20 76 64 62 65 62 6c 6f beaux.lo vdbeblo 6f40: 62 2e 6c 6f 20 76 64 62 65 6d 65 6d 2e 6c 6f 20 b.lo vdbemem.lo 6f50: 76 64 62 65 73 6f 72 74 2e 6c 6f 20 5c 0a 20 20 vdbesort.lo \. 6f60: 20 20 20 20 20 20 20 76 64 62 65 74 72 61 63 65 vdbetrace 6f70: 2e 6c 6f 20 77 61 6c 2e 6c 6f 20 77 61 6c 6b 65 .lo wal.lo walke 6f80: 72 2e 6c 6f 20 77 68 65 72 65 2e 6c 6f 20 77 68 r.lo where.lo wh 6f90: 65 72 65 63 6f 64 65 2e 6c 6f 20 77 68 65 72 65 erecode.lo where 6fa0: 65 78 70 72 2e 6c 6f 20 5c 0a 20 20 20 20 20 20 expr.lo \. 6fb0: 20 20 20 75 74 66 2e 6c 6f 20 76 74 61 62 2e 6c utf.lo vtab.l 6fc0: 6f 0a 23 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a 0a 23 o.# <</mark>>..# 6fd0: 20 4f 62 6a 65 63 74 20 66 69 6c 65 73 20 66 6f Object files fo 6fe0: 72 20 74 68 65 20 61 6d 61 6c 67 61 6d 61 74 69 r the amalgamati 6ff0: 6f 6e 2e 0a 23 0a 4c 49 42 4f 42 4a 53 31 20 3d on..#.LIBOBJS1 = 7000: 20 73 71 6c 69 74 65 33 2e 6c 6f 0a 0a 23 20 44 sqlite3.lo..# D 7010: 65 74 65 72 6d 69 6e 65 20 74 68 65 20 72 65 61 etermine the rea 7020: 6c 20 76 61 6c 75 65 20 6f 66 20 4c 49 42 4f 42 l value of LIBOB 7030: 4a 20 62 61 73 65 64 20 6f 6e 20 74 68 65 20 27 J based on the ' 7040: 63 6f 6e 66 69 67 75 72 65 27 20 73 63 72 69 70 configure' scrip 7050: 74 0a 23 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 21 t.#.# <<mark>>.! 7060: 49 46 20 24 28 55 53 45 5f 41 4d 41 4c 47 41 4d IF$(USE_AMALGAM
7070: 41 54 49 4f 4e 29 3d 3d 30 0a 4c 49 42 4f 42 4a  ATION)==0.LIBOBJ
7080: 20 3d 20 24 28 4c 49 42 4f 42 4a 53 30 29 0a 21   = $(LIBOBJS0).! 7090: 45 4c 53 45 0a 23 20 3c 3c 2f 6d 61 72 6b 3e 3e ELSE.# <</mark>> 70a0: 0a 4c 49 42 4f 42 4a 20 3d 20 24 28 4c 49 42 4f .LIBOBJ =$(LIBO
70b0: 42 4a 53 31 29 0a 23 20 3c 3c 6d 61 72 6b 3e 3e  BJS1).# <<mark>>
70c0: 0a 21 45 4e 44 49 46 0a 23 20 3c 3c 2f 6d 61 72  .!ENDIF.# <</mar
70d0: 6b 3e 3e 0a 0a 23 20 44 65 74 65 72 6d 69 6e 65  k>>..# Determine
70e0: 20 69 66 20 65 6d 62 65 64 64 65 64 20 72 65 73   if embedded res
70f0: 6f 75 72 63 65 20 63 6f 6d 70 69 6c 61 74 69 6f  ource compilatio
7100: 6e 20 61 6e 64 20 75 73 61 67 65 20 61 72 65 20  n and usage are
7110: 65 6e 61 62 6c 65 64 2e 0a 23 0a 21 49 46 20 24  enabled..#.!IF $7120: 28 55 53 45 5f 52 43 29 21 3d 30 0a 4c 49 42 52 (USE_RC)!=0.LIBR 7130: 45 53 4f 42 4a 53 20 3d 20 73 71 6c 69 74 65 33 ESOBJS = sqlite3 7140: 72 65 73 2e 6c 6f 0a 21 45 4c 53 45 0a 4c 49 42 res.lo.!ELSE.LIB 7150: 52 45 53 4f 42 4a 53 20 3d 0a 21 45 4e 44 49 46 RESOBJS =.!ENDIF 7160: 0a 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 23 20 43 ..# <<mark>>.# C 7170: 6f 72 65 20 73 6f 75 72 63 65 20 63 6f 64 65 20 ore source code 7180: 66 69 6c 65 73 2c 20 70 61 72 74 20 31 2e 0a 23 files, part 1..# 7190: 0a 53 52 43 30 30 20 3d 20 5c 0a 20 20 24 28 54 .SRC00 = \.$(T
71a0: 4f 50 29 5c 73 72 63 5c 61 6c 74 65 72 2e 63 20  OP)\src\alter.c
71b0: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 61  \.  $(TOP)\src\a 71c0: 6e 61 6c 79 7a 65 2e 63 20 5c 0a 20 20 24 28 54 nalyze.c \.$(T
71d0: 4f 50 29 5c 73 72 63 5c 61 74 74 61 63 68 2e 63  OP)\src\attach.c
71e0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\ 71f0: 61 75 74 68 2e 63 20 5c 0a 20 20 24 28 54 4f 50 auth.c \.$(TOP
7200: 29 5c 73 72 63 5c 62 61 63 6b 75 70 2e 63 20 5c  )\src\backup.c \
7210: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 62 69  .  $(TOP)\src\bi 7220: 74 76 65 63 2e 63 20 5c 0a 20 20 24 28 54 4f 50 tvec.c \.$(TOP
7230: 29 5c 73 72 63 5c 62 74 6d 75 74 65 78 2e 63 20  )\src\btmutex.c
7240: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 62  \.  $(TOP)\src\b 7250: 74 72 65 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 tree.c \.$(TOP
7260: 29 5c 73 72 63 5c 62 75 69 6c 64 2e 63 20 5c 0a  )\src\build.c \.
7270: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 63 61 6c    $(TOP)\src\cal 7280: 6c 62 61 63 6b 2e 63 20 5c 0a 20 20 24 28 54 4f lback.c \.$(TO
7290: 50 29 5c 73 72 63 5c 63 6f 6d 70 6c 65 74 65 2e  P)\src\complete.
72a0: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src 72b0: 5c 63 74 69 6d 65 2e 63 20 5c 0a 20 20 24 28 54 \ctime.c \.$(T
72c0: 4f 50 29 5c 73 72 63 5c 64 61 74 65 2e 63 20 5c  OP)\src\date.c \
72d0: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 64 62  .  $(TOP)\src\db 72e0: 73 74 61 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50 stat.c \.$(TOP
72f0: 29 5c 73 72 63 5c 64 65 6c 65 74 65 2e 63 20 5c  )\src\delete.c \
7300: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 65 78  .  $(TOP)\src\ex 7310: 70 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c pr.c \.$(TOP)\
7320: 73 72 63 5c 66 61 75 6c 74 2e 63 20 5c 0a 20 20  src\fault.c \.
7330: 24 28 54 4f 50 29 5c 73 72 63 5c 66 6b 65 79 2e  $(TOP)\src\fkey. 7340: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 c \.$(TOP)\src
7350: 5c 66 75 6e 63 2e 63 20 5c 0a 20 20 24 28 54 4f  \func.c \.  $(TO 7360: 50 29 5c 73 72 63 5c 67 6c 6f 62 61 6c 2e 63 20 P)\src\global.c 7370: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 68 \.$(TOP)\src\h
7380: 61 73 68 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  ash.c \.  $(TOP) 7390: 5c 73 72 63 5c 69 6e 73 65 72 74 2e 63 20 5c 0a \src\insert.c \. 73a0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6c 65 67$(TOP)\src\leg
73b0: 61 63 79 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  acy.c \.  $(TOP) 73c0: 5c 73 72 63 5c 6c 6f 61 64 65 78 74 2e 63 20 5c \src\loadext.c \ 73d0: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 61 .$(TOP)\src\ma
73e0: 69 6e 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  in.c \.  $(TOP)\ 73f0: 73 72 63 5c 6d 61 6c 6c 6f 63 2e 63 20 5c 0a 20 src\malloc.c \. 7400: 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d 30$(TOP)\src\mem0
7410: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr 7420: 63 5c 6d 65 6d 31 2e 63 20 5c 0a 20 20 24 28 54 c\mem1.c \.$(T
7430: 4f 50 29 5c 73 72 63 5c 6d 65 6d 32 2e 63 20 5c  OP)\src\mem2.c \
7440: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65  .  $(TOP)\src\me 7450: 6d 33 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c m3.c \.$(TOP)\
7460: 73 72 63 5c 6d 65 6d 35 2e 63 20 5c 0a 20 20 24  src\mem5.c \.  $7470: 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d 6a 6f 75 (TOP)\src\memjou 7480: 72 6e 61 6c 2e 63 20 5c 0a 20 20 24 28 54 4f 50 rnal.c \.$(TOP
7490: 29 5c 73 72 63 5c 6d 75 74 65 78 2e 63 20 5c 0a  )\src\mutex.c \.
74a0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 75 74    $(TOP)\src\mut 74b0: 65 78 5f 6e 6f 6f 70 2e 63 20 5c 0a 20 20 24 28 ex_noop.c \.$(
74c0: 54 4f 50 29 5c 73 72 63 5c 6d 75 74 65 78 5f 75  TOP)\src\mutex_u
74d0: 6e 69 78 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  nix.c \.  $(TOP) 74e0: 5c 73 72 63 5c 6d 75 74 65 78 5f 77 33 32 2e 63 \src\mutex_w32.c 74f0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c \.$(TOP)\src\
7500: 6e 6f 74 69 66 79 2e 63 20 5c 0a 20 20 24 28 54  notify.c \.  $(T 7510: 4f 50 29 5c 73 72 63 5c 6f 73 2e 63 20 5c 0a 20 OP)\src\os.c \. 7520: 20 24 28 54 4f 50 29 5c 73 72 63 5c 6f 73 5f 75$(TOP)\src\os_u
7530: 6e 69 78 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  nix.c \.  $(TOP) 7540: 5c 73 72 63 5c 6f 73 5f 77 69 6e 2e 63 0a 0a 23 \src\os_win.c..# 7550: 20 43 6f 72 65 20 73 6f 75 72 63 65 20 63 6f 64 Core source cod 7560: 65 20 66 69 6c 65 73 2c 20 70 61 72 74 20 32 2e e files, part 2. 7570: 0a 23 0a 53 52 43 30 31 20 3d 20 5c 0a 20 20 24 .#.SRC01 = \.$
7580: 28 54 4f 50 29 5c 73 72 63 5c 70 61 67 65 72 2e  (TOP)\src\pager.
7590: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src 75a0: 5c 70 63 61 63 68 65 2e 63 20 5c 0a 20 20 24 28 \pcache.c \.$(
75b0: 54 4f 50 29 5c 73 72 63 5c 70 63 61 63 68 65 31  TOP)\src\pcache1
75c0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr 75d0: 63 5c 70 72 61 67 6d 61 2e 63 20 5c 0a 20 20 24 c\pragma.c \.$
75e0: 28 54 4f 50 29 5c 73 72 63 5c 70 72 65 70 61 72  (TOP)\src\prepar
75f0: 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  e.c \.  $(TOP)\s 7600: 72 63 5c 70 72 69 6e 74 66 2e 63 20 5c 0a 20 20 rc\printf.c \. 7610: 24 28 54 4f 50 29 5c 73 72 63 5c 72 61 6e 64 6f$(TOP)\src\rando
7620: 6d 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73  m.c \.  $(TOP)\s 7630: 72 63 5c 72 65 73 6f 6c 76 65 2e 63 20 5c 0a 20 rc\resolve.c \. 7640: 20 24 28 54 4f 50 29 5c 73 72 63 5c 72 6f 77 73$(TOP)\src\rows
7650: 65 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  et.c \.  $(TOP)\ 7660: 73 72 63 5c 73 65 6c 65 63 74 2e 63 20 5c 0a 20 src\select.c \. 7670: 20 24 28 54 4f 50 29 5c 73 72 63 5c 73 74 61 74$(TOP)\src\stat
7680: 75 73 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  us.c \.  $(TOP)\ 7690: 73 72 63 5c 74 61 62 6c 65 2e 63 20 5c 0a 20 20 src\table.c \. 76a0: 24 28 54 4f 50 29 5c 73 72 63 5c 74 68 72 65 61$(TOP)\src\threa
76b0: 64 73 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  ds.c \.  $(TOP)\ 76c0: 73 72 63 5c 74 63 6c 73 71 6c 69 74 65 2e 63 20 src\tclsqlite.c 76d0: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 \.$(TOP)\src\t
76e0: 6f 6b 65 6e 69 7a 65 2e 63 20 5c 0a 20 20 24 28  okenize.c \.  $( 76f0: 54 4f 50 29 5c 73 72 63 5c 74 72 65 65 76 69 65 TOP)\src\treevie 7700: 77 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 w.c \.$(TOP)\s
7710: 72 63 5c 74 72 69 67 67 65 72 2e 63 20 5c 0a 20  rc\trigger.c \.
7720: 20 24 28 54 4f 50 29 5c 73 72 63 5c 75 74 66 2e   $(TOP)\src\utf. 7730: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 c \.$(TOP)\src
7740: 5c 75 70 64 61 74 65 2e 63 20 5c 0a 20 20 24 28  \update.c \.  $( 7750: 54 4f 50 29 5c 73 72 63 5c 75 74 69 6c 2e 63 20 TOP)\src\util.c 7760: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 \.$(TOP)\src\v
7770: 61 63 75 75 6d 2e 63 20 5c 0a 20 20 24 28 54 4f  acuum.c \.  $(TO 7780: 50 29 5c 73 72 63 5c 76 64 62 65 2e 63 20 5c 0a P)\src\vdbe.c \. 7790: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62$(TOP)\src\vdb
77a0: 65 61 70 69 2e 63 20 5c 0a 20 20 24 28 54 4f 50  eapi.c \.  $(TOP 77b0: 29 5c 73 72 63 5c 76 64 62 65 61 75 78 2e 63 20 )\src\vdbeaux.c 77c0: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 \.$(TOP)\src\v
77d0: 64 62 65 62 6c 6f 62 2e 63 20 5c 0a 20 20 24 28  dbeblob.c \.  $( 77e0: 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 6d 65 6d TOP)\src\vdbemem 77f0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 .c \.$(TOP)\sr
7800: 63 5c 76 64 62 65 73 6f 72 74 2e 63 20 5c 0a 20  c\vdbesort.c \.
7810: 20 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65   $(TOP)\src\vdbe 7820: 74 72 61 63 65 2e 63 20 5c 0a 20 20 24 28 54 4f trace.c \.$(TO
7830: 50 29 5c 73 72 63 5c 76 74 61 62 2e 63 20 5c 0a  P)\src\vtab.c \.
7840: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 77 61 6c    $(TOP)\src\wal 7850: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 .c \.$(TOP)\sr
7860: 63 5c 77 61 6c 6b 65 72 2e 63 20 5c 0a 20 20 24  c\walker.c \.  $7870: 28 54 4f 50 29 5c 73 72 63 5c 77 68 65 72 65 2e (TOP)\src\where. 7880: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 c \.$(TOP)\src
7890: 5c 77 68 65 72 65 63 6f 64 65 2e 63 20 5c 0a 20  \wherecode.c \.
78a0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 77 68 65 72   $(TOP)\src\wher 78b0: 65 65 78 70 72 2e 63 0a 0a 23 20 53 68 65 6c 6c eexpr.c..# Shell 78c0: 20 73 6f 75 72 63 65 20 63 6f 64 65 20 66 69 6c source code fil 78d0: 65 73 2e 0a 23 0a 53 52 43 30 32 20 3d 20 5c 0a es..#.SRC02 = \. 78e0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 73 68 65$(TOP)\src\she
78f0: 6c 6c 2e 63 0a 0a 23 20 43 6f 72 65 20 6d 69 73  ll.c..# Core mis
7900: 63 65 6c 6c 61 6e 65 6f 75 73 20 66 69 6c 65 73  cellaneous files
7910: 2e 0a 23 0a 53 52 43 30 33 20 3d 20 5c 0a 20 20  ..#.SRC03 = \.
7920: 24 28 54 4f 50 29 5c 73 72 63 5c 70 61 72 73 65  $(TOP)\src\parse 7930: 2e 79 0a 0a 23 20 43 6f 72 65 20 68 65 61 64 65 .y..# Core heade 7940: 72 20 66 69 6c 65 73 2c 20 70 61 72 74 20 31 2e r files, part 1. 7950: 0a 23 0a 53 52 43 30 34 20 3d 20 5c 0a 20 20 24 .#.SRC04 = \.$
7960: 28 54 4f 50 29 5c 73 72 63 5c 62 74 72 65 65 2e  (TOP)\src\btree.
7970: 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  h \.  $(TOP)\src 7980: 5c 62 74 72 65 65 49 6e 74 2e 68 20 5c 0a 20 20 \btreeInt.h \. 7990: 24 28 54 4f 50 29 5c 73 72 63 5c 68 61 73 68 2e$(TOP)\src\hash.
79a0: 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  h \.  $(TOP)\src 79b0: 5c 68 77 74 69 6d 65 2e 68 20 5c 0a 20 20 24 28 \hwtime.h \.$(
79c0: 54 4f 50 29 5c 73 72 63 5c 6d 73 76 63 2e 68 20  TOP)\src\msvc.h
79d0: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d  \.  $(TOP)\src\m 79e0: 75 74 65 78 2e 68 20 5c 0a 20 20 24 28 54 4f 50 utex.h \.$(TOP
79f0: 29 5c 73 72 63 5c 6f 73 2e 68 20 5c 0a 20 20 24  )\src\os.h \.  $7a00: 28 54 4f 50 29 5c 73 72 63 5c 6f 73 5f 63 6f 6d (TOP)\src\os_com 7a10: 6d 6f 6e 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 mon.h \.$(TOP)
7a20: 5c 73 72 63 5c 6f 73 5f 73 65 74 75 70 2e 68 20  \src\os_setup.h
7a30: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6f  \.  $(TOP)\src\o 7a40: 73 5f 77 69 6e 2e 68 0a 0a 23 20 43 6f 72 65 20 s_win.h..# Core 7a50: 68 65 61 64 65 72 20 66 69 6c 65 73 2c 20 70 61 header files, pa 7a60: 72 74 20 32 2e 0a 23 0a 53 52 43 30 35 20 3d 20 rt 2..#.SRC05 = 7a70: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 \.$(TOP)\src\p
7a80: 61 67 65 72 2e 68 20 5c 0a 20 20 24 28 54 4f 50  ager.h \.  $(TOP 7a90: 29 5c 73 72 63 5c 70 63 61 63 68 65 2e 68 20 5c )\src\pcache.h \ 7aa0: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 72 .$(TOP)\src\pr
7ab0: 61 67 6d 61 2e 68 20 5c 0a 20 20 24 28 54 4f 50  agma.h \.  $(TOP 7ac0: 29 5c 73 72 63 5c 73 71 6c 69 74 65 2e 68 2e 69 )\src\sqlite.h.i 7ad0: 6e 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 n \.$(TOP)\src
7ae0: 5c 73 71 6c 69 74 65 33 65 78 74 2e 68 20 5c 0a  \sqlite3ext.h \.
7af0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 73 71 6c    $(TOP)\src\sql 7b00: 69 74 65 49 6e 74 2e 68 20 5c 0a 20 20 24 28 54 iteInt.h \.$(T
7b10: 4f 50 29 5c 73 72 63 5c 73 71 6c 69 74 65 4c 69  OP)\src\sqliteLi
7b20: 6d 69 74 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29  mit.h \.  $(TOP) 7b30: 5c 73 72 63 5c 76 64 62 65 2e 68 20 5c 0a 20 20 \src\vdbe.h \. 7b40: 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 49$(TOP)\src\vdbeI
7b50: 6e 74 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c  nt.h \.  $(TOP)\ 7b60: 73 72 63 5c 76 78 77 6f 72 6b 73 2e 68 20 5c 0a src\vxworks.h \. 7b70: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 77 61 6c$(TOP)\src\wal
7b80: 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .h \.  $(TOP)\sr 7b90: 63 5c 77 68 65 72 65 49 6e 74 2e 68 0a 0a 23 20 c\whereInt.h..# 7ba0: 45 78 74 65 6e 73 69 6f 6e 20 73 6f 75 72 63 65 Extension source 7bb0: 20 63 6f 64 65 20 66 69 6c 65 73 2c 20 70 61 72 code files, par 7bc0: 74 20 31 2e 0a 23 0a 53 52 43 30 36 20 3d 20 5c t 1..#.SRC06 = \ 7bd0: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 .$(TOP)\ext\ft
7be0: 73 31 5c 66 74 73 31 2e 63 20 5c 0a 20 20 24 28  s1\fts1.c \.  $( 7bf0: 54 4f 50 29 5c 65 78 74 5c 66 74 73 31 5c 66 74 TOP)\ext\fts1\ft 7c00: 73 31 5f 68 61 73 68 2e 63 20 5c 0a 20 20 24 28 s1_hash.c \.$(
7c10: 54 4f 50 29 5c 65 78 74 5c 66 74 73 31 5c 66 74  TOP)\ext\fts1\ft
7c20: 73 31 5f 70 6f 72 74 65 72 2e 63 20 5c 0a 20 20  s1_porter.c \.
7c30: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 31 5c  $(TOP)\ext\fts1\ 7c40: 66 74 73 31 5f 74 6f 6b 65 6e 69 7a 65 72 31 2e fts1_tokenizer1. 7c50: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 c \.$(TOP)\ext
7c60: 5c 66 74 73 32 5c 66 74 73 32 2e 63 20 5c 0a 20  \fts2\fts2.c \.
7c70: 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32   $(TOP)\ext\fts2 7c80: 5c 66 74 73 32 5f 68 61 73 68 2e 63 20 5c 0a 20 \fts2_hash.c \. 7c90: 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32$(TOP)\ext\fts2
7ca0: 5c 66 74 73 32 5f 69 63 75 2e 63 20 5c 0a 20 20  \fts2_icu.c \.
7cb0: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c  $(TOP)\ext\fts2\ 7cc0: 66 74 73 32 5f 70 6f 72 74 65 72 2e 63 20 5c 0a fts2_porter.c \. 7cd0: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73$(TOP)\ext\fts
7ce0: 32 5c 66 74 73 32 5f 74 6f 6b 65 6e 69 7a 65 72  2\fts2_tokenizer
7cf0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78  .c \.  $(TOP)\ex 7d00: 74 5c 66 74 73 32 5c 66 74 73 32 5f 74 6f 6b 65 t\fts2\fts2_toke 7d10: 6e 69 7a 65 72 31 2e 63 0a 0a 23 20 45 78 74 65 nizer1.c..# Exte 7d20: 6e 73 69 6f 6e 20 73 6f 75 72 63 65 20 63 6f 64 nsion source cod 7d30: 65 20 66 69 6c 65 73 2c 20 70 61 72 74 20 32 2e e files, part 2. 7d40: 0a 23 0a 53 52 43 30 37 20 3d 20 5c 0a 20 20 24 .#.SRC07 = \.$
7d50: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66  (TOP)\ext\fts3\f
7d60: 74 73 33 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  ts3.c \.  $(TOP) 7d70: 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 61 \ext\fts3\fts3_a 7d80: 75 78 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c ux.c \.$(TOP)\
7d90: 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 65 78  ext\fts3\fts3_ex
7da0: 70 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  pr.c \.  $(TOP)\ 7db0: 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 68 61 ext\fts3\fts3_ha 7dc0: 73 68 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c sh.c \.$(TOP)\
7dd0: 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 69 63  ext\fts3\fts3_ic
7de0: 75 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65  u.c \.  $(TOP)\e 7df0: 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 70 6f 72 xt\fts3\fts3_por 7e00: 74 65 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 ter.c \.$(TOP)
7e10: 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 73  \ext\fts3\fts3_s
7e20: 6e 69 70 70 65 74 2e 63 20 5c 0a 20 20 24 28 54  nippet.c \.  $(T 7e30: 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 OP)\ext\fts3\fts 7e40: 33 5f 74 6f 6b 65 6e 69 7a 65 72 2e 63 20 5c 0a 3_tokenizer.c \. 7e50: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73$(TOP)\ext\fts
7e60: 33 5c 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 72  3\fts3_tokenizer
7e70: 31 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65  1.c \.  $(TOP)\e 7e80: 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 74 6f 6b xt\fts3\fts3_tok 7e90: 65 6e 69 7a 65 5f 76 74 61 62 2e 63 20 5c 0a 20 enize_vtab.c \. 7ea0: 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33$(TOP)\ext\fts3
7eb0: 5c 66 74 73 33 5f 75 6e 69 63 6f 64 65 2e 63 20  \fts3_unicode.c
7ec0: 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66  \.  $(TOP)\ext\f 7ed0: 74 73 33 5c 66 74 73 33 5f 75 6e 69 63 6f 64 65 ts3\fts3_unicode 7ee0: 32 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 2.c \.$(TOP)\e
7ef0: 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 77 72 69  xt\fts3\fts3_wri
7f00: 74 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  te.c \.  $(TOP)\ 7f10: 65 78 74 5c 69 63 75 5c 69 63 75 2e 63 20 5c 0a ext\icu\icu.c \. 7f20: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 72 74 72$(TOP)\ext\rtr
7f30: 65 65 5c 72 74 72 65 65 2e 63 20 5c 0a 20 20 24  ee\rtree.c \.  $7f40: 28 54 4f 50 29 5c 65 78 74 5c 73 65 73 73 69 6f (TOP)\ext\sessio 7f50: 6e 5c 73 71 6c 69 74 65 33 73 65 73 73 69 6f 6e n\sqlite3session 7f60: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 .c \.$(TOP)\ex
7f70: 74 5c 72 62 75 5c 73 71 6c 69 74 65 33 72 62 75  t\rbu\sqlite3rbu
7f80: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78  .c \.  $(TOP)\ex 7f90: 74 5c 6d 69 73 63 5c 6a 73 6f 6e 31 2e 63 0a 0a t\misc\json1.c.. 7fa0: 23 20 45 78 74 65 6e 73 69 6f 6e 20 68 65 61 64 # Extension head 7fb0: 65 72 20 66 69 6c 65 73 2c 20 70 61 72 74 20 31 er files, part 1 7fc0: 2e 0a 23 0a 53 52 43 30 38 20 3d 20 5c 0a 20 20 ..#.SRC08 = \. 7fd0: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 31 5c$(TOP)\ext\fts1\
7fe0: 66 74 73 31 2e 68 20 5c 0a 20 20 24 28 54 4f 50  fts1.h \.  $(TOP 7ff0: 29 5c 65 78 74 5c 66 74 73 31 5c 66 74 73 31 5f )\ext\fts1\fts1_ 8000: 68 61 73 68 2e 68 20 5c 0a 20 20 24 28 54 4f 50 hash.h \.$(TOP
8010: 29 5c 65 78 74 5c 66 74 73 31 5c 66 74 73 31 5f  )\ext\fts1\fts1_
8020: 74 6f 6b 65 6e 69 7a 65 72 2e 68 20 5c 0a 20 20  tokenizer.h \.
8030: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c  $(TOP)\ext\fts2\ 8040: 66 74 73 32 2e 68 20 5c 0a 20 20 24 28 54 4f 50 fts2.h \.$(TOP
8050: 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f  )\ext\fts2\fts2_
8060: 68 61 73 68 2e 68 20 5c 0a 20 20 24 28 54 4f 50  hash.h \.  $(TOP 8070: 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 5f )\ext\fts2\fts2_ 8080: 74 6f 6b 65 6e 69 7a 65 72 2e 68 0a 0a 23 20 45 tokenizer.h..# E 8090: 78 74 65 6e 73 69 6f 6e 20 68 65 61 64 65 72 20 xtension header 80a0: 66 69 6c 65 73 2c 20 70 61 72 74 20 32 2e 0a 23 files, part 2..# 80b0: 0a 53 52 43 30 39 20 3d 20 5c 0a 20 20 24 28 54 .SRC09 = \.$(T
80c0: 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73  OP)\ext\fts3\fts
80d0: 33 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65  3.h \.  $(TOP)\e 80e0: 78 74 5c 66 74 73 33 5c 66 74 73 33 49 6e 74 2e xt\fts3\fts3Int. 80f0: 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 h \.$(TOP)\ext
8100: 5c 66 74 73 33 5c 66 74 73 33 5f 68 61 73 68 2e  \fts3\fts3_hash.
8110: 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74  h \.  $(TOP)\ext 8120: 5c 66 74 73 33 5c 66 74 73 33 5f 74 6f 6b 65 6e \fts3\fts3_token 8130: 69 7a 65 72 2e 68 20 5c 0a 20 20 24 28 54 4f 50 izer.h \.$(TOP
8140: 29 5c 65 78 74 5c 69 63 75 5c 73 71 6c 69 74 65  )\ext\icu\sqlite
8150: 69 63 75 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29  icu.h \.  $(TOP) 8160: 5c 65 78 74 5c 72 74 72 65 65 5c 72 74 72 65 65 \ext\rtree\rtree 8170: 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 .h \.$(TOP)\ex
8180: 74 5c 72 62 75 5c 73 71 6c 69 74 65 33 72 62 75  t\rbu\sqlite3rbu
8190: 2e 68 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78  .h \.  $(TOP)\ex 81a0: 74 5c 73 65 73 73 69 6f 6e 5c 73 71 6c 69 74 65 t\session\sqlite 81b0: 33 73 65 73 73 69 6f 6e 2e 68 0a 0a 23 20 47 65 3session.h..# Ge 81c0: 6e 65 72 61 74 65 64 20 73 6f 75 72 63 65 20 63 nerated source c 81d0: 6f 64 65 20 66 69 6c 65 73 0a 23 0a 53 52 43 31 ode files.#.SRC1 81e0: 30 20 3d 20 5c 0a 20 20 6f 70 63 6f 64 65 73 2e 0 = \. opcodes. 81f0: 63 20 5c 0a 20 20 70 61 72 73 65 2e 63 0a 0a 23 c \. parse.c..# 8200: 20 47 65 6e 65 72 61 74 65 64 20 68 65 61 64 65 Generated heade 8210: 72 20 66 69 6c 65 73 0a 23 0a 53 52 43 31 31 20 r files.#.SRC11 8220: 3d 20 5c 0a 20 20 6b 65 79 77 6f 72 64 68 61 73 = \. keywordhas 8230: 68 2e 68 20 5c 0a 20 20 6f 70 63 6f 64 65 73 2e h.h \. opcodes. 8240: 68 20 5c 0a 20 20 70 61 72 73 65 2e 68 20 5c 0a h \. parse.h \. 8250: 20 20 24 28 53 51 4c 49 54 45 33 48 29 0a 0a 23$(SQLITE3H)..#
8260: 20 47 65 6e 65 72 61 74 65 64 20 54 63 6c 20 68   Generated Tcl h
8270: 65 61 64 65 72 20 66 69 6c 65 73 0a 23 0a 53 52  eader files.#.SR
8280: 43 31 32 20 3d 20 5c 0a 20 20 73 71 6c 69 74 65  C12 = \.  sqlite
8290: 5f 74 63 6c 2e 68 20 5c 0a 20 20 73 71 6c 69 74  _tcl.h \.  sqlit
82a0: 65 5f 74 63 6c 44 65 63 6c 73 2e 68 0a 0a 23 20  e_tclDecls.h..#
82b0: 41 6c 6c 20 73 6f 75 72 63 65 20 63 6f 64 65 20  All source code
82c0: 66 69 6c 65 73 2e 0a 23 0a 53 52 43 20 3d 20 24  files..#.SRC = $82d0: 28 53 52 43 30 30 29 20 24 28 53 52 43 30 31 29 (SRC00)$(SRC01)
82e0: 20 24 28 53 52 43 30 32 29 20 24 28 53 52 43 30   $(SRC02)$(SRC0
82f0: 33 29 20 24 28 53 52 43 30 34 29 20 24 28 53 52  3) $(SRC04)$(SR
8300: 43 30 35 29 20 24 28 53 52 43 30 36 29 20 24 28  C05) $(SRC06)$(
8310: 53 52 43 30 37 29 20 24 28 53 52 43 30 38 29 20  SRC07) $(SRC08) 8320: 24 28 53 52 43 30 39 29 20 24 28 53 52 43 31 30$(SRC09) $(SRC10 8330: 29 20 24 28 53 52 43 31 31 29 0a 0a 23 20 53 6f )$(SRC11)..# So
8340: 75 72 63 65 20 63 6f 64 65 20 74 6f 20 74 68 65  urce code to the
8350: 20 74 65 73 74 20 66 69 6c 65 73 2e 0a 23 0a 54   test files..#.T
8360: 45 53 54 53 52 43 20 3d 20 5c 0a 20 20 24 28 54  ESTSRC = \.  $(T 8370: 4f 50 29 5c 73 72 63 5c 74 65 73 74 31 2e 63 20 OP)\src\test1.c 8380: 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 \.$(TOP)\src\t
8390: 65 73 74 32 2e 63 20 5c 0a 20 20 24 28 54 4f 50  est2.c \.  $(TOP 83a0: 29 5c 73 72 63 5c 74 65 73 74 33 2e 63 20 5c 0a )\src\test3.c \. 83b0: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73$(TOP)\src\tes
83c0: 74 34 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  t4.c \.  $(TOP)\ 83d0: 73 72 63 5c 74 65 73 74 35 2e 63 20 5c 0a 20 20 src\test5.c \. 83e0: 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 36$(TOP)\src\test6
83f0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr 8400: 63 5c 74 65 73 74 37 2e 63 20 5c 0a 20 20 24 28 c\test7.c \.$(
8410: 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 38 2e 63  TOP)\src\test8.c
8420: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\ 8430: 74 65 73 74 39 2e 63 20 5c 0a 20 20 24 28 54 4f test9.c \.$(TO
8440: 50 29 5c 73 72 63 5c 74 65 73 74 5f 61 75 74 6f  P)\src\test_auto
8450: 65 78 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  ext.c \.  $(TOP) 8460: 5c 73 72 63 5c 74 65 73 74 5f 61 73 79 6e 63 2e \src\test_async. 8470: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 c \.$(TOP)\src
8480: 5c 74 65 73 74 5f 62 61 63 6b 75 70 2e 63 20 5c  \test_backup.c \
8490: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65  .  $(TOP)\src\te 84a0: 73 74 5f 62 65 73 74 69 6e 64 65 78 2e 63 20 5c st_bestindex.c \ 84b0: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 .$(TOP)\src\te
84c0: 73 74 5f 62 6c 6f 62 2e 63 20 5c 0a 20 20 24 28  st_blob.c \.  $( 84d0: 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 62 74 TOP)\src\test_bt 84e0: 72 65 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 ree.c \.$(TOP)
84f0: 5c 73 72 63 5c 74 65 73 74 5f 63 6f 6e 66 69 67  \src\test_config
8500: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr 8510: 63 5c 74 65 73 74 5f 64 65 6d 6f 76 66 73 2e 63 c\test_demovfs.c 8520: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c \.$(TOP)\src\
8530: 74 65 73 74 5f 64 65 76 73 79 6d 2e 63 20 5c 0a  test_devsym.c \.
8540: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73    $(TOP)\src\tes 8550: 74 5f 66 73 2e 63 20 5c 0a 20 20 24 28 54 4f 50 t_fs.c \.$(TOP
8560: 29 5c 73 72 63 5c 74 65 73 74 5f 66 75 6e 63 2e  )\src\test_func.
8570: 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63  c \.  $(TOP)\src 8580: 5c 74 65 73 74 5f 68 65 78 69 6f 2e 63 20 5c 0a \test_hexio.c \. 8590: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73$(TOP)\src\tes
85a0: 74 5f 69 6e 69 74 2e 63 20 5c 0a 20 20 24 28 54  t_init.c \.  $(T 85b0: 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 69 6e 74 OP)\src\test_int 85c0: 61 72 72 61 79 2e 63 20 5c 0a 20 20 24 28 54 4f array.c \.$(TO
85d0: 50 29 5c 73 72 63 5c 74 65 73 74 5f 6a 6f 75 72  P)\src\test_jour
85e0: 6e 61 6c 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29  nal.c \.  $(TOP) 85f0: 5c 73 72 63 5c 74 65 73 74 5f 6d 61 6c 6c 6f 63 \src\test_malloc 8600: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 .c \.$(TOP)\sr
8610: 63 5c 74 65 73 74 5f 6d 75 6c 74 69 70 6c 65 78  c\test_multiplex
8620: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72  .c \.  $(TOP)\sr 8630: 63 5c 74 65 73 74 5f 6d 75 74 65 78 2e 63 20 5c c\test_mutex.c \ 8640: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 .$(TOP)\src\te
8650: 73 74 5f 6f 6e 65 66 69 6c 65 2e 63 20 5c 0a 20  st_onefile.c \.
8660: 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74   $(TOP)\src\test 8670: 5f 6f 73 69 6e 73 74 2e 63 20 5c 0a 20 20 24 28 _osinst.c \.$(
8680: 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 70 63  TOP)\src\test_pc
8690: 61 63 68 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50  ache.c \.  $(TOP 86a0: 29 5c 73 72 63 5c 74 65 73 74 5f 71 75 6f 74 61 )\src\test_quota 86b0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 .c \.$(TOP)\sr
86c0: 63 5c 74 65 73 74 5f 72 74 72 65 65 2e 63 20 5c  c\test_rtree.c \
86d0: 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 65  .  $(TOP)\src\te 86e0: 73 74 5f 73 63 68 65 6d 61 2e 63 20 5c 0a 20 20 st_schema.c \. 86f0: 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f$(TOP)\src\test_
8700: 73 65 72 76 65 72 2e 63 20 5c 0a 20 20 24 28 54  server.c \.  $(T 8710: 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 73 75 70 OP)\src\test_sup 8720: 65 72 6c 6f 63 6b 2e 63 20 5c 0a 20 20 24 28 54 erlock.c \.$(T
8730: 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 73 79 73  OP)\src\test_sys
8740: 63 61 6c 6c 2e 63 20 5c 0a 20 20 24 28 54 4f 50  call.c \.  $(TOP 8750: 29 5c 73 72 63 5c 74 65 73 74 5f 74 63 6c 76 61 )\src\test_tclva 8760: 72 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 r.c \.$(TOP)\s
8770: 72 63 5c 74 65 73 74 5f 74 68 72 65 61 64 2e 63  rc\test_thread.c
8780: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 73 72 63 5c   \.  $(TOP)\src\ 8790: 74 65 73 74 5f 76 66 73 2e 63 20 5c 0a 20 20 24 test_vfs.c \.$
87a0: 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 77  (TOP)\src\test_w
87b0: 69 6e 64 69 72 65 6e 74 2e 63 20 5c 0a 20 20 24  indirent.c \.  $87c0: 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f 77 (TOP)\src\test_w 87d0: 73 64 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c sd.c \.$(TOP)\
87e0: 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 74 65  ext\fts3\fts3_te
87f0: 72 6d 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c  rm.c \.  $(TOP)\ 8800: 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 74 65 ext\fts3\fts3_te 8810: 73 74 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c st.c \.$(TOP)\
8820: 65 78 74 5c 72 62 75 5c 74 65 73 74 5f 72 62 75  ext\rbu\test_rbu
8830: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78  .c \.  $(TOP)\ex 8840: 74 5c 73 65 73 73 69 6f 6e 5c 74 65 73 74 5f 73 t\session\test_s 8850: 65 73 73 69 6f 6e 2e 63 0a 0a 23 20 53 74 61 74 ession.c..# Stat 8860: 69 63 61 6c 6c 79 20 6c 69 6e 6b 65 64 20 65 78 ically linked ex 8870: 74 65 6e 73 69 6f 6e 73 2e 0a 23 0a 54 45 53 54 tensions..#.TEST 8880: 45 58 54 20 3d 20 5c 0a 20 20 24 28 54 4f 50 29 EXT = \.$(TOP)
8890: 5c 65 78 74 5c 6d 69 73 63 5c 61 6d 61 74 63 68  \ext\misc\amatch
88a0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78  .c \.  $(TOP)\ex 88b0: 74 5c 6d 69 73 63 5c 63 61 72 72 61 79 2e 63 20 t\misc\carray.c 88c0: 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 6d \.$(TOP)\ext\m
88d0: 69 73 63 5c 63 6c 6f 73 75 72 65 2e 63 20 5c 0a  isc\closure.c \.
88e0: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69 73    $(TOP)\ext\mis 88f0: 63 5c 63 73 76 2e 63 20 5c 0a 20 20 24 28 54 4f c\csv.c \.$(TO
8900: 50 29 5c 65 78 74 5c 6d 69 73 63 5c 65 76 61 6c  P)\ext\misc\eval
8910: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78  .c \.  $(TOP)\ex 8920: 74 5c 6d 69 73 63 5c 66 69 6c 65 69 6f 2e 63 20 t\misc\fileio.c 8930: 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 6d \.$(TOP)\ext\m
8940: 69 73 63 5c 66 75 7a 7a 65 72 2e 63 20 5c 0a 20  isc\fuzzer.c \.
8950: 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 35   $(TOP)\ext\fts5 8960: 5c 66 74 73 35 5f 74 63 6c 2e 63 20 5c 0a 20 20 \fts5_tcl.c \. 8970: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 35 5c$(TOP)\ext\fts5\
8980: 66 74 73 35 5f 74 65 73 74 5f 6d 69 2e 63 20 5c  fts5_test_mi.c \
8990: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74  .  $(TOP)\ext\ft 89a0: 73 35 5c 66 74 73 35 5f 74 65 73 74 5f 74 6f 6b s5\fts5_test_tok 89b0: 2e 63 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 .c \.$(TOP)\ex
89c0: 74 5c 6d 69 73 63 5c 69 65 65 65 37 35 34 2e 63  t\misc\ieee754.c
89d0: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c   \.  $(TOP)\ext\ 89e0: 6d 69 73 63 5c 6e 65 78 74 63 68 61 72 2e 63 20 misc\nextchar.c 89f0: 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 6d \.$(TOP)\ext\m
8a00: 69 73 63 5c 70 65 72 63 65 6e 74 69 6c 65 2e 63  isc\percentile.c
8a10: 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c   \.  $(TOP)\ext\ 8a20: 6d 69 73 63 5c 72 65 67 65 78 70 2e 63 20 5c 0a misc\regexp.c \. 8a30: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 6d 69 73$(TOP)\ext\mis
8a40: 63 5c 73 65 72 69 65 73 2e 63 20 5c 0a 20 20 24  c\series.c \.  $8a50: 28 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c 73 (TOP)\ext\misc\s 8a60: 70 65 6c 6c 66 69 78 2e 63 20 5c 0a 20 20 24 28 pellfix.c \.$(
8a70: 54 4f 50 29 5c 65 78 74 5c 6d 69 73 63 5c 74 6f  TOP)\ext\misc\to
8a80: 74 79 70 65 2e 63 20 5c 0a 20 20 24 28 54 4f 50  type.c \.  $(TOP 8a90: 29 5c 65 78 74 5c 6d 69 73 63 5c 77 68 6f 6c 65 )\ext\misc\whole 8aa0: 6e 75 6d 62 65 72 2e 63 0a 0a 23 20 53 6f 75 72 number.c..# Sour 8ab0: 63 65 20 63 6f 64 65 20 74 6f 20 74 68 65 20 6c ce code to the l 8ac0: 69 62 72 61 72 79 20 66 69 6c 65 73 20 6e 65 65 ibrary files nee 8ad0: 64 65 64 20 62 79 20 74 68 65 20 74 65 73 74 20 ded by the test 8ae0: 66 69 78 74 75 72 65 0a 23 20 28 6e 6f 6e 2d 61 fixture.# (non-a 8af0: 6d 61 6c 67 61 6d 61 74 69 6f 6e 29 0a 23 0a 54 malgamation).#.T 8b00: 45 53 54 53 52 43 32 20 3d 20 5c 0a 20 20 24 28 ESTSRC2 = \.$(
8b10: 53 52 43 30 30 29 20 5c 0a 20 20 24 28 53 52 43  SRC00) \.  $(SRC 8b20: 30 31 29 20 5c 0a 20 20 24 28 53 52 43 30 36 29 01) \.$(SRC06)
8b30: 20 5c 0a 20 20 24 28 53 52 43 30 37 29 20 5c 0a   \.  $(SRC07) \. 8b40: 20 20 24 28 53 52 43 31 30 29 20 5c 0a 20 20 24$(SRC10) \.  $8b50: 28 54 4f 50 29 5c 65 78 74 5c 61 73 79 6e 63 5c (TOP)\ext\async\ 8b60: 73 71 6c 69 74 65 33 61 73 79 6e 63 2e 63 0a 0a sqlite3async.c.. 8b70: 23 20 48 65 61 64 65 72 20 66 69 6c 65 73 20 75 # Header files u 8b80: 73 65 64 20 62 79 20 61 6c 6c 20 6c 69 62 72 61 sed by all libra 8b90: 72 79 20 73 6f 75 72 63 65 20 66 69 6c 65 73 2e ry source files. 8ba0: 0a 23 0a 48 44 52 20 3d 20 5c 0a 20 20 20 24 28 .#.HDR = \.$(
8bb0: 54 4f 50 29 5c 73 72 63 5c 62 74 72 65 65 2e 68  TOP)\src\btree.h
8bc0: 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73 72 63   \.   $(TOP)\src 8bd0: 5c 62 74 72 65 65 49 6e 74 2e 68 20 5c 0a 20 20 \btreeInt.h \. 8be0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 68 61 73 68$(TOP)\src\hash
8bf0: 2e 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73  .h \.   $(TOP)\s 8c00: 72 63 5c 68 77 74 69 6d 65 2e 68 20 5c 0a 20 20 rc\hwtime.h \. 8c10: 20 6b 65 79 77 6f 72 64 68 61 73 68 2e 68 20 5c keywordhash.h \ 8c20: 0a 20 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d .$(TOP)\src\m
8c30: 73 76 63 2e 68 20 5c 0a 20 20 20 24 28 54 4f 50  svc.h \.   $(TOP 8c40: 29 5c 73 72 63 5c 6d 75 74 65 78 2e 68 20 5c 0a )\src\mutex.h \. 8c50: 20 20 20 6f 70 63 6f 64 65 73 2e 68 20 5c 0a 20 opcodes.h \. 8c60: 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6f 73 2e$(TOP)\src\os.
8c70: 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73 72  h \.   $(TOP)\sr 8c80: 63 5c 6f 73 5f 63 6f 6d 6d 6f 6e 2e 68 20 5c 0a c\os_common.h \. 8c90: 20 20 20 24 28 54 4f 50 29 5c 73 72 63 5c 6f 73$(TOP)\src\os
8ca0: 5f 73 65 74 75 70 2e 68 20 5c 0a 20 20 20 24 28  _setup.h \.   $( 8cb0: 54 4f 50 29 5c 73 72 63 5c 6f 73 5f 77 69 6e 2e TOP)\src\os_win. 8cc0: 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73 72 h \.$(TOP)\sr
8cd0: 63 5c 70 61 67 65 72 2e 68 20 5c 0a 20 20 20 24  c\pager.h \.   $8ce0: 28 54 4f 50 29 5c 73 72 63 5c 70 63 61 63 68 65 (TOP)\src\pcache 8cf0: 2e 68 20 5c 0a 20 20 20 70 61 72 73 65 2e 68 20 .h \. parse.h 8d00: 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73 72 63 5c \.$(TOP)\src\
8d10: 70 72 61 67 6d 61 2e 68 20 5c 0a 20 20 20 24 28  pragma.h \.   $( 8d20: 53 51 4c 49 54 45 33 48 29 20 5c 0a 20 20 20 24 SQLITE3H) \.$
8d30: 28 54 4f 50 29 5c 73 72 63 5c 73 71 6c 69 74 65  (TOP)\src\sqlite
8d40: 33 65 78 74 2e 68 20 5c 0a 20 20 20 24 28 54 4f  3ext.h \.   $(TO 8d50: 50 29 5c 73 72 63 5c 73 71 6c 69 74 65 49 6e 74 P)\src\sqliteInt 8d60: 2e 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73 .h \.$(TOP)\s
8d70: 72 63 5c 73 71 6c 69 74 65 4c 69 6d 69 74 2e 68  rc\sqliteLimit.h
8d80: 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73 72 63   \.   $(TOP)\src 8d90: 5c 76 64 62 65 2e 68 20 5c 0a 20 20 20 24 28 54 \vdbe.h \.$(T
8da0: 4f 50 29 5c 73 72 63 5c 76 64 62 65 49 6e 74 2e  OP)\src\vdbeInt.
8db0: 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 73 72  h \.   $(TOP)\sr 8dc0: 63 5c 76 78 77 6f 72 6b 73 2e 68 20 5c 0a 20 20 c\vxworks.h \. 8dd0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 77 68 65 72$(TOP)\src\wher
8de0: 65 49 6e 74 2e 68 0a 0a 23 20 48 65 61 64 65 72  eInt.h..# Header
8df0: 20 66 69 6c 65 73 20 75 73 65 64 20 62 79 20 65   files used by e
8e00: 78 74 65 6e 73 69 6f 6e 73 0a 23 0a 45 58 54 48  xtensions.#.EXTH
8e10: 44 52 20 3d 20 24 28 45 58 54 48 44 52 29 20 5c  DR = $(EXTHDR) \ 8e20: 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 .$(TOP)\ext\ft
8e30: 73 31 5c 66 74 73 31 2e 68 20 5c 0a 20 20 24 28  s1\fts1.h \.  $( 8e40: 54 4f 50 29 5c 65 78 74 5c 66 74 73 31 5c 66 74 TOP)\ext\fts1\ft 8e50: 73 31 5f 68 61 73 68 2e 68 20 5c 0a 20 20 24 28 s1_hash.h \.$(
8e60: 54 4f 50 29 5c 65 78 74 5c 66 74 73 31 5c 66 74  TOP)\ext\fts1\ft
8e70: 73 31 5f 74 6f 6b 65 6e 69 7a 65 72 2e 68 0a 45  s1_tokenizer.h.E
8e80: 58 54 48 44 52 20 3d 20 24 28 45 58 54 48 44 52  XTHDR = $(EXTHDR 8e90: 29 20 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 ) \.$(TOP)\ext
8ea0: 5c 66 74 73 32 5c 66 74 73 32 2e 68 20 5c 0a 20  \fts2\fts2.h \.
8eb0: 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32   $(TOP)\ext\fts2 8ec0: 5c 66 74 73 32 5f 68 61 73 68 2e 68 20 5c 0a 20 \fts2_hash.h \. 8ed0: 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32$(TOP)\ext\fts2
8ee0: 5c 66 74 73 32 5f 74 6f 6b 65 6e 69 7a 65 72 2e  \fts2_tokenizer.
8ef0: 68 0a 45 58 54 48 44 52 20 3d 20 24 28 45 58 54  h.EXTHDR = $(EXT 8f00: 48 44 52 29 20 5c 0a 20 20 24 28 54 4f 50 29 5c HDR) \.$(TOP)\
8f10: 65 78 74 5c 66 74 73 33 5c 66 74 73 33 2e 68 20  ext\fts3\fts3.h
8f20: 5c 0a 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66  \.  $(TOP)\ext\f 8f30: 74 73 33 5c 66 74 73 33 49 6e 74 2e 68 20 5c 0a ts3\fts3Int.h \. 8f40: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73$(TOP)\ext\fts
8f50: 33 5c 66 74 73 33 5f 68 61 73 68 2e 68 20 5c 0a  3\fts3_hash.h \.
8f60: 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73    $(TOP)\ext\fts 8f70: 33 5c 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 72 3\fts3_tokenizer 8f80: 2e 68 0a 45 58 54 48 44 52 20 3d 20 24 28 45 58 .h.EXTHDR =$(EX
8f90: 54 48 44 52 29 20 5c 0a 20 20 24 28 54 4f 50 29  THDR) \.  $(TOP) 8fa0: 5c 65 78 74 5c 72 74 72 65 65 5c 72 74 72 65 65 \ext\rtree\rtree 8fb0: 2e 68 0a 45 58 54 48 44 52 20 3d 20 24 28 45 58 .h.EXTHDR =$(EX
8fc0: 54 48 44 52 29 20 5c 0a 20 20 24 28 54 4f 50 29  THDR) \.  $(TOP) 8fd0: 5c 65 78 74 5c 69 63 75 5c 73 71 6c 69 74 65 69 \ext\icu\sqlitei 8fe0: 63 75 2e 68 0a 45 58 54 48 44 52 20 3d 20 24 28 cu.h.EXTHDR =$(
8ff0: 45 58 54 48 44 52 29 20 5c 0a 20 20 24 28 54 4f  EXTHDR) \.  $(TO 9000: 50 29 5c 65 78 74 5c 72 74 72 65 65 5c 73 71 6c P)\ext\rtree\sql 9010: 69 74 65 33 72 74 72 65 65 2e 68 0a 45 58 54 48 ite3rtree.h.EXTH 9020: 44 52 20 3d 20 24 28 45 58 54 48 44 52 29 20 5c DR =$(EXTHDR) \
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 73 71 6c 69 74 65 33 73 65 73 ssion\sqlite3ses 9050: 73 69 6f 6e 2e 68 0a 0a 23 20 65 78 65 63 75 74 sion.h..# execut 9060: 61 62 6c 65 73 20 6e 65 65 64 65 64 20 66 6f 72 ables needed for 9070: 20 74 65 73 74 69 6e 67 0a 23 0a 54 45 53 54 50 testing.#.TESTP 9080: 52 4f 47 53 20 3d 20 5c 0a 20 20 74 65 73 74 66 ROGS = \. testf 9090: 69 78 74 75 72 65 2e 65 78 65 20 5c 0a 20 20 24 ixture.exe \.$
90a0: 28 53 51 4c 49 54 45 33 45 58 45 29 20 5c 0a 20  (SQLITE3EXE) \.
90b0: 20 73 71 6c 69 74 65 33 5f 61 6e 61 6c 79 7a 65   sqlite3_analyze
90c0: 72 2e 65 78 65 20 5c 0a 20 20 73 71 6c 64 69 66  r.exe \.  sqldif
90d0: 66 2e 65 78 65 20 5c 0a 20 20 64 62 68 61 73 68  f.exe \.  dbhash
90e0: 2e 65 78 65 0a 0a 23 20 44 61 74 61 62 61 73 65  .exe..# Database
90f0: 73 20 63 6f 6e 74 61 69 6e 69 6e 67 20 66 75 7a  s containing fuz
9100: 7a 65 72 20 74 65 73 74 20 63 61 73 65 73 0a 23  zer test cases.#
9110: 0a 46 55 5a 5a 44 41 54 41 20 3d 20 5c 0a 20 20  .FUZZDATA = \.
9120: 24 28 54 4f 50 29 5c 74 65 73 74 5c 66 75 7a 7a  $(TOP)\test\fuzz 9130: 64 61 74 61 31 2e 64 62 20 5c 0a 20 20 24 28 54 data1.db \.$(T
9140: 4f 50 29 5c 74 65 73 74 5c 66 75 7a 7a 64 61 74  OP)\test\fuzzdat
9150: 61 32 2e 64 62 20 5c 0a 20 20 24 28 54 4f 50 29  a2.db \.  $(TOP) 9160: 5c 74 65 73 74 5c 66 75 7a 7a 64 61 74 61 33 2e \test\fuzzdata3. 9170: 64 62 20 5c 0a 20 20 24 28 54 4f 50 29 5c 74 65 db \.$(TOP)\te
9180: 73 74 5c 66 75 7a 7a 64 61 74 61 34 2e 64 62 0a  st\fuzzdata4.db.
9190: 23 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a 0a 23 20 41  # <</mark>>..# A
91a0: 64 64 69 74 69 6f 6e 61 6c 20 63 6f 6d 70 69 6c  dditional compil
91b0: 65 72 20 6f 70 74 69 6f 6e 73 20 66 6f 72 20 74  er options for t
91c0: 68 65 20 73 68 65 6c 6c 2e 20 20 54 68 65 73 65  he shell.  These
91d0: 20 61 72 65 20 6f 6e 6c 79 20 65 66 66 65 63 74   are only effect
91e0: 69 76 65 0a 23 20 77 68 65 6e 20 74 68 65 20 73  ive.# when the s
91f0: 68 65 6c 6c 20 69 73 20 6e 6f 74 20 62 65 69 6e  hell is not bein
9200: 67 20 64 79 6e 61 6d 69 63 61 6c 6c 79 20 6c 69  g dynamically li
9210: 6e 6b 65 64 2e 0a 23 0a 21 49 46 20 24 28 44 59  nked..#.!IF $(DY 9220: 4e 41 4d 49 43 5f 53 48 45 4c 4c 29 3d 3d 30 20 NAMIC_SHELL)==0 9230: 26 26 20 24 28 46 4f 52 5f 57 49 4e 31 30 29 3d &&$(FOR_WIN10)=
9240: 3d 30 0a 53 48 45 4c 4c 5f 43 4f 4d 50 49 4c 45  =0.SHELL_COMPILE
9250: 5f 4f 50 54 53 20 3d 20 24 28 53 48 45 4c 4c 5f  _OPTS = $(SHELL_ 9260: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 44 COMPILE_OPTS) -D 9270: 53 51 4c 49 54 45 5f 53 48 45 4c 4c 5f 4a 53 4f SQLITE_SHELL_JSO 9280: 4e 31 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 N1 -DSQLITE_ENAB 9290: 4c 45 5f 46 54 53 34 20 2d 44 53 51 4c 49 54 45 LE_FTS4 -DSQLITE 92a0: 5f 45 4e 41 42 4c 45 5f 45 58 50 4c 41 49 4e 5f _ENABLE_EXPLAIN_ 92b0: 43 4f 4d 4d 45 4e 54 53 0a 21 45 4e 44 49 46 0a COMMENTS.!ENDIF. 92c0: 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 23 20 45 78 .# <<mark>>.# Ex 92d0: 74 72 61 20 63 6f 6d 70 69 6c 65 72 20 6f 70 74 tra compiler opt 92e0: 69 6f 6e 73 20 66 6f 72 20 76 61 72 69 6f 75 73 ions for various 92f0: 20 74 65 73 74 20 74 6f 6f 6c 73 2e 0a 23 0a 4d test tools..#.M 9300: 50 54 45 53 54 45 52 5f 43 4f 4d 50 49 4c 45 5f PTESTER_COMPILE_ 9310: 4f 50 54 53 20 3d 20 2d 44 53 51 4c 49 54 45 5f OPTS = -DSQLITE_ 9320: 53 48 45 4c 4c 5f 4a 53 4f 4e 31 20 2d 44 53 51 SHELL_JSON1 -DSQ 9330: 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 46 54 53 35 LITE_ENABLE_FTS5 9340: 0a 46 55 5a 5a 45 52 53 48 45 4c 4c 5f 43 4f 4d .FUZZERSHELL_COM 9350: 50 49 4c 45 5f 4f 50 54 53 20 3d 20 2d 44 53 51 PILE_OPTS = -DSQ 9360: 4c 49 54 45 5f 45 4e 41 42 4c 45 5f 4a 53 4f 4e LITE_ENABLE_JSON 9370: 31 0a 46 55 5a 5a 43 48 45 43 4b 5f 43 4f 4d 50 1.FUZZCHECK_COMP 9380: 49 4c 45 5f 4f 50 54 53 20 3d 20 2d 44 53 51 4c ILE_OPTS = -DSQL 9390: 49 54 45 5f 45 4e 41 42 4c 45 5f 4a 53 4f 4e 31 ITE_ENABLE_JSON1 93a0: 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 4c 45 -DSQLITE_ENABLE 93b0: 5f 4d 45 4d 53 59 53 35 0a 0a 23 20 53 74 61 6e _MEMSYS5..# Stan 93c0: 64 61 72 64 20 6f 70 74 69 6f 6e 73 20 74 6f 20 dard options to 93d0: 74 65 73 74 66 69 78 74 75 72 65 2e 0a 23 0a 54 testfixture..#.T 93e0: 45 53 54 4f 50 54 53 20 3d 20 2d 2d 76 65 72 62 ESTOPTS = --verb 93f0: 6f 73 65 3d 66 69 6c 65 20 2d 2d 6f 75 74 70 75 ose=file --outpu 9400: 74 3d 74 65 73 74 2d 6f 75 74 2e 74 78 74 0a 0a t=test-out.txt.. 9410: 23 20 45 78 74 72 61 20 74 61 72 67 65 74 73 20 # Extra targets 9420: 66 6f 72 20 74 68 65 20 22 61 6c 6c 22 20 74 61 for the "all" ta 9430: 72 67 65 74 20 74 68 61 74 20 72 65 71 75 69 72 rget that requir 9440: 65 20 54 63 6c 2e 0a 23 0a 21 49 46 20 24 28 4e e Tcl..#.!IF$(N
9450: 4f 5f 54 43 4c 29 3d 3d 30 0a 41 4c 4c 5f 54 43  O_TCL)==0.ALL_TC
9460: 4c 5f 54 41 52 47 45 54 53 20 3d 20 6c 69 62 74  L_TARGETS = libt
9470: 63 6c 73 71 6c 69 74 65 33 2e 6c 69 62 0a 21 45  clsqlite3.lib.!E
9480: 4c 53 45 0a 41 4c 4c 5f 54 43 4c 5f 54 41 52 47  LSE.ALL_TCL_TARG
9490: 45 54 53 20 3d 0a 21 45 4e 44 49 46 0a 23 20 3c  ETS =.!ENDIF.# <
94a0: 3c 2f 6d 61 72 6b 3e 3e 0a 0a 23 20 54 68 69 73  </mark>>..# This
94b0: 20 69 73 20 74 68 65 20 64 65 66 61 75 6c 74 20   is the default
94c0: 4d 61 6b 65 66 69 6c 65 20 74 61 72 67 65 74 2e  Makefile target.
94d0: 20 20 54 68 65 20 6f 62 6a 65 63 74 73 20 6c 69    The objects li
94e0: 73 74 65 64 20 68 65 72 65 0a 23 20 61 72 65 20  sted here.# are
94f0: 77 68 61 74 20 67 65 74 20 62 75 69 6c 64 20 77  what get build w
9500: 68 65 6e 20 79 6f 75 20 74 79 70 65 20 6a 75 73  hen you type jus
9510: 74 20 22 6d 61 6b 65 22 20 77 69 74 68 20 6e 6f  t "make" with no
9520: 20 61 72 67 75 6d 65 6e 74 73 2e 0a 23 0a 61 6c   arguments..#.al
9530: 6c 3a 09 64 6c 6c 20 6c 69 62 73 71 6c 69 74 65  l:.dll libsqlite
9540: 33 2e 6c 69 62 20 73 68 65 6c 6c 20 24 28 41 4c  3.lib shell $(AL 9550: 4c 5f 54 43 4c 5f 54 41 52 47 45 54 53 29 0a 0a L_TCL_TARGETS).. 9560: 23 20 44 79 6e 61 6d 69 63 20 6c 69 6e 6b 20 6c # Dynamic link l 9570: 69 62 72 61 72 79 20 73 65 63 74 69 6f 6e 2e 0a ibrary section.. 9580: 23 0a 64 6c 6c 3a 09 24 28 53 51 4c 49 54 45 33 #.dll:.$(SQLITE3
9590: 44 4c 4c 29 0a 0a 23 20 53 68 65 6c 6c 20 65 78  DLL)..# Shell ex
95a0: 65 63 75 74 61 62 6c 65 2e 0a 23 0a 73 68 65 6c  ecutable..#.shel
95b0: 6c 3a 09 24 28 53 51 4c 49 54 45 33 45 58 45 29  l:.$(SQLITE3EXE) 95c0: 0a 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 6c 69 62 ..# <<mark>>.lib 95d0: 73 71 6c 69 74 65 33 2e 6c 69 62 3a 09 24 28 4c sqlite3.lib:.$(L
95e0: 49 42 4f 42 4a 29 0a 09 24 28 4c 54 4c 49 42 29  IBOBJ)..$(LTLIB) 95f0: 20 24 28 4c 54 4c 49 42 4f 50 54 53 29 20 2f 4f$(LTLIBOPTS) /O
9600: 55 54 3a 24 40 20 24 28 4c 49 42 4f 42 4a 29 20  UT:$@$(LIBOBJ)
9610: 24 28 54 4c 49 42 53 29 0a 0a 6c 69 62 74 63 6c  $(TLIBS)..libtcl 9620: 73 71 6c 69 74 65 33 2e 6c 69 62 3a 09 74 63 6c sqlite3.lib:.tcl 9630: 73 71 6c 69 74 65 2e 6c 6f 20 6c 69 62 73 71 6c sqlite.lo libsql 9640: 69 74 65 33 2e 6c 69 62 0a 09 24 28 4c 54 4c 49 ite3.lib..$(LTLI
9650: 42 29 20 24 28 4c 54 4c 49 42 4f 50 54 53 29 20  B) $(LTLIBOPTS) 9660: 24 28 4c 54 4c 49 42 50 41 54 48 53 29 20 2f 4f$(LTLIBPATHS) /O
9670: 55 54 3a 24 40 20 74 63 6c 73 71 6c 69 74 65 2e  UT:$@ tclsqlite. 9680: 6c 6f 20 6c 69 62 73 71 6c 69 74 65 33 2e 6c 69 lo libsqlite3.li 9690: 62 20 24 28 4c 49 42 54 43 4c 53 54 55 42 29 20 b$(LIBTCLSTUB)
96a0: 24 28 54 4c 49 42 53 29 0a 23 20 3c 3c 2f 6d 61  $(TLIBS).# <</ma 96b0: 72 6b 3e 3e 0a 0a 24 28 53 51 4c 49 54 45 33 44 rk>>..$(SQLITE3D
96c0: 4c 4c 29 3a 09 24 28 4c 49 42 4f 42 4a 29 20 24  LL):.$(LIBOBJ)$
96d0: 28 4c 49 42 52 45 53 4f 42 4a 53 29 20 24 28 43  (LIBRESOBJS) $(C 96e0: 4f 52 45 5f 4c 49 4e 4b 5f 44 45 50 29 0a 09 24 ORE_LINK_DEP)..$
96f0: 28 4c 44 29 20 24 28 4c 44 46 4c 41 47 53 29 20  (LD) $(LDFLAGS) 9700: 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 24 28$(LTLINKOPTS) $( 9710: 4c 54 4c 49 42 50 41 54 48 53 29 20 2f 44 4c 4c LTLIBPATHS) /DLL 9720: 20 24 28 43 4f 52 45 5f 4c 49 4e 4b 5f 4f 50 54$(CORE_LINK_OPT
9730: 53 29 20 2f 4f 55 54 3a 24 40 20 24 28 4c 49 42  S) /OUT:$@$(LIB
9740: 4f 42 4a 29 20 24 28 4c 49 42 52 45 53 4f 42 4a  OBJ) $(LIBRESOBJ 9750: 53 29 20 24 28 4c 54 4c 49 42 53 29 20 24 28 54 S)$(LTLIBS) $(T 9760: 4c 49 42 53 29 0a 0a 23 20 3c 3c 62 6c 6f 63 6b LIBS)..# <<block 9770: 32 3e 3e 0a 73 71 6c 69 74 65 33 2e 64 65 66 3a 2>>.sqlite3.def: 9780: 09 6c 69 62 73 71 6c 69 74 65 33 2e 6c 69 62 0a .libsqlite3.lib. 9790: 09 65 63 68 6f 20 45 58 50 4f 52 54 53 20 3e 20 .echo EXPORTS > 97a0: 73 71 6c 69 74 65 33 2e 64 65 66 0a 09 64 75 6d sqlite3.def..dum 97b0: 70 62 69 6e 20 2f 61 6c 6c 20 6c 69 62 73 71 6c pbin /all libsql 97c0: 69 74 65 33 2e 6c 69 62 20 5c 0a 09 09 7c 20 24 ite3.lib \...|$
97d0: 28 54 43 4c 53 48 5f 43 4d 44 29 20 24 28 54 4f  (TCLSH_CMD) $(TO 97e0: 50 29 5c 74 6f 6f 6c 5c 72 65 70 6c 61 63 65 2e P)\tool\replace. 97f0: 74 63 6c 20 69 6e 63 6c 75 64 65 20 22 5e 5c 73 tcl include "^\s 9800: 2b 31 20 5f 3f 28 73 71 6c 69 74 65 33 5f 5b 5e +1 _?(sqlite3_[^ 9810: 40 5d 2a 29 28 3f 3a 40 5c 64 2b 29 3f 24 24 22 @]*)(?:@\d+)?$$" 9820: 20 5c 31 20 5c 0a 09 09 7c 20 73 6f 72 74 20 3e \1 \...| sort > 9830: 3e 20 73 71 6c 69 74 65 33 2e 64 65 66 0a 23 20 > sqlite3.def.# 9840: 3c 3c 2f 62 6c 6f 63 6b 32 3e 3e 0a 0a 24 28 53 <</block2>>..$(S
9850: 51 4c 49 54 45 33 45 58 45 29 3a 09 24 28 54 4f  QLITE3EXE):.$(TO 9860: 50 29 5c 73 72 63 5c 73 68 65 6c 6c 2e 63 20 24 P)\src\shell.c$
9870: 28 53 48 45 4c 4c 5f 43 4f 52 45 5f 44 45 50 29  (SHELL_CORE_DEP)
9880: 20 24 28 4c 49 42 52 45 53 4f 42 4a 53 29 20 24   $(LIBRESOBJS)$
9890: 28 53 48 45 4c 4c 5f 43 4f 52 45 5f 53 52 43 29  (SHELL_CORE_SRC)
98a0: 20 24 28 53 51 4c 49 54 45 33 48 29 0a 09 24 28   $(SQLITE3H)..$(
98b0: 4c 54 4c 49 4e 4b 29 20 24 28 53 48 45 4c 4c 5f  LTLINK) $(SHELL_ 98c0: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24 28 COMPILE_OPTS)$(
98d0: 52 45 41 44 4c 49 4e 45 5f 46 4c 41 47 53 29 20  READLINE_FLAGS)
98e0: 24 28 54 4f 50 29 5c 73 72 63 5c 73 68 65 6c 6c  $(TOP)\src\shell 98f0: 2e 63 20 24 28 53 48 45 4c 4c 5f 43 4f 52 45 5f .c$(SHELL_CORE_
9900: 53 52 43 29 20 5c 0a 09 09 2f 6c 69 6e 6b 20 24  SRC) \.../link $9910: 28 53 51 4c 49 54 45 33 45 58 45 50 44 42 29 20 (SQLITE3EXEPDB) 9920: 24 28 4c 44 46 4c 41 47 53 29 20 24 28 4c 54 4c$(LDFLAGS) $(LTL 9930: 49 4e 4b 4f 50 54 53 29 20 24 28 53 48 45 4c 4c INKOPTS)$(SHELL
9940: 5f 4c 49 4e 4b 5f 4f 50 54 53 29 20 24 28 4c 54  _LINK_OPTS) $(LT 9950: 4c 49 42 50 41 54 48 53 29 20 24 28 4c 49 42 52 LIBPATHS)$(LIBR
9960: 45 53 4f 42 4a 53 29 20 24 28 4c 49 42 52 45 41  ESOBJS) $(LIBREA 9970: 44 4c 49 4e 45 29 20 24 28 4c 54 4c 49 42 53 29 DLINE)$(LTLIBS)
9980: 20 24 28 54 4c 49 42 53 29 0a 0a 23 20 3c 3c 6d   $(TLIBS)..# <<m 9990: 61 72 6b 3e 3e 0a 73 71 6c 64 69 66 66 2e 65 78 ark>>.sqldiff.ex 99a0: 65 3a 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 e:.$(TOP)\tool\s
99b0: 71 6c 64 69 66 66 2e 63 20 24 28 53 51 4c 49 54  qldiff.c $(SQLIT 99c0: 45 33 43 29 20 24 28 53 51 4c 49 54 45 33 48 29 E3C)$(SQLITE3H)
99d0: 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f  ..$(LTLINK)$(NO
99e0: 5f 57 41 52 4e 29 20 24 28 54 4f 50 29 5c 74 6f  _WARN) $(TOP)\to 99f0: 6f 6c 5c 73 71 6c 64 69 66 66 2e 63 20 24 28 53 ol\sqldiff.c$(S
9a00: 51 4c 49 54 45 33 43 29 20 2f 6c 69 6e 6b 20 24  QLITE3C) /link $9a10: 28 4c 44 46 4c 41 47 53 29 20 24 28 4c 54 4c 49 (LDFLAGS)$(LTLI
9a20: 4e 4b 4f 50 54 53 29 0a 0a 64 62 68 61 73 68 2e  NKOPTS)..dbhash.
9a30: 65 78 65 3a 09 24 28 54 4f 50 29 5c 74 6f 6f 6c  exe:.$(TOP)\tool 9a40: 5c 64 62 68 61 73 68 2e 63 20 24 28 53 51 4c 49 \dbhash.c$(SQLI
9a50: 54 45 33 43 29 20 24 28 53 51 4c 49 54 45 33 48  TE3C) $(SQLITE3H 9a60: 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e )..$(LTLINK) $(N 9a70: 4f 5f 57 41 52 4e 29 20 24 28 54 4f 50 29 5c 74 O_WARN)$(TOP)\t
9a80: 6f 6f 6c 5c 64 62 68 61 73 68 2e 63 20 24 28 53  ool\dbhash.c $(S 9a90: 51 4c 49 54 45 33 43 29 20 2f 6c 69 6e 6b 20 24 QLITE3C) /link$
9aa0: 28 4c 44 46 4c 41 47 53 29 20 24 28 4c 54 4c 49  (LDFLAGS) $(LTLI 9ab0: 4e 4b 4f 50 54 53 29 0a 0a 73 63 72 75 62 2e 65 NKOPTS)..scrub.e 9ac0: 78 65 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 6d xe:.$(TOP)\ext\m
9ad0: 69 73 63 5c 73 63 72 75 62 2e 63 20 24 28 53 51  isc\scrub.c $(SQ 9ae0: 4c 49 54 45 33 43 29 20 24 28 53 51 4c 49 54 45 LITE3C)$(SQLITE
9af0: 33 48 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24  3H)..$(LTLINK)$
9b00: 28 4e 4f 5f 57 41 52 4e 29 20 24 28 54 4f 50 29  (NO_WARN) $(TOP) 9b10: 5c 65 78 74 5c 6d 69 73 63 5c 73 63 72 75 62 2e \ext\misc\scrub. 9b20: 63 20 24 28 53 51 4c 49 54 45 33 43 29 20 2f 6c c$(SQLITE3C) /l
9b30: 69 6e 6b 20 24 28 4c 44 46 4c 41 47 53 29 20 24  ink $(LDFLAGS)$
9b40: 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 0a 0a 73 72  (LTLINKOPTS)..sr
9b50: 63 63 6b 31 2e 65 78 65 3a 09 24 28 54 4f 50 29  cck1.exe:.$(TOP) 9b60: 5c 74 6f 6f 6c 5c 73 72 63 63 6b 31 2e 63 0a 09 \tool\srcck1.c.. 9b70: 24 28 42 43 43 29 20 24 28 4e 4f 5f 57 41 52 4e$(BCC) $(NO_WARN 9b80: 29 20 2d 46 65 24 40 20 24 28 54 4f 50 29 5c 74 ) -Fe$@ $(TOP)\t 9b90: 6f 6f 6c 5c 73 72 63 63 6b 31 2e 63 0a 0a 73 6f ool\srcck1.c..so 9ba0: 75 72 63 65 74 65 73 74 3a 09 73 72 63 63 6b 31 urcetest:.srcck1 9bb0: 2e 65 78 65 20 73 71 6c 69 74 65 33 2e 63 0a 09 .exe sqlite3.c.. 9bc0: 73 72 63 63 6b 31 2e 65 78 65 20 73 71 6c 69 74 srcck1.exe sqlit 9bd0: 65 33 2e 63 0a 0a 66 75 7a 7a 65 72 73 68 65 6c e3.c..fuzzershel 9be0: 6c 2e 65 78 65 3a 09 24 28 54 4f 50 29 5c 74 6f l.exe:.$(TOP)\to
9bf0: 6f 6c 5c 66 75 7a 7a 65 72 73 68 65 6c 6c 2e 63  ol\fuzzershell.c
9c00: 20 24 28 53 51 4c 49 54 45 33 43 29 20 24 28 53   $(SQLITE3C)$(S
9c10: 51 4c 49 54 45 33 48 29 0a 09 24 28 4c 54 4c 49  QLITE3H)..$(LTLI 9c20: 4e 4b 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 24 NK)$(NO_WARN) $9c30: 28 46 55 5a 5a 45 52 53 48 45 4c 4c 5f 43 4f 4d (FUZZERSHELL_COM 9c40: 50 49 4c 45 5f 4f 50 54 53 29 20 24 28 54 4f 50 PILE_OPTS)$(TOP
9c50: 29 5c 74 6f 6f 6c 5c 66 75 7a 7a 65 72 73 68 65  )\tool\fuzzershe
9c60: 6c 6c 2e 63 20 24 28 53 51 4c 49 54 45 33 43 29  ll.c $(SQLITE3C) 9c70: 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 47 53 /link$(LDFLAGS
9c80: 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 0a  ) $(LTLINKOPTS). 9c90: 0a 66 75 7a 7a 63 68 65 63 6b 2e 65 78 65 3a 09 .fuzzcheck.exe:. 9ca0: 24 28 54 4f 50 29 5c 74 65 73 74 5c 66 75 7a 7a$(TOP)\test\fuzz
9cb0: 63 68 65 63 6b 2e 63 20 24 28 53 51 4c 49 54 45  check.c $(SQLITE 9cc0: 33 43 29 20 24 28 53 51 4c 49 54 45 33 48 29 0a 3C)$(SQLITE3H).
9cd0: 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f  .$(LTLINK)$(NO_
9ce0: 57 41 52 4e 29 20 24 28 46 55 5a 5a 43 48 45 43  WARN) $(FUZZCHEC 9cf0: 4b 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 K_COMPILE_OPTS) 9d00: 24 28 54 4f 50 29 5c 74 65 73 74 5c 66 75 7a 7a$(TOP)\test\fuzz
9d10: 63 68 65 63 6b 2e 63 20 24 28 53 51 4c 49 54 45  check.c $(SQLITE 9d20: 33 43 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 3C) /link$(LDFL
9d30: 41 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54  AGS) $(LTLINKOPT 9d40: 53 29 0a 0a 6d 70 74 65 73 74 65 72 2e 65 78 65 S)..mptester.exe 9d50: 3a 09 24 28 54 4f 50 29 5c 6d 70 74 65 73 74 5c :.$(TOP)\mptest\
9d60: 6d 70 74 65 73 74 2e 63 20 24 28 53 51 4c 49 54  mptest.c $(SQLIT 9d70: 45 33 43 29 20 24 28 53 51 4c 49 54 45 33 48 29 E3C)$(SQLITE3H)
9d80: 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f  ..$(LTLINK)$(NO
9d90: 5f 57 41 52 4e 29 20 24 28 4d 50 54 45 53 54 45  _WARN) $(MPTESTE 9da0: 52 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 R_COMPILE_OPTS) 9db0: 24 28 54 4f 50 29 5c 6d 70 74 65 73 74 5c 6d 70$(TOP)\mptest\mp
9dc0: 74 65 73 74 2e 63 20 24 28 53 51 4c 49 54 45 33  test.c $(SQLITE3 9dd0: 43 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 C) /link$(LDFLA
9de0: 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53  GS) $(LTLINKOPTS 9df0: 29 0a 0a 4d 50 54 45 53 54 31 20 3d 20 6d 70 74 )..MPTEST1 = mpt 9e00: 65 73 74 65 72 20 6d 70 74 65 73 74 2e 64 62 20 ester mptest.db 9e10: 24 28 54 4f 50 29 5c 6d 70 74 65 73 74 5c 63 72$(TOP)\mptest\cr
9e20: 61 73 68 30 31 2e 74 65 73 74 20 2d 2d 72 65 70  ash01.test --rep
9e30: 65 61 74 20 32 30 0a 4d 50 54 45 53 54 32 20 3d  eat 20.MPTEST2 =
9e40: 20 6d 70 74 65 73 74 65 72 20 6d 70 74 65 73 74   mptester mptest
9e50: 2e 64 62 20 24 28 54 4f 50 29 5c 6d 70 74 65 73  .db $(TOP)\mptes 9e60: 74 5c 6d 75 6c 74 69 77 72 69 74 65 30 31 2e 74 t\multiwrite01.t 9e70: 65 73 74 20 2d 2d 72 65 70 65 61 74 20 32 30 0a est --repeat 20. 9e80: 0a 6d 70 74 65 73 74 3a 09 6d 70 74 65 73 74 65 .mptest:.mpteste 9e90: 72 2e 65 78 65 0a 09 64 65 6c 20 2f 51 20 6d 70 r.exe..del /Q mp 9ea0: 74 65 73 74 2e 64 62 20 32 3e 4e 55 4c 0a 09 24 test.db 2>NUL..$
9eb0: 28 4d 50 54 45 53 54 31 29 20 2d 2d 6a 6f 75 72  (MPTEST1) --jour
9ec0: 6e 61 6c 6d 6f 64 65 20 44 45 4c 45 54 45 0a 09  nalmode DELETE..
9ed0: 24 28 4d 50 54 45 53 54 32 29 20 2d 2d 6a 6f 75  $(MPTEST2) --jou 9ee0: 72 6e 61 6c 6d 6f 64 65 20 57 41 4c 0a 09 24 28 rnalmode WAL..$(
9ef0: 4d 50 54 45 53 54 31 29 20 2d 2d 6a 6f 75 72 6e  MPTEST1) --journ
9f00: 61 6c 6d 6f 64 65 20 57 41 4c 0a 09 24 28 4d 50  almode WAL..$(MP 9f10: 54 45 53 54 32 29 20 2d 2d 6a 6f 75 72 6e 61 6c TEST2) --journal 9f20: 6d 6f 64 65 20 50 45 52 53 49 53 54 0a 09 24 28 mode PERSIST..$(
9f30: 4d 50 54 45 53 54 31 29 20 2d 2d 6a 6f 75 72 6e  MPTEST1) --journ
9f40: 61 6c 6d 6f 64 65 20 50 45 52 53 49 53 54 0a 09  almode PERSIST..
9f50: 24 28 4d 50 54 45 53 54 32 29 20 2d 2d 6a 6f 75  $(MPTEST2) --jou 9f60: 72 6e 61 6c 6d 6f 64 65 20 54 52 55 4e 43 41 54 rnalmode TRUNCAT 9f70: 45 0a 09 24 28 4d 50 54 45 53 54 31 29 20 2d 2d E..$(MPTEST1) --
9f80: 6a 6f 75 72 6e 61 6c 6d 6f 64 65 20 54 52 55 4e  journalmode TRUN
9f90: 43 41 54 45 0a 09 24 28 4d 50 54 45 53 54 32 29  CATE..$(MPTEST2) 9fa0: 20 2d 2d 6a 6f 75 72 6e 61 6c 6d 6f 64 65 20 44 --journalmode D 9fb0: 45 4c 45 54 45 0a 0a 23 20 54 68 69 73 20 74 61 ELETE..# This ta 9fc0: 72 67 65 74 20 63 72 65 61 74 65 73 20 61 20 64 rget creates a d 9fd0: 69 72 65 63 74 6f 72 79 20 6e 61 6d 65 64 20 22 irectory named " 9fe0: 74 73 72 63 22 20 61 6e 64 20 66 69 6c 6c 73 20 tsrc" and fills 9ff0: 69 74 20 77 69 74 68 0a 23 20 63 6f 70 69 65 73 it with.# copies a000: 20 6f 66 20 61 6c 6c 20 6f 66 20 74 68 65 20 43 of all of the C a010: 20 73 6f 75 72 63 65 20 63 6f 64 65 20 61 6e 64 source code and a020: 20 68 65 61 64 65 72 20 66 69 6c 65 73 20 6e 65 header files ne a030: 65 64 65 64 20 74 6f 0a 23 20 62 75 69 6c 64 20 eded to.# build a040: 6f 6e 20 74 68 65 20 74 61 72 67 65 74 20 73 79 on the target sy a050: 73 74 65 6d 2e 20 20 53 6f 6d 65 20 6f 66 20 74 stem. Some of t a060: 68 65 20 43 20 73 6f 75 72 63 65 20 63 6f 64 65 he C source code a070: 20 61 6e 64 20 68 65 61 64 65 72 0a 23 20 66 69 and header.# fi a080: 6c 65 73 20 61 72 65 20 61 75 74 6f 6d 61 74 69 les are automati a090: 63 61 6c 6c 79 20 67 65 6e 65 72 61 74 65 64 2e cally generated. a0a0: 20 20 54 68 69 73 20 74 61 72 67 65 74 20 74 61 This target ta a0b0: 6b 65 73 20 63 61 72 65 20 6f 66 0a 23 20 61 6c kes care of.# al a0c0: 6c 20 74 68 61 74 20 61 75 74 6f 6d 61 74 69 63 l that automatic a0d0: 20 67 65 6e 65 72 61 74 69 6f 6e 2e 0a 23 0a 2e generation..#.. a0e0: 74 61 72 67 65 74 5f 73 6f 75 72 63 65 3a 09 24 target_source:.$
a0f0: 28 53 52 43 29 20 24 28 54 4f 50 29 5c 74 6f 6f  (SRC) $(TOP)\too a100: 6c 5c 76 64 62 65 2d 63 6f 6d 70 72 65 73 73 2e l\vdbe-compress. a110: 74 63 6c 20 66 74 73 35 2e 63 20 73 71 6c 69 74 tcl fts5.c sqlit a120: 65 5f 74 63 6c 2e 68 0a 09 2d 72 6d 64 69 72 20 e_tcl.h..-rmdir a130: 2f 51 2f 53 20 74 73 72 63 20 32 3e 4e 55 4c 0a /Q/S tsrc 2>NUL. a140: 09 2d 6d 6b 64 69 72 20 74 73 72 63 0a 09 66 6f .-mkdir tsrc..fo a150: 72 20 25 69 20 69 6e 20 28 24 28 53 52 43 30 30 r %i in ($(SRC00
a160: 29 29 20 64 6f 20 63 6f 70 79 20 2f 59 20 25 69  )) do copy /Y %i
a170: 20 74 73 72 63 0a 09 66 6f 72 20 25 69 20 69 6e   tsrc..for %i in
a180: 20 28 24 28 53 52 43 30 31 29 29 20 64 6f 20 63   ($(SRC01)) do c a190: 6f 70 79 20 2f 59 20 25 69 20 74 73 72 63 0a 09 opy /Y %i tsrc.. a1a0: 66 6f 72 20 25 69 20 69 6e 20 28 24 28 53 52 43 for %i in ($(SRC
a1b0: 30 32 29 29 20 64 6f 20 63 6f 70 79 20 2f 59 20  02)) do copy /Y
a1c0: 25 69 20 74 73 72 63 0a 09 66 6f 72 20 25 69 20  %i tsrc..for %i
a1d0: 69 6e 20 28 24 28 53 52 43 30 33 29 29 20 64 6f  in ($(SRC03)) do a1e0: 20 63 6f 70 79 20 2f 59 20 25 69 20 74 73 72 63 copy /Y %i tsrc a1f0: 0a 09 66 6f 72 20 25 69 20 69 6e 20 28 24 28 53 ..for %i in ($(S
a200: 52 43 30 34 29 29 20 64 6f 20 63 6f 70 79 20 2f  RC04)) do copy /
a210: 59 20 25 69 20 74 73 72 63 0a 09 66 6f 72 20 25  Y %i tsrc..for %
a220: 69 20 69 6e 20 28 24 28 53 52 43 30 35 29 29 20  i in ($(SRC05)) a230: 64 6f 20 63 6f 70 79 20 2f 59 20 25 69 20 74 73 do copy /Y %i ts a240: 72 63 0a 09 66 6f 72 20 25 69 20 69 6e 20 28 24 rc..for %i in ($
a250: 28 53 52 43 30 36 29 29 20 64 6f 20 63 6f 70 79  (SRC06)) do copy
a260: 20 2f 59 20 25 69 20 74 73 72 63 0a 09 66 6f 72   /Y %i tsrc..for
a270: 20 25 69 20 69 6e 20 28 24 28 53 52 43 30 37 29   %i in ($(SRC07) a280: 29 20 64 6f 20 63 6f 70 79 20 2f 59 20 25 69 20 ) do copy /Y %i a290: 74 73 72 63 0a 09 66 6f 72 20 25 69 20 69 6e 20 tsrc..for %i in a2a0: 28 24 28 53 52 43 30 38 29 29 20 64 6f 20 63 6f ($(SRC08)) do co
a2b0: 70 79 20 2f 59 20 25 69 20 74 73 72 63 0a 09 66  py /Y %i tsrc..f
a2c0: 6f 72 20 25 69 20 69 6e 20 28 24 28 53 52 43 30  or %i in ($(SRC0 a2d0: 39 29 29 20 64 6f 20 63 6f 70 79 20 2f 59 20 25 9)) do copy /Y % a2e0: 69 20 74 73 72 63 0a 09 66 6f 72 20 25 69 20 69 i tsrc..for %i i a2f0: 6e 20 28 24 28 53 52 43 31 30 29 29 20 64 6f 20 n ($(SRC10)) do
a300: 63 6f 70 79 20 2f 59 20 25 69 20 74 73 72 63 0a  copy /Y %i tsrc.
a310: 09 66 6f 72 20 25 69 20 69 6e 20 28 24 28 53 52  .for %i in ($(SR a320: 43 31 31 29 29 20 64 6f 20 63 6f 70 79 20 2f 59 C11)) do copy /Y a330: 20 25 69 20 74 73 72 63 0a 09 66 6f 72 20 25 69 %i tsrc..for %i a340: 20 69 6e 20 28 24 28 53 52 43 31 32 29 29 20 64 in ($(SRC12)) d
a350: 6f 20 63 6f 70 79 20 2f 59 20 25 69 20 74 73 72  o copy /Y %i tsr
a360: 63 0a 09 63 6f 70 79 20 2f 59 20 66 74 73 35 2e  c..copy /Y fts5.
a370: 63 20 74 73 72 63 0a 09 63 6f 70 79 20 2f 59 20  c tsrc..copy /Y
a380: 66 74 73 35 2e 68 20 74 73 72 63 0a 09 64 65 6c  fts5.h tsrc..del
a390: 20 2f 51 20 74 73 72 63 5c 73 71 6c 69 74 65 2e   /Q tsrc\sqlite.
a3a0: 68 2e 69 6e 20 74 73 72 63 5c 70 61 72 73 65 2e  h.in tsrc\parse.
a3b0: 79 20 32 3e 4e 55 4c 0a 09 24 28 54 43 4c 53 48  y 2>NUL..$(TCLSH a3c0: 5f 43 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f 6f _CMD)$(TOP)\too
a3d0: 6c 5c 76 64 62 65 2d 63 6f 6d 70 72 65 73 73 2e  l\vdbe-compress.
a3e0: 74 63 6c 20 24 28 4f 50 54 53 29 20 3c 20 74 73  tcl $(OPTS) < ts a3f0: 72 63 5c 76 64 62 65 2e 63 20 3e 20 76 64 62 65 rc\vdbe.c > vdbe a400: 2e 6e 65 77 0a 09 6d 6f 76 65 20 76 64 62 65 2e .new..move vdbe. a410: 6e 65 77 20 74 73 72 63 5c 76 64 62 65 2e 63 0a new tsrc\vdbe.c. a420: 09 65 63 68 6f 20 3e 20 2e 74 61 72 67 65 74 5f .echo > .target_ a430: 73 6f 75 72 63 65 0a 0a 73 71 6c 69 74 65 33 2e source..sqlite3. a440: 63 3a 09 2e 74 61 72 67 65 74 5f 73 6f 75 72 63 c:..target_sourc a450: 65 20 73 71 6c 69 74 65 33 65 78 74 2e 68 20 24 e sqlite3ext.h$
a460: 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6d 6b 73 71 6c  (TOP)\tool\mksql
a470: 69 74 65 33 63 2e 74 63 6c 0a 09 24 28 54 43 4c  ite3c.tcl..$(TCL a480: 53 48 5f 43 4d 44 29 20 24 28 54 4f 50 29 5c 74 SH_CMD)$(TOP)\t
a490: 6f 6f 6c 5c 6d 6b 73 71 6c 69 74 65 33 63 2e 74  ool\mksqlite3c.t
a4a0: 63 6c 20 24 28 4d 4b 53 51 4c 49 54 45 33 43 5f  cl $(MKSQLITE3C_ a4b0: 41 52 47 53 29 0a 09 63 6f 70 79 20 74 73 72 63 ARGS)..copy tsrc a4c0: 5c 73 68 65 6c 6c 2e 63 20 2e 0a 09 63 6f 70 79 \shell.c ...copy a4d0: 20 24 28 54 4f 50 29 5c 65 78 74 5c 73 65 73 73$(TOP)\ext\sess
a4e0: 69 6f 6e 5c 73 71 6c 69 74 65 33 73 65 73 73 69  ion\sqlite3sessi
a4f0: 6f 6e 2e 68 20 2e 0a 0a 73 71 6c 69 74 65 33 2d  on.h ...sqlite3-
a500: 61 6c 6c 2e 63 3a 09 73 71 6c 69 74 65 33 2e 63  all.c:.sqlite3.c
a510: 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 70 6c   $(TOP)\tool\spl a520: 69 74 2d 73 71 6c 69 74 65 33 63 2e 74 63 6c 0a it-sqlite3c.tcl. a530: 09 24 28 54 43 4c 53 48 5f 43 4d 44 29 20 24 28 .$(TCLSH_CMD) $( a540: 54 4f 50 29 5c 74 6f 6f 6c 5c 73 70 6c 69 74 2d TOP)\tool\split- a550: 73 71 6c 69 74 65 33 63 2e 74 63 6c 0a 23 20 3c sqlite3c.tcl.# < a560: 3c 2f 6d 61 72 6b 3e 3e 0a 0a 23 20 52 75 6c 65 </mark>>..# Rule a570: 20 74 6f 20 62 75 69 6c 64 20 74 68 65 20 61 6d to build the am a580: 61 6c 67 61 6d 61 74 69 6f 6e 0a 23 0a 73 71 6c algamation.#.sql a590: 69 74 65 33 2e 6c 6f 3a 09 24 28 53 51 4c 49 54 ite3.lo:.$(SQLIT
a5a0: 45 33 43 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c  E3C)..$(LTCOMPIL a5b0: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c E)$(CORE_COMPIL
a5c0: 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 53 51 4c  E_OPTS) -c $(SQL a5d0: 49 54 45 33 43 29 0a 0a 23 20 3c 3c 6d 61 72 6b ITE3C)..# <<mark a5e0: 3e 3e 0a 23 20 52 75 6c 65 73 20 74 6f 20 62 75 >>.# Rules to bu a5f0: 69 6c 64 20 74 68 65 20 4c 45 4d 4f 4e 20 63 6f ild the LEMON co a600: 6d 70 69 6c 65 72 20 67 65 6e 65 72 61 74 6f 72 mpiler generator a610: 0a 23 0a 6c 65 6d 70 61 72 2e 63 3a 09 24 28 54 .#.lempar.c:.$(T
a620: 4f 50 29 5c 74 6f 6f 6c 5c 6c 65 6d 70 61 72 2e  OP)\tool\lempar.
a630: 63 0a 09 63 6f 70 79 20 24 28 54 4f 50 29 5c 74  c..copy $(TOP)\t a640: 6f 6f 6c 5c 6c 65 6d 70 61 72 2e 63 20 2e 0a 0a ool\lempar.c ... a650: 6c 65 6d 6f 6e 2e 65 78 65 3a 09 24 28 54 4f 50 lemon.exe:.$(TOP
a660: 29 5c 74 6f 6f 6c 5c 6c 65 6d 6f 6e 2e 63 20 6c  )\tool\lemon.c l
a670: 65 6d 70 61 72 2e 63 0a 09 24 28 42 43 43 29 20  empar.c..$(BCC) a680: 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 61 63 63$(NO_WARN) -Dacc
a690: 65 73 73 3d 5f 61 63 63 65 73 73 20 5c 0a 09 09  ess=_access \...
a6a0: 2d 46 65 24 40 20 24 28 54 4f 50 29 5c 74 6f 6f  -Fe$@$(TOP)\too
a6b0: 6c 5c 6c 65 6d 6f 6e 2e 63 20 2f 6c 69 6e 6b 20  l\lemon.c /link
a6c0: 24 28 4c 44 46 4c 41 47 53 29 20 24 28 4e 4c 54  $(LDFLAGS)$(NLT
a6d0: 4c 49 4e 4b 4f 50 54 53 29 20 24 28 4e 4c 54 4c  LINKOPTS) $(NLTL a6e0: 49 42 50 41 54 48 53 29 0a 0a 23 20 52 75 6c 65 IBPATHS)..# Rule a6f0: 73 20 74 6f 20 62 75 69 6c 64 20 69 6e 64 69 76 s to build indiv a700: 69 64 75 61 6c 20 2a 2e 6c 6f 20 66 69 6c 65 73 idual *.lo files a710: 20 66 72 6f 6d 20 67 65 6e 65 72 61 74 65 64 20 from generated a720: 2a 2e 63 20 66 69 6c 65 73 2e 20 54 68 69 73 0a *.c files. This. a730: 23 20 61 70 70 6c 69 65 73 20 74 6f 3a 0a 23 0a # applies to:.#. a740: 23 20 20 20 20 20 70 61 72 73 65 2e 6c 6f 0a 23 # parse.lo.# a750: 20 20 20 20 20 6f 70 63 6f 64 65 73 2e 6c 6f 0a opcodes.lo. a760: 23 0a 70 61 72 73 65 2e 6c 6f 3a 09 70 61 72 73 #.parse.lo:.pars a770: 65 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 e.c$(HDR)..$(LT a780: 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f COMPILE)$(CORE_
a790: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63  COMPILE_OPTS) -c
a7a0: 20 70 61 72 73 65 2e 63 0a 0a 6f 70 63 6f 64 65   parse.c..opcode
a7b0: 73 2e 6c 6f 3a 09 6f 70 63 6f 64 65 73 2e 63 0a  s.lo:.opcodes.c.
a7c0: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28  .$(LTCOMPILE)$(
a7d0: 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54  CORE_COMPILE_OPT
a7e0: 53 29 20 2d 63 20 6f 70 63 6f 64 65 73 2e 63 0a  S) -c opcodes.c.
a7f0: 23 20 3c 3c 2f 6d 61 72 6b 3e 3e 0a 0a 23 20 52  # <</mark>>..# R
a800: 75 6c 65 20 74 6f 20 62 75 69 6c 64 20 74 68 65  ule to build the
a810: 20 57 69 6e 33 32 20 72 65 73 6f 75 72 63 65 73   Win32 resources
a820: 20 6f 62 6a 65 63 74 20 66 69 6c 65 2e 0a 23 0a   object file..#.
a830: 21 49 46 20 24 28 55 53 45 5f 52 43 29 21 3d 30  !IF $(USE_RC)!=0 a840: 0a 23 20 3c 3c 62 6c 6f 63 6b 31 3e 3e 0a 24 28 .# <<block1>>.$(
a850: 4c 49 42 52 45 53 4f 42 4a 53 29 3a 09 24 28 54  LIBRESOBJS):.$(T a860: 4f 50 29 5c 73 72 63 5c 73 71 6c 69 74 65 33 2e OP)\src\sqlite3. a870: 72 63 20 24 28 53 51 4c 49 54 45 33 48 29 0a 09 rc$(SQLITE3H)..
a880: 65 63 68 6f 20 23 69 66 6e 64 65 66 20 53 51 4c  echo #ifndef SQL
a890: 49 54 45 5f 52 45 53 4f 55 52 43 45 5f 56 45 52  ITE_RESOURCE_VER
a8a0: 53 49 4f 4e 20 3e 20 73 71 6c 69 74 65 33 72 63  SION > sqlite3rc
a8b0: 2e 68 0a 09 66 6f 72 20 2f 46 20 25 25 56 20 69  .h..for /F %%V i
a8c0: 6e 20 28 27 74 79 70 65 20 22 24 28 54 4f 50 29  n ('type "$(TOP) a8d0: 5c 56 45 52 53 49 4f 4e 22 27 29 20 64 6f 20 28 \VERSION"') do ( a8e0: 20 5c 0a 09 09 65 63 68 6f 20 23 64 65 66 69 6e \...echo #defin a8f0: 65 20 53 51 4c 49 54 45 5f 52 45 53 4f 55 52 43 e SQLITE_RESOURC a900: 45 5f 56 45 52 53 49 4f 4e 20 25 25 56 20 5c 0a E_VERSION %%V \. a910: 09 09 09 7c 20 24 28 54 43 4c 53 48 5f 43 4d 44 ...|$(TCLSH_CMD
a920: 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 72 65  ) $(TOP)\tool\re a930: 70 6c 61 63 65 2e 74 63 6c 20 65 78 61 63 74 20 place.tcl exact a940: 2e 20 5e 2c 20 3e 3e 20 73 71 6c 69 74 65 33 72 . ^, >> sqlite3r a950: 63 2e 68 20 5c 0a 09 29 0a 09 65 63 68 6f 20 23 c.h \..)..echo # a960: 65 6e 64 69 66 20 3e 3e 20 73 71 6c 69 74 65 33 endif >> sqlite3 a970: 72 63 2e 68 0a 09 24 28 4c 54 52 43 4f 4d 50 49 rc.h..$(LTRCOMPI
a980: 4c 45 29 20 2d 66 6f 20 24 28 4c 49 42 52 45 53  LE) -fo $(LIBRES a990: 4f 42 4a 53 29 20 24 28 54 4f 50 29 5c 73 72 63 OBJS)$(TOP)\src
a9a0: 5c 73 71 6c 69 74 65 33 2e 72 63 0a 23 20 3c 3c  \sqlite3.rc.# <<
a9b0: 2f 62 6c 6f 63 6b 31 3e 3e 0a 21 45 4e 44 49 46  /block1>>.!ENDIF
a9c0: 0a 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 23 20 52  ..# <<mark>>.# R
a9d0: 75 6c 65 73 20 74 6f 20 62 75 69 6c 64 20 69 6e  ules to build in
a9e0: 64 69 76 69 64 75 61 6c 20 2a 2e 6c 6f 20 66 69  dividual *.lo fi
a9f0: 6c 65 73 20 66 72 6f 6d 20 66 69 6c 65 73 20 69  les from files i
aa00: 6e 20 74 68 65 20 73 72 63 20 64 69 72 65 63 74  n the src direct
aa10: 6f 72 79 2e 0a 23 0a 61 6c 74 65 72 2e 6c 6f 3a  ory..#.alter.lo:
aa20: 09 24 28 54 4f 50 29 5c 73 72 63 5c 61 6c 74 65  .$(TOP)\src\alte aa30: 72 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 r.c$(HDR)..$(LT aa40: 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f COMPILE)$(CORE_
aa50: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63  COMPILE_OPTS) -c
aa60: 20 24 28 54 4f 50 29 5c 73 72 63 5c 61 6c 74 65   $(TOP)\src\alte aa70: 72 2e 63 0a 0a 61 6e 61 6c 79 7a 65 2e 6c 6f 3a r.c..analyze.lo: aa80: 09 24 28 54 4f 50 29 5c 73 72 63 5c 61 6e 61 6c .$(TOP)\src\anal
aa90: 79 7a 65 2e 63 20 24 28 48 44 52 29 0a 09 24 28  yze.c $(HDR)..$(
aaa0: 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52  LTCOMPILE) $(COR aab0: 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 E_COMPILE_OPTS) aac0: 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 61 6e -c$(TOP)\src\an
aad0: 61 6c 79 7a 65 2e 63 0a 0a 61 74 74 61 63 68 2e  alyze.c..attach.
aae0: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 61  lo:.$(TOP)\src\a aaf0: 74 74 61 63 68 2e 63 20 24 28 48 44 52 29 0a 09 ttach.c$(HDR)..
ab00: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43  $(LTCOMPILE)$(C
ab10: 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53  ORE_COMPILE_OPTS
ab20: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c  ) -c $(TOP)\src\ ab30: 61 74 74 61 63 68 2e 63 0a 0a 61 75 74 68 2e 6c attach.c..auth.l ab40: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 61 75 o:.$(TOP)\src\au
ab50: 74 68 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c  th.c $(HDR)..$(L
ab60: 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45  TCOMPILE) $(CORE ab70: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d _COMPILE_OPTS) - ab80: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 61 75 74 c$(TOP)\src\aut
ab90: 68 2e 63 0a 0a 62 61 63 6b 75 70 2e 6c 6f 3a 09  h.c..backup.lo:.
aba0: 24 28 54 4f 50 29 5c 73 72 63 5c 62 61 63 6b 75  $(TOP)\src\backu abb0: 70 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 p.c$(HDR)..$(LT abc0: 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f COMPILE)$(CORE_
abd0: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63  COMPILE_OPTS) -c
abe0: 20 24 28 54 4f 50 29 5c 73 72 63 5c 62 61 63 6b   $(TOP)\src\back abf0: 75 70 2e 63 0a 0a 62 69 74 76 65 63 2e 6c 6f 3a up.c..bitvec.lo: ac00: 09 24 28 54 4f 50 29 5c 73 72 63 5c 62 69 74 76 .$(TOP)\src\bitv
ac10: 65 63 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c  ec.c $(HDR)..$(L
ac20: 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45  TCOMPILE) $(CORE ac30: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d _COMPILE_OPTS) - ac40: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 62 69 74 c$(TOP)\src\bit
ac50: 76 65 63 2e 63 0a 0a 62 74 6d 75 74 65 78 2e 6c  vec.c..btmutex.l
ac60: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 62 74  o:.$(TOP)\src\bt ac70: 6d 75 74 65 78 2e 63 20 24 28 48 44 52 29 0a 09 mutex.c$(HDR)..
ac80: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43  $(LTCOMPILE)$(C
ac90: 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53  ORE_COMPILE_OPTS
aca0: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c  ) -c $(TOP)\src\ acb0: 62 74 6d 75 74 65 78 2e 63 0a 0a 62 74 72 65 65 btmutex.c..btree acc0: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c .lo:.$(TOP)\src\
acd0: 62 74 72 65 65 2e 63 20 24 28 48 44 52 29 20 24  btree.c $(HDR)$
ace0: 28 54 4f 50 29 5c 73 72 63 5c 70 61 67 65 72 2e  (TOP)\src\pager.
acf0: 68 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20  h..$(LTCOMPILE) ad00: 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f$(CORE_COMPILE_O
ad10: 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73  PTS) -c $(TOP)\s ad20: 72 63 5c 62 74 72 65 65 2e 63 0a 0a 62 75 69 6c rc\btree.c..buil ad30: 64 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 d.lo:.$(TOP)\src
ad40: 5c 62 75 69 6c 64 2e 63 20 24 28 48 44 52 29 0a  \build.c $(HDR). ad50: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 .$(LTCOMPILE) $( ad60: 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 CORE_COMPILE_OPT ad70: 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 S) -c$(TOP)\src
ad80: 5c 62 75 69 6c 64 2e 63 0a 0a 63 61 6c 6c 62 61  \build.c..callba
ad90: 63 6b 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72  ck.lo:.$(TOP)\sr ada0: 63 5c 63 61 6c 6c 62 61 63 6b 2e 63 20 24 28 48 c\callback.c$(H
adb0: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  DR)..$(LTCOMPILE adc0: 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 )$(CORE_COMPILE
add0: 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29  _OPTS) -c $(TOP) ade0: 5c 73 72 63 5c 63 61 6c 6c 62 61 63 6b 2e 63 0a \src\callback.c. adf0: 0a 63 6f 6d 70 6c 65 74 65 2e 6c 6f 3a 09 24 28 .complete.lo:.$(
ae00: 54 4f 50 29 5c 73 72 63 5c 63 6f 6d 70 6c 65 74  TOP)\src\complet
ae10: 65 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54  e.c $(HDR)..$(LT
ae20: 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f  COMPILE) $(CORE_ ae30: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 COMPILE_OPTS) -c ae40: 20 24 28 54 4f 50 29 5c 73 72 63 5c 63 6f 6d 70$(TOP)\src\comp
ae50: 6c 65 74 65 2e 63 0a 0a 63 74 69 6d 65 2e 6c 6f  lete.c..ctime.lo
ae60: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 63 74 69  :.$(TOP)\src\cti ae70: 6d 65 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c me.c$(HDR)..$(L ae80: 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 TCOMPILE)$(CORE
ae90: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d  _COMPILE_OPTS) -
aea0: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 63 74 69  c $(TOP)\src\cti aeb0: 6d 65 2e 63 0a 0a 64 61 74 65 2e 6c 6f 3a 09 24 me.c..date.lo:.$
aec0: 28 54 4f 50 29 5c 73 72 63 5c 64 61 74 65 2e 63  (TOP)\src\date.c
aed0: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d   $(HDR)..$(LTCOM
aee0: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d  PILE) $(CORE_COM aef0: 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 PILE_OPTS) -c$(
af00: 54 4f 50 29 5c 73 72 63 5c 64 61 74 65 2e 63 0a  TOP)\src\date.c.
af10: 0a 64 62 73 74 61 74 2e 6c 6f 3a 09 24 28 54 4f  .dbstat.lo:.$(TO af20: 50 29 5c 73 72 63 5c 64 61 74 65 2e 63 20 24 28 P)\src\date.c$(
af30: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c  HDR)..$(LTCOMPIL af40: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c E)$(CORE_COMPIL
af50: 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50  E_OPTS) -c $(TOP af60: 29 5c 73 72 63 5c 64 62 73 74 61 74 2e 63 0a 0a )\src\dbstat.c.. af70: 64 65 6c 65 74 65 2e 6c 6f 3a 09 24 28 54 4f 50 delete.lo:.$(TOP
af80: 29 5c 73 72 63 5c 64 65 6c 65 74 65 2e 63 20 24  )\src\delete.c $af90: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 (HDR)..$(LTCOMPI
afa0: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49  LE) $(CORE_COMPI afb0: 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f LE_OPTS) -c$(TO
afc0: 50 29 5c 73 72 63 5c 64 65 6c 65 74 65 2e 63 0a  P)\src\delete.c.
afd0: 0a 65 78 70 72 2e 6c 6f 3a 09 24 28 54 4f 50 29  .expr.lo:.$(TOP) afe0: 5c 73 72 63 5c 65 78 70 72 2e 63 20 24 28 48 44 \src\expr.c$(HD
aff0: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  R)..$(LTCOMPILE) b000: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f$(CORE_COMPILE_
b010: 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c  OPTS) -c $(TOP)\ b020: 73 72 63 5c 65 78 70 72 2e 63 0a 0a 66 61 75 6c src\expr.c..faul b030: 74 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 t.lo:.$(TOP)\src
b040: 5c 66 61 75 6c 74 2e 63 20 24 28 48 44 52 29 0a  \fault.c $(HDR). b050: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 .$(LTCOMPILE) $( b060: 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 CORE_COMPILE_OPT b070: 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 S) -c$(TOP)\src
b080: 5c 66 61 75 6c 74 2e 63 0a 0a 66 6b 65 79 2e 6c  \fault.c..fkey.l
b090: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 66 6b  o:.$(TOP)\src\fk b0a0: 65 79 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c ey.c$(HDR)..$(L b0b0: 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 TCOMPILE)$(CORE
b0c0: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d  _COMPILE_OPTS) -
b0d0: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 66 6b 65  c $(TOP)\src\fke b0e0: 79 2e 63 0a 0a 66 75 6e 63 2e 6c 6f 3a 09 24 28 y.c..func.lo:.$(
b0f0: 54 4f 50 29 5c 73 72 63 5c 66 75 6e 63 2e 63 20  TOP)\src\func.c
b100: 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  $(HDR)..$(LTCOMP
b110: 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50  ILE) $(CORE_COMP b120: 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 ILE_OPTS) -c$(T
b130: 4f 50 29 5c 73 72 63 5c 66 75 6e 63 2e 63 0a 0a  OP)\src\func.c..
b140: 67 6c 6f 62 61 6c 2e 6c 6f 3a 09 24 28 54 4f 50  global.lo:.$(TOP b150: 29 5c 73 72 63 5c 67 6c 6f 62 61 6c 2e 63 20 24 )\src\global.c$
b160: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  (HDR)..$(LTCOMPI b170: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 LE)$(CORE_COMPI
b180: 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f  LE_OPTS) -c $(TO b190: 50 29 5c 73 72 63 5c 67 6c 6f 62 61 6c 2e 63 0a P)\src\global.c. b1a0: 0a 68 61 73 68 2e 6c 6f 3a 09 24 28 54 4f 50 29 .hash.lo:.$(TOP)
b1b0: 5c 73 72 63 5c 68 61 73 68 2e 63 20 24 28 48 44  \src\hash.c $(HD b1c0: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 R)..$(LTCOMPILE)
b1d0: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f   $(CORE_COMPILE_ b1e0: 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c OPTS) -c$(TOP)\
b1f0: 73 72 63 5c 68 61 73 68 2e 63 0a 0a 69 6e 73 65  src\hash.c..inse
b200: 72 74 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72  rt.lo:.$(TOP)\sr b210: 63 5c 69 6e 73 65 72 74 2e 63 20 24 28 48 44 52 c\insert.c$(HDR
b220: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20  )..$(LTCOMPILE) b230: 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f$(CORE_COMPILE_O
b240: 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73  PTS) -c $(TOP)\s b250: 72 63 5c 69 6e 73 65 72 74 2e 63 0a 0a 6c 65 67 rc\insert.c..leg b260: 61 63 79 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 acy.lo:.$(TOP)\s
b270: 72 63 5c 6c 65 67 61 63 79 2e 63 20 24 28 48 44  rc\legacy.c $(HD b280: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 R)..$(LTCOMPILE)
b290: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f   $(CORE_COMPILE_ b2a0: 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c OPTS) -c$(TOP)\
b2b0: 73 72 63 5c 6c 65 67 61 63 79 2e 63 0a 0a 6c 6f  src\legacy.c..lo
b2c0: 61 64 65 78 74 2e 6c 6f 3a 09 24 28 54 4f 50 29  adext.lo:.$(TOP) b2d0: 5c 73 72 63 5c 6c 6f 61 64 65 78 74 2e 63 20 24 \src\loadext.c$
b2e0: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  (HDR)..$(LTCOMPI b2f0: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 LE)$(CORE_COMPI
b300: 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f  LE_OPTS) -c $(TO b310: 50 29 5c 73 72 63 5c 6c 6f 61 64 65 78 74 2e 63 P)\src\loadext.c b320: 0a 0a 6d 61 69 6e 2e 6c 6f 3a 09 24 28 54 4f 50 ..main.lo:.$(TOP
b330: 29 5c 73 72 63 5c 6d 61 69 6e 2e 63 20 24 28 48  )\src\main.c $(H b340: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 DR)..$(LTCOMPILE
b350: 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45  ) $(CORE_COMPILE b360: 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 _OPTS) -c$(TOP)
b370: 5c 73 72 63 5c 6d 61 69 6e 2e 63 0a 0a 6d 61 6c  \src\main.c..mal
b380: 6c 6f 63 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73  loc.lo:.$(TOP)\s b390: 72 63 5c 6d 61 6c 6c 6f 63 2e 63 20 24 28 48 44 rc\malloc.c$(HD
b3a0: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  R)..$(LTCOMPILE) b3b0: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f$(CORE_COMPILE_
b3c0: 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c  OPTS) -c $(TOP)\ b3d0: 73 72 63 5c 6d 61 6c 6c 6f 63 2e 63 0a 0a 6d 65 src\malloc.c..me b3e0: 6d 30 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 m0.lo:.$(TOP)\sr
b3f0: 63 5c 6d 65 6d 30 2e 63 20 24 28 48 44 52 29 0a  c\mem0.c $(HDR). b400: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 .$(LTCOMPILE) $( b410: 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 CORE_COMPILE_OPT b420: 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 S) -c$(TOP)\src
b430: 5c 6d 65 6d 30 2e 63 0a 0a 6d 65 6d 31 2e 6c 6f  \mem0.c..mem1.lo
b440: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d  :.$(TOP)\src\mem b450: 31 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 1.c$(HDR)..$(LT b460: 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f COMPILE)$(CORE_
b470: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63  COMPILE_OPTS) -c
b480: 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d 31   $(TOP)\src\mem1 b490: 2e 63 0a 0a 6d 65 6d 32 2e 6c 6f 3a 09 24 28 54 .c..mem2.lo:.$(T
b4a0: 4f 50 29 5c 73 72 63 5c 6d 65 6d 32 2e 63 20 24  OP)\src\mem2.c $b4b0: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 (HDR)..$(LTCOMPI
b4c0: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49  LE) $(CORE_COMPI b4d0: 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f LE_OPTS) -c$(TO
b4e0: 50 29 5c 73 72 63 5c 6d 65 6d 32 2e 63 0a 0a 6d  P)\src\mem2.c..m
b4f0: 65 6d 33 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73  em3.lo:.$(TOP)\s b500: 72 63 5c 6d 65 6d 33 2e 63 20 24 28 48 44 52 29 rc\mem3.c$(HDR)
b510: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24  ..$(LTCOMPILE)$
b520: 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50  (CORE_COMPILE_OP
b530: 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72  TS) -c $(TOP)\sr b540: 63 5c 6d 65 6d 33 2e 63 0a 0a 6d 65 6d 35 2e 6c c\mem3.c..mem5.l b550: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65 o:.$(TOP)\src\me
b560: 6d 35 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c  m5.c $(HDR)..$(L
b570: 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45  TCOMPILE) $(CORE b580: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d _COMPILE_OPTS) - b590: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 65 6d c$(TOP)\src\mem
b5a0: 35 2e 63 0a 0a 6d 65 6d 6a 6f 75 72 6e 61 6c 2e  5.c..memjournal.
b5b0: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 6d  lo:.$(TOP)\src\m b5c0: 65 6d 6a 6f 75 72 6e 61 6c 2e 63 20 24 28 48 44 emjournal.c$(HD
b5d0: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  R)..$(LTCOMPILE) b5e0: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f$(CORE_COMPILE_
b5f0: 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c  OPTS) -c $(TOP)\ b600: 73 72 63 5c 6d 65 6d 6a 6f 75 72 6e 61 6c 2e 63 src\memjournal.c b610: 0a 0a 6d 75 74 65 78 2e 6c 6f 3a 09 24 28 54 4f ..mutex.lo:.$(TO
b620: 50 29 5c 73 72 63 5c 6d 75 74 65 78 2e 63 20 24  P)\src\mutex.c $b630: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 (HDR)..$(LTCOMPI
b640: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49  LE) $(CORE_COMPI b650: 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f LE_OPTS) -c$(TO
b660: 50 29 5c 73 72 63 5c 6d 75 74 65 78 2e 63 0a 0a  P)\src\mutex.c..
b670: 6d 75 74 65 78 5f 6e 6f 6f 70 2e 6c 6f 3a 09 24  mutex_noop.lo:.$b680: 28 54 4f 50 29 5c 73 72 63 5c 6d 75 74 65 78 5f (TOP)\src\mutex_ b690: 6e 6f 6f 70 2e 63 20 24 28 48 44 52 29 0a 09 24 noop.c$(HDR)..$b6a0: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f (LTCOMPILE)$(CO
b6b0: 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29  RE_COMPILE_OPTS)
b6c0: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d   -c $(TOP)\src\m b6d0: 75 74 65 78 5f 6e 6f 6f 70 2e 63 0a 0a 6d 75 74 utex_noop.c..mut b6e0: 65 78 5f 75 6e 69 78 2e 6c 6f 3a 09 24 28 54 4f ex_unix.lo:.$(TO
b6f0: 50 29 5c 73 72 63 5c 6d 75 74 65 78 5f 75 6e 69  P)\src\mutex_uni
b700: 78 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54  x.c $(HDR)..$(LT
b710: 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f  COMPILE) $(CORE_ b720: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 COMPILE_OPTS) -c b730: 20 24 28 54 4f 50 29 5c 73 72 63 5c 6d 75 74 65$(TOP)\src\mute
b740: 78 5f 75 6e 69 78 2e 63 0a 0a 6d 75 74 65 78 5f  x_unix.c..mutex_
b750: 77 33 32 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73  w32.lo:.$(TOP)\s b760: 72 63 5c 6d 75 74 65 78 5f 77 33 32 2e 63 20 24 rc\mutex_w32.c$
b770: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  (HDR)..$(LTCOMPI b780: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 LE)$(CORE_COMPI
b790: 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f  LE_OPTS) -c $(TO b7a0: 50 29 5c 73 72 63 5c 6d 75 74 65 78 5f 77 33 32 P)\src\mutex_w32 b7b0: 2e 63 0a 0a 6e 6f 74 69 66 79 2e 6c 6f 3a 09 24 .c..notify.lo:.$
b7c0: 28 54 4f 50 29 5c 73 72 63 5c 6e 6f 74 69 66 79  (TOP)\src\notify
b7d0: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43  .c $(HDR)..$(LTC
b7e0: 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43  OMPILE) $(CORE_C b7f0: 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 OMPILE_OPTS) -c b800: 24 28 54 4f 50 29 5c 73 72 63 5c 6e 6f 74 69 66$(TOP)\src\notif
b810: 79 2e 63 0a 0a 70 61 67 65 72 2e 6c 6f 3a 09 24  y.c..pager.lo:.$b820: 28 54 4f 50 29 5c 73 72 63 5c 70 61 67 65 72 2e (TOP)\src\pager. b830: 63 20 24 28 48 44 52 29 20 24 28 54 4f 50 29 5c c$(HDR) $(TOP)\ b840: 73 72 63 5c 70 61 67 65 72 2e 68 0a 09 24 28 4c src\pager.h..$(L
b850: 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45  TCOMPILE) $(CORE b860: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d _COMPILE_OPTS) - b870: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 61 67 c$(TOP)\src\pag
b880: 65 72 2e 63 0a 0a 70 63 61 63 68 65 2e 6c 6f 3a  er.c..pcache.lo:
b890: 09 24 28 54 4f 50 29 5c 73 72 63 5c 70 63 61 63  .$(TOP)\src\pcac b8a0: 68 65 2e 63 20 24 28 48 44 52 29 20 24 28 54 4f he.c$(HDR) $(TO b8b0: 50 29 5c 73 72 63 5c 70 63 61 63 68 65 2e 68 0a P)\src\pcache.h. b8c0: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 .$(LTCOMPILE) $( b8d0: 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 CORE_COMPILE_OPT b8e0: 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 S) -c$(TOP)\src
b8f0: 5c 70 63 61 63 68 65 2e 63 0a 0a 70 63 61 63 68  \pcache.c..pcach
b900: 65 31 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72  e1.lo:.$(TOP)\sr b910: 63 5c 70 63 61 63 68 65 31 2e 63 20 24 28 48 44 c\pcache1.c$(HD
b920: 52 29 20 24 28 54 4f 50 29 5c 73 72 63 5c 70 63  R) $(TOP)\src\pc b930: 61 63 68 65 2e 68 0a 09 24 28 4c 54 43 4f 4d 50 ache.h..$(LTCOMP
b940: 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50  ILE) $(CORE_COMP b950: 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 ILE_OPTS) -c$(T
b960: 4f 50 29 5c 73 72 63 5c 70 63 61 63 68 65 31 2e  OP)\src\pcache1.
b970: 63 0a 0a 6f 73 2e 6c 6f 3a 09 24 28 54 4f 50 29  c..os.lo:.$(TOP) b980: 5c 73 72 63 5c 6f 73 2e 63 20 24 28 48 44 52 29 \src\os.c$(HDR)
b990: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24  ..$(LTCOMPILE)$
b9a0: 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50  (CORE_COMPILE_OP
b9b0: 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72  TS) -c $(TOP)\sr b9c0: 63 5c 6f 73 2e 63 0a 0a 6f 73 5f 75 6e 69 78 2e c\os.c..os_unix. b9d0: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 6f lo:.$(TOP)\src\o
b9e0: 73 5f 75 6e 69 78 2e 63 20 24 28 48 44 52 29 0a  s_unix.c $(HDR). b9f0: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 .$(LTCOMPILE) $( ba00: 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 CORE_COMPILE_OPT ba10: 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 S) -c$(TOP)\src
ba20: 5c 6f 73 5f 75 6e 69 78 2e 63 0a 0a 6f 73 5f 77  \os_unix.c..os_w
ba30: 69 6e 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72  in.lo:.$(TOP)\sr ba40: 63 5c 6f 73 5f 77 69 6e 2e 63 20 24 28 48 44 52 c\os_win.c$(HDR
ba50: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20  )..$(LTCOMPILE) ba60: 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f$(CORE_COMPILE_O
ba70: 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73  PTS) -c $(TOP)\s ba80: 72 63 5c 6f 73 5f 77 69 6e 2e 63 0a 0a 70 72 61 rc\os_win.c..pra ba90: 67 6d 61 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 gma.lo:.$(TOP)\s
baa0: 72 63 5c 70 72 61 67 6d 61 2e 63 20 24 28 48 44  rc\pragma.c $(HD bab0: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 R)..$(LTCOMPILE)
bac0: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f   $(CORE_COMPILE_ bad0: 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c OPTS) -c$(TOP)\
bae0: 73 72 63 5c 70 72 61 67 6d 61 2e 63 0a 0a 70 72  src\pragma.c..pr
baf0: 65 70 61 72 65 2e 6c 6f 3a 09 24 28 54 4f 50 29  epare.lo:.$(TOP) bb00: 5c 73 72 63 5c 70 72 65 70 61 72 65 2e 63 20 24 \src\prepare.c$
bb10: 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  (HDR)..$(LTCOMPI bb20: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 LE)$(CORE_COMPI
bb30: 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f  LE_OPTS) -c $(TO bb40: 50 29 5c 73 72 63 5c 70 72 65 70 61 72 65 2e 63 P)\src\prepare.c bb50: 0a 0a 70 72 69 6e 74 66 2e 6c 6f 3a 09 24 28 54 ..printf.lo:.$(T
bb60: 4f 50 29 5c 73 72 63 5c 70 72 69 6e 74 66 2e 63  OP)\src\printf.c
bb70: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d   $(HDR)..$(LTCOM
bb80: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d  PILE) $(CORE_COM bb90: 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 PILE_OPTS) -c$(
bba0: 54 4f 50 29 5c 73 72 63 5c 70 72 69 6e 74 66 2e  TOP)\src\printf.
bbb0: 63 0a 0a 72 61 6e 64 6f 6d 2e 6c 6f 3a 09 24 28  c..random.lo:.$( bbc0: 54 4f 50 29 5c 73 72 63 5c 72 61 6e 64 6f 6d 2e TOP)\src\random. bbd0: 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f c$(HDR)..$(LTCO bbe0: 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f MPILE)$(CORE_CO
bbf0: 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24  MPILE_OPTS) -c $bc00: 28 54 4f 50 29 5c 73 72 63 5c 72 61 6e 64 6f 6d (TOP)\src\random bc10: 2e 63 0a 0a 72 65 73 6f 6c 76 65 2e 6c 6f 3a 09 .c..resolve.lo:. bc20: 24 28 54 4f 50 29 5c 73 72 63 5c 72 65 73 6f 6c$(TOP)\src\resol
bc30: 76 65 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c  ve.c $(HDR)..$(L
bc40: 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45  TCOMPILE) $(CORE bc50: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d _COMPILE_OPTS) - bc60: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 72 65 73 c$(TOP)\src\res
bc70: 6f 6c 76 65 2e 63 0a 0a 72 6f 77 73 65 74 2e 6c  olve.c..rowset.l
bc80: 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 72 6f  o:.$(TOP)\src\ro bc90: 77 73 65 74 2e 63 20 24 28 48 44 52 29 0a 09 24 wset.c$(HDR)..$bca0: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f (LTCOMPILE)$(CO
bcb0: 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29  RE_COMPILE_OPTS)
bcc0: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 72   -c $(TOP)\src\r bcd0: 6f 77 73 65 74 2e 63 0a 0a 73 65 6c 65 63 74 2e owset.c..select. bce0: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 73 lo:.$(TOP)\src\s
bcf0: 65 6c 65 63 74 2e 63 20 24 28 48 44 52 29 0a 09  elect.c $(HDR).. bd00: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43$(LTCOMPILE) $(C bd10: 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 ORE_COMPILE_OPTS bd20: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c ) -c$(TOP)\src\
bd30: 73 65 6c 65 63 74 2e 63 0a 0a 73 74 61 74 75 73  select.c..status
bd40: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c  .lo:.$(TOP)\src\ bd50: 73 74 61 74 75 73 2e 63 20 24 28 48 44 52 29 0a status.c$(HDR).
bd60: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28  .$(LTCOMPILE)$(
bd70: 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54  CORE_COMPILE_OPT
bd80: 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63  S) -c $(TOP)\src bd90: 5c 73 74 61 74 75 73 2e 63 0a 0a 74 61 62 6c 65 \status.c..table bda0: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c .lo:.$(TOP)\src\
bdb0: 74 61 62 6c 65 2e 63 20 24 28 48 44 52 29 0a 09  table.c $(HDR).. bdc0: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43$(LTCOMPILE) $(C bdd0: 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 ORE_COMPILE_OPTS bde0: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c ) -c$(TOP)\src\
bdf0: 74 61 62 6c 65 2e 63 0a 0a 74 68 72 65 61 64 73  table.c..threads
be00: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c  .lo:.$(TOP)\src\ be10: 74 68 72 65 61 64 73 2e 63 20 24 28 48 44 52 29 threads.c$(HDR)
be20: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24  ..$(LTCOMPILE)$
be30: 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50  (CORE_COMPILE_OP
be40: 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72  TS) -c $(TOP)\sr be50: 63 5c 74 68 72 65 61 64 73 2e 63 0a 0a 74 6f 6b c\threads.c..tok be60: 65 6e 69 7a 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 enize.lo:.$(TOP)
be70: 5c 73 72 63 5c 74 6f 6b 65 6e 69 7a 65 2e 63 20  \src\tokenize.c
be80: 6b 65 79 77 6f 72 64 68 61 73 68 2e 68 20 24 28  keywordhash.h $( be90: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c HDR)..$(LTCOMPIL
bea0: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c  E) $(CORE_COMPIL beb0: 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 E_OPTS) -c$(TOP
bec0: 29 5c 73 72 63 5c 74 6f 6b 65 6e 69 7a 65 2e 63  )\src\tokenize.c
bed0: 0a 0a 74 72 65 65 76 69 65 77 2e 6c 6f 3a 09 24  ..treeview.lo:.$bee0: 28 54 4f 50 29 5c 73 72 63 5c 74 72 65 65 76 69 (TOP)\src\treevi bef0: 65 77 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c ew.c$(HDR)..$(L bf00: 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 TCOMPILE)$(CORE
bf10: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d  _COMPILE_OPTS) -
bf20: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 74 72 65  c $(TOP)\src\tre bf30: 65 76 69 65 77 2e 63 0a 0a 74 72 69 67 67 65 72 eview.c..trigger bf40: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c .lo:.$(TOP)\src\
bf50: 74 72 69 67 67 65 72 2e 63 20 24 28 48 44 52 29  trigger.c $(HDR) bf60: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 ..$(LTCOMPILE) $bf70: 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 (CORE_COMPILE_OP bf80: 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 TS) -c$(TOP)\sr
bf90: 63 5c 74 72 69 67 67 65 72 2e 63 0a 0a 75 70 64  c\trigger.c..upd
bfa0: 61 74 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73  ate.lo:.$(TOP)\s bfb0: 72 63 5c 75 70 64 61 74 65 2e 63 20 24 28 48 44 rc\update.c$(HD
bfc0: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  R)..$(LTCOMPILE) bfd0: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f$(CORE_COMPILE_
bfe0: 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c  OPTS) -c $(TOP)\ bff0: 73 72 63 5c 75 70 64 61 74 65 2e 63 0a 0a 75 74 src\update.c..ut c000: 66 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 f.lo:.$(TOP)\src
c010: 5c 75 74 66 2e 63 20 24 28 48 44 52 29 0a 09 24  \utf.c $(HDR)..$
c020: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f  (LTCOMPILE) $(CO c030: 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 RE_COMPILE_OPTS) c040: 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 75 -c$(TOP)\src\u
c050: 74 66 2e 63 0a 0a 75 74 69 6c 2e 6c 6f 3a 09 24  tf.c..util.lo:.$c060: 28 54 4f 50 29 5c 73 72 63 5c 75 74 69 6c 2e 63 (TOP)\src\util.c c070: 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d$(HDR)..$(LTCOM c080: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d PILE)$(CORE_COM
c090: 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28  PILE_OPTS) -c $( c0a0: 54 4f 50 29 5c 73 72 63 5c 75 74 69 6c 2e 63 0a TOP)\src\util.c. c0b0: 0a 76 61 63 75 75 6d 2e 6c 6f 3a 09 24 28 54 4f .vacuum.lo:.$(TO
c0c0: 50 29 5c 73 72 63 5c 76 61 63 75 75 6d 2e 63 20  P)\src\vacuum.c
c0d0: 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  $(HDR)..$(LTCOMP
c0e0: 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50  ILE) $(CORE_COMP c0f0: 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 ILE_OPTS) -c$(T
c100: 4f 50 29 5c 73 72 63 5c 76 61 63 75 75 6d 2e 63  OP)\src\vacuum.c
c110: 0a 0a 76 64 62 65 2e 6c 6f 3a 09 24 28 54 4f 50  ..vdbe.lo:.$(TOP c120: 29 5c 73 72 63 5c 76 64 62 65 2e 63 20 24 28 48 )\src\vdbe.c$(H
c130: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  DR)..$(LTCOMPILE c140: 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 )$(CORE_COMPILE
c150: 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29  _OPTS) -c $(TOP) c160: 5c 73 72 63 5c 76 64 62 65 2e 63 0a 0a 76 64 62 \src\vdbe.c..vdb c170: 65 61 70 69 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c eapi.lo:.$(TOP)\
c180: 73 72 63 5c 76 64 62 65 61 70 69 2e 63 20 24 28  src\vdbeapi.c $( c190: 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c HDR)..$(LTCOMPIL
c1a0: 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c  E) $(CORE_COMPIL c1b0: 45 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 E_OPTS) -c$(TOP
c1c0: 29 5c 73 72 63 5c 76 64 62 65 61 70 69 2e 63 0a  )\src\vdbeapi.c.
c1d0: 0a 76 64 62 65 61 75 78 2e 6c 6f 3a 09 24 28 54  .vdbeaux.lo:.$(T c1e0: 4f 50 29 5c 73 72 63 5c 76 64 62 65 61 75 78 2e OP)\src\vdbeaux. c1f0: 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f c$(HDR)..$(LTCO c200: 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f MPILE)$(CORE_CO
c210: 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24  MPILE_OPTS) -c $c220: 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 61 75 (TOP)\src\vdbeau c230: 78 2e 63 0a 0a 76 64 62 65 62 6c 6f 62 2e 6c 6f x.c..vdbeblob.lo c240: 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 :.$(TOP)\src\vdb
c250: 65 62 6c 6f 62 2e 63 20 24 28 48 44 52 29 0a 09  eblob.c $(HDR).. c260: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43$(LTCOMPILE) $(C c270: 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 ORE_COMPILE_OPTS c280: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c ) -c$(TOP)\src\
c290: 76 64 62 65 62 6c 6f 62 2e 63 0a 0a 76 64 62 65  vdbeblob.c..vdbe
c2a0: 6d 65 6d 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73  mem.lo:.$(TOP)\s c2b0: 72 63 5c 76 64 62 65 6d 65 6d 2e 63 20 24 28 48 rc\vdbemem.c$(H
c2c0: 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  DR)..$(LTCOMPILE c2d0: 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 )$(CORE_COMPILE
c2e0: 5f 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29  _OPTS) -c $(TOP) c2f0: 5c 73 72 63 5c 76 64 62 65 6d 65 6d 2e 63 0a 0a \src\vdbemem.c.. c300: 76 64 62 65 73 6f 72 74 2e 6c 6f 3a 09 24 28 54 vdbesort.lo:.$(T
c310: 4f 50 29 5c 73 72 63 5c 76 64 62 65 73 6f 72 74  OP)\src\vdbesort
c320: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43  .c $(HDR)..$(LTC
c330: 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43  OMPILE) $(CORE_C c340: 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 OMPILE_OPTS) -c c350: 24 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 73$(TOP)\src\vdbes
c360: 6f 72 74 2e 63 0a 0a 76 64 62 65 74 72 61 63 65  ort.c..vdbetrace
c370: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c  .lo:.$(TOP)\src\ c380: 76 64 62 65 74 72 61 63 65 2e 63 20 24 28 48 44 vdbetrace.c$(HD
c390: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29  R)..$(LTCOMPILE) c3a0: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f$(CORE_COMPILE_
c3b0: 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c  OPTS) -c $(TOP)\ c3c0: 73 72 63 5c 76 64 62 65 74 72 61 63 65 2e 63 0a src\vdbetrace.c. c3d0: 0a 76 74 61 62 2e 6c 6f 3a 09 24 28 54 4f 50 29 .vtab.lo:.$(TOP)
c3e0: 5c 73 72 63 5c 76 74 61 62 2e 63 20 24 28 48 44  \src\vtab.c $(HD c3f0: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 R)..$(LTCOMPILE)
c400: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f   $(CORE_COMPILE_ c410: 4f 50 54 53 29 20 2d 63 20 24 28 54 4f 50 29 5c OPTS) -c$(TOP)\
c420: 73 72 63 5c 76 74 61 62 2e 63 0a 0a 77 61 6c 2e  src\vtab.c..wal.
c430: 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 77  lo:.$(TOP)\src\w c440: 61 6c 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c al.c$(HDR)..$(L c450: 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 TCOMPILE)$(CORE
c460: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d  _COMPILE_OPTS) -
c470: 63 20 24 28 54 4f 50 29 5c 73 72 63 5c 77 61 6c  c $(TOP)\src\wal c480: 2e 63 0a 0a 77 61 6c 6b 65 72 2e 6c 6f 3a 09 24 .c..walker.lo:.$
c490: 28 54 4f 50 29 5c 73 72 63 5c 77 61 6c 6b 65 72  (TOP)\src\walker
c4a0: 2e 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43  .c $(HDR)..$(LTC
c4b0: 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43  OMPILE) $(CORE_C c4c0: 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 OMPILE_OPTS) -c c4d0: 24 28 54 4f 50 29 5c 73 72 63 5c 77 61 6c 6b 65$(TOP)\src\walke
c4e0: 72 2e 63 0a 0a 77 68 65 72 65 2e 6c 6f 3a 09 24  r.c..where.lo:.$c4f0: 28 54 4f 50 29 5c 73 72 63 5c 77 68 65 72 65 2e (TOP)\src\where. c500: 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f c$(HDR)..$(LTCO c510: 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f MPILE)$(CORE_CO
c520: 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24  MPILE_OPTS) -c $c530: 28 54 4f 50 29 5c 73 72 63 5c 77 68 65 72 65 2e (TOP)\src\where. c540: 63 0a 0a 77 68 65 72 65 63 6f 64 65 2e 6c 6f 3a c..wherecode.lo: c550: 09 24 28 54 4f 50 29 5c 73 72 63 5c 77 68 65 72 .$(TOP)\src\wher
c560: 65 63 6f 64 65 2e 63 20 24 28 48 44 52 29 0a 09  ecode.c $(HDR).. c570: 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43$(LTCOMPILE) $(C c580: 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 ORE_COMPILE_OPTS c590: 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72 63 5c ) -c$(TOP)\src\
c5a0: 77 68 65 72 65 63 6f 64 65 2e 63 0a 0a 77 68 65  wherecode.c..whe
c5b0: 72 65 65 78 70 72 2e 6c 6f 3a 09 24 28 54 4f 50  reexpr.lo:.$(TOP c5c0: 29 5c 73 72 63 5c 77 68 65 72 65 65 78 70 72 2e )\src\whereexpr. c5d0: 63 20 24 28 48 44 52 29 0a 09 24 28 4c 54 43 4f c$(HDR)..$(LTCO c5e0: 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f MPILE)$(CORE_CO
c5f0: 4d 50 49 4c 45 5f 4f 50 54 53 29 20 2d 63 20 24  MPILE_OPTS) -c $c600: 28 54 4f 50 29 5c 73 72 63 5c 77 68 65 72 65 65 (TOP)\src\wheree c610: 78 70 72 2e 63 0a 0a 74 63 6c 73 71 6c 69 74 65 xpr.c..tclsqlite c620: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c .lo:.$(TOP)\src\
c630: 74 63 6c 73 71 6c 69 74 65 2e 63 20 24 28 48 44  tclsqlite.c $(HD c640: 52 29 20 73 71 6c 69 74 65 5f 74 63 6c 2e 68 0a R) sqlite_tcl.h. c650: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 .$(LTCOMPILE) $( c660: 4e 4f 5f 57 41 52 4e 29 20 2d 44 55 53 45 5f 54 NO_WARN) -DUSE_T c670: 43 4c 5f 53 54 55 42 53 3d 31 20 2d 44 42 55 49 CL_STUBS=1 -DBUI c680: 4c 44 5f 73 71 6c 69 74 65 20 2d 49 24 28 54 43 LD_sqlite -I$(TC
c690: 4c 49 4e 43 44 49 52 29 20 2d 63 20 24 28 54 4f  LINCDIR) -c $(TO c6a0: 50 29 5c 73 72 63 5c 74 63 6c 73 71 6c 69 74 65 P)\src\tclsqlite c6b0: 2e 63 0a 0a 74 63 6c 73 71 6c 69 74 65 2d 73 68 .c..tclsqlite-sh c6c0: 65 6c 6c 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 73 ell.lo:.$(TOP)\s
c6d0: 72 63 5c 74 63 6c 73 71 6c 69 74 65 2e 63 20 24  rc\tclsqlite.c $c6e0: 28 48 44 52 29 20 73 71 6c 69 74 65 5f 74 63 6c (HDR) sqlite_tcl c6f0: 2e 68 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 .h..$(LTCOMPILE)
c700: 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 54 43   $(NO_WARN) -DTC c710: 4c 53 48 3d 31 20 2d 44 42 55 49 4c 44 5f 73 71 LSH=1 -DBUILD_sq c720: 6c 69 74 65 20 2d 49 24 28 54 43 4c 49 4e 43 44 lite -I$(TCLINCD
c730: 49 52 29 20 2d 63 20 24 28 54 4f 50 29 5c 73 72  IR) -c $(TOP)\sr c740: 63 5c 74 63 6c 73 71 6c 69 74 65 2e 63 0a 0a 74 c\tclsqlite.c..t c750: 63 6c 73 71 6c 69 74 65 33 2e 65 78 65 3a 09 74 clsqlite3.exe:.t c760: 63 6c 73 71 6c 69 74 65 2d 73 68 65 6c 6c 2e 6c clsqlite-shell.l c770: 6f 20 24 28 53 51 4c 49 54 45 33 43 29 20 24 28 o$(SQLITE3C) $( c780: 53 51 4c 49 54 45 33 48 29 20 24 28 4c 49 42 52 SQLITE3H)$(LIBR
c790: 45 53 4f 42 4a 53 29 0a 09 24 28 4c 54 4c 49 4e  ESOBJS)..$(LTLIN c7a0: 4b 29 20 24 28 53 51 4c 49 54 45 33 43 29 20 2f K)$(SQLITE3C) /
c7b0: 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 47 53 29 20  link $(LDFLAGS) c7c0: 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 24 28$(LTLINKOPTS) $( c7d0: 4c 54 4c 49 42 50 41 54 48 53 29 20 2f 4f 55 54 LTLIBPATHS) /OUT c7e0: 3a 24 40 20 74 63 6c 73 71 6c 69 74 65 2d 73 68 :$@ tclsqlite-sh
c7f0: 65 6c 6c 2e 6c 6f 20 24 28 4c 49 42 52 45 53 4f  ell.lo $(LIBRESO c800: 42 4a 53 29 20 24 28 4c 54 4c 49 42 53 29 20 24 BJS)$(LTLIBS) $c810: 28 54 4c 49 42 53 29 0a 0a 23 20 52 75 6c 65 73 (TLIBS)..# Rules c820: 20 74 6f 20 62 75 69 6c 64 20 6f 70 63 6f 64 65 to build opcode c830: 73 2e 63 20 61 6e 64 20 6f 70 63 6f 64 65 73 2e s.c and opcodes. c840: 68 0a 23 0a 6f 70 63 6f 64 65 73 2e 63 3a 09 6f h.#.opcodes.c:.o c850: 70 63 6f 64 65 73 2e 68 20 24 28 54 4f 50 29 5c pcodes.h$(TOP)\
c860: 74 6f 6f 6c 5c 6d 6b 6f 70 63 6f 64 65 63 2e 74  tool\mkopcodec.t
c870: 63 6c 0a 09 24 28 54 43 4c 53 48 5f 43 4d 44 29  cl..$(TCLSH_CMD) c880: 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6d 6b 6f$(TOP)\tool\mko
c890: 70 63 6f 64 65 63 2e 74 63 6c 20 6f 70 63 6f 64  pcodec.tcl opcod
c8a0: 65 73 2e 68 20 3e 20 6f 70 63 6f 64 65 73 2e 63  es.h > opcodes.c
c8b0: 0a 0a 6f 70 63 6f 64 65 73 2e 68 3a 09 70 61 72  ..opcodes.h:.par
c8c0: 73 65 2e 68 20 24 28 54 4f 50 29 5c 73 72 63 5c  se.h $(TOP)\src\ c8d0: 76 64 62 65 2e 63 20 24 28 54 4f 50 29 5c 74 6f vdbe.c$(TOP)\to
c8e0: 6f 6c 5c 6d 6b 6f 70 63 6f 64 65 68 2e 74 63 6c  ol\mkopcodeh.tcl
c8f0: 0a 09 74 79 70 65 20 70 61 72 73 65 2e 68 20 24  ..type parse.h $c900: 28 54 4f 50 29 5c 73 72 63 5c 76 64 62 65 2e 63 (TOP)\src\vdbe.c c910: 20 7c 20 24 28 54 43 4c 53 48 5f 43 4d 44 29 20 |$(TCLSH_CMD)
c920: 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6d 6b 6f 70  $(TOP)\tool\mkop c930: 63 6f 64 65 68 2e 74 63 6c 20 3e 20 6f 70 63 6f codeh.tcl > opco c940: 64 65 73 2e 68 0a 0a 23 20 52 75 6c 65 73 20 74 des.h..# Rules t c950: 6f 20 62 75 69 6c 64 20 70 61 72 73 65 2e 63 20 o build parse.c c960: 61 6e 64 20 70 61 72 73 65 2e 68 20 2d 20 74 68 and parse.h - th c970: 65 20 6f 75 74 70 75 74 73 20 6f 66 20 6c 65 6d e outputs of lem c980: 6f 6e 2e 0a 23 0a 70 61 72 73 65 2e 68 3a 09 70 on..#.parse.h:.p c990: 61 72 73 65 2e 63 0a 0a 70 61 72 73 65 2e 63 3a arse.c..parse.c: c9a0: 09 24 28 54 4f 50 29 5c 73 72 63 5c 70 61 72 73 .$(TOP)\src\pars
c9b0: 65 2e 79 20 6c 65 6d 6f 6e 2e 65 78 65 20 24 28  e.y lemon.exe $( c9c0: 54 4f 50 29 5c 74 6f 6f 6c 5c 61 64 64 6f 70 63 TOP)\tool\addopc c9d0: 6f 64 65 73 2e 74 63 6c 0a 09 64 65 6c 20 2f 51 odes.tcl..del /Q c9e0: 20 70 61 72 73 65 2e 79 20 70 61 72 73 65 2e 68 parse.y parse.h c9f0: 20 70 61 72 73 65 2e 68 2e 74 65 6d 70 20 32 3e parse.h.temp 2> ca00: 4e 55 4c 0a 09 63 6f 70 79 20 24 28 54 4f 50 29 NUL..copy$(TOP)
ca10: 5c 73 72 63 5c 70 61 72 73 65 2e 79 20 2e 0a 09  \src\parse.y ...
ca20: 2e 5c 6c 65 6d 6f 6e 2e 65 78 65 20 24 28 52 45  .\lemon.exe $(RE ca30: 51 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 29 Q_FEATURE_FLAGS) ca40: 20 24 28 4f 50 54 5f 46 45 41 54 55 52 45 5f 46$(OPT_FEATURE_F
ca50: 4c 41 47 53 29 20 24 28 45 58 54 5f 46 45 41 54  LAGS) $(EXT_FEAT ca60: 55 52 45 5f 46 4c 41 47 53 29 20 24 28 4f 50 54 URE_FLAGS)$(OPT
ca70: 53 29 20 70 61 72 73 65 2e 79 0a 09 6d 6f 76 65  S) parse.y..move
ca80: 20 70 61 72 73 65 2e 68 20 70 61 72 73 65 2e 68   parse.h parse.h
ca90: 2e 74 65 6d 70 0a 09 24 28 54 43 4c 53 48 5f 43  .temp..$(TCLSH_C caa0: 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c MD)$(TOP)\tool\
cab0: 61 64 64 6f 70 63 6f 64 65 73 2e 74 63 6c 20 70  addopcodes.tcl p
cac0: 61 72 73 65 2e 68 2e 74 65 6d 70 20 3e 20 70 61  arse.h.temp > pa
cad0: 72 73 65 2e 68 0a 0a 24 28 53 51 4c 49 54 45 33  rse.h..$(SQLITE3 cae0: 48 29 3a 09 24 28 54 4f 50 29 5c 73 72 63 5c 73 H):.$(TOP)\src\s
caf0: 71 6c 69 74 65 2e 68 2e 69 6e 20 24 28 54 4f 50  qlite.h.in $(TOP cb00: 29 5c 6d 61 6e 69 66 65 73 74 2e 75 75 69 64 20 )\manifest.uuid cb10: 24 28 54 4f 50 29 5c 56 45 52 53 49 4f 4e 0a 09$(TOP)\VERSION..
cb20: 24 28 54 43 4c 53 48 5f 43 4d 44 29 20 24 28 54  $(TCLSH_CMD)$(T
cb30: 4f 50 29 5c 74 6f 6f 6c 5c 6d 6b 73 71 6c 69 74  OP)\tool\mksqlit
cb40: 65 33 68 2e 74 63 6c 20 24 28 54 4f 50 3a 5c 3d  e3h.tcl $(TOP:\= cb50: 2f 29 20 3e 20 24 28 53 51 4c 49 54 45 33 48 29 /) >$(SQLITE3H)
cb60: 0a 0a 73 71 6c 69 74 65 33 65 78 74 2e 68 3a 09  ..sqlite3ext.h:.
cb70: 2e 74 61 72 67 65 74 5f 73 6f 75 72 63 65 0a 09  .target_source..
cb80: 63 6f 70 79 20 74 73 72 63 5c 73 71 6c 69 74 65  copy tsrc\sqlite
cb90: 33 65 78 74 2e 68 20 2e 0a 0a 6d 6b 6b 65 79 77  3ext.h ...mkkeyw
cba0: 6f 72 64 68 61 73 68 2e 65 78 65 3a 09 24 28 54  ordhash.exe:.$(T cbb0: 4f 50 29 5c 74 6f 6f 6c 5c 6d 6b 6b 65 79 77 6f OP)\tool\mkkeywo cbc0: 72 64 68 61 73 68 2e 63 0a 09 24 28 42 43 43 29 rdhash.c..$(BCC)
cbd0: 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 46 65 24   $(NO_WARN) -Fe$
cbe0: 40 20 24 28 52 45 51 5f 46 45 41 54 55 52 45 5f  @ $(REQ_FEATURE_ cbf0: 46 4c 41 47 53 29 20 24 28 4f 50 54 5f 46 45 41 FLAGS)$(OPT_FEA
cc00: 54 55 52 45 5f 46 4c 41 47 53 29 20 24 28 45 58  TURE_FLAGS) $(EX cc10: 54 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 29 T_FEATURE_FLAGS) cc20: 20 24 28 4f 50 54 53 29 20 5c 0a 09 09 24 28 54$(OPTS) \...$(T cc30: 4f 50 29 5c 74 6f 6f 6c 5c 6d 6b 6b 65 79 77 6f OP)\tool\mkkeywo cc40: 72 64 68 61 73 68 2e 63 20 2f 6c 69 6e 6b 20 24 rdhash.c /link$
cc50: 28 4c 44 46 4c 41 47 53 29 20 24 28 4e 4c 54 4c  (LDFLAGS) $(NLTL cc60: 49 4e 4b 4f 50 54 53 29 20 24 28 4e 4c 54 4c 49 INKOPTS)$(NLTLI
cc70: 42 50 41 54 48 53 29 0a 0a 6b 65 79 77 6f 72 64  BPATHS)..keyword
cc80: 68 61 73 68 2e 68 3a 09 24 28 54 4f 50 29 5c 74  hash.h:.$(TOP)\t cc90: 6f 6f 6c 5c 6d 6b 6b 65 79 77 6f 72 64 68 61 73 ool\mkkeywordhas cca0: 68 2e 63 20 6d 6b 6b 65 79 77 6f 72 64 68 61 73 h.c mkkeywordhas ccb0: 68 2e 65 78 65 0a 09 2e 5c 6d 6b 6b 65 79 77 6f h.exe...\mkkeywo ccc0: 72 64 68 61 73 68 2e 65 78 65 20 3e 20 6b 65 79 rdhash.exe > key ccd0: 77 6f 72 64 68 61 73 68 2e 68 0a 0a 0a 0a 23 20 wordhash.h....# cce0: 52 75 6c 65 73 20 74 6f 20 62 75 69 6c 64 20 74 Rules to build t ccf0: 68 65 20 65 78 74 65 6e 73 69 6f 6e 20 6f 62 6a he extension obj cd00: 65 63 74 73 2e 0a 23 0a 69 63 75 2e 6c 6f 3a 09 ects..#.icu.lo:. cd10: 24 28 54 4f 50 29 5c 65 78 74 5c 69 63 75 5c 69$(TOP)\ext\icu\i
cd20: 63 75 2e 63 20 24 28 48 44 52 29 20 24 28 45 58  cu.c $(HDR)$(EX
cd30: 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49  THDR)..$(LTCOMPI cd40: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 LE)$(CORE_COMPI
cd50: 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57 41  LE_OPTS) $(NO_WA cd60: 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 RN) -DSQLITE_COR cd70: 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c E -c$(TOP)\ext\
cd80: 69 63 75 5c 69 63 75 2e 63 0a 0a 66 74 73 32 2e  icu\icu.c..fts2.
cd90: 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66  lo:.$(TOP)\ext\f cda0: 74 73 32 5c 66 74 73 32 2e 63 20 24 28 48 44 52 ts2\fts2.c$(HDR
cdb0: 29 20 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c  ) $(EXTHDR)..$(L
cdc0: 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45  TCOMPILE) $(CORE cdd0: 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24 _COMPILE_OPTS)$
cde0: 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49  (NO_WARN) -DSQLI
cdf0: 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50  TE_CORE -c $(TOP ce00: 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32 2e )\ext\fts2\fts2. ce10: 63 0a 0a 66 74 73 32 5f 68 61 73 68 2e 6c 6f 3a c..fts2_hash.lo: ce20: 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 .$(TOP)\ext\fts2
ce30: 5c 66 74 73 32 5f 68 61 73 68 2e 63 20 24 28 48  \fts2_hash.c $(H ce40: 44 52 29 20 24 28 45 58 54 48 44 52 29 0a 09 24 DR)$(EXTHDR)..$ce50: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f (LTCOMPILE)$(CO
ce60: 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29  RE_COMPILE_OPTS)
ce70: 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51   $(NO_WARN) -DSQ ce80: 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 LITE_CORE -c$(T
ce90: 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73  OP)\ext\fts2\fts
cea0: 32 5f 68 61 73 68 2e 63 0a 0a 66 74 73 32 5f 69  2_hash.c..fts2_i
ceb0: 63 75 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78  cu.lo:.$(TOP)\ex cec0: 74 5c 66 74 73 32 5c 66 74 73 32 5f 69 63 75 2e t\fts2\fts2_icu. ced0: 63 20 24 28 48 44 52 29 20 24 28 45 58 54 48 44 c$(HDR) $(EXTHD cee0: 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 R)..$(LTCOMPILE)
cef0: 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f   $(CORE_COMPILE_ cf00: 4f 50 54 53 29 20 24 28 4e 4f 5f 57 41 52 4e 29 OPTS)$(NO_WARN)
cf10: 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d   -DSQLITE_CORE -
cf20: 63 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73  c $(TOP)\ext\fts cf30: 32 5c 66 74 73 32 5f 69 63 75 2e 63 0a 0a 66 74 2\fts2_icu.c..ft cf40: 73 32 5f 70 6f 72 74 65 72 2e 6c 6f 3a 09 24 28 s2_porter.lo:.$(
cf50: 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 74  TOP)\ext\fts2\ft
cf60: 73 32 5f 70 6f 72 74 65 72 2e 63 20 24 28 48 44  s2_porter.c $(HD cf70: 52 29 20 24 28 45 58 54 48 44 52 29 0a 09 24 28 R)$(EXTHDR)..$( cf80: 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 LTCOMPILE)$(COR
cf90: 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20  E_COMPILE_OPTS)
cfa0: 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c  $(NO_WARN) -DSQL cfb0: 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f ITE_CORE -c$(TO
cfc0: 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 73 32  P)\ext\fts2\fts2
cfd0: 5f 70 6f 72 74 65 72 2e 63 0a 0a 66 74 73 32 5f  _porter.c..fts2_
cfe0: 74 6f 6b 65 6e 69 7a 65 72 2e 6c 6f 3a 09 24 28  tokenizer.lo:.$( cff0: 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 74 TOP)\ext\fts2\ft d000: 73 32 5f 74 6f 6b 65 6e 69 7a 65 72 2e 63 20 24 s2_tokenizer.c$
d010: 28 48 44 52 29 20 24 28 45 58 54 48 44 52 29 0a  (HDR) $(EXTHDR). d020: 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 .$(LTCOMPILE) $( d030: 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 CORE_COMPILE_OPT d040: 53 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 S)$(NO_WARN) -D
d050: 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20 24  SQLITE_CORE -c $d060: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 32 5c 66 (TOP)\ext\fts2\f d070: 74 73 32 5f 74 6f 6b 65 6e 69 7a 65 72 2e 63 0a ts2_tokenizer.c. d080: 0a 66 74 73 32 5f 74 6f 6b 65 6e 69 7a 65 72 31 .fts2_tokenizer1 d090: 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c .lo:.$(TOP)\ext\
d0a0: 66 74 73 32 5c 66 74 73 32 5f 74 6f 6b 65 6e 69  fts2\fts2_tokeni
d0b0: 7a 65 72 31 2e 63 20 24 28 48 44 52 29 20 24 28  zer1.c $(HDR)$(
d0c0: 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d  EXTHDR)..$(LTCOM d0d0: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d PILE)$(CORE_COM
d0e0: 50 49 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f  PILE_OPTS) $(NO_ d0f0: 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43 WARN) -DSQLITE_C d100: 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 ORE -c$(TOP)\ex
d110: 74 5c 66 74 73 32 5c 66 74 73 32 5f 74 6f 6b 65  t\fts2\fts2_toke
d120: 6e 69 7a 65 72 31 2e 63 0a 0a 66 74 73 33 2e 6c  nizer1.c..fts3.l
d130: 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 74  o:.$(TOP)\ext\ft d140: 73 33 5c 66 74 73 33 2e 63 20 24 28 48 44 52 29 s3\fts3.c$(HDR)
d150: 20 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54   $(EXTHDR)..$(LT
d160: 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f  COMPILE) $(CORE_ d170: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24 28 COMPILE_OPTS)$(
d180: 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 54  NO_WARN) -DSQLIT
d190: 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 29  E_CORE -c $(TOP) d1a0: 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 2e 63 \ext\fts3\fts3.c d1b0: 0a 0a 66 74 73 33 5f 61 75 78 2e 6c 6f 3a 09 24 ..fts3_aux.lo:.$
d1c0: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66  (TOP)\ext\fts3\f
d1d0: 74 73 33 5f 61 75 78 2e 63 20 24 28 48 44 52 29  ts3_aux.c $(HDR) d1e0: 20 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54$(EXTHDR)..$(LT d1f0: 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f COMPILE)$(CORE_
d200: 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24 28  COMPILE_OPTS) $( d210: 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 NO_WARN) -DSQLIT d220: 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 E_CORE -c$(TOP)
d230: 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 61  \ext\fts3\fts3_a
d240: 75 78 2e 63 0a 0a 66 74 73 33 5f 65 78 70 72 2e  ux.c..fts3_expr.
d250: 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 66  lo:.$(TOP)\ext\f d260: 74 73 33 5c 66 74 73 33 5f 65 78 70 72 2e 63 20 ts3\fts3_expr.c d270: 24 28 48 44 52 29 20 24 28 45 58 54 48 44 52 29$(HDR) $(EXTHDR) d280: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 ..$(LTCOMPILE) $d290: 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 (CORE_COMPILE_OP d2a0: 54 53 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d TS)$(NO_WARN) -
d2b0: 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20  DSQLITE_CORE -c
d2c0: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c  $(TOP)\ext\fts3\ d2d0: 66 74 73 33 5f 65 78 70 72 2e 63 0a 0a 66 74 73 fts3_expr.c..fts d2e0: 33 5f 68 61 73 68 2e 6c 6f 3a 09 24 28 54 4f 50 3_hash.lo:.$(TOP
d2f0: 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f  )\ext\fts3\fts3_
d300: 68 61 73 68 2e 63 20 24 28 48 44 52 29 20 24 28  hash.c $(HDR)$(
d310: 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d  EXTHDR)..$(LTCOM d320: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d PILE)$(CORE_COM
d330: 50 49 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f  PILE_OPTS) $(NO_ d340: 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43 WARN) -DSQLITE_C d350: 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 ORE -c$(TOP)\ex
d360: 74 5c 66 74 73 33 5c 66 74 73 33 5f 68 61 73 68  t\fts3\fts3_hash
d370: 2e 63 0a 0a 66 74 73 33 5f 69 63 75 2e 6c 6f 3a  .c..fts3_icu.lo:
d380: 09 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33  .$(TOP)\ext\fts3 d390: 5c 66 74 73 33 5f 69 63 75 2e 63 20 24 28 48 44 \fts3_icu.c$(HD
d3a0: 52 29 20 24 28 45 58 54 48 44 52 29 0a 09 24 28  R) $(EXTHDR)..$(
d3b0: 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52  LTCOMPILE) $(COR d3c0: 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 E_COMPILE_OPTS) d3d0: 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c$(NO_WARN) -DSQL
d3e0: 49 54 45 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f  ITE_CORE -c $(TO d3f0: 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 P)\ext\fts3\fts3 d400: 5f 69 63 75 2e 63 0a 0a 66 74 73 33 5f 73 6e 69 _icu.c..fts3_sni d410: 70 70 65 74 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c ppet.lo:.$(TOP)\
d420: 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 73 6e  ext\fts3\fts3_sn
d430: 69 70 70 65 74 2e 63 20 24 28 48 44 52 29 20 24  ippet.c $(HDR)$
d440: 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f  (EXTHDR)..$(LTCO d450: 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f MPILE)$(CORE_CO
d460: 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f  MPILE_OPTS) $(NO d470: 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f _WARN) -DSQLITE_ d480: 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 CORE -c$(TOP)\e
d490: 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 73 6e 69  xt\fts3\fts3_sni
d4a0: 70 70 65 74 2e 63 0a 0a 66 74 73 33 5f 70 6f 72  ppet.c..fts3_por
d4b0: 74 65 72 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65  ter.lo:.$(TOP)\e d4c0: 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 70 6f 72 xt\fts3\fts3_por d4d0: 74 65 72 2e 63 20 24 28 48 44 52 29 20 24 28 45 ter.c$(HDR) $(E d4e0: 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 XTHDR)..$(LTCOMP
d4f0: 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50  ILE) $(CORE_COMP d500: 49 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57 ILE_OPTS)$(NO_W
d510: 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f  ARN) -DSQLITE_CO
d520: 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74  RE -c $(TOP)\ext d530: 5c 66 74 73 33 5c 66 74 73 33 5f 70 6f 72 74 65 \fts3\fts3_porte d540: 72 2e 63 0a 0a 66 74 73 33 5f 74 6f 6b 65 6e 69 r.c..fts3_tokeni d550: 7a 65 72 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 zer.lo:.$(TOP)\e
d560: 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 74 6f 6b  xt\fts3\fts3_tok
d570: 65 6e 69 7a 65 72 2e 63 20 24 28 48 44 52 29 20  enizer.c $(HDR) d580: 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43$(EXTHDR)..$(LTC d590: 4f 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 OMPILE)$(CORE_C
d5a0: 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24 28 4e  OMPILE_OPTS) $(N d5b0: 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 O_WARN) -DSQLITE d5c0: 5f 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 5c _CORE -c$(TOP)\
d5d0: 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 74 6f  ext\fts3\fts3_to
d5e0: 6b 65 6e 69 7a 65 72 2e 63 0a 0a 66 74 73 33 5f  kenizer.c..fts3_
d5f0: 74 6f 6b 65 6e 69 7a 65 72 31 2e 6c 6f 3a 09 24  tokenizer1.lo:.$d600: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c 66 (TOP)\ext\fts3\f d610: 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 72 31 2e 63 ts3_tokenizer1.c d620: 20 24 28 48 44 52 29 20 24 28 45 58 54 48 44 52$(HDR) $(EXTHDR d630: 29 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 )..$(LTCOMPILE)
d640: 24 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f  $(CORE_COMPILE_O d650: 50 54 53 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 PTS)$(NO_WARN)
d660: 2d 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63  -DSQLITE_CORE -c
d670: 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33   $(TOP)\ext\fts3 d680: 5c 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 72 31 \fts3_tokenizer1 d690: 2e 63 0a 0a 66 74 73 33 5f 74 6f 6b 65 6e 69 7a .c..fts3_tokeniz d6a0: 65 5f 76 74 61 62 2e 6c 6f 3a 09 24 28 54 4f 50 e_vtab.lo:.$(TOP
d6b0: 29 5c 65 78 74 5c 66 74 73 33 5c 66 74 73 33 5f  )\ext\fts3\fts3_
d6c0: 74 6f 6b 65 6e 69 7a 65 5f 76 74 61 62 2e 63 20  tokenize_vtab.c
d6d0: 24 28 48 44 52 29 20 24 28 45 58 54 48 44 52 29  $(HDR)$(EXTHDR)
d6e0: 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24  ..$(LTCOMPILE)$
d6f0: 28 43 4f 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50  (CORE_COMPILE_OP
d700: 54 53 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d  TS) $(NO_WARN) - d710: 44 53 51 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20 DSQLITE_CORE -c d720: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 33 5c$(TOP)\ext\fts3\
d730: 66 74 73 33 5f 74 6f 6b 65 6e 69 7a 65 5f 76 74  fts3_tokenize_vt
d740: 61 62 2e 63 0a 0a 66 74 73 33 5f 75 6e 69 63 6f  ab.c..fts3_unico
d750: 64 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 78  de.lo:.$(TOP)\ex d760: 74 5c 66 74 73 33 5c 66 74 73 33 5f 75 6e 69 63 t\fts3\fts3_unic d770: 6f 64 65 2e 63 20 24 28 48 44 52 29 20 24 28 45 ode.c$(HDR) $(E d780: 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 XTHDR)..$(LTCOMP
d790: 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50  ILE) $(CORE_COMP d7a0: 49 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57 ILE_OPTS)$(NO_W
d7b0: 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f  ARN) -DSQLITE_CO
d7c0: 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74  RE -c $(TOP)\ext d7d0: 5c 66 74 73 33 5c 66 74 73 33 5f 75 6e 69 63 6f \fts3\fts3_unico d7e0: 64 65 2e 63 0a 0a 66 74 73 33 5f 75 6e 69 63 6f de.c..fts3_unico d7f0: 64 65 32 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65 de2.lo:.$(TOP)\e
d800: 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 75 6e 69  xt\fts3\fts3_uni
d810: 63 6f 64 65 32 2e 63 20 24 28 48 44 52 29 20 24  code2.c $(HDR)$
d820: 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f  (EXTHDR)..$(LTCO d830: 4d 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f MPILE)$(CORE_CO
d840: 4d 50 49 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f  MPILE_OPTS) $(NO d850: 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f _WARN) -DSQLITE_ d860: 43 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 CORE -c$(TOP)\e
d870: 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 75 6e 69  xt\fts3\fts3_uni
d880: 63 6f 64 65 32 2e 63 0a 0a 66 74 73 33 5f 77 72  code2.c..fts3_wr
d890: 69 74 65 2e 6c 6f 3a 09 24 28 54 4f 50 29 5c 65  ite.lo:.$(TOP)\e d8a0: 78 74 5c 66 74 73 33 5c 66 74 73 33 5f 77 72 69 xt\fts3\fts3_wri d8b0: 74 65 2e 63 20 24 28 48 44 52 29 20 24 28 45 58 te.c$(HDR) $(EX d8c0: 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50 49 THDR)..$(LTCOMPI
d8d0: 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 49  LE) $(CORE_COMPI d8e0: 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57 41 LE_OPTS)$(NO_WA
d8f0: 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f 52  RN) -DSQLITE_COR
d900: 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 5c  E -c $(TOP)\ext\ d910: 66 74 73 33 5c 66 74 73 33 5f 77 72 69 74 65 2e fts3\fts3_write. d920: 63 0a 0a 72 74 72 65 65 2e 6c 6f 3a 09 24 28 54 c..rtree.lo:.$(T
d930: 4f 50 29 5c 65 78 74 5c 72 74 72 65 65 5c 72 74  OP)\ext\rtree\rt
d940: 72 65 65 2e 63 20 24 28 48 44 52 29 20 24 28 45  ree.c $(HDR)$(E
d950: 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d 50  XTHDR)..$(LTCOMP d960: 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d 50 ILE)$(CORE_COMP
d970: 49 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f 57  ILE_OPTS) $(NO_W d980: 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f ARN) -DSQLITE_CO d990: 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 74 RE -c$(TOP)\ext
d9a0: 5c 72 74 72 65 65 5c 72 74 72 65 65 2e 63 0a 0a  \rtree\rtree.c..
d9b0: 73 71 6c 69 74 65 33 73 65 73 73 69 6f 6e 2e 6c  sqlite3session.l
d9c0: 6f 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 73 65  o:.$(TOP)\ext\se d9d0: 73 73 69 6f 6e 5c 73 71 6c 69 74 65 33 73 65 73 ssion\sqlite3ses d9e0: 73 69 6f 6e 2e 63 20 24 28 48 44 52 29 20 24 28 sion.c$(HDR) $( d9f0: 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d EXTHDR)..$(LTCOM
da00: 50 49 4c 45 29 20 24 28 43 4f 52 45 5f 43 4f 4d  PILE) $(CORE_COM da10: 50 49 4c 45 5f 4f 50 54 53 29 20 24 28 4e 4f 5f PILE_OPTS)$(NO_
da20: 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 43  WARN) -DSQLITE_C
da30: 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78  ORE -c $(TOP)\ex da40: 74 5c 73 65 73 73 69 6f 6e 5c 73 71 6c 69 74 65 t\session\sqlite da50: 33 73 65 73 73 69 6f 6e 2e 63 0a 0a 23 20 46 54 3session.c..# FT da60: 53 35 20 74 68 69 6e 67 73 0a 23 0a 46 54 53 35 S5 things.#.FTS5 da70: 5f 53 52 43 20 3d 20 5c 0a 20 20 20 24 28 54 4f _SRC = \.$(TO
da80: 50 29 5c 65 78 74 5c 66 74 73 35 5c 66 74 73 35  P)\ext\fts5\fts5
da90: 2e 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65  .h \.   $(TOP)\e daa0: 78 74 5c 66 74 73 35 5c 66 74 73 35 49 6e 74 2e xt\fts5\fts5Int. dab0: 68 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65 78 h \.$(TOP)\ex
dac0: 74 5c 66 74 73 35 5c 66 74 73 35 5f 61 75 78 2e  t\fts5\fts5_aux.
dad0: 63 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65 78  c \.   $(TOP)\ex dae0: 74 5c 66 74 73 35 5c 66 74 73 35 5f 62 75 66 66 t\fts5\fts5_buff daf0: 65 72 2e 63 20 5c 0a 20 20 20 24 28 54 4f 50 29 er.c \.$(TOP)
db00: 5c 65 78 74 5c 66 74 73 35 5c 66 74 73 35 5f 6d  \ext\fts5\fts5_m
db10: 61 69 6e 2e 63 20 5c 0a 20 20 20 24 28 54 4f 50  ain.c \.   $(TOP db20: 29 5c 65 78 74 5c 66 74 73 35 5c 66 74 73 35 5f )\ext\fts5\fts5_ db30: 63 6f 6e 66 69 67 2e 63 20 5c 0a 20 20 20 24 28 config.c \.$(
db40: 54 4f 50 29 5c 65 78 74 5c 66 74 73 35 5c 66 74  TOP)\ext\fts5\ft
db50: 73 35 5f 65 78 70 72 2e 63 20 5c 0a 20 20 20 24  s5_expr.c \.   $db60: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 35 5c 66 (TOP)\ext\fts5\f db70: 74 73 35 5f 68 61 73 68 2e 63 20 5c 0a 20 20 20 ts5_hash.c \. db80: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 35 5c$(TOP)\ext\fts5\
db90: 66 74 73 35 5f 69 6e 64 65 78 2e 63 20 5c 0a 20  fts5_index.c \.
dba0: 20 20 66 74 73 35 70 61 72 73 65 2e 63 20 66 74    fts5parse.c ft
dbb0: 73 35 70 61 72 73 65 2e 68 20 5c 0a 20 20 20 24  s5parse.h \.   $dbc0: 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 35 5c 66 (TOP)\ext\fts5\f dbd0: 74 73 35 5f 73 74 6f 72 61 67 65 2e 63 20 5c 0a ts5_storage.c \. dbe0: 20 20 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74$(TOP)\ext\ft
dbf0: 73 35 5c 66 74 73 35 5f 74 6f 6b 65 6e 69 7a 65  s5\fts5_tokenize
dc00: 2e 63 20 5c 0a 20 20 20 24 28 54 4f 50 29 5c 65  .c \.   $(TOP)\e dc10: 78 74 5c 66 74 73 35 5c 66 74 73 35 5f 75 6e 69 xt\fts5\fts5_uni dc20: 63 6f 64 65 32 2e 63 20 5c 0a 20 20 20 24 28 54 code2.c \.$(T
dc30: 4f 50 29 5c 65 78 74 5c 66 74 73 35 5c 66 74 73  OP)\ext\fts5\fts
dc40: 35 5f 76 61 72 69 6e 74 2e 63 20 5c 0a 20 20 20  5_varint.c \.
dc50: 24 28 54 4f 50 29 5c 65 78 74 5c 66 74 73 35 5c  $(TOP)\ext\fts5\ dc60: 66 74 73 35 5f 76 6f 63 61 62 2e 63 0a 0a 66 74 fts5_vocab.c..ft dc70: 73 35 70 61 72 73 65 2e 63 3a 09 24 28 54 4f 50 s5parse.c:.$(TOP
dc80: 29 5c 65 78 74 5c 66 74 73 35 5c 66 74 73 35 70  )\ext\fts5\fts5p
dc90: 61 72 73 65 2e 79 20 6c 65 6d 6f 6e 2e 65 78 65  arse.y lemon.exe
dca0: 0a 09 63 6f 70 79 20 24 28 54 4f 50 29 5c 65 78  ..copy $(TOP)\ex dcb0: 74 5c 66 74 73 35 5c 66 74 73 35 70 61 72 73 65 t\fts5\fts5parse dcc0: 2e 79 20 2e 0a 09 64 65 6c 20 2f 51 20 66 74 73 .y ...del /Q fts dcd0: 35 70 61 72 73 65 2e 68 20 32 3e 4e 55 4c 0a 09 5parse.h 2>NUL.. dce0: 2e 5c 6c 65 6d 6f 6e 2e 65 78 65 20 24 28 52 45 .\lemon.exe$(RE
dcf0: 51 5f 46 45 41 54 55 52 45 5f 46 4c 41 47 53 29  Q_FEATURE_FLAGS)
dd00: 20 24 28 4f 50 54 5f 46 45 41 54 55 52 45 5f 46   $(OPT_FEATURE_F dd10: 4c 41 47 53 29 20 24 28 45 58 54 5f 46 45 41 54 LAGS)$(EXT_FEAT
dd20: 55 52 45 5f 46 4c 41 47 53 29 20 24 28 4f 50 54  URE_FLAGS) $(OPT dd30: 53 29 20 66 74 73 35 70 61 72 73 65 2e 79 0a 0a S) fts5parse.y.. dd40: 66 74 73 35 70 61 72 73 65 2e 68 3a 09 66 74 73 fts5parse.h:.fts dd50: 35 70 61 72 73 65 2e 63 0a 0a 66 74 73 35 2e 63 5parse.c..fts5.c dd60: 3a 09 24 28 46 54 53 35 5f 53 52 43 29 0a 09 24 :.$(FTS5_SRC)..$dd70: 28 54 43 4c 53 48 5f 43 4d 44 29 20 24 28 54 4f (TCLSH_CMD)$(TO
dd80: 50 29 5c 65 78 74 5c 66 74 73 35 5c 74 6f 6f 6c  P)\ext\fts5\tool
dd90: 5c 6d 6b 66 74 73 35 63 2e 74 63 6c 0a 09 63 6f  \mkfts5c.tcl..co
dda0: 70 79 20 24 28 54 4f 50 29 5c 65 78 74 5c 66 74  py $(TOP)\ext\ft ddb0: 73 35 5c 66 74 73 35 2e 68 20 2e 0a 0a 66 74 73 s5\fts5.h ...fts ddc0: 35 2e 6c 6f 3a 09 66 74 73 35 2e 63 20 24 28 48 5.lo:.fts5.c$(H
ddd0: 44 52 29 20 24 28 45 58 54 48 44 52 29 0a 09 24  DR) $(EXTHDR)..$
dde0: 28 4c 54 43 4f 4d 50 49 4c 45 29 20 24 28 43 4f  (LTCOMPILE) $(CO ddf0: 52 45 5f 43 4f 4d 50 49 4c 45 5f 4f 50 54 53 29 RE_COMPILE_OPTS) de00: 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51$(NO_WARN) -DSQ
de10: 4c 49 54 45 5f 43 4f 52 45 20 2d 63 20 66 74 73  LITE_CORE -c fts
de20: 35 2e 63 0a 0a 66 74 73 35 5f 65 78 74 2e 6c 6f  5.c..fts5_ext.lo
de30: 3a 09 66 74 73 35 2e 63 20 24 28 48 44 52 29 20  :.fts5.c $(HDR) de40: 24 28 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43$(EXTHDR)..$(LTC de50: 4f 4d 50 49 4c 45 29 20 24 28 4e 4f 5f 57 41 52 OMPILE)$(NO_WAR
de60: 4e 29 20 2d 63 20 66 74 73 35 2e 63 0a 0a 66 74  N) -c fts5.c..ft
de70: 73 35 2e 64 6c 6c 3a 09 66 74 73 35 5f 65 78 74  s5.dll:.fts5_ext
de80: 2e 6c 6f 0a 09 24 28 4c 44 29 20 24 28 4c 44 46  .lo..$(LD)$(LDF
de90: 4c 41 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50  LAGS) $(LTLINKOP dea0: 54 53 29 20 24 28 4c 54 4c 49 42 50 41 54 48 53 TS)$(LTLIBPATHS
deb0: 29 20 2f 44 4c 4c 20 2f 4f 55 54 3a 24 40 20 66  ) /DLL /OUT:$@ f dec0: 74 73 35 5f 65 78 74 2e 6c 6f 0a 0a 73 71 6c 69 ts5_ext.lo..sqli ded0: 74 65 33 72 62 75 2e 6c 6f 3a 09 24 28 54 4f 50 te3rbu.lo:.$(TOP
dee0: 29 5c 65 78 74 5c 72 62 75 5c 73 71 6c 69 74 65  )\ext\rbu\sqlite
def0: 33 72 62 75 2e 63 20 24 28 48 44 52 29 20 24 28  3rbu.c $(HDR)$(
df00: 45 58 54 48 44 52 29 0a 09 24 28 4c 54 43 4f 4d  EXTHDR)..$(LTCOM df10: 50 49 4c 45 29 20 2d 44 53 51 4c 49 54 45 5f 43 PILE) -DSQLITE_C df20: 4f 52 45 20 2d 63 20 24 28 54 4f 50 29 5c 65 78 ORE -c$(TOP)\ex
df30: 74 5c 72 62 75 5c 73 71 6c 69 74 65 33 72 62 75  t\rbu\sqlite3rbu
df40: 2e 63 0a 0a 23 20 52 75 6c 65 73 20 74 6f 20 62  .c..# Rules to b
df50: 75 69 6c 64 20 74 68 65 20 27 74 65 73 74 66 69  uild the 'testfi
df60: 78 74 75 72 65 27 20 61 70 70 6c 69 63 61 74 69  xture' applicati
df70: 6f 6e 2e 0a 23 0a 23 20 49 66 20 75 73 69 6e 67  on..#.# If using
df80: 20 74 68 65 20 61 6d 61 6c 67 61 6d 61 74 69 6f   the amalgamatio
df90: 6e 2c 20 75 73 65 20 73 71 6c 69 74 65 33 2e 63  n, use sqlite3.c
dfa0: 20 64 69 72 65 63 74 6c 79 20 74 6f 20 62 75 69   directly to bui
dfb0: 6c 64 20 74 68 65 20 74 65 73 74 0a 23 20 66 69  ld the test.# fi
dfc0: 78 74 75 72 65 2e 20 20 4f 74 68 65 72 77 69 73  xture.  Otherwis
dfd0: 65 20 6c 69 6e 6b 20 61 67 61 69 6e 73 74 20 6c  e link against l
dfe0: 69 62 73 71 6c 69 74 65 33 2e 6c 69 62 2e 20 20  ibsqlite3.lib.
dff0: 28 54 68 69 73 20 64 69 73 74 69 6e 63 74 69 6f  (This distinctio
e000: 6e 20 69 73 0a 23 20 6e 65 63 65 73 73 61 72 79  n is.# necessary
e010: 20 62 65 63 61 75 73 65 20 74 68 65 20 74 65 73   because the tes
e020: 74 20 66 69 78 74 75 72 65 20 72 65 71 75 69 72  t fixture requir
e030: 65 73 20 6e 6f 6e 2d 41 50 49 20 73 79 6d 62 6f  es non-API symbo
e040: 6c 73 20 77 68 69 63 68 20 61 72 65 0a 23 20 68  ls which are.# h
e050: 69 64 64 65 6e 20 77 68 65 6e 20 74 68 65 20 6c  idden when the l
e060: 69 62 72 61 72 79 20 69 73 20 62 75 69 6c 74 20  ibrary is built
e070: 76 69 61 20 74 68 65 20 61 6d 61 6c 67 61 6d 61  via the amalgama
e080: 74 69 6f 6e 29 2e 0a 23 0a 54 45 53 54 46 49 58  tion)..#.TESTFIX
e090: 54 55 52 45 5f 46 4c 41 47 53 20 3d 20 2d 44 54  TURE_FLAGS = -DT
e0a0: 43 4c 53 48 3d 31 20 2d 44 53 51 4c 49 54 45 5f  CLSH=1 -DSQLITE_
e0b0: 54 45 53 54 3d 31 20 2d 44 53 51 4c 49 54 45 5f  TEST=1 -DSQLITE_
e0c0: 43 52 41 53 48 5f 54 45 53 54 3d 31 0a 54 45 53  CRASH_TEST=1.TES
e0d0: 54 46 49 58 54 55 52 45 5f 46 4c 41 47 53 20 3d  TFIXTURE_FLAGS =
e0e0: 20 24 28 54 45 53 54 46 49 58 54 55 52 45 5f 46   $(TESTFIXTURE_F e0f0: 4c 41 47 53 29 20 2d 44 53 51 4c 49 54 45 5f 53 LAGS) -DSQLITE_S e100: 45 52 56 45 52 3d 31 20 2d 44 53 51 4c 49 54 45 ERVER=1 -DSQLITE e110: 5f 50 52 49 56 41 54 45 3d 22 22 0a 54 45 53 54 _PRIVATE="".TEST e120: 46 49 58 54 55 52 45 5f 46 4c 41 47 53 20 3d 20 FIXTURE_FLAGS = e130: 24 28 54 45 53 54 46 49 58 54 55 52 45 5f 46 4c$(TESTFIXTURE_FL
e140: 41 47 53 29 20 2d 44 53 51 4c 49 54 45 5f 43 4f  AGS) -DSQLITE_CO
e150: 52 45 20 24 28 4e 4f 5f 57 41 52 4e 29 0a 54 45  RE $(NO_WARN).TE e160: 53 54 46 49 58 54 55 52 45 5f 46 4c 41 47 53 20 STFIXTURE_FLAGS e170: 3d 20 24 28 54 45 53 54 46 49 58 54 55 52 45 5f =$(TESTFIXTURE_
e180: 46 4c 41 47 53 29 20 2d 44 53 51 4c 49 54 45 5f  FLAGS) -DSQLITE_
e190: 53 45 52 49 45 53 5f 43 4f 4e 53 54 52 41 49 4e  SERIES_CONSTRAIN
e1a0: 54 5f 56 45 52 49 46 59 3d 31 0a 54 45 53 54 46  T_VERIFY=1.TESTF
e1b0: 49 58 54 55 52 45 5f 46 4c 41 47 53 20 3d 20 24  IXTURE_FLAGS = $e1c0: 28 54 45 53 54 46 49 58 54 55 52 45 5f 46 4c 41 (TESTFIXTURE_FLA e1d0: 47 53 29 20 2d 44 53 51 4c 49 54 45 5f 44 45 46 GS) -DSQLITE_DEF e1e0: 41 55 4c 54 5f 50 41 47 45 5f 53 49 5a 45 3d 31 AULT_PAGE_SIZE=1 e1f0: 30 32 34 0a 54 45 53 54 46 49 58 54 55 52 45 5f 024.TESTFIXTURE_ e200: 46 4c 41 47 53 20 3d 20 24 28 54 45 53 54 46 49 FLAGS =$(TESTFI
e210: 58 54 55 52 45 5f 46 4c 41 47 53 29 20 24 28 54  XTURE_FLAGS) $(T e220: 45 53 54 5f 43 43 4f 4e 56 5f 4f 50 54 53 29 0a EST_CCONV_OPTS). e230: 0a 54 45 53 54 46 49 58 54 55 52 45 5f 53 52 43 .TESTFIXTURE_SRC e240: 30 20 3d 20 24 28 54 45 53 54 45 58 54 29 20 24 0 =$(TESTEXT) $e250: 28 54 45 53 54 53 52 43 32 29 0a 54 45 53 54 46 (TESTSRC2).TESTF e260: 49 58 54 55 52 45 5f 53 52 43 31 20 3d 20 24 28 IXTURE_SRC1 =$(
e270: 54 45 53 54 45 58 54 29 20 24 28 53 51 4c 49 54  TESTEXT) $(SQLIT e280: 45 33 43 29 0a 21 49 46 20 24 28 55 53 45 5f 41 E3C).!IF$(USE_A
e290: 4d 41 4c 47 41 4d 41 54 49 4f 4e 29 3d 3d 30 0a  MALGAMATION)==0.
e2a0: 54 45 53 54 46 49 58 54 55 52 45 5f 53 52 43 20  TESTFIXTURE_SRC
e2b0: 3d 20 24 28 54 45 53 54 53 52 43 29 20 24 28 54  = $(TESTSRC)$(T
e2c0: 4f 50 29 5c 73 72 63 5c 74 63 6c 73 71 6c 69 74  OP)\src\tclsqlit
e2d0: 65 2e 63 20 24 28 54 45 53 54 46 49 58 54 55 52  e.c $(TESTFIXTUR e2e0: 45 5f 53 52 43 30 29 0a 21 45 4c 53 45 0a 54 45 E_SRC0).!ELSE.TE e2f0: 53 54 46 49 58 54 55 52 45 5f 53 52 43 20 3d 20 STFIXTURE_SRC = e300: 24 28 54 45 53 54 53 52 43 29 20 24 28 54 4f 50$(TESTSRC) $(TOP e310: 29 5c 73 72 63 5c 74 63 6c 73 71 6c 69 74 65 2e )\src\tclsqlite. e320: 63 20 24 28 54 45 53 54 46 49 58 54 55 52 45 5f c$(TESTFIXTURE_
e330: 53 52 43 31 29 0a 21 45 4e 44 49 46 0a 0a 73 71  SRC1).!ENDIF..sq
e340: 6c 69 74 65 5f 74 63 6c 44 65 63 6c 73 2e 68 3a  lite_tclDecls.h:
e350: 0a 09 65 63 68 6f 20 23 69 66 6e 64 65 66 20 53  ..echo #ifndef S
e360: 51 4c 49 54 45 5f 54 43 4c 41 50 49 20 3e 20 73  QLITE_TCLAPI > s
e370: 71 6c 69 74 65 5f 74 63 6c 44 65 63 6c 73 2e 68  qlite_tclDecls.h
e380: 0a 09 65 63 68 6f 20 23 20 20 64 65 66 69 6e 65  ..echo #  define
e390: 20 53 51 4c 49 54 45 5f 54 43 4c 41 50 49 20 3e   SQLITE_TCLAPI >
e3a0: 3e 20 73 71 6c 69 74 65 5f 74 63 6c 44 65 63 6c  > sqlite_tclDecl
e3b0: 73 2e 68 0a 09 65 63 68 6f 20 23 65 6e 64 69 66  s.h..echo #endif
e3c0: 20 3e 3e 20 73 71 6c 69 74 65 5f 74 63 6c 44 65   >> sqlite_tclDe
e3d0: 63 6c 73 2e 68 0a 09 74 79 70 65 20 22 24 28 54  cls.h..type "$(T e3e0: 43 4c 49 4e 43 44 49 52 29 5c 74 63 6c 44 65 63 CLINCDIR)\tclDec e3f0: 6c 73 2e 68 22 20 5c 0a 09 09 7c 20 24 28 54 43 ls.h" \...|$(TC
e400: 4c 53 48 5f 43 4d 44 29 20 24 28 54 4f 50 29 5c  LSH_CMD) $(TOP)\ e410: 74 6f 6f 6c 5c 72 65 70 6c 61 63 65 2e 74 63 6c tool\replace.tcl e420: 20 72 65 67 73 75 62 20 22 5e 28 45 58 54 45 52 regsub "^(EXTER e430: 4e 28 3f 3a 20 43 4f 4e 53 54 5c 64 2b 3f 29 3f N(?: CONST\d+?)? e440: 5c 73 2b 3f 5b 5e 5c 28 5d 2a 3f 5c 73 2b 3f 29 \s+?[^\(]*?\s+?) e450: 54 63 6c 5f 22 20 22 5c 31 20 53 51 4c 49 54 45 Tcl_" "\1 SQLITE e460: 5f 54 43 4c 41 50 49 20 54 63 6c 5f 22 20 5c 0a _TCLAPI Tcl_" \. e470: 09 09 7c 20 24 28 54 43 4c 53 48 5f 43 4d 44 29 ..|$(TCLSH_CMD)
e480: 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 72 65 70   $(TOP)\tool\rep e490: 6c 61 63 65 2e 74 63 6c 20 72 65 67 73 75 62 20 lace.tcl regsub e4a0: 22 5e 28 45 58 54 45 52 4e 5c 73 2b 3f 28 3f 3a "^(EXTERN\s+?(?: e4b0: 76 6f 69 64 7c 56 4f 49 44 29 5c 73 2b 3f 29 54 void|VOID)\s+?)T e4c0: 63 6c 46 72 65 65 4f 62 6a 22 20 22 5c 31 20 53 clFreeObj" "\1 S e4d0: 51 4c 49 54 45 5f 54 43 4c 41 50 49 20 54 63 6c QLITE_TCLAPI Tcl e4e0: 46 72 65 65 4f 62 6a 22 20 5c 0a 09 09 7c 20 24 FreeObj" \...|$
e4f0: 28 54 43 4c 53 48 5f 43 4d 44 29 20 24 28 54 4f  (TCLSH_CMD) $(TO e500: 50 29 5c 74 6f 6f 6c 5c 72 65 70 6c 61 63 65 2e P)\tool\replace. e510: 74 63 6c 20 72 65 67 73 75 62 20 22 5c 28 5c 2a tcl regsub "\(\* e520: 74 63 6c 5f 22 20 22 28 53 51 4c 49 54 45 5f 54 tcl_" "(SQLITE_T e530: 43 4c 41 50 49 20 2a 74 63 6c 5f 22 20 5c 0a 09 CLAPI *tcl_" \.. e540: 09 7c 20 24 28 54 43 4c 53 48 5f 43 4d 44 29 20 .|$(TCLSH_CMD)
e550: 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 72 65 70 6c  $(TOP)\tool\repl e560: 61 63 65 2e 74 63 6c 20 72 65 67 73 75 62 20 22 ace.tcl regsub " e570: 5c 28 5c 2a 74 63 6c 46 72 65 65 4f 62 6a 22 20 \(\*tclFreeObj" e580: 22 28 53 51 4c 49 54 45 5f 54 43 4c 41 50 49 20 "(SQLITE_TCLAPI e590: 2a 74 63 6c 46 72 65 65 4f 62 6a 22 20 3e 3e 20 *tclFreeObj" >> e5a0: 73 71 6c 69 74 65 5f 74 63 6c 44 65 63 6c 73 2e sqlite_tclDecls. e5b0: 68 0a 0a 73 71 6c 69 74 65 5f 74 63 6c 2e 68 3a h..sqlite_tcl.h: e5c0: 09 73 71 6c 69 74 65 5f 74 63 6c 44 65 63 6c 73 .sqlite_tclDecls e5d0: 2e 68 0a 09 74 79 70 65 20 22 24 28 54 43 4c 49 .h..type "$(TCLI
e5e0: 4e 43 44 49 52 29 5c 74 63 6c 2e 68 22 20 7c 20  NCDIR)\tcl.h" |
e5f0: 24 28 54 43 4c 53 48 5f 43 4d 44 29 20 24 28 54  $(TCLSH_CMD)$(T
e600: 4f 50 29 5c 74 6f 6f 6c 5c 72 65 70 6c 61 63 65  OP)\tool\replace
e610: 2e 74 63 6c 20 65 78 61 63 74 20 74 63 6c 44 65  .tcl exact tclDe
e620: 63 6c 73 2e 68 20 73 71 6c 69 74 65 5f 74 63 6c  cls.h sqlite_tcl
e630: 44 65 63 6c 73 2e 68 20 5c 0a 09 09 7c 20 24 28  Decls.h \...| $( e640: 54 43 4c 53 48 5f 43 4d 44 29 20 24 28 54 4f 50 TCLSH_CMD)$(TOP
e650: 29 5c 74 6f 6f 6c 5c 72 65 70 6c 61 63 65 2e 74  )\tool\replace.t
e660: 63 6c 20 72 65 67 73 75 62 20 22 74 79 70 65 64  cl regsub "typed
e670: 65 66 20 28 2e 2a 3f 29 5c 28 54 63 6c 5f 22 20  ef (.*?)\(Tcl_"
e680: 22 74 79 70 65 64 65 66 20 5c 31 20 28 53 51 4c  "typedef \1 (SQL
e690: 49 54 45 5f 54 43 4c 41 50 49 20 54 63 6c 5f 22  ITE_TCLAPI Tcl_"
e6a0: 20 5c 0a 09 09 7c 20 24 28 54 43 4c 53 48 5f 43   \...| $(TCLSH_C e6b0: 4d 44 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c MD)$(TOP)\tool\
e6c0: 72 65 70 6c 61 63 65 2e 74 63 6c 20 65 78 61 63  replace.tcl exac
e6d0: 74 20 22 76 6f 69 64 20 28 2a 66 72 65 65 50 72  t "void (*freePr
e6e0: 6f 63 29 22 20 22 76 6f 69 64 20 28 53 51 4c 49  oc)" "void (SQLI
e6f0: 54 45 5f 54 43 4c 41 50 49 20 2a 66 72 65 65 50  TE_TCLAPI *freeP
e700: 72 6f 63 29 22 20 5c 0a 09 09 7c 20 24 28 54 43  roc)" \...| $(TC e710: 4c 53 48 5f 43 4d 44 29 20 24 28 54 4f 50 29 5c LSH_CMD)$(TOP)\
e720: 74 6f 6f 6c 5c 72 65 70 6c 61 63 65 2e 74 63 6c  tool\replace.tcl
e730: 20 65 78 61 63 74 20 22 54 63 6c 5f 48 61 73 68   exact "Tcl_Hash
e740: 45 6e 74 72 79 20 2a 28 2a 66 69 6e 64 50 72 6f  Entry *(*findPro
e750: 63 29 22 20 22 54 63 6c 5f 48 61 73 68 45 6e 74  c)" "Tcl_HashEnt
e760: 72 79 20 2a 28 53 51 4c 49 54 45 5f 54 43 4c 41  ry *(SQLITE_TCLA
e770: 50 49 20 2a 66 69 6e 64 50 72 6f 63 29 22 20 5c  PI *findProc)" \
e780: 0a 09 09 7c 20 24 28 54 43 4c 53 48 5f 43 4d 44  ...| $(TCLSH_CMD e790: 29 20 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 72 65 )$(TOP)\tool\re
e7a0: 70 6c 61 63 65 2e 74 63 6c 20 65 78 61 63 74 20  place.tcl exact
e7b0: 22 54 63 6c 5f 48 61 73 68 45 6e 74 72 79 20 2a  "Tcl_HashEntry *
e7c0: 28 2a 63 72 65 61 74 65 50 72 6f 63 29 22 20 22  (*createProc)" "
e7d0: 54 63 6c 5f 48 61 73 68 45 6e 74 72 79 20 2a 28  Tcl_HashEntry *(
e7e0: 53 51 4c 49 54 45 5f 54 43 4c 41 50 49 20 2a 63  SQLITE_TCLAPI *c
e7f0: 72 65 61 74 65 50 72 6f 63 29 22 20 3e 3e 20 73  reateProc)" >> s
e800: 71 6c 69 74 65 5f 74 63 6c 2e 68 0a 0a 74 65 73  qlite_tcl.h..tes
e810: 74 66 69 78 74 75 72 65 2e 65 78 65 3a 09 24 28  tfixture.exe:.$( e820: 54 45 53 54 46 49 58 54 55 52 45 5f 53 52 43 29 TESTFIXTURE_SRC) e830: 20 24 28 53 51 4c 49 54 45 33 48 29 20 24 28 4c$(SQLITE3H) $(L e840: 49 42 52 45 53 4f 42 4a 53 29 20 24 28 48 44 52 IBRESOBJS)$(HDR
e850: 29 20 73 71 6c 69 74 65 5f 74 63 6c 2e 68 0a 09  ) sqlite_tcl.h..
e860: 24 28 4c 54 4c 49 4e 4b 29 20 2d 44 53 51 4c 49  $(LTLINK) -DSQLI e870: 54 45 5f 4e 4f 5f 53 59 4e 43 3d 31 20 24 28 54 TE_NO_SYNC=1$(T
e880: 45 53 54 46 49 58 54 55 52 45 5f 46 4c 41 47 53  ESTFIXTURE_FLAGS
e890: 29 20 5c 0a 09 09 2d 44 42 55 49 4c 44 5f 73 71  ) \...-DBUILD_sq
e8a0: 6c 69 74 65 20 2d 49 24 28 54 43 4c 49 4e 43 44  lite -I$(TCLINCD e8b0: 49 52 29 20 5c 0a 09 09 24 28 54 45 53 54 46 49 IR) \...$(TESTFI
e8c0: 58 54 55 52 45 5f 53 52 43 29 20 5c 0a 09 09 2f  XTURE_SRC) \.../
e8d0: 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 47 53 29 20  link $(LDFLAGS) e8e0: 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 20 24 28$(LTLINKOPTS) $( e8f0: 4c 54 4c 49 42 50 41 54 48 53 29 20 24 28 4c 49 LTLIBPATHS)$(LI
e900: 42 52 45 53 4f 42 4a 53 29 20 24 28 4c 54 4c 49  BRESOBJS) $(LTLI e910: 42 53 29 20 24 28 54 4c 49 42 53 29 0a 0a 65 78 BS)$(TLIBS)..ex
e920: 74 65 6e 73 69 6f 6e 74 65 73 74 3a 09 74 65 73  tensiontest:.tes
e930: 74 66 69 78 74 75 72 65 2e 65 78 65 20 74 65 73  tfixture.exe tes
e940: 74 6c 6f 61 64 65 78 74 2e 64 6c 6c 0a 09 40 73  tloadext.dll..@s
e950: 65 74 20 50 41 54 48 3d 24 28 4c 49 42 54 43 4c  et PATH=$(LIBTCL e960: 50 41 54 48 29 3b 24 28 50 41 54 48 29 0a 09 2e PATH);$(PATH)...
e970: 5c 74 65 73 74 66 69 78 74 75 72 65 2e 65 78 65  \testfixture.exe
e980: 20 24 28 54 4f 50 29 5c 74 65 73 74 5c 6c 6f 61   $(TOP)\test\loa e990: 64 65 78 74 2e 74 65 73 74 20 24 28 54 45 53 54 dext.test$(TEST
e9a0: 4f 50 54 53 29 0a 0a 66 75 6c 6c 74 65 73 74 3a  OPTS)..fulltest:
e9b0: 09 24 28 54 45 53 54 50 52 4f 47 53 29 20 66 75  .$(TESTPROGS) fu e9c0: 7a 7a 74 65 73 74 0a 09 40 73 65 74 20 50 41 54 zztest..@set PAT e9d0: 48 3d 24 28 4c 49 42 54 43 4c 50 41 54 48 29 3b H=$(LIBTCLPATH);
e9e0: 24 28 50 41 54 48 29 0a 09 2e 5c 74 65 73 74 66  $(PATH)...\testf e9f0: 69 78 74 75 72 65 2e 65 78 65 20 24 28 54 4f 50 ixture.exe$(TOP
ea00: 29 5c 74 65 73 74 5c 61 6c 6c 2e 74 65 73 74 20  )\test\all.test
ea10: 24 28 54 45 53 54 4f 50 54 53 29 0a 0a 73 6f 61  $(TESTOPTS)..soa ea20: 6b 74 65 73 74 3a 09 24 28 54 45 53 54 50 52 4f ktest:.$(TESTPRO
ea30: 47 53 29 0a 09 40 73 65 74 20 50 41 54 48 3d 24  GS)..@set PATH=$ea40: 28 4c 49 42 54 43 4c 50 41 54 48 29 3b 24 28 50 (LIBTCLPATH);$(P
ea50: 41 54 48 29 0a 09 2e 5c 74 65 73 74 66 69 78 74  ATH)...\testfixt
ea60: 75 72 65 2e 65 78 65 20 24 28 54 4f 50 29 5c 74  ure.exe $(TOP)\t ea70: 65 73 74 5c 61 6c 6c 2e 74 65 73 74 20 2d 73 6f est\all.test -so ea80: 61 6b 3d 31 20 24 28 54 45 53 54 4f 50 54 53 29 ak=1$(TESTOPTS)
ea90: 0a 0a 66 75 6c 6c 74 65 73 74 6f 6e 6c 79 3a 09  ..fulltestonly:.
eaa0: 24 28 54 45 53 54 50 52 4f 47 53 29 20 66 75 7a  $(TESTPROGS) fuz eab0: 7a 74 65 73 74 0a 09 40 73 65 74 20 50 41 54 48 ztest..@set PATH eac0: 3d 24 28 4c 49 42 54 43 4c 50 41 54 48 29 3b 24 =$(LIBTCLPATH);$ead0: 28 50 41 54 48 29 0a 09 2e 5c 74 65 73 74 66 69 (PATH)...\testfi eae0: 78 74 75 72 65 2e 65 78 65 20 24 28 54 4f 50 29 xture.exe$(TOP)
eaf0: 5c 74 65 73 74 5c 66 75 6c 6c 2e 74 65 73 74 0a  \test\full.test.
eb00: 0a 71 75 65 72 79 70 6c 61 6e 74 65 73 74 3a 09  .queryplantest:.
eb10: 74 65 73 74 66 69 78 74 75 72 65 2e 65 78 65 20  testfixture.exe
eb20: 73 68 65 6c 6c 0a 09 40 73 65 74 20 50 41 54 48  shell..@set PATH
eb30: 3d 24 28 4c 49 42 54 43 4c 50 41 54 48 29 3b 24  =$(LIBTCLPATH);$
eb40: 28 50 41 54 48 29 0a 09 2e 5c 74 65 73 74 66 69  (PATH)...\testfi
eb50: 78 74 75 72 65 2e 65 78 65 20 24 28 54 4f 50 29  xture.exe $(TOP) eb60: 5c 74 65 73 74 5c 70 65 72 6d 75 74 61 74 69 6f \test\permutatio eb70: 6e 73 2e 74 65 73 74 20 71 75 65 72 79 70 6c 61 ns.test querypla eb80: 6e 6e 65 72 20 24 28 54 45 53 54 4f 50 54 53 29 nner$(TESTOPTS)
eb90: 0a 0a 66 75 7a 7a 74 65 73 74 3a 09 66 75 7a 7a  ..fuzztest:.fuzz
eba0: 63 68 65 63 6b 2e 65 78 65 0a 09 2e 5c 66 75 7a  check.exe...\fuz
ebb0: 7a 63 68 65 63 6b 2e 65 78 65 20 24 28 46 55 5a  zcheck.exe $(FUZ ebc0: 5a 44 41 54 41 29 0a 0a 66 61 73 74 66 75 7a 7a ZDATA)..fastfuzz ebd0: 74 65 73 74 3a 09 66 75 7a 7a 63 68 65 63 6b 2e test:.fuzzcheck. ebe0: 65 78 65 0a 09 2e 5c 66 75 7a 7a 63 68 65 63 6b exe...\fuzzcheck ebf0: 2e 65 78 65 20 2d 2d 6c 69 6d 69 74 2d 6d 65 6d .exe --limit-mem ec00: 20 31 30 30 4d 20 24 28 46 55 5a 5a 44 41 54 41 100M$(FUZZDATA
ec10: 29 0a 0a 23 20 4d 69 6e 69 6d 61 6c 20 74 65 73  )..# Minimal tes
ec20: 74 69 6e 67 20 74 68 61 74 20 72 75 6e 73 20 69  ting that runs i
ec30: 6e 20 6c 65 73 73 20 74 68 61 6e 20 33 20 6d 69  n less than 3 mi
ec40: 6e 75 74 65 73 20 28 6f 6e 20 61 20 66 61 73 74  nutes (on a fast
ec50: 20 6d 61 63 68 69 6e 65 29 0a 23 0a 71 75 69 63   machine).#.quic
ec60: 6b 74 65 73 74 3a 09 74 65 73 74 66 69 78 74 75  ktest:.testfixtu
ec70: 72 65 2e 65 78 65 20 73 6f 75 72 63 65 74 65 73  re.exe sourcetes
ec80: 74 0a 09 40 73 65 74 20 50 41 54 48 3d 24 28 4c  t..@set PATH=$(L ec90: 49 42 54 43 4c 50 41 54 48 29 3b 24 28 50 41 54 IBTCLPATH);$(PAT
eca0: 48 29 0a 09 2e 5c 74 65 73 74 66 69 78 74 75 72  H)...\testfixtur
ecb0: 65 2e 65 78 65 20 24 28 54 4f 50 29 5c 74 65 73  e.exe $(TOP)\tes ecc0: 74 5c 65 78 74 72 61 71 75 69 63 6b 2e 74 65 73 t\extraquick.tes ecd0: 74 20 24 28 54 45 53 54 4f 50 54 53 29 0a 0a 23 t$(TESTOPTS)..#
ece0: 20 54 68 69 73 20 69 73 20 74 68 65 20 63 6f 6d   This is the com
ecf0: 6d 6f 6e 20 63 61 73 65 2e 20 20 52 75 6e 20 6d  mon case.  Run m
ed00: 61 6e 79 20 74 65 73 74 73 20 74 68 61 74 20 64  any tests that d
ed10: 6f 20 6e 6f 74 20 74 61 6b 65 20 74 6f 6f 20 6c  o not take too l
ed20: 6f 6e 67 2c 0a 23 20 69 6e 63 6c 75 64 69 6e 67  ong,.# including
ed30: 20 66 75 7a 7a 63 68 65 63 6b 2c 20 73 71 6c 69   fuzzcheck, sqli
ed40: 74 65 33 5f 61 6e 61 6c 79 7a 65 72 2c 20 61 6e  te3_analyzer, an
ed50: 64 20 73 71 6c 64 69 66 66 20 74 65 73 74 73 2e  d sqldiff tests.
ed60: 0a 23 0a 74 65 73 74 3a 09 24 28 54 45 53 54 50  .#.test:.$(TESTP ed70: 52 4f 47 53 29 20 73 6f 75 72 63 65 74 65 73 74 ROGS) sourcetest ed80: 20 66 61 73 74 66 75 7a 7a 74 65 73 74 0a 09 40 fastfuzztest..@ ed90: 73 65 74 20 50 41 54 48 3d 24 28 4c 49 42 54 43 set PATH=$(LIBTC
eda0: 4c 50 41 54 48 29 3b 24 28 50 41 54 48 29 0a 09  LPATH);$(PATH).. edb0: 2e 5c 74 65 73 74 66 69 78 74 75 72 65 2e 65 78 .\testfixture.ex edc0: 65 20 24 28 54 4f 50 29 5c 74 65 73 74 5c 76 65 e$(TOP)\test\ve
edd0: 72 79 71 75 69 63 6b 2e 74 65 73 74 20 24 28 54  ryquick.test $(T ede0: 45 53 54 4f 50 54 53 29 0a 0a 73 6d 6f 6b 65 74 ESTOPTS)..smoket edf0: 65 73 74 3a 09 24 28 54 45 53 54 50 52 4f 47 53 est:.$(TESTPROGS
ee00: 29 0a 09 40 73 65 74 20 50 41 54 48 3d 24 28 4c  )..@set PATH=$(L ee10: 49 42 54 43 4c 50 41 54 48 29 3b 24 28 50 41 54 IBTCLPATH);$(PAT
ee20: 48 29 0a 09 2e 5c 74 65 73 74 66 69 78 74 75 72  H)...\testfixtur
ee30: 65 2e 65 78 65 20 24 28 54 4f 50 29 5c 74 65 73  e.exe $(TOP)\tes ee40: 74 5c 6d 61 69 6e 2e 74 65 73 74 20 24 28 54 45 t\main.test$(TE
ee50: 53 54 4f 50 54 53 29 0a 0a 73 71 6c 69 74 65 33  STOPTS)..sqlite3
ee60: 5f 61 6e 61 6c 79 7a 65 72 2e 63 3a 09 24 28 53  _analyzer.c:.$(S ee70: 51 4c 49 54 45 33 43 29 20 24 28 53 51 4c 49 54 QLITE3C)$(SQLIT
ee80: 45 33 48 29 20 24 28 54 4f 50 29 5c 73 72 63 5c  E3H) $(TOP)\src\ ee90: 74 63 6c 73 71 6c 69 74 65 2e 63 20 24 28 54 4f tclsqlite.c$(TO
eea0: 50 29 5c 74 6f 6f 6c 5c 73 70 61 63 65 61 6e 61  P)\tool\spaceana
eeb0: 6c 2e 74 63 6c 20 73 71 6c 69 74 65 5f 74 63 6c  l.tcl sqlite_tcl
eec0: 2e 68 0a 09 65 63 68 6f 20 23 64 65 66 69 6e 65  .h..echo #define
eed0: 20 54 43 4c 53 48 20 32 20 3e 20 24 40 0a 09 65   TCLSH 2 > $@..e eee0: 63 68 6f 20 23 64 65 66 69 6e 65 20 53 51 4c 49 cho #define SQLI eef0: 54 45 5f 45 4e 41 42 4c 45 5f 44 42 53 54 41 54 TE_ENABLE_DBSTAT ef00: 5f 56 54 41 42 20 31 20 3e 3e 20 24 40 0a 09 63 _VTAB 1 >>$@..c
ef10: 6f 70 79 20 24 40 20 2b 20 24 28 53 51 4c 49 54  opy $@ +$(SQLIT
ef20: 45 33 43 29 20 2b 20 24 28 54 4f 50 29 5c 73 72  E3C) + $(TOP)\sr ef30: 63 5c 74 63 6c 73 71 6c 69 74 65 2e 63 20 24 40 c\tclsqlite.c$@
ef40: 0a 09 65 63 68 6f 20 73 74 61 74 69 63 20 63 6f  ..echo static co
ef50: 6e 73 74 20 63 68 61 72 20 2a 74 63 6c 73 68 5f  nst char *tclsh_
ef60: 6d 61 69 6e 5f 6c 6f 6f 70 28 76 6f 69 64 29 7b  main_loop(void){
ef70: 20 3e 3e 20 24 40 0a 09 65 63 68 6f 20 73 74 61   >> $@..echo sta ef80: 74 69 63 20 63 6f 6e 73 74 20 63 68 61 72 20 2a tic const char * ef90: 7a 4d 61 69 6e 6c 6f 6f 70 20 3d 20 3e 3e 20 24 zMainloop = >>$
efa0: 40 0a 09 24 28 54 43 4c 53 48 5f 43 4d 44 29 20  @..$(TCLSH_CMD) efb0: 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 74 6f 73 74$(TOP)\tool\tost
efc0: 72 2e 74 63 6c 20 24 28 54 4f 50 29 5c 74 6f 6f  r.tcl $(TOP)\too efd0: 6c 5c 73 70 61 63 65 61 6e 61 6c 2e 74 63 6c 20 l\spaceanal.tcl efe0: 3e 3e 20 24 40 0a 09 65 63 68 6f 20 3b 20 72 65 >>$@..echo ; re
eff0: 74 75 72 6e 20 7a 4d 61 69 6e 6c 6f 6f 70 3b 20  turn zMainloop;
f000: 7d 20 3e 3e 20 24 40 0a 0a 73 71 6c 69 74 65 33  } >> $@..sqlite3 f010: 5f 61 6e 61 6c 79 7a 65 72 2e 65 78 65 3a 09 73 _analyzer.exe:.s f020: 71 6c 69 74 65 33 5f 61 6e 61 6c 79 7a 65 72 2e qlite3_analyzer. f030: 63 20 24 28 4c 49 42 52 45 53 4f 42 4a 53 29 0a c$(LIBRESOBJS).
f040: 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f  .$(LTLINK)$(NO_
f050: 57 41 52 4e 29 20 2d 44 42 55 49 4c 44 5f 73 71  WARN) -DBUILD_sq
f060: 6c 69 74 65 20 2d 49 24 28 54 43 4c 49 4e 43 44  lite -I$(TCLINCD f070: 49 52 29 20 73 71 6c 69 74 65 33 5f 61 6e 61 6c IR) sqlite3_anal f080: 79 7a 65 72 2e 63 20 5c 0a 09 09 2f 6c 69 6e 6b yzer.c \.../link f090: 20 24 28 4c 44 46 4c 41 47 53 29 20 24 28 4c 54$(LDFLAGS) $(LT f0a0: 4c 49 4e 4b 4f 50 54 53 29 20 24 28 4c 54 4c 49 LINKOPTS)$(LTLI
f0b0: 42 50 41 54 48 53 29 20 24 28 4c 49 42 52 45 53  BPATHS) $(LIBRES f0c0: 4f 42 4a 53 29 20 24 28 4c 54 4c 49 42 53 29 20 OBJS)$(LTLIBS)
f0d0: 24 28 54 4c 49 42 53 29 0a 0a 74 65 73 74 6c 6f  $(TLIBS)..testlo f0e0: 61 64 65 78 74 2e 6c 6f 3a 09 24 28 54 4f 50 29 adext.lo:.$(TOP)
f0f0: 5c 73 72 63 5c 74 65 73 74 5f 6c 6f 61 64 65 78  \src\test_loadex
f100: 74 2e 63 0a 09 24 28 4c 54 43 4f 4d 50 49 4c 45  t.c..$(LTCOMPILE f110: 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d 63 20 )$(NO_WARN) -c
f120: 24 28 54 4f 50 29 5c 73 72 63 5c 74 65 73 74 5f  $(TOP)\src\test_ f130: 6c 6f 61 64 65 78 74 2e 63 0a 0a 74 65 73 74 6c loadext.c..testl f140: 6f 61 64 65 78 74 2e 64 6c 6c 3a 09 74 65 73 74 oadext.dll:.test f150: 6c 6f 61 64 65 78 74 2e 6c 6f 0a 09 24 28 4c 44 loadext.lo..$(LD
f160: 29 20 24 28 4c 44 46 4c 41 47 53 29 20 24 28 4c  ) $(LDFLAGS)$(L
f170: 54 4c 49 4e 4b 4f 50 54 53 29 20 24 28 4c 54 4c  TLINKOPTS) $(LTL f180: 49 42 50 41 54 48 53 29 20 2f 44 4c 4c 20 2f 4f IBPATHS) /DLL /O f190: 55 54 3a 24 40 20 74 65 73 74 6c 6f 61 64 65 78 UT:$@ testloadex
f1a0: 74 2e 6c 6f 0a 0a 73 68 6f 77 64 62 2e 65 78 65  t.lo..showdb.exe
f1b0: 3a 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 68  :.$(TOP)\tool\sh f1c0: 6f 77 64 62 2e 63 20 24 28 53 51 4c 49 54 45 33 owdb.c$(SQLITE3
f1d0: 43 29 20 24 28 53 51 4c 49 54 45 33 48 29 0a 09  C) $(SQLITE3H).. f1e0: 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57$(LTLINK) $(NO_W f1f0: 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 54 48 ARN) -DSQLITE_TH f200: 52 45 41 44 53 41 46 45 3d 30 20 2d 44 53 51 4c READSAFE=0 -DSQL f210: 49 54 45 5f 4f 4d 49 54 5f 4c 4f 41 44 5f 45 58 ITE_OMIT_LOAD_EX f220: 54 45 4e 53 49 4f 4e 20 2d 46 65 24 40 20 5c 0a TENSION -Fe$@ \.
f230: 09 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 68  ..$(TOP)\tool\sh f240: 6f 77 64 62 2e 63 20 24 28 53 51 4c 49 54 45 33 owdb.c$(SQLITE3
f250: 43 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41  C) /link $(LDFLA f260: 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 GS)$(LTLINKOPTS
f270: 29 0a 0a 73 68 6f 77 73 74 61 74 34 2e 65 78 65  )..showstat4.exe
f280: 3a 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 68  :.$(TOP)\tool\sh f290: 6f 77 73 74 61 74 34 2e 63 20 24 28 53 51 4c 49 owstat4.c$(SQLI
f2a0: 54 45 33 43 29 20 24 28 53 51 4c 49 54 45 33 48  TE3C) $(SQLITE3H f2b0: 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e )..$(LTLINK) $(N f2c0: 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 O_WARN) -DSQLITE f2d0: 5f 54 48 52 45 41 44 53 41 46 45 3d 30 20 2d 44 _THREADSAFE=0 -D f2e0: 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 4c 4f 41 44 SQLITE_OMIT_LOAD f2f0: 5f 45 58 54 45 4e 53 49 4f 4e 20 2d 46 65 24 40 _EXTENSION -Fe$@
f300: 20 5c 0a 09 09 24 28 54 4f 50 29 5c 74 6f 6f 6c   \...$(TOP)\tool f310: 5c 73 68 6f 77 73 74 61 74 34 2e 63 20 24 28 53 \showstat4.c$(S
f320: 51 4c 49 54 45 33 43 29 20 2f 6c 69 6e 6b 20 24  QLITE3C) /link $f330: 28 4c 44 46 4c 41 47 53 29 20 24 28 4c 54 4c 49 (LDFLAGS)$(LTLI
f340: 4e 4b 4f 50 54 53 29 0a 0a 73 68 6f 77 6a 6f 75  NKOPTS)..showjou
f350: 72 6e 61 6c 2e 65 78 65 3a 09 24 28 54 4f 50 29  rnal.exe:.$(TOP) f360: 5c 74 6f 6f 6c 5c 73 68 6f 77 6a 6f 75 72 6e 61 \tool\showjourna f370: 6c 2e 63 20 24 28 53 51 4c 49 54 45 33 43 29 20 l.c$(SQLITE3C)
f380: 24 28 53 51 4c 49 54 45 33 48 29 0a 09 24 28 4c  $(SQLITE3H)..$(L
f390: 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57 41 52 4e  TLINK) $(NO_WARN f3a0: 29 20 2d 44 53 51 4c 49 54 45 5f 54 48 52 45 41 ) -DSQLITE_THREA f3b0: 44 53 41 46 45 3d 30 20 2d 44 53 51 4c 49 54 45 DSAFE=0 -DSQLITE f3c0: 5f 4f 4d 49 54 5f 4c 4f 41 44 5f 45 58 54 45 4e _OMIT_LOAD_EXTEN f3d0: 53 49 4f 4e 20 2d 46 65 24 40 20 5c 0a 09 09 24 SION -Fe$@ \...$f3e0: 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 68 6f 77 6a (TOP)\tool\showj f3f0: 6f 75 72 6e 61 6c 2e 63 20 24 28 53 51 4c 49 54 ournal.c$(SQLIT
f400: 45 33 43 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 46  E3C) /link $(LDF f410: 4c 41 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 LAGS)$(LTLINKOP
f420: 54 53 29 0a 0a 73 68 6f 77 77 61 6c 2e 65 78 65  TS)..showwal.exe
f430: 3a 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73 68  :.$(TOP)\tool\sh f440: 6f 77 77 61 6c 2e 63 20 24 28 53 51 4c 49 54 45 owwal.c$(SQLITE
f450: 33 43 29 20 24 28 53 51 4c 49 54 45 33 48 29 0a  3C) $(SQLITE3H). f460: 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f .$(LTLINK) $(NO_ f470: 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 54 WARN) -DSQLITE_T f480: 48 52 45 41 44 53 41 46 45 3d 30 20 2d 44 53 51 HREADSAFE=0 -DSQ f490: 4c 49 54 45 5f 4f 4d 49 54 5f 4c 4f 41 44 5f 45 LITE_OMIT_LOAD_E f4a0: 58 54 45 4e 53 49 4f 4e 20 2d 46 65 24 40 20 5c XTENSION -Fe$@ \
f4b0: 0a 09 09 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 73  ...$(TOP)\tool\s f4c0: 68 6f 77 77 61 6c 2e 63 20 24 28 53 51 4c 49 54 howwal.c$(SQLIT
f4d0: 45 33 43 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 46  E3C) /link $(LDF f4e0: 4c 41 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 LAGS)$(LTLINKOP
f4f0: 54 53 29 0a 0a 63 68 61 6e 67 65 73 65 74 2e 65  TS)..changeset.e
f500: 78 65 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 73  xe:.$(TOP)\ext\s f510: 65 73 73 69 6f 6e 5c 63 68 61 6e 67 65 73 65 74 ession\changeset f520: 2e 63 20 24 28 53 51 4c 49 54 45 33 43 29 0a 09 .c$(SQLITE3C)..
f530: 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57  $(LTLINK)$(NO_W
f540: 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f 54 48  ARN) -DSQLITE_TH
f550: 52 45 41 44 53 41 46 45 3d 30 20 2d 44 53 51 4c  READSAFE=0 -DSQL
f560: 49 54 45 5f 4f 4d 49 54 5f 4c 4f 41 44 5f 45 58  ITE_OMIT_LOAD_EX
f570: 54 45 4e 53 49 4f 4e 20 2d 46 65 24 40 20 5c 0a  TENSION -Fe$@ \. f580: 09 09 24 28 54 4f 50 29 5c 65 78 74 5c 73 65 73 ..$(TOP)\ext\ses
f590: 73 69 6f 6e 5c 63 68 61 6e 67 65 73 65 74 2e 63  sion\changeset.c
f5a0: 20 24 28 53 51 4c 49 54 45 33 43 29 20 2f 6c 69   $(SQLITE3C) /li f5b0: 6e 6b 20 24 28 4c 44 46 4c 41 47 53 29 20 24 28 nk$(LDFLAGS) $( f5c0: 4c 54 4c 49 4e 4b 4f 50 54 53 29 0a 0a 66 74 73 LTLINKOPTS)..fts f5d0: 33 76 69 65 77 2e 65 78 65 3a 09 24 28 54 4f 50 3view.exe:.$(TOP
f5e0: 29 5c 65 78 74 5c 66 74 73 33 5c 74 6f 6f 6c 5c  )\ext\fts3\tool\
f5f0: 66 74 73 33 76 69 65 77 2e 63 20 24 28 53 51 4c  fts3view.c $(SQL f600: 49 54 45 33 43 29 20 24 28 53 51 4c 49 54 45 33 ITE3C)$(SQLITE3
f610: 48 29 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28  H)..$(LTLINK)$(
f620: 4e 4f 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 54  NO_WARN) -DSQLIT
f630: 45 5f 54 48 52 45 41 44 53 41 46 45 3d 30 20 2d  E_THREADSAFE=0 -
f640: 44 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 4c 4f 41  DSQLITE_OMIT_LOA
f650: 44 5f 45 58 54 45 4e 53 49 4f 4e 20 2d 46 65 24  D_EXTENSION -Fe$f660: 40 20 5c 0a 09 09 24 28 54 4f 50 29 5c 65 78 74 @ \...$(TOP)\ext
f670: 5c 66 74 73 33 5c 74 6f 6f 6c 5c 66 74 73 33 76  \fts3\tool\fts3v
f680: 69 65 77 2e 63 20 24 28 53 51 4c 49 54 45 33 43  iew.c $(SQLITE3C f690: 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 47 ) /link$(LDFLAG
f6a0: 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29  S) $(LTLINKOPTS) f6b0: 0a 0a 72 6f 6c 6c 62 61 63 6b 2d 74 65 73 74 2e ..rollback-test. f6c0: 65 78 65 3a 09 24 28 54 4f 50 29 5c 74 6f 6f 6c exe:.$(TOP)\tool
f6d0: 5c 72 6f 6c 6c 62 61 63 6b 2d 74 65 73 74 2e 63  \rollback-test.c
f6e0: 20 24 28 53 51 4c 49 54 45 33 43 29 20 24 28 53   $(SQLITE3C)$(S
f6f0: 51 4c 49 54 45 33 48 29 0a 09 24 28 4c 54 4c 49  QLITE3H)..$(LTLI f700: 4e 4b 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d NK)$(NO_WARN) -
f710: 44 53 51 4c 49 54 45 5f 54 48 52 45 41 44 53 41  DSQLITE_THREADSA
f720: 46 45 3d 30 20 2d 44 53 51 4c 49 54 45 5f 4f 4d  FE=0 -DSQLITE_OM
f730: 49 54 5f 4c 4f 41 44 5f 45 58 54 45 4e 53 49 4f  IT_LOAD_EXTENSIO
f740: 4e 20 2d 46 65 24 40 20 5c 0a 09 09 24 28 54 4f  N -Fe$@ \...$(TO
f750: 50 29 5c 74 6f 6f 6c 5c 72 6f 6c 6c 62 61 63 6b  P)\tool\rollback
f760: 2d 74 65 73 74 2e 63 20 24 28 53 51 4c 49 54 45  -test.c $(SQLITE f770: 33 43 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 3C) /link$(LDFL
f780: 41 47 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54  AGS) $(LTLINKOPT f790: 53 29 0a 0a 4c 6f 67 45 73 74 2e 65 78 65 3a 09 S)..LogEst.exe:. f7a0: 24 28 54 4f 50 29 5c 74 6f 6f 6c 5c 6c 6f 67 65$(TOP)\tool\loge
f7b0: 73 74 2e 63 20 24 28 53 51 4c 49 54 45 33 48 29  st.c $(SQLITE3H) f7c0: 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f ..$(LTLINK) $(NO f7d0: 5f 57 41 52 4e 29 20 2d 46 65 24 40 20 24 28 54 _WARN) -Fe$@ $(T f7e0: 4f 50 29 5c 74 6f 6f 6c 5c 4c 6f 67 45 73 74 2e OP)\tool\LogEst. f7f0: 63 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 47 c /link$(LDFLAG
f800: 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29  S) $(LTLINKOPTS) f810: 0a 0a 77 6f 72 64 63 6f 75 6e 74 2e 65 78 65 3a ..wordcount.exe: f820: 09 24 28 54 4f 50 29 5c 74 65 73 74 5c 77 6f 72 .$(TOP)\test\wor
f830: 64 63 6f 75 6e 74 2e 63 20 24 28 53 51 4c 49 54  dcount.c $(SQLIT f840: 45 33 43 29 20 24 28 53 51 4c 49 54 45 33 48 29 E3C)$(SQLITE3H)
f850: 0a 09 24 28 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f  ..$(LTLINK)$(NO
f860: 5f 57 41 52 4e 29 20 2d 44 53 51 4c 49 54 45 5f  _WARN) -DSQLITE_
f870: 54 48 52 45 41 44 53 41 46 45 3d 30 20 2d 44 53  THREADSAFE=0 -DS
f880: 51 4c 49 54 45 5f 4f 4d 49 54 5f 4c 4f 41 44 5f  QLITE_OMIT_LOAD_
f890: 45 58 54 45 4e 53 49 4f 4e 20 2d 46 65 24 40 20  EXTENSION -Fe$@ f8a0: 5c 0a 09 09 24 28 54 4f 50 29 5c 74 65 73 74 5c \...$(TOP)\test\
f8b0: 77 6f 72 64 63 6f 75 6e 74 2e 63 20 24 28 53 51  wordcount.c $(SQ f8c0: 4c 49 54 45 33 43 29 20 2f 6c 69 6e 6b 20 24 28 LITE3C) /link$(
f8d0: 4c 44 46 4c 41 47 53 29 20 24 28 4c 54 4c 49 4e  LDFLAGS) $(LTLIN f8e0: 4b 4f 50 54 53 29 0a 0a 73 70 65 65 64 74 65 73 KOPTS)..speedtes f8f0: 74 31 2e 65 78 65 3a 09 24 28 54 4f 50 29 5c 74 t1.exe:.$(TOP)\t
f900: 65 73 74 5c 73 70 65 65 64 74 65 73 74 31 2e 63  est\speedtest1.c
f910: 20 24 28 53 51 4c 49 54 45 33 43 29 20 24 28 53   $(SQLITE3C)$(S
f920: 51 4c 49 54 45 33 48 29 0a 09 24 28 4c 54 4c 49  QLITE3H)..$(LTLI f930: 4e 4b 29 20 24 28 4e 4f 5f 57 41 52 4e 29 20 2d NK)$(NO_WARN) -
f940: 44 53 51 4c 49 54 45 5f 4f 4d 49 54 5f 4c 4f 41  DSQLITE_OMIT_LOA
f950: 44 5f 45 58 54 45 4e 53 49 4f 4e 20 2d 46 65 24  D_EXTENSION -Fe$f960: 40 20 5c 0a 09 09 24 28 54 4f 50 29 5c 74 65 73 @ \...$(TOP)\tes
f970: 74 5c 73 70 65 65 64 74 65 73 74 31 2e 63 20 24  t\speedtest1.c $f980: 28 53 51 4c 49 54 45 33 43 29 20 2f 6c 69 6e 6b (SQLITE3C) /link f990: 20 24 28 4c 44 46 4c 41 47 53 29 20 24 28 4c 54$(LDFLAGS) $(LT f9a0: 4c 49 4e 4b 4f 50 54 53 29 0a 0a 72 62 75 2e 65 LINKOPTS)..rbu.e f9b0: 78 65 3a 09 24 28 54 4f 50 29 5c 65 78 74 5c 72 xe:.$(TOP)\ext\r
f9c0: 62 75 5c 72 62 75 2e 63 20 24 28 54 4f 50 29 5c  bu\rbu.c $(TOP)\ f9d0: 65 78 74 5c 72 62 75 5c 73 71 6c 69 74 65 33 72 ext\rbu\sqlite3r f9e0: 62 75 2e 63 20 24 28 53 51 4c 49 54 45 33 43 29 bu.c$(SQLITE3C)
f9f0: 20 24 28 53 51 4c 49 54 45 33 48 29 0a 09 24 28   $(SQLITE3H)..$(
fa00: 4c 54 4c 49 4e 4b 29 20 24 28 4e 4f 5f 57 41 52  LTLINK) $(NO_WAR fa10: 4e 29 20 2d 44 53 51 4c 49 54 45 5f 45 4e 41 42 N) -DSQLITE_ENAB fa20: 4c 45 5f 52 42 55 20 2d 46 65 24 40 20 5c 0a 09 LE_RBU -Fe$@ \..
fa30: 09 24 28 54 4f 50 29 5c 65 78 74 5c 72 62 75 5c  .$(TOP)\ext\rbu\ fa40: 72 62 75 2e 63 20 24 28 53 51 4c 49 54 45 33 43 rbu.c$(SQLITE3C
fa50: 29 20 2f 6c 69 6e 6b 20 24 28 4c 44 46 4c 41 47  ) /link $(LDFLAG fa60: 53 29 20 24 28 4c 54 4c 49 4e 4b 4f 50 54 53 29 S)$(LTLINKOPTS)
fa70: 0a 0a 6d 6f 72 65 63 6c 65 61 6e 3a 09 63 6c 65  ..moreclean:.cle
fa80: 61 6e 0a 09 64 65 6c 20 2f 51 20 24 28 53 51 4c  an..del /Q $(SQL fa90: 49 54 45 33 43 29 20 24 28 53 51 4c 49 54 45 33 ITE3C)$(SQLITE3
faa0: 48 29 20 32 3e 4e 55 4c 0a 23 20 3c 3c 2f 6d 61  H) 2>NUL.# <</ma
fab0: 72 6b 3e 3e 0a 0a 63 6c 65 61 6e 3a 0a 09 64 65  rk>>..clean:..de
fac0: 6c 20 2f 51 20 2a 2e 65 78 70 20 2a 2e 6c 6f 20  l /Q *.exp *.lo
fad0: 2a 2e 69 6c 6b 20 2a 2e 6c 69 62 20 2a 2e 6f 62  *.ilk *.lib *.ob
fae0: 6a 20 2a 2e 6e 63 62 20 2a 2e 70 64 62 20 2a 2e  j *.ncb *.pdb *.
faf0: 73 64 66 20 2a 2e 73 75 6f 20 32 3e 4e 55 4c 0a  sdf *.suo 2>NUL.
fb00: 09 64 65 6c 20 2f 51 20 2a 2e 62 73 63 20 2a 2e  .del /Q *.bsc *.
fb10: 64 65 66 20 2a 2e 63 6f 64 20 2a 2e 64 61 20 2a  def *.cod *.da *
fb20: 2e 62 62 20 2a 2e 62 62 67 20 2a 2e 76 63 20 67  .bb *.bbg *.vc g
fb30: 6d 6f 6e 2e 6f 75 74 20 32 3e 4e 55 4c 0a 09 64  mon.out 2>NUL..d
fb40: 65 6c 20 2f 51 20 24 28 53 51 4c 49 54 45 33 45  el /Q $(SQLITE3E fb50: 58 45 29 20 24 28 53 51 4c 49 54 45 33 44 4c 4c XE)$(SQLITE3DLL
fb60: 29 20 52 65 70 6c 61 63 65 2e 65 78 65 20 32 3e  ) Replace.exe 2>
fb70: 4e 55 4c 0a 23 20 3c 3c 6d 61 72 6b 3e 3e 0a 09  NUL.# <<mark>>..
fb80: 64 65 6c 20 2f 51 20 73 71 6c 69 74 65 33 2e 63  del /Q sqlite3.c
fb90: 20 73 71 6c 69 74 65 33 2e 68 20 32 3e 4e 55 4c   sqlite3.h 2>NUL
fba0: 0a 09 64 65 6c 20 2f 51 20 6f 70 63 6f 64 65 73  ..del /Q opcodes
fbb0: 2e 63 20 6f 70 63 6f 64 65 73 2e 68 20 32 3e 4e  .c opcodes.h 2>N
fbc0: 55 4c 0a 09 64 65 6c 20 2f 51 20 6c 65 6d 6f 6e  UL..del /Q lemon
fbd0: 2e 2a 20 6c 65 6d 70 61 72 2e 63 20 70 61 72 73  .* lempar.c pars
fbe0: 65 2e 2a 20 32 3e 4e 55 4c 0a 09 64 65 6c 20 2f  e.* 2>NUL..del /
fbf0: 51 20 6d 6b 6b 65 79 77 6f 72 64 68 61 73 68 2e  Q mkkeywordhash.
fc00: 2a 20 6b 65 79 77 6f 72 64 68 61 73 68 2e 68 20  * keywordhash.h
fc10: 32 3e 4e 55 4c 0a 09 64 65 6c 20 2f 51 20 6e 6f  2>NUL..del /Q no
fc20: 74 61 73 68 61 72 65 64 6c 69 62 2e 2a 20 32 3e  tasharedlib.* 2>
fc30: 4e 55 4c 0a 09 2d 72 6d 64 69 72 20 2f 51 2f 53  NUL..-rmdir /Q/S
fc40: 20 2e 64 65 70 73 20 32 3e 4e 55 4c 0a 09 2d 72   .deps 2>NUL..-r
fc50: 6d 64 69 72 20 2f 51 2f 53 20 2e 6c 69 62 73 20  mdir /Q/S .libs
fc60: 32 3e 4e 55 4c 0a 09 2d 72 6d 64 69 72 20 2f 51  2>NUL..-rmdir /Q
fc70: 2f 53 20 74 73 72 63 20 32 3e 4e 55 4c 0a 09 64  /S tsrc 2>NUL..d
fc80: 65 6c 20 2f 51 20 2e 74 61 72 67 65 74 5f 73 6f  el /Q .target_so
fc90: 75 72 63 65 20 32 3e 4e 55 4c 0a 09 64 65 6c 20  urce 2>NUL..del
fca0: 2f 51 20 74 63 6c 73 71 6c 69 74 65 33 2e 65 78  /Q tclsqlite3.ex
fcb0: 65 20 73 71 6c 69 74 65 5f 74 63 6c 2e 68 20 73  e sqlite_tcl.h s
fcc0: 71 6c 69 74 65 5f 74 63 6c 44 65 63 6c 73 2e 68  qlite_tclDecls.h
fcd0: 20 32 3e 4e 55 4c 0a 09 64 65 6c 20 2f 51 20 74   2>NUL..del /Q t
fce0: 65 73 74 6c 6f 61 64 65 78 74 2e 64 6c 6c 20 32  estloadext.dll 2
fcf0: 3e 4e 55 4c 0a 09 64 65 6c 20 2f 51 20 74 65 73  >NUL..del /Q tes
fd00: 74 66 69 78 74 75 72 65 2e 65 78 65 20 74 65 73  tfixture.exe tes
fd10: 74 2e 64 62 20 32 3e 4e 55 4c 0a 09 64 65 6c 20  t.db 2>NUL..del
fd20: 2f 51 20 4c 6f 67 45 73 74 2e 65 78 65 20 66 74  /Q LogEst.exe ft
fd30: 73 33 76 69 65 77 2e 65 78 65 20 72 6f 6c 6c 62  s3view.exe rollb
fd40: 61 63 6b 2d 74 65 73 74 2e 65 78 65 20 73 68 6f  ack-test.exe sho
fd50: 77 64 62 2e 65 78 65 20 32 3e 4e 55 4c 0a 09 64  wdb.exe 2>NUL..d
fd60: 65 6c 20 2f 51 20 63 68 61 6e 67 65 73 65 74 2e  el /Q changeset.
fd70: 65 78 65 20 32 3e 4e 55 4c 0a 09 64 65 6c 20 2f  exe 2>NUL..del /
fd80: 51 20 73 68 6f 77 6a 6f 75 72 6e 61 6c 2e 65 78  Q showjournal.ex
fd90: 65 20 73 68 6f 77 73 74 61 74 34 2e 65 78 65 20  e showstat4.exe
fda0: 73 68 6f 77 77 61 6c 2e 65 78 65 20 73 70 65 65  showwal.exe spee
fdb0: 64 74 65 73 74 31 2e 65 78 65 20 32 3e 4e 55 4c  dtest1.exe 2>NUL
fdc0: 0a 09 64 65 6c 20 2f 51 20 6d 70 74 65 73 74 65  ..del /Q mpteste
fdd0: 72 2e 65 78 65 20 77 6f 72 64 63 6f 75 6e 74 2e  r.exe wordcount.
fde0: 65 78 65 20 72 62 75 2e 65 78 65 20 73 72 63 63  exe rbu.exe srcc
fdf0: 6b 31 2e 65 78 65 20 32 3e 4e 55 4c 0a 09 64 65  k1.exe 2>NUL..de
fe00: 6c 20 2f 51 20 73 71 6c 69 74 65 33 2e 63 20 73  l /Q sqlite3.c s
fe10: 71 6c 69 74 65 33 2d 2a 2e 63 20 32 3e 4e 55 4c  qlite3-*.c 2>NUL
fe20: 0a 09 64 65 6c 20 2f 51 20 73 71 6c 69 74 65 33  ..del /Q sqlite3
fe30: 72 63 2e 68 20 32 3e 4e 55 4c 0a 09 64 65 6c 20  rc.h 2>NUL..del
fe40: 2f 51 20 73 68 65 6c 6c 2e 63 20 73 71 6c 69 74  /Q shell.c sqlit
fe50: 65 33 65 78 74 2e 68 20 73 71 6c 69 74 65 33 73  e3ext.h sqlite3s
fe60: 65 73 73 69 6f 6e 2e 68 20 32 3e 4e 55 4c 0a 09  ession.h 2>NUL..
fe70: 64 65 6c 20 2f 51 20 73 71 6c 69 74 65 33 5f 61  del /Q sqlite3_a
fe80: 6e 61 6c 79 7a 65 72 2e 65 78 65 20 73 71 6c 69  nalyzer.exe sqli
fe90: 74 65 33 5f 61 6e 61 6c 79 7a 65 72 2e 63 20 32  te3_analyzer.c 2
fea0: 3e 4e 55 4c 0a 09 64 65 6c 20 2f 51 20 73 71 6c  >NUL..del /Q sql
feb0: 69 74 65 2d 2a 2d 6f 75 74 70 75 74 2e 76 73 69  ite-*-output.vsi
fec0: 78 20 32 3e 4e 55 4c 0a 09 64 65 6c 20 2f 51 20  x 2>NUL..del /Q
fed0: 66 75 7a 7a 65 72 73 68 65 6c 6c 2e 65 78 65 20  fuzzershell.exe
fee0: 66 75 7a 7a 63 68 65 63 6b 2e 65 78 65 20 73 71  fuzzcheck.exe sq
fef0: 6c 64 69 66 66 2e 65 78 65 20 64 62 68 61 73 68  ldiff.exe dbhash
ff00: 2e 65 78 65 20 32 3e 4e 55 4c 0a 09 64 65 6c 20  .exe 2>NUL..del
ff10: 2f 51 20 66 74 73 35 2e 2a 20 66 74 73 35 70 61  /Q fts5.* fts5pa
ff20: 72 73 65 2e 2a 20 32 3e 4e 55 4c 0a 23 20 3c 3c  rse.* 2>NUL.# <<
ff30: 2f 6d 61 72 6b 3e 3e 0a                          /mark>>.